利用Veronese映射棋盘格的投影矩阵标定中心折反射摄像机的制作方法

文档序号:17455578发布日期:2019-04-20 03:14阅读:254来源:国知局
利用Veronese映射棋盘格的投影矩阵标定中心折反射摄像机的制作方法

本发明属于计算机视觉领域,涉及一种利用Veronese映射空间棋盘格成像的投影矩阵标定中心折反射摄像机的方法。



背景技术:

人类最重要的感知来自于视觉,计算机视觉是指利用摄像机与计算机代替人眼来感知世界,使计算机具有能通过二维图像认知三维现实环境的能力,即可将其看作是一门研究如何使人工智能系统从图像或多维数据中感知真实世界的科学。计算机视觉广泛应用于机器人导航、视觉监控、三维测量与三维重构等领域。20世纪80年代,Marr教授结合了图像处理、临床精神病学、心理物理学及神经生理学的研究成果提出的计算机视觉理论,使计算机视觉成为一门独立的学科。计算机视觉包括图像处理、图像理解和模式识别[2]。其中图像处理是将输入图像转换成所需要的图像输出;模式识别是通过提取图像特性或结构信息将图像进行分类;图像理解既描述图像本身,也解释了包括形状、姿态、运动等在内的三维环境中物体的几何信息。图像处理与模式识别可以更深入理解图像的二维信息与三维信息,实现图像理解是计算机视觉的终极目标[3]。从图像中理解三维物体的位姿或位置,这是摄像机标定的最终目的,摄像机的标定就是为了使计算机能获得认知三维现实环境的能力。通过实验与计算就可以得到摄像机内、外参数,所以它是获取三维现实环境的前提与基础,从而摄像机标定在计算机视觉中有重大意义。

中心折反射摄像机由一个反射镜面和一个普通摄像机组成,它的成像视野大,是全景视觉领域研究的热点之一。文献“Catadioptric Projective Geometry”,(Geyer C., Daniilidis K., International Journal of Computer Vision, 2001, 45(3):223-243.)针对中心折反射摄像机提出了一个一般化的投影模型,该投影模型将中心折反射摄像机的成像过程等价成经过一个单位球的两步投影。文献“Geometric properties of central catadioptric line images and their application in calibration”,(Barreto J. P., Araujo H., IEEE Transactions on Pattern Analysis and Machine Intelligence, vol.27, no.8, pp. 1327-1333, 2005.)研究了中心折反射摄像机下直线的像的几何性质,并将这些性质应用于中心折反射摄像机的标定。但这种方法对于抛物折反射摄像机只能求解它的部分内参数。文献“Epipolar Geometry for Central Catadioptric Cameras”,(Svoboda T., Pajdla T., Epipolar Geometry for Central Catadioptric Cameras. International Journal of Computer Vision, 2002, 49(1):23-37.)对所有中心折反射摄像机提出极几何约束。文献“Structure and motion from uncalibrated catadioptric views”,(Geyer, C., Daniilidis, K. In: CVPR. (2001) 279–286.)与文献“Properties of the Catadioptric Fundamental Matrix”,(Geyer C, Daniilidis K., Computer Vision — ECCV 2002. Springer Berlin Heidelberg, 2002:140-154.)得出在抛物折反射摄像机下存在一个基本矩阵,可以直接推导出摄像机内参数。文献“Epipolar geometry of central projection systems using veronese maps”,(Barreto J. P., Daniilidis K., Proceedings of the Computer Society Conference. 2006, 1: 1258-1265。)提出了一种运用Veronese映射扩展射影空间得到中心投影模型下的极几何关系,该映射得到的结果可以将非线性投影过程转化成线性过程,但其中并没有提出具体的摄像机标定方法。文献“General imaging geometry for central catadioptric cameras”,( Sturm P., Barreto J. P., Computer Vision – ECCV 2008. Springer Berlin Heidelberg, 2008:609-622.)提出了一种通过映射得到折反射摄像机下像的几何性质。

