一种基于双目相机的水下点云获取方法技术

技术编号:25347608 阅读:198 留言:0更新日期:2020-08-21 17:06
本发明专利技术提供了一种基于双目相机的水下点云获取方法。首先,标定水下双目相机,并根据标定参数立体校正得到无畸变的图像;然后,设计基于多特征融合的立体匹配算法计算无畸变图像的视差图;最后,根据视差原理将二维坐标系中的每一个像素点映射到三维空间中,得到初始的点云数据,再对初始的点云数据进行下采样和离群点检测处理,得到最终的水下场景三维点云数据。本发明专利技术可以利用水下双目相机直接获得所拍摄场景的点云信息,利用所提出的立体匹配算法,解决了水下双目系统在图像成像对比度低、亮度差异大时点云获取失败的问题,具有很强的鲁棒性和更高的精度。

【技术实现步骤摘要】
一种基于双目相机的水下点云获取方法
本专利技术属水下航行器视觉处理
,具体涉及一种基于双目相机的水下点云获取方法。
技术介绍
点云是某个坐标系下的多个点的集合。点云数据可以用于三维重建,高精度的三维点云数据通过算法可以拟合生成曲面,用于三维建模时细节更精细,建模速度更快;点云数据也可以用于测绘,将多个场景的点云拼接起来,观测者就可以得到一个范围内的地形地貌;点云数据还可以用于目标的定位,通过对比获取到的目标点云和目标的三维模型,可以快速准确地得到目标的位姿信息。传统的点云可以通过激光雷达、深度相机和多目相机获取。通过激光雷达获取点云的方法在空气中应用广泛,该方法能快速地提供大范围点云信息,在自动驾驶和定位导航领域得到了深入研究,但是激光雷达设备成本高,不适合在水下机器人上批量装备;深度相机分为结构光相机和飞行时间相机,结构光相机的原理是通过红外激光器,将具有一定结构特征的光线投射到被拍摄物体上,再由专门的红外摄像头进行采集点云数据,飞行时间相机朝目标连续发射激光脉冲,然后用传感器接收反射光线,通过探测光脉冲的飞行往返时间来得到确切的目标物距离,从而形成点云数据,两者都只能在水中短距离内工作,而且容易受到水下悬浮物和其他杂质的干扰;多目相机获取点云的基础是相机之间的成像差异,因此它不会受到距离的约束,适合中短距离的目标感知。多目相机获取的点云精度完全取决于立体匹配算法的设计。但是多目相机是被动光相机,依赖于目标物体上反射的光线,因此水下多目相机在深水区工作时需要水下机器人自带光源,但这往往会导致搭载在水下机器人上的双目相机的图像成像对比度低、亮度差异大,这个成像特点给传统的立体匹配算法带来了很大挑战。
技术实现思路
为了克服现有技术的不足,本专利技术提供一种基于双目相机的水下点云获取方法。首先,标定水下双目相机,并根据标定参数矫正得到无畸变的图像;然后,设计多特征融合立体匹配算法计算无畸变图像的视差图;最后,根据时差原理将二维坐标系中的每一个像素点映射到三维空间中去,得到初始的点云数据,再对初始的点云数据进行下采样和离群点检测处理,得到最终的水下场景三维点云数据。本专利技术可以利用双目相机直接获得所拍摄场景的点云信息,且利用立体匹配算法,能够解决水下双目系统图像成像对比度低、亮度差异大的问题,具有很强的鲁棒性和更高的精度。一种基于双目相机的水下点云获取方法,其特征在于步骤如下:步骤1,标定水下双目相机:首先,利用双目相机的左右相机同时拍摄得到若干组水下标定图像,令拍摄得到的图像中的棋盘格板所占像素比例大于30%、标定板和相机之间的倾斜角度小于30度、图像包含标定板上的所有角点;然后,将这些图像导入Matlab标定工具包,计算左右相机各自的内参数和左右相机之间的外参数;再利用Matlab标定工具包对双目相机拍摄的所有图像进行校正,包括利用得到的内参数中的畸变参数对图像进行校正,使得图像无畸变,利用外参数中的旋转平移矩阵来旋转图像,使得双目相机中左右相机光轴平行、像平面处于共面;步骤2,立体匹配:步骤2.1:对于校正后的双目相机拍摄的左图像中每一个像素点,计算其多特征融合的匹配代价值,函数如下:其中,C(p,d)表示像素点p在视差为d时的多特征融合匹配代价,p为像素点序号,p=1,…,P,P为图像中的像素点总数,CAD(p,d)表示像素点p在视差为d时的基于图像灰度的匹配代价值,按照计算得到,i表示图像的R通道或G通道或B通道,Ii(p)表示左图像中像素点p的i通道的像素灰度值,I′i(p+d)表示右图像中像素点p沿对极线平移d后的i通道的像素灰度值;Ccensus(p,d)表示像素点p在视差为d时的基于Census变换的匹配代价值,按照计算得到,Census(p)表示对左图像进行Census变换后像素点p处的比特串,Census(p+d)表示右图像进行Census变换后像素点p沿对极线平移d后的像素比特串;Cgrad(p,d)表示像素点p在视差为d时的梯度匹配代价值,按照计算得到,为横向梯度算子,代表该像素点处的梯度运算,为竖向梯度算子;λAD表示灰度代价函数参数,λcensus表示Census变换代价函数参数,λgrad表示梯度代价函数参数,λAD、λcensus和λgrad的取值在[0,3]之间,α表示灰度代价幅值参数,β表示Census变换代价幅值参数,γ表示梯度代价幅值参数,α、β和γ的取值在[0,1]之间;步骤2.2,代价聚合:利用左图像建立带有权重的无向图G(V,E),其中,无向图G的节点V是左图像中的像素点,无向图G的边E是其相邻节点间的无序二元组合,边的权重为两个相邻节点之间的像素灰度梯度;利用右图像建立带有权重的无向图G’(V’,E’),其中,无向图G’的节点V’是右图像中的像素点,无向图G’的边E’是其相邻节点间的无序二元组合,边的权重为两个相邻节点之间的像素灰度梯度;采用Krustal算法将无向图G和G’整合为有向的最小生成树,然后,按照下式更新左图像中每个像素点的匹配代价:C′(p,d)=S(p,pv)C(pv,d)-[1-S2(p,pv)]C(p,d)(2)其中,C′(p,d)表示像素点p在视差为d时的新的匹配代价,pv表示最小生成树中像素点p对应节点的父节点所对应的像素点,C(pv,d)表示像素点pv在视差为d时的多特征融合匹配代价,S(p,pv)表示像素点p对应节点和其父节点之间的权重,w(p,pv)为像素点p和像素点pv的像素灰度梯度,σ为高斯权重,取值[0,3]之间;步骤2.3,计算视差图:对于左图像中每个像素点,计算多个视差的匹配代价值C′(p,d),其中,d=1,…,D,D是提前设定值,取值[24,64]之间;然后,取使匹配代价C′(p,d)的值达到最小的视差d,并把这个最小视差作为该像素点的视差值;所有像素点的视差值构成视差图;步骤2.4:精化左图像的视差图:采用Sobel边缘检测算法对步骤2.3得到的视差图进行边缘检测,对于检测得到的每个边缘点,用与其相邻的匹配代价值最小的像素位置处的视差值代替该边缘点位置处的视差值,得到增强后的视差图;然后,再按照下式对增强后的视差图中的每一个像素点进行亚像素增强:其中,D*(p)表示像素点p的亚像素级的视差值,D(p)表示增强后的视差图中像素点p处的视差值,C(p,d+1)表示像素点p在视差为D(p)+1时的多特征融合匹配代价值,C(p,D(p)-1)表示像素点p在视差为D(p)-1时的多特征融合匹配代价值,C(p,D(p))表示像素点p在视差为D(p)时的多特征融合匹配代价值;步骤3,获取点云:对于步骤2得到的左图像视差图中每一个像素点,通过下式将它的二维坐标映射到三维空间:其中,(x,y,z)表示像素点p在三维空间中的坐标,B表示双目相机的基线距,(up,vp)表示像素点p在左相机像平面上的二维坐标,(u0,v0)表示左相机的光心偏移量,f表示左相机的焦距;将左图像视差图中的所有像素点均按上式从二维本文档来自技高网
...

