Height estimation method for motion behavior constraint

By sensing pedestrian movement and using deep learning technology, combined with data from inertial measurement units and barometers, coarse and secondary corrections are performed, solving the problem of accumulated pressure drift errors in indoor three-dimensional space and improving the accuracy and robustness of elevation estimation.

CN121632064APending Publication Date: 2026-03-10WUHAN UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-11-17
Publication Date
2026-03-10

AI Technical Summary

Technical Problem

In indoor three-dimensional space, barometers are prone to drift error accumulation during long-term cross-floor positioning, resulting in inaccurate elevation estimation. Existing methods cannot effectively solve the problem of barometer drift error accumulation.

Method used

By sensing the movement of pedestrians, an initial elevation estimate is obtained, followed by coarse and secondary corrections. Using inertial measurement units and barometer data, combined with deep learning technology, floor revisit situations are identified, and dynamic corrections for air pressure drift are performed to improve the accuracy and robustness of elevation estimation.

Benefits of technology

It effectively suppresses the accumulation of barometric pressure drift error, improves the accuracy and robustness of barometric altimetry, and ensures the accuracy and stability of altitude estimation during long-term cross-floor positioning.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121632064A_ABST
    Figure CN121632064A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of navigation and positioning, in particular to a motion behavior constrained height estimation method, which comprises the following steps of: sensing a motion state of a pedestrian, and acquiring an initial elevation estimation value of a current floor; judging whether the initial elevation estimation value meets a rough correction condition or not, and performing rough correction on the initial elevation estimation value when the initial elevation estimation value meets the rough correction condition; performing current floor identification according to the roughly corrected elevation to obtain an identification result, and judging whether floor revisit exists or not according to the motion state of the pedestrian and the identification result; and if the floor revisit exists, judging whether the coarse-corrected elevation has a drift error, and performing secondary correction on the coarse-corrected elevation according to the historical height estimation information of the current floor to obtain a final elevation estimation value of the current floor under the condition that the drift error exists. Therefore, the problem of barometric drift error accumulation caused by long-time cross-floor positioning in an indoor three-dimensional space is solved, and the precision and robustness of barometric altimetry are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of navigation and positioning technology, and in particular to a height estimation method for motion behavior constraints. Background Technology

[0002] Against the backdrop of rapid development in smart cities and the Internet of Things (IoT), indoor positioning technology is evolving from two-dimensional planes to three-dimensional space. However, the accuracy of elevation estimation remains one of the challenges in achieving indoor three-dimensional positioning. Especially in complex multi-level environments such as shopping malls and underground parking lots, elevation information can not only provide accurate floor determination but also significantly improve the overall accuracy and reliability of the positioning system. Taking emergency rescue as an example, accurate elevation information can quickly pinpoint the vertical location of trapped personnel or rescue targets, shortening response time and ensuring personnel safety. Furthermore, the deep integration of elevation data with horizontal positioning technology can optimize positioning robustness under multipath interference, providing more comprehensive spatial awareness capabilities for applications such as intelligent navigation and asset management. Therefore, overcoming the technical bottleneck of indoor elevation estimation is of great significance for promoting the practical application of three-dimensional positioning systems.

[0003] In recent years, barometers have become a major auxiliary means for multi-sensor fusion indoor positioning due to their low cost and ease of deployment. Barometers are combined with pedestrian dead reckoning (PDR), Wi-Fi, ultra-wideband (UWB), or Bluetooth technologies to determine floor levels and achieve two-dimensional or three-dimensional positioning. However, given the significant environmental influences on atmospheric pressure, and the relatively similar atmospheric motion and variation patterns in local areas, although differential barometric altimetry and residual error correction methods can compensate for the impact of atmospheric environmental changes on measurement results, differential barometric altimetry relies on reference station deployment, increasing initial construction costs. Furthermore, in long-term cross-floor positioning, existing methods cannot avoid the gradual accumulation of pressure drift errors. Summary of the Invention

[0004] This application provides a height estimation method for motion behavior constraints to solve the problem of accumulated air pressure drift error caused by long-term cross-floor positioning in indoor three-dimensional space.

[0005] The first aspect of this application provides a height estimation method for motion behavior constraints, comprising the following steps: sensing the motion state of a pedestrian and obtaining an initial elevation estimate of the current floor; determining whether the initial elevation estimate meets coarse correction conditions, and performing coarse correction on the initial elevation estimate if the initial elevation estimate meets the coarse correction conditions; identifying the current floor based on the coarsely corrected elevation to obtain an identification result, and determining whether there is a floor revisit based on the pedestrian's motion state and the identification result; if there is a floor revisit, determining whether there is a drift error in the coarsely corrected elevation, and performing a second correction on the coarsely corrected elevation based on the historical height estimation information of the current floor to obtain a final elevation estimate of the current floor.

[0006] Optionally, the process of sensing the pedestrian's motion state includes: acquiring measurement data of the pedestrian from an inertial measurement unit, and converting the measurement data into a time-frequency image after denoising; constructing a one-dimensional sequence feature extraction network branch and a two-dimensional image feature extraction network branch, and inputting the time-frequency image into the one-dimensional sequence feature extraction network branch and the two-dimensional image feature extraction network branch respectively to obtain features of the two branches; performing feature connection and weighted fusion on the features of the two branches to generate shared features; and classifying the motion state of the pedestrian based on the shared features to obtain the motion state of the pedestrian.

