用于聚焦型光场相机标定的棋盘角点检测算法 下载: 1151次
1 引言
光场相机通过使用微透镜阵列(MLA),可同时获得光线在空间和角度上的分布信息。这种能力使得光场相机广泛应用于计算机视觉[1]、机器人[2] 、医学成像[3]等多个领域。根据MLA的放置位置,光场相机可以被分为非聚焦型光场相机[4]和聚焦型光场相机[5]。其中多焦距聚焦型光场相机[6]通过使用多焦距的微透镜阵列来进一步提高相机的景深范围。本文的研究对象为聚焦型光场相机。
精确标定能够发挥出聚焦型光场相机在场景重建和非接触测量等方面的作用[7]。而特征检测作为标定中的重要一环,其结果直接影响后续的标定精度。Johannsen等[8-9]通过在全聚焦图像上提取圆点特征,并结合深度图对理想3D圆点和重建3D圆点的空间距离进行最小化处理,进而对相机参数进行标定。Strobl等[10]提出了基于张正友标定法[11]的分布标定算法,该算法使用平面棋盘格标定板的角点作为标定特征。Zeller等[12-13]提出了基于3D标定目标的标定算法。上述工作中的标定特征都是从全聚焦图像中提取的。然而,在原始图上进行特征提取是一个更加精确和高效的方式。此外,上述标定模型[8-10, 12]忽略了微透镜中心和微透镜图像中心的差异,这一点会影响标定的精确度。Bok等[14]把原始图中的棋盘格直线作为特征,并给出了更加准确的几何投影模型。相比于圆点标定目标,棋盘格的直线和角点特征更容易在微透镜图像中完整显示。Zhang等[15]提出了一个通用的多重投影中心模型,该模型能够应用于聚焦型和非聚焦型光场相机中。Nousias等[16]提出了一个作用在原始图上的角点检测算法。但是当角点位于微透镜图像边缘的时候,该检测方法容易失效,且该方法并没有利用对极几何约束来优化检测结果。O'Brien等[17]提出了作用于子孔径图像上的角点检测算法,并提出了光场圆域特征[17]的概念,该算法的优势在于光场圆域特征能够在标定前得到准确计算。但是该方法需要通过插值来得到子孔径图像,这会给特征提取的精度带来影响。
为了进一步提高特征检测精度,本文提出了一个稳健精确的角点检测方法。利用稳健的角点检测算子在原始图中进行角点检测,并利用基于RANSAC[18]的算法剔除错误检测的角点,然后利用图像一致性进行角点位置的亚像素优化。仿真和实际实验结果证明,所提角点检测精度高于传统的角点检测算法,并且通过基于所提角点检测算法的标定能够实现更高精度的参数估计结果。这为聚焦型光场相机的应用提供了参考。
2 光场相机的基本原理
2.1 相机模型
本文采用的聚焦型光场相机模型如
图 1. 相机成像模型。 (a)主透镜成像示意图; (b)微透镜成像示意图
Fig. 1. Camera imaging model. (a) Imaging diagram of main lens; (b) imaging diagram of micro-lenses
2.2 光场圆域特征
本文的角点检测算法是通过光场圆域特征[17]来描述原始图中各个二维角点之间的对极几何关系。光场圆域特征满足
式中:[
2.3 相机标定
本文采用的标定方法最早为Bok等[14]提出的,后续Nousias等[16-17]采用了与Bok等[14]一致的相机内参,但是使用了不同的图像特征。该标定方法具体的内参集合为{fx,fy,cu,cv,K1,K2},其中针孔相机焦距fx=b/sx,fy=b/sy,(sx,sy)表示传感器上像素的物理尺寸,(cu,cv)表示主镜头的主点在uov中的像素坐标,K1和K2的具体定义为K1=[fL-(b-B)]b/(BfL),K2=[(b-B)b]/B。内参fx、fy、cu和cv类似于针孔相机模型的内参,而内参K1和K2描述的是光场相机区别于针孔相机的特性。具体的标定方法请参考文献[ 14,16-17]。利用标定参数,可以将PDF投影到真实空间:
式中:(Px,Py,Pz)表示特征点在相机坐标系的物理坐标。
3 角点特征检测算法
在聚焦型光场相机中,微透镜下的微透镜图像分辨率很低,所以在原始图上进行角点检测十分困难。在检测过程中,正确的角点常常淹没在了错误检测点中。但是随着光场圆域半径[17]的增大,同一个三维空间点投影得到的二维角点逐渐变多。因此,以对极几何约束作为筛选角点的限制条件。
3.1 中心子孔径图像上的初步角点检测
为了提高角点检测的效率,本文首先在中心子孔径上初步检测角点,并在原始图上划定感兴趣区域(ROI)。本文中心子孔径图像的维度是原始图的1/2ri。本文首先采用Bok等[14]提出的方法来消除原始图的渐晕效应,得到了子孔径图像。随后,利用Geiger等[19]提出的棋盘格角点检测算法来检测中心子孔径图像上的角点坐标(ps,pt)。进一步,光场圆域中心在原始图上的大致坐标可以表示为(
3.2 原始图像上的精确角点检测
对于ROI中的图像,计算Geiger等[19]提出的角点可能性分布图C,并使用非极大值抑制[20]对角点进行提取,得到的检测结果如
图 2. 角点检测结果。(a)初始角点检测结果; (b)去除微透镜边缘角点后的结果; (c) RANSAC算法拟合后的候选角点;(d)优化后的投影角点
Fig. 2. Corner detection results. (a) Initial corner detection result; (b) result after removal of corners on edges of micro-lenses; (c) candidate corners fitted by RANSAC algorithm; (d) projected corners after optimization
随后,本文利用RANSAC算法[18]对剩余的候选角点进行PDF的拟合。首先遍历并选择两个不同的候选角点p1和p2,并根据(1)式计算PDF。进一步,根据(2)式可以计算出该PDF在原始图上的投影点。与任何投影点的距离小于tinner的候选角点被认为是当前PDF对应的内点,其中tinner表示内点与投影点的最大距离。遍历结束后,具有最大内点数的PDF被认为是最佳拟合结果PB。注意,当拟合结果的内点数量小于阈值tnum时,则认为当前ROI没有角点被检测出,其中tnum表示拟合PDF的最少内点数量。经过RANSAC算法拟合后,PB内点的示例如
前文3.1节中使用的ROI默认包含了N个微透镜图像。但是在实际过程中,同一个空间角点可能在原始图中超过N个微透镜图像的范围内进行成像。为了检测出更多角点,本文根据拟合出的最佳光场圆域特征PB=(
3.3 光场圆域特征的优化
ROI中所有正确的角点和同一个光场圆域特征PDF相关联,所以对角点的优化等同于对PDF的优化。因此,本文对PDF进行优化,并把优化后的PDF在原始图的投影点作为最终的检测角点,结果如
本文在检测结果DB上应用亚像素优化。使用二元二次函数来拟合角点可能性分布图C中角点附近的图像块,并把局部最大值的对应位置作为优化后的检测结果。根据优化后的角点,可以利用最小二乘法计算出优化后的PDF,记为Pr=(
从(2)式可以看出,光场圆域半径R的计算误差会对二维角点位置的计算产生很大影响。当
4 实验与验证
为了验证所提角点检测算法的精确性和有效性,本文进行了相应的仿真和真实实验。实验代码运行在win7操作系统上的MATLAB软件上。实验所用电脑的CPU为因特尔公司的i7-7700(3.6 GHz)。
4.1 角点检测仿真实验
本文将Nousias等[16]和O'brien等[17]提出的角点检测算法与本文提出的算法在仿真数据集上进行对比分析。利用多焦距聚焦型光场相机拍摄棋盘格标定板,通过光纤追踪方法[23]仿真得到了140张原始图。相机的仿真参数如
表 1. 多焦距聚焦型光场相机的仿真参数
Table 1. Simulation parameters of multi-focus plenoptic camera
|
图 3. 角点检测结果示例。(a)含有噪声的情况下; (b)图像含有较大镜头畸变的情况;(c)同一微透镜图像中存在多个角点的情况; (d)漏检的情况
Fig. 3. Examples of corner detection results. (a) Case with image noise; (b) case with image suffering from large lens distortion; (c) case with multiple corners in one micro-image; (d) case with missed detection
本文使用的评价指标包括检测的召回率(recall)、准确率(precision)、平均检测误差(mean)、检测标准差(Std.)及检测时间。对于原始图上一个给定的仿真角点,如果其周围最近的检测角点和该仿真角点的距离小于3 pixel,那么该检测角点被认为是正确检测的角点。记所有正确检测角点的数量为
表 2. 仿真数据集上的角点检测结果
Table 2. Corner detection results on simulated datasets
|
根据上述分析,可以得出如下结论:相比于现有算法,本文的角点检测算法在检测精度和稳健性上有所提升,并保持了较好的计算效率,且本文算法的检测精度能够随着光场圆域半径的增大而提高。
4.2 仿真标定实验
在仿真数据上进行标定实验,以此来验证本文的角点检测算法能够对聚焦型光场相机的标定精度起到提升作用。仿真的相机参数与
本文分别使用Nousias等[16]和O'brien等[17]的角点检测和标定方法来进行仿真实验。具体的标定结果如
表 3. 仿真数据集的标定结果
Table 3. Calibration results on simulated datasets
|
4.3 真实标定实验
为了进一步验证本文的角点检测算法对于标定精度的提升作用,本文对Raytrix公司的多焦距聚焦型光场相机R29进行标定实验。由于真实标定实验中无法获得相机参数的真值,本文通过测距实验来评估重建角点的精度,以此来间接验证角点检测算法的精度。
实验中分别使用Bok等[14]、Nousias等[16]、O'brien等[17]提出的方法来进行标定,得到的标定结果如
表 4. R29真实数据集上的标定结果
Table 4. Calibration results on R29 real dataset
|
在标定实验完成后,本文将棋盘格标定板固定在光学移动平台上进行多次移动,如
图 5. 测距实验装置及原理示意。(a)实验平台;(b)相对距离
Fig. 5. Experimental device and principle diagram of distance measurement. (a) Experiment platform; (b) relative distance
由于Bok等[14]和Nousias等[16]的方法没有涉及到PDF的计算,因此这里采用本文和O'brien等[17]提出的检测方法来计算上述8帧图像中棋盘格角点的PDF。根据
图 6. 角点重建结果。(a)本文结果;(b)参考文献[ 17]的结果
Fig. 6. Reconstruction results of corners. (a) Our result; (b) result from Ref. [17]
为了量化评估角点的重建精度,本文首先计算各帧内重建3D角点与第一帧对应位置3D角点的相对距离,再用当前相对距离减去真值得到相对距离误差。计算除第一帧外所有帧中所有点的平均距离误差Dmean和标准差Dstd并将其作为评估指标,具体的距离测试结果如
表 5. 距离测试结果
Table 5. Results of distance measurement
|
5 结论
针对聚焦型光场相机标定中的特征提取问题,提出了一种精确的棋盘格角点检测算法。算法首先在原始图中划定感兴趣区域并进行角点检测。随后利用对极几何关系对角点进行筛选,并利用图像一致性进行光场圆域特征的优化,最终把优化后的光场圆域特征的投影点作为角点检测结果。对于多焦距聚焦型光场相机,所提算法能够自适应地利用最清晰的角点进行结果的优化。仿真实验和真实实验的结果表明,所提算法的检测精度高于目前现有的角点检测算法,可以提高聚焦型光场相机的标定精度。在下一步的工作中,计划将检测算法进一步扩展,使其能对非聚焦型光场相机的原始图进行角点检测。
[1] Park I K, Lee K M. Robust light field depth estimation using occlusion-noise aware data costs[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2018, 40(10): 2484-2497.
[2] Dansereau DG, MahonI, PizarroO, et al. Plenoptic flow: closed-form visual odometry for light field cameras[C]∥2011 IEEE/RSJ International Conference on Intelligent Robots and Systems, September 25 - 30, 2011, San Francisco, CA, USA. New York: IEEE, 2011: 4455- 4462.
[3] Bedard N, Shope T R, Hoberman A, et al. Light field otoscope design for 3D in vivo imaging of the middle ear[J]. Biomedical Optics Express, 2017, 8(1): 260-272.
[4] NgR. Digital light field photography[D]. Stanford: Stanford University, 2006: 6- 8.
[5] LumsdaineA, GeorgievT. The focused plenoptic camera[C]∥2009 IEEE International Conference on Computational Photography (ICCP), April 16-17, 2009, San Francisco, CA, USA. New York: IEEE, 2009: 1- 8.
[6] GeorgievT, LumsdaineA. The multifocus plenoptic camera[C]∥Digital Photography VIII. International Society for Optics and Photonics, January 24, 2012, Burlingame, CA, United States. Bellingham: SPIE, 2012, 8299: 829908.
[7] 孙俊阳, 孙俊, 许传龙, 等. 一种基于光场图像的聚焦光场相机标定方法[J]. 光学学报, 2017, 37(5): 0515002.
[8] JohannsenO, HeinzeC, GoldlueckeB, et al. On the calibration of focused plenoptic cameras[M] ∥Grzegorzek M, Theobalt C, Koch R, et al. Time-of-flight and depth imaging. Sensors, algorithms, and applications. Lecture notes in computer science. Heidelberg: Springer, 2013, 8200: 302- 317.
[9] HeinzeC, SpyropoulosS, HussmannS, et al. Automated robust metric calibration of multi-focus plenoptic cameras[C]∥2015 IEEE International Instrumentation and Measurement Technology Conference (I2MTC) Proceedings, May 11-14, 2015, Pisa, Italy. New York: IEEE, 2015: 2038- 2043.
[10] Strobl K H, Lingenauber M. Stepwise calibration of focused plenoptic cameras[J]. Computer Vision and Image Understanding, 2016, 145: 140-147.
[11] Zhang Z. A flexible new technique for camera calibration[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2000, 22(11): 1330-1334.
[12] ZellerN, Noury CA, QuintF, et al., RemoteSensing and Spatial InformationSciences, 2016, III-3: 449- 456.
[13] Zeller N, Quint F, Stilla U. From the calibration of a light-field camera to direct plenoptic odometry[J]. IEEE Journal of Selected Topics in Signal Processing, 2017, 11(7): 1004-1019.
[14] Bok Y, Jeon H G, Kweon I S. Geometric calibration of micro-lens-based light field cameras using line features[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(2): 287-300.
[15] Zhang Q, Zhang C P, Ling J B, et al. A generic multi-projection-center model and calibration method for light field cameras[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2019, 41(11): 2539-2552.
[16] NousiasS, ChadebecqF, PichatJ, et al. Corner-based geometric calibration of multi-focus plenoptic cameras[C]∥2017 IEEE International Conference on Computer Vision (ICCV), October 22-29, 2017, Venice, Italy. New York: IEEE, 2017: 957- 965.
[17] O'brienS, TrumpfJ, IlaV, et al. Calibrating light-field cameras using plenoptic disc features[C]∥2018 International Conference on 3D Vision (3DV), September 5-8, 2018, Verona, Italy. New York: IEEE, 2018: 286- 294.
[18] Fischler M A, Bolles R C. Random sample consensus: a paradigm for model fitting with applications to image analysis and automated cartography[J]. Readings in Computer Vision, 1987: 726-740.
[19] GeigerA, MoosmannF, CarÖ, et al. Automatic camera and range sensor calibration using a single shot[C]∥2012 IEEE International Conference on Robotics and Automation, May 14-18, 2012, Saint Paul, MN, USA. New York: IEEE, 2012: 3936- 3943.
[20] NeubeckA, Van GoolL. Efficient non-maximum suppression[C]∥18th International Conference on Pattern Recognition (ICPR'06), August 20-24, 2006, Hong Kong, China. New York: IEEE, 2006, 3: 850- 855.
[21] FleischmannO, KochR. Lens-based depth estimation for multi-focus plenoptic cameras[M] ∥Jiang X, Hornegger J, Koch R. Pattern recognition. Lecture notes in computer science. Cham: Springer, 2014, 8753: 410- 420.
[22] Pertuz S, Puig D, Garcia M A. Analysis of focus measure operators for shape-from-focus[J]. Pattern Recognition, 2013, 46(5): 1415-1432.
[23] MichelsT, PetersenA, KochR. Creating realistic ground truth data for the evaluation of calibration methods for plenoptic and conventional cameras[C]∥2019 International Conference on 3D Vision (3DV), September 16-19, 2019, Québec City, QC, Canada. New York: IEEE, 2019: 434- 442.
Article Outline
刘青松, 谢晓方, 张烜喆, 田瑜, 李俊, 王彦, 许晓军. 用于聚焦型光场相机标定的棋盘角点检测算法[J]. 光学学报, 2020, 40(14): 1415002. Qingsong Liu, Xiaofang Xie, Xuanzhe Zhang, Yu Tian, Jun Li, Yan Wang, Xiaojun Xu. Checkerboard Corner Detection Algorithm for Calibration of Focused Plenoptic Camera[J]. Acta Optica Sinica, 2020, 40(14): 1415002.