Data Fusion of Dual Foot-Mounted INS Based on Human Step Length Model

Pedestrian navigation methods based on inertial sensors are commonly used to solve navigation and positioning problems when satellite signals are unavailable. To address the issue of heading angle errors accumulating over time in pedestrian navigation systems that rely solely on the Zero Velocity Update (ZUPT) algorithm, it is feasible to use the pedestrian’s motion constraints to constrain the errors. Firstly, a human step length model is built using human kinematic data collected by the motion capture system. Secondly, we propose the bipedal constraint algorithm based on the established human step length model. Real field experiments demonstrate that, by introducing the bipedal constraint algorithm, the mean biped radial errors of the experiments are reduced by 68.16% and 50.61%, respectively. The experimental results show that the proposed algorithm effectively reduces the radial error of the navigation results and improves the accuracy of the navigation.


Introduction
The Global Navigation Satellite System (GNSS) is the most common navigation solution in an open outdoor environment, with an accuracy of up to a meter or even higher [1].However, in an indoor environment or in a special environment where satellite signals cannot be received outdoors, the above satellite-based navigation solution cannot meet people's needs [2].Therefore, autonomous navigation solutions that rely only on their own sensors are needed to achieve navigation and positioning in a satellite-denied environment.Autonomous navigation systems play a crucial role in various scenarios, particularly in meeting the safety needs of workers in special situations such as tunnel operations and underground mines, assisting firefighters in rescue work at fire scenes, helping individuals navigate through the wild jungle, and providing guidance in large buildings such as shopping malls, libraries, and museums.
Pedestrian navigation systems are categorized into non-autonomous modes, primarily based on satellite navigation, and autonomous modes, which rely on sensors like the Inertial Measurement Unit (IMU) [3].Different from the widespread use of GNSS in outdoor environments, indoor navigation and positioning uses more diverse methods.Pascacio et al. [4] conducted a survey and analysis of the main technical means used in indoor navigation and positioning.The proportions of each main technology and their related papers are as follows: Wireless Local Area Network (WLAN) accounts for 53.5%, IMU accounts for 30.9%,Ultra Wideband (UWB) accounts for 15.4%, Bluetooth (Bluetooth) accounts for 2.3%, 5G accounts for 2.3%, Radio Frequency Identification (Radio Frequency Identification, RFID) accounts for 2.3%, and vision cameras account for 1.1%.
Research has been conducted on pedestrian navigation technology since the 1980s.Currently, it is divided into two categories: Pedestrian Dead Reckoning (PDR) and Inertial Navigation System (INS).
The PDR algorithm can be deployed on different parts of the human body, such as the chest, waist, and feet, and has the advantage of easy installation and application [5].Marth et al. first designed a personal navigation system composed of a pedestrian dead reckoning module and GPS in 1998.When satellite signals are denied, the system can only use accelerometers and magnetometers for dead reckoning [6].Yao et al. proposed a more robust method to solve the difficulty of calculating the number of steps for gait detection caused by the traditional PDR in which the person is in the in situ traveling state, the core idea of the method is to recognize the walking patterns of pedestrians, such as normal walking and fast walking [7].Basso et al. proposed to process vertical acceleration using a phase-locked loop to detect the stride length and number of steps, and then to calculate the step length using a segmented linear relationship with the stride length, as well as estimating the direction of the stride based on lumbar kinematics using geometric features of planar acceleration [8].Based on the PDR algorithm, Liu et al. proposed a new indoor positioning solution by combining extended Kalman filtering with the Wi-Fi signal round-trip time, and the average positioning error was reduced by 37.4∼67.6%[9].
With the development of deep learning technology, many scholars try to use it to solve the old problems of the traditional PDR algorithm.Edle et al. applied BLSTM-RNN to gait detection to improve the stability and recognition ability of the algorithm [10].Lin et al. [11] and Luo et al. [12] analyzed the pedestrian directions of forward, backward, left, and right using LSTM and CNN.Wang et al. designed a step estimation network based on LSTM, with a stride error rate of 4.63% and a walking distance error rate of 1.43% [13].Furthermore, Asraf et al. designed PDRNet [14] based on ResNet, and Klein et al. designed StepNet [15,16], which directly uses accelerometer and gyroscope measurement data to output the direction and distance through the neural network.The steps of using accelerometer and gyroscope data to perform gait detection, and then completing step length estimation and heading estimation using the PDR method, are skipped.However, the above-mentioned PDR methods based on deep learning inevitably have the problem of a large computational workload and often require the use of computer graphics cards for calculations.Therefore, under the current circumstances, this solution is still mainly limited to the scope of laboratory research, which is not conducive to the embedded design of pedestrian navigation equipment and cannot be deployed in the short term.
With the continuous improvement of Micro Inertial Measurement Unit (MIMU) accuracy, many researchers have focused their research on INS-based pedestrian navigation solutions.Elwell et al., in 1999, proposed the idea of designing a Zero Velocity Update algorithm using pedestrian step characteristics [17].Based on this, Foxlin designed the first foot-mounted pedestrian inertial navigation system in 2005 [18].Borenstein et al. of the University of Michigan proposed the Heuristic Drift Reduction (HDR) method for estimating and eliminating the heading angle drift error [19].Skog et al. of the Royal Institute of Technology, Sweden, quantitatively analyzed a variety of gait detection algorithms and ZUPT algorithms [20].They demonstrated that gyroscope-based detection outperforms accelerometer-based detection under specific assumptions.Zhang et al. realized the combined pattern recognition of four gait patterns and four device poses [21].Meanwhile, Xu et al. investigated an indoor localization algorithm combining IMU and UWB [22].Garcia et al. proposed a new FootSLAM algorithm using only IMU data, showing the possibility of using human odometers for indoor mapping and precise navigation [23].Zhang et al. also proposed a yaw angle error self-observation algorithm (YESO) to reduce the yaw angle error and calibrate the yaw angle [24].
Meanwhile, multi-IMU information fusion algorithms have gradually become a hot research topic in recent years.Qian et al. used the IMU of the trunk and lower limbs to form a virtual foot IMU which, in turn, realizes the pedestrian navigation function, and the final positioning accuracy is about 6% of the travel distance [25].Based on a zerospeed detector based on hypothesis testing and great likelihood estimation designed using human gait information, Shi Wei et al. designed a Kalman-filtered ellipsoid-constrained algorithm under the maximal step length constraint while walking [26,27].Xu Yuan et al., on the other hand, solved the problem of poor viewability of heading information in the traditional foot-based heading reference system by designing an indoor personal navigation system combining a foot-based heading reference system and a shoulder-based electronic compass [28,29].Patel et al. conducted experimental analysis on four different fusion methods of multi-IMU, proving that the navigation accuracy of using five IMU fusion filters has been improved [30].Niu et al. [31,32], Li et al. [33], and Prateek et al. [34] also studied pedestrian navigation algorithms based on dual foot-mounted IMU.They showed that, by limiting the distance between the two feet, the Kalman filter can be used to constrain the navigation error and obtain better robustness in the system.However, the above studies did not make full use of human kinematic characteristics to suppress heading angle errors to improve navigation accuracy.In this paper, we built a human step length model using human kinematic data collected by the motion capture system.And based on the established human step length model, we propose the bipedal constraint algorithm to address the issue of heading angle errors accumulating over time in pedestrian navigation systems.The contributions of the paper are as follows: • We collected human kinematics data using an optical-inertial fusion motion capture system.A whole-body musculoskeletal model of the human body was created to analyse navigation-related human kinematic parameters and build the human step length model.This provides a parameter basis for the navigation algorithm.

