LR A Simplified Active Calibration Algorithm for Focal Length Estimation

Abstract

提出计算焦距的方法.

通过数学推导, 我们体现说在每个方向上的焦距可以用一点匹配(一个图和一个退化的旋转的图)来估计.

通过建立两张图(有一点点的panningtilting), 我们的SAC可以计算相机的焦距.

1. Introduction

传统的标定需要, 例如格子/棒子/LEDs等标定物体. 带来的问题是相机**只能离线标定, 而且在可控的环境. **

[9, 7]提出了自标定, 使用了多帧图像的匹配信息, 他们先估计了epipolar transform (从三对views), 然后用Kruppa公式[9]link.

然后Basu提出了Active Calibration[1, 2], 它涵盖了active相机移动的概念和消除了点对点的匹配.


前两代Active Calibration策略的问题是, 它用退化的旋转来引入成员的投影共视来计算相机内参.

比如, 在panning相机之后, 从新图像平面观测到的纵向变化推导的公式是不稳定的. 进一步说, 小的旋转估计( \(\sin (\theta) = \theta\), $ \cos(\theta) = 1$) 降低了策略的精度, 当旋转没那么小的时候.

而且, rolling 相机[4]也不太现实(如果没有精准的仪器的话), 因为它创造了相机中心的平移offset.

我们提出了Simplified Active Calibration. 公式是闭式而且线性的. 为了解决AC中使用退化旋转导致的不稳定性, 我们在每个方向计算了focal length. 而且我们也不适用小角度近似. 我们的方法更实用, 他不需要相机的roll旋转, 只需要pan和tilt旋转.

2. Simplified Active Calibration

SAC是被使用小旋转来近似相机内参的想法inspired的. 在相机上引入3个约束生成一个纯旋转的移动. 另外, 使用小旋转可以让我们忽略一些非线性的term(为了计算剩下的线性参数). 估计的内参可以作为一个初始猜测作为非线性refinement.

一般来说, SAC是被用于相机移动是硬件控制的, 比如机器人应用.

有了相机旋转以后, 我们用两步法可以估计相机的焦距.

  • 我们用闭式解计算了\(f_v\) 在相机弄了pan旋转以后.
  • 然后我们计算了\(f_u\), 在相机弄了tile旋转之后.

2.1 Focal Length in the v Direction

我们假设相机被定位在笛卡尔坐标系的原点, 看着距离\(z= f\). 每个世界的3D点\(X\)是可见的, 可以投影到一个特定的点 \(\mathbf{u}=\left[\begin{array}{lll} v & u & 1 \end{array}\right]^{T}\) (图像平面, 主点是叫做 \(\left[v_{0} u_{0}\right]^{T}\)). 对于现在相机, 我们可以假设图像像素是正方形的, 所以camera skew的值是零.

每个点 \(\mathbf{u}=\left[\begin{array}{ll} v & u \end{array}\right]^{T}\) 图像中的, 可以被认为是一个静止的相机看到的(可以自由旋转但是待在一个静止的位置), 会被转换到一个点 $ \mathbf{u'} =[ \begin{array}{} v' & u' \end{array}] $, 在旋转之后. 两者之间的数学关系是: \(w \mathbf{u}^{\prime}=\mathbf{K} \mathbf{R}_{y}^{T} \mathbf{K}^{-1} \mathbf{u}\)

\[v^{\prime}=\frac{r_{11}\left(v-v_{0}\right)+r_{31} f_{v}}{r_{13} \frac{v-v_{0}}{f_{v}}+r_{33}}+v_{0} \]

\[u^{\prime}=u_{0}-\frac{u_{0}-u}{r_{13} \frac{v-v_{0}}{f_{v}}+r_{33}} \]

这里\(r_{ij}\)是旋转举证的元素.

也可以简化为:

\[\frac{v-v_{0}}{f_{v}}=\frac{\frac{u_{0}-u}{u_{0}-u^{\prime}}-r_{33}}{r_{13}} \]

注意在一个纯旋转的时候, 新图的u坐标是不会被transform影响的. 换句话说, 图像像素只会水平移动. 也就是说 \(\frac{u_{0}-u}{u_{0}-u^{\prime}} \approx 1\). 这样得到:

\[v^{\prime} \approx \frac{r_{11}\left(v-v_{0}\right)+r_{31} f_{v}}{r_{13} \frac{1-r_{33}}{r_{13}}+r_{33}}+v_{0} \]

\[v^{\prime}-r_{11} v \approx r_{31} f_{v}+\left(1-r_{11}\right) v_{0} \]

知道主点接近图像中心, 这里用\(h\)\(w\) 表示图像的中心. 最终得到x方向的焦距.

\[f_{v} \approx \frac{v^{\prime}-r_{11} v-\left(1-r_{11}\right) c_{v}}{r_{31}} \]

2.2 Focal Length in the u Direction

这个是重复的. 就是用了纯度tilt旋转.

\[f_{u} \approx \frac{r_{22} u-u^{\prime}+\left(1-r_{22}\right) c_{u}}{r_{32}} \]

3. Results and Analysis

根据图发现.

当旋转很少的时候, 估计的焦距很接近真值.

3.1 Angular Uncertainty

我们用pan和tile角度来计算focal length.

当相机旋转小的时候, focal length对与旋转噪声更敏感.

3.2 Point Correspondence Noise

当旋转不是很小的时候, SAC会获得焦距的比较小的误差.

3.3 Real Images

我们只用了接近图像中心的点. 我们较低了使用接近图像中心匹配点来降低焦距估计的不准确.

4. Conclusion

没啥.

你可能感兴趣的:(LR A Simplified Active Calibration Algorithm for Focal Length Estimation)