APP下载

齐次线性方程组约束的三维重建方法

2021-02-10张孝伍

关键词:双目三维重建摄像机

张孝伍

(青岛理工大学 理学院,山东 青岛 266520)

摄像机是空间物体到平面图像之间的一种中心投影变换[1],用基本针孔模型表示由摄像机引起的从三维空间到二维空间的映射.

设摄像机空间坐标系是Oc(xc,yc,xc) ,投影中心(光心)位于原点Oc,图像坐标系是O(u,v),f是图像平面到投影中心的距离,根据相似三角形原理得

从世界坐标系到二维图像坐标的中心投影变换为

令投影变换矩阵

2个或2个以上的摄像机从不同位置拍摄空间的同一个物体,得到多幅图像.已知多幅图像上的对应点和每个摄像机的内外参数,根据视差原理[2]能够获得物体三维几何信息,重建周围景物的三维形状和位置.

设世界坐标为Ow(xw,yw,xw),左摄像机坐标系为Ol(xl,yl,xl),左图像坐标系为O(ul,vl),右摄像机坐标系为Or(xr,yr,xr),右图像坐标系为O(ur,vr),世界坐标中的点为W(xw,yw,xw).若左、右摄像机图像上的2个对应匹配的点分别为Al(ul,vl)、Ar(ul,vl),则由摄像机模型[3—4]得

消去zl,zr得方程组

上述方程组是欠定的,有无穷多个解,用最小二乘法可求出其误差最小解.

设左摄像机与世界坐标系重合[3],即

Ol(xl,yl,xl)=Ow(xw,yw,xw)=O(x,y,z).

2个摄像机模型和相互位置关系分别为

2个摄像机成像面上对应匹配点的关系为

三维重建的空间点的坐标表示为

多目立体视觉重建是在双目视觉重建方法的基础上,增加一台或多台摄像机[5],从不同角度拍摄同一个空间物体,获得多幅图像,利用多视图极线约束的多视图张量方程[6]:

根据人眼视差图像的匹配原理,得到多幅图像上的对应点,重建三维物体的几何图形.

文中将摄像机针孔模型

变成齐次线性方程组约束形式:

在已知多幅图像上的多个立体匹配点的条件下,给出了将多幅图像上的对应点进行立体融合的新方法,得到双目立体视觉和多目立体视觉的三维重建方法,空间点坐标的重建计算式与人类双目视觉视差原理一致.多个摄像机获取同一个物体的多幅图像上对应点的视差信息,在文中给出的三维重建方法中得到充分体现,进而表明了视觉系统能够计算图像对的两个相反定向三维重建.

1 双目立体视觉重建方法

齐次线性方程组

写成矩阵形式为

矩阵HTH的3个特征值是λ1=0,λ2=f2,λ3=f2+u2+v2,秩R(HTH)=2,HTH不可逆.

其中

2幅图像上的对应点是(ul,vl)↔(ur,vr).

人类双眼获得2幅图像,每只眼睛各能看到1幅图像,经过视觉系统的融合后,用“第3只眼睛”看到三维重建的第3幅立体图像[7].所以将左、右摄像机模型融合成双目视觉模型:

该方程组中有4个方程,3个未知变量,用最小二乘法求出其唯一解.在方程组两边乘上系数矩阵的转置得

所以多幅图像融合的方法是:每个摄像机模型方程两边乘以系数矩阵的转置,然后将方程组中方程的两边分别相加得到融合后的立体视觉模型.

证明旋转矩阵Rl、Rr都是可逆的正交矩阵,当Rl=Rr=I(单位矩阵)时,

由定理2可得

(ⅱ)当左、右两个摄像机坐标系都与世界坐标系平行时Rl=Rr=I,从而

其中

H12=H21=(flul+frur)(flvl+frvr),

又由于

(flur-frul)2+(flvr-frvl)2=0,

另外两个特征值为

2 多目立体视觉重建方法

(u1,v1)↔(u2,v2)↔…↔(un,vn),

其中

类似于双目视觉模型,将n个摄像机模型融合成多目立体视觉模型:

证明旋转矩阵R1,R2,…,Rn都是可逆的正交矩阵,当R1=R2=…=Rn=I时,

由定理6知,当n个摄像机坐标系相互平行,R1=R2=…=Rn=I时,

其中

3 多目立体视觉融合模型的定向性

文献[6]中指出,双眼立体图像对是给一只眼睛提供一幅图像,而给另一只眼睛提供另一幅图像.若提供得正确,则大脑感知一个三维重建场景.若将这两幅图像交换并提供给两只相反的眼睛,则感知一个立体相反的场景:山峰变成山谷,反之亦然,大脑能够计算图像对的两个相反定向三维重建.

