在学习视觉SLAM14讲ch13代码部分使用到Kitti数据集,在此对数据集中calib.txt文件各参数含义进行解释

        Kitta/data_odometry_gray/dataset/sequences/00/calib.txt文件


       

其中:

        P0代表0号相机 左边灰度相机
        P1代表1号相机 右边灰度相机
        P2代表2号相机 左边彩色相机
        P3代表3号相机 右边彩色相机

接下来解释Pi中12个数字的含义

        Pi矩阵当世界坐标系和参考相机0的坐标系重合时(实际上世界坐标系和 Cam0 坐标系不重合)的投影矩阵,可以理解为相机 i 的内参矩阵 * 相机0相对于相机i的外参矩阵

P_{i}=K_{i}T_{i0}=K_{i}[R_{i0}\, \, \, t\,_{i0}] 

        对于相机1、2、3而言,相机0相对于他们的外参数旋转矩阵为单位矩阵 I ,即:

 R_{i0}=\begin{bmatrix} 1 & 0& 0\\ 0& 1& 0\\ 0& 0& 1 \end{bmatrix}

         即有:

P_{i}=K_{i}T_{i0}=[K_{i}\, \, \, K_{i}t\,_{i0}]

        根据文件calib.txt文件可得

        相机0,1,2,3的内参矩阵为:

K_{0}=K_{1}=K_{2}=K_{3}

=\begin{bmatrix} 7.188560000000e+02& 0& 6.071928000000e+02\\ 0& 7.188560000000e+02& 1.852157000000e+02\\ 0& 0& 1 \end{bmatrix}

         下面计算相机0和相机1的外参中的平移向量 t ,由上式可得:

        K_{0}t\,_{w0}=\begin{bmatrix} 0\\ 0\\ 0 \end{bmatrix},K_{1}t\,_{10}=\begin{bmatrix} -3.861448000000e+02\\ 0\\ 0 \end{bmatrix}

        即相机0和相机1的外参中的平移向量 t 为:

t\,_{w0}=\begin{bmatrix} 0\\ 0\\ 0 \end{bmatrix},t\,_{10}=\begin{bmatrix} -0.537166\\ 0\\ 0 \end{bmatrix}

        即相机0和相机1的基线 b 的长度为:

b=\begin{Vmatrix} t\,_{10} \end{Vmatrix}_{2}=0.537166(m)

        由最上面第二张图片可得,Cam0(gray)和Cam1(gray)的基线长度 b 为0.54米,计算结果准确。

t\,_{20}=\begin{bmatrix} 0.059939\\ -0.001131\\ 0.003780 \end{bmatrix},t\,_{30}=\begin{bmatrix} -0.471829\\ 0.002494\\ 0.003112 \end{bmatrix}

参考:

        【KITTI数据集Odometry序列00-10标定文件中的参数关系解读】
 

          kitti数据集的标定文件

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