[0007] Optionally, the step of converting the denoised measurement data into a time-frequency image includes: normalizing the measurement data to obtain a normalized original data sequence; mapping the normalized original data sequence to a polar coordinate system to determine the polar radius and polar angle corresponding to each data point; calculating the angular difference between each data point based on the polar radius and polar angle corresponding to each data point to construct Gram angle field features; and generating a time-frequency image corresponding to each channel of measurement data based on the constructed Gram angle field features.

[0008] Optionally, the step of classifying the motion state of the pedestrian based on the shared features to obtain the motion state of the pedestrian includes: classifying the motion state of the pedestrian based on the shared features using a preset classification and recognition loss function, wherein the preset classification and recognition loss function is: ; in, The number of input samples during a single training or inference process. For real labels, For predicted values, This is the cross-entropy function.

[0009] Optionally, determining whether the initial elevation estimate satisfies the coarse correction condition includes: calculating the height change between the initial elevation estimate and the initial elevation of the current floor at the initial time, and determining whether the height change is greater than a preset change: if the height change is greater than the preset change, then the initial elevation estimate is determined to satisfy the coarse correction condition.

[0010] Optionally, the initial elevation estimate is coarsely corrected, including: correcting the initial elevation estimate based on the average elevation from the initial time of the current floor to the previous time, to obtain the coarsely corrected elevation.

[0011] Optionally, the coarsely corrected elevation is: ; in, This is the relative elevation after coarse correction. This represents the relative elevation of the current floor at the initial moment to the relative elevation of the moment before the current moment. This is a mean averaging operation.

[0012] Optionally, determining whether a floor has been revisited based on the pedestrian's movement state and identification result includes: identifying the current floor based on the coarsely corrected elevation; determining the floors visited in the past based on the pedestrian's movement state; and determining that the floor has been revisited if the current floor is the same as the floor visited in the past.

[0013] Optionally, determining whether the coarsely corrected elevation has a drift error includes: after detecting the floor revisit, comparing the difference between the coarsely corrected elevation and the elevation of the floor visited at the historical time. If the difference is greater than a preset threshold, it is determined that the coarsely corrected elevation has the drift error.

[0014] Optionally, the current floor is:

[0015] in, The current floor. This is the elevation after coarse correction. The initial floor height of the trajectory. This is the height threshold for adjacent floors.

[0016] A second aspect of this application provides a height estimation system for motion behavior constraints, comprising: a perception module for sensing the motion state of a pedestrian and obtaining an initial elevation estimate of the current floor; a coarse correction module for determining whether the initial elevation estimate meets coarse correction conditions, and performing coarse correction on the initial elevation estimate if the initial elevation estimate meets the coarse correction conditions; a judgment module for identifying the current floor based on the coarsely corrected elevation to obtain an identification result, and determining whether there is a floor revisit based on the pedestrian's motion state and the identification result; and a secondary correction module for determining whether there is a drift error in the coarsely corrected elevation if there is a floor revisit, and performing secondary correction on the coarsely corrected elevation based on the historical height estimation information of the current floor to obtain a final elevation estimate of the current floor if the drift error exists.

[0017] A third aspect of this application provides an electronic device, including: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the height estimation method for motion behavior constraints as described in the above embodiments.

[0018] A fourth aspect of this application provides a computer program product having a computer program stored thereon, which is executed by a processor to implement the height estimation method for motion behavior constraints as described in the above embodiments.

[0019] In the above implementation, the movement state of a pedestrian is sensed, and an initial elevation estimate of the current floor is obtained. It is then determined whether the initial elevation estimate meets the coarse correction conditions, and if so, a coarse correction is performed on the initial elevation estimate. The current floor is identified based on the coarsely corrected elevation to obtain the identification result. Based on the pedestrian's movement state and the identification result, it is determined whether there is a floor revisit. If a floor revisit exists, it is determined whether there is a drift error in the coarsely corrected elevation. If a drift error exists, a second correction is performed on the coarsely corrected elevation based on the historical elevation estimate information of the current floor to obtain the final elevation estimate of the current floor. This solves the problem of accumulated barometric drift error caused by long-term cross-floor positioning in indoor three-dimensional space, improving the accuracy and robustness of barometric altimetry.

[0020] Additional aspects and advantages of this application will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of this application. Attached Figure Description

[0021] The above and / or additional aspects and advantages of this application will become apparent and readily understood from the following description of the embodiments taken in conjunction with the accompanying drawings, wherein: Figure 1This is a flowchart of a height estimation method for motion behavior constraints provided according to an embodiment of this application; Figure 2 This is a network architecture diagram of a pedestrian motion perception and recognition method according to an embodiment of this application; Figure 3 This is a flowchart of a height estimation method for motion behavior constraints according to a specific embodiment of this application; Figure 4 This is a schematic diagram of a height estimation method for motion behavior constraints according to an embodiment of this application; Figure 5 This is an example diagram of a height estimation system for motion behavior constraints according to an embodiment of this application; Figure 6 This is a schematic diagram of the structure of an electronic device according to an embodiment of this application. Detailed Implementation

