Indoor positioning method, computer-readable storage medium, and computer device

By combining the filtering processing of ultrasonic signals and the inertial measurement unit (IMU) with the CHAN algorithm, the problems of high cost and low precision in indoor positioning in the existing technology are solved, and a low-cost, high-precision indoor positioning method is realized.

CN115930972BActive Publication Date: 2025-09-05GUILIN UNIV OF ELECTRONIC TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310072040.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-01-31
Publication Date
2025-09-05
Estimated Expiration
2043-01-31

AI Technical Summary

Technical Problem

Existing indoor positioning technologies are difficult to achieve both low cost and high precision, and a single technology has shortcomings in positioning accuracy and cost.

Method used

Combining ultrasonic signals and inertial measurement units (IMUs), multiple positioning is performed through filtering processing and the CHAN algorithm based on acoustic signals to estimate the step length and correct the heading angle drift, and the position is estimated by fusion positioning.

Benefits of technology

It improves the step length estimation accuracy, alleviates the heterogeneity of mobile terminals, and achieves low-cost, high-precision indoor positioning, which is suitable for different terminals and scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115930972B_ABST
    Figure CN115930972B_ABST
Patent Text Reader

Abstract

The present application is applicable to the field of indoor positioning and provides an indoor positioning method, a computer-readable storage medium, and a computer device. The method includes: receiving ultrasonic signals collected by a mobile terminal and inertial data collected by an IMU; filtering the ultrasonic signals and inertial data; using the CHAN algorithm based on acoustic signals to perform multiple positioning to obtain the initial position of the mobile terminal based on the filtered ultrasonic signals; estimating the step length of the current step using the step lengths of the previous two steps or more; correcting the heading angle drift and static drift of different mobile terminals based on the filtered inertial data to obtain the corrected direction of the current step; and performing fusion positioning based on the position of the previous step of the mobile terminal, the estimated current step length, and the corrected direction of the current step to estimate the current position of the mobile terminal. The present application has great versatility and flexibility for different mobile terminals and scenarios. It is compatible with mobile terminals, has low cost, and high accuracy.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of indoor positioning, and specifically relates to an indoor positioning method, a computer-readable storage medium, and a computer device. Background Art

[0002] Driven by technological advancements and societal needs, location-based services (LBS) have emerged and become a highly sought-after research topic in recent years. According to statistics, 80% of human activities occur indoors. Indoor positioning technology is increasingly in demand for indoor navigation services and material location. Industry insiders and experts agree that LBS will become the industry standard. It holds immense social and commercial value and boasts broad application prospects. While the Global Navigation Satellite System (GNSS) can already meet all-weather positioning requirements in outdoor environments, weak signals caused by obstruction by buildings make it difficult to meet the requirements of indoor environments. In recent years, indoor positioning has become a highly challenging topic and a research hotspot.

[0003] Researchers have conducted a series of research works in ultra-wideband (UWB) positioning, Wi-Fi positioning, infrared positioning, radio frequency identification (RFID) positioning, Bluetooth positioning, geomagnetic positioning, visual positioning, and ultrasonic positioning. Indoor positioning methods based on ultra-wideband can achieve high positioning accuracy and good stability. Infrared-based indoor positioning methods have high power consumption and are blocked by indoor walls or obstacles. Therefore, they are only used in some special scenarios. Indoor positioning methods based on Wi-Fi and Bluetooth are low-cost and easy to promote. However, data collection takes a lot of time. Indoor positioning methods based on RFID have high accuracy but require additional infrastructure costs. Geomagnetic sequences are greatly affected by surrounding ferromagnetic materials. Establishing a fingerprint database requires huge manpower and needs to be updated once the environment changes, which is a pain point. Indoor positioning methods based on vision have good visibility. However, positioning performance is limited by lighting conditions and it cannot effectively protect privacy.

