标定流程
-
读取所有图像,将所有图像灰度化并保存,对于黑色边沿的棋盘格,需要对灰度图做反色处理。
-
选择两相机图像质量好的图像对,评估标准是图像上棋盘格的所有角点均被检测出来。
-
首先对双目相机的每个镜头完成单目标定,获取相机的内参数和一组棋盘格与相机的相对 $R,t$
-
利用非线性优化求解两相机的相对 $R,t$
假设棋盘格的世界坐标是 $X_w$,左相机中棋盘格的相机坐标是 $X_c^l$, 右相机中棋盘格的相机坐标是 $X_c^r$,由标定出来的棋盘格到相机的 $R,t$,有:
$$ X_c^l = [R_l|t_l] \centerdot X_w = R_l \centerdot \tilde{X_w} + t_l $$
同理:
$$ X_c^r= [R_r|t_r] \centerdot X_w = R_r \centerdot \tilde{X_w} + t_r $$
上面两式子提取 $x_w$,等价于:
$$ R_r \centerdot R_l^{-1} (X_c^l - t_l) = X_c^r - t_r $$
令: $$ R_{\_l\_r} = R_r \centerdot R_l^{-1} $$
而:
$$ t_{\_l\_r} = t_r - R_{\_l\_r} \centerdot t_l $$
有:
$$ R_{\_l\_r} X_c^l + t_{\_l\_r} = X_c^r $$
这两项即为左右相机的相对$R,t$
构建误差项:
$$ E = R_{\_l\_r} X_c^l + t_{\_l\_r} - X_c^r $$
把以上计算的值当做初始值,用 ceres
BA算法即可算出两相机的相对 $R,t$
5.计算本质矩阵 E和基础矩阵F
$$ E = t^{rm} \centerdot R $$
$t^{rm}$代表平移向量的反对称矩阵
$$ F = K^{-T}EK^{-1} $$
至此完成相机的双目标定。