[0022] The embodiments of this application are described in detail below. Examples of these embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and intended to explain this application, and should not be construed as limiting this application.

[0023] The following describes a height estimation method for motion behavior constraints according to embodiments of this application with reference to the accompanying drawings. Addressing the problem of accumulated barometric pressure drift errors caused by long-term cross-floor positioning in indoor three-dimensional space, as mentioned in the background art, this application provides a height estimation method for motion behavior constraints. In this method, the movement state of a pedestrian is sensed, and an initial elevation estimate of the current floor is obtained. It is then determined whether the initial elevation estimate meets coarse correction conditions, and if so, a coarse correction is performed on the initial elevation estimate. The current floor is identified based on the coarsely corrected elevation to obtain an identification result, and the presence of floor revisiting is determined based on the pedestrian's movement state and the identification result. If floor revisiting occurs, it is determined whether the coarsely corrected elevation has a drift error, and if a drift error exists, a second correction is performed on the coarsely corrected elevation based on the historical height estimation information of the current floor to obtain the final elevation estimate of the current floor. This solves the problem of accumulated barometric pressure drift errors caused by long-term cross-floor positioning in indoor three-dimensional space, improving the accuracy and robustness of barometric altimetry.

[0024] Specifically, Figure 1 This is a flowchart illustrating a height estimation method for motion behavior constraints provided in an embodiment of this application.

[0025] like Figure 1 As shown, the height estimation method for this motion behavior constraint includes the following steps: In step S101, the movement status of pedestrians is sensed and the initial elevation estimate of the current floor is obtained. Optionally, in some embodiments, sensing the motion state of a pedestrian includes: acquiring measurement data of the pedestrian from an inertial measurement unit, and converting the measurement data into a time-frequency image after denoising; constructing a one-dimensional sequence feature extraction network branch and a two-dimensional image feature extraction network branch, and inputting the time-frequency image into the one-dimensional sequence feature extraction network branch and the two-dimensional image feature extraction network branch respectively to obtain features of the two branches; performing feature connection and weighted fusion on the features of the two branches to generate shared features; and classifying the motion state of the pedestrian based on the shared features to obtain the motion state of the pedestrian.

[0026] The movement states of pedestrians include stationary state, walking on flat ground, going upstairs, and going downstairs.

[0027] Optionally, in some embodiments, converting the measurement data into a time-frequency image after denoising includes: normalizing the measurement data to obtain a normalized original data sequence; mapping the normalized original data sequence to a polar coordinate system to determine the polar radius and polar angle corresponding to each data point; calculating the angular difference between each data point based on the polar radius and polar angle corresponding to each data point to construct Gram angle field features; and generating a time-frequency image corresponding to the measurement data of each channel based on the constructed Gram angle field features.

[0028] Optionally, in some embodiments, the motion state of a pedestrian is obtained by classifying motion states based on shared features, including: classifying motion states of a pedestrian based on shared features using a preset classification and recognition loss function, wherein the preset classification and recognition loss function is: (1) in, The number of input samples during a single training or inference process. For real labels, For predicted values, This is the cross-entropy function.

[0029] Specifically, the method utilizes inertial measurement unit (IMU) data from smartphones to perform real-time pedestrian motion perception based on deep learning, accurately identifying pedestrian motion states. The specific steps are as follows: converting the raw IMU data into time-frequency images to capture the spatiotemporal characteristics of the IMU data; constructing a one-dimensional sequence feature extraction network branch and a two-dimensional image feature extraction network branch for the raw one-dimensional IMU data and the converted two-dimensional time-frequency images, respectively, to perceive the pedestrian motion state.

[0030] Specifically, the gramian angular field (GAF) is used to convert the raw IMU data sequence into a time-series image, which can capture the periodic behavior and repetitive patterns of the data. The GAF converts the time series to a polar coordinate system and captures the dynamic changes of the time series through angular relationships to generate a two-dimensional image. The IMU's three-axis accelerometer and three-axis gyroscope data are treated as six-channel time-series data, and a GAF time-series image is generated for each channel of the IMU data, as shown below: (2) in, The sliding window length is used to select a segment of IMU data due to the extremely high sampling rate of IMU data. This segment is then converted into a 6-channel GAF image of size 64×64. The conversion operation is as follows: The normalized original data sequence Mapped to polar coordinates, the radius and angle corresponding to each data point are as follows: (3) in, For the first The polar coordinate radius of each data point; For the first The timestamp of each data item; It is a scaling constant; This represents the total number of data sequences. For the first The polar coordinate angles of each data point; For the first The values ​​that each data point can take.

[0031] Based on the representation of the data in polar coordinates, the angular difference between each pair of data points in the IMU data segment is calculated to construct the Gram angular field feature: (4) in, Representing data points and The angle between them, and Data points and The angle.

[0032] Further as Figure 2As shown, based on multimodal features, two network branches are constructed to extract features of different modalities, including image feature extraction based on the Convolutional Neural Network (CNN) architecture and sequence feature extraction based on the Bidirectional Long Short-Term Memory (Bi-LSTM) architecture.

