Positioning method based on multi-source information fusion and electronic equipment

CN121569559APending Publication Date: 2026-02-24HUAWEI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380100340.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-09-28
Publication Date
2026-02-24

Smart Images

  • Figure CN121569559A_ABST
    Figure CN121569559A_ABST
Patent Text Reader

Abstract

The invention discloses a positioning method and electronic equipment based on multi-source information fusion, and the method comprises the steps: obtaining a plurality of classification regions and the number of classification types according to channel frequency response, received signal strength and angle time delay response; obtaining a target feature according to the channel frequency response, the angle time delay response, the first feature extractor and the second feature extractor; and carrying out regression operation on the target features according to the plurality of classification regions and the number of divided categories to obtain positioning information, so that the positioning precision can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

A positioning method and electronic device based on multi-source information fusion Technical Field

[0001] The present invention relates to the technical field of information fusion and positioning, and in particular to a positioning method and electronic equipment for fusing wireless channel frequency response and angular delay response. Background Art

[0002] Acquiring accurate location information for both indoor and outdoor users is crucial for future communication networks and fundamental to the expansion of related applications. Currently, satellite-based positioning is the most commonly used method for outdoor positioning. This approach is not well-suited to non-line-of-sight (NLOS) scenarios and can easily produce significant errors in various scenarios. With the development of massive multi-input multi-output (MIMO) systems, each point in the environment possesses unique multipath information. Therefore, a one-to-one correspondence can be established between communication data, such as channel state information (CSI), and location coordinates within the same environment. This has led to the development of fingerprint positioning, a core mainstream technology for positioning in communications. However, fingerprint positioning still suffers from high error rates and low positioning accuracy.

[0003] Summary of the Invention

[0004] In view of this, an embodiment of the present invention provides a positioning method and electronic device for fusing wireless channel frequency response and angular delay response, which can improve positioning accuracy.

[0005] In a first aspect, an embodiment of the present invention provides a positioning method, the method comprising:

[0006] According to the channel frequency response, received signal strength and angular delay response, multiple classification areas and the number of divided categories are obtained;

[0007] Obtaining target features according to the channel frequency response, the angular delay response, the first feature extractor and the second feature extractor;

[0008] According to the multiple classification areas and the number of divided categories, a regression operation is performed on the target feature to obtain positioning information.

[0009] In conjunction with the first aspect, in certain implementations of the first aspect, obtaining multiple classification areas and the number of classification categories based on the channel frequency response, received signal strength, and angular delay response includes:

[0010] Obtaining a first classification result according to the channel frequency response;

[0011] Obtaining a second classification result according to the received signal strength and the angular delay response;

[0012] The multiple classification areas and the number of divided categories are obtained according to the first classification result and the second classification result.

[0013] In combination with the first aspect, in certain implementations of the first aspect, obtaining a first classification result according to the channel frequency response includes:

[0014] Obtain the channel frequency response (CFR) set for all locations in the environment;

[0015] Obtaining a first set by performing intra-category classification on the CFR set;

[0016] The first classification result is obtained by performing inter-category classification on the first set.

[0017] In conjunction with the first aspect, in certain implementations of the first aspect, obtaining the first set by performing intra-category classification on the CFR set includes:

[0018] Read the CFR image at the first position in the CFR set;

[0019] Matching the CFR image at the first position with the remaining CFR images in the CFR set in sequence;

[0020] Marking and classifying the CFR pictures that meet the matching requirements among the remaining CFR pictures;

[0021] Read the CFR picture at the next position in the CFR set;

[0022] If the CFR picture at the next position is not matched, matching the CFR picture at the next position with the remaining unmarked CFR pictures in the CFR set in sequence;

[0023] Determining whether the CFR picture at the next position is the last CFR picture in the CFR set;

[0024] If it is determined that the CFR picture at the next position is not the last CFR picture in the CFR set, continuing to perform the step of reading the CFR picture at the next position in the CFR set;

[0025] If it is determined that the CFR picture at the next position is the last CFR picture in the CFR set, the current CFR set is used as the first set.

[0026] In conjunction with the first aspect, in certain implementations of the first aspect, sequentially matching the CFR picture at the first position with the remaining CFR pictures in the CFR set includes:

[0027] Obtaining a CFR template by selecting a feature region in the CFR image at the first position;

[0028] Obtaining a plurality of first images corresponding to the remaining CFR pictures in the CFR set by translating the CFR template on the remaining CFR pictures in the CFR set;

[0029] A first similarity between the CFR template and the first image is obtained according to the CFR template and the first image.

[0030] In conjunction with the first aspect, in certain implementations of the first aspect, marking and classifying the CFR pictures that meet the matching requirements among the remaining CFR pictures includes:

[0031] Determining whether the first similarity is greater than a first threshold;

[0032] If it is determined that the first similarity is greater than the first threshold, the CFR pictures corresponding to the first threshold are marked and classified.

[0033] In combination with the first aspect, in certain implementations of the first aspect, obtaining a second classification result according to the received signal strength and the angular delay response includes:

[0034] Processing the wireless environment by ray tracing to obtain the received signal strength and the angular delay response;

[0035] Processing the received signal strength and the angular delay response by using an elbow method and a silhouette coefficient method to obtain an optimal number of classifications;

[0036] According to the optimal number of classifications, the received signal strength and the angular delay response are processed through K-means clustering to obtain the second classification result.

[0037] In combination with the first aspect, in certain implementations of the first aspect, obtaining the target feature according to the channel frequency response, the angular delay response, the first feature extractor, and the second feature extractor includes:

[0038] Obtaining a first array and a second array according to the channel frequency response and the angular delay response;

[0039] Obtaining a first feature according to the first array and the first feature extractor;

[0040] Obtaining a second feature according to the second array and the second feature extractor;

[0041] The target feature is obtained according to the first feature and the second feature.

[0042] In combination with the first aspect, in certain implementations of the first aspect, the first array is a CFR array in which the horizontal coordinate is the carrier and the vertical coordinate is the number of antenna pairs.

[0043] In combination with the first aspect, in certain implementations of the first aspect, the second array is an ADP array whose horizontal coordinate is delay and whose vertical coordinate is angle.

[0044] In combination with the first aspect, in certain implementations of the first aspect, obtaining the first feature according to the first array and the first feature extractor includes: passing the first array through the first feature extractor to obtain the first feature;

[0045] Obtaining the second feature based on the second array and the second feature extractor includes: passing the second array through the second feature extractor to obtain the second feature.

[0046] In combination with the first aspect, in some implementations of the first aspect, the first feature extractor and the second feature extractor are both neural network feature extractors.

[0047] In conjunction with the first aspect, in certain implementations of the first aspect, performing a regression operation on the target feature based on the multiple classification areas and the number of divided categories to obtain positioning information includes:

