这是一篇ICCV2015年的文章,文章重点了使用一种巧妙的方法避免在失焦的情况下无法标定的情况。
使用一个smart phone形成四个标定板图像,如下图所示
之所以没有使用printed targets,而是这种LCD显示的话可以得到相同位姿下的不同的图像pattern,这个很有用。
文中使用点扩散函数建模的失焦的状态,算法对失焦鲁棒是由于特殊的image patterns,这样可以简化2维的高斯去卷积过程至1D高斯去卷积。通过捕获一系列在智能手机上连续显示的patterns。将特征点提取的公式化为一个去卷积过程来定位特征点至亚像素精度。文章中还使用模型补偿了由于玻璃的折射导致的误差。
- the proposed patterns are displayed on a screen, and the camera system captures the set of patterns at various viewpoints regardless of its focus. For each viewpoint, the same set of patterns are captured consecutively.
- Second, initial feature detection is carried out by extracting and labeling the proposed features, which are the intersection points of edges, followed by the refinement of the feature points in sub-pixel level accuracy.
Finally, the camera parameters are estimated using the feature point locations and then refined by compensating the error due to refraction of the glass panel of the display device.
首先文章第一步的核心就是如何将特征点的识别分成2个正交坐标下的分别定位,其次使用2幅互补图像的减法实现定位,也就是Initial Feature detection。
其次是子像素调整,其中估计对称轴,水平轴竖直轴,在图像中使用灰度梯度的方向,在水平和竖直方向的切面灰度值分布,得到类似于一种阶跃函数的形式,通过函数值的变化可以估计出高斯函数的方差,然后可以计算出两种图像的梯度的方向 θv,θh ,
在该方向上提取像素点的灰度值,通过组合可以得到求和之后的图像的模糊之前的图像,并选定模糊核的方差,足有使用LM优化二次函数,关于位置和方差 p,q,σ 。
第三步补偿由于折射带来的误差,使用snell定律建模,不再详述,详见
Accurate Camera Calibration Robust to Defocus using a Smartphone
下图locate feature points第二步中的原理示意图。
控制点
迭代控制点调整