•
We developed an embedded pedestrian navigation system that includes an IMU and a barometer.The system acquires and wirelessly transmits navigation data.We used this system to verify the effectiveness of the navigation algorithm.

•
We proposed the bipedal constraint algorithm to address the issue of the ZUPT algorithm's inability to constrain the heading angle.The virtual observation quantities and corresponding observation matrices of both the ZUPT algorithm and the bipedal constraint algorithm were constructed for application to the Kalman filter.The experiment demonstrates that the bipedal constraint algorithm effectively limits the heading angle error during navigation and enhances the accuracy of navigation and positioning.
The rest of the paper is organized as follows: in Section 2, we present the human step length model and the bipedal constraint algorithm.In Section 3, we describe the experiment in detail and evaluate the results.In Section 4, we provide a conclusion for our study and talk about future work.

Pedestrian Navigation System
The pedestrian navigation system is based on the Strapdown Inertial Navigation System (SINS) and Kalman filter (KF), and uses distance for coupling.

Strapdown Inertial Navigation System
The core of SINS is to use numerical integration to calculate the attitude, speed, and position of the carrier.Therefore, the SINS algorithm mainly includes three parts: an attitude update algorithm, a speed update algorithm, and a position update algorithm.

Attitude Update Algorithm
The differential equation for the attitude of the carrier in the n-system of geographic coordinates is given by Ċn Here, C n b is the attitude array of the b-system with respect to the n-system.ω b nb is the angular velocity of the b-system with respect to the n-system.Also, according to the law of chain multiplication of matrices, there is represents the rotational change of the b-system from moment t m−1 to moment t m using the i-coordinate system as the reference frame.C n(m) n(m−1) represents the rotational change of the n-system from moment t m to moment t m−1 using the i-coordinate system as the reference frame.When using the two-subsample cone error compensation algorithm, for (ϕ×) 2 (6) around the center of the earth, and g n is the acceleration due to gravity.Integration leads to the following formula: Here, are the velocities of the carrier at the moments t m−1 and t m , respectively, and there are The numerical integration of Equations ( 9) and ( 10) can be approximated as follows: Here, ∆v is the specific velocity increment and ∆θ is the angular increment.

