相机标定误差因素分析 摘要:分析了影响相机标定精度的一些主要因素,并给出了在这些因素影响下世界坐标重投影误差的分布曲线。仿真及实验表明在非线性相机模型的线性标定方法中,世界坐标的测量精度对相机标定精度有较大影响,标定图片数量 15-20幅较合适。对相机标定中合理制作标定板、选择标定图片数量、快速高精度标定相机提供了有益帮助。 0 引言 标定是计算机视觉中最关键、最基本的一步,标定精度及其稳定性对机器精度影响较大。在传统的相机标定方法中张正友提出的非线性相机模型的线性标定方法[4]定、标定板容易制作、标定统一的特点,便于工业化的大规模生产,因此应用范围广泛。在具体应用中有必要对其进行深入的讨论和分析,以进一步提高其标定的精度和速度,并降低成本。 在传统标定方法中,影响相机标定精度的因素有很多,主要有世界坐标精确度(标定板的打印和测量精度)、特征点的数目、特征点的提取精度、标定图片的数量、图片拍摄的角度等[2][3]。本文以英特尔公司开发的 opencv 为基础,研究了标定板测量误差、特征点数量、标定图片数量等因素对相机内外部参数标定精度的影响,以提高相机标定的精度和速度。 1 相机标定模型 在传统的相机模型中共有 4 套坐标系:世界坐标系是物体点 p 的三维世界坐标,是由用户自己定义的;相机坐标系 是以相机光心为原点,以垂直于图像平面的相机光轴为 zc轴,xc轴和 yc轴平行于图像平面;图像的物理坐标系 和 分别为像上显示的坐标和畸变矫正后的像点物理坐标;(u,v)为像点的像素坐标系。空间物点 pw到像点 pd的转换就通过这 4 套坐标系经过 3 次转换而得来的[4]。根据理想的小孔成像模型,可表示为: 式(1)中:dx、dy 分别为感光器件上 x 和 y 方向上像素点间的距离;u x 和 y 方向的有效焦距,其单位是像素。r 为世界坐标系到相机坐标系的 3×3 矩阵。t 为世界坐标系到相机坐标系的唯一平移向量。 考虑到一般性,在张氏标定方法中设计了平面靶标,即,z=0,记单应性矩阵 ,又可以写为: 单应性矩阵 h 把靶标上的点同图像上的点联系起来,h为 3×3。每一幅图像都最多只有一个单应性矩阵。一个单应性矩阵可以从 4 组((x,y,z)和对应的(u,v))坐标对中产生多达 8 个参数。利用从不同视场拍摄多次拍摄(理论上至少两次)图片计算出多个单应性矩阵,利用最小二乘原理可以计算出相机的内外部参数[5]。有了准确的单应性矩阵 h 才能进一步计算相机的内外部参数。 2 影响标定精度的因素分析 2.1 标定板的测量误差及特征点的提取对标定精度的影响 对一幅图像上的 i(i=1,2,3,4,…)个特征点有(2)式,从中可以看出,特征点的提取精度和世界坐标的测量精度都会对单应性矩阵的计算造成影响,通常特征点会远远大于 4 个,因此以上方程组不相容,不存在通常意义下的解,通常取最小二乘解。即令 可求得单应性矩阵一个 h。特征点(u,v,0)、标定板上角点世界坐标(x,y,z)都会对计算结果产生直接的影响[6],每一幅图像上特征点的数量将影响到每个单应性矩阵的求解精度。 2.2 图像数量对相机标定精度的影响 在该标定方法中要求每一幅图片都从不同的角度去拍摄,即一幅图片就是一个视场,能唯一确定一个单应性矩阵 h。图片的数量即 h 的数量。在由单应性矩阵求解相机内外参数的过程中,h 的数量同样会影响到标定的精度。不考虑畸变的情况下,相机参数共有 9 个,而一个单应性矩阵仅能确定 8 个自由度,因此标定至少需要 2 幅不同视角的图像。为了获得稳定的数值结果,通常采集的图片数量会远远超过次数。如果采集图像不足,明显会对内部参数计算带来一定的误差,但采集图像过多一方面影响标定的精度,另一方面也会造成误差累积,增加错误概率。因此合适图像数量必须加以考虑。 3 仿真及验证 为了进一步准确分析影响相机标定精度的因素,采用计算机模拟和真实图片相结合的办法对主要因素影响做逐项分析。为此以 vc++6.0 和 opencv 为工具编写了仿真软件和标定程序,以模拟相机的投影过程和实现标定。 3.1 仿真分析 (1)图片数量对标定精度的影响。 实验以特征点的重投影误差为主要的衡量标准。假设模拟相机的内外部参数为(像素): 、。畸 变 系 数,k1=-0.043275,k2=0.031404, 。实验中通过设置相同的相机内部参数和多组(40 组)不同的外部参数,投影生成 40组不同的特征点,也即相当于 40 幅不同的图片。从此 40 组特征点中不同组数进行标定相机的内外部参数,得有效焦距随标定图像数量之间的变化曲线。 可见在不考虑(在仿真实验中没有)特征点提取误差和世界坐标测量误差的时,图片数量为 11-15 时,相机内部各个参数基本保持稳定。纵向有效焦距和横向有效焦距都在 2 个像素内波动,测量值基本接近仿真设定的真实值,误差小于 1‰。 (2)标定板世界坐标精度的影响。 制作标定板时,往往都假设打印的黑白棋盘格是等边长的[7]。但是由于普通打印机不够精确,造成了测量标定板的误差。因此有必要研究世界坐标的测量精确程度对标定造成的影响。在上述实验中产生的 40 组特征点中任取 20 组,做相机内外部参数标定。标定时在世界坐标中加入期望为 0、均方差不同的高斯噪声,噪声均方差水平与总投影误差(单位:像素)的关系如下图。 得到重投影误差和噪声误差之间的变化曲线,如图 2。重投影误差随噪声均方差水平的增大而迅速增大,标定结果对世界坐标非常敏感。为了进一步提高标定精度需要提高平面靶标的测量精度,或提高打印精度。当误差水平小于 1.5%时,重投影误差小于一个像素。当误差水平大于 2%时投影误差则迅速变大。 3.2 实际检验 以理光 grdⅲ型定焦相机为标定对象。该型相机有效像素达 1000 万,最高分辨率 3648×2736。实验所用标定靶标为600×450mm,上有 9 行×13 列黑白棋盘格的平面板。为避免因印刷不准确造成的影响,在实验前已经使用全站仪对各个内角点进行了精确的测量。由于全站仪不能保证严格地以板平面为基准面,因此在测量后又进行了坐标转换,基本保证了所有特征点的 z 向坐标为 0。 (1)内部参数标定。 在标定过程中,从不同角度和不同的深度拍摄了 40 幅图像进行标定。分别得到主点坐标和有效焦距与图片数量之间的变化关系。见图 3 和图 4。 从曲线变化可以看出,在实际的标定过程中,由于特征点提取误差,为保证内部参数标定结果可靠,至多需要 20 幅图片使标定结果基本稳定在 3 个像素内波动,约合 1‰。 (2)外部参数标定。 取实验(1)中计算出的内部参数,进行外部参数标定。标定时使用经全站仪精确测量得的世界坐标。标定时在特征点世界坐标中加入期望为 0、均方差不同的高斯噪声,观察噪声均方差水平与总投影误差的关系是否与仿真分析相一致。可以得到重投影误差对噪声均方差相对变化的曲线。如图 5: 从重投影误差和噪声均方差之间的关系可以看出,仿真实验与真实图片实验的结果相一致。从标定结果来看,重投影误差和噪声均方差之间呈明显的正相关;不加入噪声时,平均投影误差可达 0.5 个像素以下;当噪声均方差小于 1 时,两者成近似线性关系;当噪声均方差大于 1 时,重投影误差则迅速增大。 4 结语 本文通过计算机模拟相机成像过程和标定过程,研究了标定图片数量、特征点世界坐标测量精度、特征点提取精度对摄像机相机标定内外参数的影响。认为相机标定至多使用 20张图片就能够实现高精度标定;使用全站仪测量特征点世界坐标,并且特征点图像坐标提取精度达亚像素下能使相机标定的相对误差达 1‰以下。 参考文献: [1] 郭丽丽,刘培玉,李兆翠.交通事故现场相机标定技术研究[j].计算机工程与应用,2008,44(20):229-231. [2] 胡楠,鲁光泉,荔涛,李一兵.基于分布标定法的交通事故现场摄影测量精度实验分析[j].汽车工程,2008(vol.30):557-559. [3] zheng-you zhang. a flexible new technique for cameracalibration[j]. ieee transactions on pattern analysis andmachine intellgence,2000,22(11):1330-1334. [4] 张广军. 机器视觉[m].北京:科学出版社, 2005. [5] 娄小平, 郭美萍. 双目视觉测量系统标定精度提高方法研究 [j]. 北京信息科技大学学报:自然科学版.2010,25 (1).16-20. [6] 袁铭, 苏显渝, 刘晓青.影响摄像机标定精度的因素分析[j]. 光学与光电技术.2010,8(4).18-21. 作者:尹洪涛 刘 成 李一兵 鲁光泉 刘文超 |