[0004] Among all positioning signals, ultrasonic signals are compatible with mobile devices, enabling data transmission and reception using only mobile devices. Ultrasonic positioning is well-suited for scenarios without additional infrastructure and offers high accuracy at low propagation speeds. Positioning is achieved through time correlation and low computational complexity, making ultrasonic positioning one of the most competitive indoor positioning technologies. However, due to reflections, refractions, obstructions, and interference from other frequency signals when acoustic signals propagate indoors, unexpected errors can occur during positioning, leading to a decrease in positioning accuracy in some cases.

[0005] Pedestrian dead reckoning (PDR) is an indoor positioning method that estimates the user's position based on the user's walking characteristics. At the same time, the pedestrian's motion information is captured by an inertial measurement unit (IMU) (such as accelerometer, gyroscope and magnetometer) installed on the mobile device. It has good positioning accuracy in a short period of time and is suitable for real-time positioning tracking of fast-moving users. However, PDR relies on other positioning technologies to provide an accurate initial position, and there is a cumulative positioning error in long-term positioning. Therefore, PDR technology is generally combined with other indoor positioning technologies.

[0006] In summary, existing indoor positioning methods that use a single technology are difficult to achieve both low cost and high accuracy. Summary of the Invention

[0007] The purpose of this application is to provide a low-cost and high-precision indoor positioning method, a computer-readable storage medium, and a computer device.

[0008] In a first aspect, the present application provides an indoor positioning method, the method comprising the following steps:

[0009] S101, receiving ultrasonic signals collected by a mobile terminal and inertial data collected by an inertial measurement unit (IMU);

[0010] S102, filtering the ultrasonic signal and inertial data;

[0011] S103, performing multiple positioning operations based on the filtered ultrasonic signal using the acoustic signal-based CHAN algorithm to obtain an initial position of the mobile terminal;

[0012] S104, using the step lengths of two or more previous steps to estimate the step length of the current step;

[0013] S105, correcting the heading angle drift and static drift of different mobile terminals based on the filtered inertial data to obtain the corrected current step direction;

[0014] S106: Estimate the current position of the mobile terminal by performing fusion positioning based on the previous step position of the mobile terminal, the estimated current step length, and the corrected current step direction.

[0015] In a second aspect, the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the indoor positioning method as described above are implemented.

[0016] In a third aspect, the present application provides a computer device, comprising:

[0017] one or more processors;

[0018] Memory; and

[0019] One or more computer programs, the processor and the memory are connected via a bus, wherein the one or more computer programs are stored in the memory and are configured to be executed by the one or more processors, and the steps of the indoor positioning method are implemented when the processor executes the computer program.

[0020] In this application, the step length of the current step is estimated using the step lengths of the previous two or more steps. The heading angle drift and static drift of different mobile terminals are corrected based on filtered inertial data to obtain the corrected direction of the current step. This provides more accurate step length information, thereby improving step length estimation accuracy, alleviating the heterogeneity of mobile terminals, and achieving a higher position estimate. Furthermore, due to the integration of the acoustic signal-based CHAN algorithm and the optimized PDR algorithm, S104 and S105 are optimized PDR algorithms. Therefore, they have great versatility and flexibility for different mobile terminals and scenarios, are compatible with mobile terminals, are low-cost, and have high accuracy. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] Figure 1 This is a flow chart of an indoor positioning method provided by an embodiment of the present application.

[0022] Figure 2 This is a geometric position diagram of an anchor point estimated by an ultrasonic signal in an indoor positioning method provided by an embodiment of the present application.

[0023] Figure 3 This is a specific structural block diagram of a computer device provided in one embodiment of the present application. DETAILED DESCRIPTION

[0024] In order to make the purpose, technical solutions and beneficial effects of this application more clear, the following further describes this application in detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain this application and are not intended to limit this application.

[0025] In order to illustrate the technical solution described in this application, specific embodiments are provided below.

[0026] See also Figure 1 , is a flow chart of an indoor positioning method provided in an embodiment of the present application. This embodiment mainly uses the indoor positioning method applied to a computer device as an example to illustrate. The indoor positioning method provided in an embodiment of the present application includes the following steps:

