Positioning method, device, equipment, chip and storage medium

By selecting high-precision candidate positioning points and clustering them in Wi-Fi RTT positioning technology, the problem of limited positioning accuracy is solved, high-precision positioning in complex environments is achieved, and computational complexity is reduced.

CN115942244BActive Publication Date: 2025-09-09GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211603513.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-12-13
Publication Date
2025-09-09
Estimated Expiration
2042-12-13

AI Technical Summary

Technical Problem

Existing Wi-Fi RTT-based positioning technology is subject to interference from factors such as bandwidth, sampling frequency, and Wi-Fi signal obstruction during indoor positioning, resulting in reduced positioning accuracy. It also has strict requirements on the positioning environment and cannot be effectively applied in complex multipath environments.

Method used

By determining M candidate positioning points, selecting N candidate positioning points from them using at least one scoring indicator, and clustering them, the target positioning point is determined. The weighted concentric circle generation algorithm and the three-sided positioning algorithm are combined to improve the positioning accuracy and reduce the computational complexity of the clustering algorithm.

Benefits of technology

It improves positioning accuracy, reduces complexity, and is applicable to a wider range of positioning scenarios, regardless of whether the propagation path between the candidate positioning point and the access point is LOS or NLOS.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115942244B_ABST
    Figure CN115942244B_ABST
Patent Text Reader

Abstract

The present application discloses a positioning method, apparatus, device, chip, and storage medium. The method includes: determining M candidate positioning points; selecting N candidate positioning points from the M candidate positioning points based on at least one scoring metric; and clustering the N candidate positioning points to determine a target positioning point. This method not only improves positioning accuracy but also reduces the computational complexity of the subsequent clustering algorithm.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of communication technology, and in particular to a positioning method, apparatus, device, chip and storage medium. Background Art

[0002] LBS (Location Based Services, LBS) is closely related to people's daily lives, with a broad user base and a vast application market. Whether it is catering services, traffic navigation, emergency rescue, advertising push, scene perception, etc., they all have a strong dependence on location information. According to the indoor and outdoor divisions, LBS can be divided into indoor positioning and outdoor positioning. Indoor positioning technology represented by Wi-Fi Round Trip Time (RTT) is a ranging technology based on the IEEE 802.11mc protocol. It allows mobile devices to measure the distance between the mobile device and the Wi-Fi router without accessing the Wi-Fi router, thereby locating the mobile device.

[0003] In related technologies, Wi-Fi RTT-based positioning technology is still subject to interference from many factors during the positioning process, such as bandwidth, sampling frequency, and Wi-Fi signal obstruction, which will affect positioning accuracy. Summary of the Invention

[0004] The present application provides a positioning method, apparatus, device, chip and storage medium, which can improve positioning accuracy.

[0005] The technical solution of this application is achieved as follows:

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

[0007] Determine M candidate positioning points;

[0008] Select N candidate positioning points from the M candidate positioning points with measured distances according to at least one scoring indicator;

[0009] Cluster N candidate positioning points based on the measured distance to determine the target positioning point, where M and N are positive integers.

[0010] In a second aspect, an embodiment of the present application provides a positioning device, which includes a first generation module, a scoring module, and a second generation module, wherein:

[0011] A first generation module is configured to determine M candidate positioning points;

[0012] a scoring module configured to select N candidate positioning points from the M candidate positioning points based on at least one scoring indicator;

[0013] The second generation module is configured to cluster N candidate positioning points to determine a target positioning point, where M and N are positive integers.

[0014] In a third aspect, an embodiment of the present application provides an electronic device comprising a processor and a memory, wherein the memory is used to store a computer program, and the processor is used to call and run the computer program stored in the memory to perform the positioning method described in the first aspect.

[0015] In a fourth aspect, the chip provided in the embodiments of the present application is used to implement the above-mentioned positioning method.

[0016] Specifically, the chip includes: a processor, which is used to call and run a computer program from a memory, so that a device equipped with the chip executes the above-mentioned positioning method.

[0017] In a fifth aspect, the computer-readable storage medium provided in an embodiment of the present application stores a computer program, which implements the above-mentioned positioning method when executed by at least one processor.

[0018] In a sixth aspect, the computer program product provided by the embodiments of the present application includes computer program instructions, which implement the above-mentioned positioning method when executed by at least one processor.

[0019] In a seventh aspect, an embodiment of the present application provides a computer program, which implements the above-mentioned positioning method when executed by at least one processor.

[0020] Embodiments of the present application provide a positioning method that can select N candidate positioning points from M candidate positioning points based on at least one scoring metric, and then determine a target positioning point by clustering these N candidate positioning points. Thus, when determining the target positioning point from the M candidate positioning points, N candidate positioning points with higher positioning accuracy can be first selected from the M candidate positioning points using at least one scoring metric, and then the target positioning point can be determined by clustering these N candidate positioning points. This method not only improves positioning accuracy but also reduces the computational complexity of the clustering algorithm. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] Figure 1 A schematic diagram of a positioning method provided in an embodiment of the present application Figure 1 .

[0022] Figure 2 A schematic diagram of a scenario for generating concentric circles provided in an embodiment of the present application.

[0023] Figure 3 A schematic diagram of a scenario for generating candidate positioning points provided in an embodiment of the present application.

[0024] Figure 4 A schematic diagram of performing FTM measurement provided in an embodiment of the present application.

[0025] Figure 5 A schematic diagram of a scenario for determining the position coordinates of a candidate positioning point provided in an embodiment of the present application.

[0026] Figure 6 A schematic diagram of a positioning method provided in an embodiment of the present application Figure 2 .

[0027] Figure 7 A schematic diagram of determining an RTT measurement error provided in an embodiment of the present application.

[0028] Figure 8 A schematic diagram of a scenario for performing FTM measurement provided in an embodiment of the present application.

[0029] Figure 9A A schematic diagram of a scenario in which three access points form a triangle provided in an embodiment of the present application Figure 1 .

[0030] Figure 9B A schematic diagram of a scenario in which three access points form a triangle provided in an embodiment of the present application Figure 2 .

[0031] Figure 10 A schematic diagram of a framework for determining a final positioning result provided in an embodiment of the present application.

[0032] Figure 11 A schematic diagram of the structure of a positioning device provided in an embodiment of the present application.

[0033] Figure 12 A schematic structural diagram of an electronic device provided in an embodiment of the present application.

[0034] Figure 13 A schematic structural diagram of a chip provided in an embodiment of the present application. DETAILED DESCRIPTION

[0035] In order to enable a more detailed understanding of the features and technical contents of the embodiments of the present application, the implementation of the embodiments of the present application is described in detail below with reference to the accompanying drawings. The attached drawings are for reference only and are not used to limit the embodiments of the present application.

[0036] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the art to which this application pertains. The terms used herein are for the purpose of describing the embodiments of this application only and are not intended to limit this application.

[0037] In the following description, reference is made to “some embodiments”, which describes a subset of all possible embodiments, but it will be understood that “some embodiments” may be the same subset or different subsets of all possible embodiments and may be combined with each other without conflict.

[0038] It should also be pointed out that the terms "first\second\third" involved in the embodiments of the present application are only used to distinguish similar objects and do not represent a specific ordering of the objects. It can be understood that "first\second\third" can be interchanged with a specific order or sequence where permitted, so that the embodiments of the present application described here can be implemented in an order other than that illustrated or described here.

[0039] The technical solutions of the embodiments of the present application can be applied to various communication systems, such as: Long Term Evolution (LTE) system, LTE Time Division Duplex (TDD), Universal Mobile Telecommunication System (UMTS), Internet of Things (IoT) system, Narrow Band Internet of Things (NB-IoT) system, enhanced Machine-Type Communications (eMTC) system, 5G communication system (also known as New Radio (NR) communication system), or future communication systems, etc.

[0040] Location-based services (LBS) are closely intertwined with people's daily lives, boasting a broad user base and a vast application market. Whether it's catering services, transportation navigation, emergency rescue, advertising push, or scene perception, all rely heavily on location information. LBS can be categorized into indoor and outdoor positioning, depending on the indoor and outdoor conditions.

[0041] In some embodiments, for outdoor positioning, satellite positioning represented by the Global Positioning System (GPS) has many advantages such as high positioning accuracy, good real-time performance, and low cost, and occupies an important position in outdoor positioning technology.

[0042] In other embodiments, for indoor positioning, satellite signals are often blocked by buildings, making satellite positioning less effective indoors. For example, when using satellites to locate locations such as tunnels, basements, and office buildings, satellite positioning may be unavailable or have poor positioning accuracy. Therefore, positioning technologies other than GPS are required for indoor positioning.

[0043] For example, indoor positioning can use positioning technologies such as Bluetooth, Ultra Wide Band (UWB), ZigBee, Radio Frequency Identification (RFID), and infrared. These positioning technologies can achieve decimeter-level positioning accuracy and good real-time performance, but require environmental modification, i.e., a certain density of signal sources and signal receivers must be arranged within the positioning environment, resulting in high hardware costs. On the other hand, indoor positioning can use positioning technologies such as Wi-Fi radio frequency fingerprinting and geomagnetism. These positioning technologies do not require additional hardware costs and have positioning accuracy within approximately 5 meters, but require manpower to regularly collect radio frequency fingerprint data in the environment to maintain data validity, resulting in high labor costs. Furthermore, indoor positioning can use Wi-Fi Round Trip Time (RTT) positioning technology through the Fine Timing Measurement (FTM) protocol. This is a ranging technology based on the IEEE 802.11mc protocol that allows mobile devices to measure the distance between the mobile device and a Wi-Fi router without accessing a Wi-Fi router, thereby locating the mobile device. Therefore, Wi-Fi RTT-based positioning technology only requires the presence of RTT-enabled Wi-Fi routers or other Wi-Fi-aware devices in the environment. It does not require environmental modification or manpower for data pre-collection, and is therefore low-cost. At the same time, the ranging accuracy of Wi-Fi RTT positioning technology reaches the meter level, which can also enable the positioning accuracy of Wi-Fi RTT positioning technology to reach the meter level or even sub-meter level.

