EuRoC數據集內容解釋說明
本筆記用於EuRoC Datasets的解釋說明,即如何讀懂EuRoC數據集的各個文件。如果解釋的不對的地方請諸位指出。
綜述
用於室內MAV的雙目+IMU數據集,包含兩個場景
- 蘇黎世聯邦理工學院ETH的一個machine hall
- 普通房間
硬件設備
-
飛行器機體:AscTec Firefly
-
雙目VIO相機:全局快門,單色,相機頻率20Hz,IMU頻率200Hz,具備相機和IMU的硬件(hw)同步,雙目相機型號MT9V034,IMU型號ADIS16448
-
VICON0:維肯動作捕捉系統的配套反射標誌,叫做marker
-
LEICA0:是激光追蹤器配套的傳感器棱鏡,叫做prism
-
Leica Nova MS50: 激光追蹤器,測量棱鏡prism的位置,毫米精度,幀率20Hz,
-
Vicon motion capture system: 維肯動作捕捉系統,提供在單一座標系下的6D位姿測量,測量方式是通過在MAV上貼上一組反射標誌,幀率100Hz,毫米精度
座標系約定和符號
如上圖,總共框中四個傳感器,對應數據集結構中cam0,cam1,imu0,leica0四個文件夾,其中prism和marker公用一個座標系,
飛行器的Body Frame是以IMU的中心作爲Body Frame的,四個文件夾所有的傳感器數據都是相對於各自的傳感器座標系(Sensor Frame)的,當然IMU的Sensor Frame就是飛行器的Body Frame
在每個傳感器文件夾裏配套一個senor.yaml文件,描述了該傳感器相對於Body座標系的座標變換情況,以及傳感器內參。
旋轉座標系變換約定
設相機座標系下的向量變換爲世界座標系下的向量
則公式爲:
注意
R_WC //意思是將一個在C座標系下表示的點的座標,變換成以W座標系下表示的點的座標
所以表示將所有Sensor座標系下的向量,變爲以Body Frame座標系下的向量。
數據集結構
- mav0
- cam0
- data dir
- data.csv
- sensor.yaml
- cam1
- 上同
- imu0
- data.csv
- sensor.yaml
- leica0
- data.csv
- sensor.yaml
- state_groundtruth_estimate0
- data.csv
- sensor.yaml
- body.yaml
groundtruth輸出格式
18位時間戳
- timestamp
p代表position,指的是MAV的空間3D座標,RS代表這個座標是在R座標系的值,也就是LEICA位姿跟蹤系統座標系下測到的值,S指的是原來的值是從Sensor座標系下得到的,後來又變換到了R座標系。R可能代表LEICA座標系,x代表這是3D位置的x軸方向上的真值。單位位米
- p_RS_R_x [m]
- p_RS_R_y [m]
- p_RS_R_z [m]
q代表quaternion四元數,表達了MAV的朝向信息,RS代表是在R座標系下測到的朝向信息,但是實際上最開始是在Sensor座標系下的朝向,後來只不過被變換到了R座標系下,w爲四元數的實部,xyz爲虛部
- q_RS_w []
- q_RS_x []
- q_RS_y []
- q_RS_z []
v代表這是MAV的速度信息,而且是在R座標系下的速度信息,單位m/s
- v_RS_R_x [m s^-1]
- v_RS_R_y [m s^-1]
- v_RS_R_z [m s^-1]
w代表這是MAV在R座標系下的角速度信息,單位rad/s
- b_w_RS_S_x [rad s^-1]
- b_w_RS_S_y [rad s^-1]
- b_w_RS_S_z [rad s^-1]
a代表這是MAV在R座標系下的線加速度信息,單位m/s^2
- b_a_RS_S_x [m s^-2]
- b_a_RS_S_y [m s^-2]
- b_a_RS_S_z [m s^-2]