Lecture11 IMU Motion Tracking 32fff653 9c39 4a6e Acdb 69d57bc32dfd
Lecture11 IMU Motion Tracking 32fff653 9c39 4a6e Acdb 69d57bc32dfd
Amitangshu Pal
IMU Sensors
IMU Sensors
https://www.99science.com/what-is-the-accelerometer-used-for-in-mobile-devices/
Motion Tracking Applications
https://www.mdpi.com/2072-4292/4/6/1519/htm
https://www.nature.com/articles/s41467-020-19424-2
https://www.semanticscholar.org/paper/Reviews-on-Various-Inertial-Measurement-Unit-(IMU)-Ahmad-
Ghazilla/4e189da5f9798a2a1caabd3dfb96ff794768a625
Motion Tracking Problem Formulation
Suppose we want to track the trajectory of a drone from its IMU data
Initial 𝑥0
position 𝑦0
𝑧0
𝑥𝑡
Algorithm 𝑦𝑡
𝑧𝑡
IMU
data
𝑎𝑥 𝑔𝑥 𝑚𝑥
Accel = 𝑎𝑦 Gyro = 𝑔𝑦 Mag = 𝑚𝑦
𝑎𝑧 𝑔𝑧 𝑚𝑧
Initial 𝑥0
position 𝑦0
𝑧0
𝑥0 𝑥𝑡
𝑦0 + 𝑥𝑎 𝑡 𝑡. 𝑑𝑡 𝑦𝑡
0 0
𝑧0 𝑧𝑡
IMU
data
Simple Case: No Rotation
𝑡 𝑡 𝑡
𝑡
𝑣𝑥 = න 𝑎𝑥 . 𝑑𝑡 𝑑𝑥 = න 𝑣𝑥 . 𝑑𝑡 → 𝑑𝑥 = න න 𝑎𝑥 . 𝑑𝑡
0 0 0
0
𝑡 𝑡
𝑑𝑥 = න න (𝑎𝑥 +𝑛𝑜𝑖𝑠𝑒) . 𝑑𝑡
0 0
https://www.semanticscholar.org/paper/AI-IMU-Dead-Reckoning-Brossard-
Barrau/c80a0c6fcdadc1afe848d7089a314192897f3ab1
What if the Motion Includes Rotation also?
Let’s model rotation using 𝐴𝑥 = 𝑏 form
1 0 0
Y: Y: X:
0 1 90° Y: −1 1
90°
0 0
X: 1
−1 X:
0
𝑥𝐺 cos 𝜃 − sin 𝜃 𝑥𝑠
𝑦𝐺 = 𝑦𝑠
sin 𝜃 cos 𝜃
𝜽
What if the Motion Includes Rotation also?
𝑅 = 𝑅𝑥 𝛼 𝑅𝑦 𝛽 𝑅𝑧 𝛾
cos 𝛼 cos 𝛽 cos 𝛼 sin 𝛽 sin 𝛾 − sin 𝛼 cos 𝛾 cos 𝛼 sin 𝛽 cos 𝛾 + sin 𝛼 sin 𝛾
= cos 𝛼 cos 𝛽 sin 𝛼 sin 𝛽 sin 𝛾 + cos 𝛼 cos 𝛾 sin 𝛼 sin 𝛽 cos 𝛾 − cos 𝛼 sin 𝛾
−sin𝛽 cos 𝛽 sin 𝛾 cos 𝛽 cos 𝛾
Measures Measures
acceleration magnetic north
3𝑥3 𝑎𝑥 𝑚𝑥 0 0
𝑟𝑜𝑡𝑎𝑡𝑖𝑜𝑛 𝑎𝑦 𝑚𝑦 = 0 𝑀
𝑚𝑎𝑡𝑟𝑖𝑥 𝑎𝑧 𝑚𝑧 9.8 0
𝑡
𝜃𝑡 = 𝜃𝑡−1 + න 𝜔𝑡 . 𝑑𝑡
0
𝑡
𝜃𝑡 = 𝜃𝑡−1 + න (𝜔𝑡 + 𝑛𝑜𝑖𝑠𝑒) . 𝑑𝑡
0
https://www.researchgate.net/figure/Drift-data-of-a-gyroscope-within-a-period-
of-time_fig5_305485580
Overall Algorithm
Someone can use a mixture of Method1 and Method2
While static give preference to Method1
While moving give preference to Method2
𝑥0 𝑥𝑡
𝑦0 + 𝑦𝑡
𝑧0 𝑧𝑡
𝑡 𝑡
IMU IMU
3D orientation න න 𝑎 . 𝑑𝑡
data (Global) 0 0 𝑥
Path Estimation Error Accumulation
Our Experimental Outcome