[0027] S101: Receive ultrasonic signals collected by a mobile terminal and inertial data collected by an inertial measurement unit (IMU).

[0028] The inertial measurement unit includes an accelerometer, a gyroscope, and a magnetometer and is built into the mobile terminal.

[0029] Ultrasonic signals are generated by multiple anchors equipped with microphones and speakers deployed at fixed locations. Figure 2 shown.

[0030] S102: Filter the ultrasonic signal and inertial data.

[0031] S103 : Based on the filtered ultrasonic signal, the CHAN algorithm based on the acoustic signal is used to perform multiple positioning operations to obtain the initial position of the mobile terminal.

[0032] S103 specifically adopts a method commonly used in the industry, so it will not be described in detail here.

[0033] S104: Estimate the step length of the current step using the step lengths of the previous two steps or more.

[0034] Current classic step length estimation methods include the Weinberg, Scarlet, and Kim models. These models only consider the relationship between the current step length and acceleration, and cannot solve the errors existing in different mobile terminals, and cannot achieve higher positioning accuracy.

[0035] In one embodiment of the present application, estimating the step length of the current step using the step lengths of the previous two steps may specifically include the following steps:

[0036] Estimate the step length L of the current mth step by formula (1) m ;

[0037]

[0038] Among them, L m-2 is the step length of the m-2th step, L m-1 is the step length of the m-1th step, m refers to the current number of steps, [e1, e2, e3] is the weight vector, Bias is the offset error measured by different mobile terminals in a stationary state, obtained by empirical value, K is the model parameter, obtained by empirical value, and are the peak value and valley value of acceleration in the mth step, respectively, and Comp is the accelerometer compensation measured by different mobile terminals when they are stationary.

[0039] In one embodiment of the present application, the weight vector is determined based on the acceleration of the previous two steps and the current step number, which may include the following steps:

[0040] Calculate the acceleration differences of step m-2, step m-1 and step m respectively;

[0041] Calculate the ratio of the acceleration difference of step m-2, step m-1 and step m to the sum of the acceleration difference of step m-2, step m-1 and step m, and obtain three preliminary weight vectors [e1, e2, e3].

[0042] In an embodiment of the present application, the weight vector may also be dynamically estimated to obtain a more accurate current step length, thereby improving the step length estimation accuracy.

[0043] The dynamic estimation of the weight vector specifically includes the following steps:

[0044] Since the time interval between the first two steps and the current step is a bit long, the weight vectors of the first two steps need to be redistributed. After many experiments, the maximum weight factor E is obtained. max ;

[0045] If the weight vector e1 is greater than the maximum weight factor E max , then assume that the weight W is equal to the weight vector e1 minus the maximum weight factor E max The difference, that is, W = e1-Emax, and then update the weight vector [e1, e2, e3]:

[0046]

[0047] The mobile terminal has an inertial measurement unit, such as an accelerometer, a gyroscope, and a magnetometer. In the traditional PDR method, the inertial data collected by the inertial measurement unit is directly used to calculate the heading angle. However, the accuracy is generally difficult to meet some positioning requirements. At the same time, different mobile terminals are heterogeneous, and data collection will also produce different errors. Therefore, in order to obtain more reliable and accurate positioning, in one embodiment of the present application, the method after S104 further includes:

[0048] S105 , correcting the heading angle drift and static drift of different mobile terminals according to the filtered inertial data to obtain the corrected current moving direction.

[0049] In an embodiment of the present application, S105 may specifically include the following steps:

[0050] In the heading angle correction algorithm, the heading angle drift and static drift of different mobile terminals are corrected by formula (3), and the direction of the mth step after correction is obtained as θ m Therefore, the accurate heading angle can be obtained effectively.

[0051] θ m =θ meas +θ′+θ drift (3)

