轉自:https://blog.csdn.net/learning_tortosie/article/details/89889853
前言
IMU-TK提供簡單的函數和數據結構,用於校準基於MEMS的慣性導航單元,以及處理和顯示IMU數據。IMU-TK實現了一種多位置校準方法,該方法不需要任何參數調整,只需要手動移動傳感器並放置在一組不同的,自動檢測的靜態位置。IMU-TK還提供了一系列數據集成功能。
參考
D. Tedaldi, A. Pretto and E. Menegatti, “A Robust and Easy to Implement Method for IMU Calibration without External Equipments”. In: Proceedings of the IEEE International Conference on Robotics and Automation (ICRA 2014), May 31 - June 7, 2014 Hong Kong, China, Page(s): 3042 - 3049 (PDF)
A. Pretto and G. Grisetti, “Calibration and performance evaluation of low-cost IMUs”. In Proceedings of the 20th IMEKO TC4 International Symposium, Sep. 15 - 17, 2014 Benevento, Italy, pages: 429 - 434 (PDF)
要求
代碼在Ubuntu 14.04上通過了測試。
IMU-TK需要以下工具和庫:CMake,Eigen3,Ceres Solver,OpenGL,QT和Gnuplot。要在Ubuntu上安裝這些必需的軟件包,請在終端執行命令:
sudo apt-get install build-essential cmake libeigen3-dev libqt4-dev libqt4-opengl-dev freeglut3-dev gnuplot
對於Ceres Solver,請另行安裝。
安裝
打開終端,執行:
git clone https://github.com/Kyle-ak/imu_tk.git
cd imu_tk
mkdir build
cd build
cmake ..
make
可能出現找不到Eigen的錯誤,解決方法不在此贅述。
運行
bin/test_data/xsens_acc.mat爲加速度計原始數據,bin/test_data/xsens_gyro.mat爲陀螺儀原始數據。
數據格式爲:時間戳(單位爲秒) X軸數據 Y軸數據 Z軸數據
文本的格式爲UTF-8無BOM。
使用test_imu_calib對bin/test_data/中包含的數據執行IMU校準:
cd bin/
./test_imu_calib test_data/xsens_acc.mat test_data/xsens_gyro.mat
生成兩個標定文件,分別爲陀螺儀和加速度計的旋轉矩陣,刻度因數和零偏。
test_imu_acc.calib:
1 -0.0033593 -0.00890639
0 1 -0.0213341
-0 0 1
0.00241278 0 0
0 0.00242712 0
0 0 0.00241168
33124.2
33275.2
32364.4
test_imu_gyro.calib:
1 0.00593634 0.00111101
0.00808812 1 -0.0535569
0.0253067 -0.0025513 1
0.000209295 0 0
0 0.000209899 0
0 0 0.000209483
32777.1
32459.8
32511.8