双目立体视觉分步标定及精度分析

2018-06-28 01:12吴朝娜
天津工业大学学报 2018年3期
关键词:内参角点畸变

曲 华,吴朝娜

(天津工业大学 理学院,天津 300387)

机器视觉具有广泛的应用前景,也是近年来的研究热点.摄像机标定是计算机视觉测量系统的基础,高精度的摄像机标定是精确测量物体方位的前提[1-4].在现实中,摄像机本身不是理想的线性模型,存在各种成像失真和误差,因此有必要在真实环境中研究摄像机的成像模型.通常把获得摄像机位置及特征参数的过程称为摄像机标定.摄像机参数包括摄像机内部参数和外部参数:内部参数是摄像机成像的基本参数,描述空间三维坐标系中的点与图像中像素点的对应关系.包括实际焦距、主点(理想地应该是图像的中心)、透镜畸变(主要包括径向畸变和切向畸变)和其他系统误差参数;外部参数是描述摄像机相对于外部世界方向的参数,指空间三维坐标系中的点与摄像机坐标系中对应点的关系,具体指旋转矩阵和平移向量中所描述的参数[5].

目前摄像机的标定方法很多,近年来也提出了许多针对各类摄像机的标定方法,比如文献[6]实现了对交通监控摄像机的标定,文献[7]研究了对水下摄像机外壳参数的标定,文献[8]完成了针对低分辨率传感器摄像机的标定,文献[9]实现了对多摄像机的标定等.但总体来说,一般可以分为3类:传统摄像机标定、摄像机自标定和主动视觉标定.传统摄像机标定方法需要有特定的定标参照物,然后通过理论计算,得到摄像机内部参数和外部参数.摄像机自标定方法,不需要特殊的定标参照物,它利用了摄像机本身参数之间的约束关系来得到标定结果.摄像机主动视觉标定一般用于摄像机在世界坐标系中运动参数已知的情况下,通常线性求解获得标定结果.

传统的摄像机标定方法适用范围广,标定精度高,但是标定过程复杂.自标定过程相对简单,但是精度低[10].由于机器人是通过摄像机所获得的图像信息来识别物体的,因此基于主动视觉的标定方法更具有实用性.虽然主动视觉的标定方法优于以上2种方法,但是它不能用于摄像机运动参数未知情况下的标定.因此,本文采用了一种在传统标定和自标定之间的摄像机分步标定方法,其内部参数仍采用简单的标定方法获得—张正友棋盘格法[11],对于外部参数的获得,使用了一种当摄像机平移和旋转时的标定方法.本分步标定法通过先计算单个摄像机的内参,再计算立体外参,不仅弥补了自标定精度低和传统标定过程复杂的不足,还解决了主动视觉标定无法解决的摄像机运动参数未知情况下的标定问题,与此同时,本文还从Harris角度[12]对影响标定精度的因素进行了分析.

1 基本原理

1.1 摄像机模型

摄像机标定模型如图1所示.针孔模型是一个简单而实用的摄像机模型,通常用它来处理基本的几何投影射线.根据针孔成像理论,摄像机由4个坐标系组成,它们分别是三维世界坐标系(OwXwYwZw)、摄像机坐标系(OcXcYcZc)、成像平面像素坐标系OUV和成像平面物理坐标系O1XY.

1.2 摄像机内参的标定

根据小孔成像摄像机模型,在图像上的点m=[U V]T和三维空间中的点M=[XwYwZw]T之间的投影关系如下:

式中:A为摄像机的内参;R为3×3的旋转矩阵;t为3×1的平移向量.

在三维空间坐标系中,定义3D平面Z=0,公式(1)可以写成以下形式:

图1 摄像机标定模型Fig.1 Camera calibration model

公式(2)描述了空间三维平面到图像二维平面的映射关系.根据公式(2)得出,如果在三维平面和二维平面之间有4个相对应的点,那么能够得到这个单应性矩阵H:

由于旋转向量是彼此正交的,从公式(3)可以看出,一幅图像可以提供跟摄像机参数相关的2个约束方程.因此,如果要求出摄像机中的5个内参,那就需要至少3幅图像(N≥3).定义矩阵B=A-TA-1,就可以求出B的值,进而确定摄像机的参数.

