An indoor positioning method, system, electronic device and storage medium
Patent Information
- Application Number
- CN202611048782.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-15
- Publication Date
- 2026-10-09
AI Technical Summary
[0022]采用上述进一步方案的有益效果是:以经过加权指纹匹配和协同校准修正后的第一定位结果为迭代初始值,利用时间提前量转换的距离和到达角构建定位方程组进行迭代求解,能够快速收敛至亚米级精度,同时避免迭代发散或陷入局部最优。
Smart Images

Figure CN122891884A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of indoor wireless positioning technology, and in particular to an indoor positioning method, system, electronic device and storage medium. Background Technology
[0002] With the continuous implementation of indoor business scenarios such as smart shopping malls, underground parking garages, industrial plants, and underground rail transit, satellite navigation signals are completely blocked by building walls. Indoor high-precision location perception has become an essential underlying support capability for IoT, emergency rescue, and passenger flow analysis. How to achieve low-cost, universal indoor positioning without additional terminal authorization based on existing mobile communication base stations has become an important research direction in the field of mobile communication network optimization.
[0003] In related technologies, indoor positioning solutions based on base station network sensing data are commonly used. By selecting high-quality cell base stations to establish a temporary local coordinate system, and dividing independent sub-regions according to signal strength intervals to complete the terminal location determination, the entire process does not require the addition of dedicated hardware such as Bluetooth or UWB. Basic indoor positioning capabilities can be achieved by simply reusing existing cellular network equipment, which greatly reduces the deployment cost of the positioning system.
[0004] However, this solution has inherent shortcomings that make it difficult to adapt to dynamic indoor scenarios. The positioning relies on shallow network indicators and lacks high-precision physical layer measurement data support. The coordinate system cannot be reused globally, the concurrent computing power is high, and there is a lack of environmental interference recognition and multi-terminal collaborative correction mechanisms, making it difficult to achieve stable positioning accuracy. Summary of the Invention
[0005] This invention provides an indoor positioning method, system, electronic device, and storage medium to solve the technical problems of insufficient positioning accuracy, inability to reuse positioning references, and lack of dynamic environmental adaptability in the prior art.
[0006] To achieve the above objectives, the embodiments of the present invention adopt the following technical solutions: In a first aspect, an indoor positioning method is provided, the method comprising: constructing a unified reference coordinate system and a multi-dimensional signal fingerprint database for a target area, the multi-dimensional signal fingerprint database including a fingerprint vector corresponding to each sampling point among multiple sampling points in the unified reference coordinate system, the fingerprint vector including a reference signal received power, timing advance, and angle of arrival; acquiring real-time physical layer measurement data of a terminal; performing weighted fingerprint matching based on the real-time physical layer measurement data and the multi-dimensional signal fingerprint database to obtain a first positioning result; performing positioning calculation based on the first positioning result and the timing advance and angle of arrival in the real-time physical layer measurement data to obtain a second positioning result; and incrementally updating the multi-dimensional signal fingerprint database according to the deviation between the second positioning result and the corresponding fingerprint vector in the multi-dimensional signal fingerprint database.
[0007] The beneficial effects of this invention are as follows: By constructing a unified reference coordinate system and a multi-dimensional signal fingerprint database, which contains three types of physical layer features—reference signal received power, timing advance, and angle of arrival—the fingerprint database can simultaneously reflect multi-dimensional information such as signal strength, ranging, and angle measurement, providing a rich data foundation for high-precision positioning. A weighted fingerprint matching method is used to obtain the first positioning result, and then positioning calculations based on timing advance and angle of arrival are performed to obtain a second positioning result with higher accuracy. This two-step positioning method achieves a leap in accuracy from regional level to sub-meter level. The fingerprint database is incrementally updated based on the deviation between the positioning result and the corresponding fingerprint vector in the database, enabling the fingerprint database to adapt to changes in the indoor dynamic environment and overcoming the shortcomings of traditional fingerprint databases, which are no longer updated after construction and whose accuracy continuously decreases after environmental changes.
[0008] Based on the above technical solution, the following improvements can be made.
[0009] Furthermore, the construction of a unified reference coordinate system for the target area includes: collecting the latitude and longitude coordinates of all indoor base stations within the target area and converting them into Cartesian coordinates; selecting multiple reference base stations from all indoor base stations that cover the target area and are distributed in different directions; and establishing the unified reference coordinate system with the center of the target area as the origin.
[0010] The beneficial effects of adopting the above-mentioned further scheme are: by pre-constructing a unified reference coordinate system, all sampling points and positioning results are expressed in the same coordinate system, avoiding the computational redundancy caused by the need to reconstruct a dedicated coordinate system for each terminal positioning in the traditional scheme, realizing the global reuse of the positioning reference, and reducing the server load during large-scale concurrent positioning.
[0011] Furthermore, in the multi-dimensional signal fingerprint database, the fingerprint vectors of unsampled points are estimated and completed using the Kriging interpolation algorithm.
[0012] The beneficial effect of adopting the above-mentioned further scheme is that by using the Kriging interpolation algorithm to perform spatial interpolation estimation on the fingerprint vectors of unsampled points, a complete fingerprint database covering the entire target area can be constructed based on a limited number of drive test sampling points, thereby reducing the sampling workload in the pre-deployment stage.
[0013] Furthermore, after acquiring the real-time physical layer measurement data of the terminal, the method further includes: calculating the variance of the reference signal received power based on the reference signal received power of each base station in the real-time physical layer measurement data of the terminal; when the variance is greater than a preset variance threshold, determining that there is dynamic interference, using the terminal's built-in sensor data to predict the terminal's current position through Kalman filtering, and extracting fingerprint vectors near the current position from the multi-dimensional signal fingerprint database to match with the terminal's real-time physical layer measurement data to exclude abnormal signal values.
[0014] The beneficial effects of adopting the above-mentioned further scheme are: dynamic interference is detected by the power variance of the reference signal reception, and when dynamic interference exists, the terminal's built-in sensor is used to perform Kalman filtering prediction and eliminate abnormal signal values, which effectively suppresses the interference of signal fluctuations caused by indoor dynamic obstacles on positioning accuracy.
[0015] Further, the step of performing weighted fingerprint matching based on the real-time physical layer measurement data and the multi-dimensional signal fingerprint database to obtain the first positioning result includes: constructing a real-time fingerprint vector of the terminal; calculating the weighted Euclidean distance between the real-time fingerprint vector and each fingerprint vector in the multi-dimensional signal fingerprint database, wherein the weighted Euclidean distance is obtained by multiplying the reference signal received power component, the timing advance component, and the angle of arrival component by their respective preset weights and then summing them, wherein the preset weight of the timing advance component is greater than the preset weight of the reference signal received power component; selecting the sampling point coordinates corresponding to multiple fingerprint vectors with the smallest weighted Euclidean distance, and performing weighted centroid calculation with the reciprocal of the weighted Euclidean distance as the weight to obtain the first positioning result.
[0016] The beneficial effect of adopting the above-mentioned further scheme is that the highest weight is assigned to the time advance component in the weighted fingerprint matching, because the time advance directly reflects the distance between the terminal and the base station. The weight allocation fully reflects the reliability differences of various physical layer features and improves the accuracy of fingerprint matching.
[0017] Furthermore, the formula for calculating the weighted Euclidean distance is as follows: ; Where w1, w2, and w3 are preset weighting coefficients. The reference signal is the Euclidean distance between the received power components. The Euclidean distance between the time advance components. This represents the Euclidean distance between the angular components.
[0018] The beneficial effect of adopting the above-mentioned further scheme is that the distance metrics of the three types of physical layer features are fused by a clear weighting formula, so that the weight allocation can be quantified and adjusted to adapt to the positioning needs of different indoor scenarios.
[0019] Furthermore, after obtaining the first positioning result, the method further includes: retrieving other online terminals within a preset range near the first positioning result to form a collaborative calibration group; using the time difference measurement data between any two terminals in the collaborative calibration group to construct a collaborative calibration equation set, and solving for the position correction amount of each terminal using the least squares method; and correcting the first positioning result according to the position correction amount.
[0020] The beneficial effects of adopting the above-mentioned further scheme are: by using the relative distance information measured by the time difference between multiple terminals for collaborative calibration, the positioning deviation caused by individual differences of terminals and local environmental disturbances can be effectively eliminated, thereby further improving the positioning accuracy.
[0021] Furthermore, the step of performing positioning calculations based on the first positioning result and the time advance and angle of arrival in the real-time physical layer measurement data to obtain the second positioning result includes: converting the time advance of each base station into the distance between the terminal and each base station; using the first positioning result as the initial value, constructing a system of positioning equations using the distance between the terminal and each base station and the angle of arrival, and solving the system using an iterative method to obtain the second positioning result.
[0022] The beneficial effects of adopting the above-mentioned further scheme are: using the first positioning result after weighted fingerprint matching and collaborative calibration correction as the initial value of the iteration, the positioning equation system is constructed by using the distance and angle of arrival converted by the time lead and iteratively solved, which can quickly converge to sub-meter accuracy, while avoiding iteration divergence or getting trapped in local optima.
[0023] Furthermore, the conversion formula for converting the time lead into distance is as follows: ; in, The distance between the terminal and the base station. Allowing for advance planning, The speed of light; The positioning equation set includes: a circle equation with each base station coordinate as the center and the corresponding distance as the radius, and a straight line equation composed of the tangent of the angle of arrival.
[0024] The beneficial effect of adopting the above-mentioned further scheme is that by jointly constructing a set of positioning equations using the circle equation and the straight line equation, and simultaneously using distance measurement information and angle measurement information for joint solution, the positioning geometric accuracy is significantly improved compared with positioning methods that use distance or angle alone.
[0025] Furthermore, the step of incrementally updating the multi-dimensional signal fingerprint database based on the deviation between the second positioning result and the corresponding fingerprint vector in the multi-dimensional signal fingerprint database includes: when a preset triggering condition is met, collecting the second positioning results and corresponding real-time fingerprint vectors of all terminals within the triggering area; calculating the confidence level of each real-time fingerprint vector relative to the corresponding fingerprint vector in the multi-dimensional signal fingerprint database; filtering real-time fingerprint vectors with confidence levels greater than a preset confidence level threshold, and incrementally updating the fingerprint vector at the corresponding position in the multi-dimensional signal fingerprint database using a weighted average method.
[0026] The beneficial effects of adopting the above-mentioned further scheme are: by ensuring confidence screening, only high-confidence positioning results are included in the fingerprint database update; by using the weighted average method for smooth updates, the fingerprint database can be gradually adapted to environmental changes while ensuring its accuracy.
[0027] Furthermore, the preset triggering conditions include at least one of the following: the positioning error of a preset number of terminals within a preset area exceeds a preset error threshold, a preset time interval is reached, or a change in base station configuration is detected.
[0028] The beneficial effects of adopting the above-mentioned further solution are: it provides multiple triggering conditions, which can not only respond in a timely manner to the decrease in positioning accuracy caused by environmental changes, but also maintain the timeliness of the fingerprint database through periodic updates, and at the same time be able to sense network-side changes such as base station configuration changes.
[0029] Furthermore, the formula for calculating the credibility is as follows: ; Where C represents credibility. The weighted Euclidean distance between the real-time fingerprint vector and the corresponding fingerprint vector in the multi-dimensional signal fingerprint database is given. This is the preset maximum distance.
[0030] The beneficial effect of adopting the above-mentioned further scheme is that the confidence level is inversely proportional to the fingerprint vector distance. The smaller the distance, the higher the confidence level. This calculation method intuitively reflects the consistency between real-time measurement and fingerprint database records.
[0031] Furthermore, the update formula for the weighted average method is as follows: ; in, For the updated fingerprint vector, The fingerprint vector before the update. This is the real-time fingerprint vector of the terminal. Weights are assigned to historical data.
[0032] The beneficial effects of adopting the above-mentioned further scheme are: the historical data weight α is relatively large (e.g., 0.8), which makes the update process smooth and gradual, avoids the impact of a single abnormal data on the fingerprint database, and ensures the stability of the fingerprint database.
[0033] Secondly, an indoor positioning system is provided, comprising: a fingerprint database construction module for constructing a unified reference coordinate system and a multi-dimensional signal fingerprint database for a target area, wherein the multi-dimensional signal fingerprint database includes a fingerprint vector corresponding to each sampling point among multiple sampling points in the unified reference coordinate system, and the fingerprint vector includes a reference signal received power, timing advance, and angle of arrival; a weighted fingerprint matching module for acquiring real-time physical layer measurement data of a terminal, and performing weighted fingerprint matching based on the real-time physical layer measurement data and the multi-dimensional signal fingerprint database to obtain a first positioning result; a precise positioning module for performing positioning calculation based on the first positioning result and the timing advance and angle of arrival in the real-time physical layer measurement data to obtain a second positioning result; and a fingerprint database update module for incrementally updating the multi-dimensional signal fingerprint database according to the deviation between the second positioning result and the corresponding fingerprint vector in the multi-dimensional signal fingerprint database.
[0034] Furthermore, the system also includes: an interference detection module, used to calculate the variance based on the reference signal received power of each base station in the real-time physical layer measurement data of the terminal; when the variance is greater than a preset variance threshold, Kalman filtering is used to predict and exclude abnormal signal values using the built-in sensor data of the terminal; and a collaborative calibration module, used to retrieve other online terminals within a preset range near the first positioning result to form a collaborative calibration group, and use the time difference measurement data between terminals in the group to solve for the position correction amount of each terminal to correct the first positioning result.
[0035] Thirdly, an electronic device is provided, the electronic device including a memory and one or more processors; the memory is coupled to the processors; wherein the memory stores computer program code, the computer program code including computer instructions, which, when executed by the processor, cause the electronic device to perform the method as described in any implementation of the first aspect.
[0036] Fourthly, a computer-readable storage medium is provided, including computer instructions that, when executed on an electronic device, cause the electronic device to perform a method as described in any implementation of the first aspect.
[0037] Fifthly, a computer program product is provided that, when run on a computer, causes the computer to perform the method in any implementation of the first aspect.
[0038] Understandably, the beneficial effects achieved by the system of the second aspect, the electronic device of the third aspect, the computer-readable storage medium of the fourth aspect, and the computer program product of the fifth aspect provided above can be referred to with reference to the beneficial effects of the first aspect and any of its possible design embodiments, which will not be repeated here. Attached Figure Description
[0039] Figure 1 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention; Figure 2 A flowchart illustrating an indoor positioning method provided in an embodiment of the present invention; Figure 3 This is a schematic diagram of an indoor positioning system provided in an embodiment of the present invention. Detailed Implementation
[0040] The technical solutions of the embodiments of the present invention will be described below with reference to the accompanying drawings. In the description of the present invention, unless otherwise stated, " / " indicates that the objects before and after are in an "or" relationship. For example, A / B can represent A or B. The "or" in the present invention is merely a description of the relationship between the related objects, indicating that three relationships can exist. For example, A or B can represent: A alone, A and B simultaneously, and B alone. A and B can be singular or plural. Furthermore, in the description of the present invention, unless otherwise stated, "multiple" refers to two or more. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items.
[0041] Furthermore, to facilitate a clear description of the technical solutions of the embodiments of the present invention, the terms "first" and "second" are used in the embodiments of the present invention to distinguish identical or similar items with essentially the same function and effect. Those skilled in the art will understand that the terms "first" and "second" do not limit the quantity or execution order, and that the terms "first" and "second" are not necessarily different.
[0042] In this embodiment of the invention, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design described as "exemplary" or "for example" in this embodiment of the invention should not be construed as superior or more advantageous than other embodiments or designs. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a concrete manner for ease of understanding.
[0043] With the continuous implementation of indoor business scenarios such as smart shopping malls, underground parking garages, industrial plants, and underground rail transit, satellite navigation signals are completely blocked by building walls. Indoor high-precision location perception has become an essential underlying support capability for IoT, emergency rescue, and passenger flow analysis. How to achieve low-cost, universal indoor positioning without additional terminal authorization based on existing mobile communication base stations has become an important research direction in the field of mobile communication network optimization.
[0044] In related technologies, indoor positioning solutions based on base station network sensing data are commonly used. By selecting high-quality cell base stations to establish a temporary local coordinate system, and dividing independent sub-regions according to signal strength intervals to complete the terminal location determination, the entire process does not require the addition of dedicated hardware such as Bluetooth or UWB. Basic indoor positioning capabilities can be achieved by simply reusing existing cellular network equipment, which greatly reduces the deployment cost of the positioning system.
[0045] However, this solution has inherent limitations in adapting to dynamic indoor scenarios. Positioning relies on shallow network metrics, lacks high-precision physical layer measurement data, cannot reuse the coordinate system globally, incurs high concurrent computing overhead, and lacks environmental interference recognition and multi-terminal collaborative correction mechanisms, making it difficult to consistently achieve the required positioning accuracy. Therefore, this invention provides an indoor positioning method, comprising: constructing a unified reference coordinate system and a multi-dimensional signal fingerprint database for the target area, wherein the multi-dimensional signal fingerprint database includes a fingerprint vector corresponding to each sampling point in multiple sampling points of the unified reference coordinate system, and the fingerprint vector includes reference signal received power, timing advance, and angle of arrival; acquiring real-time physical layer measurement data from the terminal; performing weighted fingerprint matching based on the real-time physical layer measurement data and the multi-dimensional signal fingerprint database to obtain a first positioning result; performing positioning calculation based on the first positioning result and the timing advance and angle of arrival in the real-time physical layer measurement data to obtain a second positioning result; and incrementally updating the multi-dimensional signal fingerprint database according to the deviation between the second positioning result and the corresponding fingerprint vector in the multi-dimensional signal fingerprint database.
[0046] The method provided by this invention constructs a unified reference coordinate system and a multi-dimensional signal fingerprint database containing reference signal received power, timing advance, and angle of arrival. A first positioning result is obtained through weighted fingerprint matching. A second positioning result is then obtained through precise positioning calculation based on the timing advance and angle of arrival. Finally, the fingerprint database is incrementally updated according to the positioning results, achieving a leap in accuracy from regional level to sub-meter level. In some embodiments, the indoor positioning method provided by this invention can be executed by an indoor positioning system 100.
[0047] As an example, the indoor positioning system 100 can be any electronic device 200 with data processing capabilities, such as a general-purpose computer, personal computer, laptop computer, switch, or tablet computer. The specific implementation of the indoor positioning system 100 is not limited here.
[0048] Figure 1 A schematic diagram of the hardware structure of an electronic device provided in an embodiment of the present invention is shown. The electronic device 200 includes a processor 210, a memory 220, and a communication interface 230.
[0049] Processor 210 may include one or more processing cores. Processor 210 connects to various parts within electronic device 200 using various interfaces and lines, and performs various functions and processes data of electronic device 200 by running or executing instructions, programs, code sets, or instruction sets stored in memory 220, and by calling data stored in memory 220. Optionally, processor 210 may be implemented using at least one of the following hardware forms: Central Processing Unit (CPU), Graphics Processing Unit (GPU), Digital Signal Processing (DSP), Field-Programmable Gate Array (FPGA), and Programmable Logic Array (PLA).
[0050] The memory 220 may include random access memory (RAM) or read-only memory (ROM). Optionally, the memory 220 may include a non-transitory computer-readable storage medium. The memory 220 may be used to store instructions, programs, code, code sets, or instruction sets. The memory 220 may include a program storage area. This program storage area may store instructions for implementing an operating system, instructions for implementing at least one function, instructions for implementing the various method embodiments described above, etc.
[0051] Communication interface 230 is used to communicate with other devices, equipment or communication networks, such as data storage devices, image processing devices or Ethernet, wireless access network (RAN), wireless local area network (WLAN), etc.
[0052] In terms of physical implementation, the aforementioned devices (such as processor 210, memory 220, and communication interface 230) can each be devices within the same device (such as a laptop computer). Alternatively, at least two of these devices can be located within the same device, i.e., as different devices within the same device, similar to the deployment of devices or components in a distributed system.
[0053] It is understood that the structure illustrated in this embodiment does not constitute a specific limitation on the electronic device 200. In other embodiments of the present invention, the electronic device 200 may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
[0054] The following description, in conjunction with the accompanying drawings, illustrates an indoor positioning method provided by an embodiment of the present invention.
[0055] Figure 2 This is a flowchart illustrating an indoor positioning method provided in an embodiment of the present invention. Optionally, this method can be... Figure 1 The illustrated electronic device 200 performs this method, which includes the following steps: S1. Construct a unified reference coordinate system and a multi-dimensional signal fingerprint database for the target region.
[0056] Specifically, the multi-dimensional signal fingerprint database includes a fingerprint vector corresponding to each sampling point in the unified reference coordinate system. The fingerprint vector includes the reference signal received power, timing advance, and angle of arrival.
[0057] The target area is an enclosed space requiring indoor positioning, such as shopping malls, office buildings, underground parking garages, factory workshops, hospitals, and subway stations. K indoor base stations are deployed within the target area.
[0058] In some embodiments, constructing a unified reference coordinate system for the target region includes: Collect the latitude and longitude coordinates of all indoor base stations within the target area and convert them into Cartesian coordinates; select multiple reference base stations that cover the target area and are distributed in different directions from all indoor base stations; establish the unified reference coordinate system with the center of the target area as the origin.
[0059] For example, constructing a unified reference coordinate system for the target area includes: collecting the latitude and longitude coordinates (B) of all indoor base stations within the target area. i ,L i ), i=1,2,...,K, convert to Cartesian coordinates (x i ,y i The conversion formula is: , Where R is the Earth's radius. The latitude and longitude of the target area center.
[0060] From all indoor base stations, select M reference base stations (M≥3) that cover the target area and are distributed in different directions. The reference base stations are required to be distributed in different directions within the target area (azimuth difference ≥60°) and have an average signal strength ≥-85dBm. Then, with the center of the target area as the origin, east as the positive X-axis direction, and north as the positive Y-axis direction, establish the unified reference coordinate system O-XY.
[0061] In one example, taking a large shopping mall (200 meters long and 150 meters wide, with a total of 12 indoor base stations) as an example, four reference base stations (with azimuth angles of 45°, 135°, 225°, and 315° respectively) distributed in the four corners of the mall were selected. A reference coordinate system was established with the center of the mall as the origin, and the grid was divided into 1-meter × 1-meter sections, with a total of 30,000 sampling points.
[0062] Specifically, the fingerprint vector is defined as follows: F(p)=[RSRP1(p),RSRP2(p),...,RSRP K (p),TA1(p),TA2(p),...,TA K (p),AoA1(p),AoA2(p),...,AoA K (p)]; Where p=(x,y) are the coordinates of the sampling point in the unified reference coordinate system, RSRP i (p) represents the received power (in dBm) of the reference signal received at sampling point p from base station i. i (p) represents the time advance between sampling point p and base station i (unit: Ts, 1Ts=0.52μs), AoA i (p) is the angle of arrival (in °, ranging from 0° to 360°) of the terminal signal received by base station i.
[0063] Within the target area, sampling points are divided into 1-meter × 1-meter grids. The fingerprint vector of each sampling point is collected using road testing equipment to generate an initial fingerprint database.
[0064] In some embodiments, the fingerprint vectors of unsampled points in the multi-dimensional signal fingerprint database are estimated and completed using the Kriging interpolation algorithm.
[0065] Specifically, the complete formula is as follows: ; Where, p i For the k sampling points closest to p, λ i For interpolation weights, satisfying: =1; The method provided by this invention uses the Kriging interpolation algorithm to spatially interpolate and estimate the fingerprint vectors of unsampled points. It can build a complete fingerprint database covering the entire target area based on a limited number of drive test sampling points, thereby reducing the sampling workload in the pre-deployment stage.
[0066] S2. Obtain the real-time physical layer measurement data of the terminal, and perform weighted fingerprint matching based on the real-time physical layer measurement data and the multi-dimensional signal fingerprint database to obtain the first positioning result.
[0067] Specifically, the real-time physical layer measurement data reported by the terminal to the server includes: the Reference Signal Received Power (RSRP) of all connected base stations. i Lead Time (TA) i Angle of arrival AoA i (i=1,2,...,k, where k is the number of base stations connected to the terminal), as well as data from the terminal's built-in sensors (acceleration, angular velocity, barometer altitude, etc.) and reporting timestamps.
[0068] In one possible implementation, after acquiring the real-time physical layer measurement data of the terminal, the method further includes: Based on the reference signal received power of each base station in the real-time physical layer measurement data of the terminal, the variance of the reference signal received power is calculated; when the variance is greater than a preset variance threshold, dynamic interference is determined to exist, the current position of the terminal is predicted by Kalman filtering using the built-in sensor data of the terminal, and the fingerprint vector near the current position is extracted from the multi-dimensional signal fingerprint database and matched with the real-time physical layer measurement data of the terminal to eliminate abnormal signal values.
[0069] This can also be understood as follows: after acquiring the real-time physical layer measurement data of the terminal, the method further includes dynamic environmental interference detection and preliminary correction.
[0070] For example, calculate the variance of the current reference signal received power of the terminal: in, Let be the average received power of the reference signals from k base stations. When When the variance exceeds a preset threshold (e.g., 15 dBm²), dynamic interference is identified. The terminal's current position is then predicted using Kalman filtering based on the terminal's acceleration and angular velocity data. Extract from fingerprint database The fingerprint vectors within a 3-meter radius are matched with the current fingerprint vector of the terminal to exclude abnormal signal values.
[0071] In one possible implementation, the step of performing weighted fingerprint matching based on the real-time physical layer measurement data and the multi-dimensional signal fingerprint database to obtain a first positioning result includes: Construct the real-time fingerprint vector of the terminal; calculate the weighted Euclidean distance between the real-time fingerprint vector and each fingerprint vector in the multi-dimensional signal fingerprint database. The weighted Euclidean distance is obtained by multiplying the reference signal received power component, the timing advance component, and the angle of arrival component by their respective preset weights and then summing them, wherein the preset weight of the timing advance component is greater than the preset weight of the reference signal received power component; select the sampling point coordinates corresponding to the multiple fingerprint vectors with the smallest weighted Euclidean distance, and calculate the weighted centroid using the reciprocal of the weighted Euclidean distance as the weight to obtain the first positioning result.
[0072] Specifically, firstly, the real-time fingerprint vector of the terminal is constructed: .
[0073] calculate Weighted Euclidean distance to each fingerprint vector F(p) in the fingerprint database: ; Where w1, w2, and w3 are preset weighting coefficients. The reference signal is the Euclidean distance between the received power components. The Euclidean distance between the time advance components. This represents the Euclidean distance between the angular components.
[0074] For example, w1=0.2, w2=0.5, w3=0.3, where the timing lead directly reflects the distance between the terminal and the base station and has the highest weight; the angle of arrival is next; and the reference signal received power is easily affected by environmental interference and has the lowest weight.
[0075] Then, the sampling point coordinates p1, p2, and p3 corresponding to the three fingerprint vectors with the smallest weighted Euclidean distance are selected, and the weighted centroid is calculated using the reciprocal of the weighted Euclidean distance as the weight, to obtain the first positioning result. .
[0076] In some embodiments, after obtaining the first positioning result, the method further includes: retrieving other online terminals within a preset range near the first positioning result and forming a collaborative calibration group; using the time difference measurement data between any two terminals in the collaborative calibration group to construct a collaborative calibration equation set, and solving for the position correction amount of each terminal using the least squares method; and correcting the first positioning result according to the position correction amount.
[0077] Specifically, other online terminals within a preset range (e.g., 10 meters) near the first positioning result are retrieved to form a collaborative calibration group. .
[0078] Using any two terminals within the collaborative calibration group and Using the time difference of time (TDOA) data measured between base stations, a set of collaborative calibration equations is constructed.
[0079] It should be understood that the cooperative calibration equation set is as follows: .
[0080] in, For the terminal Position correction amount.
[0081] Then, the position correction amount of each terminal is solved by the least squares method, and the first positioning result is corrected according to the position correction amount to obtain the corrected first positioning result.
[0082] S3. Based on the first positioning result and the time advance and angle of arrival in the real-time physical layer measurement data, a positioning calculation is performed to obtain a second positioning result.
[0083] In one possible implementation, the step of performing positioning calculations based on the first positioning result and the time advance and angle of arrival in the real-time physical layer measurement data to obtain a second positioning result includes: The time advance of each base station is converted into the distance between the terminal and each base station; using the first positioning result as the initial value, a system of positioning equations is constructed using the distance between the terminal and each base station and the angle of arrival, and solved using an iterative method to obtain the second positioning result.
[0084] Specifically, the conversion formula for converting the time lead into distance is as follows: ; in, The distance between the terminal and the base station. Allowing for advance planning, The speed of light; For example, TA=2Ts corresponds to a distance of approximately 312 meters.
[0085] Using the corrected first positioning result as the initial value, a set of positioning equations is constructed using the distance between the terminal and each base station and the angle of arrival. The set of positioning equations includes: a circle equation with each base station coordinate as the center and the corresponding distance as the radius, and a straight line equation composed of the tangent of the angle of arrival.
[0086] For example, the system of positioning equations is as follows: The second positioning result was obtained by solving the system of equations using Newton's iterative method.
[0087] As an example, a terminal connects to six base stations with TA values of 2Ts, 3Ts, 5Ts, 7Ts, 9Ts, and 12Ts, which translate to distances ranging from approximately 312 meters to 1872 meters, and AoA values distributed between 30° and 150°. Using the corrected first positioning result (50.5, 30.1 meters) as the initial value, the Newton-Raphson iteration method converges three times to obtain the second positioning result (50.6, 30.0 meters), with a positioning error of approximately 0.2 meters.
[0088] S4. Based on the deviation between the second positioning result and the corresponding fingerprint vector in the multi-dimensional signal fingerprint database, the multi-dimensional signal fingerprint database is incrementally updated.
[0089] In one possible implementation, the step of incrementally updating the multi-dimensional signal fingerprint database based on the deviation between the second positioning result and the corresponding fingerprint vector in the multi-dimensional signal fingerprint database includes: When the preset triggering conditions are met, the second positioning results and corresponding real-time fingerprint vectors of all terminals within the triggering area are collected; the credibility of each real-time fingerprint vector relative to the corresponding fingerprint vector in the multi-dimensional signal fingerprint database is calculated; real-time fingerprint vectors with credibility greater than the preset credibility threshold are selected, and the fingerprint vector at the corresponding position in the multi-dimensional signal fingerprint database is incrementally updated using a weighted average method.
[0090] Specifically, the preset triggering conditions include at least one of the following: the positioning error of a preset number of terminals in a preset area exceeds a preset error threshold, a preset time interval is reached, or a change in base station configuration is detected.
[0091] For example, the positioning error of 10 consecutive locations within a preset area exceeds 1 meter, the location arrives at a preset time interval of 1 hour, or a new or removed base station is detected.
[0092] Calculate the confidence level of each real-time fingerprint vector relative to the corresponding fingerprint vector in the multi-dimensional signal fingerprint database; The calculation formula is: ; Where C represents credibility. The weighted Euclidean distance between the real-time fingerprint vector and the corresponding fingerprint vector in the multi-dimensional signal fingerprint database is given. Set the maximum distance (e.g., 20dBm).
[0093] Real-time fingerprint vectors with a confidence level greater than a preset confidence threshold (e.g., 0.7) are selected, and a weighted average method is used to incrementally update the fingerprint vectors at the corresponding positions in the multi-dimensional signal fingerprint database. The update formula for the weighted average method is as follows: ; in, For the updated fingerprint vector, The fingerprint vector before the update. This is the real-time fingerprint vector of the terminal. Weights are assigned to historical data.
[0094] As an example, a shelf in a certain area on the first floor of a shopping mall shifted, causing the positioning error of 12 consecutive terminals in that area to exceed 1 meter, triggering a fingerprint database update. Positioning results and fingerprint vectors from 20 terminals in that area were collected, and 15 fingerprint vectors with a confidence level greater than 0.7 were selected. A weighted average method was used to update the fingerprint database for that area, and the positioning error was restored to within 0.5 meters after the update.
[0095] The method provided by this invention uses an incremental update mechanism driven by the deviation between the positioning result and the corresponding fingerprint vector in the fingerprint database. This enables the fingerprint database to adapt to changes in signal distribution caused by dynamic factors such as shelf movement and changes in pedestrian flow in the indoor environment. This overcomes the shortcomings of traditional fingerprint databases, which are no longer updated after construction and whose accuracy continues to decline after environmental changes.
[0096] As can be seen from S1-S4 above, the method provided by the embodiments of the present invention realizes the global reuse of the positioning reference by constructing a unified reference coordinate system and a multi-dimensional signal fingerprint database containing reference signal received power, timing advance, and angle of arrival; a first positioning result is obtained by weighted fingerprint matching, and a second positioning result is obtained by precise positioning calculation based on timing advance and angle of arrival. The two-step positioning method achieves a leap in accuracy from regional level to sub-meter level; the incremental update mechanism driven by positioning result enables the fingerprint database to continuously adapt to environmental changes, forming a complete positioning and adaptive maintenance closed loop.
[0097] The foregoing mainly describes the solutions of the embodiments of the present invention from a methodological perspective. It is understood that, in order to achieve the above-mentioned functions, the indoor positioning system 100 includes at least one of the hardware structures and software modules corresponding to the execution of each function. Those skilled in the art should readily recognize that, in conjunction with the units and algorithm steps of the various examples described in the embodiments disclosed herein, the embodiments of the present invention can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed in hardware or by computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the embodiments of the present invention.
[0098] In this embodiment of the invention, the indoor positioning system 100 can be divided into functional units according to the above method example. For example, the indoor positioning system 100 can be divided into functional units corresponding to various functions, or two or more functions can be integrated into one processing unit. The integrated unit can be implemented in hardware or as a software functional unit. It should be noted that the unit division in this embodiment of the invention is illustrative and only represents one logical functional division; other division methods may be used in actual implementation.
[0099] For example, Figure 3 A schematic diagram of an indoor positioning system provided by an embodiment of the present invention is shown. The indoor positioning system 100 includes: a fingerprint database construction module 110, used to construct a unified reference coordinate system and a multi-dimensional signal fingerprint database for a target area, wherein the multi-dimensional signal fingerprint database includes a fingerprint vector corresponding to each sampling point in a plurality of sampling points of the unified reference coordinate system, and the fingerprint vector includes a reference signal received power, timing advance, and angle of arrival; a weighted fingerprint matching module 120, used to acquire real-time physical layer measurement data of the terminal, and perform weighted fingerprint matching based on the real-time physical layer measurement data and the multi-dimensional signal fingerprint database to obtain a first positioning result; a precise positioning module 130, used to perform positioning calculation based on the first positioning result and the timing advance and angle of arrival in the real-time physical layer measurement data to obtain a second positioning result; and a fingerprint database update module 140, used to incrementally update the multi-dimensional signal fingerprint database according to the deviation between the second positioning result and the corresponding fingerprint vector in the multi-dimensional signal fingerprint database.
[0100] Furthermore, the system also includes: an interference detection module 150, used to calculate the variance based on the reference signal received power of each base station in the real-time physical layer measurement data of the terminal; when the variance is greater than a preset variance threshold, it uses the built-in sensor data of the terminal to perform Kalman filtering prediction and eliminate abnormal signal values; and a collaborative calibration module 160, used to retrieve other online terminals within a preset range near the first positioning result to form a collaborative calibration group, and use the time difference measurement data between terminals in the group to solve the position correction amount of each terminal to correct the first positioning result.
[0101] It should be understood that specific descriptions of the above-mentioned optional methods can be found in the foregoing method embodiments, and will not be repeated here. Furthermore, explanations of any of the indoor positioning systems 100 provided above, as well as descriptions of their beneficial effects, can be found in the corresponding method embodiments described above, and will not be repeated here.
[0102] This invention also provides a computer-readable storage medium storing at least one computer instruction, which is loaded and executed by a processor to implement the methods of the various embodiments described above. Explanations of the relevant content and descriptions of the beneficial effects of any of the computer-readable storage media provided above can be found in the corresponding embodiments described above, and will not be repeated here.
[0103] This invention also provides a chip. This chip integrates a control circuit for implementing the functions of the aforementioned indoor positioning system 100 and one or more ports. Optionally, the functions supported by this chip are as described above and will not be repeated here.
[0104] Those skilled in the art will understand that the program for implementing all or part of the steps of the above embodiments, which can be executed by a program instructing related hardware, can be stored in a computer-readable storage medium. The storage medium mentioned above can be a read-only memory, a random access memory, etc. The processing unit or processor mentioned above can be a central processing unit, a general-purpose processor, an application-specific integrated circuit (ASIC), a microprocessor (DSP), a field-programmable gate array (FPGA), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof.
[0105] This invention also provides a computer program product containing instructions that, when executed on a computer, cause the computer to perform any of the methods described in the above embodiments. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the flow or function according to the embodiments of this invention is generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, computer instructions can be transmitted from one website, computer, server, or data center to another via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium accessible to a computer or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., SSD), etc.
[0106] It should be noted that the devices for storing computer instructions or computer programs provided in the embodiments of the present invention, such as, but not limited to, the aforementioned memory, computer-readable storage medium, and communication chip, are all non-transitory. Those skilled in the art should recognize that the functions described in the embodiments of the present invention in one or more of the above examples can be implemented using hardware, software, firmware, or any combination thereof. When implemented using software, these functions can be stored in a computer-readable storage medium or transmitted as one or more instructions or code on a computer-readable storage medium. Computer-readable storage media include computer storage media and communication media, wherein communication media include any medium that facilitates the transmission of computer programs from one place to another. Storage media can be any available medium accessible to general-purpose or special-purpose computers.
[0107] Although embodiments of the present invention have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those skilled in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of the present invention.
Claims
1. An indoor positioning method, characterized in that, The method includes: A unified reference coordinate system and a multi-dimensional signal fingerprint database are constructed for the target area. The multi-dimensional signal fingerprint database includes the fingerprint vector corresponding to each sampling point in the multiple sampling points of the unified reference coordinate system. The fingerprint vector includes the reference signal received power, time advance, and angle of arrival. The terminal's real-time physical layer measurement data is acquired, and a weighted fingerprint matching is performed between the real-time physical layer measurement data and the multi-dimensional signal fingerprint database to obtain a first positioning result. Based on the first positioning result and the time advance and angle of arrival in the real-time physical layer measurement data, a second positioning result is obtained; Based on the deviation between the second positioning result and the corresponding fingerprint vector in the multi-dimensional signal fingerprint database, the multi-dimensional signal fingerprint database is incrementally updated.
2. The method according to claim 1, characterized in that, The unified reference coordinate system for constructing the target region includes: Collect the latitude and longitude coordinates of all indoor base stations within the target area and convert them into Cartesian coordinates; Multiple reference base stations covering the target area and distributed in different directions are selected from all indoor base stations; A unified reference coordinate system is established with the center of the target area as the origin.
3. The method according to claim 1, characterized in that, In the multi-dimensional signal fingerprint database, the fingerprint vectors of unsampled points are estimated and completed using the Kriging interpolation algorithm.
4. The method according to claim 1, characterized in that, After acquiring the real-time physical layer measurement data of the terminal, the method further includes: The variance of the reference signal received power is calculated based on the reference signal received power of each base station in the real-time physical layer measurement data of the terminal. When the variance is greater than a preset variance threshold, dynamic interference is determined to exist. The current position of the terminal is predicted by Kalman filtering using the built-in sensor data of the terminal. The fingerprint vector near the current position is extracted from the multi-dimensional signal fingerprint database and matched with the real-time physical layer measurement data of the terminal to eliminate abnormal signal values.
5. The method according to claim 1, characterized in that, The step of performing weighted fingerprint matching based on the real-time physical layer measurement data and the multi-dimensional signal fingerprint database to obtain a first positioning result includes: Construct the real-time fingerprint vector of the terminal; The weighted Euclidean distance between the real-time fingerprint vector and each fingerprint vector in the multi-dimensional signal fingerprint database is calculated. The weighted Euclidean distance is obtained by multiplying the reference signal received power component, the timing advance component, and the angle of arrival component by their respective preset weights and then summing them. The preset weight of the timing advance component is greater than the preset weight of the reference signal received power component. The coordinates of the sampling points corresponding to the multiple fingerprint vectors with the smallest weighted Euclidean distance are selected, and the weighted centroid is calculated using the reciprocal of the weighted Euclidean distance as the weight to obtain the first positioning result.
6. The method according to claim 5, characterized in that, The formula for calculating the weighted Euclidean distance is: ; Where w1, w2, and w3 are preset weighting coefficients. The reference signal is the Euclidean distance between the received power components. The Euclidean distance between the time advance components. This represents the Euclidean distance between the angular components.
7. The method according to claim 1, characterized in that, After obtaining the first positioning result, the method further includes: Search for other online terminals within a preset range near the first positioning result and form a collaborative calibration group; Using the time difference measurement data between any two terminals in the collaborative calibration group, a set of collaborative calibration equations is constructed, and the position correction of each terminal is solved by the least squares method. The first positioning result is corrected based on the position correction amount.
8. The method according to claim 1, characterized in that, The second positioning result is obtained by performing positioning calculations based on the first positioning result and the time advance and angle of arrival in the real-time physical layer measurement data, including: The time advance of each base station is converted into the distance between the terminal and each base station; Using the first positioning result as the initial value, a set of positioning equations is constructed using the distance between the terminal and each base station and the angle of arrival, and then solved using an iterative method to obtain the second positioning result.
9. The method according to claim 8, characterized in that, The formula for converting the time advance into distance is: ; in, The distance between the terminal and the base station. Allowing for advance planning, The speed of light; The positioning equation set includes: a circle equation with each base station coordinate as the center and the corresponding distance as the radius, and a straight line equation composed of the tangent of the angle of arrival.
10. The method according to claim 1, characterized in that, The step of incrementally updating the multi-dimensional signal fingerprint database based on the deviation between the second positioning result and the corresponding fingerprint vector in the multi-dimensional signal fingerprint database includes: When the preset triggering conditions are met, collect the second positioning results and corresponding real-time fingerprint vectors of all terminals within the triggering area; Calculate the confidence level of each real-time fingerprint vector relative to the corresponding fingerprint vector in the multi-dimensional signal fingerprint database; Real-time fingerprint vectors with a confidence level greater than a preset confidence level threshold are selected, and the corresponding fingerprint vectors in the multi-dimensional signal fingerprint database are incrementally updated using a weighted average method.
11. The method according to claim 10, characterized in that, The preset triggering conditions include at least one of the following: the positioning error of a preset number of terminals within a preset area exceeds a preset error threshold, a preset time interval is reached, or a change in base station configuration is detected.
12. The method according to claim 10, characterized in that, The formula for calculating the credibility is: ; Where C represents credibility. The weighted Euclidean distance between the real-time fingerprint vector and the corresponding fingerprint vector in the multi-dimensional signal fingerprint database is given. This is the preset maximum distance.
13. The method according to claim 10, characterized in that, The update formula for the weighted average method is as follows: ; in, For the updated fingerprint vector, The fingerprint vector before the update. This is the real-time fingerprint vector of the terminal. Weights are assigned to historical data.
14. An indoor positioning system, characterized in that, include: The fingerprint database construction module is used to construct a unified reference coordinate system and a multi-dimensional signal fingerprint database for the target area. The multi-dimensional signal fingerprint database includes a fingerprint vector corresponding to each sampling point in multiple sampling points of the unified reference coordinate system. The fingerprint vector includes the reference signal received power, timing advance, and angle of arrival. The weighted fingerprint matching module is used to acquire real-time physical layer measurement data of the terminal, and perform weighted fingerprint matching based on the real-time physical layer measurement data and the multi-dimensional signal fingerprint database to obtain a first positioning result; The precise positioning module is used to perform positioning calculations based on the first positioning result and the time advance and angle of arrival in the real-time physical layer measurement data to obtain a second positioning result. The fingerprint database update module is used to incrementally update the multi-dimensional signal fingerprint database based on the deviation between the second positioning result and the corresponding fingerprint vector in the multi-dimensional signal fingerprint database.
15. The system according to claim 14, characterized in that, Also includes: The interference detection module is used to calculate the variance based on the reference signal received power of each base station in the real-time physical layer measurement data of the terminal. When the variance is greater than a preset variance threshold, the module uses the built-in sensor data of the terminal to perform Kalman filtering prediction and eliminate abnormal signal values. The collaborative calibration module is used to retrieve other online terminals within a preset range near the first positioning result to form a collaborative calibration group, and use the time difference measurement data between the terminals in the group to solve the position correction amount of each terminal to correct the first positioning result.
16. An electronic device, characterized in that, It includes a processor and a memory; the memory is used to store a computer program; the processor is used to implement the method as described in any one of claims 1 to 13 by invoking the computer program.
17. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores at least one computer program, which is loaded and executed by a processor to enable the computer to implement the method as described in any one of claims 1 to 13.