一种基于光场模型的水下激光条纹匹配和立体重建方法与流程

文档序号:16120884发布日期:2018-11-30 23:11阅读:395来源:国知局

本发明属于计算机视觉研究领域,涉及一种基于光场模型的水下激光条纹匹配和立体重建方法,具体是一种水下光场模型中多层折射系统中激光条纹匹配和立体重建方法。

背景技术

在水下环境中,成像光线将依次通过水,玻璃,空气这三层折射介质。现有的激光条纹匹配方法是基于双目立体视觉的极限约束。文献“林俊义,黄常标,刘斌,等.一种基于双目立体视觉的激光线扫描技术[j].机械设计与制造,2011(8):200-202.”提出的就是一种基于极限约束的寻找激光条纹匹配点的方法。极限约束基于传统的相机模型,它使用畸变参数来校正折射造成的偏差。然而,折射对不同像素点产生偏差的影响是不同的,使用传统的相机模型会产生明显的误差。因此,在模型描述不准确的情形下,用极限约束找到的对应点并不是真正的对应点。

中国专利cn201410195345.7公开了一种基于线结构光的水下目标三维重建方法。该方法利用单相机和激光组合的方式来进行立体重建,利用在水下不同深度获得的标校数据对二维图像中的激光条纹进行矫正位置,以消除折射带来的影响。但该方法在不同深度的水中,都要用标定板进行现场标校,实际操作非常不便,尤其在深海,标定板本身需要有抗压能力,还需要有很长的机械臂来摆放标定板进行拍摄,实际操作性较低。



技术实现要素:

本发明为解决上述问题,基于光场模型中多层平面折射几何理论,提出一种基于光场模型的水下激光条纹匹配和立体重建方法,可用于水下双目立体视觉中激光条纹中心点匹配和计算三维点,其与空气中的极限约束不同之处在于相机模型不同,光线描述方法不同,采用共面约束来查找匹配对应点,奇异值分解来计算三维点。

为达到上述目的,本发明采用下述技术方案:

一种基于光场模型的水下激光条纹匹配和立体重建方法,其特征在于操作步骤如下:

步骤a:利用水下双目立体视觉测量系统完成对水下目标的激光扫描和图片获取。

步骤b:对获取的左右相机图片进行激光条纹中心提取。

步骤c:根据空气和水下标定获得的参数信息,对激光条纹中心点计算对应光线在多层折射坐标系内所形成的光线,一直计算到最后一层界面光线的点和方向。

步骤d:根据左右激光条纹点对应的最后一层界面光线的点和方向,计算光线混合积,混合积为0的光线对应激光点为激光条纹对应点。

步骤e:根据左右激光条纹对应点所对应的最后一层界面的点和方向,计算空间三维点。

所述步骤c中的激光条纹点计算最后一层界面光线的点和方向,包括以下步骤:

步骤①:左相机图片上激光条纹中心点像素坐标为(ul,vl),右相机图片上激光条纹中心点像素坐标为(ur,vr),分别计算它们在各自的相机坐标系的光线方向dir_out_l和dir_out_r。

步骤②:根据标定的法线向量nl,nr计算从相机坐标系到多层折射坐标系的旋转矩阵rl,rr,再把左右得到的光线方向转换到各自的多层折射坐标系下,计算公式为ir=r-1·dir_out,从而可以得到dir_out_ref_l,dir_out_ref_r。

步骤③:计算光线传播到最后一层界面的光场。根据标定数据折射率miu_l,miu_r,各个界面的距离dis_l,dis_r,可以根据光线在光场中的传播特性计算出最后一层界面的光场为i_out_dn_l,i_out_dn_r。

步骤④:将左右折射坐标系最后一层界面的光场i_out_dn_l,i_out_dn_r转换成点和方向表达方式,得到a_dn_l,a_dn_r,q_dn_l,q_dn_r。

步骤⑤:将右多层折射成像坐标系点矢转换到左多层折射成像坐标系,得到a_dn_r_inl,q_dn_r_inl。

所述步骤d中寻找对应点按照如下方式进行:

从a_dn_l,q_dn_l中取左激光条纹中心点第1个点(从上到下依次排序)对应的点矢,在a_dn_r,q_dn_r中取右激光条纹中心点第1个点对应的点矢,跟左相机中所取的点矢计算混合积,得到v1。然后再计算跟右激光条纹中心点第2个点对应点矢的混合积,记为v2,二者相乘得到v1*v2,若v1*v2≤0,则判断在第1和第2个点之间存在混合积过零点,即在右激光条纹中心点第1、2个点之间存在跟左激光条纹中心点第1个点对应的中心点。若v1*v2>0,继续计算右激光条纹中心点第3个点对应点矢的混合积,记为v3,计算v2*v3,再次做正负判断,若v2*v3≤0,则右激光条纹中心对应点存在于第2、3个点之间。若v2*v3>0,继续计算v4,依次类推。直到找到混合积过零点。

混合积的计算公式如下:

其中:

al——左相机激光条纹中心点对应最后一层界面光线的方向;

ql——左相机激光条纹中心点对应最后一层界面光线的点位置;

ar'——右相机激光条纹中心点对应最后一层界面光线的方向(在左多层折射坐标系下);

混合积为0的光线对应激光点为激光条纹对应点的理论依据如下:

空间中一点反射到两个相机的像素点,在最后一层界面的光线是相交于一点的,即两条光线是共面的。因此在最后一层界面的al,ar',qr'-ql三个向量是共面的,即三个向量构成的六面体的体积为0,即混合积为0。