1.3 透镜畸变的解决

考虑到透镜畸变,参考坐标系从理想投影平面转换为实际投影平面:

相机的镜头总是有一定的失真,这使得空间物体的成像不是理想的线性变换.有2个透镜畸变类型,即径向畸变和切向畸变.公式(4)表示了理想投影点和实像点之间的关系.其中k1和k2为径向畸变的系数,p1和p2为切向畸变的系数,同时

1.4 在立体视觉下的摄像机标定模型

针对双目立体视觉系统的标定,确定2个摄像机之间的相对位置.首先分别标定其自身的内外参数,按照内外参数分离法,再通过它们之间的外部参数关系获得2个相机相对位置R和T,标定方程为:

由此可见,只要先标定2个摄像机,就可以得到2个摄像机的相对位置关系R和T.

2 标定实验

本实验结合OpenCV库开发了一套摄像机内外参标定程序,软件环境为VS2010开发平台及OpenCV2.4.1版本.在OpenCV中,主要使用cvLoad-Image()读取图像、使用 cvFindChessboardCorners()进行角点提取、使用cvFindCornerSubPix()对角点进行亚像素求精以及cvCalibrateCamera2()求取摄像机内外参,摄像机采用的是工业摄像机,图像最大分辨率为2 592×1 944.2个摄像机之间的间距为192.0 mm,标定板采用5×7棋盘,其角点数为4×6,棋盘格边长为40 mm×40 mm,如图2所示.

图2 棋盘格Fig.2 Chessboard

分步标定实验步骤:①制作棋盘格;②分别使用左右摄像机对标定板从8个不同角度拍照;③在VS2010开发平台上使用OpenCV分别计算出左右摄像机的内参;④左右摄像机同时对标定板从5个不同角度拍照,左右摄像机各拍出5张;⑤利用Matlab计算出双目立体参数.

3 实验结果及分析

3.1 左摄像机标定结果

实验中用左摄像机单独对标定板从不同的角度拍摄图片,所拍得的图片如图3所示.

图3 单独左摄像机拍摄图片Fig.3 Separate pictures taken by the left camera

左摄像机内参标定结果如下:

左摄像机内参:

左摄像机畸变系数:

3.2 右摄像机标定结果

实验中用右摄像机单独对标定板从不同的角度拍摄图片,所拍得的图片如图4所示.

图4 单独右摄像机拍摄图片Fig.4 Separate pictures taken by the right camera

右摄像机内参标定结果如下:

右摄像机内参:

右摄像机畸变系数:

3.3 双目摄像机立体参数标定结果

2个摄像机同时对标定板从不同角度拍摄照片,分别如图5和图6所示.

图5 双目左摄像机拍摄图片Fig.5 Binocular pictures from the left camera

图6 双目右摄像机拍摄图片Fig.6 Binocular pictures from the right camera

使用以上计算出的单个摄像机的内参,通过Matlab得出5组外参,求取这5组外参的平均值,得出2个摄像机的相对位置关系R和T:

3.4 标定结果分析

通过以上数据可以得出,2个摄像机的焦距f计算值为11.8 mm,摄像机实际焦距(规格)为12.0 mm,同时根据2个摄像机的立体参数得出其基线长度为190.0 mm,而实测值为192.0 mm,因此,这个标定结果是可信的,符合预期的结果.

本文采用的摄像机分步标定法是一种介于摄像机传统标定和自标定之间的一种标定方法.摄像机传统标定精度高,但计算过程复杂,标定的传统方法主要有双平面法[13]、两步法[14]、非线性优化法[15]等,摄像机自标定灵活性强,但标定精度差,自标定方法主要有基于Kruppa方程的自标定方法[16]、分层逐步标定方法[17]和可变内参数自标定法[18].使用文献[19]提供的方法分别对传统标定、分步标定和自标定结果进行总的图像残差均值的计算,对标定精度进行比较,结果如表1所示.

表1 图像残差均值和EdTab.1 dand the mean value of image residuals

表1 图像残差均值和EdTab.1 dand the mean value of image residuals