[0044] Table 1 shows a comparison between Wi-Fi RTT positioning technology and other indoor positioning technologies in terms of positioning accuracy, hardware deployment cost, data collection cost, and positioning ubiquity.

[0045] It should be understood that the hardware deployment cost refers to the cost incurred by additionally deploying signal transmitting equipment or signal receiving equipment in the environment due to positioning requirements.

[0046] It should also be understood that the collection cost refers to the manpower cost required to collect data in a positioning environment in order to obtain or maintain the data required for positioning.

[0047] It should also be understood that positioning ubiquity refers to the ability of positioning technology to still provide stable positioning services in different locations when the positioning scene switches, such as switching from an office to a stairwell, or from a room to a corridor.

[0048] Table 1

[0049]

[0050] As shown in Table 1, computer vision is a positioning technology that has rapidly developed alongside the recent advancements in artificial intelligence. It uses cameras to capture real-time images and compare them with pre-collected photos in the database to determine the location of a mobile device. While positioning accuracy can reach up to 1 meter, the hardware deployment and data acquisition costs are high. Furthermore, positioning is difficult in similar scenarios, such as different floors on a staircase or in a hallway, resulting in poor ubiquity. Wi-Fi radio frequency fingerprinting and geomagnetic positioning technologies utilize existing Wi-Fi signals and geomagnetic fields in space as positioning features. By comparing the real-time signal features with pre-collected signals in a database, the mobile device's location is calculated. Furthermore, because indoor environments generally have Wi-Fi and the Earth's magnetic field is ubiquitous, hardware costs are low and positioning ubiquity is good. However, acquisition costs are high and the technology is significantly affected by the environment. Bluetooth, RFID, infrared, and UWB all require a certain density of specific signal transceivers to be deployed in the environment, resulting in higher hardware costs. Wi-Fi RTT positioning technology can locate based on existing Wi-Fi routers in the environment that support the FTM ranging protocol. This results in low hardware costs, good positioning ubiquity, and no need for additional data collection. It also offers meter-level positioning accuracy, making it a positioning technology with better overall performance.

[0051] It should be noted that Line of Sight (LOS) and Non-Line of Sight (NLOS) can be used to describe the signal propagation environment between a mobile device and a Wi-Fi router, thereby determining whether the mobile device and the Wi-Fi router are located in the same indoor space (unobstructed signal propagation environment) or in different indoor spaces (obstructed signal propagation environment). In other words, when the signal propagation environment between the mobile device and the Wi-Fi router is LOS, it indicates that the mobile device and the Wi-Fi router are located in the same indoor space; when the signal propagation environment between the mobile device and the Wi-Fi router is NLOS, it indicates that the mobile device and the Wi-Fi router are located in different indoor spaces.

[0052] In some embodiments, when using the Wi-Fi RTT positioning technology, it is necessary to ensure that the propagation paths between the mobile device and the Wi-Fi router are all LOS.

[0053] For example, the positioning accuracy of Wi-Fi RTT positioning technology in dynamic and static conditions is less than 0.6 meters and 0.4 meters, respectively. However, the test environment is an open indoor environment, that is, the signal propagation between the Wi-Fi router and the mobile device is unobstructed, the propagation path between the Wi-Fi router and the mobile device is LOS, and the Wi-Fi router and the mobile device are installed at the same height. Therefore, this method has high restrictions on application scenarios.

[0054] In another example, when using Wi-Fi RTT positioning technology, multiple candidate locations of a mobile device can be obtained through the weighted concentric circle generation algorithm and the three-lateration positioning algorithm. The final location of the mobile device can then be calculated through clustering. Verification shows that the positioning accuracy in dynamic and static conditions is 1.3 meters and 1.2 meters, respectively. However, the test environment is an open indoor environment, and the propagation path between the Wi-Fi router and the mobile device is LOS.

[0055] In the related art, on the one hand, when the multipath effect is not serious, the ranging accuracy of Wi-Fi RTT positioning technology can reach the meter level, but it is still affected by many factors such as bandwidth, sampling frequency or Wi-Fi signal obstruction, and the ranging accuracy of Wi-Fi RTT positioning technology will be reduced to varying degrees. On the other hand, the positioning technology based on Wi-Fi RTT makes the propagation path between the mobile device and the Wi-Fi router all LOS, which puts forward more stringent requirements on the positioning environment. However, in actual application scenarios, whether the propagation path between the mobile device and the Wi-Fi router is all LOS cannot be determined. That is to say, if the mobile device can search for the signals of multiple Wi-Fi routers, the propagation path between the mobile device and the Wi-Fi router will be partly LOS path and partly NLOS path. For example, since Wi-Fi routers are deployed at a certain density, in a 100-square-meter home, one or two Wi-Fi routers are usually deployed in the living room or bedroom. In the living room or bedroom where a Wi-Fi router is deployed, the propagation path between mobile devices and the Wi-Fi router is LOS. In other rooms without Wi-Fi routers, the propagation path between mobile devices and the Wi-Fi router may be NLOS.

[0056] Based on this, embodiments of the present application provide a positioning method that can select N candidate positioning points from M candidate positioning points based on at least one scoring metric, and then determine a target positioning point by clustering these N candidate positioning points. Thus, when determining the target positioning point from the M candidate positioning points, N candidate positioning points with higher positioning accuracy can be first selected from the M candidate positioning points using at least one scoring metric, and then the target positioning point can be determined by clustering these N candidate positioning points. This not only improves positioning accuracy but also reduces the computational complexity of the clustering algorithm.

[0057] It should be noted that the embodiment of the present application does not limit the propagation path between the candidate positioning point and the access point. It is applicable regardless of whether the propagation path between the candidate positioning point and the access point is LOS or NLOS, and can match a wider range of positioning scenarios.

[0058] To facilitate understanding of the technical solutions of the embodiments of the present application, the technical solutions of the present application are described in detail below through specific embodiments. The above related technologies can be combined arbitrarily with the technical solutions of the embodiments of the present application as optional solutions, and all of them fall within the scope of protection of the embodiments of the present application. The embodiments of the present application include at least part of the following contents.

[0059] It should be noted that in the embodiments of the present application, the candidate positioning point can be the candidate location of the mobile device, and the target positioning point can be the final location of the mobile device. The access point can be a Wi-Fi router or other device, which is not limited in the embodiments of the present application.

[0060] In one embodiment of the present application, see Figure 1 , which shows a flow chart of a positioning method provided by an embodiment of the present application. Figure 1 As shown, the method may include the following steps.

[0061] S110: Determine M candidate positioning points.

[0062] Wherein, M is a positive integer.

[0063] It should be noted that in the embodiments of the present application, the positioning method can be applied to a positioning device or an electronic device incorporating the positioning device. The electronic device can be implemented in various forms, for example, the electronic device can be a terminal device, a cloud server, or other device, and the embodiments of the present application do not specifically limit this.

[0064] It should also be noted that the terminal device may be any terminal device, for example, the terminal device may refer to an access terminal, user equipment (UE), a subscriber unit, a subscriber station, a mobile station, a mobile station, a remote station, a remote terminal, a mobile device, a user terminal, a terminal, a wireless communication device, a user agent, or a user apparatus. The access terminal may be a cellular phone, a cordless phone, a Session Initiation Protocol (SIP) phone, an IoT device, a satellite handheld terminal, a Wireless Local Loop (WLL) station, a Personal Digital Assistant (PDA), a handheld device with wireless communication capabilities, a computing device or other processing device connected to a wireless modem, an in-vehicle device, a wearable device, a terminal device in a 5G network, or a terminal device in a future evolution network, etc.

[0065] It should also be noted that the terminal device can be used for device-to-device (D2D) communication.

[0066] It should also be noted that the embodiment of the present application does not limit the propagation path between the candidate positioning point and the access point. That is, the propagation path between the candidate positioning point and the access point can be LOS or NLOS. Therefore, the positioning method provided in the embodiment of the present application can be applicable to multiple positioning scenarios.

[0067] In some embodiments, determining M candidate positioning points may include: determining L access points; and performing candidate positioning point generation processing according to the L access points to obtain M candidate positioning points.

[0068] Wherein, L is a positive integer greater than or equal to 3.

[0069] Furthermore, in some embodiments, performing candidate positioning point generation processing based on L access points to obtain M candidate positioning points may include: selecting three access points from the L access points; and performing candidate positioning point generation processing on the three access points using a preset algorithm to obtain a first candidate positioning point.

[0070] The first candidate positioning point is any one of the M candidate positioning points.

[0071] It should be noted that the preset algorithm may include a preset concentric circle algorithm and a preset positioning algorithm. Specifically, the preset concentric circle algorithm may be a weighted concentric circle generation algorithm, and the preset positioning algorithm may be a three-sided positioning algorithm.