[0033] The image feature extraction branch based on the CNN architecture first constructs two 2D convolutional layers and a max-pooling layer. The convolutional layers are used to extract spatial features of the image, while the pooling layers are used to reduce spatial dimensionality. The global average pooling layer performs global average pooling through each channel, capturing global information of the entire image. To avoid overfitting, L2 regularization is added after each convolutional layer and fully connected layer, and a dropout layer connected after the second max-pooling layer further prevents overfitting. The sequence feature extraction branch uses only a Bi-LSTM for temporal feature extraction. Through the fusion of bidirectional information, the network can obtain richer feature representations at each time step and capture more contextual information.

[0034] After feature extraction via a dual-branch approach, features are concatenated using a connection layer and then weighted and fused using an attention layer. Based on the generated shared features, classification and recognition of motion states are performed to achieve pedestrian motion perception. The loss function for classification and recognition... Constructed using the cross-entropy function, as shown in equation (1): .

[0035] Among them, the average sea level elevation is taken according to international standard atmospheric parameters. If the value is 0, the initial elevation estimate of the current floor obtained from the phone's built-in barometer is: (5) in, Altitude The atmospheric pressure is measured by the phone's built-in barometer. The altitude measured at the initial moment of each trajectory is set to 0, so the altitude obtained at each moment is the relative elevation with respect to the initial moment.

[0036] Due to environmental factors, the elevation measured by the barometer exhibits excessive noise. Therefore, IIR filtering is required to denoise the initial elevation estimate of the current floor measured by the barometer. The mathematical model is as follows: (6) in, It is the output signal. It is the output signal. It is a feedback coefficient related to the output signal. These are feedforward coefficients related to the input signal. and These represent the orders of the feedback and feedforward components, respectively.

[0037] In this application, a first-order IIR filter is used for noise reduction, which simplifies the above equation (6) to: (7) In step S102, it is determined whether the initial elevation estimate meets the coarse correction condition, and if the initial elevation estimate meets the coarse correction condition, the initial elevation estimate is coarsely corrected. Optionally, in some embodiments, determining whether the initial elevation estimate meets the coarse correction condition includes: calculating the height change between the initial elevation estimate and the initial elevation of the current floor at the initial time, and determining whether the height change is greater than a preset change: if the height change is greater than the preset change, then the initial elevation estimate is determined to meet the coarse correction condition.

[0038] The preset change amount can be a threshold set by the user, a threshold obtained through a limited number of experiments, or a threshold obtained through a limited number of computer simulations; no specific limitation is made here.

[0039] Optionally, in some embodiments, the initial elevation estimate is coarsely corrected, including: correcting the initial elevation estimate based on the average elevation from the initial time of the current floor to the previous time, to obtain the coarsely corrected elevation.

[0040] Optionally, in some embodiments, the coarsely corrected elevation is: (8) in, This is the relative elevation after coarse correction. This represents the relative elevation of the current floor at the initial moment to the relative elevation of the moment before the current moment. This is a mean averaging operation.

[0041] When a pedestrian is identified as stationary or moving horizontally, the change in barometer elevation can be considered to be caused by drift error. Based on the above conditions, the change in elevation estimated by the barometer at the current moment relative to the initial estimated elevation of the current floor is recorded, and it is determined whether the change in elevation exceeds a preset amount. , specifically Figure 3 As shown.

[0042] If the change in height exceeds the preset change amount If the initial elevation estimate meets the coarse correction condition, meaning the initial elevation estimate of the current floor meets the drift condition, then the initial elevation estimate is corrected based on the average elevation from the initial elevation of the current floor to the elevation of the floor before the current floor. This yields the coarsely corrected elevation, achieving coarse correction of air pressure drift based on motion state. The coarsely corrected relative elevation is then: .

[0043] In step S103, the current floor is identified based on the coarsely corrected elevation to obtain the identification result, and the pedestrian's movement status and identification result are used to determine whether there is a floor revisit.

[0044] Optionally, in some embodiments, determining whether a floor has been visited based on the pedestrian's movement status and identification results includes: identifying the current floor based on the coarsely corrected elevation; determining the floors visited in the past based on the pedestrian's movement status; and determining that a floor has been visited if the current floor is the same as the floors visited in the past.

[0045] In some embodiments, the current floor is: (9) in, The current floor. This is the elevation after coarse correction. The initial floor height of the trajectory. This is the height threshold for adjacent floors.

[0046] Although coarse correction can control air pressure drift on a single floor, the cumulative drift error across floors over a long period can still lead to inaccurate elevation estimation. Therefore, it is necessary to identify the current floor and determine if there is any floor revisiting.

[0047] Once a pedestrian is detected to have moved from walking on flat ground to going up / down stairs and back to walking on flat ground, a valid floor change is considered to have occurred. Based on this, the relative height difference before and after this stair-going behavior is extracted as an estimated height threshold between adjacent floors in the current scene.

[0048] If, within the same continuous trajectory, the current floor is identified as being the same as a floor visited in the past, it constitutes a floor revisit event, and the pedestrian is determined to have revisited the floor.

