王巨森 刘自强
1 沈阳铭远奥斯科技有限公司(沈阳 110000)2 沈阳工业大学(沈阳 110870)
利用摄像机捕获三维场景的图像是计算视觉的首要工作之一,从图像中获取目标的信息,由此重建和识别目标物体。为获得目标的信息,首先要建立三维空间的目标物体的几何信息与其在图像中对应点之间的相互关系,为随后的重建和识别奠定基础。而建立图像和世界坐标系中的物体之间对应关系的任务取决于摄像机成像的几何模型,成像几何模型的参数被称为摄像机参数,决定这些摄像机参数的步骤称为摄像机标定(Camera Calibration)。摄像机标定的步骤就是为了获得摄像机的几何和光学参数,摄像机相对于空间坐标系的位置。标定结果的精度,直接影响着计算机视觉的精度。
如今,摄像机标定方法研究有许多,其研究方法大体分为两类,即传统的摄像机标定方法与摄像机自标定方法。传统的摄像机标定方法需要某个特定的摄像机模型和实验环境,比如说已经确定的几何图形参照体,需通过一系列的图像处理过程,使用数学几何变换和算子,来获取摄像机内参数和外参数。如W.Faig[1]采用的标定方法,利用了至少17 个参数描述与其三维物体空间之间约束关系,导致计算复杂度高。R.Y.Tsai 提出了经典的两步标定法[2],该方法对实验硬件条件要求很高,在简单标定中并不适用。
摄像机自标定方法,它不依赖标定参照物,来计算摄像机的参数。Fauge[3]提出自标定(Self-Calibration)设想,他们利用摄影几何理论验证对两幅图像之间存在对应关系,其关系可以通过解Kruppa 方程组,来获得所有像素点到对应极线的距离之和,在此基础上求解出摄像机的内外参数。然而,求解Kruppa 方程组计算繁琐,尤其是当图像数量增多时,解的数量也会呈指数形式随之增加。Triggs[4]采用绝对二次曲面的自标定方法,针对在现实使用中摄像机里面参数实时的情况可能会被转变,如缩放焦距等,这时候提到的自标定方法不可被采用.
考虑传统与自标定方法的不足,马颂德[5]等人想出一种基于主动视觉的定标方法,该方法需要将摄像机精确地安装在可控的平台上,主动控制平台的运动得到多幅图像,利用图像和摄像机运动参数来得到摄像机内外参数。此方法虽鲁棒性好,但特定实验环境、昂贵的实验设备,限制了方法应用。微软研究院的张正友[6]在通过许多研究后想出了一个处于传统标定和自标定之间的较好的方法,此方法对实验条件要求不高,方法容易实现,实验结果的鲁棒性好,因此在许多应用采用张氏标定方法,本文探讨该方法的实现。
该方法采用一个二维平面模社作为标定参照物(如图1 所示),它是一幅10×7 个正方形黑白相间棋盘格,其中每黑格、白格的尺寸统一为26mm×26mm。从不同方法获取的同一个标定板图像(3 幅以上),就能求出摄像机的内外参数,因为该方法不需了解平面模板运动状态。所以此方法容易、方便实现。
其算法实现过程如下:
(1)从不同的方向来获取若干张(至少3 张)棋盘模板图片;
(2)利用Harris 提取角点方法从获取的图片中提取角点的信息(像素坐标);
(3)最后就可以利用角点信息来求解摄像机的参数,即实现摄像机标定的目的。一般在求解摄像机参数时,对于每幅图像都有其对应的单应矩阵H。H 写成向量形式如公式(1)所示,
(1)其中h 都代表3×1 的向量,λ 表示为系数,A代表摄像机的内部参数矩阵;
(1)利用映射矩阵得到内参数A 的约束条件。
(2)利用约束条件线性求解内部参数A。
基于绝对二次曲线原理与Choleski 分解,可以求出内参数矩阵A。再根据A 和映射矩阵H 算出每幅图像相对于平面模板的外参数旋转矩阵和平移向量。
(3)非线性优化
图1 试验的标定板
采取极大似然准则法对所得参数优化。假如有n幅模板平面的图像,而且在模板平面能标定出m 个标定点,那么通过(2)式能得到极大似然估计值。
其中mij代表在第i 幅图像中第j 个像点,Ri代表第i 幅图像旋转矩阵;tj表示第i 幅图像的平移向量;Mj表示为空间坐标中第j 个点;畸变系数系数k1,k2初始值设置为0。
根据标定算法实现的过程,对一个摄像头(名称为WebCam,ID 为USBVID_0
C45&PID_62C0&MI_00)进行标定测试,其测试结果如下:
(1)摄像机内参数
得到的摄像机内参数数据如表1 所示,αu 、αu 是尺度因子,cx 和cy 是主点坐标。
表1 内部参数
表2 旋转矩阵参数
(2)摄像机外参数数据
得到的摄像机外部参数的旋转矩阵和平移矩阵分别如表2 所示,表2 中R1、R2、R3表示摄像机坐标点相对于世界坐标系对应坐标分别绕X、Y、Z 轴旋转角度值。
本文在针孔模型的基础上提出径向畸变系数,确立了一种精度比较高、应用领域广泛的摄像机成像模型,采用张正友摄像机标定方法得到鲁棒性较高的精确摄像机参数,并且实验过程操作简单、灵活、实验对设备与环境要求不高等优点。
由于Harris 角点检测算法没有办法得到亚像素级角点和可能会存在检测误差等问题,以至于获取的角点可能不太精确,给后期标定工作带了未知的问题,可能导致标定结果的精度不太高, 因此,提取更好的角点是今后研究的重点。
[1]W.Faig.Calibration of close-range photogrammetry systems: Mathematical formulation[J].Photogrammetric Eng.Remote Sensing,1975,41(12):1479-1486.
[2]R.Y.Tsai.A versatile camera calibration for high-technique accuracy 3D machine vision metrology using off-the-shelf TV camera and lenses[J].IEEE Journal of Robotics and Automation, 1987,RA-3(4):323-344.
[3]Moons T,Van Gool L,Proesmans M,et al,Affine reconstruction from perspective image pairs with a Relative object-camera translation between[J].IEEE Transaction Pattern Analysis Machine Intelligence, 1996,18(1):77-83.
[4]Triggs B.Auto-calibration and absolute quadric[J].In: Proceedings of Computer Vision and Pattern Recognition, 1997,604-614.
[5]马颂德,张正友.计算机视觉:计算理论与算法基础[M].北京:科学出社社,1998.
[6]Zhang zheng you.A Flexible Camera Calibration by viewing a Plane from Unknown Orientations, ICCV99.