Performance Comparison of EKF-Based Algorithms for Orientation Estimation on Android Platform

Consumer electronics mobile devices, such as smartphones or tablets, are rapidly growing in computing power and are equipped with an increasing number of sensors. This enables to use a present-day mobile device as a viable platform for computation-intensive, real-time applications in navigation and guidance. In this paper, we present a study on the performance of the orientation estimation based on the data acquired by the accelerometer, magnetometer, and gyroscope in a mobile device. Reliable orientation estimation based on the readouts from inertial sensors may be used in more complex systems, e.g., to correct the orientation error of a visual odometry system. We present a rigorous derivation of the mathematical estimation model, and we thoroughly evaluate the performance of the orientation estimation mechanism available in the Android OS, and the proposed alternative solutions on an unique dataset gathered using an actual smartphone. From the experimental results, we draw the conclusions as to the best performing algorithm, and then we evaluate its execution time on Android-based devices to demonstrate the possibility of real-time usage. The Android code for the proposed orientation estimation system is made publicly available for scientific and commercial applications.

[1]  Gang Sun,et al.  Implementing quaternion based AHRS on a MEMS multisensor hardware platform , 2013 .

[2]  Hongbo Jiang,et al.  SensTrack: Energy-Efficient Location Tracking With Smartphone Sensors , 2013, IEEE Sensors Journal.

[3]  Young Soo Suh Orientation Estimation Using a Quaternion-Based Indirect Kalman Filter With Adaptive Estimation of External Acceleration , 2010, IEEE Transactions on Instrumentation and Measurement.

[4]  P. Groves Principles of GNSS, Inertial, and Multisensor Integrated Navigation Systems, Second Edition , 2013 .

[5]  Michal R. Nowicki,et al.  Performance comparison of point feature detectors and descriptors for visual navigation on Android platform , 2014, 2014 International Wireless Communications and Mobile Computing Conference (IWCMC).

[6]  Wojciech Giernacki,et al.  Unscented Kalman Filter for an orientation module of a quadrotor mathematical model , 2013, 2013 9th Asian Control Conference (ASCC).

[7]  Bahram Honary,et al.  A Sensor Fusion Method for Smart phone Orientation Estimation , 2012 .

[8]  Roland Siegwart,et al.  Robust Real-Time Visual Odometry with a Single Camera and an IMU , 2011, BMVC.

[9]  Angelo M. Sabatini,et al.  Quaternion-based extended Kalman filter for determining orientation by inertial and magnetic sensing , 2006, IEEE Transactions on Biomedical Engineering.

[10]  F. Daum Nonlinear filters: beyond the Kalman filter , 2005, IEEE Aerospace and Electronic Systems Magazine.

[11]  Emil Olsen,et al.  Accuracy and Precision of Equine Gait Event Detection during Walking with Limb and Trunk Mounted Inertial Sensors , 2012, Sensors.

[12]  Dominik Belter,et al.  Population-based Methods for Identification and Optimization of a Walking Robot Model , 2009 .

[13]  Marek Kraft,et al.  The registration system for the evaluation of indoor visual slam and odometry algorithms , 2013 .

[14]  John L. Crassidis,et al.  Geometric Integration of Quaternions , 2012 .

[15]  D. Simon Optimal State Estimation: Kalman, H Infinity, and Nonlinear Approaches , 2006 .

[16]  I. Rhodes A tutorial introduction to estimation and filtering , 1971 .

[17]  Thomas B. Schön,et al.  Modeling and Calibration of Inertial and Vision Sensors , 2010, Int. J. Robotics Res..

[18]  Nasser Kehtarnavaz,et al.  Fusion of Inertial and Depth Sensor Data for Robust Hand Gesture Recognition , 2014, IEEE Sensors Journal.

[19]  Yewguan Soo,et al.  Real-time video processing using native programming on Android platform , 2012, 2012 IEEE 8th International Colloquium on Signal Processing and its Applications.

[20]  Rui Zhang,et al.  Calibration of an IMU Using 3-D Rotation Platform , 2014, IEEE Sensors Journal.

[21]  Lorenzo Porzi,et al.  Visual-inertial tracking on Android for Augmented Reality applications , 2012, 2012 IEEE Workshop on Environmental Energy and Structural Monitoring Systems (EESMS).

[22]  Michał Nowicki,et al.  WiFi - guided visual loop closure for indoor navigation using mobile devices , 2014 .

[23]  P. J. Hargrave,et al.  A tutorial introduction to Kalman filtering , 1989 .

[24]  James Kennedy,et al.  Particle swarm optimization , 1995, Proceedings of ICNN'95 - International Conference on Neural Networks.

[25]  Laurent Perroton,et al.  Accelerometer and Magnetometer Based Gyroscope Emulation on Smart Sensor for a Virtual Reality Application , 2012 .

[26]  Roland Siegwart,et al.  Fusion of IMU and Vision for Absolute Scale Estimation in Monocular SLAM , 2011, J. Intell. Robotic Syst..

[27]  Xiaoli Meng,et al.  Quaternion-Based Kalman Filter With Vector Selection for Accurate Orientation Tracking , 2012, IEEE Transactions on Instrumentation and Measurement.

[28]  Changhe Li,et al.  An adaptive mutation operator for particle swarm optimization , 2008 .

[29]  Aaron D. Lanterman,et al.  Extended Kalman filter for estimating aircraft orientation from velocity measurements , 2008 .