利用映射可以扩展坐标维数,其重要优点在于通过映射后,可以在中心折反射摄像机下使用DLT(直接线性变换)进行标定。文献“DLT-Like calibration of central catadioptric cameras”,( Puig L., Bastanlar Y., Sturm P., et al. , International Journal of Computer Vision, 2011, 93(1):101-114.)利用Veronese映射和DLT相似算法对中心折反射摄像机进行标定,这种标定方法和张正友的透视摄像机的标定方法类似,通过Veronese映射建立了线性方程求解内参数,并可以非线性估计其外参数。 文献“General imaging geometry for central catadioptric cameras”,( Sturm P., Barreto J. P., Computer Vision – ECCV 2008. Springer Berlin Heidelberg, 2008:609-622.)和文献“DLT-Like calibration of central catadioptric cameras”,( Puig L., Bastanlar Y., Sturm P., et al., International Journal of Computer Vision, 2011, 93(1):101-114.) 解决了三参数模型下的中心折反射摄像机标定,由于求解的参数少、数学模型相对简单。模型中的摄像机拍摄的图片纵横比为1,求解过程中会省略空间中的部分信息,造成数据丢失,并且只能求解旋转矩阵的扩展形式。本文在此基础上,通过Veronese映射建立五参数的中心折反射统一投影模型,利用折反射投影矩阵对摄像机内参数进行线性求解,并通过非线性方程估计其外参数。



技术实现要素:

本发明提供了一种制作简单,适用广泛,稳定性好的利用靶标求解中心折反射摄像机内参数的方法,该靶标由空间中互相垂直的三块棋盘格构成。在求解抛物折反射摄像机内参数的过程中,需要使用扩展空间点和中心折反射摄像机拍摄靶标的幅图像点的反对称矩阵,利用相似算法可得到投影矩阵,由投影矩阵即可求解出中心折反射摄像机的个内参数。

本发明采用如下技术方案:

用折反射摄像机拍摄幅空间中互相垂直的三块棋盘格构成的图像。本发明是由空间中互相垂直的三块棋盘构成的用于求解中心折反射摄像机内参数的靶标,其特征在于空间中互相垂直的三个棋盘格作为靶标,所述方法的具体步骤包括:首先,建立空间坐标系,得到棋盘格上坐标点和用中心折反射摄像机拍摄1副标靶图像,提取靶标图像特征点的坐标;其次,利用映射扩展坐标之后,使用相似方法线性估计投影矩阵;最后,利用投影矩阵求解摄像机内参数。

1.获得棋盘格空间坐标点和从图像上提取对应像点

建立空间坐标系,得到棋盘格上坐标点;用中心折反射摄像机拍摄副标靶图像,通过MATLAB函数进行角点检测,提取空间棋盘格中所对应的像点。

2.映射扩展坐标

映射是次数为的一个映射,即通过把任意空间中维点映射为射影空间中维点,其中是映射的次数,是任意空间中点的维数,是映射后点的维数。透视情况下,可以直接使用方法,但是在中心折反射下,需通过映射扩展坐标维数才可使用方法,此时称为相似算法。相似算法在中心折反射基于映射下的运用分为两步:第一步,扩展点坐标,通过映射将射影平面上的两个齐次坐标表示的点,映射到维射影空间中,矩阵表示为:,算子将两个向量扩展为一个向量,当时,。实际上,向量是通过矩阵整理得到的,由于是对称矩阵,它有一部分元素是重复的,通过对排列得到的列向量左乘一个适当的置换矩阵,再左乘一个对角矩阵,可得,

其中,,表示按矩阵的列向量堆排形成的列向量。第二步,对点的扩展来诱导扩展矩阵,由于一个矩阵可视为一个线性变换,设是一个的矩阵,同时它也是一个线性变换。它将点分别变换为。通过算子将射影平面嵌入到维射影空间中,将一个阶矩阵映射为阶矩阵需要满足下列条件: 进行代数运算可获得算子,记的列向量为,得到扩展后的矩阵。,其中,。由上述扩展矩阵的过程可以得出一些扩展矩阵的性质:,,对任意的矩阵,结论都成立。

3.相似算法线性估计折反射投影矩阵

