Positioning method and system
By receiving and matching the signal strength values sent by multiple positioning devices, the target polar coordinates of the mobile device are calculated, which solves the problem of insufficient positioning accuracy in the prior art, and achieves higher positioning accuracy and reliability.
Patent Information
- Application Number
- CN202411362687.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-27
- Publication Date
- 2025-02-07
AI Technical Summary
The existing Bluetooth multilateral ranging positioning technology has insufficient accuracy and is difficult to achieve highly accurate positioning, especially under the influence of measurement distance and signal attenuation.
By receiving the signal strength values of the mobile device sent by multiple positioning devices, a signal strength indication data frame is generated, and the reference polar coordinates and reference confidence are matched from the signal strength indication database to calculate the target polar coordinates of the mobile device.
Improve the accuracy and reliability of positioning, can quickly process signal strength values and update positioning information to meet the needs of real-time positioning.
Smart Images

Figure CN119402959A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of communications, and in particular to a positioning method and system. Background Art
[0002] Target positioning technology can be used for applications such as personnel and material management or positioning navigation. Currently, the technologies relied on by common positioning technologies mainly include WiFi, Bluetooth, ultra-wideband, infrared and ultrasonic waves. Among them, Bluetooth technology is an open global specification for wireless data and voice communications. It is a special short-range wireless technology connection based on low-cost short-range wireless connection to establish a communication environment for fixed and mobile devices. Bluetooth-based positioning methods are widely used due to their low cost and easy integration.
[0003] Among the existing positioning technologies, the advantage of Bluetooth multi-lateration positioning technology is that it has relatively low requirements for data storage. However, its accuracy may be affected by the measurement distance and signal attenuation, making it difficult to achieve highly precise positioning. Summary of the invention
[0004] The main purpose of the present invention is to provide a positioning method and system, which can improve the accuracy and reliability of positioning by matching the signal strength indication data frame with the feature data in the database, and can quickly process the signal strength value and update the positioning information to meet the needs of real-time positioning.
[0005] In order to achieve the above objectives, the embodiments of the present application provide the following technical solutions:
[0006] According to a first aspect of an embodiment of the present application, a positioning method is provided, the method comprising:
[0007] Receiving signal strength values of a mobile terminal device sent by a plurality of positioning devices, wherein the signal strength values represent signal strengths of the mobile terminal device monitored by the plurality of positioning devices;
[0008] determining a signal strength indication data frame according to a plurality of signal strength values and a receiving time;
[0009] According to the signal strength indication data frame, matching a plurality of reference polar coordinates and reference confidences from feature data of a plurality of positioning acquisition polar coordinate points in a signal strength indication database;
[0010] The target polar coordinates of the mobile terminal device are calculated according to the plurality of reference polar coordinates and the reference confidence.
[0011] Optionally, matching a plurality of reference polar coordinates and reference confidences from feature data of a plurality of positioning acquisition polar coordinate points in a signal strength indication database according to the signal strength indication data frame includes:
[0012] For each of the first number of positioning and collecting polar coordinate points in the signal strength indication database, a second number of posture Euclidean distance results are calculated based on a number of feature data of the positioning and collecting polar coordinate points and the signal strength indication data frame; the second number of posture Euclidean distance results are sorted from small to large, and a third number of posture Euclidean distance results are screened out;
[0013] Performing matrix transformation on the first number of groups of third number of posture Euclidean distance results to obtain the third number of groups of first number of posture Euclidean distance results;
[0014] For each group of the first number of posture Euclidean distance results of the third number of groups of the first number of posture Euclidean distance results, sort the first number of posture Euclidean distance results from small to large, and screen out a fourth number of posture Euclidean distance results;
[0015] For each posture Euclidean distance result of the fourth number of posture Euclidean distance results, a reference polar coordinate and a reference confidence corresponding to the posture Euclidean distance result are calculated.
[0016] Optionally, the calculating of a second number of posture Euclidean distance results according to the plurality of characteristic data of the positioning and collection polar coordinate points and the signal strength indication data frame includes:
[0017] For each group of posture data of the positioning and collecting polar coordinate points, calculating the sample weight of each signal strength indication data frame;
[0018] According to the sample weights corresponding to all signal strength indication data frames, the Euclidean distances corresponding to all feature data in the group of posture data are weightedly calculated to obtain the posture Euclidean distance results corresponding to the group of posture data.
[0019] Optionally, the calculating of the reference polar coordinates and the reference confidence corresponding to the posture Euclidean distance result includes:
[0020] According to the Euclidean distance result of the posture, the corresponding weighting coefficient and reference confidence are calculated;
[0021] Calculate the reference polar diameter according to the polar diameter of the positioning collection polar coordinate point corresponding to the posture Euclidean distance result and the weighting coefficient;
[0022] The reference polar angle is calculated according to the polar angle of the positioning acquisition polar coordinate point corresponding to the posture Euclidean distance result and the weighting coefficient.
[0023] Optionally, the origin of the polar coordinate plane where the positioning and collecting polar coordinate points are located is set by the user, the polar diameter is the distance from the origin to the positioning device, and the polar angle is the angle measured counterclockwise starting from the 0 degree angle direction of the polar diameter.
[0024] Optionally, if the receiving time is a time, calculating the target polar coordinates of the mobile terminal device according to the plurality of reference polar coordinates and the reference confidence level includes:
[0025] The reference polar diameter and the reference polar angle corresponding to the maximum value in the third number groups of reference confidences are determined as the target polar coordinates of the mobile terminal device.
[0026] Optionally, if the receiving time is multiple times, calculating the target polar coordinates of the mobile terminal device according to the plurality of reference polar coordinates and the reference confidence level includes:
[0027] Summing the third number of groups of reference confidences to obtain a sum of the third number of groups of confidences;
[0028] Taking the Euclidean distance result of the posture corresponding to the group with the largest sum of confidences of the third number of groups as the target posture;
[0029] Determining the target polar coordinates of the mobile terminal device according to the weighted sum of the reference polar coordinates and the reference confidence of the target posture at the multiple moments;
[0030] The target polar angle of the mobile terminal device is determined according to the weighted sum of the reference polar angles and reference confidences of the target posture at the multiple moments.
[0031] Optionally, determining the signal strength indication data frame according to a plurality of signal strength values and receiving times includes:
[0032] If there are multiple signal strength values, the multiple signal strength values are processed based on the filtering algorithm to obtain a signal strength processing value; if there is one signal strength value, the signal strength value is set as the signal strength processing value;
[0033] The signal strength processing value is timestamped with the receiving time to generate a signal strength indication data frame; the receiving time is the time value of receiving the signal strength values of the mobile terminal devices sent by several positioning devices.
[0034] Optionally, the signal strength indication database includes a first number of positioning acquisition polar coordinate points, each positioning acquisition polar coordinate point includes a second number of posture data, each posture data includes a fifth number of feature data, each feature data includes a sixth number of samples, and the sixth number of samples are generated based on a sixth number of positioning devices.
[0035] According to a second aspect of an embodiment of the present application, a positioning system is provided, the system comprising:
[0036] A signal receiving module, used to receive signal strength values of mobile devices sent by several positioning devices, wherein the signal strength values represent the signal strengths of the mobile devices monitored by the several positioning devices;
[0037] A signal strength indication module, used to determine a signal strength indication data frame according to a number of signal strength values and a receiving time;
[0038] A reference polar coordinate module, used to match a number of reference polar coordinates and reference confidences from feature data of a number of positioning acquisition polar coordinate points in a signal strength indication database according to the signal strength indication data frame;
[0039] The target polar coordinate module is used to calculate the target polar coordinates of the mobile terminal device according to the plurality of reference polar coordinates and reference confidence.
[0040] In summary, the embodiments of the present application provide a positioning method and system, which receives signal strength values of mobile devices sent by several positioning devices, wherein the signal strength values represent the signal strengths of the mobile devices monitored by the several positioning devices; determines a signal strength indication data frame according to the several signal strength values and the receiving time; matches several reference polar coordinates and reference confidences from the feature data of several positioning acquisition polar coordinate points in a signal strength indication database according to the signal strength indication data frame; calculates the target polar coordinates of the mobile device according to the several reference polar coordinates and the reference confidence, and matches them with the feature data in the database through the signal strength indication data frame to improve the accuracy and reliability of positioning, and can quickly process the signal strength value and update the positioning information to meet the needs of real-time positioning. BRIEF DESCRIPTION OF THE DRAWINGS
[0041] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on the structures shown in these drawings without paying creative work.
[0042] The structures, proportions, sizes, etc. illustrated in this specification are only used to match the contents disclosed in the specification so as to facilitate understanding and reading by persons familiar with the technology. They are not used to limit the conditions under which the present invention can be implemented, and therefore have no substantial technical significance. Any structural modification, change in proportion or adjustment of size shall still fall within the scope of the technical contents disclosed in the present invention without affecting the effects and purposes that can be achieved by the present invention.
[0043] Figure 1 A flow chart of a positioning method provided in an embodiment of the present application;
[0044] Figure 2 A block diagram of a positioning system provided in an embodiment of the present application;
[0045] Figure 3 A structural diagram of an electronic device provided in an embodiment of the present application is shown;
[0046] Figure 4 A diagram showing a computer-readable storage medium provided by an embodiment of the present application.
[0047] The realization of the purpose, functional features and advantages of the present invention will be further explained in conjunction with embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION
[0048] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0049] It should be noted that all directional indications in the embodiments of the present invention (such as up, down, left, right, front, back, etc.) are only used to explain the relative position relationship, movement status, etc. between the components under a certain specific posture (as shown in the accompanying drawings). If the specific posture changes, the directional indication will also change accordingly.
[0050] In addition, in the present invention, descriptions such as "first", "second", etc. are only used for descriptive purposes and cannot be understood as indicating or implying their relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features defined as "first" or "second" may explicitly or implicitly include at least one of the features. In the description of the present invention, the meaning of "plurality" is at least two, such as two, three, etc., unless otherwise clearly and specifically defined.
[0051] In the present invention, unless otherwise clearly specified and limited, the terms "connection", "fixation", etc. should be understood in a broad sense. For example, "fixation" can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection or an electrical connection; it can be a direct connection or an indirect connection through an intermediate medium, it can be the internal connection of two elements or the interaction relationship between two elements, unless otherwise clearly defined. For ordinary technicians in this field, the specific meanings of the above terms in the present invention can be understood according to specific circumstances.
[0052] In addition, the technical solutions between the various embodiments of the present invention can be combined with each other, but it must be based on the fact that ordinary technicians in the field can implement it. When the combination of technical solutions is contradictory or cannot be implemented, it should be deemed that such combination of technical solutions does not exist and is not within the scope of protection required by the present invention.
[0053] Figure 1 A positioning method provided by an embodiment of the present application is shown, which can reduce errors and improve positioning accuracy by integrating the signal strength values of multiple positioning devices. Even in the case of signal interference or failure of some devices, the system can still accurately locate through data from other devices. The method includes:
[0054] Step 101: receiving signal strength values of mobile devices sent by a plurality of positioning devices, wherein the signal strength values represent signal strengths of the mobile devices monitored by the plurality of positioning devices;
[0055] Step 102: determining a signal strength indication data frame according to a plurality of signal strength values and a receiving time;
[0056] Step 103: According to the signal strength indication data frame, a plurality of reference polar coordinates and reference confidences are matched from feature data of a plurality of positioning acquisition polar coordinate points in a signal strength indication database;
[0057] Step 104: Calculate the target polar coordinates of the mobile terminal device according to the plurality of reference polar coordinates and reference confidence levels.
[0058] In a possible implementation, in step 102, determining a signal strength indication data frame according to a plurality of signal strength values and receiving times includes:
[0059] If there are multiple signal strength values, the multiple signal strength values are processed based on the filtering algorithm to obtain a signal strength processing value; if the signal strength value is one, the signal strength value is set as the signal strength processing value; the signal strength processing value is timestamped with the receiving time to generate a signal strength indication data frame; the receiving time is the time value of receiving the signal strength values of the mobile device sent by several positioning devices.
[0060] In one possible implementation, the signal strength indication database includes a first number of positioning acquisition polar coordinate points, each positioning acquisition polar coordinate point includes a second number of posture data, each posture data includes a fifth number of feature data, each feature data includes a sixth number of samples, and the sixth number of samples are generated based on a sixth number of positioning devices.
[0061] In a possible implementation, in step 103, according to the signal strength indication data frame, matching a plurality of reference polar coordinates and reference confidences from feature data of a plurality of positioning acquisition polar coordinate points in a signal strength indication database includes:
[0062] For each of the first number of positioning and collecting polar coordinate points in the signal strength indication database, a second number of posture Euclidean distance results are calculated based on a number of feature data of the positioning and collecting polar coordinate points and the signal strength indication data frame;
[0063] The second number of posture Euclidean distance results are sorted from small to large, and a third number of posture Euclidean distance results are screened out; the first number of groups of the third number of posture Euclidean distance results are matrix-converted to obtain the third number of groups of the first number of posture Euclidean distance results; for each group of the first number of posture Euclidean distance results of the third number of groups of the first number of posture Euclidean distance results, the first number of posture Euclidean distance results are sorted from small to large, and a fourth number of posture Euclidean distance results are screened out; for each posture Euclidean distance result of the fourth number of posture Euclidean distance results, the reference polar coordinates and reference confidence corresponding to the posture Euclidean distance results are calculated.
[0064] In a possible implementation manner, the calculating of a second number of posture Euclidean distance results based on the plurality of feature data of the positioning and acquisition polar coordinate points and the signal strength indication data frame includes:
[0065] For each group of posture data of the positioning and collecting polar coordinate points, the sample weight of each signal strength indication data frame is calculated; according to the sample weights corresponding to all signal strength indication data frames, the Euclidean distances corresponding to all feature data in this group of posture data are weightedly calculated to obtain the posture Euclidean distance results corresponding to the group of posture data.
[0066] In a possible implementation, the calculating the reference polar coordinates and the reference confidence corresponding to the posture Euclidean distance result includes:
[0067] According to the Euclidean distance result of the posture, the corresponding weighting coefficient and the reference confidence are calculated; the reference polar diameter is calculated according to the polar diameter of the corresponding positioning and collection polar coordinate point of the Euclidean distance result of the posture and the weighting coefficient; the reference polar angle is calculated according to the polar angle of the corresponding positioning and collection polar coordinate point of the Euclidean distance result of the posture and the weighting coefficient.
[0068] In a possible implementation, the origin of the polar coordinate plane where the positioning and collecting polar coordinate points are located is set by the user, the polar diameter is the distance from the origin to the positioning device, and the polar angle is the angle measured counterclockwise starting from the 0 degree angle direction of the polar diameter.
[0069] In a possible implementation, if the receiving time is a moment, the step 104 of calculating the target polar coordinates of the mobile terminal device according to the reference polar coordinates and the reference confidence level includes:
[0070] The reference polar diameter and the reference polar angle corresponding to the maximum value in the third number groups of reference confidences are determined as the target polar coordinates of the mobile terminal device.
[0071] In a possible implementation, if the receiving time is multiple times, the step 104 of calculating the target polar coordinates of the mobile terminal device according to the plurality of reference polar coordinates and the reference confidence level includes:
[0072] The reference confidences of the third number groups are summed to obtain the sum of the confidences of the third number groups; the Euclidean distance result of the posture corresponding to the group with the largest sum of the confidences of the third number groups is used as the target posture; the target polar coordinates of the mobile terminal device are determined according to the weighted sum of the reference polar coordinates and the reference confidence of the target posture at the multiple moments; the target polar angle of the mobile terminal device is determined according to the weighted sum of the reference polar angle and the reference confidence of the target posture at the multiple moments.
[0073] By fusing signal strength data at different times, the location and movement trend of mobile devices can be estimated more accurately.
[0074] The method provided in the embodiment of the present application is explained in detail below in combination with specific scenarios.
[0075] For scenarios where all positioning devices are installed on the vehicle, the positioning devices are near the center of the positioning area, and positioning is performed in a radial area centered on the vehicle, the closer the distance to the vehicle, the smaller the absolute value of the RSSI received by the positioning device within the line of sight. At the same time, the closer the distance to the vehicle, the smaller the jitter of the RSSI value of the anchor point within the line of sight, and the lower the inaccuracy of the positioning result. The farther the distance from the vehicle, the larger the absolute value of the RSSI received by all positioning devices. At the same time, the farther the distance from the vehicle, the greater the jitter of the RSSI value, and the higher the inaccuracy of the positioning result.
[0076] In the traditional RSSI fingerprint matching calculation process, the same RSSI value deviation contributes the same Euclidean distance share to the fingerprint matching. However, due to signal fluctuations, the absolute value of the larger RSSI value increases the risk of matching errors. In order to reduce the positioning deviation caused by the absolute value of the larger RSSI value, the method of the present invention is proposed.
[0077] The embodiment of the present application relates to a digital car key positioning system, which consists of a positioning device located in the car (main anchor point), several positioning devices located around the car body (slave anchor points), a positioning processing module and cables connecting the above. The positioning device located in the car has a Bluetooth communication function, as well as sending Bluetooth signals to mobile devices and receiving Bluetooth signals sent by mobile devices. The positioning devices located around the car body only have a Bluetooth signal monitoring function and receive Bluetooth signals. In the positioning system application, the positioning processing module performs positioning and solving for the mobile device based on the Bluetooth RSSI data of the mobile device received by each positioning device combined with the fingerprint library collected in the early stage.
[0078] Firstly, the fingerprint database is established in polar coordinates.
[0079] A certain point inside the car (usually the center of the circumscribed rectangle of the car body) is used as the origin, and the polar angle and polar diameter are used to define the two-dimensional coordinate points around the car body. The polar diameter angle of 0 degrees is the direction of the front of the car, and the polar angle increases in a counterclockwise direction.
[0080] The system has a total of M sampling coordinate points, each of which corresponds to P groups of different feature records, where P is the number of different postures when the mobile device collects features. For P groups of feature records, each group of feature records contains Q feature samples, including feature values such as median, mean, mode, etc. There are as many feature samples as there are statistical methods used to obtain the feature values. For Q feature samples, each feature sample contains K data points, corresponding to the K in-vehicle Bluetooth positioning devices in the system. This enables the system to perform detailed fingerprint collection and analysis of the vehicle's surroundings from different angles and postures.
[0081] Second, positioning processing method:
[0082] During the positioning process, the vehicle positioning processing module collects the Bluetooth data received / listened by the vehicle positioning device on the mobile device to obtain the RSSI value and combines it into an RSSI data frame. Then, the RSSI fingerprint library data collected in the early stage is used to calculate the position of the mobile terminal relative to the vehicle body based on the fingerprint matching calculation results.
[0083] Part 1: Method for collecting RSSI data by vehicle-side positioning device: The vehicle-side positioning device collected by the vehicle-side positioning processing module receives / monitors the Bluetooth data of the mobile device to obtain the RSSI value and combines it into an RSSI data frame. In this way, there is an RSSI data frame for each feature sample in the Q feature samples.
[0084] Step 1: The mobile device broadcasts a Bluetooth signal at a certain frequency, or establishes a Bluetooth connection with the main anchor point.
[0085] Step 2: K vehicle-mounted positioning devices receive Bluetooth broadcast signals or data packets from mobile devices.
[0086] Step 3: Each vehicle-mounted positioning device calculates the RSSI value of the received Bluetooth signal.
[0087] Step 4: The vehicle positioning device sends the calculated RSSI value to the vehicle positioning processing module.
[0088] Step 5: The vehicle positioning processing module collects the RSSI values received by all vehicle positioning devices.
[0089] Step 6: If the mobile device performs power control, the vehicle positioning processing module performs corresponding compensation processing to ensure the consistency of the RSSI value.
[0090] Step 7: If a positioning device receives multiple RSSI values, use the filtering algorithm to process these values and output a filtered RSSI value. If a positioning device does not receive an RSSI value, set its RSSI value to a specific value representing the farthest distance.
[0091] Step 8: The processed RSSI values of the K positioning devices are combined into a data frame according to a certain format (rssi t1, 1 rssi t1,2 ...rssi t1,k ) and timestamp it.
[0092] Step 9: The mobile terminal device repeats the operations from step 1 to step 8 in the second time period. The above process continues until the mobile terminal device receives an instruction to end the positioning operation.
[0093] The mobile terminal device broadcasts Bluetooth signals at a certain frequency or establishes a Bluetooth connection with the main anchor point. K vehicle-mounted positioning devices receive the Bluetooth broadcast of the mobile terminal device or receive and monitor the Bluetooth data packets of the mobile terminal, and then calculate the RSSI value and send this value to the vehicle-mounted positioning processing module. The vehicle-mounted positioning processing module collects the RSSI value of the mobile terminal device received by the vehicle-mounted positioning device, and then counts the RSSI values of each positioning device in the first time period. If the receiving end knows that the sending end has performed power control, the receiving end needs to perform corresponding power control compensation processing so that the reference power of the RSSI value involved in the positioning processing is consistent with the reference power when the fingerprint is collected. If there are more than one RSSI values from a certain positioning device, a certain filtering algorithm is used to output a processed RSSI value. If the RSSI value of a certain positioning device is not obtained, the RSSI value of this positioning device is set to the value corresponding to the farthest distance. Finally, the processed RSSI values of the K positioning devices are combined into a data frame of a certain format and stamped with the timestamp of the first time period. The mobile terminal device repeats the operation of the first time in the second time period until the mobile terminal device receives an instruction to end the positioning operation.
[0094] Part 2: Using the RSSI fingerprint library data collected in the early stage, the position of the mobile terminal relative to the vehicle body is calculated based on the fingerprint matching calculation results.
[0095] The vehicle positioning processing module completes the collection and processing of a set of RSSI values from the positioning device at time t1 and forms a data frame (rssi t1,1 rssi t1,2 ...rssi t1,k ), and then perform fingerprint matching processing on the aforementioned data frame and the fingerprint data in the fingerprint library. The specific method is as follows:
[0096] Step 1: For M collected coordinate points, calculate the posture Euclidean distance of each collected coordinate point to obtain P posture Euclidean distances of each collected coordinate point;
[0097] Step 1-1: For data frame (rssi t1,1 rssi t1,2 ...rssi t1,k ) calculates the weight for each RSSI value in the sample. The sample weight is mainly used to suppress RSSI with large absolute values. t1,i There may be a large fluctuation in the impact of the Euclidean distance of the fingerprint. The requirement for its occurrence is that the absolute value of the rssi is small. t1,i Will get a larger weight, and the RSSI with a larger absolute value t1,i Will get a smaller weight. One way to generate sample weights is as follows:
[0098] d i =|rssi t1,i |-C
[0099]
[0100] Where C is a constant, which is a non-negative number less than the minimum value of all possible RSSI absolute values and is used to adjust the weight coefficient.
[0101] Another way to generate sample weights is as follows:
[0102] d i =|rssi t1,i |-C
[0103]
[0104] Here are several ways to generate sample weights:
[0105] d i =|rssi t1,i / R|
[0106] or
[0107] Where R is a constant, which is a number between the maximum and minimum values of all possible RSSI values and is used to adjust the weight coefficient.
[0108] Step 1-2: For the data frame at time t1 (rssi t1,1 rssi t1,2 ...rssi t1,k ) and the P×Q sample features at each sampling coordinate point to calculate the weighted distance, and obtain P groups of weighted sample distance results, each group has Q sample distance results. Use the weighted RSSI value to calculate the Euclidean distance of each sample:
[0109] Suppose the qth sample feature of the pth group of postures at the mth coordinate point is (rssi m,p,q,1 rssi m,p,q, 2 ...rssi m,p,q,k ), then the RSSI value received at time t1 (rssi t1,1 rssi t1,2 ...rssi t1,k ) to the qth sample of the pth group fingerprint at the mth coordinate point is as follows:
[0110]
[0111] where w i is the sample weight.
[0112] Step 1-3: The distance results of each group of Q samples are weighted to calculate a posture distance result, and the weight is the inverse of the distance result. The weighted sum of the Euclidean distance results of each group of Q samples is calculated to obtain the posture Euclidean distance. The posture Euclidean distance calculation method is as follows:
[0113]
[0114] ε is a small quantity that prevents division by zero.
[0115] Repeat the above steps for all M coordinate points and calculate the P groups of pose Euclidean distances for each coordinate point.
[0116] Step 2: Sort the P groups of posture Euclidean distance results from small to large, retain the first L posture Euclidean distance results, and organize the L results retained by all coordinate points into L groups, each group containing M posture Euclidean distance results.
[0117] Step 3: Process the posture Euclidean distance results and corresponding weights of the L groups separately. Sort the M posture Euclidean distance results in each group from small to large, and keep the first J posture Euclidean distance results. In this way, only J posture Euclidean distances remain in each of the L groups.
[0118] In this way, the system can focus on those pose results that are more likely to represent the device's true position, thereby improving the accuracy and efficiency of localization.
[0119] Step 4: For each group of the first J posture Euclidean distance results, calculate the corresponding polar radius value and polar angle value in a weighted manner, and calculate the confidence index of each result.
[0120] Step 4-1: For each posture in each group, the Euclidean distance D (t1,m,l) Calculate the weighting coefficient WK (m,l) The weighting coefficient calculation formula is as follows:
[0121]
[0122] Step 4-2: Use the weighting factor WK (m,l) and the corresponding polar value ρ m Calculate the polar diameter ρ (t1,l) The formula for calculating the polar diameter is as follows:
[0123]
[0124] Step 4-3: Use the weighting factor WK (m,l) and the corresponding polar angle θ m Calculate the polar angle θ (t1,l) The polar angle calculation formula is as follows:
[0125]
[0126] Step 4-4: Confidence index A for each group (t1,l) Calculate to reflect the credibility of the group of results. The confidence index calculation formula is as follows:
[0127]
[0128] Repeat the steps for all groups to ensure that the polar radius and polar angle of the first J poses in each group are calculated.
[0129] Step 5: Use a circular queue to cache the polar coordinates and confidences of multiple postures, select the posture with the largest total confidence, and use its confidence as the weight to calculate the weighted average polar coordinates as the final output. Specifically include:
[0130] Step 5-1: Use a circular queue with L rows and N columns to cache polar coordinates and confidence indicators of different poses. L represents the number of different poses, and N represents the number of cached timestamps.
[0131] The polar coordinates and confidence indicators of L different posture fingerprints after matching are placed in a circular queue cache with L rows and N (N ≥ 1) columns. The data in each row corresponds to a posture calculation result, including polar coordinates and confidence. Each column stores the posture calculation result at a certain moment. The L-row and N-column cache caches the polar coordinates and confidence indicators of L different postures at the latest N moments.
[0132] Step 5-2: Sum the confidence index of each row (each posture). The confidence calculation formula of the polar coordinates of each posture is as follows:
[0133]
[0134] It means summing up the confidence index of the L-th posture at N time points.
[0135] Step 5-3: Among all the poses, select the pose with the largest sum of confidence as the output pose. The pose corresponding to the Lmax row has the highest confidence. The corresponding polar coordinates are the weighted sum of the coordinates with confidence as the weight.
[0136] Assume that the posture with the largest sum of current confidence is the Lmax row, then the output polar coordinate calculation formula is as follows:
[0137]
[0138] They represent the polar diameter and polar angle obtained by weighted summation of confidence respectively.
[0139] A t,Lmax represents the confidence coordinate of the Lmax-th posture at time period t; ρ t,Lmax and ρ t,Lmax are the polar diameter and polar angle corresponding to that time point respectively.
[0140] The accuracy and stability of positioning are improved by comprehensively considering data from multiple time points. Through weighted averaging, the system can reduce errors caused by instantaneous fluctuations or noise, thereby providing more reliable positioning results.
[0141] The embodiment of the present application is applicable to the scenario where multiple anchor points are located near the center of the positioning area within a certain range of the surrounding area. The positioning result of this solution has increased stability compared with other methods. For anchor points with larger absolute RSSI values received, the weight of its RSSI in the fingerprint matching algorithm is reduced. For anchor points with smaller absolute RSSI values received, the weight of its RSSI value in the fingerprint matching algorithm is increased, effectively reducing the impact of RSSI value fluctuations (deviations from the true value) on the deviation caused by positioning solution results. By matching the signal strength indication data frame with the feature data in the database to improve the accuracy and reliability of positioning, the signal strength value can be quickly processed and the positioning information can be updated to meet the needs of real-time positioning.
[0142] In summary, an embodiment of the present application provides a positioning method, which receives signal strength values of a mobile terminal device sent by several positioning devices, wherein the signal strength values represent the signal strengths of the mobile terminal devices monitored by the several positioning devices; determines a signal strength indication data frame according to the several signal strength values and the receiving time; matches several reference polar coordinates and reference confidences from the feature data of several positioning acquisition polar coordinate points in a signal strength indication database according to the signal strength indication data frame; calculates the target polar coordinates of the mobile terminal device according to the several reference polar coordinates and the reference confidence, and matches them with the feature data in the database through the signal strength indication data frame to improve the accuracy and reliability of positioning, and can quickly process the signal strength value and update the positioning information to meet the needs of real-time positioning.
[0143] Based on the same technical concept, the present application also provides a positioning system, such as Figure 2 As shown, the system comprises:
[0144] The signal receiving module 201 is used to receive the signal strength value of the mobile terminal device sent by several positioning devices, wherein the signal strength value represents the signal strength of the mobile terminal device monitored by the several positioning devices;
[0145] A signal strength indication module 202, configured to determine a signal strength indication data frame according to a plurality of signal strength values and a receiving time;
[0146] A reference polar coordinate module 203 is used to match a plurality of reference polar coordinates and reference confidences from feature data of a plurality of positioning acquisition polar coordinate points in a signal strength indication database according to the signal strength indication data frame;
[0147] The target polar coordinate module 204 is used to calculate the target polar coordinates of the mobile terminal device according to the reference polar coordinates and the reference confidence.
[0148] The present application also provides an electronic device corresponding to the method provided in the above embodiment. Figure 3 , which shows an electronic device diagram provided by some embodiments of the present application. The electronic device 30 may include: a processor 300, a memory 301, a bus 302 and a communication interface 303, wherein the processor 300, the communication interface 303 and the memory 301 are connected via the bus 302; the memory 301 stores a computer program that can be run on the processor 300, and the processor 300 executes the method provided by any of the aforementioned embodiments of the present application when running the computer program.
[0149] The memory 301 may include a high-speed random access memory (RAM), and may also include a non-volatile memory, such as at least one disk memory. The communication connection between the system network element and at least one other network element is realized through at least one physical port (which may be wired or wireless), and the Internet, wide area network, local area network, metropolitan area network, etc. may be used.
[0150] The bus 302 may be an ISA bus, a PCI bus, or an EISA bus, etc. The bus may be divided into an address bus, a data bus, a control bus, etc. The memory 301 is used to store programs, and the processor 300 executes the programs after receiving execution instructions. The method disclosed in any implementation of the aforementioned embodiment of the present application may be applied to the processor 300, or implemented by the processor 300.
[0151] The processor 300 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the hardware integrated logic circuit or software instructions in the processor 300. The above processor 300 can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a readily available programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. The 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 the processor can also be any conventional processor, etc. The steps of the method disclosed in the embodiments of the present application can be directly embodied as a hardware decoding processor to be executed, or the hardware and software modules in the decoding processor can be executed. The software module can be located in a mature storage medium in the field such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory or an electrically erasable programmable memory, a register, etc. The storage medium is located in the memory 301, and the processor 300 reads the information in the memory 301 and completes the steps of the above method in combination with its hardware.
[0152] The electronic device provided in the embodiment of the present application and the method provided in the embodiment of the present application are based on the same inventive concept and have the same beneficial effects as the method adopted, operated or implemented by them.
[0153] The present application also provides a computer-readable storage medium corresponding to the method provided in the above embodiment. Figure 4 The computer-readable storage medium shown is a CD 40 on which a computer program (ie, a program product) is stored. When the computer program is run by a processor, the method provided in any of the aforementioned embodiments is executed.
[0154] It should be noted that examples of the computer-readable storage medium may also include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other optical or magnetic storage media, which are not listed here one by one.
[0155] The computer-readable storage medium provided in the above-mentioned embodiments of the present application and the method provided in the embodiments of the present application are based on the same inventive concept and have the same beneficial effects as the method adopted, run or implemented by the application program stored therein.
[0156] It should be noted that the above embodiments illustrate the present application rather than limit the present application, and that those skilled in the art may design alternative embodiments without departing from the scope of the appended claims. In the claims, any reference symbol between brackets should not be constructed as a limitation to the claims. The word "comprising" does not exclude the presence of elements or steps not listed in the claims. The word "one" or "an" preceding an element does not exclude the presence of multiple such elements. The present application may be implemented by means of hardware including several different elements and by means of a suitably programmed computer. In a unit claim that lists several devices, several of these devices may be embodied by the same hardware item. The use of the words first, second, and third, etc. does not indicate any order. These words may be interpreted as names.
[0157] The above is only a preferred specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any changes or substitutions that can be easily thought of by a person skilled in the art within the technical scope disclosed in the present application should be included in the protection scope of the present application. Therefore, the protection scope of the present application shall be based on the protection scope of the claims.
[0158] The above description is only a preferred embodiment of the present invention, and does not limit the patent scope of the present invention. All equivalent structural changes made by using the contents of the present invention specification and drawings under the concept of the present invention, or directly / indirectly applied in other related technical fields are included in the patent protection scope of the present invention.
Claims
1. A positioning method, characterized in that: The method comprises: Receiving signal strength values of a mobile terminal device sent by a plurality of positioning devices, wherein the signal strength values represent signal strengths of the mobile terminal device monitored by the plurality of positioning devices; determining a signal strength indication data frame according to a plurality of signal strength values and a receiving time; According to the signal strength indication data frame, a number of reference polar coordinates and reference confidences are calculated from feature data of a number of positioning acquisition polar coordinate points in a signal strength indication database; The target polar coordinates of the mobile terminal device are calculated according to the plurality of reference polar coordinates and the reference confidence.
2. The method according to claim 1, characterized in that The matching of a plurality of reference polar coordinates and reference confidences from feature data of a plurality of positioning acquisition polar coordinate points in a signal strength indication database according to the signal strength indication data frame comprises: For each of the first number of positioning and collecting polar coordinate points in the signal strength indication database, a second number of posture Euclidean distance results are calculated based on a number of feature data of the positioning and collecting polar coordinate points and the signal strength indication data frame; Sort the second number of posture Euclidean distance results from small to large, and select the third number of posture Euclidean distance results; Performing matrix transposition on the first number of groups of third number of posture Euclidean distance results to obtain the third number of groups of first number of posture Euclidean distance results; For each group of the first number of posture Euclidean distance results of the third number of groups of the first number of posture Euclidean distance results, sort the first number of posture Euclidean distance results from small to large, and screen out a fourth number of posture Euclidean distance results; For each posture Euclidean distance result of the fourth number of posture Euclidean distance results, a reference polar coordinate and a reference confidence corresponding to the posture Euclidean distance result are calculated.
3. The method according to claim 2, characterized in that The step of calculating a second number of posture Euclidean distance results based on the plurality of characteristic data of the positioning and collection polar coordinate points and the signal strength indication data frame includes: For each group of posture data of the positioning and collecting polar coordinate points, calculating the sample weight of each signal strength indication data frame; According to the sample weights corresponding to all signal strength indication data frames, the Euclidean distances corresponding to all feature data in the group of posture data are weightedly calculated to obtain the posture Euclidean distance results corresponding to the group of posture data.
4. The method according to claim 2, characterized in that The calculation of the reference polar coordinates and the reference confidence corresponding to the result of the Euclidean distance of the posture includes: According to the Euclidean distance result of the posture, the corresponding weighting coefficient and reference confidence are calculated; Calculate the reference polar diameter according to the polar diameter of the positioning collection polar coordinate point corresponding to the posture Euclidean distance result and the weighting coefficient; The reference polar angle is calculated according to the polar angle of the positioning acquisition polar coordinate point corresponding to the posture Euclidean distance result and the weighting coefficient.
5. The method according to claim 4, characterized in that The origin of the polar coordinate plane where the positioning and collection polar coordinate point is located is set by the user, the polar diameter is the distance from the origin to the positioning device, and the polar angle is the angle measured counterclockwise starting from the 0 degree angle direction of the polar diameter.
6. The method according to any one of claims 1 to 5, characterized in that: If the receiving time is a time, calculating the target polar coordinates of the mobile terminal device according to the plurality of reference polar coordinates and the reference confidence level includes: The reference polar diameter and the reference polar angle corresponding to the maximum value in the third number groups of reference confidences are determined as the target polar coordinates of the mobile terminal device.
7. The method according to any one of claims 1 to 5, characterized in that: If the receiving time is multiple times, calculating the target polar coordinates of the mobile terminal device according to the plurality of reference polar coordinates and the reference confidence level includes: Summing the third number of groups of reference confidences to obtain a sum of the third number of groups of confidences; Taking the Euclidean distance result of the posture corresponding to the group with the largest sum of confidences of the third number of groups as the target posture; Determining the target polar coordinates of the mobile terminal device according to the weighted sum of the reference polar coordinates and the reference confidence of the target posture at the multiple moments; The target polar angle of the mobile terminal device is determined according to the weighted sum of the reference polar angles and reference confidences of the target posture at the multiple moments.
8. The method according to claim 1, characterized in that The step of determining a signal strength indication data frame according to a plurality of signal strength values and receiving time comprises: If there are multiple signal strength values, the multiple signal strength values are processed based on the filtering algorithm to obtain a signal strength processing value; if there is one signal strength value, the signal strength value is set as the signal strength processing value; The signal strength processing value is timestamped with the receiving time to generate a signal strength indication data frame; the receiving time is the time value of receiving the signal strength values of the mobile terminal devices sent by several positioning devices.
9. The method according to claim 1, characterized in that The signal strength indication database includes a first number of positioning acquisition polar coordinate points, each positioning acquisition polar coordinate point includes a second number of posture data, each posture data includes a fifth number of feature data, each feature data includes a sixth number of samples, and the sixth number of samples are generated based on a sixth number of positioning devices.
10. A positioning system, characterized in that: The system comprises: A signal receiving module, used to receive signal strength values of mobile devices sent by several positioning devices, wherein the signal strength values represent the signal strengths of the mobile devices monitored by the several positioning devices; A signal strength indication module, used to determine a signal strength indication data frame according to a number of signal strength values and a receiving time; A reference polar coordinate module, used to match a number of reference polar coordinates and reference confidences from feature data of a number of positioning acquisition polar coordinate points in a signal strength indication database according to the signal strength indication data frame; The target polar coordinate module is used to calculate the target polar coordinates of the mobile terminal device according to the plurality of reference polar coordinates and reference confidence.