标定方法 双平面法(传统)两步法(传统)非线性优化法(传统) 分步标定X方向的图像残差均值/像素0.120 2 0.123 5 0.126 5 0.122 1 Y方向的图像残差均值/像素0.060 5 0.062 5 0.070 1 0.061 0 Ed/像素0.127 2 0.138 0 0.148 8 0.158 5时间/s 230 243 240 200标定方法基于Kruppa方程的自标定方法(自标定)可变内参数标定方法(自标定)0.135 7 0.142 3 0.138 9分层逐步标定方法(自标定)X方向的图像残差均值/像素Y方向的图像残差均值/像素Ed/像素0.071 2 0.081 0 0.075 6时间/s 0.175 0 0.186 0 0.163 0 182 187 193

通过表1可以看出,使用传统标定方法得出的最大0.148 8,而本文的分步标定法为0.158 5,使用自标定方法得出的最小为0.163 0.同时从表1中易得出,自标定运行时间最短,而传统标定时间最长.可见,本文分步标定法比自标定方法精度高,同时比传统标定方法时间短.分步标定法不仅克服了自标定方法精度低和传统标定方法过程复杂的缺点,还解决了主动视觉标定中摄像机运动参数未知情况下的标定问题.

4 对摄像机标定精度的分析

通过实验得出以下影响摄像机标定精度的几个因素,并对此进行分析.

(1)在标定实验中,提取角点用的是OpenCV中的cvFindChessboardCorners()函数,该函数用的是Harris算子,因此利用摄像机拍照时,尽量选择光照好的环境.Harris算子在角点检测时,使用了微分算子对图像进行微分运算,而微分运算对图像密度的升降和对亮度的强弱不敏感(不改变Harris响应极值点出现的位置),但是,由于阈值的选择会影响角点检测的数量,导致角点不能检测完全,以致会影响摄像机标定的精度.摄像机标定过程中必须让标定靶分别在X、Y、Z轴上进行一定的旋转(Harris角点检测算子具有旋转不变性),这样求解摄像机内外参用到的矩阵才不会是病态的,才能准确计算出摄像机内外参.

(2)实验发现,摄像机的分辨率越高(图片的尺寸越大),对图片的拍摄条件要求越高,检测角点的难度越大,这是因为Harris角点检测算子不具有尺度不变性(在同一个检测窗口可能会被检测成边缘或曲线,不易检测出角点或角点检测不完全).

5 结论

本文在双目立体视觉和传统摄像机标定的基础上,提出了分步标定的方法,首先利用OpenCV平台,标定出单个摄像机的内外参,然后再利用Matlab平台,计算了摄像机运动参数未知情况下的立体参数,完成了摄像机的分步标定.经计算得出总的图像残差均值为0.158 5像素,时间为200 s.标定结果比自标定方法精度高,同时比传统标定方法时间短.实验结果不仅达到了预期目的,而且从Harris角度分析发现光照、标定靶的旋转程度对精度影响很大,同时摄像机的分辨率越高,对图片的拍摄条件要求越高.本分步标定法不仅弥补了自标定精度低和传统标定过程复杂的不足,还解决了主动视觉标定无法解决的摄像机运动参数未知情况下的标定问题.与此同时,本文还对影响标定精度的因素进行了分析.摄像机标定作为机器视觉研究的第一步,同时也是最重要的一步,它为后续的三维测量和重建等工作奠定了良好的基础.

[1]LI F,SEKKATI H,DEGLINT J,et al.Simultaneous projector-camera self-calibration for three-dimensional reconstruction and projection mapping[J].IEEE Transactions on Com-putational Imaging,2017,3(1):74-83.

[2]SUN J,HOSSAIN M M,XU C L,et al.A novel calibration method of focused light field camera for 3-D reconstruction of flametemperature[J].OpticsCommunications,2017,390:7-15.

[3]LUHMANN T,FRASER C,MAAS H G.Sensor modelling and camera calibration for close-range photogrammetry[J].ISPRS Journal of Photogrammetry and Remote Sensing,2016,115:37-46.

[4]ALZAROK H,FLETCHER S,LONGSTAFF A P.A new strategy for improving vision based tracking accuracy based on utilization of camera calibration information[C]//Automation and Computing(ICAC),2016 22nd International Conference on.Colchester,UK:IEEE,2016:278-283.