在中心折反射摄像机下提出相似方法,在相似方法中需要用到Kronecker积和反对称矩阵知识。Kronecker积是表示矩阵特殊乘积的数学符号。一个的矩阵和一个的矩阵的Kronecker积记为,它是一个阶的矩阵。Kronecker积也称为直积或张量积。对Kronecker积的运用采用右Kronecker积,定义为:的矩阵和的矩阵的右Kronecker积定义为:。像点坐标的反对称阵定义为:。在透视情况下,(直接线性变换)方法是将一个空间点与它的图像点之间通过一个单应矩阵以之对应建立线性关系:,其中表示空间点的坐标,表示空间点和像点之间的单应矩阵。用Kronecker积进行变换之后得: ,其中,为矩阵中的个元素组成的一个列向量。为了在中心折反射摄像机下得到类似的结果,提出相似算法:要求对空间点和图像点的反对称矩阵进行扩展。

空间点的两个对拓像点构成的对偶二次曲线(由于退化,实际上该二次曲线就是一条直线)至少通过上述两点中的一点,那么这条对偶的二次曲线表示为:,其中表示空间点在单位球上的两个对拓点,表示相差一个比例因子是相等的。若点在这个二次曲线上,二次曲线的系数矩阵为一个的对称矩阵,有:,为二次曲线上的点。由于的对称矩阵有个元素,Veronese映射对该对称矩阵元素进行堆排得到一个列向量,该列向量可以由摄像机内外参数矩阵得到,记为对偶二次曲线的唯一的列向量表示法:,是关于中心折反射摄像机的旋转矩阵通过Veronese映射扩展得到的矩阵(与旋转矩阵的扩展形式之间相差一个非零比例因子,可令),表示6阶单位矩阵,为空间点扩展的点,和分别只与镜面参数和平移向量相关的矩阵,这里,。从而可以得到一个类似透视投影公式,其中表示与摄像机内外参数相关的折反射投影矩阵,表示为:类比透视投影下空间点与像点之间的约束关系可得在中心折反射摄像机下的约束关系:,其中为的扩展矩阵,为空间点扩展的点。再通过Kronecker积进行变换之后得,其中是由的列向量堆排构成的601的列向量,该向量有个自由度,也就是说中最后一个元素为1。通过对三维点和它的像点构成的线性方程组的系数矩阵尺度为。这个齐次线性方程组的解可以使用SVD分解获得。因为是一个3阶反对称矩阵,它所对应的扩展矩阵的秩为。因此,一对维点与其像点的对应只能提供关于折反射矩阵中元素的个独立的线性约束方程组。那么,至少需要对对应点才能计算出,从而得到折反射投影矩阵。

4.投影矩阵求解摄像机内参数

在得到的提取其最左边的矩阵,记为,由可得到,表示相差一个常数比例,表示相差一个比例因子。再由,,扩展矩阵的性质和正交矩阵的性质得到只与内参数与镜面参数有关的矩阵:,表示式子左边、右边存在一个比例因子,即两边矩阵的每个元素都相差一个比例因子,并且在求解内参数过程中不需要考虑比例因子,即可以将比例因子设为1。通过式子中的元素计算即可得到内参数以及镜面参数。

本发明优点:

(1)该靶标制作简单,只需互相垂直的三块棋盘格。

(2)对该靶标的物理尺度没有要求,取点简单,点源丰富。

(3)该靶标的空间点与像点之间有足够多的一一对应确定投影矩阵求解摄像机内参数。

附图说明

图1是用于求解中心折反射摄像机内参数的靶标示意图。

图2是靶标在中心折反射系统下成像模型。

具体实施方式

本发明提供了一种用于求解中心折反射摄像机内参数的靶标,它是由空间中互相垂直的三块棋盘格构成,如图1。用此新型靶标完成中心折反射摄像机内参数的求解需要经过以下步骤:建立空间坐标系,得到棋盘格上坐标点和用中心折反射摄像机拍摄1副标靶图像,提取对应的像点,利用映射扩展坐标,使用相似方法线性估计投影矩阵。利用投影矩阵求解摄像机内参数,具体步骤如下:

1.获得棋盘格空间坐标点和从图像上提取对应像点

建立空间坐标系,得到棋盘格上坐标点M;用中心折反射摄像机拍摄1副标靶图像,如图1,通过MatLab函数Edge进行角点检测,提取空间棋盘格中所对应图像的像点。

2.映射扩展坐标

映射是次数为的一个映射,即通过

。 (1)

把任意空间中维点映射为射影空间中维点,其中是映射的次数,是任意空间中点的维数,是映射后点的维数。透视情况下,可以直接使用方法,但是在中心折反射下,需通过映射扩展坐标维数才可使用方法,此时称为相似算法,相似算法在中心折反射基于映射下的运用分为两步:第一步,扩展点坐标,通过映射将射影平面上的两个点的齐次坐标矩阵:,映射到维射影空间中的矩阵:

,(2)

算子将两个向量扩展为一个向量,当时:

。 (3)

实际上,向量是通过矩阵整理得到的,由于是对称矩阵,有一部分元素是重复的,通过对排列得到的列向量左乘一个适当的置换矩阵,再左乘一个对角矩阵:

, (4)

其中,,表示按矩阵的列向量堆排形成的新的列向量。第二步,对点的扩展来诱导扩展矩阵,由于一个矩阵可视为一个线性变换,设是一个的矩阵,同时它也是一个线性变换。它将点分别变换为。通过算子将射影平面嵌入到维射影空间中,将一个阶矩阵映射为阶矩阵需要满足下列条件:

。 (5)

进行代数运算可获得算子,记的列向量为得到扩展后的矩阵。

, (6)

其中,,为(4)式中的逆。由上述扩展矩阵的过程可以得出一些扩展矩阵的性质:

, (7)

对任意的矩阵,结论都成立。

3.相似算法线性估计折反射投影矩阵

在中心折反射摄像机下提出相似方法,在相似方法中需要用到Kronecker积和反对称矩阵知识。Kronecker积是表示矩阵特殊乘积的数学符号,一个的矩阵和一个的矩阵的Kronecker积记为。它是一个阶的矩阵,Kronecker积也称为直积或张量积。本文对Kronecker积的运用采用右Kronecker积,它定义为:的矩阵和的矩阵的右Kronecker积定义为:

。 (8)

像点齐次坐标矩阵坐标的反对称阵定义为:

, (9)

在透视情况下,(直接线性变换)方法是将一个空间点与它的图像点之间通过一个单应矩阵以之对应建立线性关系:

, (10)

其中表示空间点的坐标,表示空间点和像点之间的单应矩阵。用Kronecker积进行变换之后得:

, (11)

为矩阵中的9个元素组成的一个列向量。为了在中心折反射摄像机下得到类似的结果,提出相似算法,要求对空间点和图像点的反对称矩阵进行扩展。

如图2,中心折反射成像模型,为单位球中心,为虚拟成像中心,像面垂直于光轴相交于,空间点的两个对拓像点构成的对偶二次曲线(由于退化,实际上该二次曲线就是一条直线)至少通过上述两点中的一点,那么这条对偶的二次曲线表示为:

, (12)

表示空间点在单位球直径上的两个端点,也称为对拓点的投影,为摄像机焦距(在成像平面轴上的尺度因子为,),距离为镜面参数。若点在这个二次曲线上,二次曲线的系数矩阵为一个的对称矩阵:

, (13)

为二次曲线上的点。由于的对称矩阵有个元素,Veronese映射对该对称矩阵元素进行堆排得到一个列向量,该列向量可以由摄像机内外参数矩阵得到,记为对偶二次曲线的唯一的列向量表示法:

, (14)

其中是关于中心折反射摄像机的旋转矩阵通过Veronese映射扩展得到的矩阵(与旋转矩阵的扩展形式之间相差一个非零比例因子,可令),为空间点扩展的点,和分别只与镜面参数和平移向量相关的矩阵,这里,。由(14)式可以得到一个类似透视摄像机的投影公式:

, (15)

其中表示与摄像机内外参数相关的折反射投影矩阵,表示为:

(16)

