基于共线特征点的摄像机畸变快速校正方法

文档序号:6124105阅读:220来源:国知局
专利名称:基于共线特征点的摄像机畸变快速校正方法
技术领域
本发明属于测量技术领域,涉及对摄像机畸变标定和校正实现方法的改进。
背景技术
在计算机视觉、图像处理等领域,由于光学镜头畸变的存在,导致其成像模型与理想针孔模型不一致,拍摄出的图像存在几何失真。特别是在使用广角镜头时,在远离图像中心处会有较大的畸变。然而,计算机视觉领域中的大部分算法都是基于理想的针孔成像模型的。因此,如何求解摄像机的畸变系数并对图像进行畸变校正是计算机视觉领域的重要课题。理论上镜头的畸变会同时存在径向畸变和切向畸变,但一般来讲切向畸变比较小,大多数情况下只需要考虑一次径向畸变。
目前标定并校正镜头畸变的方法主要分为两大类。一类是计算机视觉领域中最常用的基于摄像机标定的方法,其特点是畸变系数的标定与摄像机其他参数的标定融合在一起。Roger Y.Tsai在文章“一种利用普通摄像机和镜头进行高精度三维机器视觉测量的通用摄像机标定技术”(A Versatile Camera CalibrationTechnique for High-Accuracy 3D Machine Vision Metrology Using Off-the-Shelf TVCameras and Lenses),IEEE《机器及自动化》期刊,第RA-3卷,第4期,第323~344页,1987年(IEEE Journal of Robotics and Automation,Vol.RA-3,No.4,1987)中陈述了这种方法,此类方法首先建立世界坐标系中的特征点与图像坐标系中的二维图像点的对应,然后通过非线性优化来得到摄像机的畸变系数以及其他参数,该方法需要大量已知世界坐标的特征点,畸变系数的求解依赖于摄像机的其他内外部参数。另一类是未标定镜头的畸变系数求解,其特点是一般根据透视投影不变性的原理来求解镜头的畸变系数。贺俊吉等在文章“基于交比不变性的镜头畸变参数标定方法”(仪器仪表学报,Vol.5,No.25,pp.597~599,2004)中提出了基于交比不变性的镜头畸变参数标定方法,该方法要求特征点的世界坐标已知,因此需要高精度的标定靶标,有一定局限性。FREDERIC D.等在文章“直线一定是直的-结构环境中场景畸变的自动标定和消除”(Straight lineshave to be straight-Automation calibration and removal of distort from scenes ofstructure environments),国际期刊《机器视觉及应用》,第13期,第14~24页,2001年(Machine Vision and Applications,No.13,pp.14-24,2001)中研究了基于直线透视投影不变性的镜头畸变参数标定方法,该类方法要求图像具有丰富的直线边缘,因此图像中的边缘直线的数量及其分布直接影响了畸变系数的标定,对于同一摄像机拍摄的图像可能得到不同的畸变系数,只能应用于非量测的畸变校正应用场合,另外算法的计算量大、实现过程比较复杂,畸变校正的实时性得不到保证。