[0048] Obtaining multiple linear classifiers according to the multiple classification areas and the number of divided categories;

[0049] According to the multiple classification areas and the number of divided categories, the target features are divided into different linear classifiers for regression operations to obtain the positioning information.

[0050] In combination with the first aspect, in some implementations of the first aspect, the number of the multiple linear classifiers is equal to the number of the division categories.

[0051] In a second aspect, an embodiment of the present invention provides an electronic device comprising a processor and a memory, wherein the memory is used to store a computer program, and the computer program comprises program instructions. When the processor runs the program instructions, the electronic device executes the steps of the method described above.

[0052] In a third aspect, an embodiment of the present invention provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, wherein the computer program includes program instructions, and when the program request is run by a computer, the computer is caused to execute the method as described above.

[0053] In a fourth aspect, an embodiment of the present invention provides a computer program product, which includes instructions. When the computer program product is run on a computer or any at least one processor, the computer performs the functions / steps in the above method.

[0054] In the technical solution of the positioning method and electronic device provided by the embodiments of the present invention, the method includes: obtaining multiple classification areas and the number of divided categories based on the channel frequency response, the received signal strength and the angular delay response; obtaining target features based on the channel frequency response, the angular delay response, a first feature extractor and a second feature extractor; and performing a regression operation on the target features based on the multiple classification areas and the number of divided categories to obtain positioning information, which can reduce the error rate of the fingerprint positioning method and improve positioning accuracy. BRIEF DESCRIPTION OF THE DRAWINGS

[0055] FIG1 is a schematic structural diagram of an electronic device provided by an embodiment of the present invention;

[0056] FIG2 is a software structure block diagram of the electronic device 100 according to an embodiment of the present invention;

[0057] FIG3 is a flow chart of a positioning method provided by an embodiment of the present invention;

[0058] FIG4 is a flow chart showing how to obtain multiple classification areas and the number of classification categories based on the channel frequency response, received signal strength, and angular delay response in FIG3 ;

[0059] FIG5 is a flow chart of obtaining a first classification result according to the channel frequency response in FIG4 ;

[0060] FIG6 is a flow chart of obtaining a first set by performing intra-class classification on the CFR set in FIG5 ;

[0061] FIG7 is a schematic diagram of merging the first classification result and the second classification result according to an embodiment of the present invention;

[0062] FIG8 is a flow chart of obtaining target features according to the channel frequency response, the angular delay response, the first feature extractor and the second feature extractor in FIG3 ;

[0063] FIG9 is a flow chart showing how to perform regression operations on target features to obtain positioning information based on multiple classification areas and the number of divided categories in FIG3 ;

[0064] FIG10 is a schematic diagram of feature extraction and linear regression according to an embodiment of the present invention;

[0065] FIG11 is a schematic diagram of a wireless communication system;

[0066] FIG12 is a schematic structural diagram of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0067] In order to better understand the technical solution of the present invention, the embodiments of the present invention are described in detail below with reference to the accompanying drawings.

[0068] It should be understood that the embodiments described are only a portion of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by persons of ordinary skill in the art without creative work are within the scope of protection of the present invention.

[0069] The terms used in the embodiments of the present invention are only for the purpose of describing specific embodiments and are not intended to limit the present invention. The singular forms "a", "an", "the" and "the" used in the embodiments of the present invention and the appended claims are also intended to include plural forms unless the context clearly indicates otherwise.

[0070] It should be understood that the term "and / or" as used herein simply describes a relationship between associated objects, indicating that three possible relationships exist. For example, "A and / or B" can represent: A alone, A and B together, or B alone. Furthermore, the character " / " in this document generally indicates an "or" relationship between the associated objects.

[0071] FIG1 shows a schematic structural diagram of an electronic device 100 .

[0072] The electronic device 100 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, a sensor module 180, a button 190, a motor 191, an indicator 192, a camera 193, a display screen 194, and a subscriber identification module (SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, an air pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity light sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.

[0073] It should be understood that the structure illustrated in the embodiments of the present invention does not constitute a specific limitation on the electronic device 100. In other embodiments of the present application, the electronic device 100 may include more or fewer components than shown, or may combine or separate certain components, or arrange the components differently. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.

[0074] The processor 110 may include one or more processing units. For example, the processor 110 may include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU). The different processing units may be independent devices or integrated into one or more processors.

[0075] The controller can generate operation control signals according to the instruction operation code and timing signal to complete the control of instruction fetching and execution.

[0076] Processor 110 may also include a memory for storing instructions and data. In some embodiments, the memory in processor 110 is a cache memory. This memory can store instructions or data that have just been used or are being recycled by processor 110. If processor 110 needs to use the same instruction or data again, it can directly access the memory. This avoids duplicate accesses, reduces processor 110 latency, and thus improves system efficiency.

[0077] In some embodiments, the processor 110 may include one or more interfaces. The interfaces may include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface.

[0078] It is understood that the interface connection relationship between the modules illustrated in the embodiment of the present invention is merely an illustrative illustration and does not constitute a structural limitation on the electronic device 100. In other embodiments of the present application, the electronic device 100 may also adopt different interface connection methods from the above embodiments, or a combination of multiple interface connection methods.

[0079] The charging management module 140 is configured to receive charging input from a charger. The charger can be either a wireless charger or a wired charger. In some wired charging embodiments, the charging management module 140 can receive charging input from the wired charger via the USB interface 130. In some wireless charging embodiments, the charging management module 140 can receive wireless charging input via the wireless charging coil of the electronic device 100. While charging the battery 142, the charging management module 140 can also provide power to the electronic device via the power management module 141.

[0080] The power management module 141 is used to connect the battery 142, the charging management module 140, and the processor 110. The power management module 141 receives input from the battery 142 and / or the charging management module 140, and provides power to the processor 110, the internal memory 121, the display 194, the camera 193, and the wireless communication module 160. The power management module 141 can also be used to monitor parameters such as battery capacity, battery cycle count, and battery health status (leakage, impedance). In some other embodiments, the power management module 141 can also be set in the processor 110. In other embodiments, the power management module 141 and the charging management module 140 can also be set in the same device.

[0081] The wireless communication function of the electronic device 100 can be implemented through the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modem processor and the baseband processor.

[0082] Antenna 1 and Antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in electronic device 100 can be used to cover a single or multiple communication frequency bands. Different antennas can also be reused to improve antenna utilization. For example, antenna 1 can be reused as a diversity antenna for a wireless local area network. In other embodiments, the antennas can be used in conjunction with a tuning switch.

