基于分区标定的相机畸变校正研究
2023-11-22刘志伟杨光王伟
刘志伟 杨光 王伟
引言
随着计算机技术和传感技术的快速发展,物体的三维重建的研究逐步增多。其中双目立体视觉技术由于其非接触式、方便、便宜等优势广泛应用于各个领域[1]。检测精度提高一直是众多学者努力的目标,检测精度的优劣前提条件便是标定精度。准确地标定精度是后续成功三维重建的前提。
目前应用较为广泛的相机标定方法有:自标定[2],利用相机运动的约束,对相机进行在线定标,自标定方法操作简单,可以满足一些特殊应用场景,但模型复杂且精度、鲁棒性较差。主动标定法[3],通过控制相机做某些特定运动并拍摄多组图像,依据图像信息和已知位移变化来求解相机内外参数。但是标定要求多,价格昂贵。在传统的标定方法中张正友标定法[4]应用最为广泛,通过对已知尺寸的棋盘格进行多角度拍照,将世界坐标系固定在棋盘格上,然后经过非线性求解得到相机的内外参数。张的方法在 Matlab/openCV 等软件中集成有成熟的工具箱。但目前的标定方法中大都是针对整幅图像进行标定,忽略了不同畸变影响下相同特征像点的信息值,图像中不同位置畸变值是不尽相同的。由于相机和镜头加工误差是不可避免的,所以失真参数很难保证相同,整幅图使用相同参数会使边缘区域畸变参数过小,中间区域畸变参数过大。
本文提出了一种新的基于分区标定的畸变校正方法,在实现较高标定精度的同时将标定结果应用到匹配中去,实现检测精度的提高。本文的其余部分分别为:相机标定以及畸变的模型;基于分区标定及分区畸变校正的实现;标定实验以及结果分析;最后为文章总结。
一、相机标定原理
(一)相机成像模型
在立体视觉三维重建中一般涉及四个坐标系的转换,如图1所示。包括世界坐标系Ow-XwYwZw相机坐标系OCXCYCZC,图像O-xy物理坐标系和图像坐标系O-uv。
图1 各个坐标系之间关系
(二)相机畸变模型
理想的相机是不存在畸变的,实际中镜头一般会存在径向畸变和切向畸变。如图2所示为镜头的两种畸变示意图。
图2 图像畸变示意图
二、基于分区标定的畸变校正
不同区域的标定参数不同引起的匹配精度不佳,由此出发,首先实现相机的分区标定,获取到各个区域的标定参数,然后通过获取的标定参数对各个分区进行畸变校正,以获得更为符合原图的图像。
(一)分区标定的原理
传统的标定方法中,以张的标定方法为例,假定直线经过投影变换仍为直线,未考虑不同区域的畸变参数是不同的这一问题,使标定结果存在误差,本文采用的是一种将标定区域进行划分,分别求取不同区域的相机参数,使标定结果更科学、准确、具体的分区标定原理如图3。
图3 分区标定原理图
其中将图像均匀分成了9个区域,对9个区域分别进行标定。(X0,Y0)是所有角点的起始点,右边的矩形为待标定区域的最大外接标定矩形。下图4为分区标定时,如何实现各个分区标定的原理流程图。
图4 分区标定的流程图
通过上述的流程图,可以实现分区的标定,获取待测区域的标定参数。其中角点的坐标(Xi,Yi)为像素坐标。先对图像进行读取,然后将图像分割为M×N个区域,并对每个区域进行编号P00-PMN,检测棋盘格的角点并进行编号,通过设置边界条件将待测区域的角点进行筛选。然后确定最终标定的最大矩形的四个点。为了保证待标定区域标定结果的准确性,从所有待标定图像中选择最大矩形的四个顶点坐标出现概率最大的作为最终标定的四个顶点。最终运用张氏标定的核心方法来获取标定参数,并对最终结果进行保存处理。
(二)分区校正原理
第一小节获取了各个分区的标定参数,本小节是实现标定参数的应用,主要是对畸变参数的分区应用。传统的畸变参数的应用是以光心坐标为中心,用同一畸变参数对整幅图像进行畸变校正,存在校正过度或校正不足等问题。本文采用分区校正的方式,通过上一小节获得的分区参数实现对图像的分区校正。
三、分区标定实验及结果验证
(一)分区标定实验
1.获取各个区域的标定参数
为保证标定结果的准确性,本文采用双目相机每个区域获取20张图像,并且每个分区图像都是相同的位姿和相同的物距,对图像进行去噪声处理后通过图4流程图的算法获取分区的标定参数。下表为获取的径向畸变参数值。
表1 畸变参数标定结果
对标定结果进行整理,主要针对畸变参数的变化进行分析。由图表看出两个相机的畸变参数变化趋势相同。其中横坐标为九个分区的P01-P09分区,纵坐标为畸变参数值。随着标定位置变化畸变参数呈现中间畸变参数小,而周边畸变参数大的特点,在该相机标定中存在右侧畸变参数要高于左侧,因为畸变曲线为左相机的畸变参数绘制,在标定的公共区域左相机的左侧占比大些,所以其左侧标定畸变较大。
(二)基于分区标定的立体匹配
上一小结证明了分区校正的准确性,本小结证明分区标定算法的实用性。将它用在双目立体三维重建的精度提高中,并以最终获取的点云结果作为评价标准。
1.立体匹配
通过双目重建系统对一个平面(图5)进行三维重建。为了验证分区标定的优越性,实验将以9个分区为中心,拍摄9张并选取其中P8区来验证应用效果。
为了验证分区标定对平面测量精度的提高,通过选取特定区域对比两种标定算法在立体匹配中应用结果,以平面度为参考标准,这里选择P5区作为对比区域。结果如下图:
通过利用不同标定方法对平面进行三维重建,由图6可以看出,本文方法重建后的平面更准确,通过图7可以看出本文方法的标准差相比于原方法大幅提升。最终通过多组实验验证了本文方法的实用性。
图6 C0参数的重建结果(左),C5参数的重建结果(右)
图7 C0参数重建平面的高斯分布图(左)C5参数重建平面的高斯分布图(右)
结论
本文通过对相机标定进行研究,以提高重建精度为出发点,主要对预处理部分的畸变校正进行研究,针对传统标定方法忽略不同区域相机的参数不尽相同的问题,采用分区标定的方法对标定方法进行改进。并通过实验验证了本文方法的可行性,通过对比传统标定方法,本文方法在分区校正的直线度上和点云平面获取的平面度上都得到了提升,由此可见本文方法的优势。本文主要针对标定和校正进行研究改进,之后的工作将分区标定算法与后续的匹配算法结合,实现更高精度的三维重建。