发明内容
本发明所要解决的技术问题是提供一种基于未知坐标共线特征点的摄像机畸变标定方法和基于预计算模板的畸变校正快速实现方法。以简化摄像机畸变标定过程,降低标定设备的成本,提高畸变校正算法的实现速度,满足其工程化应用的实时性要求。
本发明的技术解决方案是一种基于未知坐标共线特征点的摄像机畸变标定方法,其特征在于,1.1、设定靶标1。靶标为一个二维平面,在靶标平面上布置成矩阵排列的黑色矩形,数量为4~100个,矩形的长和宽在3~50mm范围内。选取靶面上黑色矩形的顶点作为特征点,特征点的数量为16~400个。要求靶标平面上至少有一条直线,该直线包括3个或者3个以上共线特征点存在,特征点的坐标未知;1.2、在摄像机的有效视场范围,自由放置靶标至少1个位置,每放置一个位置,拍摄一幅图像,称为畸变标定图像,靶标上所有特征点应包括在拍摄图像内,拍摄的所有靶标图像叠加在一起,尽量使叠加靶标图像充满整幅图像;1.3、提取所有畸变标定图像的特征点的实际图像坐标,将具有至少3个共线特征点标记为同组特征点;1.4、利用同组特征点在畸变标定图像中应该共线的特性,建立以计算理想图像坐标到拟合直线距离和最小为目标的优化函数,通过非线性优化方法估计摄像机畸变系数k;1.5、保存畸变系数k到系统参数文件,以备畸变校正实现调用;在获得摄像机的畸变系数后,就可以对图像进行畸变校正,本发明提出基于预计算模板的畸变校正快速实现方法,其特征在于,2.1、设原始畸变图像大小为w×h像素,校正后图像大小为W×H像素,由畸变系数k,w和h,确定W和H以及校正后图像的四个顶点坐标,从而获得校正后图像像素点的理想图像坐标(xu,yu);2.2、根据摄像机畸变模型,由理想图像坐标(xu,yu)计算其对应的原始畸变图像中的实际图像坐标(xd,yd)。计算整幅图像像素点的理想图像坐标所对应的畸变图像坐标,分别将结果存入W×H阶矩阵Xd和Yd;2.3、根据理想图像坐标(xu,yu),查找矩阵Xd和Yd得到其对应的原始畸变图像中的实际图像坐标(xd,yd)。根据(xd,yd)的4个邻域像素的灰度值进行线性插值计算得到校正后图像(xu,yu)点的灰度值。得到整幅图像的所有像素点的灰度值,保存校正后的图像;2.4、重复步骤2.3,校正新的畸变图像;本发明的优点是第一、本发明提出的基于未知坐标的共线特征点的摄像机畸变标定方法,不需要知道摄像机的内外部参数,也不需要知道共线特征点的世界坐标,需要的标定靶标成本低,算法简单,容易实现;第二、提出的畸变校正快速算法直接从预计算模板矩阵通过查找读取对应畸变坐标,大大地减小了计算量,提高了畸变校正的实时性;第三、本发明的摄像机畸变快速校正方法不仅适用于非量测的畸变校正,而且也适用于量测畸变校正场合,满足了计算机视觉测量中的精度要求。
第四、由于畸变校正实现采用查找表和线性插值实现,因此校正算法适用于硬件实现,为进一步提高畸变校正速度奠定了基础。