[0072] It should also be noted that if the three access points selected from the L access points are different, the candidate positioning points obtained by performing the candidate positioning point generation process on the three access points using the preset algorithm will also be different. Therefore, assuming that the three access points are used as a group of access points, multiple candidate positioning points can be obtained by selecting multiple groups of access points and performing the candidate positioning point generation process on each of the multiple groups of access points using the preset algorithm.

[0073] In some specific embodiments, performing candidate positioning point generation processing on three access points using a preset algorithm to obtain a first candidate positioning point may include: processing the three access points separately using a preset concentric circle algorithm to determine k concentric circles for each of the three access points; selecting one concentric circle from the k concentric circles for each of the three access points to obtain three target concentric circles; and processing the three target concentric circles using the preset positioning algorithm to determine the first candidate positioning point.

[0074] Wherein, k is a positive integer representing the number of concentric circles. Generally, k is an integer between 3 and 10.

[0075] It should be noted that when k is 1, each of the three access points has one concentric circle, and there may be a situation where the concentric circles of two access points do not intersect. When each of the three access points has one concentric circle, and there is a situation where the concentric circles of two access points do not intersect, the positioning accuracy of the target positioning point determined by these three access points is low. Therefore, it is necessary to use a preset concentric circle algorithm to generate concentric circles for each of the three access points, so that each of the three access points has multiple concentric circles. When each of these multiple concentric circles is selected, multiple candidate positioning points can be determined due to the different concentric circles selected. Using these multiple candidate positioning points to determine the target positioning point can improve positioning accuracy.

[0076] For example, Figure 2 As shown, assume that there are two access points, and the radii of the concentric circles of the two access points are r1 and r2 respectively. The concentric circles of the two access points are two solid circles, and there is no intersection between the two solid circles. Considering that directly determining the target positioning point by using the two solid circles and the concentric circles corresponding to an access point other than the two access points will reduce the positioning accuracy, a preset concentric circle algorithm can be used to generate concentric circles for the two access points respectively. Taking the concentric circle with a radius of r2 as an example, it can be generated by ε=[ε1,ε2,…,ε i ,…,ε k ]( Figure 2 where k is equal to 4), generating a set of radius r 2,i =r2+ε i concentric circles, where ε iIt obeys the normal distribution and can be determined by prior knowledge. Then, multiple candidate positioning points are determined based on multiple concentric circles, and then the target positioning point can be determined by the multiple candidate positioning points, thereby improving the positioning accuracy.

[0077] For example, when three access points are selected from L access points and each of the three access points has k concentric circles, a concentric circle is selected from each of the k concentric circles and a candidate positioning point is obtained using a preset positioning algorithm. Based on this, the number of combinations can be used to calculate the total number of candidate positioning points. Such as Figure 3 As shown, assuming L=3, k=3, each of the three access points has three concentric circles. The three access points are respectively recorded as access point 1, access point 2 and access point 3. The radii of the three concentric circles corresponding to access point 1 are r 1,1 、r 1,2 、r 1,3 The radii of the three concentric circles corresponding to access point 2 are r 2,1 、r 2,2 、r 2,3 The radii of the three concentric circles corresponding to access point 3 are r 3,1 、r 3,2 、r 3,3 ,Through the three concentric circles of the three access points, 27 candidate positioning points can be obtained.

[0078] In some embodiments, processing the three target concentric circles using a preset positioning algorithm to determine the first candidate positioning point may include: determining the radius of each of the three target concentric circles and the position coordinates of each of the three access points; and performing a least squares calculation on the radius of each of the three target concentric circles and the position coordinates of each of the three access points to determine the first candidate positioning point.

[0079] In some embodiments, the radius of the concentric circle may be the distance between the access point corresponding to the concentric circle and the initial candidate positioning point determined by the access point. The distance may be determined by RTT measurement.

[0080] It should be noted that the FTM measurement results include the RTT measurement distance. The RTT measurement distance is calculated based on the 802.11mc FTM protocol using the RTT measurement time of the received signal between the access point and the initial candidate positioning point.

[0081] For example, Figure 4As shown, t1, t2, t3, and t4 are all nanosecond timestamps. First, the initial candidate positioning point 410 sends a first message to the access point 420, requesting whether FTM measurements can be performed. Second, after receiving the first message, the access point 420 sends a second message to the initial candidate positioning point 410, which can be a response message to the first message and indicates that FTM measurements can be performed. Then, at time t1, the access point 420 sends a third message to the initial candidate positioning point 410, which is used to perform FTM measurements. The initial candidate positioning point 410 receives the third message from the access point 420 at time t2. Finally, at time t3, the initial candidate positioning point 410 sends a fourth message to the access point 420, which is a response message to the third message and is used to perform FTM measurements. The access point 420 receives the fourth message from the initial candidate positioning point 410 at time t4. Based on this, the distance between access point 420 and initial candidate positioning point 410 can be calculated as: ((t4-t1)-(t3-t2))*c / 2, where c is the speed of light. The distance between access point 420 and initial candidate positioning point 410 is the radius of the concentric circle.

[0082] It should also be noted that a single FTM measurement can include eight RTT measurements, and the average of these eight RTT measurements is used as the final RTT measurement distance for that FTM measurement. Furthermore, the time required to complete a single FTM measurement is also in the nanosecond range.

[0083] For example, Figure 5 As shown, assume there are three access points, denoted as access point 1, access point 2, and access point 3. Through RTT measurement, it can be obtained that the radius of the concentric circle corresponding to access point 1 is r1, the radius of the concentric circle corresponding to access point 2 is r2, and the radius of the concentric circle corresponding to access point 3 is r3. The position coordinates of access point 1 are (x1, y1), the position coordinates of access point 2 are (x2, y2), and the position coordinates of access point 3 are (x3, y3). Assume that the position coordinates of the first candidate positioning point are X1 = (x, y) T , then the calculation formula of the position coordinates of the first candidate positioning point can be obtained by the least squares method to satisfy formula (1):

[0084]

[0085] Among them, the calculation formulas of A1 and b1 satisfy formula (2):

[0086]

[0087] It should be noted that, in some embodiments, the second candidate positioning point can also be obtained by performing candidate positioning point generation processing on more than three access points, and the second candidate positioning point is different from the first candidate positioning point. Assuming there are Q access points, where Q is an integer greater than 3, performing candidate positioning point generation processing on the Q access points to obtain the second candidate positioning point can specifically include: processing the Q access points using a preset concentric circle algorithm to determine k concentric circles for each of the Q access points; selecting one concentric circle from the k concentric circles for each of the Q access points to obtain Q target concentric circles; and processing the Q target concentric circles using a preset positioning algorithm to determine the second candidate positioning point. Processing the Q target concentric circles using the preset positioning algorithm to determine the second candidate positioning point can include: determining the radius of each of the Q target concentric circles and the position coordinates of each of the Q access points; and performing a least squares calculation on the radius of each of the Q target concentric circles and the position coordinates of each of the Q access points to determine the second candidate positioning point.

[0088] For example, assuming there are Q access points, respectively denoted as access point 1, access point 2, ..., access point Q, through RTT measurement, it can be obtained that the radius of the concentric circle corresponding to access point 1 is r1, the radius of the concentric circle corresponding to access point 2 is r2, ..., and the radius of the concentric circle corresponding to access point Q is r Q , and the location coordinates of access point 1 are (x1, y1), the location coordinates of access point 2 are (x2, y2), ..., the location coordinates of access point Q are (x Q ,y Q ). Assume that the position coordinates of the second candidate positioning point are X2=(x,y) T , then the calculation formula of the position coordinates of the second candidate positioning point can be obtained by the least squares method to satisfy formula (3):

[0089]

[0090] Among them, the calculation formulas of A2 and b2 satisfy formula (4):

[0091]

[0092] S120 : Select N candidate positioning points from the M candidate positioning points according to at least one scoring indicator.

[0093] For example, taking the first candidate positioning point as an example, after determining the three access points corresponding to the first candidate positioning point, the scoring indicator of the first candidate positioning point may be at least one of the following:

[0094] The radius of a concentric circle selected by each of the three access points, the LOS / NLOS classification results between the first candidate positioning point and each of the three access points, the shape of the triangle formed by the three access points, and the distance between the first candidate positioning point and the center of gravity of the triangle formed by the three access points.

[0095] In some embodiments, selecting N candidate positioning points from M candidate positioning points based on at least one scoring indicator may include: scoring the M candidate positioning points respectively according to the at least one scoring indicator to obtain target score results for each of the M candidate positioning points; and selecting N candidate positioning points whose target score results are greater than a first preset value based on the target score results for each of the M candidate positioning points.

[0096] The first preset value may be manually set or may be set according to a certain preset rule, which is not limited in the present embodiment.

[0097] Exemplarily, assuming that the first preset value is one of 10%-50%, for example, the first preset value is 10%, the target score results of the M candidate positioning points are sorted from high to low, and the candidate positioning points with target score results greater than 10% are selected, and the candidate positioning points with target score results greater than 10% are used as N candidate positioning points.

[0098] It should be noted that the M candidate positioning points are scored respectively according to at least one scoring indicator, and N candidate positioning points whose target score results are greater than a first preset value are selected from the target score results of the M candidate positioning points. This allows N candidate positioning points with higher positioning accuracy to be selected from the M candidate positioning points through scoring, while also reducing the computational complexity of the subsequent clustering algorithm.

