基于光度立体法和激光三角法的水下高精度三维重建方法

文档序号:25526230发布日期:2021-06-18 20:15阅读:520来源:国知局
基于光度立体法和激光三角法的水下高精度三维重建方法

本发明属于计算机视觉水下三维重建技术领域,尤其涉及一种基于光度立体法和激光三角法的水下高精度三维重建方法。



背景技术:

三维重建是指对现实世界中的物体建立计算机能够表示和处理的数学模型,是计算机表达现实世界的重要技术。通过三维重建,计算机获得真实场景中物体的三维信息,能够在多方面展示物体的特性。因此,三维重建技术可应用于多个领域,例如:文化遗产保护、临床医学、自动驾驶、地形勘探、装备制造等。

光度立体是一种根据物体表面反射光强变化恢复三维结构的技术。相比于结构光法、三角测距法、阴影恢复形状法等方法,光度立体法的重建精度更高,能够恢复连续表面的细节变化。然而光度立体法应用于水下三维重建时会产生畸变。在激光三角法中,线激光器发出结构光照射在被测物体上,通过计算图像中激光线上的像素点的深度值,就能够恢复出物体的三维结构。在水下环境中,复杂的水质对光源产生影响从而导致传统光度立体法的精度降低,导致三维重建结果与实际物体高度存在误差。水下线激光三角法虽然可以获得准确的三维物体点信息,但重建结果稀疏。综上,水下光度立体技术受限于水质的要求,现有的光度立体技术无法应用到复杂多变的水质中三维重建,需要提出一种新型水下三维重建方法。



技术实现要素:

本发明针对水下光度立体法三维重建误差大的局限性,提供了一种基于光度立体法和激光三角法的水下高精度三维重建方法。依靠本发明提供的装置及方法可以对水下环境的物体进行三维重建,重建出误差小、表面细节丰富的三维模型。

1、基于光度立体法和激光三角法的水下高精度三维重建方法,其特征是包括以下步骤:

0)设计水下高精度三维重建装置

该装置包括一个圆形的框架,该框架上固定六个光源灯和两个线激光器,相机位于圆形支撑框架中心的正上方,光源以相机为圆心且环形等间距均匀分布;

以相机世界坐标系为准,光源在xoy平面的分布角度(tilt角)为0°、60°、120°、180°、240°、300°,光源的主轴方向指向相机的光轴,与垂直方向(z轴)的夹角(slant角)为45°;

两个线激光器的光路在xoy平面中相互垂直;框架的正下方是一个物体托盘,用于放置被重建物体;该装置中,相机的成像平面、光源的分布平面、物体的放置平面相对平行;

1)标定相机、设置光源角度、获取激光平面参数

开启相机,调整线激光器的位置,使得垂直激光线和平行激光器的交叉点位于相机成像的正中心;将标定板放于相机的正下方,手动控制标定板的旋转和平移,依次拍摄垂直激光线和水平激光线照射在标定板上的多张图片;通过标定获得相机内参数,再根据两个激光线与标定板的交点坐标得到两个激光平面方程;

2)获取图像

为了避免环境光的干扰,该装置在黑暗环境下进行拍摄,把该装置放入水下环境中,使得相机浸入水中,六个光源灯按照tilt角从0°到300°依次照射,通过相机拍摄六个角度光照下的待重建物体图片;关闭所有光源灯,依次打开两个线激光器,拍摄垂直激光线照射在物体上的图片和水平激光线照射在物体上的图片;

3)水下光度立体法

a.水下成像模型

采用jaffe-mcglamery水下成像模型,水下光源用极坐标角度θs表示tilt角,用表示slant角,定义为单位为表示距离光源1米的辐射度;

x,y,z的值表示反射点的坐标;lk(x,y,z)表示光源到反射点的方向向量,|lk(x,y,z)|表示物体表面点到第k个光源的距离,k=1,...,6,由于不同光源到反射点的距离之差远小于光源到反射的距离,故将不同光源到反射点的距离视为相等,统一以光源到物体的中心点的距离rs作为每一个|lk(x,y,z)|的数值;同理以相机到物体的中心点的距离rc表示相机到物体表面各个反射点到的距离;n(x,y,z)表示物体表面反射点的表面单位法向量,为待求量;c表示水中的衰减系数;γ表示物体表面单位法向量和单位光源矢量的夹角,

则待重建物体表面的入射光强为:

ρ(x,y,z)表示重建物表面反射点的反射率,为待求量,根据朗伯反射规律可得待重建物体反射到相机的光照强度为:

b.水下光度立体模型

