关于如何在Kitti的不同传感器坐标系之间导航的指南。
KITTI数据集概述
在处理多传感器项目时,根据所用传感器的不同,图片中会出现不同的坐标框架。在KITTI数据集的情况下,有3个传感器(相机、激光雷达和GPS/IMU)。下图描述了Kitti数据集的传感器设置。
有三个不同的传感器,因此在使用Kitti数据集时涉及3个不同的坐标系。上图和下表显示了这些传感器坐标系之间的关系。
Kitti GT注释详细信息
KITTI数据集的地面实况注释已在相机坐标框架(左RGB相机)中提供,但要在图像平面上可视化结果,或训练仅限LiDAR的3D对象检测模型,有必要了解从一个传感器到另一个传感器时起作用的不同坐标变换。下表介绍了Kitti GT批注详细信息。GT Annotation=(type|截断|遮挡|alpha|2D BBox|Dimension|Location|Score)
坐标变换详细信息
KITTI数据集为所有4个摄像机提供摄像机-图像投影矩阵、校正摄像机之间的平面对齐的校正矩阵和不同传感器之间的刚体变换的变换矩阵。下图显示了使用LiDAR数据时涉及的不同投影。
Velodyne LiDAR坐标中的三维点x投影到第i个相机图像中的点y,如下所示:
Y=P(I)@R(0)@Tvelo_cam@x
下面将提到3D边界框从一个坐标系到另一个坐标系的各种变换以及涉及的步骤。
相机-LiDAR 3D包围盒变换
以下步骤描述了首先使用偏转角度在相机坐标系中旋转长方体,然后将其投影到LiDAR坐标系的方法。
x轴->右(长),y轴->底(高),z轴->向前(宽)3B BB角坐标在摄像机坐标系中,坐标系在盒子的底部中心。
2.由rotation_y角度(摄像头坐标框架)协调的3D BB角的旋转
3.按质心坐标进行长方体平移(摄像机坐标框)
4.3D BB角坐标从相机坐标到LiDAR坐标系的投影
a.逆校正处理R(0)_HOMO描述从原点R(0)矩阵创建的4×4齐次矩阵(没有任何平移)。通过附加所需的0和1,长方体的角点已从笛卡尔转换为均匀。
b.刚体逆变换
激光雷达-相机三维包围盒变换
下面提到的步骤定义了将3D边界框从LiDAR坐标框转换为相机坐标框的过程。
a.刚体变换
b.整改处理
2.航向/偏航角转换
航向/偏航角在LiDAR坐标系中为w.r.tz轴,对应于摄像机坐标系中的-(y轴)
3.三维包围盒角坐标计算(摄像机坐标系)
x轴->右(长),y轴->底(高),z轴->向前(宽)3B BB角坐标在摄像机坐标系中,坐标系在盒子的底部中心。
4.由rotation_y角度(摄像头坐标系)协调的3D BB角的旋转
5.按质心坐标进行长方体平移(摄像机坐标框)
相机-图像3D包围盒变换
下面提到的步骤定义了将3D边界框从相机坐标框转换为图像坐标框的过程。
2.使用z坐标进行归一化
结论
本文简单介绍了Kitti数据集,并尝试解释将Kitti GT转换为各种传感器坐标系所涉及的步骤。
这里介绍的大部分信息都是从Kitti DataSet网站摘录的,我们鼓励读者阅读引用的参考文献以获取更多信息。KITTI dataset website
参考文献
原创文章,作者:fendouai,如若转载,请注明出处:https://panchuang.net/2021/07/09/kitti%e5%9d%90%e6%a0%87%e5%8f%98%e6%8d%a2-2/