[0099] S130 , clustering the N candidate positioning points to determine a target positioning point.

[0100] It should be noted that the clustering method used to cluster the N candidate positioning points may be density-based mean shift clustering or other clustering methods, which is not limited in the embodiment of the present application.

[0101] In some embodiments, clustering the N candidate positioning points to determine the target positioning point may include: clustering the N candidate positioning points to determine at least one cluster; selecting a cluster with the largest number of candidate positioning points from the at least one cluster, and using the selected cluster as the target cluster; and determining, in the target cluster, a candidate positioning point located at the center as the target positioning point.

[0102] For example, assuming that N is equal to 20, three clusters can be determined after clustering the 20 candidate positioning points. The three clusters are respectively recorded as cluster 1, cluster 2, and cluster 3. Assuming that cluster 1 includes 10 candidate positioning points, cluster 2 includes 4 candidate positioning points, and cluster 3 includes 6 candidate positioning points, then the cluster with the largest number of candidate positioning points is cluster 1. At this time, cluster 1 is the target cluster, and the candidate positioning point located at the center of cluster 1 is the target positioning point.

[0103] The present invention provides a positioning method that, when determining a target positioning point from M candidate positioning points, first uses at least one scoring metric to select N candidate positioning points with higher positioning accuracy from the M candidate positioning points, and then clusters these N candidate positioning points to determine the target positioning point. This method not only improves positioning accuracy but also reduces the computational complexity of the clustering algorithm.

[0104] In addition, the embodiments of the present application do not limit the propagation path between the candidate positioning point and the access point. They are applicable regardless of whether the propagation path between the candidate positioning point and the access point is LOS or NLOS, and can match a wider range of positioning scenarios.

[0105] In another embodiment of the present application, based on the positioning method described in the above embodiment, the embodiment of the present application can score the M candidate positioning points respectively according to at least one scoring index to obtain the target score results of the M candidate positioning points. Figure 6 As shown, the method may include the following steps:

[0106] S610 , scoring the first candidate positioning points according to at least one scoring indicator to obtain at least one of a first scoring result, a second scoring result, a third scoring result, and a fourth scoring result of the first candidate positioning points.

[0107] S620: Determine a target score result for the first candidate positioning point according to at least one of the first score result, the second score result, the third score result, and the fourth score result.

[0108] In some embodiments, determining the target score result of the first candidate positioning point based on at least one of the first score result, the second score result, the third score result, and the fourth score result may include: determining a first weight, a second weight, a third weight, and a fourth weight; determining the first target score result based on the first weight and the first score result; determining the second target score result based on the second weight and the second score result; determining the third target score result based on the third weight and the third score result; determining the fourth target score result based on the fourth weight and the fourth score result; determining the target score result of the first candidate positioning point based on at least one of the first target score result, the second target score result, the third target score result, and the fourth target score result.

[0109] For example, assuming that the first weight is α, the second weight is β, the third weight is γ, the fourth weight is δ, and the first score result is S RTT , the second score result is S LOS / NLOS , the third score result is S triangle , the fourth score result is S close , then the first target score result can be The second target score result can be The third goal score result can be The fourth goal score result can be Specifically, α=10~30, β=3~10, γ=100~200, and δ=1000~5000.

[0110] Further, in some embodiments, determining the target score result of the first candidate positioning point based on at least one of the first target score result, the second target score result, the third target score result, and the fourth target score result may include: when at least one item includes four items, performing cumulative calculation based on the first target score result, the second target score result, the third target score result, and the fourth target score result to obtain the target score result of the first candidate positioning point.

[0111] Exemplarily, the calculation formula of the target score result S of the first candidate positioning point satisfies formula (5):

[0112]

[0113] It should be noted that, in some embodiments, scoring the first candidate positioning point according to at least one scoring indicator to obtain at least one of a first score result, a second score result, a third score result, and a fourth score result for the first candidate positioning point may include: determining three access points corresponding to the first candidate positioning point; scoring the first candidate positioning point according to the radius of a concentric circle selected by each of the three access points to obtain a first score result for the first candidate positioning point; and / or scoring the first candidate positioning point according to LOS / NLOS classification results between the first candidate positioning point and each of the three access points to obtain a second score result for the first candidate positioning point; and / or scoring the first candidate positioning point according to a triangle shape formed by the three access points to obtain a third score result for the first candidate positioning point; and / or scoring the first candidate positioning point according to a distance between the first candidate positioning point and the centroid of the triangle formed by the three access points to obtain a fourth score result for the first candidate positioning point.

[0114] In some embodiments, scoring the first candidate positioning point based on the radius of a concentric circle selected by each of the three access points to obtain a first score result for the first candidate positioning point may include: determining the RTT measurement distance of each of the three access points based on the radius of a concentric circle selected by each of the three access points; determining the RTT measurement error of each of the three access points based on the RTT measurement distance of each of the three access points and the correspondence between a preset RTT measurement distance and the RTT measurement error; and accumulating the RTT measurement errors of each of the three access points to obtain the first score result for the first candidate positioning point.

[0115] It should be noted that the radius of a concentric circle selected by each of the three access points is the RTT measurement distance of each of the three access points. The RTT measurement distance of each of the three access points can be calculated by the RTT measurement time of the received signal between each access point and its corresponding initial candidate positioning point. For details, please refer to the aforementioned Figure 4 The method in will not be described in detail here.

[0116] It should also be noted that the corresponding relationship between the preset RTT measurement distance and the RTT measurement error can be obtained by performing RTT measurements multiple times.

[0117] For example, Figure 7 As shown, the horizontal axes of the solid broken line and the dashed curve represent the RTT measurement distance, the vertical axes of the solid broken line and the dashed curve represent the RTT measurement error, and the units of the RTT measurement distance and the RTT measurement error are both meters.

