基于海天线检测的无人艇晃动条件下视频拼接方法

2019-01-07 05:10崔爱莲严传续
中国测试 2018年12期
关键词:光轴霍夫船体

金 毅,崔爱莲,严传续,陶 卫,赵 辉

(1.上海交通大学电子信息与电气工程学院,上海 200240; 2.白城兵器试验中心,吉林 白城 137001;3.上海中船船舶设计技术国家工程研究中心有限公司,上海 200011)

0 引 言

无人水面艇(USV)作为海上最典型的无人智能平台系统,正受到各海洋强国的重视。无人艇无人驾驶的实现需要艇上各传感器系统的协同工作,其中光学传感器作为最直观反应无人艇所处环境的传感器有着重要的作用和地位。为更直观判断无人艇周边环境,方便操作人员观察,需要提供大视场的图像信息同时解决无人艇艇身的晃动问题。

普通无人艇配置的可见光光学设备通常为水平方向全自由度的远焦镜头摄像机或超广角乃至全景镜头摄像机。然而高自由度的相机需要人为干预,增加人工成本,广角、全景镜头获得的图像需要考虑畸变,接近图片边缘的目标畸变严重,修正畸变会造成部分信息丢失[1]。为了实现整体超过180°的视场,本文研究3台布置于无人艇上的相机图像的无失真拼接方法。传统的图像拼接通常采用特征点匹配,图像融合的方法[2],其优点是鲁棒性强,拼接效果真实,符合人眼观察习惯;但理论复杂,计算量大,实时性差,因此不适于无人艇的硬件环境。本文采用实时性好的单应性映射方法拼接图像以获取大视场视觉信息[3~4]。不同于传统的单应性图像拼接工程需求,无人艇上的图像拼接需要解决艇身不可避免的晃动问题。本文同时对图像中的海天线进行检测,并利用海天线方程实时修正图像的晃动。修正后的图像采用静态单映性投影变换进行拼接。

1 无人艇在真实海况下的成像

船体为刚性目标,因海浪波动、运行速度变化、转向等引起的晃动在空间坐标系中可分解为x,y,z3个方向上的分量,如图1所示。船体沿各方向转动均会引起相机光轴指向的变化从而影响成像。现设船体以各方向为轴产生的角度变化分量分别为θx,θy,θz;艇上搭载的一路相机光轴与xy平面平行,光轴与y轴所成夹角为θa。其中θz分量为无人艇主动改变行进方向所产生,故利用艇上搭载的加速度计可进行直接求解。

图1 船体晃动分解示意图

最终需要根据艇身以各坐标轴为轴产生转动的情况求解相机光轴发生的角度变化。为方便计算,将空间坐标系转换为球坐标系。艇身以某坐标轴为轴发生姿态变化时,光轴位置的变化可视为其与球面交点的空间位置变化。如图2所示,求解船体以z方向为轴产生的晃动θz对相机光轴带来的影响。

图2 绕z轴旋转示意图

图中,光轴与球面交点由D点变化到了D′点,∠DOD′=θz。 设D,D′坐 标 分 别 为D(x,y,z),D′(x′,y′,z′),在球坐标系中可计算得到:

同理可得到θx,θy分量对光轴坐标的影响:

设某相机光轴上一点P(x,y,z)绕x,y,z轴分别旋转θx,θy,θz角度后,移动到了P′(x′,y′,z′)点。综合式(1)~式(3)可计算得到:

2 图像拼接

传统无人艇配备的光学设备一般为单目球形相机,自由度为360°×270°,仅能起到监控作用。无人艇最终要实现无人驾驶,光学传感器提供大视场是必要的。本文采用三路固定相机实时拼接获取无人艇前方180°视场图像。为提高实时性,放弃鲁棒性强的基于特征匹配的图像拼接方法[5-6],采用基于单应性矩阵投影的图像拼接方法[3-4,7]。

2.1 图像单应性矩阵变换原理

平面投影方式是将其中一张图片所在的平面作为参考平面,把其他图像重映射到这个基准平面。

将空间某点坐标由相机1映射到相机2可遵从如下公式[8]:

此处H即为单应性矩阵,为得到点在相机平面的坐标变换可通过如下推导[9]:

如果给定一个单应矩阵H={hij},乘以系数a得到的系数矩阵aH与矩阵H作用相同,因为新单应无非把齐次点x1变成了齐次点ax2,而ax2与x2对应的图像上的点相同。所以一个单应中只有8个自由元素,一般令右下角的那个元素h33=1来归一化。

求解归一化后的单应性矩阵需要求解8个未知数。假设有两个图像上的点齐次坐标为[x1,y1, 1]T和[x2,y2, 1]T,带入式(4)可得:

变换为等价的矩阵形式:

如果有4对不共线的匹配点对,方程组即可求得唯一解。

2.2 图像映射拼接

图3 平面投影原理图

图4 成像平面空间变化示意图

如图3中所示,需要将两侧的成像平面投影到中间成像平面上。以左侧相机为例,以相机成像焦平面中心点为原点,投影平面法向为y轴,相机固定平面为xy平面建立空间坐标系,如图4所示。船体平稳状态下,相机成像平面记为L,相机光轴与L平面交于P点,OP于y轴夹角为θa,令OP=h,图像两个边界的中点为A、B。船体发生晃动时,相机成像平面变换为L′,相机光轴与L′平面交于P′点,图像两个边界的中点为A′、B′。图像映射的平面记为M。相机光轴与M平面交于P′点,图像两个边界的中点为A′、B′。M平面内选取 4 个不共线的点X1,X2,X3,X4,4 点在L′平面上的像点分别为X1′,X2′,X3′,X4′。将X1 与X1′,X2 与X2′构成点对,以此类推即可得到4组不共线的匹配点对。本文采用的相机物理分辨率为800×600,镜头视场角为66.9°×52.7°,相机光轴与y轴夹角为θa=60°。以此展开计算以减少不确定参数。计算过程如下:

P点空间坐标为(-0.866h,0.5h,0)。设相机根据公式(4),可得p′的空间坐标为:

将p′坐标记为(xp′,yp′,zp′),则平面L′方程为

设X1 坐标为 (x1,y1,z1),X1′为直线OX1 与L′平面交点。X1′坐标为

同理可得到X2′,X3′,X4′的坐标。

保证图像映射至M平面后尺寸不变,令映射后的图像与中间相机图像重合区域为5°以留有一定的容错率。因匹配的特征点对可任意选取,获取到θx,θy,θz信息后带入式 (9)~式 (11)可算得X1′坐标。以点X1与X1′为例,X1在M平面图像坐标系中的坐标可根据相机物理分辨率、镜头视场角和X1、A′、B′坐标计算得到。同理可得到X1′在图像坐标系中的坐标。

2.3 晃动图像修正

2.3.1 概率霍夫检测原理

直线检测仅需要图像中物体的大致轮廓,为了提高时效性,一般会先对图像做预处理。本文采用Canny边缘检测算子对图像进行边缘提取并二值化,与其他边缘检测算法相比,该算法具有低错误率、高定位性以及良好的抗噪性[10]。

2.2 单因素分析结果 nSLN转移与阳性SLN数目(Z=-1.991,P=0.047)、原发肿瘤直径(Z=-1.991,P=0.047)以及神经/脉管等淋巴结外浸润(χ2=5.630,P=0.018)情况有关;与病理类型、组织学分级、激素受体状态、是否多个病灶、人表皮生长因子受体2(HER-2)以及Ki67表达状况无关。见表1。

二值化后的图片即可通过霍夫变换提取直线。首先引入标准霍夫直线检测,对于直角坐标系中的任意一点(x,y),在极坐标系中表示过该点的任意直线方程为ρ=xcosθ+ysinθ。ρ,θ可认为是一对 Hough空间的变量。在此空间中,每一个直角坐标系下的点(x,y)都映射一条关于ρ,θ的正弦曲线。一条直线能够通过在极坐标下寻找交于一点的曲线数量来检测,如果越多曲线交于一点,就意味着该交点表示的直线由更多的点组成。通过设置相交曲线的数量可控制所检测直线的长度。霍夫直线检测原理如图5所示。