[0052] Among them, θ mIndicates the direction of the mth step after correction, θ meas is the optimal heading angle after processing the inertial data measured by the inertial measurement unit of the mobile terminal, θ′ is the correction angle of different mobile terminals, θ drift It is the direction angle compensation error measured when the mobile terminal is stationary.

[0053] The optimal heading angle is specifically obtained in the following manner: using the data of the accelerometer and the magnetometer, through the prediction update of the extended Kalman filter, iteratively obtaining the optimal state vector at each moment, thereby estimating the optimal heading angle.

[0054] S106: Estimate the current position of the mobile terminal by performing fusion positioning based on the previous step position of the mobile terminal, the estimated current step length, and the corrected current step direction.

[0055] In an embodiment of the present application, S106 may specifically include the following steps:

[0056] The position of the mobile terminal at the current m-th step is estimated by formula (4):

[0057]

[0058] In the formula, (x m ,y m ) represents the position of the mobile terminal at step m, (x m-1 ,y m-1 ) represents the position of the mobile terminal at step m-1, L m is the estimated step size of the current m-th step, θ m =θ meas +θ′+θ drift .

[0059] In order to avoid abnormal values ​​in the localization process, this application sets a threshold S th (Usually S th =2*L m-1 ), in the previous step of the mobile terminal, that is, step m-1, when the following two situations occur:

[0060] Case 1: When the positioning estimate of the CHAN algorithm based on the acoustic signal The estimated location value of the fusion location estimate is M m-2 (x m-2 ,y m-2 ) is greater than the preset threshold S th When the positioning estimate value of the CHAN algorithm based on the acoustic signal is discarded as an outlier, the position of the mobile terminal at the m-1 step estimated by the fusion positioning is used for positioning, that is, (x m-1 ,y m-1 )=Mm-1 ;

[0061] Case 2: When the positioning estimate of the CHAN algorithm based on the acoustic signal The estimated location value of the fusion location estimate is M m-2 (x m-2 ,y m-2 ) is less than the preset threshold S th When , the distance confidence of the CHAN algorithm based on the acoustic signal and the optimized PDR algorithm is used to calculate the location estimation value of the m-1th step of the fusion location estimation, and then the location estimation value of the m-1th step of the fusion location estimation is obtained according to formula (4), that is, (x m-1 ,y m-1 )=M m-1 ; S104 and S105 are optimized PDR algorithms;

[0062] Among them, in the m-1th step, the positioning estimate of the optimized PDR algorithm is The positioning estimation value of the CHAN algorithm based on the acoustic signal and the positioning estimation value of the fusion positioning estimation are M m-2 (x m-2 ,y m-2 ) is the distance between Distance confidence Conf of the optimized PDR algorithm p And the distance confidence of the CHAN algorithm based on acoustic signals C The weights of the Gaussian distribution are as follows:

[0063]

[0064]

[0065] Among them, M m-2 (x m-2 ,y m-2 ) is the positioning estimation value of the m-2th step of the fusion positioning estimation, and R is the estimation variance of the CHAN algorithm based on the acoustic signal and the optimized PDR algorithm.

[0066] The normalized distance confidence at the m-1th step is obtained by the following formula,

[0067]

[0068]

[0069] Normalization,

[0070] Conf p +Conf C =1 (9)

[0071] In this application, the step length of the current step is estimated using the step lengths of the previous two or more steps. The heading angle drift and static drift of different mobile terminals are corrected based on filtered inertial data to obtain the corrected direction of the current step. This provides more accurate step length information, thereby improving step length estimation accuracy, alleviating the heterogeneity of mobile terminals, and achieving a higher position estimate. Furthermore, due to the integration of the acoustic signal-based CHAN algorithm and the optimized PDR algorithm, S104 and S105 are optimized PDR algorithms. Therefore, they have great versatility and flexibility for different mobile terminals and scenarios, are compatible with mobile terminals, are low-cost, and have high accuracy.

