{'fraction_non_alphanumeric': 0.024823710025760455, 'fraction_numerical': 0.0069214956675600426, 'mean_word_length': 4.805438066465257, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 3, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Pedestrian Navigation System with Trinal-IMUs for Drastic Motions

The combination of biomechanics and inertial pedestrian navigation research provides a very promising approach for pedestrian positioning in environments where Global Positioning System (GPS) signal is unavailable. However, in practical applications such as fire rescue and indoor security, the inertial sensor-based pedestrian navigation system is facing various challenges, especially the step length estimation errors and heading drift in running and sprint. In this paper, a trinal-node, including two thigh-worn inertial measurement units (IMU) and one waist-worn IMU, based simultaneous localization and occupation grid mapping method is proposed. Specifically, the gait detection and segmentation are realized by the zero-crossing detection of the difference of thighs pitch angle. A piecewise function between the step length and the probability distribution of waist horizontal acceleration is established to achieve accurate step length estimation both in regular walking and drastic motions. In addition, the simultaneous localization and mapping method based on occupancy grids, which involves the historic trajectory to improve the pedestrian’s pose estimation is introduced. The experiments show that the proposed trinal-node pedestrian inertial odometer can identify and segment each gait cycle in the walking, running, and sprint. The average step length estimation error is no more than 3.58% of the total travel distance in the motion speed from 1.23 m/s to 3.92 m/s. In combination with the proposed simultaneous localization and mapping method based on the occupancy grid, the localization error is less than 5 m in a single-story building of 2643.2 m2.


Introduction
The inertial pedestrian navigation system has a wide range of applications in hotspots such as firefighting, indoor security, tunnel patrols, and other fields. These practical applications typically require pedestrians to repeatedly move vigorously in the same indoor environment, such as running and sprint, rather than just regular walking. The reliable navigation information can guarantee the smooth execution of tasks and the safety of personnel in these fields. Although great progress has been made in recent years, there remain various challenging problems such as unbounded accumulative heading error and the capability in dealing with the drastic motions.
The zero-velocity update (ZUPT) algorithm has been widely applied in the field of inertial pedestrian navigation because it is suitable for the foot-mounted IMU case to compensate for traveled distance error during normal walking by introducing heuristic periodic zero velocity corrections [1]. In addition, a method fusing the navigation information of dual foot-mounted ZUPT-aided INSs was proposed [2]. This method is based on the intuition that the distance of separation between right and left foot INSs cannot be longer than a quantity known as foot-to-foot maximum separation. Shi improved the foot-to-foot maximum separation model and advanced an ellipsoid model [3].
The occupancy grid map is an important representation model in the mobile robot environment mapping application, proposed by Moravec and Elfes [23]. This model divides the environment where the robot is located into several neat grids and extracts the status of each grid to determine the environmental accessibility. In recent years, the FastSLAM method based on the occupancy grid using a laser range sensor has been widely applied in the field of robotic navigation. This method uses a laser range sensor to perceive the external environment and estimate the occupancy grid map of the environment. By utilizing the constructed map, the algorithm can effectively correct the positioning error of the robot. However, considering the size and cost of laser range sensors, it is not suitable for pedestrian positioning applications. For this reason, this paper proposes to construct a virtual range sensor using the inertial odometer information to sense the accessible area in the environment and construct the occupancy grid map to deal with the accumulated error of the inertial odometer.
To enhance the capability of the inertial pedestrian navigation system in dealing with the drastic motions and address the unbounded accumulated positioning error, this paper proposed a triple-node IMUs pedestrian inertial navigation system with an occupancy grid-based FastSLAM algorithm. The triple-node IMUs are composed of one waist-worn IMU and two thighs-worn IMUs. The thighs-worn IMUs are utilized to detect and segment the gait. To estimate the step length accurately for drastic motions, we introduce the horizontal acceleration probability distribution function into a step length estimation process to address the issue that the statistic feature fitting method cannot deal with drastic motion with a large speed range. Furthermore, we construct a virtual range sensor to precept the external environment and introduce it into an occupancy grid-based FastSLAM algorithm to correct the long-term position error of the inertial odometer.
This paper is organized as follows: In Section 2, the wearable trinal-IMUs pedestrian navigation system is described. The inertial simultaneous localization and occupancy grid mapping is discussed in Section 3. Analysis of both experiments and results is given in Section 4. Finally, the conclusions and future work are summarized in Section 5.

Triple-Node IMUs Pedestrian Navigation System
This section presents the step detection, step length estimation, and heading estimation algorithms in the proposed trinal-IMUs pedestrian navigation system. In this work, three body locations are waist and thighs. We refer to one waist-worn IMU and the two thigh-worn IMUs. Each IMU is comprised of one 3D-accelerator and one gyroscope, as shown in Figure 1.

Step Detection
Most of the human drastic movements are driven by thighs with the strong periodicity, especially for running and jumping. In order to describe the periodicity feature of thighs changes, a lower limb model is constructed, as shown in Figure 1. The model represents the human leg as a set of joints and links. The joints are chosen to be the hip, knee, ankle , and metatarsal. The links which connected two consecutive joints are the thigh, shank and foot.
The thigh-worn IMUs are not parallel to the femurs due to the presence of muscle tissue in the thighs. To eliminate the deviation between thigh-worn IMU and thigh frame, a model alignment is required in addition to the initial alignment of the inertial navigation system.
The initial alignment process requires the pedestrian to stand still before the navigation begins. When INS is stationary with respect to the ground, the accelerometer measurements only include gravity and the gravity direction coincides with the z-axis of n-frame, so that the attitude matrix can be obtained by the following equation: where b 0 is the initial body frame, n is the local navigation frame (ENU), n is the initial attitude matrix, g n = [0, 0, g] T is the gravity vector with reference to n-frame.
The purpose of model alignment is to solve the attitude deviation matrix of the body frame b with reference to the thigh frame Th to eliminate the effect of installation error on step detection. Since the thigh-worn IMU is fixed to the thigh during the navigation process, meaning the IMU is stationary relative to the thigh, the attitude deviation matrix is constant: where C Th b is the attitude deviation matrix, γ b 0 , θ b 0 , ψ b 0 T is the initial Euler angle of body frame, corresponding to the initial attitude matrix C b 0 n . γ Th 0 , θ Th 0 , ψ Th 0 T is the initial Euler angle of thigh frame and is equal to 0, π 2 , 0 T when the pedestrian stands upright. γ, θ, and ψ represent roll, pitch, and head, respectively. After initial alignment and model alignment, the inertial odometer utilizes the difference of pitch angle between thighs to segment steps. Figure 2a presents the changes of left thigh pitch and right thigh pitch during a set of hybrid movement. It can be seen that thigh pitches change periodically and the left thigh pitch and right thigh pitch are a pair of reverse phase signals both during walking and running movement. Figure 2b presents the difference angle between the left and right thigh pitch. The difference angle changes similar to a sine wave signals in walking and running movement, and each zero-crossing point correspond to the moment when the bearing leg is perpendicular to the ground, which is the end of the last step and the beginning of the next step. Thus, the pedestrian's steps can be separated via zero-crossing detection on the difference angle between the left and right thigh pitch, and the period between two adjacent is a complete gait circle.
As can be seen, the zero-cross point of pitches difference correspond to step 6 of one running action breakdown, and the pitches difference zero-crossing point correspond to step 6 in Figure 3. In such circumstance, the positive value corresponds to the gait with left foot in front, and negative value corresponds to the gait with right foot in front. According to the phase characteristics of θ ThL and θ ThR , corresponding to a step of pedestrian walking and running, the combination of zero-crossing detection method and maximum detection method can detect and segment steps well. Therefore, the difference of θ ThL and θ ThR , ∆θ Th = θ ThL − θ ThR , is used to detect and segment walking and running gait as follows: where SD is the flag bit of gait detection, D ∆θ represents the interval between two adjacent gait. max (∆θ Th ) is the maximum of ∆θ Th within a gait movement. T d and T max is the threshold of D ∆θ and ∆θ Th respectively. T d and T max are designed to prevent the small shaking of a pedestrian's legs while standing from being misidentified as a gait cycle. Usually, the value of T d is not greater than one gait period, and the value of T d is greater than 0 and less than the minimum of the maximum absolute value of the difference in the pitch angle of the legs during each gait cycle. In this paper, T d = 0.1s and T max = 10 • .

Step Length Estimation
For pedestrian step length estimation, the inverted pendulum model is widely used. In such model, the step length is calculated as follows: where l indicates the pedestrian leg length, θ OT indicates the max value of angular between left and right thigh in one gait, and SL indicates the step length estimation. There are certain problems with the model regarding drastic motions. One of these is that shank and thigh of the same leg are not always parallel in one gait during running, as shown in Figure 1 The modeling error will result in a large cumulative error in position estimation. Another problem is that this model requires adjusting the leg length parameter for different users.
Another class of methods for step length estimation is the fitting of statistical features of acceleration, such as in [6] by fitting a nonlinear relationship between maximum and minimum acceleration and step length over a gait period: where A max and A min are the maximum and minimum acceleration during one step period and K is the coefficient. In addition, [5] fits the relationship between gait frequency, acceleration variance, and step length: where SF is step frequency and SV is the variance of acceleration of each step. A, B, C are the regressive parameters. On the one hand, the vertical acceleration included in methods [5,6] introduce large errors in the estimation of the horizontal displacement. On the other hand, the maximum, minimum, and variance of the acceleration cannot completely characterize the characteristics of acceleration changes in a gait cycle. It is difficult to establish a unified relationship between step length and acceleration both in walking and drastic motion through these statistical characteristics.
The acceleration probability distribution function not only contains the maximum and minimum acceleration information but also characterizes the degree of dispersion of the data. Moreover, it contains the components of different velocities. Hence, fitting the probability distribution function and step length can achieve more accurate step length estimate, and better adaptability to various velocities. To establish a step estimation method suitable for drastic motions with a large speed range, we proposed to fit step length through a segment function of horizontal acceleration norm probability distribution of the waist-worn IMU within one gait.
Let f b ib be the waist-worn IMU accelerator output, C n b body-to-navigation-frame coordinate transformation matrix, and f n ib be the specific force of body with reference to navigation frame. Then, and horizontal acceleration norm | f n ib,h | can be calculated as follows: Figure 4 compares the distribution of horizontal acceleration among walking, running, and sprint. Each row corresponds to one step data. In one row, the different colors correspond to the probability of horizontal acceleration norm. It can be seen that there is a clear difference of distribution in walking from other motions, which contains higher acceleration components. In addition, sprint motion has a higher percentage from 35 m/s 2 to 50 m/s 2 .
Since we can record the acceleration values for each moment within one gait, and calculate its probability distribution function, F(| f n ib,h |), the step length can be calculated by the following equation: The linear regression technique is utilized to achieve the optimal estimation of parameters A = [a 0 , a 1 , · · · , a k ] in Equation (9). Assume pedestrian moves along a straight line with known length M times in different speeds. For the m-th movement, according to Equation (9), where l is the straight line length, j is the step count number, and N is the number of step pedestrian takes during one movement. For brevity, we denote F(x 0,j ) as H 0,j and F(x i,j) − F(x i−1,j ) as H i,j . Then, the optimal estimation of parameters is the vector of regression coefficients that minimizes the sum of squared residuals: where

Occupancy Grid-Based FastSLAM for Inertial Pedestrian Navigation
In general, the goal of SLAM is to estimate the pose of pedestrian s and the map Θ of the unknown environment. We present an inertial measurement used-only SLAM method-inertial occupancy grid-based FastSLAM. Before presenting our approach, an overview of the occupancy grid-based FastSLAM algorithm is provided.

Occupancy Grids-Based FastSLAM
The FastSLAM approach attempts to estimate the full SLAM posterior: p(s 1:t , Θ|z 1:t , u 1:t ) (14) which is the distribution that represents the trajectory of pedestrian s 1:t and the map of the environment Θ depend on the set of control inputs u 1:t and the observations z 1:t . The Rao-Blackwellized decomposition was used to decompose the SLAM problem into a pedestrian positioning problem and an environment map construction problem with given pedestrian position: where θ i is the i-th landmark, and N is the number of environment features. The above decomposition shows that the a posterior probability distribution of SLAM can be decomposed into the product of the a posterior probability distribution of the pedestrian's path and the posterior probability distribution of environment features given a known path. The FastSLAM algorithm uses a particle filter to estimate pedestrian trajectory distribution. For each particle, the individual path-based map features are independent of each other. Therefore, in the second part of Equation (15), the conditional probability of the remaining N environmental map features is estimated by a bundle of binary Bayesian estimator. The conditional probability of each feature is the probability of the grid being occupied in Occupancy Grids-based FastSLAM. As a result, each particle is composed of a pedestrian pose and a map; thus, the m-th particle at time t is defined as where m = 1, 2, · · · n, is the index corresponding to the m-th particle where n is the total number of particles used in the particle filter, s [m] t is the pose estimate of the m-th particle at time t, and Θ [m] is the environment maintained by the m-th particle.
The FastSLAM algorithm consists of four basic steps: sampling new poses through the motion model, updating the environmental map, calculating the particle importance weights, and resampling based on particle weights.

Motion Model Update
The first step of algorithm is to generate new pose for each particle by sampling from the probabilistic motion model of the pedestrian. For the m-th particle: This estimate is added to a temporary set of particles, along with the path s t−1 . Under the assumption that the set of particles s 1:t−1 is distributed according to p(s 1:t−1 |z 1:t−1 , u 1:t−1 ), the new particles drawn from Equation (17) are distributed according to p (s 1:t |z 1:t−1 , u 1:t ) (18) which is referred to as the proposal distribution.

Occupancy Grid Update
Occupancy Grid-based FastSLAM decomposes the unknown environment into a finite set of cells where each cell holds the probability that the location in the environment enclosed by the cell is occupied by an object. A solution to estimate these probability is the binary Bayes filter. In binary filter, the posterior of grid is commonly implemented as a log odds ratio in order to avoid truncation problems that arise for probabilities close to 0 or 1. The odds of grid state is defined as the ratio of the probability of this grid being occupied is divided by the probability of its negate: l t (θ i ) = log p(θ i |s 1:t , z 1:t , u 1:t ) 1 − p(θ i |s 1:t , z 1:t , u 1:t ) = log p(θ i |s 1:t , z 1:t ) 1 − p(θ i |s 1:t , z 1:t ) (19) and the value of posterior of grid can be recovered from the log odds form as p(θ i |s 1:t , z 1: Thus, according to Bayes theory, the posterior of grid being occupied at time t can be estimated by involving an inverse measurement model p(θ i |s t , z t ): Here, p(θ i ) is the prior probability of θ i being occupied and is selected to be 0.5 typically.

Importance Weight Calculation
Samples drawn from the proposal distribution are distributed according to p (s 1:t |z 1:t−1 , u 1:t−1 ) which does not match the desired posterior p(s 1:t |z 1:t , u 1:t ). This difference is corrected through importance sampling. For FastSLAM, the importance weight of each particle w [m] t is equal to the ratio of the SLAM posterior and the proposal distribution described previously: 1:t |z 1:t , u 1:t , p s where p(z t |s t−1 ) is the probabilistic measurement model of the sensor being used by pedestrian and η is a normalizing factor-for the brevity, we simply use the normalizing factor to indicate that the weights have to be normalize to 1. The importance weight calculation procedure incorporates the sensor observations into the estimate which were not included in the pose sampling process.

Resampling
Once the weight of particles is calculated, a new set of samples X t is drawn from the weighted particles with probabilities in proportion to the weight w t . In such way, the new set of samples X t are distributed according to target distribution in Equation (14).

Inertial Pedestrian Occupancy Grid-Based FastSLAM Model
A key characteristic of the FastSLAM implementation is the sensing of the modality of the grid via an exteroceptive sensor. In order to minimize costs, decrease deployment effort, and remove the reliance on prior maps of the indoor surroundings, the basic idea of inertial pedestrian occupancy grid-based FastSLAM is constructing a virtual exteroceptive sensor, called 'visual range sensor', using proprioceptive information, including the heading change and the step length estimation from the triple-node IMUs pedestrian navigation system, to track the pedestrian's motion and build the layout of the environment.
The major steps of the inertial pedestrian occupancy grid-based FastSLAM algorithm is illustrated in Figure 5. First, the environment is divided into a set of equal size grids, and each grid holds the probability of the grid being accessible. We can sample the pedestrian's pose at time t − 1, as shown by the yellow circles. Since the pedestrian is more likely to be in accessible areas, a grid with more particles has a higher probability that it is accessible, i.e., the whiter grid in the figure. We use a beta distribution to describe this fact and the grid accessible probability is measured via a visual range sensor. The detail will be discussed in Section 3.2.2.
Once the pedestrian has moved one step, a new distribution of the pedestrian's pose, the proposal distribution, can be calculated based on the state transition model and the pose distribution at the time t − 1.Then, the probability of grid accessibility in the map is updated via binary Bayes filter. For the same reason, the grids with more particles have higher grid accessible probability, corresponding to the grids getting whiter in the figure. After the map update process, the resampling procedure proceeds, and the new particle set is the proposal distribution of the next iteration. When the pedestrian revisits the area with a built map, the particles with large error will be in the grid with smaller grid accessible probability and will be discarded after the resampling procedure. In other words, the error of the inertial odometer is corrected.

Inertial Pedestrian Odometer and State Transition Model
The step length and the heading variation within one step constitute the control vector u of inertial pedestrian occupancy grid-based FastSLAM. Then, the pedestrian's pose can be achieved recursively as follows: for which p x,t and p y,t are the pedestrian's position at time t, ψ t is the pedestrian's heading at time t. That is, a new pose could be generated based on the state transition model of pedestrian Equation (23), from the pose of the m-th particle at time step t − 1, the current control input u t and the characteristics of the noise on u t . Here, we assume that the step length estimation noise and heading change estimation noise both obey a Gaussian distribution. The result is that the particles are distributed according to Equation (17).

Virtual Range Sensor
In order to perceive the accessibility of grids in the environment, we construct a virtual range sensor using inertial information. This sensor can be seen as a laser range sensor with a very short sensing range. Meanwhile, compared to the laser sensor, which perceives the distance between the obstacle and the sensor, the virtual range sensor perceives the distance between the pedestrian and the accessible grid. The virtual distance sensor measures the distance from the grid where the pedestrian is currently located to the nearest accessible grid. Obviously, the grid which the pedestrian located is the accessible area. Thus, the sensor output is always zero.
The occupancy grid mapping algorithm requires a marginalized inverse measurement model, p(θ i |s 1:t , z 1:t ), as shown in Equation (19). This probability provides information about the environment conditioned on a measurement caused by this environment. In this paper, a simple ad hoc inverse measurement model is provided based on the assumption that the more times a grid is accessed, the more likely it is to be accessible. We use a beta distribution to characterize the uncertainty of inverse measurement model and its expectation yields: where α i is the total times of the m-th particle goes through the i-th grid. α 0 is the prior parameter represents the possibility of i-th grid being passed through and is selected as 1 typically. β is the prior parameter represents the possibility of the i-th grid not being accessed and is selected equal to α 0 that is, p(θ i ) is 0.5. It can be seen from Equation (24) that p(θ i |s t , z t ) increases with the increasing of the number of total times of the grid being accessed. The value of α 0 and β determine the initial probability of the inverse measurement and the probability that the inverse measurement increases when the grid is accessed again.

Occupancy Grid Update
The idea of the occupancy grid map is to divide the entire environmental space into a number of discrete grids Θ in equal size, as shown in Figure 6. Each grid θ i is assigned a probability value p(θ i ) ∈ (0, 1), representing the number of grid occupied by the likelihood. In the proposed algorithm, p(θ i ) = 1 means the space of i-th grid is accessible for pedestrian and p(θ i ) = 0 means the space of i-th grid is intransitable. The size of the grid is an important parameter in the occupancy grid mapping algorithm. In the laser range sensor-based mapping method, the laser range sensor pixel size is chosen as the grid edge length which allows the measurement of obstacles to be continuous and without overlap.
In the proposed method, it is difficult to guarantee non-overlapping observations of the approachable grid due to the inconsistent step size of pedestrian movements. However, it is still possible to guarantee the continuity of the observation of the accessible grids by limiting the edge length of the grids to no less than the minimum step length. Excessively large grid edge lengths result in uncorrected errors in the position estimation of pedestrians moving within one grid. The grid edge length is therefore chosen as the maximum step length, which ensures continuity of observation of the approachable grid and allows the pedestrian positioning error to be corrected in a smaller number of steps. As opposed to the original occupancy grid update that estimates the probability distribution of obstacle position, the inertial occupancy grid update estimated the probability distribution of accessible space, such as the corridor and rooms in the indoor environment, shown as the blue grid in Figure 6.
The inertial pedestrian occupancy grid-based FastSLAM implements the occupancy grid map update using Equation (21), where the first term is under beta distribution as shown in Equation (24).

Weight Update and Resampling
The weight associated with each particle m is updated using the formula for a FastSLAM weight update Equation (22), which for the importance density function in inertial pedestrian occupancy grid-based FastSLAM resolves to: where η is the normalize factor. Frequent resampling leads to a loss of particle diversity, making it difficult for particles to form loops. To avoid the loss of particle diversity due to frequent resampling, the degree of particle diversity is assessed before resampling: The particle set is resampled for importance only if D is too large.

Results
To validate the application effect of the proposed inertial pedestrian occupancy grid-based FastSLAM, several different experiments were conducted on different testers. As illustrated in Figure 7, three MTw (Xsens) inertial measurement units were attached to the pedestrian's thighs and waist. The six-axis inertial data of each sensor were output at a sampling frequency of 100 Hz. The inertial information was recorded in a laptop during the test and post-processed by the software developed in MATLAB environment according to the algorithm presented above.

Validation of the Step Length Estimation for Drastic Motions
The first test was designed to verify whether the proposed step length estimation method was suitable enough for regular walking, running, and sprint motions. Four testers, including two males and females, were asked to walk, run, and sprint along a 55.8 m straight track at least 12 times for each motion. After calculating the step length estimation parameters for each tester, the cumulative distribution function of the absolute value of the distance estimation residual is shown in Figure 8. The root mean square error of each step length estimation in this process is shown in Table 1. In Figure 8, 93.8%, 95.6%, 92.2%, and 95.0% of the four pedestrian's different motions absolute distance estimation residuals are in the range of [-3 m,3 m] (5% of 55.8 m). In addition, it can be seen from Table 1 that the proposed method has better adaptability to higher speed motion under the premise of obtaining average accuracy under low-speed motion and the characteristics of the distribution of the residuals of the step length estimates for each step are generally consistent with a Gaussian distribution. Therefore, in the state transition Equation (23), the Gaussian distribution can be used to describe the noise characteristics of the step length control vector.
These results indicate that it is applicable to utilize the proposed method to estimate the step length both in walking, running, and sprint motions. Once the parameters are determined in the initialization procedure, for example, walking along a track in different motions, the step length can be estimated in real-time.

Evaluation of the Occupancy Grid-Based FastSLAM for Inertial Pedestrian Navigation
In order to evaluate the occupancy grid-based FastSLAM for inertial pedestrian navigation algorithm, the indoor experiments were conducted in a rectangular area of the building in Nanjing University of Aeronautics and Astronautics. As shown in Figure 9, the route is 1083.5 m long and includes two-room walking path. The starting position and ending position are the same point.
We select six turners with prior position information as ground truth points to assess the pedestrian position error. Testers were asked to move along the pre-established route five laps in hybrid motion modes, including normal walking, running, and sprint, as illustrated in Figure 9. In this test, 500 particles are selected, and the edge length of the grid is 2 m.  Figure 10a presents the estimated occupancy gird map using the proposed method. The colored grid is the normalized result of the sum of the probability maps carried by all the particles, with white indicating the probability that the grid is passable is 0.5, and dark blue indicating the probability that the grid is passable is 1. Figure 10b compares the estimated trajectory from the inertial odometer (blue line) and the estimated trajectory from the proposed SLAM method (green line). It should be noted that the green curve is the expected distribution of all particles at each moment, rather than the final posterior distribution of all pedestrian pose sequences as shown by most SLAM methods. In other words, once time t is experienced, the expected position in the graph at time t will not change due to the subsequent optimization process. The reason we do this is that in most scenarios the user is most concerned with the accuracy of navigation at the moment. The expectation of posterior distribution of posture at all final moments after optimization has a smaller error than the above method, which may mislead the researchers' evaluation of the navigation system. The tester was asked to go through some ground truths mentioned above; during the test, the tester recorded the number of steps taken before the moment through ground truths. The estimation of the position of these ground truths is shown in the black cross in the figure; meanwhile, the red circles indicate the true position of the ground truths. Figure 11a illustrates some of the main characteristics of the positioning error and the number of times pedestrian passes the ground truths, in which the positioning error of the inertial odometer (green line) accumulated over time and the positioning error of proposed inertial occupancy gird-based FastSLAM is always kept at a low level. The final absolute return position error is 59.41 m and 3.22 m, respectively, and the relative error is 5% and 0.3%, respectively.
In order to eliminate the influence of the Monte Carlo particle sampling randomness to the location result, we have processed the above data 100 times, and the cumulative distribution of the RMS position error between the trajectory and the ground truths are shown in Figure 11b. It can be seen from the graph that the probability of average error less than 4 m is 89.9%. The second experimental scenario is a random walk in multiple rooms. The experimental route consisted of multiple turns, which posed a challenge for heading estimation. The tester was asked to walk around the multiple rooms randomly, and return to the starting point after every certain time. We used the starting point as ground truth to evaluate the positioning accuracy of the system. The parameter settings of the system remained the same as in the previous experiment. Figure 12a shows the map constructed by the proposed method based on the testers' movements. Figure 12b compares the estimates of pedestrian trajectories from the inertial odometer and the proposed method. The green line shows the positioning results of the inertial odometer and the blue line shows the positioning results of the proposed method. It can be seen that the heading of the inertial odometer gradually diverges, while the heading estimate of the proposed method is very stable. The red point is the starting point of navigation and also the ground-truth of the path, the black circle indicates the ground truth estimate of the inertial odometer, and the black cross indicates the ground truth estimate of the proposed method. The variation of the RMS ground truth estimation error over time is shown in Figure 13a, where the green line is the absolute value of the ground truth estimation error of the inertial odometer, and the proposed method corresponds to the blue line. It can be seen that the positioning error of the proposed method does not increase with time, effectively eliminating the cumulative error of the inertial odometer. Similarly, in order to eliminate the influence of the randomness of Monte Carlo particle sampling on the localization results, we processed this data set 100 times, and the cumulative distribution function of the RMS position error is shown in Figure 13b; the proposed method has an error of less than 3.36 m at a 95.96% confidence interval.

Discussion
The main purpose of this study is to develop a multi-IMU inertial pedestrian odometer integrating with the occupancy grid-base FastSLAM approach to improve the performance of the inertial pedestrian navigation system on drastic motions. The traditional PDR based inertial pedestrian navigation system has advantages including no additional infrastructure needed and no radio frequency interference but has disadvantages including the inaccurate step length estimation on drastic motions such as running and sprint, and unbounded error on heading estimation. We suggested a simple step detection and segment approach by detecting the zero-crossing of the pitch of thighs. Meanwhile, a step length estimation method for drastic motion based on the pdf of the waist-worn horizontal acceleration norm is proposed. These two methods together constitute an inertial pedestrian odometer adapted to drastic motions. The experiments on different testers on different speed motions indicate that the proposed inertial pedestrian odometer can provide the step length estimation with the same precision as the slow one when the pedestrian is moving fast. Moreover, we extended the occupancy grid-based FastSLAM algorithm to the inertial navigation system. By constructing a virtual range observer, the simultaneous positioning and mapping of pedestrians can be realized by relying on inertial odometer without any additional sensors. The experiment results indicate that the proposed inertial occupancy grid-based FastSLAM can accurately construct the map of the passable area, and the system can effectively restrain the course error divergence of pedestrian inertia odometer. This method can provide long-term and high-precision pedestrian positioning information without increasing the cost, which is of great significance for the practical application of pedestrian inertial navigation.
The proposed method can improve the long-term accuracy of inertial pedestrian navigation system. However, there are still some limitations in this study. Firstly, the inertial occupancy grid-based FastSLAM utilizes the historic trajectory information to correct the positioning and heading error which means that the position and heading errors are corrected only when the pedestrian revisits the area they have already visited. Secondly, the determination of the initial position is not considered in this study. We focus on solving the issue of accumulative error rather than the initial position. Nevertheless, according to the basic principles of inertial navigation, the initial position error will be gradually coupled to the attitude estimation. On the one hand, it will lead to an increase of course estimation error; on the other hand, it will lead to inaccurate waist attitude estimation, which will affect the step length estimation, which limits the application of the system in larger areas.
For the first limitation, we can use the historical trajectory of multiple people to correct map estimation and user location estimation by studying the method of multi-pedestrian collaborative SLAM. For the second limitation, the combination of GPS and the inertial system can be used to obtain the absolute position of pedestrians through the satellite navigation system before they enter the blocked area of the satellite.

Conclusions
In this paper, we propose a triple-node IMU inertial pedestrian odometer which improves the accuracy of inertial pedestrian localization in dealing with drastic motions. Compared to the traditional PDR system, the proposed approach can provide the step length estimation with the same precision as normal walking when the pedestrian is running or sprinting. Moreover, we extended the occupancy grid-based FastSLAM, which is commonly used in a vision-based navigation system, to the inertial pedestrian navigation by constructing a virtual range sensor to precept the external environment. The combination of these two methods could estimate step length accurately and eliminate the accumulated positioning error of the inertial pedestrian odometer. Less than 5 m positioning accuracy in a single-story building of 2643.2 m 2 is achieved. In future work, we plan to extend the single inertial occupancy grid-based FastSLAM method to the multi-pedestrian collaborative SLAM method.