[0118] The solid line represents the average value of the absolute error obtained by multiple RTT measurements at the corresponding RTT measurement distance, that is, the RTT measurement error; the dashed curve is the solid line obtained by polynomial fitting, and the dashed curve can represent the corresponding relationship between the preset RTT measurement distance and the RTT measurement error. The values ​​on the horizontal axis of the solid line are all integers ( Figure 7 (integer in the range of 0-14), is the actual RTT measurement distance rounded off. Figure 7 The calculation formula for (where 0 is a number in the range of 0-8) satisfies formula (6):

[0119]

[0120] Among them, d i =i is the value on the horizontal axis of the solid line, i=1,2,…,k, Figure 7 K in the middle to take 14; Truth i,j Indicates that the RTT measurement distance is rounded to d i The actual RTT measurement distance at time t represents the RTT measurement distance rounded to d i The actual number of RTT measurements at the time.

[0121] For example, Figure 7 As shown, according to the RTT measurement distances of the three access points, the horizontal coordinates corresponding to the RTT measurement distances of the three access points on the dotted curve can be determined, and then the RTT measurement errors of the three access points can be found on the dotted curve through the horizontal coordinates corresponding to the RTT measurement distances of the three access points on the dotted curve.

[0122] In some embodiments, scoring the first candidate positioning point based on the LOS / NLOS classification results between the first candidate positioning point and each of the three access points to obtain a second score result for the first candidate positioning point may include: determining three initial second score results based on the LOS / NLOS classification results between the first candidate positioning point and each of the three access points; and accumulating the three initial second score results to obtain the second score result for the first candidate positioning point.

[0123] In some specific embodiments, if the LOS / NLOS classification result between the first candidate positioning point and the first access point is LOS, the initial second score result between the first candidate positioning point and the first access point is determined to be 0.5; or, if the LOS / NLOS classification result between the first candidate positioning point and the first access point is NLOS, the initial second score result between the first candidate positioning point and the first access point is determined to be 1; wherein the first access point is any one of the three access points.

[0124] In some embodiments, the method further includes: determining P first parameter values ​​based on P FTM measurement results between the first candidate positioning point and the first access point; calculating feature values ​​of the P first parameter values; and inputting the feature values ​​of the P first parameter values ​​into a pre-trained classifier to determine a LOS / NLOS classification result between the first candidate positioning point and the first access point.

[0125] Wherein, P is a positive integer.

[0126] The first parameter value may include an RTT measurement distance and a received signal strength indicator (RSSI) value.

[0127] It should be noted that determining P first parameter values ​​based on P FTM measurement results between the first candidate positioning point and the first access point may include: determining P RTT measurement distances and P RSSI values ​​based on the P FTM measurement results between the first candidate positioning point and the first access point.

[0128] For example, the RTT measurement distance and RSSI value between the candidate positioning point and the access point can be determined by the 802.11mc FTM protocol. Figure 8 As shown, assuming that there are four access points (810-840) in an indoor environment, the candidate positioning point 850 can obtain the RTT measurement distance and RSSI value between itself and each access point (810-840) through the FTM protocol without having to access the network where the corresponding access point is located.

[0129] For example, as shown in Table 2, there are g access points, denoted as access point 1, access point 2, ..., and access point g. The timestamp may be the time at which an FTM measurement result is obtained. Taking access point 1 as an example, rssi_11, rssi_12, ..., rssi_1f, and rtt_11, rtt_12, ..., rtt_1f may be determined based on at least one FTM measurement result between access point 1 and a candidate positioning point, or may be determined based on at least one FTM measurement result between access point 1 and each of multiple candidate positioning points. t_11 may be the time at which rssi_11 and rtt_11 are obtained. Access points 2, ..., and access point g are similar to access point 1 and are not further described here.

[0130] Table 2

[0131]

[0132]

[0133] Exemplarily, as shown in Table 2, the first access point may be one of access point 1, access point 2, ..., and access point g. For example, taking access point 1 as the first access point, the P RTT measurement distances between the first candidate positioning point and access point 1 may be part of rtt_11, rtt_12, ..., and rtt_1f, or may be all of rtt_11, rtt_12, ..., and rtt_1f; the P RSSI values ​​between the first candidate positioning point and access point 1 may be part of rssi_11, rssi_12, ..., and rssi_1f, or may be all of rssi_11, rssi_12, ..., and rssi_1f.

[0134] It should be noted that, when calculating the characteristic values ​​of the P first parameter values, the P RTT measurement distances may be used as one group of data, and the P RSSI values ​​may be used as another group of data, and the characteristic values ​​of each group of data may be calculated separately.

[0135] In some embodiments, the characteristic value may include at least one of a mean value, a quartile value, a data range, a kurtosis, a skewness, and a number of outliers.

[0136] For example, it is assumed that the P first parameter values ​​are respectively recorded as z1, z2, ..., z P , then the calculation formula for the average value μ of P first parameter values ​​satisfies formula (7):

[0137]

[0138] The calculation formula of the interquartile range (IQR) of P first parameter values ​​satisfies formula (8):

[0139] IQR=R3-R1 (8)

[0140] Here, R3 represents the 75th percentile value of the P first parameter values ​​after the values ​​are arranged from small to large, and R1 represents the 25th percentile value of the P first parameter values ​​after the values ​​are arranged from small to large.

[0141] The calculation formula of the data range A of P first parameter values ​​satisfies formula (9):

[0142]

[0143] The calculation formula of the kurtosis of P first parameter values ​​satisfies formula (10):

[0144]

[0145] Here, σ represents the standard deviation of the P first parameter values.

[0146] The calculation formula of the skewness Skewnes of P first parameter values ​​satisfies formula (11):

[0147]

[0148] The number of abnormal values ​​of the P first parameter values ​​is the number of values ​​greater than Q3 or less than Q1 among the P first parameter values.

[0149] It should be noted that the characteristic values ​​of the P first parameter values ​​are input into the pre-trained classifier, that is, the characteristic values ​​of the P RTT measurement distances are input into the pre-trained classifier, and the characteristic values ​​of the P RSSI values ​​are input into the pre-trained classifier.

[0150] It should also be noted that the classifier may be a LOS / NLOS classifier. The pre-trained classifier may be obtained by training a large number of LOS / NLOS classification results between candidate positioning points and access points.

[0151] It should also be noted that, based on prior knowledge, different degrees of error correction can be performed on the RTT measurement distance identified as LOS or NLOS.

[0152] In some embodiments, scoring the first candidate positioning point based on the triangular shape formed by the three access points to obtain a third score result for the first candidate positioning point may include: determining three interior angles of the triangle formed by the three access points; and determining the third score result for the first candidate positioning point based on the maximum value of the difference between each of the three interior angles and a preset degree.

[0153] It should be noted that in the three-side positioning algorithm, the triangle shape formed by the three access points has a greater impact on the positioning accuracy. The closer the triangle formed by the three access points is to an equilateral triangle, the higher the positioning accuracy. Figure 9A and Figure 9B As shown, Figure 9A The triangle formed by the three access points is an obtuse triangle. Figure 9B The triangle formed by the three access points is close to an equilateral triangle, so Figure 9B The positioning accuracy of the candidate positioning points determined by the three access points is higher than that of the Figure 9A The positioning accuracy of the candidate positioning points determined by the three access points.

[0154] For example, assuming that the three internal angles of the triangle formed by the three access points are A, B, and C respectively, and assuming that the preset angle is 60 degrees, the third score result S of the first candidate positioning point is triangle The calculation formula satisfies formula (12):

[0155] S triangle=max{A-60°,B-60°,C-60°} (12)

[0156] In some embodiments, scoring the first candidate positioning point based on the distance between the first candidate positioning point and the centroid of the triangle formed by the three access points to obtain a fourth score result for the first candidate positioning point may include: determining the position coordinates of the first candidate positioning point and the position coordinates of the centroid of the triangle formed by the three access points; determining the distance between the first candidate positioning point and the centroid of the triangle formed by the three access points based on the position coordinates of the first candidate positioning point and the position coordinates of the centroid of the triangle formed by the three access points; and determining the fourth score result for the first candidate positioning point based on the distance between the first candidate positioning point and the centroid of the triangle formed by the three access points.

[0157] It should be noted that, the closer the distance between the first candidate positioning point and the centroid of the triangle formed by the three access points, the higher the accuracy of the first candidate positioning point determined by the three access points.

[0158] Furthermore, in some embodiments, the distance between the first candidate positioning point and the centroid of the triangle formed by the three access points is the fourth score result of the first candidate positioning point.

[0159] For example, it is assumed that the coordinates of the center of gravity of the triangle formed by the three access points are (x c ,y c ), the position coordinates of the first candidate positioning point are (x, y), then the fourth score result S of the first candidate positioning point is close The calculation formula satisfies formula (13):

[0160]

[0161] The present invention provides a positioning method that scores M candidate positioning points based on at least one scoring metric, obtaining target scores for each of the M candidate positioning points. This method then selects N candidate positioning points with higher positioning accuracy based on the target scores for each of the M candidate positioning points, and determines the target positioning point by clustering these N candidate positioning points. This method not only improves positioning accuracy but also reduces the computational complexity of the clustering algorithm.

[0162] In another embodiment of the present application, based on the positioning method of the above embodiment, the technical solution provided by the embodiment of the present application can be divided into five modules: data acquisition module 1010, LOS / NLOS classification module 1020, candidate positioning point generation module 1030, scoring module 1040 and final positioning result generation module 1050. The following will describe the detailed steps of the five modules respectively. The relationship between the modules is as follows: Figure 10shown.

[0163] (1) Data acquisition module 1010.

[0164] According to the 802.11mc FTM protocol, the distance between the signal sender and receiver is calculated by measuring the RTT time it takes to receive the signal between the two parties. The principle is as follows: Figure 4 shown. Figure 4 Where t1, t2, t3, and t4 are nanosecond timestamps. An FTM measurement is usually performed eight times. Figure 4 The RTT measurement shown is performed, and the average of these measurements is taken as the final measured distance. The time required to complete an FTM measurement is also in the nanosecond level.

[0165] The data collection module 1010 may include obtaining FTM measurement results collected by the mobile device. By obtaining the FTM measurement results collected by the mobile device through the 802.11mcFTM protocol, the distance between the router (equivalent to the access point in the aforementioned embodiment) and the mobile device (such as a mobile phone, which is equivalent to the candidate positioning point in the aforementioned embodiment, which may be the candidate position of the mobile device, and the target positioning point may be the final position of the mobile device) can be obtained. Figure 8 As shown in Figure 2, in an indoor environment with multiple routers, a mobile device can use the FTM protocol to obtain the distance between itself and each router without having to connect to the corresponding router's network. The final collected RTT measurement distance is the result of multiple FTM measurements between a mobile device and multiple routers over a period of time (typically 1-3 seconds). Table 2 shows the data structure of g routers, each corresponding to f measurement results.

[0166] (2) LOS / NLOS classification module 1020.

[0167] The LOS / NLOS classification module 1020 may include feature value generation and LOS / NLOS classification. The input for feature value generation is the multiple FTM measurement results of g routers collected by the data collection module 1010. The RSSI values ​​measured by the FTM of the same router are taken as a group, and the RTT distance measured by the FTM of the same router is also taken as a group. The mean value, quartile value, data range, kurtosis, skewness and number of outliers of each group of data (the P first parameter values ​​in the aforementioned embodiment) are calculated as feature values. Each group of data is denoted as z1, z2, ..., z P , R3 represents the 75th percentile value of each data set after the values ​​are arranged from small to large, R1 represents the 25th percentile value of each data set after the values ​​are arranged from small to large, and σ represents the standard deviation of the data set. The specific method for calculating the eigenvalue can be referred to the description in the previous embodiment and will not be repeated here.

[0168] By inputting the extracted feature values ​​into a pre-trained LOS / NLOS classifier, it can determine whether the wireless propagation environment between the mobile device and each router was LOS or NLOS when the data was collected. Based on prior knowledge, different error corrections are applied to RTT measurements identified as LOS or NLOS, respectively.

[0169] (3) Candidate positioning point generation module 1030.

[0170] The candidate positioning point generation module 1030 may include concentric circle generation and least squares trilateration. Figure 5 The principle of three-sided positioning is shown. The mobile device is located at the intersection of three circles. (x i ,y i ), i=1, 2, 3 represent three routers with known locations. By measuring the RTT between the three routers and the mobile device, the radii of the three circles can be obtained, and the specific coordinates of the mobile device can be calculated by the least squares method.

[0171] Assume that the location coordinates of the mobile device are X1=(x,y) T The mobile device receives the RTT measurement distances of multiple nearby routers, which are r1, r2, ..., r L , L represents the number of routers, then the calculation formula for the location coordinates of the mobile device can refer to the aforementioned formulas (1) to (4), which will not be repeated here.

[0172] Due to the certain error in RTT measurement, and after the error correction by the LOS / NLOS module, there will be no intersection between the two circles. Figure 2 As shown, the solid circle represents the corrected RTT measurement distance, and the two solid circles do not intersect. Therefore, when the concentric circles are generated, the single RTT measurement distance r for the same router j , by ε=[ε1,ε2,…,ε i ,…,ε k ], generate a set of radius r j,i =r j +ε i concentric circles, where k represents the number of concentric circles, which is generally an integer between 3 and 10, and ε i It obeys the normal distribution and can be determined through prior knowledge.

[0173] Through the candidate positioning point generation module 1030, when the number of routers L≥3, 3 routers are selected from them. The k RTT measurement distances of each router can generate k concentric circles. One circle is selected from them and a candidate positioning point can be calculated by the least squares three-edge positioning. Therefore, it can be calculated from the number of combinations that a total of candidate positioning points, such as Figure 3 As shown in FIG, when L=3 and k=3, 27 candidate positioning points will be generated.

[0174] (4) Scoring module 1040.

[0175] Scoring module 1040 may score candidate positioning points and select the candidate positioning points with higher scores to enter final positioning result generation module 1050. Scoring indicators may include: RTT measurement distance (equivalent to the radius of a concentric circle selected by each of the three access points in the aforementioned embodiment), LOS / NLOS classification result, the triangle shape formed by the three router positions in trilateral positioning, and the distance between the candidate positioning point and the center of gravity of the triangle.

[0176] (a) RTT measurement distance.

[0177] like Figure 7 As shown, the horizontal axis represents the RTT measurement distance d measured from the router to the mobile device i =i, i=1,2,…,k, the RTT measurement distance is the actual RTT measurement distance rounded to the nearest integer. The solid broken line represents the average value of the absolute error obtained by performing multiple RTT measurements at the corresponding measurement distance, that is, the RTT measurement error. The calculation formula of the RTT measurement error can refer to the aforementioned formula (6). The dotted curve can be obtained by polynomial fitting. In the scoring module 1040, the corresponding fitting error is found on the dotted curve through the RTT measurement distance of the current router, and the sum of the fitting errors corresponding to the RTT measurement values ​​of the three routers selected as the candidate positioning point is calculated as the score S of the current measurement corresponding to the item. RTT .

[0178] (b) LOS / NLOS classification results.

[0179] The LOS / NLOS classification result can be determined based on the classification result of the LOS / NLOS classification module 1020. The specific determination method is: when the LOS / NLOS classification result is LOS, the LOS / NLOS classification result score of the selected router is 0.5; when the LOS / NLOS classification result is NLOS, the LOS / NLOS classification result score of the selected router is 1. The sum of the LOS / NLOS classification result scores of the three routers selected when calculating the candidate is the score S LOS / NLOS .

[0180] (c) The triangle shape formed by the three router locations.

[0181] As shown in Figure 9, in the three-sided positioning algorithm, the triangle shape formed by the three routers has a great influence on the positioning accuracy. The closer the triangle is to an equilateral triangle, the higher the positioning accuracy. The calculation formula for this indicator score can refer to the aforementioned formula (12).

[0182] (d) The distance between the candidate positioning point and the triangle centroid.

[0183] As shown in Figure 9, the closer the calculated candidate positioning point is to the triangle centroid, the higher the positioning accuracy. Therefore, the calculated triangle centroid (x c ,y c The distance (in centimeters) between the candidate positioning point (x, y) can be used as the score of this indicator. The distance between the candidate positioning point and the triangle centroid can be calculated by referring to the aforementioned formula (13).

[0184] The final score of the candidate positioning point can refer to the aforementioned formula (5).

[0185] (5) Final positioning result generation module 1050.

[0186] Scoring module 1040 scores each candidate positioning point, and the top 10%-50% of points are selected from the highest to the lowest scores to enter the final positioning result generation module 1050. In this module, density-based mean shift clustering is used to select the center of the cluster with the largest number of candidate positioning points as the final positioning result.

[0187] The embodiment of the present application provides a high-precision positioning method for home scenarios based on Wi-Fi RTT, which can achieve high positioning accuracy and adaptation to complex scenarios through the front-end and back-end fusion of sensors, and can also lay the foundation for subsequent related applications of indoor signal maps and home scenario perception.

[0188] In the embodiment of the present application, a concentric circle generation algorithm is first used to overcome the situation where the two circles do not intersect due to ranging errors and ranging corrections, and multiple candidate positioning points are generated at the same time. Then, the candidate positioning points are scored and the candidate positioning points with higher scores are selected to calculate the positioning result. There are two differences from traditional positioning methods: First, the positioning method in the embodiment of the present application can select candidate positioning points with higher positioning accuracy through scoring, while also reducing the computational complexity of the subsequent clustering algorithm; second, the positioning method in the embodiment of the present application does not restrict the placement of routers and is applicable regardless of whether the signal propagation environment of the router and the mobile device is LOS or NLOS.

[0189] It should be noted that the embodiments of the present application can score multiple candidate positioning points by comprehensively considering multiple major factors affecting positioning accuracy, and select candidate positioning points with higher positioning accuracy to calculate the final positioning result, which can greatly improve positioning accuracy. Even when the RTT measurement error is large, a good positioning effect can be obtained, and the positioning accuracy can reach the meter level or even the sub-meter level. The embodiments of the present application also take into account the LOS / NLOS situation, and there is no restriction on the placement of the router. It does not require the router and mobile device to be in a LOS environment, and therefore the applicable positioning scenarios are more extensive.

[0190] It should also be noted that the embodiments of this application utilize a trilateration algorithm. It is understood that, through appropriate conversion and modification, any positioning method based on the trilateration algorithm can be applied to the positioning method of the embodiments of this application. For example, a trilateration method based on RSSI values ​​can map RSSI values ​​to distances, where the distances are equivalent to the RTT measurement distances in the embodiments of this application.

[0191] The preferred embodiments of the present application are described in detail above in conjunction with the accompanying drawings. However, the present application is not limited to the specific details in the above embodiments. Within the technical concept of the present application, the technical solution of the present application can be subjected to a variety of simple modifications, and these simple modifications all fall within the scope of protection of the present application. For example, the various specific technical features described in the above specific embodiments can be combined in any suitable manner without contradiction. In order to avoid unnecessary repetition, the present application will no longer describe the various possible combinations separately. For another example, the various different embodiments of the present application can also be arbitrarily combined, as long as they do not violate the idea of ​​the present application, they should also be regarded as the contents disclosed in the present application. For another example, under the premise of no conflict, the various embodiments and / or the technical features in each embodiment described in the present application can be arbitrarily combined with the prior art, and the technical solution obtained after the combination should also fall within the scope of protection of the present application.

[0192] It should also be understood that in the various method embodiments of the present application, the size of the serial numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.

[0193] In another embodiment of the present application, based on the same inventive concept as the above embodiment, see Figure 11 , which shows a schematic diagram of the structure of the positioning device provided in an embodiment of the present application, such as Figure 11 As shown, the positioning device 1100 may include a first generation module 1110 (equivalent to the aforementioned candidate positioning point generation module 1030), a scoring module 1120 and a second generation module 1130 (equivalent to the aforementioned final positioning result generation module 1050), wherein:

[0194] A first generating module 1110 is configured to determine M candidate positioning points;

[0195] The scoring module 1120 is configured to select N candidate positioning points from the M candidate positioning points based on at least one scoring indicator;

[0196] The second generation module 1130 is configured to cluster N candidate positioning points to determine a target positioning point, where M and N are positive integers.

[0197] In some embodiments, the scoring module 1120 is further configured to score the M candidate positioning points respectively according to at least one scoring indicator to obtain target score results for each of the M candidate positioning points; based on the target score results for each of the M candidate positioning points, select N candidate positioning points whose target score results are greater than a first preset value.

[0198] In some embodiments, the first generating module 1110 is further configured to determine L access points, where L is a positive integer greater than or equal to 3; and perform candidate positioning point generation processing based on the L access points to obtain M candidate positioning points.

[0199] In some embodiments, the first generation module 1110 is further configured to select three access points from the L access points; perform candidate positioning point generation processing on the three access points using a preset algorithm to obtain a first candidate positioning point; wherein the first candidate positioning point is any one of the M candidate positioning points.

[0200] In some embodiments, the first generation module 1110 is further configured to use a preset concentric circle algorithm to process the three access points separately to determine k concentric circles for each of the three access points, where k is a positive integer; select one concentric circle from each of the k concentric circles for each of the three access points to obtain three target concentric circles; and use a preset positioning algorithm to process the three target concentric circles to determine a first candidate positioning point.

[0201] In some embodiments, the first generation module 1110 is further configured to determine the radius of each of the three target concentric circles and the position coordinates of each of the three access points; perform least squares calculation on the radius of each of the three target concentric circles and the position coordinates of each of the three access points to determine the first candidate positioning point.

[0202] In some embodiments, the scoring module 1120 is further configured to determine three access points corresponding to a first candidate positioning point, where the first candidate positioning point is any one of the M candidate positioning points; score the first candidate positioning point based on the radius of a concentric circle selected by each of the three access points to obtain a first score for the first candidate positioning point; and / or score the first candidate positioning point based on a line-of-sight (LOS) / non-line-of-sight (NLOS) classification result between the first candidate positioning point and each of the three access points to obtain a second score for the first candidate positioning point; and / or score the first candidate positioning point based on a triangle shape formed by the three access points to obtain a third score for the first candidate positioning point; and / or score the first candidate positioning point based on a distance between the first candidate positioning point and the centroid of the triangle formed by the three access points to obtain a fourth score for the first candidate positioning point; and determine a target score for the first candidate positioning point based on at least one of the first score, the second score, the third score, and the fourth score.

[0203] In some embodiments, the scoring module 1120 is further configured to determine the round-trip time (RTT) measurement distance of each of the three access points based on the radius of a concentric circle selected by each of the three access points; determine the RTT measurement error of each of the three access points based on the RTT measurement distance of each of the three access points and the correspondence between a preset RTT measurement distance and the RTT measurement error; and accumulate the RTT measurement errors of each of the three access points to obtain a first score result for the first candidate positioning point.

[0204] In some embodiments, the scoring module 1120 is further configured to determine three initial second score results based on the LOS / NLOS classification results between the first candidate positioning point and each of the three access points; and cumulatively calculate the three initial second score results to obtain a second score result for the first candidate positioning point.

[0205] In some embodiments, the scoring module 1120 is further configured to determine an initial second score result between the first candidate positioning point and the first access point as 0.5 if the LOS / NLOS classification result between the first candidate positioning point and the first access point is LOS; or to determine an initial second score result between the first candidate positioning point and the first access point as 1 if the LOS / NLOS classification result between the first candidate positioning point and the first access point is NLOS; wherein the first access point is any one of the three access points.

[0206] In some embodiments, see Figure 11 The positioning device 1100 may further include a data acquisition module 1140 and a classification module 1150 (equivalent to the aforementioned LOS / NLOS classification module 1020), wherein:

[0207] The data collection module 1140 is configured to collect P reference time measurement protocol measurement results between the first candidate positioning point and the first access point;

[0208] The classification module 1150 is configured to determine P first parameter values ​​based on P reference time measurement protocol measurement results between the first candidate positioning point and the first access point, where P is a positive integer; calculate characteristic values ​​of the P first parameter values; and input the characteristic values ​​of the P first parameter values ​​into a pre-trained classifier to determine a LOS / NLOS classification result between the first candidate positioning point and the first access point.

[0209] In some embodiments, the scoring module 1120 is further configured to determine three interior angles of a triangle formed by the three access points; and determine a third score result of the first candidate positioning point according to the maximum value of the difference between each of the three interior angles and a preset degree.

[0210] In some embodiments, the scoring module 1120 is further configured to determine the position coordinates of the first candidate positioning point and the position coordinates of the center of gravity of the triangle formed by the three access points; determine the distance between the first candidate positioning point and the center of gravity of the triangle formed by the three access points based on the position coordinates of the first candidate positioning point and the position coordinates of the center of gravity of the triangle formed by the three access points; and determine a fourth score result for the first candidate positioning point based on the distance between the first candidate positioning point and the center of gravity of the triangle formed by the three access points.

[0211] In some embodiments, the scoring module 1120 is further configured to determine a first weight, a second weight, a third weight, and a fourth weight; determine a first target score result based on the first weight and the first score result; determine a second target score result based on the second weight and the second score result; determine a third target score result based on the third weight and the third score result; determine a fourth target score result based on the fourth weight and the fourth score result; and determine a target score result for the first candidate positioning point based on at least one of the first target score result, the second target score result, the third target score result, and the fourth target score result.

[0212] In some embodiments, the scoring module 1120 is further configured to perform cumulative calculation based on the first target score result, the second target score result, the third target score result and the fourth target score result when at least one item includes four items to obtain the target score result of the first candidate positioning point.

[0213] In some embodiments, the second generation module 1130 is further configured to cluster the N candidate positioning points to determine at least one cluster; select a cluster with the largest number of candidate positioning points from the at least one cluster, and use the selected cluster as the target cluster; and determine the candidate positioning point located at the center of the target cluster as the target positioning point.

[0214] The present invention provides a positioning device that, when determining a target positioning point from M candidate positioning points, can first use at least one scoring indicator to select N candidate positioning points with higher positioning accuracy from the M candidate positioning points, and then determine the target positioning point by clustering these N candidate positioning points. This not only improves positioning accuracy but also reduces the computational complexity of the clustering algorithm.

[0215] Those skilled in the art should understand that the relevant description of the above-mentioned positioning device in the embodiment of the present application can be understood with reference to the relevant description of the positioning method in the embodiment of the present application.

[0216] In yet another embodiment of the present application, Figure 12 1 is a schematic structural diagram of an electronic device 1200 provided in an embodiment of the present application. The electronic device 1200 may be a terminal device, a cloud-side server, or other devices. Figure 12 The electronic device 1200 shown includes a processor 1210, which can call and run a computer program from a memory to implement the method in the embodiment of the present application.

[0217] In some embodiments, as Figure 12 As shown, the electronic device 1200 may further include a memory 1220. The processor 1210 may call and run a computer program from the memory 1220 to implement the method in the embodiment of the present application.

[0218] The memory 1220 may be a separate device independent of the processor 1210 , or may be integrated into the processor 1210 .

[0219] In some embodiments, as Figure 12 As shown, the electronic device 1200 may further include a transceiver 1230 , and the processor 1210 may control the transceiver 1230 to communicate with other devices. Specifically, the transceiver 1230 may send information or data to other devices, or receive information or data sent by other devices.

[0220] The transceiver 1230 may include a transmitter and a receiver. The transceiver 1230 may further include an antenna, and the number of antennas may be one or more.

[0221] In some embodiments, the present application also provides another electronic device composition, wherein the electronic device may include the positioning device 1100 described in any one of the aforementioned embodiments.

[0222] In yet another embodiment of the present application, Figure 13 This is a schematic structural diagram of a chip provided in an embodiment of the present application. Figure 13 The chip 1300 shown includes a processor 1310, which can call and run a computer program from a memory to implement the method in the embodiment of the present application.

[0223] In some embodiments, as Figure 13 As shown, the chip 1300 may further include a memory 1320. The processor 1310 may call and execute a computer program from the memory 1320 to implement the method in the embodiment of the present application.

[0224] The memory 1320 may be a separate device independent of the processor 1310 , or may be integrated into the processor 1310 .

[0225] In some embodiments, the chip 1300 may further include an input interface 1330. The processor 1310 may control the input interface 1330 to communicate with other devices or chips, and specifically, may obtain information or data sent by other devices or chips.

[0226] In some embodiments, the chip 1300 may further include an output interface 1340. The processor 1310 may control the output interface 1340 to communicate with other devices or chips, and specifically, may output information or data to other devices or chips.

[0227] In some embodiments, the chip can be applied to the electronic devices in the embodiments of the present application, and the chip can implement the corresponding processes implemented by the electronic devices in the various methods of the embodiments of the present application. For the sake of brevity, they will not be repeated here.

[0228] It should be understood that the chip mentioned in the embodiments of the present application can also be called a system-level chip, a system chip, a chip system or a system-on-chip chip, etc.

[0229] It is understood that the processor of the embodiments of the present application may be an integrated circuit chip with signal processing capabilities. During implementation, each step of the above method embodiment can be completed by hardware integrated logic circuits in the processor or software instructions. The above processor can be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. The various methods, steps, and logic block diagrams disclosed in the embodiments of the present application can be implemented or executed. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in the embodiments of the present application can be directly implemented as being executed by a hardware decoding processor, or by a combination of hardware and software modules in the decoding processor. The software module can be located in a storage medium mature in the art, such as random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, etc. The storage medium is located in the memory, and the processor reads the information in the memory and completes the steps of the above method in combination with its hardware.

[0230] It is also understood that the memory in the embodiments of the present application may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of RAM are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct RAM bus random access memory (DR RAM). It should be noted that the memory described herein is intended to include, but is not limited to, these and any other suitable types of memory.

[0231] It is also understood that the above-mentioned memories are exemplary but not restrictive. For example, the memories in the embodiments of the present application may also be static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct RAM RAM (DR RAM). In other words, the memories in the embodiments of the present application are intended to include, but are not limited to, these and any other suitable types of memories.

[0232] An embodiment of the present application also provides a computer-readable storage medium for storing a computer program.

[0233] In some embodiments, the computer-readable storage medium can be applied to the electronic device in the embodiments of the present application, and the computer program enables the computer to execute the corresponding processes implemented by the electronic device in the various methods of the embodiments of the present application. For the sake of brevity, they will not be repeated here.

[0234] An embodiment of the present application also provides a computer program product, including computer program instructions.

[0235] In some embodiments, the computer program product can be applied to the electronic device in the embodiments of the present application, and the computer program instructions enable the computer to execute the corresponding processes implemented by the electronic device in the various methods of the embodiments of the present application. For the sake of brevity, they will not be repeated here.

[0236] The embodiment of the present application also provides a computer program.

[0237] In some embodiments, the computer program can be applied to the electronic devices in the embodiments of the present application. When the computer program runs on a computer, the computer executes the corresponding processes implemented by the electronic devices in the various methods of the embodiments of the present application. For the sake of brevity, they will not be repeated here.

[0238] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of 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. Professional and technical personnel 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.

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

[0240] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0241] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.

[0242] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0243] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present 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 a computer 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 the present 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.