[0049] In step S104, if there is a floor revisit, it is determined whether there is a drift error in the coarsely corrected elevation. If there is a drift error, the coarsely corrected elevation is corrected a second time based on the historical height estimation information of the current floor to obtain the final elevation estimate of the current floor.

[0050] Optionally, in some embodiments, determining whether there is a drift error in the coarsely corrected elevation includes: after detecting a floor revisit, comparing the difference between the coarsely corrected elevation and the elevation of the floor visited at a historical time; if the difference is greater than a preset threshold, it is determined that there is a drift error in the coarsely corrected elevation.

[0051] The preset threshold can be a threshold set by the user, a threshold obtained through a limited number of experiments, or a threshold obtained through a limited number of computer simulations; no specific limitation is made here.

[0052] Specifically, after detecting a floor revisit, the coarsely corrected elevation is compared with the elevation of the floors visited in the past. If the difference between the coarsely corrected elevation and the elevation of the floors visited in the past exceeds a preset threshold, it is considered that there is a drift error in the coarsely corrected elevation. Then, the average historical height of the current floor is calculated based on the historical height estimate of the current floor. Therefore, based on the historical average height of the current floor The coarsely corrected elevation is then subjected to a second correction to obtain the final elevation estimate of the current floor, thus achieving a second correction for air pressure drift during long-term cross-floor processes.

[0053] Through the above technical solution, the correction mechanism is time-independent. This application mainly constrains air pressure drift through two mechanisms: first, identifying abnormal height change trends during walking on flat ground, and using the motion state recognition results to assist in judgment; second, based on height information retrospective compensation during floor revisits, the offset can be dynamically aligned in historical data, thus forming a self-correcting capability. Although drift increases over time, it can still be continuously constrained: uncorrected air pressure height shows a consistent trend of change, and the cumulative drift amplitude increases over time, but after introducing the correction method of this application, the estimated height can be continuously pulled back to a reasonable range. It can maintain high height stability and floor recognition accuracy even in long-term scenarios, and its core mechanism has scalability and time robustness.

[0054] To facilitate understanding of this application, the following description, in conjunction with the accompanying drawings and specific embodiments, will further illustrate this application: like Figure 4 As shown, firstly, IMU data from a smartphone is used for real-time pedestrian motion sensing based on deep learning to accurately identify pedestrian movement states, including stationary, walking on flat ground, going upstairs, and going downstairs. Then, based on the relative elevation estimated by the standard atmospheric pressure height model, combined with pedestrian motion behavior perception, a coarse correction is performed on atmospheric drift to achieve floor identification and determine whether a pedestrian is revisiting a floor. Finally, based on floor revisit information, a secondary correction is performed on the coarse correction of atmospheric pressure drift based on movement state to improve the accuracy and robustness of barometric altimetry. The specific steps are as follows: Step 1: Convert the raw IMU data into a time-frequency image to capture the spatiotemporal characteristics of the IMU data; Step 2: Based on Step 1, construct a one-dimensional sequence feature extraction network branch and a two-dimensional image feature extraction network branch for the original one-dimensional IMU data and the converted two-dimensional time-frequency image, respectively, to accurately perceive the movement state of pedestrians; Step 3: Based on the initial relative elevation estimate provided by the barometer, infinite impulse response (IIR) filtering is used to reduce noise and weaken the influence of environmental changes and short-term drift on barometric altimetry. Step 4: Based on Step 2 and Step 3, perform dynamic coarse correction on air pressure drift by combining pedestrian movement status to improve the stability and accuracy of single-story height estimation. Step 5: Based on Step 4, identify floors by using the coarsely corrected relative elevation changes, and determine whether there are repeated visits to the same floors by combining historical floor information. Step 6: Based on Step 5, the floor revisit information is used to perform secondary compensation on the coarsely corrected relative elevation to improve the accuracy and robustness of cross-floor height estimation.

[0055] Further, step 1 specifically involves: using a gramian angular field (GAF) to convert the raw IMU data sequence into a time-series image, which can capture the periodic behavior and repetitive patterns of the data. The GAF converts the time series into a polar coordinate system and captures the dynamic changes of the time series through angular relationships to generate a two-dimensional image. The IMU's three-axis accelerometer and three-axis gyroscope data are treated as six-channel time-series data, and a GAF time-series image is generated for each channel of the IMU data.

[0056] Further, step 2 specifically involves: constructing two network branches based on multimodal features to extract features from different modalities, including image feature extraction based on a convolutional neural network (CNN) architecture and sequence feature extraction based on a bidirectional long short-term memory (Bi-LSTM) network architecture.

[0057] The image feature extraction branch based on the CNN architecture first constructs two 2D convolutional layers and a max-pooling layer. The convolutional layers are used to extract spatial features of the image, while the pooling layers are used to reduce spatial dimensionality. The global average pooling layer performs global average pooling through each channel, capturing global information of the entire image. To avoid overfitting, L2 regularization is added after each convolutional layer and fully connected layer, and a dropout layer connected after the second max-pooling layer further prevents overfitting. The sequence feature extraction branch uses only a Bi-LSTM for temporal feature extraction. Through the fusion of bidirectional information, the network can obtain richer feature representations at each time step and capture more contextual information.