[0072] An embodiment of the present application provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the steps of the indoor positioning method provided in the embodiment of the present application are implemented.

[0073] Figure 3 The following is a block diagram of the specific structure of a computer device provided in one embodiment of the present application. A computer device 100 includes: one or more processors 101, a memory 102, and one or more computer programs, wherein the processors 101 and the memory 102 are connected via a bus, and the one or more computer programs are stored in the memory 102 and configured to be executed by the one or more processors 101. When the processors 101 execute the computer programs, the steps of the indoor positioning method provided in one embodiment of the present application are implemented. The computer device includes a server and a terminal. The computer device can be a desktop computer, a mobile terminal, or an in-vehicle device. The mobile terminal includes at least one of a mobile phone, a tablet computer, a personal digital assistant, or a wearable device.

[0074] It should be understood that each step in each embodiment of the present application is not necessarily performed in sequence according to the order indicated by the step numbers. Unless clearly stated herein, the execution of these steps does not have strict order restrictions, and these steps can be performed in other orders. Moreover, in each embodiment, at least a portion of steps may include a plurality of sub-steps or a plurality of stages, and these sub-steps or stages are not necessarily performed at the same time, but can be performed at different times, and the execution order of these sub-steps or stages is not necessarily performed in sequence, but can be performed in turn or alternately with at least a portion of other steps or the sub-steps or stages of other steps.

[0075] Those skilled in the art will appreciate that all or part of the processes in the above-mentioned embodiments can be implemented by instructing the relevant hardware through a computer program. The program can be stored in a non-volatile computer-readable storage medium. When the program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).

[0076] The technical features of the above embodiments can be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0077] The above embodiments merely illustrate several implementations of the present invention, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the patent. It should be noted that a person skilled in the art would be able to make various modifications and improvements without departing from the spirit of the present invention, all of which fall within the scope of protection of the present invention. Therefore, the scope of protection of the patent for this invention shall be determined by the appended claims.

Claims

1. An indoor positioning method, characterized in that: The method comprises the following steps: S101, receiving ultrasonic signals collected by a mobile terminal and inertial data collected by an inertial measurement unit (IMU); S102, filtering the ultrasonic signal and inertial data; S103, performing multiple positioning operations based on the filtered ultrasonic signal using the acoustic signal-based CHAN algorithm to obtain an initial position of the mobile terminal; S104, using the step lengths of two or more previous steps to estimate the step length of the current step; S105, correcting the heading angle drift and static drift of different mobile terminals based on the filtered inertial data to obtain the corrected current step direction; S106, performing fusion positioning based on the previous step position of the mobile terminal, the estimated current step length, and the corrected current step direction to estimate the current position of the mobile terminal; The step length estimation of the current step using the step lengths of the first two steps specifically comprises the following steps: Estimate the step length L of the current mth step by formula (1) m ; Among them, L m-2 is the step length of the m-2th step, L m-1 is the step length of the m-1th step, m refers to the current number of steps, [e1, e2, e3] is the weight vector, Bias is the offset error measured by different mobile terminals in a stationary state, obtained by empirical value, K is the model parameter, obtained by empirical value, and are the peak value and valley value of acceleration in the mth step, respectively, and Comp is the accelerometer compensation measured by different mobile terminals at rest; S105 specifically includes the following steps: In the heading angle correction algorithm, the heading angle drift and static drift of different mobile terminals are corrected by formula (3), and the direction of the mth step after correction is obtained as θ m ; i m =θ meas +θ′+θ drift (3) Among them, θ m Indicates the direction of the mth step after correction, θ meas is the optimal heading angle after processing the inertial data measured by the inertial measurement unit of the mobile terminal, θ′ is the correction angle of different mobile terminals, θ drift is the azimuth angle compensation error measured when the mobile terminal is stationary; The weight vector is estimated dynamically, specifically including the following steps: The weight vectors of the first two steps are redistributed, and after multiple experiments, the maximum weight factor E is obtained. max ; If the weight vector e1 is greater than the maximum weight factor E max , then assume that the weight W is equal to the weight vector e1 minus the maximum weight factor E max The difference, that is, W = e1-Emax, and then update the weight vector [e1, e2, e3]:

