双目摄像头标定参数

来源:互联网 发布:音箱推荐 知乎 编辑:程序博客网 时间:2024/04/16 12:51

       双目摄像头定标不仅要得出每个摄像头的内部参数,还需要通过标定来测量两个摄像头之间的相对位置(即右摄像头相对于左摄像头的三维平移T和旋转 R 参数)。

       使用Matlab2015标定后,会得到如下标定参数:


       CameraParameters1与CameraParameters2为左右摄像头的内部参数(1为右摄像头,2为左摄像头),RotationOfCamera2与TranslationOfCamera2为两个摄像头的旋转、平移参数,平移参数可直接写入到相应的XML文件中,但旋转参数需进行转置,才可写入XML文件中。

       CameraParameters1与CameraParameters2中包含如下文件:

       我们主要使用IntrinsicMatrix、RadialDistortion以及TangentialDistortion。IntrinsicMatrix存放的是摄像头的内参,只与摄像机的内部结构有关,写入相应的Left/Right_Matrix.xml文件中,但是需要先转置,后写入。

       RadialDistortion和TangentialDistortion中存放的是畸变参数, RadialDistortion为径向畸变,摄像头由于光学透镜的特性使得成像存在着径向畸变,可由K1,K2,K3确定。TangentialDistortion为切向畸变,由于装配方面的误差,传感器与光学镜头之间并非完全平行,因此成像存在切向畸变,可由两个参数P1,P2确定。不过在写入到Left/Right_dist.xml文件中时,需要注意参数的排放顺序,即K1,K2,P1,P2,K3。

       切记不可弄错,否则后续的立体匹配会出现很大的偏差。

       单个摄像头的定标主要是计算出摄像头的内参(焦距f和成像原点cx,cy、五个畸变参数(一般只需要计算出k1,k2,p1,p2,对于鱼眼镜头等径向畸变特别大的才需要计算k3))以及外参(标定物的世界坐标)。

       得到双目的内参和外参后,大家最好通过进行图像校正实验,看看所得到的参数时候正确~



0 0