您好,欢迎来到爱站旅游。
搜索
您的当前位置:首页一种基于多层折射图像模型的水下双目立体视觉三维重建方法[发明专利]

一种基于多层折射图像模型的水下双目立体视觉三维重建方法[发明专利]

来源:爱站旅游
(19)中华人民共和国国家知识产权局

(12)发明专利申请

(10)申请公布号 CN 110728745 A(43)申请公布日 2020.01.24

(21)申请号 201910874161.6(22)申请日 2019.09.17

(71)申请人 上海大学

地址 200444 上海市宝山区上大路99号(72)发明人 屠大维 金攀 庄苏锋 张旭 (74)专利代理机构 上海上大专利事务所(普通

合伙) 31205

代理人 陆聪明(51)Int.Cl.

G06T 17/00(2006.01)G06T 15/50(2011.01)

权利要求书3页 说明书4页 附图2页

(54)发明名称

一种基于多层折射图像模型的水下双目立体视觉三维重建方法(57)摘要

本发明提出了一种基于多层折射图像模型的水下双目立体视觉三维重建方法。属于水下计算机视觉研究领域,典型的应用是水下物体的三维重建。本方法使用基于光场多层折射理论计算得到左、右相机的方向信息图像和位置图像,然后基于该方向信息图像可直接利用空气中的立体匹配方法得到视差图。最后利用视差图确定左、右方向信息图像上的对应点,并结合对应坐标的位置图像数据,计算匹配点的三维坐标。按此方法遍历整个图像即可得到整个匹配区域的点云图。本发明不仅实现了水下物体的三维重建,而且保证在较高精度的前提下显著提高计算效率。

CN 110728745 ACN 110728745 A

权 利 要 求 书

1/3页

1.一种基于多层折射图像模型的水下双目立体视觉三维重建方法,其特征在于,包括以下步骤:

步骤1:计算左、右相机的方向信息图像,即dir_L和dir_R;步骤2:计算对应像素的位置图像,即pos_L和pos_R;步骤3:基于左、右相机的方向信息图像dir_L和dir_R,利用空气中的匹配算法计算视差图disp,根据此视差图用于确定左、右方向信息图像上的坐标对应点;

步骤4:根据以上计算出来的方向信息图像和位置图像计算匹配点的三维坐标。

2.根据权利要求1所述的基于多层折射图像模型的水下双目立体视觉三维重建方法,其特征在于,所述步骤1中计算左、右相机的方向信息图像,具体包括以下步骤:

步骤1-1:采用相机的多层折射立体模型,建立立体视觉坐标系;定义方向图像内参矩阵,在立体视觉坐标系下建立左、右方向图像;

步骤1-2:计算左、右方向信息图像任意像素在立体视觉坐标系下对应的光线方向向量IL_stereo、IR_stereo,并根据立体视觉坐标系与多层折射坐标系的坐标变换关系:Pr=rRnewPnew,计算得到光线在多层折射坐标系下的方向向量IL_reflect、IR_reflect;

步骤1-3:根据光场模型,将左、右方向信息图像的光线矢量表示为光场:

对于折射率为μ光线nLr传播距离dn后进入折射率为μ入射n的介质,n+1介质时发生折射,光线和折射后光线表示为:

n+1

n

Lr=R(sn tn μ μnn+1)×T(dn)×Lr

其中

根据以上公式计算左、右方向信息图像像点经过多层界面传播和折射后到达空气中的光线

并转换成光线矢量

步骤1-4:将光线矢量转换到左、右相机坐标系下,根据左、右相机内参计算得到

方向图像上任意像点对应原图像上的像素位置,并建立位置映射表;步骤1-5:利用水下双目视觉测量系统获取到的水下目标图像,根据步骤1-4计算得到的位置映射表,使用OpenCV中Remap函数快速计算出左、右方向信息图像。

3.根据权利要求2所述的基于多层折射图像模型的水下双目立体视觉三维重建方法,其特征在于,所述步骤1-1中的建立立体视觉坐标系,包括以下步骤:

2

CN 110728745 A

权 利 要 求 书

2/3页

步骤1-1-1:以左相机光心为原点,左相机光心与右相机光心的连线方向为左立体视觉坐标系的x轴;

步骤1-1-2:将左多层折射坐标系的z轴即分界面的法线与左立体视觉坐标系x轴的叉乘作为左立体视觉坐标系y轴;

步骤1-1-3:x轴与y轴叉乘作为z轴;步骤1-1-4:将左立体视觉坐标系平移到右相机光心,即得到右立体视觉坐标系。

4.根据权利要求1所述的基于多层折射图像模型的水下双目立体视觉三维重建方法,其特征在于,所述步骤2中计算左、右位置图像,具体包括以下步骤:

步骤2-1:使用光场表示,根据步骤1-4中的光线矢量点,将该光线用光场表示:

计算出光线与分界面的交

L’=R(s,t,μ,μ’)×L=R(s,t,μ,μ’)×T(d)×Lr

=(u’,v’,s’,t’)T

这样得到光线与分界面的交点为:C=(u’,v’,d);光线方向:

步骤2-2:将以上交点转换到对应立体视觉坐标系下;

根据立体视觉坐标系与多层折射坐标系的位置姿态转换矩阵newRr对计算出的光线与分界面的交点及方向进行变换,获得在新的坐标系下的光线与分界面的交点Cnew及光线方向Inew;

Cnew=newRrC=(cx,cy,dnew)步骤2-3:根据立体视觉坐标系建立新的光场坐标系,求光线在立体视觉坐标系下的位置信息;

新的光场坐标系定义如下:u-v坐标系与立体视觉坐标系的x-y平面平行,且原点和立体视觉坐标系原点重合;与u-v平面距离一个单位长度的平行平面定义为s-t平面,s-t坐标系与u-v坐标系平行,则光线在新光场坐标系下表示为:

光场与新坐标系xy平面的交点:

Lnew’=T(-dnew)×Lnew=[unew’,vnew’,snew,tnew]T根据Pnew=(unew’,vnew’,0)获得左、右图像每一条光线的位置数据,保存于位置图像中。

3

CN 110728745 A

权 利 要 求 书

3/3页

5.根据权利要求1所述的基于多层折射图像模型的水下双目立体视觉三维重建方法,其特征在于,所述步骤3中确定左、右方向信息图像的对应点,具体做法为:基于步骤一得到的左、右方向信息图像,利用空气中的匹配算法计算视差图;设左方向信息图像的某个像素点坐标为(xl,yl),则该坐标对应到视差图disp中坐标为(xdisp,ydisp);

xr=xl+xdispyr=yl

左方向图像的像素点(xl,yl)与右方向图像的像素点(xr,yr)相对应。

6.根据权利要求1所述的一种基于多层折射图像模型的水下双目立体视觉三维重建方法,其特征在于,所述步骤4中计算匹配点的三维坐标,具体做法为:由左、右方向信息图像的坐标(xl,yl)、(xr,yr)与像素数据得到左、右方向矢量la与ra;左位置图像中保存的是左多层折射坐标系下左相机的点位置数据lq,右位置图像中保存的是右多层折射坐标系下右相机的点位置数据rq;然后将右相机多层折射坐标系下的方向矢量ra和点位置rq转换到左相机多层折射坐标系下;由于在左相机多层折射坐标系下点P同时在两条直线,因此满足下述约束:

然后使用反对称矩阵表示代替叉乘,上述约束转化为如下形式:

最后对上述公式进行奇异值分解,计算出匹配点P的三维坐标。

4

CN 110728745 A

说 明 书

1/4页

一种基于多层折射图像模型的水下双目立体视觉三维重建

方法

技术领域

[0001]本发明属于水下计算机视觉研究领域,涉及一种基于多层折射图像模型的水下三维重建方法,具体是一种水下光场模型中多层折射系统中的双目立体视觉三维重建方法。背景技术

[0002]随着科技的进步,人类对于海洋资源的开采与利用有了新的认知,各个国家也都在不遗余力的发展水下探测技术。水下三维重建技术作为探测深水湖泊和海洋的重要技术手段,可用于水下地形扫描探测、海底考古、水下慢移动生物的体型数据获取。目前水下探测主要以声呐为主要探测技术,但该方法精度较低,不能满足水下精确探测的需求。而使用视觉探测不仅可直观地观察到水下环境,而且可获得更准确的三维信息。[0003]虽然目前空气中的三维重建技术已较为成熟,但精密的光学仪器在水下环境中的应用因成像环境特殊而存在很多难点,这时的摄像机往往需要加装防水罩,因此除了原本水对光的吸收和散射造成成像质量的下降外,光线通过水、防水罩玻璃和空气的交界面处还发生了折射,从而导致空气中的极线约束模型不再适用,即原本空气中的三维重建方法失效。

[0004]林俊义等人在其论文“一种基于双目立体视觉的激光线扫描技术[J].机械设计与制造,2011(8):200-202.”提出一种基于极限约束方法进行三维重建的方法。它使用传统的相机模型来描述水下折射环境,用畸变参数来矫正折射所带来的偏差。但该方法并不准确,并且在不同水域都需要进行视场范围内的标定,且标定过程中相机和标定板之间必须相对静止,因此实际操作性较差。

