双目相机标定

标定流程

  1. 读取所有图像,将所有图像灰度化并保存,对于黑色边沿的棋盘格,需要对灰度图做反色处理。

  2. 选择两相机图像质量好的图像对,评估标准是图像上棋盘格的所有角点均被检测出来。

  3. 首先对双目相机的每个镜头完成单目标定,获取相机的内参数和一组棋盘格与相机的相对 $R,t$

  4. 利用非线性优化求解两相机的相对 $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} $$

至此完成相机的双目标定。

updatedupdated2022-03-292022-03-29