[0083] The mobile communication module 150 can provide solutions for wireless communications including 2G / 3G / 4G / 5G applied to the electronic device 100. The mobile communication module 150 may include at least one filter, a switch, a power amplifier, a low noise amplifier (LNA), etc. The mobile communication module 150 can receive electromagnetic waves from the antenna 1, and filter, amplify, and process the received electromagnetic waves, and transmit them to the modulation and demodulation processor for demodulation. The mobile communication module 150 can also amplify the signal modulated by the modulation and demodulation processor, and convert it into electromagnetic waves for radiation through the antenna 1. In some embodiments, at least some of the functional modules of the mobile communication module 150 can be set in the processor 110. In some embodiments, at least some of the functional modules of the mobile communication module 150 can be set in the same device as at least some of the modules of the processor 110.

[0084] The modem processor may include a modulator and a demodulator. The modulator is used to modulate the low-frequency baseband signal to be transmitted into a medium-high frequency signal. The demodulator is used to demodulate the received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to the baseband processor for processing. After being processed by the baseband processor, the low-frequency baseband signal is passed to the application processor. The application processor outputs a sound signal through an audio device (not limited to the speaker 170A, the receiver 170B, etc.) or displays an image or video through the display screen 194. In some embodiments, the modem processor may be an independent device. In other embodiments, the modem processor may be independent of the processor 110 and be set in the same device as the mobile communication module 150 or other functional modules.

[0085] The wireless communication module 160 can provide wireless communication solutions including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR), etc., which are applied to the electronic device 100. The wireless communication module 160 can be one or more devices that integrate at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via the antenna 2, frequency modulates and filters the electromagnetic wave signals, and sends the processed signals to the processor 110. The wireless communication module 160 can also receive the signal to be sent from the processor 110, frequency modulate it, amplify it, and convert it into electromagnetic waves for radiation through the antenna 2.

[0086] In some embodiments, the antenna 1 of the electronic device 100 is coupled to the mobile communication module 150, and the antenna 2 is coupled to the wireless communication module 160, so that the electronic device 100 can communicate with a network and other devices through wireless communication technologies. The wireless communication technologies may include global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), wideband code division multiple access (WCDMA), time-division code division multiple access (TD-SCDMA), long term evolution (LTE), BT, GNSS, WLAN, NFC, FM, and / or IR technology. The GNSS may include a global positioning system (GPS), a global navigation satellite system (GLONASS), a Beidou navigation satellite system (BDS), a quasi-zenith satellite system (QZSS) and / or a satellite based augmentation system (SBAS).

[0087] Electronic device 100 implements display functionality through a GPU, display screen 194, and an application processor. A GPU is a microprocessor for image processing that connects display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. Processor 110 may include one or more GPUs that execute program instructions to generate or modify display information.

[0088] Display screen 194 is used to display images, videos, and the like. Display screen 194 includes a display panel. The display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a MiniLED, a MicroLED, a Micro-oLed, or a quantum dot light-emitting diode (QLED). In some embodiments, electronic device 100 may include one or N display screens 194, where N is a positive integer greater than one.

[0089] The electronic device 100 can implement a shooting function through an ISP, a camera 193, a video codec, a GPU, a display screen 194, and an application processor.

[0090] The ISP processes data fed back by camera 193. For example, when taking a photo, the shutter is opened, and light is transmitted through the lens to the camera's photosensitive element. The light signal is converted into an electrical signal, which is then passed to the ISP for processing and converted into a visible image. The ISP can also perform algorithmic optimization on image noise, brightness, and skin tone. It can also optimize parameters such as exposure and color temperature of the captured scene. In some embodiments, the ISP can be located within camera 193.

[0091] The camera 193 is used to capture still images or videos. The object generates an optical image through the lens and projects it onto the photosensitive element. The photosensitive element can be a charge coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor. The photosensitive element converts the light signal into an electrical signal, and then passes the electrical signal to the ISP for conversion into a digital image signal. The ISP outputs the digital image signal to the DSP for processing. The DSP converts the digital image signal into an image signal in a standard RGB, YUV or other format. In some embodiments, the electronic device 100 may include 1 or N cameras 193, where N is a positive integer greater than 1.

[0092] The digital signal processor is used to process digital signals. In addition to processing digital image signals, it can also process other digital signals. For example, when the electronic device 100 selects a frequency point, the digital signal processor is used to perform Fourier transform on the frequency point energy.

[0093] Video codecs are used to compress or decompress digital video. Electronic device 100 may support one or more video codecs. This allows electronic device 100 to play or record videos in various encoding formats, such as Moving Picture Experts Group (MPEG) 1, MPEG2, MPEG3, and MPEG4.

[0094] The NPU is a neural network (NN) computing processor. Drawing on the structure of biological neural networks, such as the transmission patterns between neurons in the human brain, it rapidly processes input information and can continuously self-learn. The NPU can enable intelligent cognitive applications in electronic device 100, such as image recognition, face recognition, speech recognition, and text comprehension.

[0095] The external memory interface 120 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the electronic device 100. The external memory card communicates with the processor 110 via the external memory interface 120 to implement data storage functions. For example, files such as music and videos can be stored on the external memory card.

[0096] The internal memory 121 can be used to store computer executable program codes, which include instructions. The internal memory 121 may include a program storage area and a data storage area. Among them, the program storage area may store an operating system, an application required for at least one function (such as a sound playback function, an image playback function, etc.), etc. The data storage area may store data created during the use of the electronic device 100 (such as audio data, a phone book, etc.), etc. In addition, the internal memory 121 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, a universal flash storage (UFS), etc. The processor 110 executes various functional applications and data processing of the electronic device 100 by running instructions stored in the internal memory 121 and / or instructions stored in a memory provided in the processor.

[0097] The electronic device 100 can implement audio functions such as music playback and recording through the audio module 170 , the speaker 170A, the receiver 170B, the microphone 170C, the headphone jack 170D, and the application processor.

[0098] The audio module 170 is used to convert digital audio information into analog audio signal output, and is also used to convert analog audio input into digital audio signals. The audio module 170 can also be used to encode and decode audio signals. In some embodiments, the audio module 170 can be provided in the processor 110, or some functional modules of the audio module 170 can be provided in the processor 110.

[0099] The speaker 170A, also called a "speaker", is used to convert audio electrical signals into sound signals. The electronic device 100 can listen to music or listen to hands-free calls through the speaker 170A.

[0100] The receiver 170B, also called a "handset", is used to convert audio electrical signals into sound signals. When the electronic device 100 receives a call or a voice message, the user can place the receiver 170B close to the ear to hear the voice.

[0101] Microphone 170C, also known as "microphone" or "microphone", is used to convert sound signals into electrical signals. When making a call or sending a voice message, the user can speak by putting their mouth close to the microphone 170C to input the sound signal into the microphone 170C. The electronic device 100 can be provided with at least one microphone 170C. In other embodiments, the electronic device 100 can be provided with two microphones 170C, which can not only collect sound signals but also realize noise reduction function. In other embodiments, the electronic device 100 can also be provided with three, four or more microphones 170C to collect sound signals, reduce noise, identify the source of sound, realize directional recording function, etc.

