一、KITTI數據集採集平臺:ui
KITTI數據採集平臺包括2個灰度攝像機,2個彩色攝像機,一個Velodyne 3D激光雷達,4個光學鏡頭,以及1個GPS導航系統。座標系轉換原理參見click。KITTI提供的數據中都包含三者的標定文件,不需人工轉換。url
二、KITTI數據集,label文件解析:spa
Car 0.00 0 -1.84 662.20 185.85 690.21 205.03 1.48 1.36 3.51 5.35 2.56 58.84 -1.75.net
第1個字符串:表明物體類別3d
'Car', 'Van', 'Truck','Pedestrian', 'Person_sitting', 'Cyclist','Tram', 'Misc' or 'DontCare'對象
注意:’DontCare’ 標籤表示該區域沒有被標註,好比因爲目標物體距離激光雷達太遠。爲了防止在評估過程當中(主要是計算precision),將原本是目標物體可是由於某些緣由而沒有標註的區域統計爲假陽性(false positives),評估腳本會自動忽略’DontCare’ 區域的預測結果。blog
第2個數:表明物體是否被截斷,從0(非截斷)到1(截斷)浮動,其中truncated指離開圖像邊界的對象ci
第3個數:表明物體是否被遮擋,整數0,1,2,3表示被遮擋的程度字符串
0:徹底可見 1:小部分遮擋 2:大部分遮擋 3:徹底遮擋(unknown)get
第4個數:alpha,物體的觀察角度,範圍:-pi~pi
第5~8這4個數:物體的2維邊界框,左上角和右下角的像素座標
第9~11這3個數:3維物體的尺寸,高、寬、長(單位:米)
第12~14這3個數:3維物體的位置 x,y,z(在照相機座標系下,單位:米)
第15個數:3維物體的空間方向:rotation_y,在照相機座標系下,相對於y軸的旋轉角,範圍:-pi~pi
有些有第16個數:檢測的置信度 , 僅用於結果:浮點,p / r曲線所需,越高越好
三、KITTI數據集,calib解析
要將Velodyne座標中的點x投影到左側的彩色圖像中y:
使用公式:y = P2 * R0_rect *Tr_velo_to_cam * x
將Velodyne座標中的點投影到右側的彩色圖像中:
使用公式:y = P3 * R0_rect *Tr_velo_to_cam * x
Tr_velo_to_cam * x :是將Velodyne座標中的點x投影到編號爲0的相機(參考相機)座標系中
R0_rect *Tr_velo_to_cam * x :是將Velodyne座標中的點x投影到編號爲0的相機(參考相機)座標系中,再修正
P2 * R0_rect *Tr_velo_to_cam * x :是將Velodyne座標中的點x投影到編號爲0的相機(參考相機)座標系中,再修正,而後投影到編號爲2的相機(左彩色相機)
注意:全部矩陣都存儲在主行中,即第一個值對應於第一行。 R0_rect包含一個3x3矩陣,須要將其擴展爲4x4矩陣,方法是在右下角添加1,在其餘位置添加0。 Tr_xxx是一個3x4矩陣(R | t),須要以相同的方式擴展到4x4矩陣!
經過使用校準文件夾中的3x4投影矩陣,能夠將相機座標系中的座標投影到圖像中,對於提供圖像的左側彩色相機,必須使用P2。rotation_y和alpha之間的區別在於rotation_y直接在相機座標中給出,而alpha也會考慮從相機中心到物體中心的矢量,以計算物體相對於相機的相對方向。 例如,沿着攝像機座標系的X軸面向的汽車,不管它位於X / Z平面(鳥瞰圖)中的哪一個位置,它的rotation_y都爲 0,而只有當此車位於相機的Z軸上時α才爲零,當此車從Z軸移開時,觀察角度α將會改變。
三、KITTI數據集,velodyne解析
即,數據被保存爲.bin文件,而且,每個點包含3個座標和反射率信息,即(x,y,z,r),而且數據類型爲浮點數類型,以下圖所示:
參考網址:
https://blog.csdn.net/cuichuanchen3307/article/details/80596689
https://blog.csdn.net/julialove102123/article/details/78432496
https://blog.csdn.net/hit1524468/article/details/79766805