Geo-information an Improved Pdr/magnetometer/floor Map Integration Algorithm for Ubiquitous Positioning Using the Adaptive Unscented Kalman Filter

In this paper, a scheme is presented for fusing a foot-mounted Inertial Measurement Unit (IMU) and a floor map to provide ubiquitous positioning in a number of settings, such as in a supermarket as a shopping guide, in a fire emergency service for navigation, or with a hospital patient to be tracked. First, several Zero-Velocity Detection (ZDET) algorithms are compared and discussed when used in the static detection of a pedestrian. By introducing information on the Zero Velocity of the pedestrian, fused with a magnetometer measurement, an improved Pedestrian Dead Reckoning (PDR) model is developed to constrain the accumulating errors associated with the PDR positioning. Second, a Correlation Matching Algorithm based on map projection (CMAP) is presented, and a zone division of a floor map is demonstrated for fusion of the PDR algorithm. Finally, in order to use the dynamic characteristics of a pedestrian's trajectory, the Adaptive Unscented Kalman Filter (A-UKF) is applied to tightly integrate the IMU, magnetometers and floor map for ubiquitous positioning. The results of a field experiment performed on the fourth floor of the OPEN ACCESS ISPRS Int. 2639 School of Environmental Science and Spatial Informatics (SESSI) building on the China University of Mining and Technology (CUMT) campus confirm that the proposed scheme can reliably achieve meter-level positioning.


Introduction
Pedestrian Dead Reckoning (PDR) [1,2] is a priority technique for the first responder ubiquitous positioning system.Several positioning algorithms have been developed over the past ten years.
The basic PDR model involves three components: step detection, step length estimation and heading angle estimation [3,4].Acceleration measurements are an ideal choice for step detection because of the periodicity of a pedestrian's walking pattern.They require little or no infrastructure for pre-installation in buildings, but without an external reference, errors quickly accrue [5].
In a standard PDR algorithm, the step number and length are detected using the threshold for vertical acceleration, and the accuracy of the results is not as good as that of the estimates.In practice, while walking, the velocity of one foot should be zero when it is settled down.Therefore, considering the different walking patterns of different users, the Zero-velocity information, which can improve the position result, can be used to detect the step and calculate the step length.
Meanwhile, orientation determination is also an essential issue for the PDR algorithm that requires attention because the sensor is unlikely to be axis-aligned.It continuously rotates with respect to the Navigation frame (N-frame) during the walking cycle.We must, therefore, track the rotation of the sensor by using the angular velocities provided by the gyroscopes and the magnetic field strength (MFS) from the magnetometer.However, both have their associated limitations.
Moreover, as we know, measurement errors are inevitably present within the sensor data, and a triple integration results in a potentially cubic growth in time (drift).Taking the drift into account has implications on regularly closing the integration loop by applying external constraints to the system.The most widespread PDR constraint is provided by Zero Velocity Updates (ZUPTs) [6][7][8], which is also used in this paper [9].
Hence, floor map information is important for this kind of research.To overcome the constraints we elaborated on before, a floor map can be used to further calibrate the bias and correct for unreasonable positioning results, keeping the walking trace under control.It works by rectifying the weight of the position information or correcting the heading angle, among others.For example, combining gyroscope measurements with the use of a floor map allows the orientation to be corrected using only map aids [10,11], and large heading errors are eliminated via long-range geometrical constraints exploited by Particle Filters (PFs) [2,11,12].Unfortunately, the large number of particles makes such algorithms unrealistic in terms of real-time operations.Hence, the unscented Kalman filter, which requires a limited number of particles (2n+1, where n denotes the dimension of the state vector) and still confers the advantage of a Kalman filter, has been chosen for this study.
In addition, it is also well recognized that there exist many surveys on various positioning systems in the literature such as WiFi [13,14], UWB [15,16], RFID [17,18], Zigbee [19,20], and Image-Based Location (IBL) [21,22], among others.However, most of them require a fundamental facility to support their detection.In this paper, zero-velocity is detected and used to develop an improved PDR model, and thereafter, it is used to fuse floor map topology to provide a more accurate position without any other hardware preparation.
In this paper, a scheme for indoor positioning by fusing the floor map and sensor data to obtain a real-time hybrid indoor navigation result is presented.Compared with the existing technology, integrating the zero-velocity detection method and high sampling frequency could improve the accuracy and sensitivity of step detection and step length estimation to some extent.Moreover, an adaptive unscented Kalman filter (A-UKF) is presented to fuse the map information with the improved PDR result, as a compromise for considering both accuracy and Computational Load (CL).In Section 2, a type of zero-velocity detection method is proposed, and Section 3 proposes the basic theory for map matching used in this method.Subsequently, a fusion algorithm based on an A-UKF is demonstrated in Section 4.Then, Section 5 details the methodologies used in this study.Section 6 lists the equipment and environment for the experiments and the test designs to verify the accuracy and robustness of the idea, which is also analyzed.Finally, Section 7 concludes the paper.