[5]马颂德,张正友.计算机视觉:计算理论与算法基础[M].北京:科学出版社,1998.MA S D,ZHANG Z Y.Computer Vision-Calculation Theory and Algorithm[M].Beijing:Science Press,1998(in Chinese).

[6]SOCHOR J,JURÁNEK R,HEROUT A.Traffic surveillance camera calibration by 3D model bounding box alignment for accurate vehicle apeed measurement[J].Computer Vision and Image Understanding,2017,161:87-98.

[7]TRAFFELET L,EPPENBERGER T,MILLANE A,et al.Target-based calibration of underwater camera housing parameters[C]//Safety,Security,and Rescue Robotics(SSRR),2016 IEEE International Symposium on.Lausanne,Switzerland:IEEE,2016:201-206.

[8]GRATER J,STRAUSS T,LAUER M.Photometric laser scanner to camera calibration for low resolution sensors[C]//Intelligent Transportation Systems(ITSC),2016 IEEE 19th International Conference on.Rio de Janeiro,Brazil:IEEE,2016:1552-1557.

[9]CÓRDOVA-ESPARZA D M,TERVEN J R,JIMÉNEZHERNÁNDEZ H,et al.A multiple camera calibration and point cloud fusion tool for kinect V2[J].Science of Computer Programming,2017,143:1-8.

[10]BOUDINE B,KRAMM S,El AKKAD N,et al.A flexible technique based on fundamental matrix for camera self-calibration with variable intrinsic parameters from two views[J].Journal of Visual Communication and Image Representation,2016,39:40-50.

[11]ZHANG Z Y.A flexible new technique for camera calibration[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2000,22(11):1330-1334.

[12]HARRIS C.A combined corner and edge detector[J].Proc Alvey Vision Conf,1988(3):147-151.

[13]田小超,李忠科.双平面法标定的双目视觉三维测量系统[J].电光与控制,2015,22(3):54-57.TIAN X C,LI Z K.Binocular vision three-dimensional measurement system calibrated by double plane method[J].Electro-Optical and Control,2015,22(3):54-57(in Chinese).

[14]SUSYANTO N,VELDHUIS R N J,SPREEUWERS L J,et al.Two-step calibration method for multi-algorithm score-based face recognition systems by minimizing discrimination loss[C]//International Conference on.Halmstad,Sweden:IEEE,2016:1-7.

[15]WEI Z,CAO Z,ZHANG G.Nonlinear optimization method in camera calibration[C]//International Conference on Electronic Measurement&Instruments.Beijing:IEEE,2009:(2)459-(2)461.

[16]LAO W,CHENG Z,KAM A H,et al.Focal length self-calibration based on degenerated Kruppa's equations:Method and evaluation[C]//International Conference on Image Processing.Singapore:IEEE,2004:3391-3394.

[17]GUO Y,LI B Z.Blind image watermarking method based on linear canonical wavelet transform and QR decomposition[J].I-et Image Processing,2016,10(10):773-786.

[18]RUSSELL D,WEINREB S.Cryogenic self-calibrating noise parameter measurement system[J].IEEE Transactions on Microwave Theory&Techniques,2012,60(5):1456-1467.

[19]刘国瑛,薛月菊,邹湘军,等.基于图像残差的摄像机标定精度比较[J].农机化研究,2010,32(10):118-121.LIU G Y,XUE Y J,ZOU X J,et al.Comparison of camera calibration accuracy based on image residual[J].Research on Agricultural Mechanization,2010,32(10):118-121(in Chinese).

猜你喜欢
内参角点畸变
新舆论环境下如何提升内参工作以嘉报集团内参工作为例
大型焊接容器局部热处理防畸变工装优化设计
多支撑区域模式化融合角点检测算法仿真
几何特性对薄壁箱梁畸变效应的影响
角点检测技术综述①
内参报道如何在全媒体时代“出圈”
基于灰度差预处理的改进Harris角点检测算法
提高站位意识 发挥参谋作用——湖报集团办好内参的几点思考
浅谈基层记者如何采写高质量内参
基于FAST角点检测算法上对Y型与X型角点的检测