[0058] After extracting features through a dual-branch approach, features are connected using a connection layer and then weighted and fused using an attention layer. Based on the generated shared features, a motion state classification output is constructed, thereby achieving pedestrian motion perception.

[0059] Furthermore, step 3 specifically involves: taking the average sea level elevation based on international standard atmospheric parameters. A value of 0 yields the elevation measured by the phone's built-in barometer. Due to environmental factors, the elevation measured by the barometer showed excessive noise. IIR filtering was used to denoise the acquired elevation.

[0060] Further, step 4 specifically involves: when the pedestrian's movement is identified as stationary or horizontal, it can be assumed that the change in barometer elevation is caused by drift error. Based on the above conditions, record the change in elevation estimated by the barometer at the current moment relative to the initial estimated elevation of that floor, and determine the change in elevation ( Does it exceed the preset change amount? If the change exceeds the preset amount If the drift condition is met, the relative elevation calculated by the barometer at the current time is corrected based on the average elevation of the floor from the initial time to the previous time, thus achieving coarse correction of barometric pressure drift based on motion state.

[0061] Furthermore, step 5 specifically involves the following: Although step 4 can control the air pressure drift of a single floor, the cumulative drift error across floors over a long period can still lead to inaccurate elevation estimation. Floor identification is performed at the current moment. Once a continuous behavioral pattern of "walking on flat ground - going up / down stairs - walking on flat ground" is identified, a valid floor change can be considered to have occurred. Based on this, the relative height difference before and after this up / down stair behavior is extracted as the estimated height threshold between adjacent floors in the current scenario.

[0062] Furthermore, step 6 specifically involves: if, within the same continuous trajectory, the current floor is identified as being the same as a floor visited in the past, a floor revisit event is constituted. After detecting a floor revisit, the difference between the coarsely corrected elevation and the elevation of the historically revisited floor is compared. If the difference exceeds a preset threshold, it is considered that the coarsely corrected elevation has a drift error. Then, based on the historical height estimation information of the current floor, a second correction is performed on the coarsely corrected elevation to obtain the final elevation estimate of the current floor, thereby achieving a second correction of air pressure drift during long-term cross-floor processes.

[0063] In summary, the beneficial effects of this application are as follows: 1) Utilize the built-in IMU of a smartphone to perform real-time pedestrian motion perception based on deep learning, accurately identifying pedestrian motion states, including stationary, walking on flat ground, going upstairs, and going downstairs.

[0064] 2) Based on the relative elevation estimated by the standard atmospheric pressure height model, and combined with pedestrian movement behavior, atmospheric drift is coarsely corrected to achieve floor identification and determine whether pedestrians revisit the floor.

[0065] 3) Based on the floor revisit information, the height of the coarse correction of barometric altimeter based on motion state is corrected a second time to improve the accuracy and robustness of barometric altimeter measurement.

[0066] 4) Based on the relative elevation of the barometer and the pedestrian motion perception based on the IMU, the suppression effect of pedestrian motion state on air pressure drift is fully explored, and the drift error is compensated for twice based on the historical height data of the same floor, so as to solve the problem of air pressure drift error accumulation caused by long-term cross-floor positioning in indoor three-dimensional space.

[0067] Next, with reference to the accompanying drawings, a height estimation system for motion behavior constraints proposed according to an embodiment of this application is described.

[0068] Figure 5 This is a block diagram of a height estimation system for motion behavior constraints according to an embodiment of this application.

[0069] like Figure 5 As shown, the height estimation system 10 for motion behavior constraints includes: a perception module 100, a coarse correction module 200, a judgment module 300, and a secondary correction module 400.

[0070] The system includes a perception module 100 for sensing the movement of pedestrians and obtaining an initial elevation estimate of the current floor; a coarse correction module 200 for determining whether the initial elevation estimate meets the coarse correction conditions, and performing coarse correction on the initial elevation estimate if it does; a judgment module 300 for identifying the current floor based on the coarsely corrected elevation, and determining whether there is a floor revisit based on the pedestrian's movement and the identification results; and a secondary correction module 400 for determining whether there is a drift error in the coarsely corrected elevation if there is a floor revisit, and performing secondary correction on the coarsely corrected elevation based on the historical height estimation information of the current floor to obtain the final elevation estimate of the current floor if there is a drift error.

[0071] Optionally, in some embodiments, the sensing module 100 is further configured to: acquire measurement data of the pedestrian by the inertial measurement unit, and convert the measurement data into a time-frequency image after denoising; construct a one-dimensional sequence feature extraction network branch and a two-dimensional image feature extraction network branch, and input the time-frequency image into the one-dimensional sequence feature extraction network branch and the two-dimensional image feature extraction network branch respectively to obtain features of the two branches; perform feature connection and weighted fusion on the features of the two branches to generate shared features; and classify the motion state of the pedestrian according to the motion state based on the shared features.

[0072] Optionally, in some embodiments, the sensing module 100 is further configured to: normalize the measurement data to obtain a normalized original data sequence; map the normalized original data sequence to a polar coordinate system to determine the polar coordinate radius and polar coordinate angle corresponding to each data point; calculate the angle difference between each data point based on the polar coordinate radius and polar coordinate angle corresponding to each data point to construct Gram angle field features; and generate a time-frequency image corresponding to the measurement data of each channel based on the constructed Gram angle field features.