Zero-Velocity Detection
The ZDET algorithm is considered the most reliable and versatile method regardless of the user and displacement patterns (walk, run, side walk, crisscross) [23].Just as its name implies, at foot stance, the velocity is zero, while v, which is obtained by integrating the free acceleration, should be below some certain threshold δ.However, due to the measurement noise and bias of the accelerometers, de-noising has to be applied.The algorithm is elaborated below.

Acceleration Processing
As the acceleration measurements have noise and gross errors, a processing model is required before PDR model development.
(1) Transform the captured accelerations.acci from the B-frame (B) is transformed into the Navigation frame (N) as the Figure 1 shows below using the rotation matrix: =  → •    ; then, the influence of gravity is canceled out.
(b) High-Pass (HP) filter accelerometer data.The Butterworth digital and analog filter, which is a kind of ordinary HP/LP filter, is used in this algorithm: [, ] = (, , ′′), where N is equal to 1 and "s" equals "high". must satisfy 0.0 <  < 1.0, with 1.0 corresponding to half the sample rate.

Zero-Velocity Detection (ZDET) Model
We do not have a consensus on the best model for Zero-velocity detection (ZDET) for all situations.Hence, in this experiment, four kinds of detector models, provided by Nilsson [9], have been chosen as alternative schemes.They are presented below: (1) Generalized likelihood ratio test (GLRT) 22 1 ( ) * ( ) ( ) * ( ) () where () and () represent the data on the tri-axis gyros and free acceleration, respectively, and   and   denote the standard deviation of the respective associated noise.Meanwhile, n denotes the window size of the zero-velocity detector, and T is the test statistic for the detector.
(2) Accelerometer measurement variance test (MV) where () denotes the raw data on the tri-axis acceleration and  denotes the average value of the acceleration from 1 to n.
(3) Accelerometer measurement magnitude test (MAG) where  is the linearization and  denotes local gravity.
(4) Angular rate measurement energy test (ARE) To verify the accuracy of the four schemes, we tested them under conditions similar to our test site (with corners and lines), and the results are shown below: As we see in Table 1, the covariance denotes the gap between the measured result and real trajectory for each step.GLRT and ARE perform much better than the other two models.We therefore choose GLRT as our ZDET model in the experiments.

Step Length Estimation
(1) The acceleration after step detection during each step,    , is integrated to obtain the linear velocity    :    =    +    /.We set the velocity to be zero when the foot is stationary [25].(2) We obtain the position increment at step k, ∆  = (∆  (ℎ), ∆  (), ∆  ()) , by integrating the corrected velocity samples,    , at every single step: (3) The 2D SL is computed by taking the horizontal Cartesian distance of the position increment: The step length estimation results for the respective Walking and Running models are shown in Table 2: The results demonstrate that the accuracy of Walking and Running for several tests with the same experimenter, but different steps, are above 90% and 85%, respectively (compared with ground truth), indicating that the method developed is a reliable method for indoor experiments.

Heading Determination by Fusing Gyroscope and Magnetometer Data
Heading determination is a significant component of PDR-based positioning.The heading angle ψ is defined as the angle of rotation about the Z-axis with respect to the horizon/ground, which can be estimated using a gyroscope integrated with a magnetometer as well as by a magnetic field.
First, we fuse the data from the magnetometer and gyroscope using the heading estimation algorithm presented by Wonho Kang in [21].The fused heading angle is calculated as follows: where m and n denote the magnetometer and the gyroscope, respectively, and α, β and γ are the weights of the current measurements from the gyroscope and the magnetometer. , and  , denote the measurements acquired by the gyroscope and the magnetometer, respectively, for the  ℎ step.  is the standard deviation of the magnetometer, and   is the correlation between the magnetometer and the gyroscope readings. ∆, is the difference between  , and  , . ∆, is the difference in the magnetometer readings between two consecutive steps k and k − 1.