图5 霍夫直线检测原理图

标准霍夫变换本质上是把图像映射到它的参数空间上,它需要计算所有的N个边缘点,这样它的运算量和所需内存空间都会很大。如果在输入图像中只是处理n(n<N)个边缘点,则这n个边缘点的选取是具有一定概率性的,因此该方法被称为概率霍夫变换(probabilistic Hough transform)[11]。该方法还有一个重要的特点就是能够检测出线端,即能够检测出图像中直线的两个端点,确切地定位图像中的直线。

概率霍夫变换的一般步骤为:

1)随机抽取图像中的一个特征点,即边缘点,如果该点已经被标定为是某一条直线上的点,则继续在剩下的边缘点中随机抽取一个边缘点,直到所有边缘点都抽取完毕为止;

2)对该点进行霍夫变换,并进行累加和计算;

3)选取在霍夫空间内值最大的点,如果该点是大于阈值的,则进行步骤4),否则回到步骤1);

4)根据霍夫变换得到的最大值,从该点出发,沿着直线的方向位移,从而找到直线的两个端点;

2.3.2 海天线提取及图片修正

无人艇理论允许行驶的海况等级为0~3级之间,行驶在2~3级海况水面上时船体便会有明显的晃动,从而使得到的图片内容产生明显的偏移或旋转。这会给操作人员带来不适,同时会对视频拼接带来一定影响。由于判断此类图像是否在晃动情况下获取的基准一般是观察海天线的偏转程度,故本文提出一种基于海天线检测的图像晃动消除方法。

在光学图像中海天线是天空区域向海面区域过渡的由像素梯度极大值点形成的一条分界线,在不考虑海面曲率和光学畸变的情况下海天线是一条直线。若将船体的晃动在空间中分解为x,y,z3个方向上的分量,对海天线进行检测可以消除x,y方向上的晃动分量。再配合艇上对z方向上的信息可较大程度消除船体晃动对图像信息的影响。

国内外已有众多学者提出了海天线的提取算法,Zou等[2]提出了一种基于剪切波变换的海天线检测方法,该方法能够提取边缘的梯度方向信息并进行辨识。王博等[12]提出了一种基于梯度显著性的海天线检测方法,该方法能有效增强海天线的直线特征并抑制各种干扰因素。徐良玉等[11]提出的基于结构森林算子和Hough变换的海天线检测方法可以有效地剔除云层、浪纹等对复杂海天背景下海天线检测的边缘干扰,实现高鲁棒性、高准确性。以上算法在各自应用背景下都取得了一定的效果。本文采用Canny边缘检测算子配合概率Hough变换对图片进行直线检测。并针对海天线特征建立约束条件,计算得到图片中最接近海天线的直线方程。

在实际无人艇获取的图片上进行Canny边缘提取及概率霍夫变换,得到多条线段。通过对3 000帧无人艇获取的环境图片进行霍夫变换处理,经过统计对比,发现海天线具备一定的特征:

1)即使船体存在晃动,艇上光学设备相对艇身不会变动,因此获取的图像也存在一定的偏移范围。在2~3级海况下行驶,图像中海天线与x轴夹角在±8°以内;

2)海天线一般为图像中最明显的直线,通过概率霍夫变换得到的线段至少有两条与海天线共线;

3)光线较强的图像中,由于海浪的影响,霍夫变换会得到大量的干扰线,由于数量大也会有代表海浪的线段共线的情况,此时海天线所在的直线是最上方的直线。

结合上述特征,提出约束条件来提取海天线。在完成概率霍夫变换的图像中计算所有线段所在直线的方程,剔除与水平方向夹角在±8°范围外的直线。取定一条线段所在直线方程F(x),对于另一条线段,其上两端点到F(x)距离均小于等于2个像素,则认为两条线段共线。通过最小二乘法拟合共线线段所在直线的方程。确定阈值L,当图像中找到的直线方程数量小于L时则认为共线线段最多的拟合直线方程代表海天线。当图像中直线方程数量大于等于L时则认为此时图片中存在大量干扰,取直线方程截距绝对值最大的直线作为海天线方程。