Position Update Algorithm
The matrix form of the differential equation for the position of the inertial navigation system is as follows: Here, Here, L, λ, and h represent the longitude, latitude, and altitude.R M represents the principal radii of curvature along the meridional section.R N represents the principal radii of curvature along the prime-vertical normal section.The numerical integration of Equation ( 13) yielded

Attitude Initialization
When the IMU is stationary, the equation for specific force can be simplified to Transform and expand Equation ( 17) into the component form: Then, Equation ( 19) represents the third row of the attitude matrix C n b .The elements of the first two rows can be chosen arbitrarily, provided that they satisfy the right-hand rule.

Human Step Length Model
As the error of the pedestrian navigation system accumulates over time, it is feasible to use the motion constraints of pedestrians as error constraints.Based on this, more accurately grasping the kinematic characteristics of pedestrians by establishing a human step length model is one of the key means of improving the positioning accuracy and reliability of autonomous navigation systems.

Data Collection
Data collection is performed following time synchronization and system calibration, utilizing both the Optitrack optical motion capture system and the FOHEART MAGIC inertial motion capture system.
Table 1 shows the data collection program, which involved selecting 10 volunteers to complete the human kinematics data collection.The "Load" refers to the weight a person carries when moving.The data collection modes in this case include walking on a treadmill at speeds of 1, 2, 2.5, 3, 3.5, 4, 4.5, and 5 km/h for one minute each, as well as free-walking and free-jogging for three laps each, resulting in a total of ten modes.

Data Processing
The process of data collection involves five stages: real-time data collection, data pre-processing, conversion to standard data formats, data slicing, and database storage.The human kinematics data collection site is shown in Figure 1.By calculating the distance between the two feet, the variation pattern of the step length under different traveling speeds and weight loads can be obtained, and then fitted with a linear function:

Bipedal Constraint Algorithm Based on Step Length Model
The ZUPT algorithm can effectively limit the correction of velocity state quantities in the navigation system.However, it does not provide sufficient constraints on the position and heading angles.This paper presents a bipedal constraint algorithm based on the step length model for two IMUs located in each foot.The algorithm implements correction constraints on the heading angle and position to enhance the system's navigation accuracy.
According to the human step length model, there is a maximum distance threshold between the dual feet of a pedestrian while walking.When one of the feet is in a stationary state and the other foot is in a swinging state, if the stationary foot is used as the coordinate origin, the swinging foot is within a ball with the origin as the center and the threshold as the radius.If the distance between the two feet exceeds the threshold range, a virtual position observation can be constructed based on the distance between the feet and the threshold.This observation can then be combined with the Kalman filter to correct the navigation system.
In SINS, the position p consists of the longitude L, latitude λ, and height h.When dealing with the relationship between two IMUs, it is more intuitive and convenient to use the navigation coordinate system based on east, north, and sky.The conversion formula is as follows: The position coordinates are P E for the east, P N for the north, and P U for the sky.Also, noting that the spacing between two IMUs is D, here is Here, l and r represent the left foot IMU and the right foot IMU, respectively.P r and P l represent the positions of the left foot IMU and the right foot IMU, respectively.Assume that when the left foot is in a stationary state and the right foot is in a swinging state, if the distance between the two feet is greater than the set threshold B, then Here, Pr is the virtual observation position of the right foot position at this time, σ p represents the variance of position, I represents the identity matrix, and R r is the covariance matrix.After converting the resulting east, north, and sky positions back to longitude, latitude, and altitude via Equation ( 21), the virtual observations when using the cooperative navigation algorithm are obtained: And the corresponding observation matrix is To provides an overview of the navigation algorithm.The pseudocode is listed in Algorithm 1.
When a pedestrian walks, their feet alternate between contacting the ground, resulting in a zero-speed state.To determine when both feet are at zero speed, a zero-speed determination is performed, and the ZUPT algorithm is applied to the feet in this state.Additionally, when one foot is stationary and the other is swinging, the system makes a threshold judgment on the distance between the two feet.If the swinging foot exceeds the range of the stationary foot, cooperative navigation constraints are applied to the swinging foot.The system also includes a barometer to provide altitude information for the navigation system to use as a constraint.The altitude constraint is performed in the same way as the zero-speed correction algorithm, that is, when the foot is at zero-speed.In this paper, the bipedal spacing constraint threshold is provided by the human step length model.