Figure 2. A test of heading fusion.
Figure 2 presents the fusion results of a test for which a person walked forward dozens of steps with a smartphone held firmly in his hand and then crossed the first corner (turn of almost 38.5 degrees).After a long corridor, the experimenter eventually turned left (turn of approximately 90 degrees) and reach the destination.The results reveal that the pseudo-heading measurements recorded by the magnetometer before and after the turn are considerably smoothed by the proposed algorithm, reducing fluctuation to a certain extent [12].

The Improved PDR
Presented below is the flow chart (Figure 3) for the improved PDR method: Compared with the traditional PDR method, ZDET could render the velocity to be zero, which eliminates the residual error in the velocity.

Floor Map Matching Algorithm
Map matching is a kind of position-calibrated method based on software technology, which is used as a sort of pseudo-measured technology.The main idea involves comparing localization results and the passable zone in the floor map, from which the most suitable trajectory should be found.We can use the Point of Interest (POI), such as a corner, to calibrate the accumulated error.In a broad sense, map matching in Indoor Positioning can be classified into a combined application category rather than a framework model category [26].

Correlation Matching Algorithm Based on Projection (CMAP)
The CMAP is a kind of matching algorithm that involves mapping points to arcs.As shown in Figure 4 when the user's position (Point P) exceeds the set buffer zone, by comparing the respective distances (d1, d2 and d3) between Point P and each Line (L1, L2 and L3), an optimal solution that matches the user's position to the nearest lines instead of knots and sharp points ("nearest" here represents the shortest distance between the terminal and road) can be determined.In most situations, this strategy performs better than the point to point (P2P) method [10].

Zone Division
First, the base map is to be divided into several components, such as passable zones and impassable zones.The passable zone can also be divided into linear vector zones and non-linear vector zones [12].
As the width of the corridor (indoor) has a limit, the walking trace can be seen as an approximate straight line, denoted by the grey components in Figure 5, and the corners can be thought of as non-linear zones.

Vector Matching
When the walking trace is out of range, such as observed when running into an impassable zone, it can be rectified by CMAP to a certain extent.Moreover, the POI can be evaluated using the accumulated gyroscope data, as shown in Figure 6.When we turn a corner, the valley of accumulated data may be under a certain limit (10 rad in this instance).

Adaptive Unscented Kalman Filter (A-UKF)
Despite the better accuracy of the approaches described above, the absolute heading angle obtained using pre-process formula (5) may exhibit unpredictable errors, which could be eliminated by map matching (CMAP) to a certain extent.Considering the combination of the above methods and the non-linearized features of the observation equation, the Unscented Kalman Filter may be a suitable method to use [27][28][29].

Dynamic Equation
The system state is estimated using recursive UKF equations, and the state equation is where   and   are the position states in the northern direction and the eastern direction, respectively, at time k;   denotes the heading angle of the pedestrian; ̃ and  ̃ denote the step length and angle velocity, respectively; and Wk−1 is the system noise at time k − 1.

Observation Equation
The observation equation for the integrated step length based on AHRS, the heading angle and orientation measurements can be written as follows: where   is the step length calculated using velocity increments of two consecutive steps and ∆  is the heading angle variable determined by CMAP, including corners and galleries.  is the k th heading angle measured by formula (5), and V is the measurement noise vector.