[0244] It should be noted that, in this application, the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, article, or apparatus comprising a series of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or apparatus. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or apparatus comprising the element.

[0245] The serial numbers of the above embodiments of the present application are for description only and do not represent the advantages or disadvantages of the embodiments.

[0246] The methods disclosed in the several method embodiments provided in this application can be arbitrarily combined without conflict to obtain new method embodiments.

[0247] The features disclosed in the several product embodiments provided in this application can be arbitrarily combined without conflict to obtain new product embodiments.

[0248] The features disclosed in the several method or device embodiments provided in this application can be arbitrarily combined without conflict to obtain new method embodiments or device embodiments.

[0249] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of this application. Therefore, the scope of protection of this application should be based on the scope of protection of the claims.

Claims

1. A positioning method, characterized in that: The method comprises: Determine M candidate positioning points; Selecting N candidate positioning points from the M candidate positioning points according to at least one scoring indicator; Clustering is performed based on the N candidate positioning points to determine the target positioning point, where M and N are positive integers; The selecting N candidate positioning points from the M candidate positioning points according to at least one scoring indicator includes: Scoring the M candidate positioning points respectively according to at least one scoring indicator to obtain target score results for the M candidate positioning points; Based on the target score results of each of the M candidate positioning points, selecting the N candidate positioning points whose target score results are greater than a first preset value; Scoring the M candidate positioning points respectively according to at least one scoring indicator to obtain target score results for the M candidate positioning points includes: Determine three access points corresponding to a first candidate positioning point, where the first candidate positioning point is any one of the M candidate positioning points; Scoring the first candidate positioning point according to the radius of a concentric circle selected by each of the three access points to obtain a first score result of the first candidate positioning point; and / or, Scoring the first candidate positioning point according to the LOS / NLOS classification results between the first candidate positioning point and each of the three access points to obtain a second score result for the first candidate positioning point; and / or, Scoring the first candidate positioning point according to the triangle shape formed by the three access points to obtain a third score result of the first candidate positioning point; and / or, Scoring the first candidate positioning point according to the distance between the first candidate positioning point and the centroid of the triangle formed by the three access points to obtain a fourth score result of the first candidate positioning point; A target score result for the first candidate positioning point is determined according to at least one of the first score result, the second score result, the third score result, and the fourth score result.