2. The indoor positioning method according to claim 1, wherein: The inertial measurement unit includes an accelerometer, a gyroscope and a magnetometer, and is built into the mobile terminal; the ultrasonic signal is generated by multiple anchor points with microphones and speakers deployed at fixed positions.

3. The indoor positioning method according to claim 1, wherein: The weight vector is determined based on the acceleration of the previous two steps and the current step number, specifically including the following steps: Calculate the acceleration differences of step m-2, step m-1 and step m respectively; Calculate the ratio of the acceleration difference of step m-2, step m-1 and step m to the sum of the acceleration difference of step m-2, step m-1 and step m, and obtain three preliminary weight vectors [e1, e2, e3].

4. The indoor positioning method according to claim 1, wherein: S106 specifically includes the following steps: The position of the mobile terminal at the current m-th step is estimated by formula (4): In the formula, (x m ,y m ) represents the position of the mobile terminal at step m, (x m-1 ,y m-1 ) represents the position of the mobile terminal at step m-1, L m is the estimated step size of the current m-th step, θ m =θ meas +θ′+θ drift .

5. The indoor positioning method according to claim 1, wherein: Set a threshold S th , S th =2*L m-1 , in the previous step of the mobile terminal, that is, step m-1, when the following two situations occur: Case 1: When the positioning estimate of the CHAN algorithm based on the acoustic signal The estimated positioning value of the fusion positioning estimate is M m-2 (x m-2 ,y m-2 ) is greater than the preset threshold S th When the positioning estimate value of the CHAN algorithm based on the acoustic signal is discarded as an outlier, the position of the mobile terminal at the m-1 step estimated by the fusion positioning is used for positioning, that is, (x m-1 ,y m-1 )=M m-1 ; Case 2: When the positioning estimate of the CHAN algorithm based on the acoustic signal The estimated positioning value of the fusion positioning estimate is M m-2 (x m-2 ,y m-2 ) is less than the preset threshold S th When , the distance confidence of the CHAN algorithm based on the acoustic signal and the optimized PDR algorithm is used to calculate the location estimation value of the m-1th step of the fusion location estimation, and then the location estimation value of the m-1th step of the fusion location estimation is obtained according to formula (4), that is, (x m-1 ,y m-1 )=M m-1 ; S104 and S105 are optimized PDR algorithms; Among them, in the m-1th step, the positioning estimate of the optimized PDR algorithm is The positioning estimation value of the CHAN algorithm based on the acoustic signal and the positioning estimation value of the fusion positioning estimation are M m-2 (x m-2 ,y m-2 ) is the distance between Distance confidence Conf of the optimized PDR algorithm p And the distance confidence of the CHAN algorithm based on acoustic signals C The weights of the Gaussian distribution are as follows: Among them, M m-2 (x m-2 ,y m-2 ) is the positioning estimation value of the m-2th step of the fusion positioning estimation, and R is the estimation variance of the CHAN algorithm based on the acoustic signal and the optimized PDR algorithm; The normalized distance confidence at the m-1th step is obtained by the following formula, Normalization, Conf p +Conf C =1 (9)。 6. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the steps of the indoor positioning method according to any one of claims 1 to 5 are implemented.

7. A computer device comprising: one or more processors; Memory; as well as One or more computer programs, the processor and the memory are connected via a bus, wherein the one or more computer programs are stored in the memory and are configured to be executed by the one or more processors, characterized in that when the processor executes the computer program, the steps of the indoor positioning method according to any one of claims 1 to 5 are implemented.

Citation Information

Patent Citations

  • Multi-motion-state navigation method, multi-motion-state navigation device and intelligent wearable equipment

    CN114459469A

  • Object positioning method, electronic equipment and storage medium

    CN114526741A