该模型以水下成像模型为基础,由水下成像模型与朗伯反射模型结合得到,待重建物体表面上的反射点在第k个光源下的亮度ik为:

i0表示光源的初始光强,即rc表示物体表面反射点到相机的距离;

水下光度立体模型采用传统光度立体方法,假设初始光强i0=1,综上得坐标(x,y,z)在第k束光源下的光照强度ik为:

c.水下相机折射模型

令(xr,yr,zr)为相机坐标系下的真实点坐标,(x,y)为归一化平面(即相机焦距为1时的成像平面)上真实点的坐标,(u,v)为相机焦距所产生物理平面坐标,n为水介质中的折射率,h为相机原点到玻璃界面的距离,则归一化平面上的点(x,y)与相机坐标系下真实点坐标(xr,yr,zr)的关系为:

4)水下激光三角法

通过激光三角法获得激光器产生的激光平面与目标物体相交点的高度,根据步骤3c)构建的水下相机折射模型,能够得到水下待重建物体的三维坐标点信息;令p(xr,yr,zr)表示待重建物体的p点在真实世界中的坐标,p(x,y)表示p点在归一化平面上的坐标;

ax+by+cz+d=0为激光平面方程,经标定而得到,将该激光平面方程与步骤3c)的水下相机折射模型结合,可以得到激光在物体上的投影点在相机坐标系下的真实值(xc,yc,zc):

xc=αx

yc=αy

zc=h+(α-h)δ

其中,α=(ch(δ-1)-d)/(ax+by+cδ);

5)水下光度立体融合方法

根据水下相机折射模型修正折射成像的影响,高精度重建水下目标物体的三维形状;

a.弱透视图像

光线在空气进入水中会发生折射,相比较于空气中的图像,水下拍摄的图像发生畸变,因此水下相机捕获图片不再适用小孔成像模型;传统的光度立体法以相机成像是平行投影为基础,待重建物体像素级高度积分即真实尺度高度积分,然而水下图像的非线性变化会影响光度立体法的效果,使得高度积分过程产生误差,导致像素级高度积分与真实尺度高度积分不一致。

本发明提出使用弱透视投影解决像素级高度和真实高度不一致的问题,根据步骤3c)的水下相机折射模型实现水下图像复原:以表示待重建物体的每一个弱透视成像点,为待重建物体的近似平均深度值,由步骤4)的水下激光三角法得到,xr,yr由步骤3c)的水下光度立体模型得到;根据弱透视成像点计算出符合光度立体高度估算的透视图像pb;

b.水下图像复原

但是,水下目标物体的三维未知,无法通过弱透视投影和透视投影来获得水下弱透视复原图像pb;根据步骤4中的水下激光三角法求得水下待重建物体的真实三维信息,以步骤5a)得到的近似平均深度为水下图像恢复的标准,求出近似为弱透视投影的水下复原图像ps(xs,ys):

c.水下图像复原之后的光度立体高度重建

假设目标物体上一点pw在世界坐标系下的坐标为(xw,yw,zw),第k个光源在世界坐标系下的坐标为

(rcosθ,rsinθ,d0),则第k个光源到物体点pw的方向为

lk(xw,yw,zw)=(rcosθ-xw,rsinθ-yw,d0)

其中,θ表示tilt角,r表示圆盘半径,d0为光源距离托盘的高度,均为已知量;

根据朗伯反射模型,第k个光源下的物体点pw的亮度ik为:

i0表示光源的初始光强,lk(xw,yw,zw)表示第k个光源方向向量;|lk(xw,yw,zw)|含义同上;n(xw,yw,zw)表示物体表面反射点的单位法向量,为待求量;ρ(xw,yw,zw)表示重建物表面反射点的反射率,为待求量;

已知i0,lk(xw,yw,zw),可通过多于三张的图片来求得n(xw,yw,zw)、ρ(xw,yw,zw),从而恢复物体的表面高度;

6)水下光度立体高度矫正

因本发明需要在步骤5b)过程得到的水下复原图像上进行光度立体高度重建,相比较于空气中的经典光度立体法,水下光度立体法由于成像设备、光源条件限制产生低频偏差;令hf表示低频偏差,误差可以通过以下公式求得:

hf(x,y)=ax2+by2+cx+dy+e

其中,a,b,c,d,e为待定误差系数,根据最小二乘法拟合曲线求出误差系数,得到低频偏差hf(x,y);

最后,将步骤5得到的传统的光度立体法求出的物体表面高度结果减去估计的误差hf(x,y),并转换到真实尺度,得到矫正后物体表面高度重建结果。