图1是未知世界坐标的二维平面靶标示意图。图1中1是靶标体。
图2是标定用的一幅畸变图像及校正后图像。图2中,(a)是畸变图像,(b)是校正后图像。
图3是实际列出动态畸变图像及校正后图像。图3中,(a)是畸变图像,(b)是校正后图像,(c)是裁剪为原始图像大小的校正图像。
具体实施例方式
下面对本发明做进一步详细说明。摄像机镜头畸变由径向畸变和切向畸变组成,对于大多数计算机视觉系统不需要考虑切向畸变。如果只考虑一次径向畸变,摄像机的畸变模型可表示为xu=xd(1+krd2)yu=yd(1+krd2)---[1]]]>其中(xu,yu)表示理想图像坐标,(xd,yd)表示畸变实际图像坐标,k表示一次径向畸变系数,rd2=xd2+yd2.]]>根据透视投影理论,三维场景中的一条直线经过透视投影之后在图像平面上仍然是一条直线(特殊情况下为一个点)。然而,摄像机实际拍摄出的图像往往会发生几何变形,导致三维场景中的直线在图像平面上发生几何变形,畸变为曲线。这个几何变形是由于镜头的畸变而产生的。根据直线的透视投影不变性,可以利用三维场景中的直线与图像平面上的曲线之间的对应关系来估计镜头畸变参数。
根据摄像机畸变模型和本发明的基本原理,基于未知坐标共线特征点的摄像机畸变标定的具体步骤如下1、设定靶标1。靶标为一个二维平面,在靶标平面上布置成矩阵排列的黑色矩形,数量为4~100个,矩形的长和宽在3~50mm范围内。选取靶面上黑色矩形的顶点作为特征点,特征点的数量为16~400个。要求靶标平面上至少有一条直线,该直线包括3个或者3个以上共线特征点存在,特征点的坐标未知。
2、在摄像机的有效视场范围,自由放置靶标至少1个位置,每放置一个位置,拍摄一幅图像,称为畸变标定图像,靶标上所有特征点应包括在拍摄图像内,拍摄的所有靶标图像叠加在一起,尽量使叠加靶标图像充满整幅图像。
3、提取所有畸变标定图像的特征点的实际图像坐标,特征点实际图像坐标的提取算法参见周富强著《双目立体视觉检测的关键技术研究》,北京航空航天大学博士后研究工作报告,2002。
将具有至少3个共线特征点标记为同组特征点。
4、利用同组特征点在畸变标定图像中应该共线的特性,建立以计算理想图像坐标到拟合直线距离和最小为目标的优化函数,通过非线性优化方法估计摄像机畸变系数k。
由于镜头的畸变,未知世界坐标的同组特征点经透视投影到图像平面上,同组特征点的实际畸变图像坐标与理想图像坐标之间存在偏差,导致世界坐标共线的同组特征点在图像平面上不共线。
算法的输入为n(n>0)组共线特征点,实际图像坐标为Dij=(xdji,ydji),]]>其中1<i≤n,1<j≤mi,第i组共线特征点由mi(mi>2)个特征点组成。根据公式[1]可以得到特征点的理想图像坐标为Uij=(xuji,yuji),]]>拟合理想图像坐标得到n条直线Li。设点Uij到直线Li的距离为‖Uij-Li‖2,建立摄像机畸变标定的目标优化函数f(k)=Σi=1nΣj=1mi||Uij-Li||2---[2]]]>采用Levenberg-Marquardt方法对公式[2]表示的目标函数进行非线性优化,可以估算出摄像机畸变系数k。Levenberg-Marquardt算法参见《最优化理论与方法》,(袁亚湘、孙文瑜著,科学出版社,1999年)。
5、保存畸变系数k到系统参数文件,以备畸变校正实现调用。
在获得摄像机的畸变系数后,就可以对图像进行畸变校正,本发明提出基于预计算模板的畸变校正快速实现方法,具体步骤如下6、设原始畸变图像大小为w×h像素,校正后图像大小为W×H像素,由畸变系数k,w和h,确定W和H以及校正后图像的四个顶点坐标,从而获得校正后图像像素点的理想图像坐标(xu,yu)。
选取8个点的畸变图像坐标集合(xdi,ydi)={(0,0),(w/2,0),(w-1,0),(w-1,h/2),(w-1,h-1),(w/2,h-1),(0,h-1),(0,h/2)},根据公式[1],分别计算得到8个点的理想图像坐标(xui,yui)。
若cmin=floor(min1≤i≤8xui),rmin=floor(min1≤i≤8yui),cmax=floor(max1≤i≤8xui),rmax=floor(max1≤i≤8yui),其中函数floor(x)表示取最接近且不大于变量x的整数。(cmin,rmin)和(cmax,rmax)分别为校正后图像的左上角和右下角坐标。则校正后图像大小W=cmax-cmin+1,H=rmax-rmin+1,由此可以获得校正后图像像素点的理想图像坐标(xu,yu),取值为整数,共计W×H个像素点。
7、根据摄像机畸变模型,由像素点的理想图像坐标(xu,yu)计算其对应的原始畸变图像中的实际图像坐标(xd,yd)。
直接利用公式[1]求解(xd,yd)有一些困难,需要对其做一些变换。假设ru=xu2+yu2,]]>则ru=xd2+yd2(1+krd2)=rd(1+krd2)---[3]]]>ru/rd=1+krd2---[4]]]>则公式[1]变换为xd=xurd/ruyd=yurd/ru---[5]]]>在图像畸变校正的过程中,ru为已知量,根据公式[3]可解得rd的值。公式[3]可写为如下形式rd3+prd+q=0---[6]]]>其中p=1/k,q=-ru/k根据韦达定理,当Δ=(p/3)3+(-q/2)2>0时,方程[6]有唯一的实根rd=-(q/2)+Δ3+-(q/2)-Δ3---[7]]]>根据公式[7]和[5]可以求出(xu,yu)所对应的(xd,yd)。
按照上面所述方法,计算整幅图像像素点的理想图像坐标所对应的实际图像坐标,分别将其结果存入W×H阶矩阵Xd和Yd。
8、根据理想图像坐标(xu,yu),通过查找矩阵Xd和Yd得到其对应的原始畸变图像中的实际图像坐标(xd,yd)为xd=Xd(xu,yu)yd=Yd(xu,yu)---[8]]]>根据(xd,yd)的4个邻域像素的灰度值进行线性插值计算得到校正后图像(xu,yu)点的灰度值。线性插值算法参见艾海舟等译《图像处理、分析与机器视觉》(第二版),第45~46页,2003年。
得到整幅图像的所有像素点的灰度值,保存校正后的图像。
由基于预计算模板的畸变图像校正实现方法可知,求解单个无畸变像素坐标(xu,yu)所对应的畸变图像坐标(xd,yd)的运算量为2次开立方根,2次开平方根,8次乘法和11次加法运算。对于一幅大小为M×N的图像,进行畸变校正的运算量为2×M×N次开立方根,2×M×N次开平方根,8×M×N次乘法和11×M×N次加法运算。同传统的畸变校正直接计算的方法相比,采用预计算模板的快速校正方法则可以完全消除上述运算量,因为它直接从模板中读取畸变图像坐标(xd,yd)的值。
9、重复步骤8,校正新的畸变图像。
实施例采用如图1所示的未知世界坐标的平面靶标,靶标可以由1200dpi的激光打印机打印,粘贴在木质平板上。由带焦距为3.6mm广角镜头的摄像机拍摄靶标图像。采用7幅靶标图像对畸变系数进行标定,标定结果为k=0.125。
利用本发明提出的基于共线特征点的镜头畸变校正算法对如图2(a)所示的标定图像进行校正,校正后图像如图2(b)所示。表1是图像校正共线点的直线拟合结果,表2是校正后共线点的直线拟合结果。从表1和2可以看出,经过图像畸变校正以后6个特征点的共线性显著增强。
图3(a)为采用同样镜头采集的运行列车动态图像,图像大小为659×494,利用基于共线特征点的镜头畸变校正算法对该图像进行畸变校正,处理结果如图3(b)和(c)所示。
由图3可知,基于共线特征点的镜头畸变校正算法能显著改善由镜头畸变引起的图像几何失真,提升图像质量。
在主频为3.0GHz、内存为1G的PC机上,利用VISUAL C++6.0分别实现基于共线特征点的镜头畸变校正的直接计算以及基于预计算模板的快速算法。处理图3(a)所示同一幅大小为659×494图像,两种方法分别耗时600ms和40ms。实验结果表明,基于预计算模板的快速实现方法大大地减小了算法的运算量,显著地提高畸变校正速度,为图像畸变校正的实时应用奠定了基础。
表1 靶标图像校正前共线点的共线性