[0102] The headphone jack 170D is used to connect a wired headphone and can be the USB interface 130 or a 3.5mm open mobile terminal platform (OMTP) standard interface or a cellular telecommunications industry association of the USA (CTIA) standard interface.

[0103] The buttons 190 include a power button, a volume button, and the like. The buttons 190 may be mechanical buttons or touch buttons. The electronic device 100 may receive key inputs and generate key signal inputs related to user settings and function control of the electronic device 100.

[0104] Motor 191 can generate vibration prompts. Motor 191 can be used for incoming call vibration prompts, and can also be used for touch vibration feedback. For example, touch operations acting on different applications (such as taking pictures, audio playback, etc.) can correspond to different vibration feedback effects. For touch operations acting on different areas of the display screen 194, motor 191 can also correspond to different vibration feedback effects. Different application scenarios (for example: time reminders, receiving messages, alarm clocks, games, etc.) can also correspond to different vibration feedback effects. The touch vibration feedback effect can also support customization.

[0105] The indicator 192 may be an indicator light, which may be used to indicate the charging status, power level changes, messages, missed calls, notifications, etc.

[0106] The SIM card interface 195 is used to connect a SIM card. The SIM card can be connected to or disconnected from the electronic device 100 by inserting it into or removing it from the SIM card interface 195. The electronic device 100 can support 1 or N SIM card interfaces, where N is a positive integer greater than 1. The SIM card interface 195 can support Nano SIM cards, Micro SIM cards, SIM cards, and the like. Multiple cards can be inserted into the same SIM card interface 195 at the same time. The types of the multiple cards can be the same or different. The SIM card interface 195 can also be compatible with different types of SIM cards. The SIM card interface 195 can also be compatible with external memory cards. The electronic device 100 interacts with the network through the SIM card to implement functions such as calls and data communications. In some embodiments, the electronic device 100 uses an eSIM, i.e., an embedded SIM card. The eSIM card can be embedded in the electronic device 100 and cannot be separated from the electronic device 100.

[0107] The software system of the electronic device 100 can adopt a layered architecture, an event-driven architecture, a micro-kernel architecture, a micro-service architecture, or a cloud architecture. In the embodiment of the present invention, the Android system with a layered architecture is used as an example to illustrate the software structure of the electronic device 100.

[0108] FIG2 is a block diagram of the software structure of the electronic device 100 according to an embodiment of the present invention.

[0109] A layered architecture divides software into several layers, each with distinct roles and responsibilities. Layers communicate with each other through software interfaces. In some embodiments, the Android system is divided into four layers: the application layer, the application framework layer, the Android runtime and system libraries, and the kernel layer.

[0110] The application layer can include a series of application packages.

[0111] As shown in FIG2 , the application package may include applications such as camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, video, and short message.

[0112] The application framework layer provides an application programming interface (API) and programming framework for applications in the application layer. The application framework layer includes some predefined functions.

[0113] As shown in FIG2 , the application framework layer may include a window manager, a content provider, a view system, a telephony manager, a resource manager, a notification manager, and the like.

[0114] The window manager is used to manage window programs. The window manager can obtain the display size, determine whether there is a status bar, lock the screen, take screenshots, etc.

[0115] Content providers are used to store and retrieve data and make it accessible to applications. The data may include videos, images, audio, calls made and received, browsing history and bookmarks, phone books, etc.

[0116] The view system includes visual controls, such as those for displaying text and images. The view system is used to build applications. A display interface can consist of one or more views. For example, a display interface containing a text notification icon might include a view for displaying text and a view for displaying images.

[0117] The phone manager is used to provide communication functions of the electronic device 100, such as management of call status (including answering, hanging up, etc.).

[0118] The resource manager provides various resources for applications, such as localized strings, icons, images, layout files, video files, and so on.

[0119] The Notification Manager allows applications to display notifications in the status bar. These messages can be displayed briefly and then disappear automatically without user interaction. For example, the Notification Manager is used to notify users of completed downloads and message reminders. The Notification Manager can also display notifications in the top status bar of the system as icons or scrolling text, such as notifications from background applications, or as dialog windows on the screen. Examples include text messages in the status bar, beeps, vibrations on electronic devices, and flashing indicator lights.

[0120] Android Runtime includes core libraries and a virtual machine. Android runtime is responsible for scheduling and management of the Android system.

[0121] The core library consists of two parts: one is the function that needs to be called by the Java language, and the other is the Android core library.

[0122] The application layer and application framework layer run in a virtual machine. The virtual machine executes Java files in the application layer and application framework layer as binary files. The virtual machine manages object lifecycles, stack management, thread management, security and exception management, and garbage collection.

[0123] The system library can include multiple functional modules, such as surface manager, media library, 3D graphics processing library (such as OpenGL ES), 2D graphics engine (such as SGL), etc.

[0124] The surface manager is used to manage the display subsystem and provide fusion of 2D and 3D layers for multiple applications.

[0125] The media library supports playback and recording of a variety of common audio and video formats, as well as static image files. The media library can support a variety of audio and video encoding formats, such as: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.

[0126] The 3D graphics processing library is used to implement 3D graphics drawing, image rendering, compositing, and layer processing.

[0127] A 2D graphics engine is a drawing engine for 2D drawings.

[0128] The kernel layer is the layer between hardware and software. The kernel layer includes at least display driver, camera driver, audio driver, and sensor driver.

[0129] The following describes the workflow of the software and hardware of the electronic device 100 in conjunction with capturing a photo scene.

[0130] When the touch sensor 180K receives a touch operation, the corresponding hardware interrupt is sent to the kernel layer. The kernel layer processes the touch operation into a raw input event (including touch coordinates, touch operation timestamp, and other information). The raw input event is stored in the kernel layer. The application framework layer obtains the raw input event from the kernel layer and identifies the control corresponding to the input event. For example, if the touch operation is a touch single-click operation and the control corresponding to the single-click operation is the control of the camera application icon, the camera application calls the interface of the application framework layer to start the camera application, and then starts the camera driver by calling the kernel layer to capture a still image or video through the camera 193.

[0131] The fingerprint positioning method is divided into two stages. The first stage is the data set collection stage. There are two collection methods. One is to select a chip that can process CS, load it on a small car or mobile device, move it within a certain area and repeatedly collect data; the other is to use ray tracing to simulate the transmission path of electromagnetic waves in the air according to the map to generate a simulated simulation channel. The data is manually processed and used as the fingerprint of the data set.

[0132] One related technology is to select some CSI information that can characterize the multipath effect as a fingerprint, that is, to use the received signal strength (RSSI), channel frequency response (CFR) or angular delay profile (ADP) alone, and then establish a one-to-one correspondence between the fingerprint and the coordinates for prediction. Specifically, the CSI information is obtained by using a chip loaded on a car or mobile device, and the CSI information is processed into RSSI, CFR or ADP and then used as a fingerprint alone. Through system modeling, the fingerprint is determined by the coordinates lc and the preset parameters pv related to the scene, which can be written as: Fingerprint = F(lc,pv)