本发明提供了一种水下光度立体法和水下激光三角法融合的装置及方法,具有以下良好技术效果:

(1)可针对海底局部地表或者海底小目标物体进行高分辨率高精度三维重建;

(2)以水下相机折射成像模型为依据实现水下光度立体法和水下激光三角法;

(3)使用激光来获取物体表面真实尺度,配合水下光度立体技术来获取待重建物体的真实尺度和重建模型。

依靠本发明提供的装置及方法,可以对海底局部地表或海底小目标物体进行三维成像,重建出高精度、表面重建细节丰富的三维表面模型,其效果如图3、4所示。

附图说明

图1是本发明的方法流程图。

图2是本发明使用的装置示意图。

其中,1.卤素灯光源一,2.卤素灯光源二,3.卤素灯光源三,4.卤素灯光源四,5.卤素灯光源五,6.线激光器一,7.卤素灯光源六,8.线激光器二,9.相机支撑架,10.相机。

图3是本发明进行实际水下高精度三维重建的目标物体图。

图4是本发明对图3所示的目标物体进行水下高精度三维重建的效果图。

具体实施方式

如图2所示,基于光度立体法和激光三角法的水下高精度三维重建装置,主体是一个圆形的支撑框架,该框架上固定六个光源灯(卤素灯光源一1至卤素灯光源六7,和两个线激光器:线激光器一6、线激光器二8。相机10位于圆形支撑框架中心的正上方,由相机支撑架9进行支撑,光源以相机10为圆心且环形等间距均匀分布。以相机10世界坐标系为准,光源在xoy平面的分布角度(tilt角)为0°、60°、120°、180°、240°、300°,光源的主轴方向指向相机10的光轴,与垂直方向(z轴)的夹角(slant角)为45°;两个线激光器的光路在xoy平面中相互垂直。框架的正下方是一个正方形的物体托盘,用于放置被重建物体。相机的成像平面、光源的分布平面、物体的放置平面相对平行。

如图1所示,基于光度立体法和激光三角法的水下高精度三维重建方法采用以下技术方案:

1)标定相机、设置光源角度、获取激光平面参数

开启相机,调整线激光器的位置,使得垂直激光线和平行激光器的交叉点位于相机成像的正中心;将标定板放于相机的正下方,手动控制标定板的旋转和平移,依次拍摄垂直激光线和水平激光线照射在标定板上的多张图片;通过标定获得相机内参数,再根据两个激光线与标定板的交点坐标得到两个激光平面方程;

2)获取图像

为了避免环境光的干扰,该装置在黑暗环境下进行拍摄,把该装置放入水下环境中,使得相机浸入水中,六个光源灯按照tilt角从0°到300°依次照射,通过相机拍摄六个角度光照下的待重建物体图片;关闭所有光源灯,依次打开两个线激光器,拍摄垂直激光线照射在物体上的图片和水平激光线照射在物体上的图片;

3)水下光度立体法

a.水下成像模型

采用jaffe-mcglamery水下成像模型,水下光源用极坐标角度θs表示tilt角,用表示slant角,定义为单位为表示距离光源1米的辐射度;

x,y,z的值表示反射点的坐标;lk(x,y,z)表示光源到反射点的方向向量,|lk(x,y,z)|表示物体表面点到第k个光源的距离,k=1,...,6,由于不同光源到反射点的距离之差远小于光源到反射的距离,故将不同光源到反射点的距离视为相等,统一以光源到物体的中心点的距离rs作为每一个|lk(x,y,z)|的数值;同理以相机到物体的中心点的距离rc表示相机到物体表面各个反射点到的距离;n(x,y,z)表示物体表面反射点的表面单位法向量,为待求量;c表示水中的衰减系数;γ表示物体表面单位法向量和单位光源矢量的夹角,

则待重建物体表面的入射光强为:

ρ(x,y,z)表示重建物表面反射点的反射率,为待求量,根据朗伯反射规律可得待重建物体反射到相机的光照强度为:

b.水下光度立体模型

该模型以水下成像模型为基础,由水下成像模型与朗伯反射模型结合得到,待重建物体表面上的反射点在第k个光源下的亮度ik为:

i0表示光源的初始光强,即rc表示物体表面反射点到相机的距离;

水下光度立体模型采用传统光度立体方法,假设初始光强i0=1,综上得坐标(x,y,z)在第k束光源下的光照强度ik为:

c.水下相机折射模型