将左、右摄像机模型融合成双目视觉模型:

当Rl=Rr=I时,

-2flfr[(flur-frul)2+(flvr-frvl)2],

其中

h11=4flfrulur-(flvr-frvl)2,

h22=4flfrvlvr-(flur-frul)2,

h12=h21=(flur+frul)(flvr+frvl),

h13=h31=2flfr(flul+frur),

h23=h32=2flfr(flvl+frvr).

由于

(flvr-frvl)2]<0,

双目立体视觉三维重建出的空间点

与原来三维重建出的空间点反向.

对于n个摄像机模型融合成的多目立体视觉模型:

若其中有些摄像机模型不能推送得到正确的图像,将模型矩阵方程两边乘以矩阵

其中i1,i2,…,in是1,2,…,n的某个排列,即将第ij个摄像机获得的图像提供给第j个摄像机,则得到

当R1=R2=…=Rn=I时

当存在某个排列i1,i2,…,in,使得

时,多目立体视觉三维重建出的空间点

与原来三维重建的空间点反向.

设第i幅图像[8]上有ni个点,

上述模型矩阵方程两边乘以系数矩阵的转置得

i=1,2,…,n.

4 实验结果分析

用两台摄像机拍摄标定靶物[11],得到16个3D角点所对应的图像点及两幅图像上的对应点坐标(表1).

表1 世界坐标系的点及两幅图像上的对应点坐标

标定靶物上3D点的实际世界坐标(xw,yw,zw)的单位是英寸,图像点的坐标(u,v)是行数与列数,单位是像素,其中xoy坐标面水平,x轴向右,y轴是深度轴,z轴向上, 标定靶物的顶面位于xoy坐标面上(见文献[11]图13~图15).

设第j个实际世界坐标(xw,yw,zw)是(xj,yj,zj),对应的图像点为(uj,vj),摄像机线性模型由下式表示:

消去方程组中的sj得到方程组:

对于标定物上的n个特征点,有2n个关于矩阵元素mij的方程组,其矩阵形式为QM=U.设m34=1,该方程组的最小二乘解为

M=(QTQ)-1QTU,

其中

M=(m11m12m13m14m21m22m23m24m31m32m33)T,

U=(u1m34v1m34u2m34v2m34…unm34vnm34)T,

Q=

根据表1中的空间点和摄像机图像上的图像点坐标,利用3D空间线性模型相机标定法[3],得到左、右摄像机内外参数如下:

表2 3D重建的世界坐标系中点的坐标

表2中P0点坐标是世界坐标系标定后的原点坐标,其他点的三维重建坐标等于表2中点的坐标减去P0的坐标. 由于3D空间线性模型相机标定法的误差比较大,文中给出的三维重建方法有一定的误差,但给出的3D重建方法是有效的.将图像点坐标归一化[12],用精度高的、非线性的摄像机内外参数标定法,就能得到更加精确的符合实际的3D重建坐标.

将左、右两个摄像机获得的两幅图像交换并提供给两个相反的双目立体融合模型系统,则有

得到的世界坐标系点的伪坐标见表3.

表3 3D重建的世界坐标系中点的伪坐标

对表2和表3的三维重建点坐标进行比较.若将这两个表中的同一个点的坐标与伪坐标相减(以P10为例)得ΔP10=(1.729 7,0.014 02,0.573 35),则可以看出实现了图像对的两个相反定向三维重建,且错误地推送了图像数据.

4.806 1×1020,

视差信息为

所以表1中数据的视差信息相对较小,条件数相对较大,双目立体视觉融合模型的分辨率相对较低,这与实验结果一致.

对多目立体视觉融合模型,也可以类似地进行实验以验证文中给出的三维重建方法的有效性.

5 结论

文中的研究和实验结果表明,用齐次线性方程组表示摄像机模型,给出双目、多目立体视觉的空间点坐标计算式,符合双眼立体视觉原理,能够说明立体视觉和运动视觉的正、负定向性,并且能够辨识推送的图像点的正确性.

猜你喜欢

双目三维重建摄像机
采用双目视觉和自适应Kalman滤波的作物行识别与跟踪
霜 降 苏美玲
基于双目视觉的机器人定位与导航算法
三维重建的飞机机动动作库设计与可视化
基于Mimics的CT三维重建应用分析
机械手的双目视觉定位抓取研究
新安讯士Q6155-E PTZ摄像机
光编码技术在犯罪现场重建中的应用
三维重建结合3D打印技术在腔镜甲状腺手术中的临床应用
如何消除和缓解“摄像机恐惧症”