[0005]中国专利CN201410195345.7提出了一种基于线结构光的水下目标三维重建方法。该方法利用单相机和线结构光组合的方法进行三维重建,利用在水下不同深度获得的标校数据对获得图像中的激光条纹中心进行矫正位置以消除折射带来的影响。虽然该方法相较于传统小孔成像模型精度高,但该方法在不同深度的水中都需要用标定板进行标校,并且标校过程中需要在视场不同深度内拍摄标校图片,但在水下较难实现,因此其实际可操作性较差。

发明内容

[0006]本发明为解决上述问题,提出了一种基于多层折射图像模型的水下双目立体视觉三维重建方法。本方法在保证较高精度的前提下,不仅具有较高的实际可操作性,同时提高了算法的计算效率。

[0007]为了达到上述目的,本发明具体采用下述技术方案:

[0008]一种基于多层折射图像模型的水下双目立体视觉三维重建方法,包括以下步骤:[0009]步骤1:计算左、右相机的方向信息图像,即dir_L和dir_R;[0010]步骤2:计算对应像素的位置图像,即pos_L和pos_R;

5

CN 110728745 A[0011]

说 明 书

2/4页

步骤3:基于左、右相机的方向信息图像dir_L和dir_R,利用空气中的匹配算法计

算视差图disp,根据此视差图用于确定左、右方向信息图像上的坐标对应点;[0012]步骤4:根据以上计算出来的方向信息图像和位置图像计算匹配点的三维坐标。[0013]由于采用了上述解决方案,本发明具有如下显而易见的优点:[0014]1、精度高。采用光场的多层折射坐标系描述光线,比传统的畸变矫正精度要高很多,不存在系统误差。[0015]2、计算得到的左右方向图像可直接利用空气中的匹配算法,可移植性好。[0016]3、减小了计算量,计算速度更快,有效提高了系统的执行效率。附图说明

[0017]图1为本发明算法的具体流程图。

[0018]图2为本发明计算得到的方向信息图像,其中a为右相机方向信息图像,b为左相机方向信息图像。

[0019]图3为本发明计算得到的位置图像,其中a为右相机位置图像,b为左相机位置图像。

[0020]图4为本发明算法计算得到的点云图。

具体实施方式

[0021]下面结合附图对本发明的优选实施例作出详细说明。[0022]如图1所示,一种基于多层折射图像模型的水下双目立体视觉三维重建方法,包括以下步骤:

[0023]步骤1:计算左、右方向信息图像。

[0024]首先本实施例采用中国专利CN201710702222中的“基于多层折射模型的水下立体视觉系统标定方法”中的多层折射模型。相机封装在舱内后,相机坐标系z轴即相机光轴与“空气-水”分界面一般不垂直。因此建立z轴与“空气-水”分界面垂直的多层折射坐标系,采用中国专利CN201710702222中的“基于多层折射模型的水下立体视觉系统标定方法”获得法向量参数(nL,nR),根据法向量参数计算相机坐标系与多层折射坐标系的转换关系。多层折射成像坐标系与相机坐标系的关系可表示为:[0025]Pr=cRrPr+ctr[0026]cRr=[nc×zc nc×(nc×zc) nc][0027]ctr=[0 0 0]T[0028]zc=[0 0 1]T

[0029]然后根据相机的多层折射模型,建立立体视觉坐标系。以左相机的光心为原点,左相机光心与右相机的光心的连线方向作为x轴,以左相机当前左相机的光场的z轴(即界面的法线)与x轴叉乘得到y轴,然后x轴与y轴叉乘得到z轴。得到立体视觉坐标系:[0030]Pr=rRnewPnew+rtnew[0031]rRnew=[nx nr×zx nx×(nr×zx)][0032]rtnew=[0 0 0]T[0033]zc=[0 0 1]T

6

CN 110728745 A[0034]

说 明 书

3/4页

其中nx为左右相机光心构成的单位向量在多层折射坐标系下的表示。多层折射坐

new

标系相对立体视觉坐标系的关系可表达为:Pnew=newRrPr+newtr,其中:Rr=rRnew-1。然后定义方向图像内参矩阵,在立体视觉坐标系下建立左、右方向图像矩阵。[0035]计算光线在多层折射坐标系下的方向向量。首先计算左、右方向信息图像中的任意像素在立体视觉坐标系下对应的光线的方向向量IL_stereo和IR_stereo。然后根据立体视觉坐标系与多层折射坐标系的坐标变换关系:Pr=rRnewPnew,得到光线在多层折射坐标系下的方向向量IL_reflect和IR_reflect。[0036]根据光场表示方法,分别计算左、右方向信息图像像点经过多层界面传播和折射后到空气中的光线

