基于MATLAB中calibration toolbox的相机标定应用研究

2011-08-14 01:12郭冬霄
网络安全与数据管理 2011年14期
关键词:畸变标定坐标系

张 曦, 黄 亮, 徐 洋, 郭冬霄

(1.重庆市电力公司南岸供电局,重庆 400060;2.重庆邮电大学,重庆 400065)

随着人们对可视化要求的提高,计算机视觉作为一门新兴的高科技学科,被越来越多地应用于产品在线质量监控、微电子器件的自动检测、各种模具三维形状的测量及生产线中机械手的定位与瞄准等[1,2]领域。相机标定作为计算机视觉中最基础的一部分,已形成了很多种标定方法,有关理论问题也得到了较好的解决,当前的研究工作应该集中于如何针对具体的实际应用问题,采用特定的简便、实用、快速、准确的标定方法[3-6]。

MATLAB中的相机标定工具箱 (camera calibration toolbox)提供了各种例程以及标定方法,非常详细,甚至还提供了方格型的靶标。用户接口方便灵活,在相机标定时使用非常简单,而且该工具箱的C源码在开源计算机视觉库中开放,为深入学习进行二次开发提供了理想的条件[7-9]。摄像机的标定与相机同理。

1相机标定原理

标定中有3个不同层次的坐标系:世界坐标系、相机坐标系和像平面坐标系(物理坐标系和像素坐标系),如图1所示。

1.1世界坐标系

世界(world)坐标系也称真实或现实世界坐标系,用XwYwZw表示,它是客观世界的绝对坐标 (所以也称客观坐标系)。一般的3D场景都用这个坐标系来表示。

1.2相机坐标系

相机坐标系是以相机为中心制定的坐标系,用XcYcZc表示,一般取相机的光学轴为Zc轴。

1.3像平面坐标系

图像物理坐标系是在相机内所形成的像平面xy坐标系,一般取像平面与相机坐标系平面平行。

图像像素坐标系是在相机内所形成的uv坐标系,一般取像平面∏的左上角为原点。

图像上每一点的亮度与物体某个表面点的反射光的强度有关,而图像点在图像平面上的位置仅与相机空间物体的相对方位和相机的内部结构有关,相机的内部结构是由相机的内部参数所决定的。为了描述相机的成像几何关系,需要对相机进行数学建模。通常采用针孔模型,也称为线性模型,这种模型在数学上是三维空间到二维平面的中心投影,由一个3×4矩阵来描述,这种模型是一个(退化的)摄影变换,因此通常又称它为摄影摄像机。

1.4相机标定原理

相机标定是指建立摄像机图像像素位置与场景点位置之间的关系,其途径是根据相机模型,由已知特征点的图像坐标和世界坐标求解相机的模型参数,如图2所示。相机需要标定的模型参数分为内部参数和外部参数,转换关系为:

图2坐标转换过程

世界坐标系中的点到相机坐标系的变换可用一个正交变换矩阵 R和一个平移变换矩阵 T表示,fx、fy、γ、u0、v0是线性模型的内部参数,其中 fx、fy分别定义为 X和Y方向的等效焦距,u0、v0是图像中心(光轴与图像平面的交点)坐标,γ是u轴和v轴不垂直因子;R和T是旋转矩阵和平移矩阵。若已知矩阵M1、M2,就可建立起世界坐标和像素坐标的对应关系。相机的标定任务就是求出每个变换矩阵中的参数。

由于相机光学系统并不是精确地按理想化的小孔成像原理工作,存在透镜畸变,即物体点在相机成像面上实际所成的像与理想成像之间存在光学畸变误差[2,3]。主要的畸变误差有三类:径向畸变、偏心畸变和薄棱镜畸变,分别用 δr、δd、δp表示。第一类只产生镜像位置的偏差,后两类则既产生径向偏差,又产生切向偏差。

考虑畸变后,图像平面理想图像点坐标(Xu,Yu)等于实际图像点坐标(Xd,Yd)与畸变误差之和,即:

此时,各坐标系中点坐标的转换关系可表示为:

若为线性模型时,δr、δd、δp分别等于 0。 fx、fy、γ、u0、v0是线性模型的内部参数,其中fx、fy分别定义为 X和Y方向的等效焦距,u0、v0是图像中心 (光轴与图像平面的交点)坐标,γ是u轴和v轴不垂直因子;R和T是旋转矩阵和平移矩阵,称为外部参数,δr为径向畸变参数,δd、δp产生切向畸变,称为切向畸变参数。

2相机标定

相机的输出画面分辨率为 3 280×2 460,采用黑白棋盘作为标定模板,模板正方形边长为30 mm。实时标定过程如下:

(1)运行标定主函数 calib_gui,显示如图 3所示模式选择窗口。

通过这个操作,可以选择一次性上传所有标定照片或在电脑内存不足的情况下分张上传。无论选择哪种模式,都会有相同的用户窗口,接下来的标定过程可全部由此窗口完成,如图4所示。

(2)在主窗口中通过读取图片,可以获得所要标定的照片。

(3)获取角点。程序运行界面如图5所示。程序标定结果如下:

从实验可以看出,使用MATLAB中的标定工具箱可以很快地得到标定结果,操作简单易懂,可视化效果好,对结果误差、畸变等可以图像的方式显示。

[1]张广军.视觉测量[M].北京:科学出版社,2008.

[2]吴福朝.计算机视觉中的数学方法[M].北京:科学出版社,2008.

[3]ROGER Y.TSAI.A versatile camera calibration technique for high-accuracy 3D machine vision metrology using offthe-shelf TV cameras and lenses[J].IEEE Journal of robotics and automation,1987,RA-3(4):323-344.

[4]TSAI R Y.An efficient and accurate camera calibration technique for 3D machine vision[M].Proc.of IEEE Conference of computer Vision and Pattern Recognition,1986:364-374.

[5]ZHANG Z Y.Flexible camera calibration by viewing a plane from unknown orientations[C].In:Proceedings of the International Conference on Computer Vision(ICCV’99),1999:666-673.

[6]靳志光,卫建东,张冠宇,等.基于 LCD的相机标定新方法[J].遥 感 应 用,2008,1:87-90.

[7]Meng Xiaoqiao,Hu Zhanyi.A new easy camera calibration technique based on circular points[J].pattern recognition,2003,36(5):1155-1164.

[8]WU Y H,ZHU H J,HU Z Y,et al.Camera calibration from the quasi-affine invariance of two parallel circles[C].In Proc.European Conference on Computer Vision(ECCV’2004),2004,I:190-202.

[9]徐德,赵晓光,涂志国,等.基于单特征点的手眼系统摄像机标定[J].IEEE Transtration on Pattern Analysis and Machine Intelligence,2000,22(11):1330-1334.

猜你喜欢
畸变标定坐标系
独立坐标系椭球变换与坐标换算
使用朗仁H6 Pro标定北汽绅宝转向角传感器
几何特性对薄壁箱梁畸变效应的影响
解密坐标系中的平移变换
坐标系背后的故事
在Lightroom中校正镜头与透视畸变
基于匀速率26位置法的iIMU-FSAS光纤陀螺仪标定
基于纯平移两视图几何的镜头畸变参数标定
船载高精度星敏感器安装角的标定
基于Harris-张正友平面标定法的摄像机标定算法