[0133] Fingerprint positioning requires the same pv, and reverse calculation of coordinates from the fingerprint: lc = F -1 (Fingerprint)

[0134] For the three fingerprint features used separately, namely RSSI, CFR and ADP, there are cases in a scene where one or two fingerprints of two points far apart are very similar, but the other fingerprints are not similar. Therefore, if RSSI, CFR or ADP is used alone as the fingerprint, a certain amount of data will be lost, which will have a relatively large impact on the subsequent processing and prediction. It is difficult to overcome this problem by pre-processing the data accordingly, because the location information is unknown, so it is impossible to clean up possible duplicate points, or add functions to the individual RSSI, CFR or ADP to improve the discrimination. Different buildings have different effects on the fingerprints of different areas. Therefore, in the process of reversing from the fingerprint to lc, the changes in the fingerprints of different areas correspond to different changes in lc, which in turn causes the problem of heterogeneous distribution of data. Therefore, the formula for reversing the coordinates from the fingerprint should be written as: lc = F -1 (Fingerprint,cv)

[0135] Here, cv = [area…], where area is a covariate in the fingerprint positioning process. Simply establishing a one-to-one correspondence between all fingerprints and coordinates fails to eliminate the influence of covariates like area, making the function difficult to reflect the desired fingerprint positioning relationship. Furthermore, due to the limitations of hardware and significant human interference, it consumes considerable manpower and is therefore difficult to collect large amounts of data across a wide range of scenes.

[0136] A second related technique involves manually partitioning the dataset. Environmental regions are manually partitioned. For example, a 50m×50m area is first divided into 100 5m×5m regions, with the fingerprints in each 5m×5m region labeled, for a total of 100 labels. Each 5m×5m region is then divided into 25 1m×1m regions, with each 1m×1m region labeled, for a total of 25 labels. The environmental regions are divided according to a rule, with larger regions further divided into smaller regions for more detailed labeling. After the first stage of data collection and processing, some data is obtained in each region. The data is then classified multiple times to assign different region labels, and the larger regions are further divided into smaller regions for more detailed labeling. The data in each region is likely to be unevenly distributed, and to distribute the data more evenly within each region, the results of the refined labels need to be repeatedly compared. Furthermore, the differences in the division of regions will affect the results of subsequent neural network training. Therefore, in order to determine a better region, a linkage comparison is required. Each comparison requires a complete reclassification process to the neural network output result, which incurs a huge manpower and time cost. It may also take a lot of time to find only a local optimal solution. Although the fingerprints of adjacent coordinate points are more likely to have a high degree of similarity, the artificial division of regions cannot guarantee that the coordinate points in each small area have a high degree of similarity. Because the manual division method cannot take into account the arrangement of buildings and scatterers, the area divided by any regular shape (such as a rectangle) must be a combination of fingerprints with different multipath characteristics, which will inevitably lead to the phenomenon of similar fingerprints being located in different areas.

[0137] Related technology 3 uses a hierarchical network to train sequentially based on the labeling results from Related technology 2, continuously refining and optimizing the regions. In Related technology 2, assuming that 100 labels are obtained after the initial region division, the fingerprint data corresponding to these 100 labels is input into the first-level neural network for supervised training. The network's output, i.e., the predicted label category, is then used as the input for training in the second-level neural network. If regression is used for training, the final output is the regression-predicted coordinates of the location point. If classification is used for training, the coordinates corresponding to the categories with the highest similarity among the 25 label outputs of the neural network are selected. The final predicted coordinates are then weighted averaged based on the likelihood after the network's sigmoid layer. Based on Related technology 1, a small number of distant coordinate points have relatively similar fingerprints. In machine learning, the assumption of independent and identically distributed data is crucial. Even a small number of data samples with very similar features but different labels can significantly disrupt the machine learning results. Furthermore, according to Related technology 2, the data after region division will be highly non-uniform. Therefore, this disruption cannot be eliminated unless new dimensions of data are introduced for integration. As shown in the example above, dividing a 50m×50m area twice corresponds to a total of 100×25 labels. Outdoor scenes are typically larger. The result of hierarchical labeling is that if a data prediction error occurs in the first-level neural network, the error will accumulate to the network's final output. This makes the backpropagation of the child neural network less targeted, and the gradients of all neurons must be updated each time to compensate. This involves a large amount of training compensation and makes it difficult for the neural network to converge. The hierarchical structure has a very large number of parameters, and the cascading of the layers increases the probability of error.

[0138] In summary, the fingerprint positioning method in the related art has a high error rate and low positioning accuracy.

[0139] In view of the technical problems existing in the above-mentioned related technologies, an embodiment of the present invention provides a positioning method based on multi-source information fusion, which can improve positioning accuracy.

[0140] FIG3 is a flow chart of a positioning method provided by an embodiment of the present invention. As shown in FIG3 , the method includes:

[0141] Step 202: Obtain multiple classification areas and the number of classification categories based on the channel frequency response (CFR), the received signal strength (RSSI), and the angular delay response (ADP).

[0142] In some possible embodiments, as shown in FIG4 , step 202 specifically includes:

[0143] Step 2022: Obtain a first classification result according to the channel frequency response (CFR).

[0144] In some possible embodiments, as shown in FIG5 , step 2022 specifically includes:

[0145] Step 202A: Obtain the CFR set of all locations in the environment.

[0146] Illustratively, a CFR set includes a plurality of CFR pictures.

[0147] Step 202B: obtain a first set by performing intra-category classification on the CFR set.

[0148] In some possible embodiments, as shown in FIG6 , step 202B specifically includes:

[0149] Step B02: read the CFR image at the first position in the CFR set;

[0150] Step B04: Match the CFR image at the first position with the remaining CFR images in the CFR set in sequence;

[0151] In some possible embodiments, step B04 specifically includes: obtaining a CFR template by selecting a feature area in the CFR image at the first position; obtaining multiple first images corresponding to the remaining CFR images in the CFR set by translating the CFR template on the remaining CFR images in the CFR set; and obtaining a first similarity between the CFR template and the first image based on the CFR template and the first image.

[0152] Step B06: Mark and classify the CFR images that meet the matching requirements among the remaining CFR images;

[0153] In some possible embodiments, step 202c specifically includes: determining whether the first similarity is greater than a first threshold; if it is determined that the first similarity is greater than the first threshold, marking and classifying the CFR pictures corresponding to the first threshold.

