Indoor Navigation Using Wi-Fi Fingerprinting Combined with Pedestrian Dead Reckoning
Shan-Jung Yu, Shau-Shiun Jan, National Cheng Kung University, Taiwan; David S. De Lorenzo, Athentek Inc.
The radio frequency (RF) fingerprinting based on Wi-Fi received signal strength (RSS) is a popular indoor navigation solution. However, the Wi-Fi fingerprinting has to re-calibrate the database in order to reflect the changes in the received RSS at a certain location. The pedestrian dead reckoning (PDR) along with the use of mobile built-in inertial measurement unit (IMU) and magnetometer could be used to reduce the calibration effort. Thus, the PDR position is obtained by cumulating the displacement of users and is annotated with the Wi-Fi RSS. Then, the reference point (RP) used in Wi-Fi fingerprinting could be replaced by these positions obtained by PDR. Therefore, the PDR algorithm is implemented in three modes, namely texting, phoning, and in the pocket. Furthermore, the integration of PDR with Wi-Fi fingerprinting in the positioning phase is applied to eliminate the cumulated error from PDR and the irregular points caused by PDR calibrated Wi-Fi fingerprinting.
In order to efficiently build the Wi-Fi database, this paper constructs the RSS database by crowdsourcing. That is, the PDR positioning information with the Wi-Fi RSS is collected from users. We train the database by PDR not only in the traditional Cortisone coordinate, but also in the grid coordinate for their positioning performance comparisons. In the Cortisone coordinate, the PDR positioning result is annotated with the Wi-Fi RSS directly once the device receives them. On the other hand, the grid coordinate shows the PDR positioning result grid by grid. All the received RSSs in a grid is treated as a tuple and built into the Wi-Fi database so that the error from PDR could be accepted in a grid. We then apply K weighted nearest neighbor algorithm to perform the Wi-Fi fingerprinting positioning. For the PDR, we conduct it by fusing all the information from IMU and the magnetometer to acquire the displacements of the users in three modes. Since the displacement is derived from step detection, stride length model, and the heading information, we therefore break the PDR procedure into the following steps. First, to deal with the step detection, we apply an algorithm that chooses the step from the magnitude and the temporal phase of the acceleration to provide a more robust step choice. The stride length model is used to calculate the step length. The heading information is obtained by a quaternion based orientation complimentary filter, which employs the concept of quaternion preventing the singularity state. If the resulting PDR and the Wi-Fi fingerprinting are available, then the extended Kalman filter (EKF) would be applied to generate the fused positioning result. In the EKF, the PDR position is regarded as the state model while the Wi-Fi fingerprinting position is used in the measurement model. The cumulated error from the PDR positioning and the loss of Wi-Fi RSS could be reduced by EKF. Therefore, the user positioning result with higher accuracy could be achieved.
In this paper, an indoor navigation algorithm is developed of which the PDR can work in three modes with the error accepted by the Wi-Fi database, and fulfill the crowdsourcing for PDR-calibrated Wi-Fi database. To evaluate the accuracy of PDR, experiments were conducted in a building with a smart phone placed in different positions. The PDR positioning result is then compared with the reference position. The Wi-Fi fingerprinting results of the PDR-calibrated Wi-Fi database is in both Cortisone coordinate and the grid coordinate and the conventional Wi-Fi database are presented and compared. The comparisons show that one or both of the proposed methods are able to carry out equivalent positioning performance as that of the conventional one with simpler procedure. After integrating PDR with PDR calibrated Wi-Fi fingerprinting by EKF, the accuracy of the position is within two meters. Finally, the proposed algorithms are then integrated and implemented into an application for Android smart phones.