2. The method according to claim 1, characterized in that The determining of M candidate positioning points includes: Determine L access points, where L is a positive integer greater than or equal to 3; A candidate positioning point generation process is performed according to the L access points to obtain the M candidate positioning points.

3. The method according to claim 2, characterized in that The generating of candidate positioning points according to the L access points to obtain the M candidate positioning points includes: Select three access points from the L access points; A candidate positioning point generation process is performed on the three access points using a preset algorithm to obtain a first candidate positioning point; wherein the first candidate positioning point is any one of the M candidate positioning points.

4. The method according to claim 3, characterized in that The step of performing candidate positioning point generation processing on the three access points using a preset algorithm to obtain a first candidate positioning point includes: Processing the three access points separately using a preset concentric circle algorithm to determine k concentric circles for each of the three access points, where k is a positive integer; Select one concentric circle from each of the k concentric circles of the three access points to obtain three target concentric circles; The three target concentric circles are processed using a preset positioning algorithm to determine the first candidate positioning point.

5. The method according to claim 4, characterized in that The using a preset positioning algorithm to process the three target concentric circles to determine the first candidate positioning point includes: Determining the radius of each of the three target concentric circles and the position coordinates of each of the three access points; A least squares method is performed on the radii of the three target concentric circles and the position coordinates of the three access points to determine the first candidate positioning point.