[0154] Experiments have shown that each CFR image is a combination of horizontal and vertical shifts of pixels in a certain area. Samples with similar multipath characteristics are reflected in the frequency-amplitude domain CFR image, meaning that regions of the same size in two CFR images appear very similar at different locations. Therefore, the matching process involves selecting a feature region T(x',y') at a specified location in each first CFR image (for example, the 8x8 or 16x16 position in the upper left corner). This feature region is then translated in each subsequent CFR image until it spans the entire source image area I(x,y). For each pixel, a multiplication operation is performed between the template (feature region) and the image (the image of the same size obtained by translating the template in the other CFR image) to obtain the first similarity R(x,y); this first similarity ranges from 0 to 1; the closer it is to 1, the closer the two first CFR images are. Then, a first threshold sim_threshold is set. When the maximum first similarity R(x, y) after each template matching is higher than the first threshold sim_threshold, the two first CFR images are classified into the same category.

[0155] Exemplarily, the first similarity is as follows:

[0156] Same size image.

[0157] Step B08: Read the CFR picture at the next position in the CFR set;

[0158] Step B10: If the CFR image at the next position is not matched, the CFR image at the next position is matched with the remaining unmarked CFR images in the CFR set in sequence;

[0159] Step B12: Determine whether the CFR picture at the next position is the last CFR picture in the CFR set. If not, proceed to step B08; if so, proceed to step B14.

[0160] If it is determined that the CFR picture at the next position is not the last CFR picture in the CFR set, continue to execute the step of reading the CFR picture at the next position in the CFR set;

[0161] Step B14: Use the current CFR set as the first set.

[0162] If it is determined that the CFR picture at the next position is the last CFR picture in the CFR set, the current CFR set is used as the first set.

[0163] Template matching strategies include intra-category and inter-category classification. Steps B02-B14 implement the intra-category template matching strategy. First, all CFR images are arranged in the order of path_list. To avoid situations where two first CFR images have partial similarities, i.e., the selected template approximates a subset of the translation feature regions of another first CFR image, but the translation regions of the two first CFR images are inconsistent, two template regions are selected. The first CFR image is read, and the template region is sequentially matched with all regions of all remaining CFR images in path_list. CFR images that meet the matching requirements are marked and classified. Read the second CFR image. If the CFR image is not matched, match it with all the remaining unmarked CFR images in path_list in turn. If the template does not find any CFR images that meet the matching requirements, find a CFR image that meets the matching requirements among the CFR images before it in path_list. The specific operation is to start matching again from the first CFR image in path_list. If a CFR image that meets the matching requirements is found, since these CFR images already have their own category numbers, the category number corresponding to the CFR image is assigned to the template, that is, the match is successful, the matching is terminated, the next CFR image is read, and the matching operation is repeated. If the CFR image has been matched, the next CFR image is read and the matching operation is repeated until each CFR image has its own category number.

[0164] Step 202C: Obtain a first classification result by performing inter-category classification on the first set.

[0165] The specific process of the template matching strategy for inter-category classification is as follows: save the CFR template of each CFR image in the first set to obtain the second set; read the CFR templates of the second set in sequence, select the two CFR templates that are the same as those in the intra-category matching, match them with all the remaining CFR templates, and update the CFR templates that meet the matching requirements to the same category until all CFR templates in the second set are updated.

[0166] Step 2024: Obtain a second classification result based on the received signal strength (RSSI) and the angle delay response (ADP).

[0167] In some possible embodiments, step 2024 specifically includes: processing the wireless environment through ray tracing to obtain the received signal strength and angular delay response; processing the received signal strength and angular delay response through the elbow method and the silhouette coefficient method to obtain the optimal number of classifications; based on the optimal number of classifications, processing the received signal strength and angular delay response through K-means clustering to obtain a second classification result.

[0168] By processing the wireless environment using ray tracing, we can obtain the angle of arrival (AOA, AOD), delay information (distance), and receive gain of each coordinate point. This information can be directly recovered from the channel time domain response (CIR) to a certain extent. The present invention integrates this information and combines it with the elbow method and silhouette coefficient method to obtain the optimal number of classifications. The elbow method and silhouette coefficient method are combined to ensure that the similarity of data within the same category of all samples is as high as possible, and the similarity of data within different categories is as low as possible. Then, using the K-means clustering method, samples are assigned to the cluster center and the cluster center is continuously moved to obtain the final pre-classification area.

[0169] Step 2026: Obtain multiple classification areas and the number of divided categories based on the first classification result and the second classification result.

[0170] The sample points in each area have similar frequency domain, spatial domain angle, and time delay characteristics, and the entire area is no longer divided into regular rectangles.

[0171] Based on the results of the first and second classifications, a new classification is generated. For example, if frequency domain classification 0 only corresponds to spatial domain classifications 0 and 5, and frequency domain classification 1 only corresponds to spatial domain classification 12, then [0,0] is set as the new classification 0, [0,5] as the new classification 1, [1,12] as the new classification 2, and so on.

[0172] In some possible embodiments, step 2026 specifically includes: merging the first classification result and the second classification result to obtain multiple classification areas and a number of divided categories. Figure 7 is a schematic diagram of merging the first classification result and the second classification result in an embodiment of the present invention. As shown in Figure 7, the merged categories are divided based on CFR, RSSI, and ADP. Compared with division based on CFR, RSSI, or ADP alone or manual division, it is more accurate, improves the accuracy of regional division, and is conducive to achieving higher positioning accuracy requirements.

[0173] Step 204: Obtain target features according to the channel frequency response (CFR), the angular delay response (ADP), the first feature extractor, and the second feature extractor.

[0174] In some possible embodiments, as shown in FIG8 , step 204 specifically includes:

[0175] Step 204A: Obtain a first array and a second array according to the channel frequency response and the angular delay response.

[0176] Exemplarily, the first array is a CFR array in which the horizontal coordinate is the carrier and the vertical coordinate is the number of antenna pairs.

[0177] Exemplarily, the second array is an ADP array with the horizontal axis being delay and the vertical axis being angle.

[0178] In a ULA array, the antenna array response is:

[0179] Therefore, the CFR of the kth user on the lth carrier is:

[0180] Among them, a p,k is the amplitude information. After combining the carriers, the total CFR is:

[0181] Based on the CFR array, the ADP array can be obtained. The ADP array is generated by multiplying the DFT matrix on the left and right sides based on H. The two DFT matrices are as follows:

[0182] Therefore, ADP is: G = V H H k F

[0183] Step 204B: Obtain a first feature according to the first array and the first feature extractor.

[0184] In some possible embodiments, step 204B specifically includes: passing the first array through a first feature extractor to obtain a first feature.

[0185] Step 204C: Obtain a second feature based on the second array and the second feature extractor.

[0186] In some possible embodiments, step 204C specifically includes: passing the second array through a second feature extractor to obtain a second feature.

[0187] Exemplarily, the first feature extractor and the second feature extractor are both neural network feature extractors.