所述步骤e中计算空间三维点的理论方法如下:

在左多层折射坐标系下的p点同时在左右激光条纹对应点所计算的光线上,满足如下约束:

表示矢量叉乘。使用反对陈矩阵表示代替叉乘,其可转化为

对其进行奇异值分解可得p。

由于采用了上述解决方案,本发明具有如下显而易见的突出实质性特点和显著优点:

1、精度高,采用光场模型多层折射坐标系描述光线,比传统的畸变矫正精度要高很多,不存在系统误差。

2、操作方便,不需在水下摆放标定板进行激光条纹位置矫正。只需在水下进行扫描拍摄,利用c++编程对扫描物体进行三维重建。

附图说明

图1为扫描系统硬件摆放图。

图2为多层折射平面立体系统图。

图3为多层折射系统中激光条纹中心点匹配和计算三维点流程图。

具体实施方式

下面结合附图和优选实施例对本发明做出详细说明。

实施例一:参见图3,本基于光场模型的水下激光条纹匹配和立体重建方法,其特征在于,操作步骤如下:

步骤a:利用水下双目立体视觉测量系统完成对水下目标的激光扫描和图片获取;

步骤b:对获取的左右相机图片进行激光条纹中心提取;

步骤c:根据空气和水下标定获得的参数信息,对激光条纹中心点计算对应光线在多层折射坐标系内所形成的光线,一直计算到最后一层界面光线的点和方向;

步骤d:根据左右激光条纹点对应的最后一层界面光线的点和方向,计算光线混合积,混合积为0的光线对应激光点为激光条纹对应点;

步骤e:根据左右激光条纹对应点所对应的最后一层界面的点和方向,计算空间三维点;

实施例二:本基于光场模型的水下激光条纹匹配和立体重建方法,流程如图3所示,包括以下步骤a至步骤e,共计5个步骤:

步骤a:利用水下双目立体视觉测量系统,,完成对水下目标的激光扫描和图片获取。

水下双目立体视觉测量系统,如图1所示,由激光器扫描系统(3)和两组相机(1,2)组成。当启动系统时,激光扫描系统对扫描范围进行扫描,同时两个相机(1,2)同步拍摄照片存储到电脑中。

步骤b:对获取的左右相机图片进行激光条纹中心提取。

步骤c:参见图2,根据空气和水下标定获得的参数信息,对激光条纹中心点计算对应光线在多层折射坐标系内所形成的光线,一直计算到最后一层界面光线的点和方向。计算过程包括以下步骤:

步骤①:左相机图片上激光条纹中心点像素坐标为(ul,vl),右相机图片上激光条纹中心点像素坐标为(ur,vr),分别计算它们在各自的相机坐标系的光线方向dir_out_l和dir_out_r。

步骤②:根据标定的法线向量nl,nr计算从相机坐标系到多层折射坐标系的旋转矩阵rl,rr,再把左右得到的光线方向转换到各自的多层折射坐标系下,计算公式为ir=r-1·dir_out,从而可以得到dir_out_ref_l,dir_out_ref_r。

步骤③:计算光线传播到最后一层界面的光场。根据标定数据折射率miu_l,miu_r,各个界面的距离dis_l,dis_r,可以根据光线在光场中的传播特性计算出最后一层界面的光场为i_out_dn_l,i_out_dn_r。

步骤④:将左右折射坐标系最后一层界面的光场i_out_dn_l,i_out_dn_r转换成点和方向表达方式,得到a_dn_l,a_dn_r,q_dn_l,q_dn_r。

步骤⑤:将右多层折射成像坐标系点矢转换到左多层折射成像坐标系,得到a_dn_r_inl,q_dn_r_inl。

步骤d:根据左右激光条纹点对应的最后一层界面光线的点和方向,计算光线混合积,混合积为0的光线对应激光点为激光条纹对应点。该过程按照如下方式进行:

从a_dn_l,q_dn_l中取左激光条纹中心点第1个点(从上到下依次排序)对应的点矢,在a_dn_r,q_dn_r中取右激光条纹中心点第1个点对应的点矢,跟左相机中所取的点矢计算混合积,得到v1。然后再计算跟右激光条纹中心点第2个点对应点矢的混合积,记为v2,二者相乘得到v1*v2,若v1*v2≤0,则判断在第1和第2个点之间存在混合积过零点,即在右激光条纹中心点第1、2个点之间存在跟左激光条纹中心点第1个点对应的中心点。若v1*v2>0,继续计算右激光条纹中心点第3个点对应点矢的混合积,记为v3,计算v2*v3,再次做正负判断,若v2*v3≤0,则右激光条纹中心对应点存在于第2、3个点之间。若v2*v3>0,继续计算v4,依次类推。直到找到混合积过零点。

混合积的计算公式如下:

其中:

al——左相机激光条纹中心点对应最后一层界面光线的方向;

ql——左相机激光条纹中心点对应最后一层界面光线的点位置;

ar'——右相机激光条纹中心点对应最后一层界面光线的方向(在左多层折射坐标系下);

步骤e:根据左右激光条纹对应点所对应的最后一层界面的点和方向,计算空间三维点。计算空间三维点的理论方法如下:

在左多层折射坐标系下的p点同时在左右激光条纹对应点所计算的光线上,满足如下约束:

表示矢量叉乘。使用反对陈矩阵表示代替叉乘,其可转化为对其进行奇异值分解可得p。

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