表2 靶标图像校正后共线点的共线性

权利要求
1.一种基于未知坐标共线特征点的摄像机畸变标定方法,其特征在于,1.1、设定靶标[1]。靶标为一个二维平面,在靶标平面上布置成矩阵排列的黑色矩形,数量为4~100个,矩形的长和宽在3~50mm范围内。选取靶面上黑色矩形的顶点作为特征点,特征点的数量为16~400个。要求靶标平面上至少有一条直线,该直线包括3个或者3个以上共线特征点存在,特征点的坐标未知;1.2、在摄像机的有效视场范围,自由放置靶标至少1个位置,每放置一个位置,拍摄一幅图像,称为畸变标定图像,靶标上所有特征点应包括在拍摄图像内,拍摄的所有靶标图像叠加在一起,尽量使叠加靶标图像充满整幅图像;1.3、提取所有畸变标定图像的特征点的实际图像坐标,将具有至少3个共线特征点标记为同组特征点;1.4、利用同组特征点在畸变标定图像中应该共线的特性,建立以计算理想图像坐标到拟合直线的距离和最小为目标的优化函数,通过非线性优化方法估计摄像机畸变系数k;1.5、保存畸变系数k到系统参数文件,以备畸变校正实现调用;
2.一种基于预计算模板的畸变校正快速实现方法,其特征在于,2.1、设原始畸变图像大小为w×h像素,校正后图像大小为W×H像素,由畸变系数k,w和h,确定W和H以及校正后图像的四个顶点坐标,从而获得校正后图像像素点的理想图像坐标(xu,yu);2.2、根据摄像机畸变模型,由理想图像坐标(xu,yu)计算其对应的原始畸变图像中的实际图像坐标(xd,yd)。计算整幅图像像素点的理想图像坐标所对应的畸变图像坐标,分别将结果存入W×H阶矩阵Xd和Yd;2.3、根据理想图像坐标(xu,yu),查找矩阵Xd和Yd得到其对应的原始畸变图像中的实际图像坐标(xd,yd)。根据(xd,yd)的4个邻域像素的灰度值进行线性插值计算得到校正后图像(xu,yu)点的灰度值。得到整幅图像的所有像素点的灰度值,保存校正后的图像;2.4、重复步骤2.3,校正新的畸变图像;
全文摘要
本发明属于测量技术领域,将提供一种基于未知坐标共线特征点的摄像机畸变标定方法和基于预计算模板的畸变校正快速实现方法。根据直线透视投影不变性,以计算理想图像坐标到拟合直线距离和最小为目标,在未知摄像机的内外参数和特征点的世界坐标条件下,通过非线性优化函数估计镜头的畸变系数。由摄像机畸变系数,预计算理想图像坐标对应的畸变坐标,并存入模板矩阵,在图像畸变校正过程中直接查找模板矩阵读取理想图像坐标对应的畸变坐标,通过线性插值得到理想图像像素点的灰度值,从而完成图像畸变的快速校正。本发明提出的畸变系数标定方法成本低,算法简单,容易实现。提出的畸变校正快速实现方法计算量小,速度快。
文档编号G01M11/00GK1996389SQ20071000017
公开日2007年7月11日 申请日期2007年1月9日 优先权日2007年1月9日
发明者周富强, 胡坤, 张广军 申请人:北京航空航天大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1