A-UKF Algorithm
If the dynamic model of the system is abnormal, the variance of the dynamic model has to be adjusted to control the parameter estimation.Based on an Unscented Kalman filter (UKF) and the adaptive filtering algorithm, using the UKF algorithm for importance sampling, the sampling variance and mean value can be calculated by establishing the adaptive factor and real-time adjustment of the sampling variance, thereby weakening the error state model [30].
The steps for calculating the adaptive state parameter variance, which is different from ordinary UKF, is as follows: (1) Adaptive parameter The distinguishing statistic of the adaptive factor is the discrepancy of the state. ̅ |−1 denotes the state forecasting value,  ̃ denotes the robust state solution, and  ̅  denotes the difference between the state forecasting value and robust solution.When  ̅  reaches a certain limit, the system is considered to be in an abnormal state [31].
where tr(• ) denotes the trace formula.The form of the adaptive factor function is: where C is constant and ranges in value between 0.85 and 1. (

Adaptive Factor Test
To verify the effectiveness of the adaptive factor, an experiment was designed for proving the effect of A-UKF.The route in the SESSI building is shown below in Figure 9: As we can see in Figure 10a, the A-UKF trace is much closer to the real trace than the classic UKF trace, and it eliminates the influence of artificial error more rapidly.In addition, from Figure 10b, we see that when a gross error appears, the adaptive factor will rectify it, as does the two corners method, but with much less fluctuation, which means that the corners may cause some error that is still smaller than the gross error, which is also corrected.

An Improved PDR/Magnetometer/Floor Map Integration Scheme
In summary, the methodologies used are described below: Step (1) Theoretical analysis.A series of basic studies have been analyzed.As mentioned in the introduction, recent PDR systems are becoming a feasible option for indoor localization due to the continual miniaturization of inertial sensors (Inertial Management Unit and Attitude Heading Reference System).Moreover, based on the three main components of PDR (step detection, step length estimation and orientation determination), we select the ZDET algorithm, an unusual but accurate algorithm, to detect the step.Then, during every step, a continuous integration algorithm is used to determine the distance with the acceleration, which is recorded from the accelerometer and transformed to N-frame coordinates.Moreover, the determination of orientation should be the most essential step.We therefore use a hybrid filter to fuse the data, provided by the AHRS system, to guarantee the stability and precision of the orientation.

Equipment and Situation
We use a commercially available Inertial Measurement Unit, x-IMU, from x-io Technologies in UK.The x-IMU was designed to be the most versatile Inertial Measurement Unit (IMU) and Attitude Heading Reference System (AHRS) platform available.It hosts on-board sensors, a configurable auxiliary port and real-time communication via USB, Bluetooth or UART, which makes it both a powerful sensor and controller.The on-board SD card, battery charger (via USB), real-time clock/calendar and motion trigger wake up also make the x-IMU an ideal standalone data logger.
The x-IMU has three orthogonally oriented accelerometers, three gyroscopes and three magnetometers.The accelerometers and gyroscopes are MEMS solid state with capacitive readouts, providing linear acceleration and rate of turn, respectively.Magnetometers use a thin-film magnetoresistive principle to measure the Earth's magnetic field.
The performance of each individual MEMS sensor within this facility is summarized in Table 1.They suffer from a significant bias, and this bias also varies over time; therefore, PDR algorithms have the challenge of avoiding excessive error accumulation (drift) integration.
To verify the effectiveness of the proposed algorithm, a field experiment was performed on the fourth floor of the School of Environmental Science and Spatial Informatics (SESSI) building on the campus of China University of Mining and Technology (CUMT) in Xuzhou, Jiangsu, China.In Figure 13a, blue arrows indicate linear corridors, and red "corners" indicate non-linear corridors and other areas that are unavailable for a person to pass through.A type of AHRS named x-imu produced by x-io Technologies Limited was used as the user terminal in the experiment; its technical specifications are shown in Table 3.

Experiment
To compare the tracking results, four schemes were designed: Map matching (achieved by A-UKF) was used to correct the information from different sensors for Schemes 1 and 3.In Schemes 2 and 3, the ZDET was used for step detection and step length estimation, and the ordinary PDR was accepted by Scheme 1.The floor level should, in general, be determined in advance from Z-axis accelerometer measurements, although only 2D positioning was considered here.
Figure 14 shows the position trajectories for the three schemes.The colorful lines represent the travel paths calculated using the different schemes.In the test, the test participant walked with a uniform and stable gait; therefore, the true trajectory should be stable.
As seen from Figure 15, the map-matching algorithm could help PDR eliminate the accumulated error, which should be an inevitable problem for classic PDR.However, some issues are still revealed to some degree; the step length estimation and step detection may be imprecise, and the error will be accumulated just as a black line in a block.Moreover, compared with ZDET, the positioning results of the MZDET are more accurate and rarely suffer from the influence of a variable heading angle.Moreover, compared with an ordinary PDR algorithm, the figure below illustrates that the UKF algorithm preserves the continuity and stability of the PDR algorithm while simultaneously restricting the accumulation of errors, thereby improving the positioning accuracy.
Figure 16 shows the step series of the position errors of the three schemes with respect to the reference positions provided by a master station.The largest errors of the MZDET integration algorithm were observed during hundreds of steps, which it shows much better than the other two methods.
Moreover, we can see in Figure 17 that when a gross error (huge error) is observed, the adaptive factor is able to react and rectifies it rapidly.The MSE, the average error (AE) and the maximum error (ME) reveal that the map-aided ZDET algorithm achieved the most reliable and accurate positioning results.In this test, the accuracy indicated by the MSE of the integrated MZDET indoor positioning algorithm was improved by 78.3% compared with the pure ZDET and the AE and ME were reduced by 73.8% and 69.2%, respectively.Compared with the MPDR algorithm, the MSE of the integrated WPO algorithm was improved by 32.2%, and the AE and ME were reduced by 39.5% and 53.7%, respectively (Table 4).As seen from the comparison, the integrated MZDET positioning algorithm results in an improvement in the accuracy, reliability, and calculation rate and a decrease in the accumulated error; therefore, this method is superior to the others to a certain extent.Step gamma

Robustness Test
To demonstrate the robustness of the A-UKF integration algorithm for a foot-mounted indoor positioning system, some gross errors (three times the threshold of the step length covariance) were added to the step length observations as listed in Table 5: Figure 18 illustrates the positioning trajectories determined using the UKF algorithm and the A-UKF algorithm.As shown in Table 6, seven gross-error-contaminated points, which cause the trajectory to be deteriorated, are observed around each corner and linear corridor in Figure 13a.Table 6 shows the residuals of these two algorithms for each affected time point (as shown in the table before), and the results demonstrate that the A-UKF algorithm achieves a much higher reliability and accuracy.Gross errors were also added to the θk measurements (three times the threshold of the heading angle covariance), as listed in Table 7, to verify the robustness of both algorithms.The resulting positioning trajectories obtained by using the UKF algorithm and the A-UKF algorithm are shown in Figure 19.As shown in Figure 19, the seven gross-error-contaminated points cause the trajectory to be deteriorated (3) Considering the stability of UKF, the adaptive parameter is integrated into the algorithm.The experiments show that compared with the classic UKF, A-UKF offers a much more powerful robustness, improving the positioning reliability and producing a dramatic upward shift in operating rate and quality.(4) In view of the considerable CL of A-UKF, which could load upon read-time calculation on an ordinary smartphone, there is the possibility of quasi-real-time measurements using mobile phones instead of a central computer, as has generally been used in other recent experiments.

Conclusions
This paper investigated several positioning algorithms for indoor navigation systems.A Zero-Velocity Update (ZDET) algorithm step detection method was presented.The proposed floor-map-aided ZDET algorithm was combined with an adaptive unscented Kalman filter (A-UKF).The experimental test results indicate that the ZDET methods eliminated the error of step length estimation and step detection to a certain extent.It was also demonstrated that the A-UKF could be very useful for correcting the heading angle and improving the quality and accuracy of the positioning results.Further development of the algorithm will focus on fusing other data sources, such as WiFi and ibeacon based on Bluetooth Low Energy (BLE), which could improve the accuracy and stability of the algorithm and make it more efficient.

Figure 1 .
Figure 1.Illustration of the two coordinate systems.

Figure 3 .
Figure 3. Flow chart of the improved PDR.

Figure 4 .
Figure 4. Demonstration of Correlation Matching Algorithm based on Projection (CMAP).

Figure 8 .
Figure 8. Flowchart of the filter process.

Figure 9 .Figure 10 .
Figure 9. Test Route in the School of Environmental Science and Spatial Informatics (SESSI) Building.

Figure 12
shows this sensor.It is 55 × 35 × 18 mm (L × W × H) in size and almost 50 g in weight.

Figure 12 .Figure 13 .
Figure 12.Photos of the equipment and their usage: (a) the x-IMU and (b) foot-mount installation.

Figure 14
Figure 14 Estimated position of the three schemes.

Figure 15 .
Figure 15.The accumulated error of the PDR algorithm.

Figure 16 .
Figure 16.The error step series of the three schemes.

Figure 17 .
Figure 17.The variance of the adaptive parameter.

Figure 18
Figure 18 Estimated position based on A-UKF and UKF.

Table 2 .
Gait recognition based on the ZDET algorithm.
2) Calculating the adaptive filter equivalent variance denotes the variance of the Predictive Sample Point (PSP) and   and   represent the variance and covariance of the Predictive Measurement Point (PMP), respectively.The flowchart is shown below in Figure8:

Table 3 .
Technical specifications of the IMU.

Table 4 .
Error analysis of the three schemes.

Table 5 .
Gross errors added to the step length measurements.

Table 6 .
Residuals of the gross-error epochs.