[0188] Step 204D: Obtain a target feature based on the first feature and the second feature.

[0189] After passing the first and second arrays through their respective feature extractors, the features are flattened and superimposed together to complete multi-source information fusion, improving the prediction accuracy in NLOS scenarios.

[0190] Step 206: Perform regression operation on the target features according to the multiple classification areas and the number of divided categories to obtain positioning information.

[0191] In some possible embodiments, as shown in FIG9 , step 206 specifically includes:

[0192] Step 2062: Obtain multiple linear classifiers based on the multiple classification areas and the number of divided categories.

[0193] Step 2064: Based on the multiple classification areas and the number of divided categories, the target features are divided into different linear classifiers for regression operations to obtain positioning information.

[0194] Exemplarily, the number of the plurality of linear classifiers is equal to the number of the division categories.

[0195] This embodiment of the present invention selects different classifiers based on CFR, RSSI, and ADP. Figure 10 is a schematic diagram of feature extraction and linear regression in this embodiment of the present invention. As shown in Figure 10, a parallel multi-head mechanism is used to divide the features obtained by the feature extractor after data fusion into different linear classifiers for regression operations. Each linear classifier corresponds to a classification area, which improves the prediction accuracy in NLOS scenarios. All linear classifiers in a scenario share the same feature extractor. For example, the two feature extractors shown in Figure 10 are two feature extractors for processing CFR and ADP.

[0196] The positioning method provided in the embodiment of the present invention can be applied to wireless communication systems such as 5G, satellite communication and short-range communication. Figure 11 is a schematic diagram of a wireless communication system. The wireless communication system can be composed of cells. As shown in Figure 11, each cell includes a base station (BS), and the base station provides communication services to multiple mobile terminals. The wireless communication system can also perform point-to-point communication, such as communication between multiple terminals. It should be noted that the wireless communication system shown in Figure 11 includes but is not limited to: Narrow Band-Internet of Things (NB-IoT), GSM, Enhanced Data rate for GSM Evolution (EDGE), WCDMA, Code Division Multiple Access 2000 (CDMA2000), TD-SCDMA, LTE and the three major application scenarios of the next generation 5G mobile communication system, eMBB, URLLC and eMTC.

[0197] In the technical solution of the positioning method provided by an embodiment of the present invention, the method includes: obtaining multiple classification areas and the number of division categories based on the channel frequency response, the received signal strength and the angular delay response; obtaining target features based on the channel frequency response, the angular delay response, a first feature extractor and a second feature extractor; and performing a regression operation on the target features based on the multiple classification areas and the number of division categories to obtain positioning information, which can reduce the error rate of the fingerprint positioning method and improve positioning accuracy.

[0198] FIG12 is a schematic diagram of the structure of an electronic device provided by an embodiment of the present invention. It should be understood that the electronic device 400 can execute each step in the above positioning method. To avoid repetition, detailed description is omitted here. The electronic device 400 includes: a first processing unit 401 .

[0199] The first processing unit 401 is used to obtain multiple classification areas and the number of division categories based on the channel frequency response, the received signal strength and the angular delay response; obtain target features based on the channel frequency response, the angular delay response, the first feature extractor and the second feature extractor; and perform a regression operation on the target features based on the multiple classification areas and the number of division categories to obtain positioning information.

[0200] Optionally, the first processing unit 401 is specifically used to obtain a first classification result based on the channel frequency response; obtain a second classification result based on the received signal strength and the angular delay response; and obtain the multiple classification areas and the number of divided categories based on the first classification result and the second classification result.

[0201] Optionally, the first processing unit 401 is specifically configured to obtain a CFR set of all locations in an environment; obtain a first set by performing intra-category classification on the CFR set; and obtain a first classification result by performing inter-category classification on the first set.

[0202] Optionally, the first processing unit 401 is specifically used to read the CFR picture at the first position in the CFR set; match the CFR picture at the first position with the remaining CFR pictures in the CFR set in sequence; mark and classify the CFR pictures that meet the matching requirements in the remaining CFR pictures; read the CFR picture at the next position in the CFR set; if the CFR picture at the next position is not matched, match the CFR picture at the next position with the remaining unmarked CFR pictures in the CFR set in sequence; determine whether the CFR picture at the next position is the last CFR picture in the CFR set; if it is determined that the CFR picture at the next position is not the last CFR picture in the CFR set, continue to perform the operation of reading the CFR picture at the next position in the CFR set; if it is determined that the CFR picture at the next position is the last CFR picture in the CFR set, use the current CFR set as the first set.

[0203] Optionally, the first processing unit 401 is specifically used to obtain a CFR template by selecting a feature area in the CFR picture at the first position; obtain multiple first images corresponding to the remaining CFR pictures in the CFR set by translating the CFR template on the remaining CFR pictures in the CFR set; and obtain a first similarity between the CFR template and the first image based on the CFR template and the first image.

[0204] Optionally, the first processing unit 401 is specifically configured to determine whether the first similarity is greater than a first threshold; if it is determined that the first similarity is greater than the first threshold, mark and classify the CFR pictures corresponding to the first threshold.

[0205] Optionally, the first processing unit 401 is specifically used to process the wireless environment through ray tracing to obtain the received signal strength and the angular delay response; process the received signal strength and the angular delay response through the elbow method and the silhouette coefficient method to obtain the optimal number of classifications; based on the optimal number of classifications, process the received signal strength and the angular delay response through K-means clustering to obtain the second classification result.

[0206] Optionally, the first processing unit 401 is specifically used to obtain a first array and a second array based on the channel frequency response and the angular delay response; obtain a first feature based on the first array and the first feature extractor; obtain a second feature based on the second array and the second feature extractor; and obtain the target feature based on the first feature and the second feature.

[0207] Optionally, the first array is a CFR array in which the horizontal coordinate is the carrier and the vertical coordinate is the number of antenna pairs.

[0208] Optionally, the second array is an ADP array with the horizontal axis being delay and the vertical axis being angle.

[0209] Optionally, the first processing unit 401 is specifically configured to pass the first array through the first feature extractor to obtain the first feature; and pass the second array through the second feature extractor to obtain the second feature.

[0210] Optionally, both the first feature extractor and the second feature extractor are neural network feature extractors.

[0211] Optionally, the first processing unit 401 is specifically used to obtain multiple linear classifiers based on the multiple classification areas and the number of division categories; based on the multiple classification areas and the number of division categories, the target features are divided into different linear classifiers for regression operations to obtain the positioning information.

[0212] Optionally, the number of the multiple linear classifiers is equal to the number of the division categories.

