一种基于球形投影模型的纯旋转摄像机自标定方法。针对针孔摄像机内参数的标定任务,本发明提出了一种新颖的基于球形投影模型的纯旋转自标定方法。首先构造了针孔摄像机的球形投影模型,之后分析了空间静止点对应的球面投影点之间的距离在摄像机纯旋转时不变;然后根据该性质构造了内参数的约束方程组;进而以非线性最小二乘算法求解该方程组。相比现有方法,本发明利用两幅图像上对应的点特征即可得到内参数,因而无需复杂的矩阵数值运算,并且仅需两幅图像上的4个匹配点即可完成对摄像机4个内参数的标定,且均适用于在线与离线标定。仿真与实验结果表明,本发明简单实用并且标定精度高,且对图像噪声与平移噪声具有很好的鲁棒性。
1.一种基于球形投影模型的纯旋转摄像机自标定方法,其特征在于该方法包括:
第1,构造针孔摄像机的球形投影模型
定义Pi,Pj分别表示第i,j个空间点;像素坐标系的横坐标轴与纵坐标轴分别以u,v表示;以表示摄像机坐标系,其中的原点在摄像机光心位置,的z轴与摄像机光轴重合,x轴方向与u轴方向相同,y轴方向与v轴方向相同;f为摄像机焦距,f的单位为米;cpi,cpj表示点Pi,Pj对应的图像像素点在 下的位置; 表示以的原点为球心的单位虚拟球面;si,sj分别为cpi,cpj对应在 上的投影点,称其为球面投影点;
对于作纯旋转运动的摄像机, 与 分别表示摄像机在参考位姿处与经过纯旋转运动后的坐标系;si,sj与si',sj'分别表示点Pi,Pj在 与 下的球面投影点;关于si,sj与si',sj'有定理1所述性质:
定理1:球面投影点之间向量的模长在摄像机作纯旋转运动时不变,如式(1)所示:
||si-sj||2=||si'-sj'||2 (1)
定理1呈现了球面投影点在纯旋转摄像机下的性质,根据通用的摄像机的针孔成像模型,其内参数包括fx,fy,u0,v0;其中fx,fy分别为焦距对应于u,v方向的像素块个数,即fx=f/dx,fy=f/dy;其中dx,dy分别为单个像素块在u,v方向的长度,单位为米;(u0,v0)为图像主点坐标;
第2,纯旋转运动下的摄像机内参数自标定
第2.1,构造约束方程组
首先,推导并构造了含有摄像机内参数的约束方程为:
其中
其中定义了像素块在v方向与u方向的长度比 (ui,vi),(uj,vj)分别为点Pi与Pj对应的在像素坐标系下的坐标,(ui',vi'),(uj',vj')分别为点Pi与Pj经过摄像机纯旋转之后对应的在像素坐标系下的坐标;
然后利用4个空间点能够得到6个公式(9)形式的约束方程,构成约束方程组,其中设定任意两空间点与摄像机光心不共线;
第2.2,利用非线性最小二乘算法对约束方程组进行求解
采用Levenberg-Marquardt非线性最小二乘方法进行数值最优化求解;利用至少4个空间点最小化如下的目标函数Jwhole(·),得到u0,v0,fx,γ的解:
最后利用fy=fx/γ得到fy,进而完成纯旋转运动下的摄像机内参数自标定。
技术领域
[0001]本发明属于计算机视觉与摄像机标定的技术领域,特别是涉及一种基于球形投影模型的纯旋转摄像机自标定方法。
背景技术
[0002]摄像机内参数的标定是指将其获得的过程,它是计算机视觉方面的经典问题之一,同时也是基于视觉反馈的控制系统的一项重要技术。摄像机的标定方法大致可分为传统标定法与自标定法。传统的标定法以Tsai的三维标定块标定法[1]以及张正友的平面标定法[2]为代表,传统方法标定精度高,然而均为离线方法且需要精确度高的标定块等装置。自标定方法由Faugeras提出[3],是指不需标定块等装置,仅通过图像点间的对应关系来进行标定的过程[4-5]。Faugeras在文献[3]中提出了利用Kruppa约束方程对内参数进行求解,考虑到Kruppa方程难以求解且不稳定情况,诸如Pollefeys模约束[6]等分层逐步方法被提出,但这些方法仍存在计算复杂等问题。
[0003]对于做特殊运动的摄像机,自标定算法的复杂度会降低且往往能获得线性解[4]。对于其特殊运动的研究,集中在了纯旋转等方面[7-10]。Hartley在文献[7]中提出了经典的基于纯旋转的自标定法,然而该方法需要至少3幅图像间的点对应;Wang等针对基于单应矩阵(Homography)的纯旋转自标定方法,从理论上分析了微小平移所造成的标定误差[11];Zhang与Wong利用转台图像序列对应的消影点不变等性质,得到了3参数的自标定结果[12]。然而以上的纯旋转自标定方法均以绝对二乘曲线与对极几何为基础,因而不可避免地需要利用复杂的矩阵数值计算。最近,方勇纯等人从控制理论角度出发,设计了一种基于非线性观测器的纯旋转自标定方法,该方法无需矩阵数值计算,并且得到了内参数的全局指数收敛性能[13],然而该方法需要多幅图像才能使内参数收敛。因而如何设计出一种避免矩阵数值计算且需要较少图像即可得到内参数的方法,是亟待解决的问题。
[0004]近年来,全景摄像机(Omnidirectional Cameras)的球形投影模型受到了研究者的关注。首先,Geyer等人将各式的全景摄像机以及平面投影摄像机(即针孔摄像机)以统一的球形投影模型进行了表达[14],因而在很大程度上方便了对各式摄像机的分析。进而Mariottini等人利用该球形投影模型的自极点(auto-epipolar)性质以全景相机实现了移动机器人的视觉镇定控制[15];Becerra等人由球形投影模型的1维三焦点张量(1D trifocal tensor),并结合滑模控制实现了移动机器人的镇定任务[16];Fomena等人利用该模型以针孔摄像机完成了操作臂的视觉伺服(Visual Servoing)任务[17],并且得到了相比于经典IBVS方法(Image-Based Visual Servoing)更好的性能。本发明根据该全景摄像机球形投影模型受到启发,完成了对针孔摄像机的内参数自标定任务。
发明内容
[0005]本发明的目的是解决现有自标定技术存在的上述不足,提供一种基于球形投影模型的纯旋转摄像机自标定方法。
[0006]本发明提出了一种新颖的基于球形投影模型的纯旋转摄像机自标定方法。该方法最大的特点是直接利用两幅图像上对应的点特征即可得到摄像机的内参数。因而避免了现有自标定方法需要复杂的矩阵数值运算的问题,并且仅需两幅图像上的4个匹配点即可完成对4内参数摄像机的标定,而且均适用于在线标定与离线标定。具体而言,首先描述了本文定义的针孔摄像机的球形投影模型(Spherical Projection Model)。然后分析了对于纯旋转摄像机,空间静止点对应的球面投影点之间的距离不变;之后,根据该性质构造了关于内参数的约束方程组;进而利用非线性最小二乘算法对该方程组进行求解。仿真与实验结果表明,本文方法不仅简单实用,并且标定精度高,且对图像噪声与平移噪声具有较好的鲁棒性,因而具有很好的实际应用意义。
[0007]本发明提供的基于球形投影模型的纯旋转摄像机自标定方法包括:
[0008]第1,构造针孔摄像机的球形投影模型
[0009]定义Pi,Pj分别表示第i,j个空间点。像素坐标系的横坐标轴与纵坐标轴分别以u,v表示。以表示摄像机坐标系,其中的原点在摄像机光心位置,的z轴与摄像机光轴重合,x轴方向与u轴方向相同,y轴方向与v轴方向相同。f为摄像机焦距,f的单位为米;cpi,cpj表示点Pi,Pj对应的图像像素点在下的位置。表示以的原点为球心的单位虚拟球面;si,sj分别为cpi,cpj对应在上的投影点,称其为球面投影点;
[0010]对于作纯旋转运动的摄像机,与分别表示摄像机在参考位姿处与经过纯旋转运动后的坐标系;si,sj与si′,sj′分别表示点Pi,Pj在与下的球面投影点;关于si,sj与si′,sj′有定理1所述性质:
[0011]定理1:球面投影点之间向量的模长在摄像机作纯旋转运动时不变,如式(1)所示:
[0012]||si-sj||2=||si′-sj′||2 (1)
[0013]定理1呈现了球面投影点在纯旋转摄像机下的性质,根据摄像机的针孔投影模型,其内参数包括fx,fy,u0,v0;其中fx,fy分别为焦距对应于u,v方向的像素块个数,即fx=f/dx,fy=f/dy;其中dx,dy分别为单个像素块在u,v方向的长度,单位为米;(u0,v0)为图像主点坐标;因此,本发明的目的为根据空间特征点并利用定理1,对纯旋转运动下的摄像机作内参数自标定;
[0014]第2,纯旋转运动下的摄像机内参数自标定
[0015]第2.1,构造约束方程组
[0016]首先,推导并构造了含有摄像机内参数的约束方程为:
[0017] a ij + f x 2 b ij + f x 2 c ij + f x 2 = l ij + f x 2 m ij + f x 2 n ij + f x 2 - - - ( 9 )
[0018]其中
[0019] a ij = ( u i - u 0 ) ( u j - u 0 ) + ( v i - v 0 ) ( v j - v 0 ) γ 2 b ij = ( u i - u 0 ) 2 + ( v i - v 0 ) 2 γ 2 ; c ij = ( u j - u 0 ) 2 + ( v j + v 0 ) 2 γ 2 l ij = ( u i ′ - u 0 ) ( u j ′ - u 0 ) + ( v i ′ - v 0 ) ( v j ′ - v 0 ) γ 2 m ij = ( u i ′ - u 0 ) 2 + ( v i ′ - v 0 ) 2 γ 2 ; n ij = ( u j ′ - u 0 ) 2 + ( v j ′ - v 0 ) 2 γ 2
[0020]其中定义了像素块在v方向与u方向的长度比(ui,vi),(uj,vj)分别为点Pi与Pj对应的图像像素坐标,(ui′,vi′),(uj′,vj′)分别为点Pi与Pj经过摄像机纯旋转之后对应的图像像素坐标;
[0021]然后可以利用4个空间点分别得到6个公式(9)形式的约束方程,构成约束方程组,其中设定任意两空间点与摄像机光心不共线;
[0022]第2.2,利用非线性最小二乘算法对约束方程组进行求解
[0023]采用Levenberg-Marquardt(LM)非线性最小二乘方法进行数值最优化求解;利用至少4个空间点最小化如下的目标函数Jwhole(·),得到u0,v0,fx,γ的解:
[0024] J whole ( u 0 , v 0 , f x , γ ) = Σ i = 1 n - 1 Σ j = i + 1 n ( a ij + f x 2 b ij + f x 2 c ij + f x 2 - l ij + f x 2 m ij + f x 2 n ij + f x 2 ) 2 - - - ( 20 )
[0025]最后利用fy=fx/γ得到fy,进而完成纯旋转运动下的摄像机内参数自标定。
[0026]本发明方法的理论依据及推导过程
[0027]第1,定义了针孔摄像机的球形投影模型
[0028]附图1给出了本发明定义的针孔摄像机球形投影模型,其中点Pi,Pj分别表示第i,j个空间点,其中所需空间点的个数大于4即可;像素坐标系的横坐标轴与纵坐标轴分别以u,v表示。以表示摄像机坐标系,其中的原点在摄像机光心位置,的z轴与摄像机光轴重合,x轴方向与u轴方向相同,y轴方向与v轴方向相同。f为摄像机焦距(单位为米)。cpi,cpj为点Pi,Pj对应的图像像素点在下的坐标。表示以的原点为球心的单位虚拟球面。si,sj分别为cpi,cpj对应在上的投影点,本发明称其为球面投影点。
[0029]对于作纯旋转运动的摄像机(以绕y轴旋转为例),如附图2所示。其中(u0,v0)为图像主点坐标,与分别表示摄像机在参考位姿处与经过纯旋转运动后的坐标系。si,sj与si′,sj′分别表示点Pi,Pj在与下的球面投影点。关于si,sj与si′,sj′有定理1所述性质。
[0030]定理1:球面投影点之间向量的模长在摄像机作纯旋转运动时不变,如式(1)所示(定理证明见第3小节的附录A):
[0031]||si-sj||2=||si′-sj′||2 (1)
[0032]定理1呈现了球面投影点在纯旋转摄像机下的性质。根据摄像机的针孔投影模型,其内参数矩阵为:
[0033] A = f x 0 u 0 0 f y v 0 0 0 1 - - - ( 2 )
[0034]其中fx,fy分别为焦距对应于u,v方向的像素块个数:
[0035]fx=f/dx,fy=f/dy (3)
[0036]其中dx,dy分别为单个像素块在u,v方向的长度,单位为米。因此,本发明的目的为根据空间特征点并利用定理1,对纯旋转运动下的摄像机作内参数自标定。
[0037]第2,纯旋转运动下的摄像机内参数自标定
[0038]本节根据球面投影点在摄像机纯旋转运动下的性质,得到关于内参数的约束方程组;然而鉴于该方程组难以得到解析解,本发明将采用非线性最小二乘方法进行数值最优化求解。
[0039]第2.1,构造约束方程组
[0040]根据摄像机的投影模型,点Pi,Pj对应的图像像素点在下的坐标为:
[0041] cp i = ( u i - u 0 ) d x ( v i - v 0 ) d y f , cp j = ( u j - u 0 ) d x ( v j - v 0 ) d y f - - - ( 4 )
[0042]其中(ui,vi),(uj,vj)分别为Pi与Pj对应的图像像素坐标,将cpi,cpj投影到上,可得
[0043] s i = cp i | | cp i | | 2 , s j = cp j | | cp j | | 2 - - - ( 5 )
[0044]其中||cpi||2根据下式计算得到:
[0045] | | cp i | | 2 = ( u i - u 0 ) 2 d x 2 + ( v i - v 0 ) 2 d y 2 + ( f ) 2 - - - ( 6 )
[0046]同样地,点Pi,Pi对应的图像像素点在下的坐标为:
[0047] cp i ′ = ( u i ′ - u 0 ) d x ( v i ′ - v 0 ) d y f , cp j ′ = ( u j ′ - u 0 ) d x ( v j ′ - v 0 ) d y f - - - ( 7 )
[0048]将cpi′,cpj′投影到上,可得:
[0049] s i ′ = cp i ′ | | cp i ′ | | , s j ′ = cp j ′ | | cp j ′ | | - - - ( 8 )
[0050]根据定理1中描述的||si-sj||2=||si′-sj′||2性质,将式(4)-(8)代入并整理,可得:
[0051] a ij + f x 2 b ij + f x 2 c ij + f x 2 = l ij + f x 2 m ij + f x 2 n ij + f x 2 - - - ( 9 )
[0052]其中
[0053] a ij = ( u i - u 0 ) ( u j - u 0 ) + ( v i - v 0 ) ( v j - v 0 ) γ 2 b ij = ( u i - u 0 ) 2 + ( v i - v 0 ) 2 γ 2 c ij = ( u j - u 0 ) 2 + ( v j - v 0 ) 2 γ 2 - - - ( 10 )
[0054]且:
[0055] l ij = ( u i ′ - u 0 ) ( u j ′ - u 0 ) + ( v i ′ - v 0 ) ( v j ′ - v 0 ) γ 2 m ij = ( u i ′ - u 0 ) 2 + ( v i ′ - v 0 ) 2 γ 2 n ij = ( u j ′ - u 0 ) 2 + ( v j ′ - v 0 ) 2 γ 2 - - - ( 10 )
[0056]其中定义了像素块在v方向与u方向的长度比:
[0057] γ = Δ d y d x = f x f y - - - ( 12 )
[0058]由以上分析可知,需要至少4个式(9)形式的等式以构成对内参数的约束方程组才能得到u0,v0,fx,fy的唯一解。由于该方程组为高次多元非线性方程组,因而难以得到解析解,因此本文采用Levenberg-Marquardt(LM)[18]非线性最小二乘方法进行数值优化求解。
[0059]注1:利用4个空间点可以得到6个式(9)形式方程,构成约束方程组,当其存在4个线性无关方程时,即可求解出4个内参数。但是当存在两个空间点与摄像机光心共线时,至多存在3个线性无关方程,即出现了退化情况。因此为避免方程组的退化,本文假设任意两空间点与摄像机光心不共线。易知该假设是合理的,并且其它基于纯旋转的自标定方法亦需要该假设。
[0060]第2.2,利用非线性最小二乘算法对约束方程组进行求解
[0061]在fx=fy情况下,可知γ=1,以此求出u0,v0,fx作为LM优化算法的初值。首先,对于u0,v0的初值u0init,v0init采用图像像素的中心坐标:
[0062] u 0 init = u max 2 , v 0 init = v max 2 - - - ( 13 )
[0063]易知仅利用1对对应点并根据式(9)即可得到fx的初值fxinit,,其计算方法为:利用空间点P1,P2,并将γ=1代入(9)式,经整理可得:
[0064]A6fx6+A4fx4+A2fx2+A0=0 (14)
[0065]其中
[0066]A6=2a12-2l12+(m12+n12)-(b12+c12) (15)
[0067]A4=m12n12-b12c12+2a12(m12+n12)
[0068] (16)
[0069] -2l12(b12+c12)+a122-l122
[0070]A2=a122(m12+n12)-l122(b12+c12)
[0071] (17)
[0072] +2a12m12n12-2l12b12c12
[0073]A0=a122m12n12-l122b12c12 (18)
[0074]高次方程(14)有绝对值相等的1个正实根与1个负实根,4个实部为0的复数根,因此取该正实根作为解即可。
[0075]接下来分两步进行优化:首先在γ≡1的情况下,利用LM方法与至少3个点对u0,v0,fx进行优化求解,即该LM方法在假设fx=fy的前提下进行。方法是最小化如下的目标函数Jlocal(·):
[0076] J local ( u 0 , v 0 , f x , γ ≡ 1 ) = Σ i = 1 n - 1 Σ j = i + 1 n ( a ij + f x 2 b ij + f x 2 c ij + f x 2 - l ij + f x 2 m ij + f x 2 n ij + f x 2 ) 2 - - - ( 19 )
[0077]因而得到用于第二步骤LM优化的初值u0init′,v0init′,fxinit′。第二步骤为利用LM算法与至少4个点最小化如下的目标函数Jwhole(·),因此得到了u0,v0,fx,γ的解。
[0078] J whole ( u 0 , v 0 , f x , γ ) = Σ i = 1 n - 1 Σ j = i + 1 n ( a ij + f x 2 b ij + f x 2 c ij + f x 2 - l ij + f x 2 m ij + f x 2 n ij + f x 2 ) 2 - - - ( 20 )
[0079]最后利用(12)式中fy=fx/γ得到fy,进而完成纯旋转运动下的摄像机内参数自标定。
[0080]注2:文献[4]指出,对于纯旋转摄像机,其自标定方法在如下情况下存在多义性:(1)若摄像机绕y轴旋转,则仅能标定出fx,无法标定出fy;(2)若绕x轴旋转,仅能标定出fy,无法标定出fx。(3)若绕z轴旋转,则仅能标定出γ。针对这些特殊旋转情况,第3小节的附录B给出了相应的球形投影下的自标定方法。
[0081]注3:本文分析的是4内参数摄像机模型,易知3参数的摄像机(即fx=fy)是本文模型的特例,因而最小化目标函数Jlocal(·)即可得到标定结果,且除纯绕z轴旋转外,无需考虑注2中提到的限制条件。
[0082]第3,附录
[0083]第3.1,附录A,定理1证明
[0084]本发明在此给出定理1的证明。
[0085]证明:向量si-sj的模长dij由下式计算:
[0086] d ij = Δ | | s i - s j | | 2 = 2 - 2 s i T s j - - - ( 21 )
[0087]对其关于时间求导得:
[0088] d · ij = - 1 d ij ( s j T s · i + s i T s · j ) - - - ( 22 )
[0089]对于空间点Pi,其关于的运动学关系为[19]:
[0090] P · i = - v - w × P i - - - ( 23 )
[0091]其中v,w分别表示摄像机在其自身坐标系下的角速度与线速度。由于Pi=si||Pi||,且||Pi||的变化率为v在Pi方向上的投影,即:
[0092] d | | P i | | dt = - v T s i - - - ( 24 )
[0093]因此由上两式并加以整理可得:
[0094] s · i = - I 3 - s i s i T | | P i | | v + [ s i ] × w - - - ( 25 )
[0095]同样地可以得到将它们带入并化简可得:
[0096] d · ij = 1 d ij ( s j T - s j T s i s i T | | P i | | + s i T - s i T s j s j T | | P j | | ) v - - - ( 26 )
[0097]因此可知仅与v相关,与w无关。即当摄像机作纯旋转运动时,dij不变。因此得到
[0098]||si-sj||2=||si′-sj′||2 (27)
[0099] ■
[0100]第3.2,附录B,特殊纯旋转下的自标定
[0101]这种特殊旋转情况是指摄像机绕单一坐标轴旋转。由注2可知,在该情况下,无法将全部4个内参数标定出,因而需要摄像机绕其它轴做第二次旋转。但这种特殊旋转的优势在于它会给出更强的约束,从而使算法更加简单。
[0102]B.1:绕y轴旋转
[0103]对于绕y轴旋转情况,至少需要再绕x轴旋转才能标定出4个内参数。下面给出该种情况的自标定方法(绕x轴旋转的方法类似):
[0104]当摄像机绕y轴旋转时,球面投影点的y坐标不变,即:
[0105]siy=siy′ (28)
[0106]因此针对点Pi,根据式(5)(8),整理并化简可得
[0107](vi-v0)2(ui′-u0)2+(vi′-v0)2(ui-u0)2=[(vi′-v0)2-(vi-v0)2]fx2 (29)
[0108]因此根据3个空间点,利用LM算法求解如下目标函数Jy axis(·)的最小值可解出u0,v0,fx。
[0109] J yaxis ( u 0 , v 0 , f x ) = Σ i = 1 n ( ( v i - v 0 ) 2 ( u i ′ - u 0 ) 2 + ( v i ′ - v 0 ) 2 ( u i - u 0 ) 2 - - - - ( 30 )
[0110] - ( ( v i ′ - v 0 ) 2 - ( v i - v 0 ) 2 f x 2 ) 2
[0111]再将摄像机在参考坐标系下绕x轴旋转,则球面投影点的x坐标不变,即
[0112]six=six′ (31)
[0113]因此根据(5)(8)有:
[0114](ui-u0)2(vi′-v0)2+(ui′-u0)2(vi-v0)2=((ui′-u0)2-(ui-u0)2)fy2 (32)
[0115]因此可以将fy以解析的方式求出。
[0116]B.2:绕z轴旋转
[0117]对于绕z轴旋转情况,球面投影点的z坐标不变:
[0118]siz=siz′ (33)
[0119]因此针对点Pi,根据式(5)(8),整理后可得:
[0120](ui-u0)2-(ui′-u0)2=((vi′-v0)2-(vi-v0)2)γ2 (34)
[0121]因此根据3个空间点,利用LM算法求解如下目标函数Jz axis(·)的最小值可解出u0,v0,γ。
[0122] J zaxis ( u 0 , v 0 , γ ) = Σ i = 1 n ( ( u i - u 0 ) 2 - ( u i ′ - u 0 ) 2 - ( ( v i ′ - v 0 ) 2 - ( v i - v 0 ) 2 ) γ 2 ) 2 - - - ( 35 )
[0123]之后在参考坐标系下绕x轴(或y轴),以(29)式(或(32)式)求出fx(或fy)以完成对4个内参数的求取。
[0124]本发明的优点和有益效果
[0125]本发明提出了一种基于球形投影模型的纯旋转摄像机自标定方法。本发明直接利用两幅图像上对应的点特征即可得到摄像机的内参数。因而无需复杂的矩阵数值运算,并且仅需两幅图像上的4个匹配点即可完成对摄像机4个内参数的标定,且均适用于在线标定与离线标定。仿真与实验结果表明,本发明简单实用并且标定精度高,且对图像噪声与平移噪声具有很好的鲁棒性。
附图说明:
[0126]图1为针孔摄像机的球形投影模型;
[0127]图2为摄像机纯旋转运动对应的球面投影点;其中(a)图表示摄像机在纯旋转运动之前的自标定场景,(b)图表示在左图基础上,沿y轴进行纯旋转所得自标定场景;
[0128]图3为仿真场景图;其中(a)图表示经过纯旋转运动的自标定场景;(b)图表示空间特征点的像素坐标(圆形点表示摄像机在原位置的图像像素点,菱形点表示纯旋转后的图像像素点),(c)图表示摄像机在原位置的球面投影点,(d)图表示纯旋转后的球面投影点。
[0129]图4为带有图像噪声的标定误差仿真结果;其中(a)图表示不同图像噪声水平下的u0误差,(b)图表示不同图像噪声水平下的v0误差,(c)图表示不同图像噪声水平下的fx误差,(d)图表示不同噪声水平下的fy误差;
[0130]图5为带有平移噪声的标定误差仿真结果;其中(a)图表示不同平移噪声水平下的u0误差,(b)图表示不同平移噪声水平下的v0误差,(c)图表示不同平移噪声水平下的fx误差,(d)图表示不同噪声水平下的fy误差;
[0131]图6表示本发明自标定方法的实验场景;
[0132]图7表示本发明自标定方法的实验结果;其中(a)图表示实验中的u0结果,(b)图表示实验中的v0结果,(c)图表示实验中的fx结果,(d)图表示实验中的fy结果;
[0133]图8表示第1,6,11次实验中的图像,其中(a)为实验1中第1幅图像,(b)为实验1中第2幅图像,(c)为实验6中第1幅图像,(d)为实验6中第2幅图像,(e)为实验11中第1幅图像,(f)为实验111中第2幅图像.
具体实施方式:
[0134]实施例1:
[0135]第1,构造针孔摄像机的球形投影模型
[0136]定义点Pi,Pj分别表示第i,j个空间点。像素坐标系的横坐标轴与纵坐标轴分别以u,v表示。以表示摄像机坐标系,其中的原点在摄像机光心位置,的z轴与摄像机光轴重合,x轴方向与u轴方向相同,y轴方向与v轴方向相同。f为摄像机焦距,f的单位为米;cpi,cpj表示点Pi,Pj对应的图像像素点在下的位置。表示以的原点为球心的单位虚拟球面;si,sj分别为cpi,cpj对应在上的投影点,称其为球面投影点;
[0137]对于作纯旋转运动的摄像机,与分别表示摄像机在参考位姿处与经过纯旋转运动后的坐标系;si,sj与si′,sj′分别表示点Pi,Pj在与下的球面投影点;关于si,sj与si′,sj′有定理1所述性质:
[0138]定理1:球面投影点之间向量的模长在摄像机作纯旋转运动时不变,如式(1)所示:
[0139]||si-sj||2=||si′-sj′||2 (1)
[0140]定理1呈现了球面投影点在纯旋转摄像机下的性质,根据摄像机的针孔投影模型,其内参数包括fx,fy,u0,v0;其中fx,fy分别为焦距对应于u,v方向的像素块个数,即fx=f/dx,fy=f/dy;其中dx,dy分别为单个像素块在u,v方向的长度,单位为米;(u0,v0)为图像主点坐标;因此,本发明的目的为根据空间特征点并利用定理1,对纯旋转运动下的摄像机作内参数自标定;
[0141]第2,纯旋转运动下的摄像机内参数自标定
[0142]第2.1,构造约束方程组
[0143]首先,推导并构造了含有摄像机内参数的约束方程为:
[0144] a ij + f x 2 b ij + f x 2 c ij + f x 2 = l ij + f x 2 m ij + f x 2 n ij + f x 2 - - - ( 9 )
[0145]其中
[0146] a ij = ( u i - u 0 ) ( u j - u 0 ) + ( v i - v 0 ) ( v j - v 0 ) γ 2 b ij = ( u i - u 0 ) 2 + ( v i - v 0 ) 2 γ 2 ; c ij = ( u j - u 0 ) 2 + ( v j + v 0 ) 2 γ 2 l ij = ( u i ′ - u 0 ) ( u j ′ - u 0 ) + ( v i ′ - v 0 ) ( v j ′ - v 0 ) γ 2 m ij = ( u i ′ - u 0 ) 2 + ( v i ′ - v 0 ) 2 γ 2 ; n ij = ( u j ′ - u 0 ) 2 + ( v j ′ - v 0 ) 2 γ 2
[0147]其中定义了像素块在v方向与u方向的长度比(ui,vi),(uj,vj)分别为点Pi与Pj对应的图像像素坐标,(ui′,vi′),(uj′,vj′)分别为点Pi与Pj经过摄像机纯旋转之后对应的图像像素坐标;
[0148]然后可以利用4个空间点分别得到6个公式(9)形式的约束方程,构成约束方程组,其中设定任意两空间点与摄像机光心不共线;
[0149]第2.2,利用非线性最小二乘算法对约束方程组进行求解
[0150]采用Levenberg-Marquardt(LM)非线性最小二乘方法进行数值最优化求解;利用至少4个空间点最小化如下的目标函数Jwhole(·),得到u0,v0,fx,γ的解:
[0151] J whole ( u 0 , v 0 , f x , γ ) = Σ i = 1 n - 1 Σ j = i + 1 n ( a ij + f x 2 b ij + f x 2 c ij + f x 2 - l ij + f x 2 m ij + f x 2 n ij + f x 2 ) 2 - - - ( 20 )
[0152]最后利用fy=fx/γ得到fy,进而完成纯旋转运动下的摄像机内参数自标定。
[0153]第3,仿真与实验效果描述
[0154]第3.1,仿真结果
[0155]本节在存在图像噪声与平移噪声情况下,对本文算法进行仿真验证。对于图像分辨率为740×582像素的待标定摄像机,设定其真实内参数为:
[0156] A = 1003.1 0 369.8 0 995.4 306.3 0 0 1 - - - ( 36 )
[0157]4个空间点在下的坐标分别为:
[0158](0.4,0.3,1.5),(0.1,0.2,1.5),(0.4,-0.3,1.3),(0.2,-0.15,1.4) (37)
[0159]图像像素点获取过程如下:首先使摄像机在姿态下拍摄第一幅图像,然后使摄像机先绕对应的y轴旋转π/49rad,再绕旋转后的x轴转π/19rad,此时的摄像机坐标系即为继而在姿态下拍摄第二幅图像,如附图3的(a)图所示。
[0160]空间点对应的图像像素点如附图3的(b)图所示。其中圆形点与菱形点分别为第一幅与第二幅图像的图像点。附图3的(c)图与(d)图分别对应了摄像机在原始姿态与旋转后姿态下的空间点对应的球面投影点(该两图中的坐标轴为比例值,因而无单位)。易知该4幅图均在内参数假定已知的情况下作出。
[0161]在仿真中,4个特征点的图像坐标分别加入了均值为0,幅值为0~1个像素的均匀分布白噪声。为了更准确地反映噪声对实际自标定的影响,对于每个噪声水平,都进行了1000次独立的实验,然后用误差的平均值来对算法的性能进行评估。所得结果如附图4所示。可知在1个像素的噪声之内,4个内参数的相对误差最高为6%,因此得到的结果精度较高。由于在实际场景中,像素坐标的噪声水平一般不会超过0.5个像素,且所用特征点一般大于4个,因而可以得到精度更高的标定结果。
[0162]在实际应用中,当云台等机构控制摄像机作纯旋转运动时,经常会伴有非常小的平移量(本发明称其为平移噪声)。附图5给出了在均值为0.0,幅值为0.00-0.20cm的均匀分布平移噪声下的标定误差。由于仿真验证中的空间点的深度在1.4m左右。易知若采用深度更大的空间点,则对平移噪声鲁棒性更强,而这样的空间点在实际场景中是易于找到的。
[0163]第3.2,实验结果
[0164]在实验中,待标定摄像机采用大恒公司的SV400FC型摄像头,通过IEEE1394接口线与上位机相连,其图像分辨率与仿真中的相同。之后在Visual Studio 2005与OpenCV2.0.0环境下进行了编程实现。
[0165]附图6为本文自标定方法的实验场景,空间特征点采用图上所示的4个平面特征点(非平面亦可)。在实验中利用手动使摄像机做纯旋转运动,实验中的三脚架提供了摄像机位置的参考,减少因手动旋转而给摄像机带来的平移噪声.
[0166]为了测试图像噪声与平移噪声对标定结果的影响,共进行了3组对比实验,每组实验均进行了5次,实验结果如附图7所示。其中第1~5次实验表示大深度且大旋转时的标定结果(图中星形),第6~10次实验对应小深度且小旋转情况(图中三角形),第11~15次实验表示小深度且大旋转情况(图中方块)。附图8对于这三组对比实验,分别给出了第1、6、11次实验中对应的图像。
[0167]为检验本文方法的精度,以张正友平面标定法的结果为参考值并作比较,该平面标定法的结果如附图7中粗虚线所示。由附图7可以看出,在大深度且大旋转情况下,算法对噪声鲁棒性更强,易知这是由于在该种情况下,图像与平移噪声分别对于特征点像素值与深度的相对值减小了,因而呈现了更好的算法性能。表1给出了该情况下的标定误差,其中对应于u0,v0,fx,fy的平均误差分别为0.83%,1.49%,2.47%,0.28%,因而呈现出很好的标定精度。
[0168]值得指出的是,本文使摄像机在手持情况下进行自标定,而这会给摄像机带来相当大的平移噪声,然而本文算法仍能获得很好的实验结果,可见本文方法简单实用且具有标定精度高的性能。
[0169]表1:第一组实验的标定误差
[0170]
[0171]参考文献
[0172]1.Tsai R.Y.,A versatile camera calibration technique for high-accuracy 3D machine vision metrology using off-the-shelf TV cameras and lenses,IEEE J.Robot.Autom.,1987,3(4):323-344.
[0173]2.Zhang Z.,A flexible new technique for camera calibration,IEEE Trans.Pat.Ana.Mach.Intell.,2000,22(11):1330-1334.
[0174]3.Faugeras O.,Luong Q.T.,Maybank S.,Camera self-calibration:theory and experiments,in Proc.2nd Euro.Conf.Comput.Vis.,1992:321-334.
[0175]4.Hartley R.,Zisserman A.,Multiple view geometry in computer vision(2nd Edition),UK:Camb.Univ.Press,2004.
[0176]5.孟晓桥,胡占义,摄像机自标定方法的研究进展,自动化学报,2003,29(1):110-124.
[0177]6.Pollefeys M.,Gool L.V.,Stratified self-calibration with the modulus constraint,IEEE Trans.Pat.Ana.Mach.Intell.,199921(8):707-724.
[0178]7.Hartley R.I.,Self-calibration of stationary cameras,Int.J.Computer Vis.,1997,22(1):5-23.
[0179]8.Ma S.,A self-calibration technique for active vision systems,IEEE Trans.Robot.Autom.,1996,12(1):114-120.
[0180]9.吴福朝,李华,胡占义,基于主动视觉系统的摄像机自定标方法研究,自动化学报,2001,27(6):752-762.
[0181]10.杨长江,孙凤梅,胡占义,“基于二次曲线的纯旋转摄像机自标定”,自动化学报,2001,27(3):310-317.
[0182]11.Wang L.,Kang S.B.,Shum H.–Y.,Xu G.,Error analysis of pure rotation-based self-calibration,IEEE Trans.Pat.Ana.Mach.Intell.,2004,26(2):275-280.
[0183]12.Zhang H.,Wong K.–Y.K.,Self-calibration of turntable sequences from silhouettes,IEEE Trans.Pat.Ana.Mach.Intell.,2009,31(1):5-14.
[0184]13.方勇纯,刘玺,李宝全,张雪波,一种全局指数收敛的摄像机内参数观测器,控制理论与应用,2011,28(9):1082-1090.
[0185]14.Geyer C.,Daniilidis K.,Catadioptric Projective Geometry,Int.J.Comput.Vis.,2001,45(3):223–243.
[0186]15.Mariottini G.L.and Prattichizzo D.,Image-based visual servoing with central catadioptric camera,Int.J.Robot.Res.,2008,27(1):41–56.
[0187]16.Becerra H.M.,Lopez-Nicolas G.,Sagues C.,Omnidirectional visual control of mobile robots based on the 1D trifocal tensor,Robot.Auton.Sys.,2010,58(6):796-808.
[0188]17.Fomena R.T.,Tahri O.,Chaumette F.,Distance-based and orientation-based visual servoing from three points,IEEE Trans.Robot.,2011,27(2):256-267.
[0189]18.NocedalJ.,Wright S.J.,Numerical Optimization,New York:Springer,1999.
[0190]19.Luca A.D.,Oriolo G.,Giordano P.R..Feature depth observation for image-based visual servoing:theory and experiments,Int.J.Robot.Res.,2008,27(10):1093-1116。