6. The method according to claim 1, characterized in that Scoring the first candidate positioning point according to the radius of a concentric circle selected by each of the three access points to obtain a first score result of the first candidate positioning point includes: Determining a round-trip time (RTT) measurement distance of each of the three access points based on a radius of a concentric circle selected by each of the three access points; Determining the RTT measurement errors of the three access points according to the RTT measurement distances of the three access points and the corresponding relationship between the preset RTT measurement distances and the RTT measurement errors; Accumulate and calculate the RTT measurement errors of the three access points to obtain a first score result of the first candidate positioning point.

7. The method according to claim 1, characterized in that Scoring the first candidate positioning point according to the LOS / NLOS classification results between the first candidate positioning point and each of the three access points to obtain a second score result of the first candidate positioning point includes: Determining three initial second score results according to the LOS / NLOS classification results between the first candidate positioning point and each of the three access points; The three initial second score results are cumulatively calculated to obtain a second score result of the first candidate positioning point.

8. The method according to claim 7, characterized in that The determining three initial second score results according to the LOS / NLOS classification results between the first candidate positioning point and each of the three access points includes: If the LOS / NLOS classification result between the first candidate positioning point and the first access point is LOS, determining an initial second score result between the first candidate positioning point and the first access point to be 0.5; or, If the LOS / NLOS classification result between the first candidate positioning point and the first access point is NLOS, determining an initial second score result between the first candidate positioning point and the first access point is 1; wherein the first access point is any one of the three access points.

9. The method according to claim 8, characterized in that The method further comprises: Determine P first parameter values ​​according to P reference time measurement protocol measurement results between the first candidate positioning point and the first access point, where P is a positive integer; Calculating eigenvalues ​​of the P first parameter values; The feature values ​​of the P first parameter values ​​are input into a pre-trained classifier to determine a LOS / NLOS classification result between the first candidate positioning point and the first access point.

10. The method according to claim 1, characterized in that Scoring the first candidate positioning point according to the triangle shape formed by the three access points to obtain a third score result of the first candidate positioning point includes: Determine three interior angles of a triangle formed by the three access points; A third score result of the first candidate positioning point is determined according to the maximum value of the difference between each of the three interior angles and the preset degree.

11. The method according to claim 1, characterized in that Scoring the first candidate positioning point according to the distance between the first candidate positioning point and the centroid of the triangle formed by the three access points to obtain a fourth score result of the first candidate positioning point includes: Determine the position coordinates of the first candidate positioning point and the position coordinates of the center of gravity of the triangle formed by the three access points; determining, based on the position coordinates of the first candidate positioning point and the position coordinates of the center of gravity of the triangle formed by the three access points, a distance between the first candidate positioning point and the center of gravity of the triangle formed by the three access points; A fourth score result of the first candidate positioning point is determined according to a distance between the first candidate positioning point and the centroid of a triangle formed by the three access points.

12. The method according to claim 1, characterized in that The determining, based on at least one of the first score result, the second score result, the third score result, and the fourth score result, a target score result of the first candidate positioning point includes: Determining a first weight, a second weight, a third weight, and a fourth weight; Determining a first target score result according to the first weight and the first score result; Determining a second target score result according to the second weight and the second score result; Determining a third target score result according to the third weight and the third score result; Determining a fourth target score result according to the fourth weight and the fourth score result; Determine a target score result for the first candidate positioning point according to at least one of the first target score result, the second target score result, the third target score result, and the fourth target result.

13. The method according to claim 12, characterized in that The determining the target score result of the first candidate positioning point according to at least one of the first target score result, the second target score result, the third target score result, and the fourth target result includes: When the at least one item includes four items, a target score result of the first candidate positioning point is obtained by performing cumulative calculation based on the first target score result, the second target score result, the third target score result, and the fourth target score result.

14. The method according to claim 1, wherein The clustering of the N candidate positioning points to determine the target positioning point includes: Clustering the N candidate positioning points to determine at least one cluster; Selecting a cluster with the largest number of candidate positioning points from the at least one cluster, and using the selected cluster as a target cluster; In the target cluster, a candidate positioning point located at the center is determined as the target positioning point.

15. A positioning device, characterized in that: The positioning device includes a first generation module, a scoring module, and a second generation module, wherein: The first generating module is configured to determine M candidate positioning points; The scoring module is configured to select N candidate positioning points from the M candidate positioning points according to at least one scoring indicator; The second generating module is configured to cluster the N candidate positioning points to determine a target positioning point, where M and N are positive integers; The scoring module is further configured to score the M candidate positioning points respectively according to at least one scoring indicator to obtain target score results for each of the M candidate positioning points; based on the target score results for each of the M candidate positioning points, select the N candidate positioning points whose target score results are greater than a first preset value; The scoring module is further configured to determine three access points corresponding to a first candidate positioning point, where the first candidate positioning point is any one of the M candidate positioning points; score the first candidate positioning point based on the radius of a concentric circle selected by each of the three access points to obtain a first score for the first candidate positioning point; and / or score the first candidate positioning point based on a line-of-sight (LOS) / non-line-of-sight (NLOS) classification result between the first candidate positioning point and each of the three access points to obtain a second score for the first candidate positioning point; and / or score the first candidate positioning point based on a triangle shape formed by the three access points to obtain a third score for the first candidate positioning point; and / or score the first candidate positioning point based on a distance between the first candidate positioning point and the centroid of the triangle formed by the three access points to obtain a fourth score for the first candidate positioning point; and determine a target score for the first candidate positioning point based on at least one of the first score, the second score, the third score, and the fourth score.

16. An electronic device, characterized in that: include: A processor and a memory, the memory being used to store a computer program, the processor being used to call and run the computer program stored in the memory to execute the method according to any one of claims 1 to 14.

17. A chip, characterized in that: include: A processor, configured to call and run a computer program from a memory, so that a device equipped with the chip executes the method according to any one of claims 1 to 14.

18. A computer-readable storage medium, characterized in that The computer storage medium stores a computer program, and when the computer program is executed by at least one processor, the method according to any one of claims 1 to 14 is implemented.

Citation Information

Patent Citations

  • Mobile terminal positioning method, device, electronic equipment and storage medium

    CN108882174A