本发明的相机密封在防水壳内,当光线穿过防水壳的玻璃平面时,发生了两次折射,分别是:“水和玻璃”界面、“玻璃和空气”界面,本发明采用的防水壳玻璃厚度较小,因此不考虑玻璃的折射,该折射模型只考虑水和空气的折射。

令(xr,yr,zr)为相机坐标系下的真实点坐标,(x,y)为归一化平面(即相机焦距为1时的成像平面)上真实点的坐标,(u,v)为相机焦距所产生物理平面坐标,n为水介质中的折射率,h为相机原点到玻璃界面的距离,则归一化平面上的点(x,y)与相机坐标系下真实点坐标(xr,yr,zr)的关系为:

4)水下激光三角法

通过激光三角法获得激光器产生的激光平面与目标物体相交点的高度,根据步骤3c)构建的水下相机折射模型,能够得到水下待重建物体的三维坐标点信息;令p(xr,yr,zr)表示待重建物体的p点在真实世界中的坐标,p(x,y)表示p点在归一化平面上的坐标;

ax+by+cz+d=0为激光平面方程,经标定而得到,根据该激光平面方程和步骤3c)的水下相机折射模型可以得到激光在物体上的投影点在相机坐标系下的真实值(xc,yc,zc):

xc=αx

yc=αy

zc=h+(α-h)δ

其中,α=(ch(δ-1)-d)/(ax+by+cδ);

5)水下光度立体融合方法

根据水下相机折射模型修正折射成像的影响,高精度重建水下目标物体的三维形状,(传统的光度立体假设相机为平行投影,即像素级的高度等于真实高度;但是,在现实中物体表面有深度变化,相同间距的像素不能表示相同间距的真实尺度间隔,因此需要矫正得到准确的结果)。

a.弱透视图像

光线在空气进入水中会发生折射,相比较于空气中的图像,水下拍摄的图像发生畸变,因此水下相机捕获图片不再适用小孔成像模型;传统的光度立体法以相机成像是平行投影为基础,待重建物体像素级高度积分即真实尺度高度积分,然而水下图像的非线性变化会影响光度立体法的效果,使得高度积分过程产生误差,导致像素级高度积分与真实尺度高度积分不一致。

本发明提出使用弱透视投影解决像素级高度和真实高度不一致的问题,根据步骤3c)的水下相机折射模型实现水下图像复原:以表示待重建物体的每一个弱透视成像点,为待重建物体的近似平均深度值,由步骤4)的水下激光三角法得到,xr,yr由步骤3c)的水下光度立体模型得到;根据弱透视成像点计算出符合光度立体高度估算的透视图像pb;

b.水下图像复原

但是,水下目标物体的三维未知,无法通过弱透视投影和透视投影来获得水下弱透视复原图像pb;根据步骤4中的水下激光三角法求得水下待重建物体的真实三维信息,以步骤5a)得到的近似平均深度为水下图像恢复的标准,求出近似为弱透视投影的水下复原图像ps(xs,ys):

c.水下图像复原之后的光度立体高度重建

假设目标物体上一点pw在世界坐标系下的坐标为(xw,yw,zw),第k个光源在世界坐标系下的坐标为(rcosθ,rsinθ,d0),则第k个光源到物体点pw的方向为

lk(x,y,z)=(rcosθ-x,rsinθ-y,d0)

其中,θ表示tilt角,r表示圆盘半径,d0为光源距离托盘的高度,均为已知量;

根据朗伯反射模型,第k个光源下的物体点pw的亮度ik为:

i0表示光源的初始光强,lk(xw,yw,zw)表示第k个光源方向向量;|lk(x,y,z)|含义同上;n(xw,yw,zw)表示物体表面反射点的单位法向量,为待求量;ρ(xw,yw,zw)表示重建物表面反射点的反射率,为待求量;

已知i0,lk(xw,yw,zw),可通过多于三张的图片来求得n(xw,yw,zw)、ρ(xw,yw,zw),从而恢复物体的表面高度。

还包括步骤6)水下光度立体高度矫正

因本发明需要在步骤5b)过程得到的水下复原图像上进行光度立体高度重建,相比较于空气中的经典光度立体法,水下光度立体法由于成像设备、光源条件限制产生低频偏差;令hf表示低频偏差,误差可以通过以下公式求得:

hf(x,y)=ax2+by2+cx+dy+e

其中,a,b,c,d,e为待定误差系数,根据最小二乘法拟合曲线求出误差系数,得到低频偏差hf(x,y);最后,将步骤5得到的传统的光度立体法求出的物体表面高度结果减去估计的误差hf(x,y),并转换到真实尺度,得到矫正后物体表面高度重建结果。

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