焊接机器人由于左右摄像机的内部和外部参数都可以分别通过标定实验计算出来,因此可以方便的计算出摄像机之间的相对位置关系,如图3.5所示:
设左右摄像机标定的外参数分别为[R1 T1]和[R2 T2]。[R1 T1]为基坐标系与左摄像机坐标系的转换关系,[R2 T2]为基坐标系与右摄像机坐标系的转换关系。设空间中某一点P在基坐标系下的坐标为Pw,在左摄像机坐标系下的坐标为P1,在右摄像机坐标系系的坐标为P2,可以得到:
式(3-21)消去Pw,可以得到P1与P2的关系:
则左右两台摄像机之间的旋转矩阵和平移矩阵分别为:
通过摄像机的标定求出了各摄像机的内部参数,外部参数[R1 T1], [R2 T2],同时也计算出了左右摄像机的相对位置关系[R T],为后续郎工作做好了铺垫。
非线性优化
在对线性摄像机模型进行标定时忽略了镜头的畸变,这种标定方法只适用于具有较窄视野的摄像机,对于广角的摄像机,镜头的畸变会大大影响远景物体的成像,必须引入畸变因子。同时标定的过程中会受到噪声、光线等原因的影响且在提取标准模板上的特征点时也会出现误差,使得上述的标定方法计算出来的结果与实际的摄像机内外参数有一定的误差,因此需要对得到的结果进行非线性优化,以抵消上述误差的影响。本文采用代价函数的方法进行优化,将二维标定模板先后放置在I个不同的位置,同时用双目摄像机对二维标定模板进行拍照,得到I副标定模板的图像,设在二维标定模板上有N个不同的特征点,建立目标代价函数如下:
焊接机器人其中,Mn表示第i个二维模板上的第n个特征点在基坐标系下的坐标值,min表示第i个二维模板上的第n个特征点在像素坐标系下的坐标值,表示利用标定后的双目摄像机得到的特征点在像素坐标系下的坐标值,A表示摄像机的内部参数,[Ri Ti]表示摄像机的外部参数。根据Levenberg-Marquarat提出的算法进行非线性优化,当目标代价函数F取最小值时,得到相对准确地标定结果。