类比(11)可得在中心折反射摄像机下的约束方程

, (17)

其中,为的推展矩阵,为空间点扩展的点。再通过Kronecker积进行变换之后得:

, (18)

其中是由的列向量堆排构成的601的列向量,该向量有个自由度,也就是说中最后一个元素为1。通过对三维点和它的像点构成的线性方程组的系数矩阵尺度为。这个齐次线性方程组的解可以使用SVD分解获得。因为是一个三阶反对称矩阵,它所对应的扩展矩阵的秩为。因此,一对三维点与其像点的对应只能提供关于折反射矩阵中元素的三个独立的线性约束方程组。那么,至少需要对对应点才能计算出,从而得到折反射投影矩阵。

4.投影矩阵求解摄像机内参数

在得到的,我们提取其最左边的矩阵,记为,由可得:

。 (19)

再由和正交矩阵的性质得到只与内参数与镜面参数有关的矩阵:

, (20)

式子左边、右边存在一个比例因子,即两边矩阵的每个元素都相差一个比例因子,并且在求解内参数过程中不需要考虑比例因子,即可以将比例因子设为1。通过中的以下元素即可计算即可得到内参数以及镜面参数:

, (21)

其中,分别是摄像机在成像平面轴上的尺度因子,是倾斜因子,,是主点中的坐标元素,分别是式中的第行列、2行3列、2行4列、5行2列、3行3列、3行4列、3行5列、3行6列元素值。由中得:

。 (22)

由(21)中可得:

。 (23)

由(23)可得:

。 (24)

由(21)中关系得:

。 (25)

由可得:

。 (26)

由(26)可得:

(27)

由式容易知道,当(中心折反射摄像机为双曲面、抛物面、椭球面镜)时,可由求出内参数。(透视摄像机)时,式知无法计算,从而无法求解摄像机内参数,此时可以用如下方式求解,由可得:

。 (28)

实施例

本发明提出了一种基于Veronese映射利用DLT方法线性估计空间棋盘格成像的投影矩阵求解中心折反射摄像机内参数的方法。本发明采用的实验模板结构示意图如图1所示。下面以一实例对本发明的实施方案做出更为详细的描述。

基于空间棋盘格双曲折反射摄像机标定采用的实验模板是空间中相互垂直的块棋盘格,如图1所示。利用本发明中的方法对用于实验的双曲折反射摄像机进行标定,具体步骤如下:

1.获得棋盘格空间坐标点和从图像上提取对应像点

在空间棋盘格每个面上选取8个角点(实验要求至少个点,点数越多结果越精确),每个角点间的距离设为单位长度1,共个角点,记为矩阵,每列为一个点的齐次坐标,表示如下:

。(29)

用双曲折反射摄像机拍摄标靶的1副大小为的图像,读入图像,利用Matlab函数Edge进行角点检测,提取对应空间棋盘格个面上的个角点,记为矩阵,表示如下

, (30)

其中:

2.中心折反射基于映射下的运用

(29)式空间点的维数为,次数,由(1)可知扩展后的点应为维。(29)式空间点代入(4)扩展得向量矩阵表示为,结果如下:

, (31)

其中:

将(30)式代入(9)和(6)得到图像点的反对称矩阵的扩展矩阵,下标1到24表示第几个子矩阵,结果如下:

, (32)

其中:

3.相似算法线性估计折反射投影矩阵

通过Kronecker积,将(31)和(32)代入(18)可得24对尺度为的,即得到关于(18)的线性方程组的系数矩阵尺度为,使用SVD分解可得到折反射投影矩阵,下标1到5代表第几个子矩阵,结果如下

, (33)

其中:

4.投影矩阵求解摄像机内参数

根据(19)提取(33)左边矩阵,记为,结果如下:

, (34)

其中:

将(34)代入(20)得到,结果如下:

, (35)

其中:

将中对应的行和列代入(22), 得到,结果如下:

。 (36)

将中对应的行和列代入(24),得到,结果如下:

(37)

将中对应的行和列代入(24),得到,结果如下:

。 (38)

将中对应的行和列代入(27),得到,结果如下:

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1