【技术保护点】
1.一种基于双目相机的水下点云获取方法,其特征在于步骤如下:/n步骤1,标定水下双目相机:首先,利用双目相机的左右相机同时拍摄得到若干组水下标定图像,令拍摄得到的图像中的棋盘格板所占像素比例大于30%、标定板和相机之间的倾斜角度小于30度、图像包含标定板上的所有角点;然后,将这些图像导入Matlab标定工具包,计算左右相机各自的内参数和左右相机之间的外参数;再利用Matlab标定工具包对双目相机拍摄的所有图像进行校正,包括利用得到的内参数中的畸变参数对图像进行校正,使得图像无畸变,利用外参数中的旋转平移矩阵来旋转图像,使得双目相机中左右相机光轴平行、像平面处于共面;/n步骤2,立体匹配:/n步骤2.1:对于校正后的双目相机拍摄的左图像中每一个像素点,计算其多特征融合的匹配代价值,函数如下:/n

【技术特征摘要】
1.一种基于双目相机的水下点云获取方法,其特征在于步骤如下:
步骤1,标定水下双目相机:首先,利用双目相机的左右相机同时拍摄得到若干组水下标定图像,令拍摄得到的图像中的棋盘格板所占像素比例大于30%、标定板和相机之间的倾斜角度小于30度、图像包含标定板上的所有角点;然后,将这些图像导入Matlab标定工具包,计算左右相机各自的内参数和左右相机之间的外参数;再利用Matlab标定工具包对双目相机拍摄的所有图像进行校正,包括利用得到的内参数中的畸变参数对图像进行校正,使得图像无畸变,利用外参数中的旋转平移矩阵来旋转图像,使得双目相机中左右相机光轴平行、像平面处于共面;
步骤2,立体匹配:
步骤2.1:对于校正后的双目相机拍摄的左图像中每一个像素点,计算其多特征融合的匹配代价值,函数如下:



其中,C(p,d)表示像素点p在视差为d时的多特征融合匹配代价,p为像素点序号,p=1,…,P,P为图像中的像素点总数,CAD(p,d)表示像素点p在视差为d时的基于图像灰度的匹配代价值,按照计算得到,i表示图像的R通道或G通道或B通道,Ii(p)表示左图像中像素点p的i通道的像素灰度值,I′i(p+d)表示右图像中像素点p沿对极线平移d后的i通道的像素灰度值;Ccensus(p,d)表示像素点p在视差为d时的基于Census变换的匹配代价值,按照计算得到,Census(p)表示对左图像进行Census变换后像素点p处的比特串,Census(p+d)表示右图像进行Census变换后像素点p沿对极线平移d后的像素比特串;Cgrad(p,d)表示像素点p在视差为d时的梯度匹配代价值,按照计算得到,为横向梯度算子,代表该像素点处的梯度运算,为竖向梯度算子;λAD表示灰度代价函数参数,λcensus表示Census变换代价函数参数,λgrad表示梯度代价函数参数,λAD、λcensus和λgrad的取值在[0,3]之间,α表示灰度代价幅值参数,β表示Census变换代价幅值参数,γ表示梯度代价幅值参数,α、β和γ的取值在[0,1]之间;
步骤2.2,代价聚合:利用左图像建立带有权重的无向图G(V,E),其中,无向图G的节点V是左图像中的像素点,无向图G的边E是其相邻节点间的无序二元组合,边的权重为两个相邻节点之间的像素灰度梯度;利用右图像建立带有权重的无向图G’(V’,E’),其中,无向图G’的节点V’是右图像中的像素点,无向图G’的边E’是其相邻节点间的无序二元组合,边的权重为两个相邻节点之间的像素灰度梯度;
采用Kru...

【专利技术属性】
技术研发人员:高剑封磊梁晓敏何耀祯黄冠边琛益白红丽
申请(专利权)人:西北工业大学
类型:发明
国别省市:陕西;61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1