[0073] Optionally, in some embodiments, the perception module 100 is further configured to: classify the motion state of a pedestrian based on shared features using a preset classification and recognition loss function, wherein the preset classification and recognition loss function is: ; in, The number of input samples during a single training or inference process. For real labels, For predicted values, This is the cross-entropy function.

[0074] Optionally, in some embodiments, the coarse correction module 200 is further configured to: calculate the height change between the initial elevation estimate and the initial elevation of the current floor, and determine whether the height change is greater than a preset change; if the height change is greater than the preset change, then the initial elevation estimate is determined to meet the coarse correction condition.

[0075] Optionally, in some embodiments, the coarse correction module 200 is further configured to: correct the initial elevation estimate based on the average elevation from the initial time of the current floor to the previous time, so as to obtain the coarsely corrected elevation.

[0076] Optionally, in some embodiments, the coarsely corrected elevation is: ; in, This is the relative elevation after coarse correction. This represents the relative elevation of the current floor at the initial moment to the relative elevation of the moment before the current moment. This is a mean averaging operation.

[0077] Optionally, in some embodiments, the determination module 300 is further configured to: identify the floor at the current time based on the coarsely corrected elevation; determine the floors visited in the past time based on the pedestrian's movement status; and determine that there is a floor revisit if the floor at the current time is the same as the floor visited in the past time.

[0078] Optionally, in some embodiments, the determination module 300 is further configured to: after detecting a floor revisit, compare the difference between the coarsely corrected elevation and the elevation of the floor visited in the past; if the difference is greater than a preset threshold, determine that there is a drift error in the coarsely corrected elevation.

[0079] Optionally, in some embodiments, the current floor is:

[0080] in, The current floor. This is the elevation after coarse correction. The initial floor height of the trajectory. This is the height threshold for adjacent floors.

[0081] It should be noted that the explanation of the above-mentioned height estimation method for motion behavior constraints also applies to the height estimation system for motion behavior constraints in this embodiment, and will not be repeated here.

[0082] According to the height estimation system for motion behavior constraints proposed in this application, the system knows the movement state of a pedestrian and obtains the initial elevation estimate of the current floor. It then determines whether the initial elevation estimate meets the coarse correction conditions, and if so, performs a coarse correction on the initial elevation estimate. Based on the coarsely corrected elevation, it identifies the current floor and obtains the identification result. Based on the pedestrian's movement state and the identification result, it determines whether there is a floor revisit. If a floor revisit exists, it determines whether there is a drift error in the coarsely corrected elevation. If a drift error exists, it performs a secondary correction on the coarsely corrected elevation based on the historical height estimation information of the current floor to obtain the final elevation estimate of the current floor. This solves the problem of accumulated barometric drift error caused by long-term cross-floor positioning in indoor three-dimensional space, improving the accuracy and robustness of barometric altimetry.

[0083] Figure 6 A schematic diagram of the structure of an electronic device provided in an embodiment of this application. The electronic device may include: The memory 601, the processor 602, and the computer program stored on the memory 601 and capable of running on the processor 602.

[0084] When the processor 602 executes the program, it implements the height estimation method for motion behavior constraints provided in the above embodiments.

[0085] Furthermore, electronic devices also include: Communication interface 603 is used for communication between memory 601 and processor 602.

[0086] The memory 601 is used to store computer programs that can run on the processor 602.

[0087] The memory 601 may include high-speed RAM memory, and may also include non-volatile memory, such as at least one disk storage device.

[0088] If the memory 601, processor 602, and communication interface 603 are implemented independently, then the communication interface 603, memory 601, and processor 602 can be interconnected via a bus to complete communication between them. The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. The bus can be divided into address bus, data bus, control bus, etc. For ease of representation, Figure 6 The bus is represented by a single thick line, but this does not mean that there is only one bus or one type of bus.

[0089] Optionally, in a specific implementation, if the memory 601, processor 602, and communication interface 603 are integrated on a single chip, then the memory 601, processor 602, and communication interface 603 can communicate with each other through an internal interface.

[0090] The processor 602 may be a central processing unit (CPU), an application specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of this application.

[0091] This application also provides a computer program product on which a computer program is stored, which, when executed by a processor, implements the above-described method for estimating the height of motion behavior constraints.

[0092] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples.

[0093] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this application, "N" means at least two, such as two, three, etc., unless otherwise explicitly specified.

[0094] Any process or method described in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or more N executable instructions for implementing custom logic functions or processes, and the scope of the preferred embodiments of this application includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functions involved, as should be understood by those skilled in the art to which embodiments of this application pertain.