并转换成光线矢量和

根据中国专利CN109490251A“基于光

场多层折射模型的水下折射率自标定方法”所述的光场模型,将左、右方向信息图像的光线矢量表示为光场:

[0037]

[0038]

光线Lr传播距离d0,然后从水进入空气中发生折射,入射光线和折射后光线可表示

为:

[0039][0040]

1

Lr=R(s0 t0 1.333 1)×T(d0)×0Lr

[0041]其中

根据以上公式即可求出左、右方向信息图像像点经过水的传播和折射后到达空气

[0042]

中的光线,并利用以下公式即可将其转换成光线矢量

[0043][0044]

将上述光线矢量转换到左、右相机坐标系下,根据左、右相机内参计算得到

方向信息图像上任意像点对应原图像上的像素位置,建立x方向和y方向的映射表。

[0045]再利用水下双目视觉测量系统获取水下目标的图像,同时辅以绿色散点激光增加水下图像的纹理性,然后将采集到的左右图像畸变校正后,利用opencv中的remap函数以及上述x方向和y方向的映射表,即可快速计算出左、右方向信息图像:dir_L和dir_R。[0046]步骤2:计算左、右位置图像。

[0047][0048][0049]

首先,根据光线矢量计算左图像光线与分界面的交点。

LLLLLLL

L,L=R(sL,tL,μ,μ’)×LL=R(sL,tL,μ,μ’)×T(dL)×LrL=(u’,v’,s’,t,L)T

LL

这样得到左图像光线与分界面的交点为:CL=(u’,v’,dL)。

7

CN 110728745 A[0050][0051]

说 明 书

4/4页

光线方向:

然后将以上交点转换到左立体视觉坐标系下。根据左立体视觉坐标系与左多层折

射坐标系的位置姿态转换矩阵newRrL对计算出的光线与分界面的交点及方向进行变换,获得在新的坐标系下的光线与分界面的交点CnewL及光线方向InewL。[0053]CnewL=newRrLCL=(unewL,vnewL,dnewL)

[0054]

[0052]

接着根据立体视觉坐标系建立新的光场坐标系,求光线在立体视觉坐标系下的位

置信息。首先建立新的光场坐标系,定义如下:u-v坐标系与立体视觉坐标系的x-y平面平行,且原点和立体视觉坐标系原点重合;与u-v平面距离一个单位长度的平行平面定义为s-t平面,s-t坐标系与u-v坐标系平行。则光线在新光场坐标系下表示为:[0056]LnewL=[unewL vnewL snewL tnewL]T

[0057]光场与新坐标系x-y平面的交点:

LLL[0058]Lnew’=T(-dnewL)×LnewL=[unew’,vnew’,snewL,tnewL]T

LL[0059]根据PnewL=(unew’,vnew’,0)获得左图像上每一条光线的位置信息,保存于位置图

R

像中。采用以上相同的方法,即可求得右图像上每一条光线的位置信息:PnewR=(unew’,vnewR’,0),如图3所示,该位置图像为双通道图像。[0060]步骤3:基于以上得到的左、右方向信息图像(如图2所示),利用空气中的SGBM匹配算法计算得到视差图disp。设左方向信息图像的某个像素点坐标为(xl,yl),则该坐标对应到视差图disp中坐标为(xdisp,ydisp);[0061]xr=xl+xdisp[0062]yr=yl[0063]左方向图像的像素点(xl,yl)与右方向图像的像素点(xr,yr)相对应。[0064]步骤4:由左、右方向信息图像上对应坐标(xl,yl)、(xr,yr)与像素数据可以得到左、右方向矢量la、左位置图像(如图3(a))中保存的是左多层折射坐标系下左相机的点ra。位置数据lq,右位置图像(如图3(b))中保存的是右多层折射坐标系下右相机的点位置数据然后将右相机多层折射坐标系下的方向矢量ra和点位置rq转换到左相机多层折射坐标rq。系下。由于在左相机多层折射坐标系下点P同时在两条直线,因此满足下述约束:

[0065][0066][0067][0068]

[0055]

然后使用反对称矩阵表示代替叉乘,上述约束可转化为如下形式:

最后对上述公式进行奇异值分解,即可计算出匹配点P的三维坐标。按此方法遍历整个图像即可得到匹配区域的点云图(如图4所示)。[0069]基于多层折射模型的水下三维重建得以完成。

8

CN 110728745 A

说 明 书 附 图

1/2页

图 1

图 2

9

CN 110728745 A

说 明 书 附 图

2/2页

图 3

图 4

10

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- azee.cn 版权所有

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务