01 前言
双目相机标定,从广义上讲,其实它包含两个部分内容:
两台相机各自误差的标定(单目标定)
两台相机之间相互位置的标定(狭义,双目标定)
在这里我们所说的双目标定是狭义的,讲解理论的时候仅指两台相机之间相互位置的标定,在代码实践的时候,我们才说完整的双目标定。
首先来思考一个问题:为什么要进行双目标定?
这是因为在许多三维重建算法中,我们都要知道两台相机之间的相对位置关系,这样才能进行距离计算。
双目标定前后,双目模型对比如下图所示:
图1 标定模型 [1]
其中:
基线:两个光心的连线称为基线;
极平面:物点(空间点M)与两个光心的连线构成的平面称为极平面;
极线:极平面与成像平面的交线
极点:极线的一端,基线与像平面的交点
像点:极线的一端,光心与物点连线与像平面的交点;
可以看出:
校正前,相机的光心不是相互平行的
校正后,极点在无穷远处,两个相机的光轴平行,像点在左右图像上的高度一致
标定+校正后图片:
图1 立体校正后左右相机图像发生一定扭曲 [2]
这样的好处是:比如后续的立体匹配时,只需在同一行上搜索左右像平面的匹配点即可,能使效率大大提高。
注:可以看出来,最重要的,我们要知道右相机相对于左相机的位姿关系,那我们才可以做校正!
02 单目理论回顾
先来回顾下单目标定理论,理想的单目相机模型可以简化为&#x