[0095] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a sequential list of executable instructions for implementing logical functions, and can be specifically implemented in any computer program product for use by, or in conjunction with, an instruction execution system, apparatus, or device (such as a computer-based system, a processor-included system, or other system that can fetch and execute instructions from, an instruction execution system, apparatus, or device). For the purposes of this specification, "computer program product" can be any means that can contain, store, communicate, propagate, or transmit a program for use by, or in conjunction with, an instruction execution system, apparatus, or device. More specific examples of computer program products (a non-exhaustive list) include the following: an electrical connection having one or N wires (electronic device), a portable computer disk drive (magnetic device), random access memory (RAM), read-only memory (ROM), erasable and editable read-only memory (EPROM or flash memory), fiber optic device, and portable optical disc read-only memory (CDROM). Furthermore, the computer program product can even be paper or other suitable medium on which the program can be printed, since the program can be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, interpreting, or otherwise processing as necessary, and then stored in a computer memory.

[0096] It should be understood that the various parts of this application can be implemented using hardware, software, firmware, or a combination thereof. In the above embodiments, the N steps or methods can be implemented using software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.

[0097] Those skilled in the art will understand that all or part of the steps of the methods in the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer program product, and when executed, the program includes one or a combination of the steps of the method embodiments.

[0098] Furthermore, the functional units in the various embodiments of this application can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into a module. The integrated module can be implemented in hardware or as a software functional module. If the integrated module is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer program product.

[0099] The computer program product mentioned above may be a read-only memory, a disk, or an optical disk, etc. Although embodiments of this application have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting this application. Those skilled in the art can make changes, modifications, substitutions, and variations to the above embodiments within the scope of this application.

Claims

1. A method of estimating height with motion behavior constraints, characterized by, The method comprises the following steps: sensing the motion state of the pedestrian and obtaining an initial elevation estimate value of the current floor; determining whether the initial elevation estimate value meets a coarse correction condition, and performing coarse correction on the initial elevation estimate value when the initial elevation estimate value meets the coarse correction condition; performing current floor identification according to the coarse-corrected elevation to obtain an identification result, and determining whether there is floor revisiting according to the motion state of the pedestrian and the identification result; if there is floor revisiting, determining whether there is a drift error in the coarse-corrected elevation, and performing secondary correction on the coarse-corrected elevation according to historical height estimation information of the current floor to obtain a final elevation estimate value of the current floor.

2. The method of claim 1, wherein, The sensing of the motion state of the pedestrian comprises: obtaining measurement data of the pedestrian by an inertial measurement unit, and converting the measurement data into a time-frequency image after denoising processing; constructing a one-dimensional sequence feature extraction network branch and a two-dimensional image feature extraction network branch, and inputting the time-frequency image into the one-dimensional sequence feature extraction network branch and the two-dimensional image feature extraction network branch respectively to obtain double-branch features; performing feature connection and weighted fusion on the double-branch features to generate shared features; performing motion state classification according to the shared features to obtain the motion state of the pedestrian.

3. The method of claim 2, wherein, The conversion of the measurement data into a time-frequency image after denoising processing comprises: performing normalization operation on the measurement data to obtain a normalized original data sequence; mapping the normalized original data sequence to a polar coordinate system to determine the polar coordinate radius and polar coordinate angle corresponding to each data point; calculating the angle difference between each data point based on the polar coordinate radius and polar coordinate angle corresponding to each data point to construct a Gram angle field feature; generating a time-frequency image corresponding to each channel of measurement data according to the constructed Gram angle field feature.

4. The method of claim 2, wherein, The motion state classification according to the shared features to obtain the motion state of the pedestrian comprises: performing motion state classification according to the shared features by using a preset classification identification loss function to obtain the motion state of the pedestrian, wherein the preset classification identification loss function is: ; wherein, is the number of input samples in a training or inference process, is the true label, is the predicted value, is a cross-entropy function.

5. The method of claim 1, wherein, The determination of whether the initial elevation estimate value meets the coarse correction condition comprises: calculating the height variation of the initial elevation estimate value and the elevation at the initial time of the current floor, and determining whether the height variation is greater than a preset variation: if the height variation is greater than the preset variation, it is determined that the initial elevation estimate value meets the coarse correction condition.

6. The method of claim 5, wherein, The coarse correction of the initial elevation estimate value comprises: correcting the initial elevation estimate value according to the elevation average value from the initial time of the current floor to the previous time of the current time to obtain a coarse-corrected elevation.

7. The method of claim 6, wherein, The coarse-corrected elevation is: ; wherein, is the relative height after coarse correction, is the relative height at the initial time of the current floor to the relative height at the previous time of the current time, is the mean operation.

8. The method of claim 7, wherein, The determination of whether there is floor revisiting according to the motion state of the pedestrian and the identification result comprises: identifying the floor at the current time according to the coarse-corrected elevation; determining the floors visited at historical times according to the motion state of the pedestrian; If the floor at the current time point is consistent with the floor visited at the historical time point, it is determined that the floor is revisited.

9. The method of claim 8, wherein, The judgment of whether the coarse-corrected elevation has a drift error comprises: After detecting the floor revisiting, the coarse-corrected elevation is compared with the elevation of the floor visited at the historical time point; If the difference is greater than a preset threshold, it is determined that the coarse-corrected elevation has the drift error.

10. The method of claim 8, wherein, The floor at the current time point is: wherein, is the floor where the current time is located, is the height of the coarse correction, is the height of the initial floor of the trajectory, is the height threshold of the adjacent floor.