# A Review of Pedestrian Indoor Positioning Systems for Mass Market Applications
## 3 Inertial Based Systems
### Step and Heading Systems  
Contrarily to the strapdown navigation systems, the step and heading systems do not use the integration of the acceleration signal to compute the position of the user. Instead, these systems detect the steps and estimate the length and heading of each step from the accelerometer and gyroscope signals. Then recursively estimate the position of the user by accumulating vectors that represent the movement of the user at each step, that is,  
\[m_{x}\left(k\right) =m_{x}\left(k-1\right)+l_{step}\left(k\right)\cos(\theta\left(k \right)), \tag{14}\] \[m_{y}\left(k\right) =m_{y}\left(k-1\right)+l_{step}\left(k\right)\sin(\theta\left(k \right)), \tag{15}\]  
where \(m_{x}\) and \(m_{y}\) are respectively the \(x\), \(y\) components of the position, \(k\) is the time index, \(l_{step}\) the step length and \(\theta\) the heading. The fundamental cycle for a step and heading system is [6]:  
Figure 8: Strapdown navigation system. * Identification of the subset of data of an individual step. * Estimation of the step length. * Estimation of the heading. Typically, the step of a pedestrian is divided into two phases: (i) the stance phase where the foot is firmly planted on the ground and (ii) the swing phase where the foot is in the air. Most of the algorithms designed to identify step events are based on the detection of the stance phase. Usually, threshold based methods are used to identify the lack of activity measured by the IMU during the stance phase. Traditionally these methods are based on the magnitude of the acceleration but the angular velocity has also been employed [6]. Alternatively there are methods that detect repetitive events on the walking data. Figure 9 shows the module of the acceleration during a walk of a pedestrian, the raw data and the filtered data is shown as many methods filter the data to eliminate high frequencial noise components of the accelerometer measurements. The detection of the steps can be done by counting the number of peaks produced by the strike of the heel in the floor [88]. Other methods compute the zero crossings of the acceleration signal after subtracting the gravity [89]. More complex methods correlate the received signal with a pre-stored template of the acceleration during a step [90]. Due to the repetitive behavior of the acceleration during the steps, spectral analysis is also employed to detect peaks in the typical stepping frequencies [91]. Recently, in [41] authors present a step detection method based on the pitch angle measured by the gyroscope of a smartphone placed in the pocket of the user. The estimation of the step length can be obtained from the vertical displacement of the pelvis as shown by [PERSON] et al. in [92]. Following this procedure the step length is estimated as,  
\[l_{step}=K\sqrt[4]{a_{z_{max}}-a_{z_{min}}}, \tag{16}\]  
where \(K\) is a user-specific constant and \(a_{z_{max}}\), \(a_{z_{min}}\) are respectively the maximum and minimum of the acceleration in the vertical axis. The step length can also be estimated as a linear function of the step frequency considering that the step length and frequency increase with the speed of the user [91]. Finally, the last point of the fundamental cycle of step and heading systems is the estimation of the heading of each step. The heading estimation of these systems is equal to the strapdown systems, that is, the heading is obtained by the integration of the gyroscope signal. Thus, the final position  
Figure 9: Acceleration signal measured on the hip of a pedestrian during a walk. estimation is drifted by the errors accumulated during the integration. Fortunately, in the step and heading systems the growth of the error is linear with time instead of the cubic error of strapdown systems. The heading can be obtained also using a magnetometer but in indoor environments that include ferromagnetic materials, the accuracy of the heading estimation is degraded.