Algorithm 1 Bipedal Constraint Algorithm Based on Step Length Model.
Require: ∆v and ∆θ measured by bipedal IMUs Ensure: Attitude, speed, and position of bipedal navigation systems k ← 0 SINS l ← Initial system state and Kalman filter of left foot SINS r ← Initial system state and Kalman filter of right foot then Perform the ZUPT algorithm on the foot at zero speed Algorithmically constrains feet in non-zero speed states

Experiment and Results
The effectiveness of the proposed method was confirmed through experiments.The experiment utilized a self-developed pedestrian navigation module with TI's CC2652P1FRGZR as the main processor and communication processor.The LPD22HBTR collects air pressure data, while the six-axis IMU sensor ASM330LLH collects acceleration and angular velocity data.Additionally, the three-axis geomagnetic sensor MMC5883 is used to collect geomagnetic data.The collected data are encoded in hexadecimal and transmitted to the tablet through the communication module for storage.The parameters of the sensors are shown in Table 2.The pedestrian module can be powered by either a USB port or a battery.Figure 2 shows the foot module prototype, which controls the starting and stopping of the system through a switch.During the experiment, the navigation modules of both feet were powered on and connected to the tablet.The navigation modules were placed side by side on the ground for 10 s to preheat and initialize, and then installed on the left and right feet, respectively.The experimenter completed two walks in different locations, labeled Walk 1 and Walk 2 (see Figure 3 and Figure 4, respectively), returned to the starting point, stopped collecting data, and recorded the test results.Analyzing the results of the experiment, it can be seen that, although ZUPT alone can be used for speed constraints and preliminary navigation solutions can be performed, it cannot effectively constrain the heading angle error during the navigation process.As the navigation time increases, the trajectories will gradually diverge, and the navigation settlement results of the two feet will gradually expand from each other.This is obvious when walking in a straight line.As the pedestrian walks in a straight line, the navigation results of the two feet gradually deviate from the original heading, and the distance between them gradually increases.When there are turns during walking, the navigation errors accumulated due to heading errors will be more significant, and this error will increase with the increase in turns.In the end, it is impossible to return to the starting point of the trip relying solely on the navigation solution results of ZUPT.After adopting the bipedal constraint algorithm, the INS on the left and right sides provide each other with position observations, and the Kalman filter effectively reduces the errors in the navigation results of the left and right INS due to gyroscope drift.Therefore, it is necessary to introduce the bipedal constraint algorithm to constrain the position and heading angles.
The radial error results of the navigation solutions before and after the introduction of the bipedal constraint algorithm are shown in Table 3.The left and right biped radial errors of Walk 1 are reduced by 53.07%and 86.08%, respectively, the left and right biped radial errors of Walk 2 are reduced by 60.84% and 45.46%, respectively, and the mean biped radial errors of Walk 1 and Walk 2 are reduced by 68.16% and 50.61%, respectively.And Table 4 shows a comparison of the proposed algorithm with other algorithms.It can be seen that, by introducing the bipedal constraint algorithm, the positioning accuracy of the navigation algorithm has been significantly improved, and our proposed algorithm has better results.

Conclusions
In this article, we used motion capture technology to collect human kinematic data from multiple volunteers, and a human step model was established based on this.Secondly, given the defect that the ZUPT algorithm cannot effectively constrain the heading angle, we proposed the bipedal constraint algorithm based on the established human step length model, which was used to construct a virtual observation of the relative position.Real field experiments demonstrated that, by introducing the bipedal constraint algorithm, the mean biped radial errors of Walk 1 and Walk 2 were reduced by 68.16% and 50.61%, respectively.The results of the experiments indicate that the algorithm effectively reduces the radial error of the navigation results and improves the navigation accuracy.
In future work, more types of human kinematics data of gaits can be collected to obtain human kinematics conditions under different gaits, and then different constraint algorithms can be proposed for different gaits to further improve the accuracy of the navigation system.Secondly, the algorithm proposed in this article, combined with the ZUPT algorithm, effectively suppress the divergence of navigation errors, but do not completely eliminate it.Considering that the heuristic course correction algorithm also has an effective constraint effect on the course angle, combining the algorithm in this paper with it may lead to better navigation results.In addition, the current algorithm only applies to two feet.In the future, we should consider adding new nodes, such as at the waist and head, to further improve the robustness of the algorithm.
) represent the attitude matrices at t m−1 and t m , respectively.C b(m−1) b(m)

Figure 1 .
Figure 1.Data collection site and marked points: (a) shows the data collection site and (b) shows the marked points.

Table 1 .
Data collection program.

Table 2 .
Specification of the sensors.

Table 4 .
Comparison of four algorithms in terms of position error.