前文已介绍了欲修正因船体晃动带来的图像平面变化,需要艇身在空间中3个方向的变化分量θx,θy,θz。若将海天线位置考虑为无穷远,则θx,θy可通过光轴与空间y坐标轴平行的相机图片中的海天线方程计算得到。光轴与y坐标轴平行的相机获得的图片中,海天线与水平方向的夹角即为θy,海天线竖直方向变化的距离可通过简单计算得到θx。同一帧内,各图片因曝光时间不同,进行图片修正时采用的船体晃动角度是不同的。本文将船体帧间间隔产生的各方向转动近似为匀速转动。设光轴与y坐标轴平行的相机帧间间隔为t,光轴与y坐标轴成θa角度的相机帧间间隔为t′。则此相机对应的船 体 各 方 向 转 动 分 量 分 别 为θx′=t′θx/t,θy′=t′θy/t,θz′=t′θz/t。再由公式 (4)计算并进行映射变换,可完成图像晃动的修正。

取一帧内3台相机获取的图片如图6(a)所示。通过标定中间相机获取的图片中海天线位置,与船体平稳状态下的海天线进行比对计算可获取θx,θy的值。由于缺少θz信息,此处设为0。分别带入式(9)~式(11),计算得到单映性矩阵,完成拼接。拼接结果如图6(c)所示。

图6 拼接结果

3 实验验证与结果分析

为验证本文海天线检测方法的有效性,在太湖水域利用某型号无人艇采集海天线场景的光学图像。3台相机分辨率为800×600镜头视场角为66.9°×52.7°,曝光机焦距均为固定值,获得 3 000 帧jpeg格式彩色图片。将图片作为测试样本,将本文方法分别与霍夫直线检测方法、Radon直线检测方法进行性能对比和分析。硬件为Intel core i5 3.3 GHz CPU,4 GB内存。算法实现在Windows10系统环境下,采用python语言配合opencv图像处理包。

当提取的海天线上的点距离真实海天线均在3个像素值以内时,则认为成功提取了海天线。各方法的海天线检测结果如表1所示,根据该结果绘制柱状图如图7所示。图8展示了船体不同姿态,不同光照强度采集的具有代表性的3张图片分别经霍夫直线检测算法、Radon直线检测算法及本文算法提取的海天线效果图。霍夫算法在正常光照情况下表现良好,但在光照强度偏高的条件下,如图8(c),图8(d)中,因水面波浪影响,检测到的干扰直线过多,情况复杂,很难筛选优化。算法平均耗时为11.24 ms,检测率为67.2%。Radon算法主要针对图像梯度信息进行计算,各条件下效果均良好;但由于算法复杂度较高,平均耗时为17.28 ms,检测率为84%。本文算法基于概率霍夫变换进行改进,耗时要明显优于传统霍夫变换。且提取的目标为线段端点,更易进行优化,在光照强度较高的条件下具有良好的鲁棒性。算法平均耗时为8.69 ms,检测率为94.5%。

表1 海天线检测实验结果

图7 实验结果柱状图

图8 海天线检测结果比对

4 结束语

对无人艇上多台相机进行视频拼接,因艇身晃动及各相机获取图片的绝对时间不能严格同步,将导致拼接难度提高。本文提出一种改进的概率霍夫变换海天线提取方法。通过对海天线进行标定,计算相机姿态变化量。同时详细分析了相机姿态变化情况下图像单应性矩阵的计算方法,使用得到的单应性矩阵对图像进行映射拼接,最终得到良好的拼接效果。通过与传统的霍夫直线检测方法及Radon直线检测方法进行对比试验,验证了算法的优越性。

猜你喜欢
光轴霍夫船体
船体行驶过程中的压力监测方法
冰山与气候变化
世界之巅的花园——库肯霍夫
光轴的形态和应用
超大型FPSO火炬塔及船体基座设计
光轴键盘任我选
当之无愧的“冰人”
船体剖面剪流计算中闭室搜索算法
水下爆炸气泡作用下船体总纵强度估算方法
极坐标框架两轴平台光轴稳定算法