[0213] It should be understood that the electronic device 400 here is embodied in the form of a functional unit. The term "unit" here can be implemented in the form of software and / or hardware, and is not specifically limited to this. For example, a "unit" can be a software program, a hardware circuit, or a combination of the two that implements the above-mentioned functions. The hardware circuit may include an application specific integrated circuit (ASIC), an electronic circuit, a processor (such as a shared processor, a dedicated processor, or a group processor, etc.) and memory for executing one or more software or firmware programs, a combined logic circuit, and / or other suitable components that support the described functions.

[0214] Therefore, the various exemplary units described in the embodiments of the present invention can be implemented using electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the present invention.

[0215] An embodiment of the present application provides an electronic device, which may be a terminal device or a circuit device built into the terminal device. The electronic device may be used to perform the functions / steps of the above method embodiment.

[0216] An embodiment of the present application provides a computer-readable storage medium, which stores instructions. When the instructions are executed on a terminal device, the terminal device executes the functions / steps in the above-mentioned method embodiment.

[0217] An embodiment of the present application further provides a computer program product comprising instructions, which, when executed on a computer or at least one processor, enables the computer to execute the functions / steps in the above-mentioned method embodiment.

[0218] In the embodiments of the present application, "at least one" refers to one or more, and "more" refers to two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent the existence of A alone, the existence of A and B at the same time, and the existence of B alone. Among them, A and B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following" and similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b and c can be represented by: a, b, c, ab, ac, bc, or abc, where a, b, c can be single or multiple.

[0219] Those skilled in the art will appreciate that the various units and algorithm steps described in the embodiments disclosed herein can be implemented using a combination of electronic hardware, computer software, and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0220] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0221] In the several embodiments provided in this application, if any function is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling an electronic device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of this application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

[0222] The above description is merely a specific embodiment of the present application. Any person skilled in the art may easily conceive of variations or substitutions within the technical scope disclosed in this application, and such variations or substitutions shall be within the scope of protection of this application. The scope of protection of this application shall be subject to the scope of protection of the claims.

Claims

1. A positioning method based on multi-source information fusion, characterized in that: The method comprises: According to the channel frequency response, the received signal strength and the angular delay response, multiple classification areas and the number of divided categories are obtained; Obtaining target features according to the channel frequency response, the angular delay response, the first feature extractor and the second feature extractor; According to the multiple classification areas and the number of divided categories, a regression operation is performed on the target feature to obtain positioning information.

2. The method according to claim 1, characterized in that The method of obtaining multiple classification areas and the number of classification categories according to the channel frequency response, the received signal strength and the angular delay response includes: Obtaining a first classification result according to the channel frequency response; Obtaining a second classification result according to the received signal strength and the angular delay response; The multiple classification areas and the number of divided categories are obtained according to the first classification result and the second classification result.

3. The method according to claim 2, characterized in that Obtaining a first classification result according to the channel frequency response includes: Get the CFR set for all locations in the environment; Obtaining a first set by performing intra-category classification on the CFR set; The first classification result is obtained by performing inter-category classification on the first set.

4. The method according to claim 3, characterized in that The step of obtaining a first set by performing intra-category classification on the CFR set includes: Read the CFR picture at the first position in the CFR set; Matching the CFR picture at the first position with the remaining CFR pictures in the CFR set in sequence; Marking and classifying the CFR pictures that meet the matching requirements among the remaining CFR pictures; Read the CFR picture at the next position in the CFR set; If the CFR picture at the next position is not matched, matching the CFR picture at the next position with the remaining unmarked CFR pictures in the CFR set in sequence; Determine whether the CFR picture at the next position is the last CFR picture in the CFR set; If it is determined that the CFR picture at the next position is not the last CFR picture in the CFR set, continue to perform the step of reading the CFR picture at the next position in the CFR set; If it is determined that the CFR picture at the next position is the last CFR picture in the CFR set, the current CFR set is used as the first set.

5. The method according to claim 4 or 5, characterized in that: The matching the CFR picture at the first position with the remaining CFR pictures in the CFR set in sequence includes: Obtaining a CFR template by selecting a feature area in the CFR image at the first position; Obtaining a plurality of first images corresponding to the remaining CFR pictures in the CFR set by translating the CFR template on the remaining CFR pictures in the CFR set; A first similarity between the CFR template and the first image is obtained according to the CFR template and the first image.

6. The method according to claim 5, characterized in that The marking and classifying the CFR pictures that meet the matching requirements among the remaining CFR pictures includes: Determining whether the first similarity is greater than a first threshold; If it is determined that the first similarity is greater than the first threshold, the CFR picture corresponding to the first threshold is marked and classified.

7. The method according to any one of claims 2 to 6, characterized in that: The obtaining a second classification result according to the received signal strength and the angular delay response includes: Processing the wireless environment by ray tracing to obtain the received signal strength and the angular delay response; Processing the received signal strength and the angle delay response by using an elbow method and a contour coefficient method to obtain an optimal classification number; According to the optimal number of classifications, the received signal strength and the angular delay response are processed by K-means clustering to obtain the second classification result.

8. The method according to claim 1, characterized in that The method of obtaining the target feature according to the channel frequency response, the angle delay response, the first feature extractor and the second feature extractor includes: Obtaining a first array and a second array according to the channel frequency response and the angular delay response; Obtaining a first feature according to the first array and the first feature extractor; Obtaining a second feature according to the second array and the second feature extractor; The target feature is obtained according to the first feature and the second feature.

9. The method according to claim 8, characterized in that The first array is a CFR array in which the horizontal axis is the carrier and the vertical axis is the number of antenna pairs.

10. The method according to claim 8 or 9, characterized in that: The second array is an ADP array with the horizontal axis representing delay and the vertical axis representing angle.

11. The method according to any one of claims 8 to 10, characterized in that: The obtaining of the first feature according to the first array and the first feature extractor comprises: passing the first array through the first feature extractor to obtain the first feature; The obtaining of the second feature according to the second array and the second feature extractor includes: passing the second array through the second feature extractor to obtain the second feature.

12. The method according to any one of claims 1 to 11, characterized in that The first feature extractor and the second feature extractor are both neural network feature extractors.

13. The method according to any one of claims 1 to 12, characterized in that The step of performing a regression operation on the target feature according to the multiple classification areas and the number of divided categories to obtain positioning information includes: Obtaining multiple linear classifiers according to the multiple classification areas and the number of divided categories; According to the multiple classification areas and the number of divided categories, the target features are divided into different linear classifiers for regression operations to obtain the positioning information.

14. The method according to claim 13, characterized in that The number of the plurality of linear classifiers is equal to the number of the division categories.

15. An electronic device, characterized in that: It comprises a processor and a memory, wherein the memory is used to store a computer program, and the computer program comprises program instructions. When the processor runs the program instructions, the electronic device executes the steps of the method as claimed in any one of claims 1 to 14.

16. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, wherein the computer program includes program instructions, and when the program request is executed by a computer, the computer is enabled to execute the method according to any one of claims 1 to 14.