APP下载

一种基于孪生网络的高鲁棒性实时单目标船舶跟踪方法

2020-01-14张云飞黄润辉单云霄周晓梅

舰船科学技术 2019年12期
关键词:船舶分类目标

张云飞,黄润辉,单云霄,周晓梅

(1.珠海云洲智能科技有限公司,广东 珠海 519080;2.中山大学数据科学与计算机学院,广东 广州 510275)

0 引 言

近年来,越来越多的海事平台被用于海上运输,生态监测,海洋安全等场景,海洋的探索受到广泛关注[1-2]。为了平台的安全,视觉目标跟踪技术被广泛用于跟踪潜在的感兴趣目标,例如船舶[3],浮标等。但是,在复杂环境中,并不容易完成准确稳定的跟踪任务。因此,开发用于跟踪船舶的视觉跟踪算法必须具有足够强的场景适应能力。

开发船舶视觉跟踪算法存在一些挑战。与地面车辆不同,船舶漂浮在水面上,其运动很复杂,无法准确预测。此外,海洋环境对天气和光照敏感。大海经常遭遇有雾或多雨等恶劣天气,海风会加剧船的摇晃。因此,由于船舶的不稳定运动,相邻帧图片中的目标状态可能有较大差别。此外,图像的质量可能受到水面反射的太阳光的影响。

针对海上视觉目标跟踪问题,研究人员也提出几种解决方法。Yang Z 等[4]提出了一种基于非平稳平台的船舶视觉检测方法。利用基于DCT 的特征向量作为输入[5],采用高斯混合模型(GMM)对海域进行建模。利用背景相减和前景分割方法实现了船舶检测[6]。滕飞等人[7]提出了一个鲁棒的内河CCTV(闭路电视监控)单船舶跟踪算法。Xiangyu K 等[8]利用红外图像对海天线和小目标进行了探测。首先对海天线进行检测,缩小感兴趣区域,然后采用改进的互小波能量组合算法对小目标进行检测。虽然实验证明该方法比以往的一些方法有更好的效果,但作为一种基于生成的方法,它们只使用目标对象的信息,如RGB 值,而忽略了背景信息,如波浪,只是在检测帧中随机搜索目标。因此,它们不能处理复杂的运动模式和海上常见的光照变化。近年来,基于深度学习的跟踪器在目标跟踪中越来越受欢迎,被广泛应用于地面物体跟踪[9-10],但对海洋环境的研究较少。

本文通过对陆地上表现比较好的Siamese RPN 跟踪模型进行改进,以适应其在海上跟踪场景的应用。模型通过大量的数据训练挖掘到目标不同深度的特征,在不同天气环境下对各种类型的船舶实现了准确高效的跟踪。本模型在采集的海上跟踪数据中,跟踪平均准确率为58%,平均帧率达到了124.21 FPS。

1 概 述

机载合成孔径雷达(SAR)[11]、常规舰载雷达(Lidars)[12-13]、机载光学传感器[14]等多种传感器均可实现对海上目标的跟踪。基于SAR 的跟踪器可以覆盖更大的海域,在全天候条件下连续工作,但图像分辨率有限。雷达和激光雷达可以在极端条件下工作,提供稀疏和短距离信息。对于光学传感器,红外摄像机提供更长的视距,特别是在夜间或低能见度时。然而,红外相机的低分辨率成像和高功耗限制了其应用。相比之下,可见光图像不仅拥有高分辨率,而且具有更丰富的颜色和纹理信息。本文采用可见光图像进行船舶跟踪算法研究,具有成本低、安装方便、功耗低等优点,能在海洋目标跟踪领域更为普及。

现阶段单目标跟踪方法可分为生成类跟踪方法和判别类跟踪方法。生成方法在当前帧中构建目标区域的模型,然后在下一帧中用建立的模型搜索最相似的区域。作为传统的跟踪方法,它们被广泛用于跟踪各种目标。对于海洋实践应用的情况,大多数现有的跟踪算法属于生成方法。

1.1 生成类跟踪算法

生成类跟踪方法的具体思路是先在当前帧中建立目标区域的模型,然后在下一帧中对与所建立模型最相似的区域进行搜索。该类方法被广泛应用于多目标跟踪场景。

现有的海洋环境跟踪算法大多属于生成类方法。Wu-ChihHu 等[15]将跟踪问题表示为自适应边界框的计算,当前帧中的边界框对前一帧中的边界框进行自适应,以补偿当前帧与前一帧的背景不匹配,采用模板(区域)匹配方法实现跟踪任务。他们所提出的四连通分量标记方法,降低计算成本并对移除波浪涟漪也起到了作用。这个基于自适应模板块匹配的全搜索算法,可有效去除波纹并跟踪尺度变化的重叠船舶。Fei Teng 等[16]提出一种跟踪内河闭路电视(CCTV)视频序列中一艘船的方法。该方法的先验信息只需给出单船在第一帧的位置。首先,基于压缩感知理论,利用2 个随机测量矩阵提取2 种互补的特征以实现目标船舶的跟踪。另外,为了同时获得跟踪目标的位置和尺度,该方法利用连续帧的时序与空间结构约束构造了随机测量矩阵,可方便地离线获取和记录目标位置。最后使用贝叶斯滤波判断像素块是属于前景还是背景。Szpak 等[17]提出了一种跟踪动态目标的方法。该方法采用背景相减法,采用基于水平集的曲线演化的实时逼近方法,对海洋中运动船舶轮廓线进行标定。但当目标与海洋的对比度比较小时,背景差可能会导致错误检测。需要注意的是,基于水平集的系统需要先验形状知识,这在大多数情况下是难以实现的。Duncan 等[18]意识到传统的基于水平集的方法存在问题,他们将目标轮廓提取为跟踪图像中的感兴趣对象,探索将船舶形状的先验知识分解到水平集分割中以提高分割结果的可能性,使得图像中目标受损也能正常跟踪。

虽然生成方法在上述大多数情况下都能正常工作,但计算成本较高,单帧处理时间较长,不能实现实时的视频追踪,而且这些方法大多只关注目标特征,忽略了目标与背景或其他非目标的相关特征,不足以应对海洋多变的天气状况。

1.2 判别类跟踪算法

与生成方法不同,判别类跟踪方法是利用具有学习能力的分类器进行学习和跟踪,可以利用图像中目标和背景信息以及其他可用的相关信息对分类器进行训练。因此,判别类跟踪方法的跟踪性能普遍优于生成类跟踪方法。近年来,许多判别类方法被用于检测或跟踪地面上的物体,如车辆[19-20]、行人[21]等,尤其是深度学习方法,随着大数据时代的到来,神经网络的优势逐渐显现出来,从而成为主流方法,现阶段跟踪性能较好的跟踪方法大多数基于深度学习。但只有比较少的方法关注海洋环境的应用。

Bousetouane 等[22]提出了一种基于卷积神经网络(CNN)的视频监控系统小目标检测模型。该方法结合手工设计的特征和深度网络学习得到的特征,从而实现船舶的检测和分类。候选目标边界框的深度CNN 特征通过微调VGG16 网络的卷积层的前向传播来计算获得。最后使用CNN 特征和具有线性内核的支持向量机分类器进行细粒度分类以进行对象验证。实验结果表明,该模型在船舶检测分类上的性能优于Fast-R-CNN[23]。Leclerc 等[24]部署了一个基于Inception[25]和ResNet 架构[26]的预训练CNN 进行微调以实现船舶分类。虽然实验证明分类精度得到了显著提高,但没有实现对跟踪性能的评估。

目前基于神经网络的船舶检测研究已取得了一定的成果,但应用于海事跟踪的方法却比较少。首先,海洋环境的开源数据集难以用于船舶追踪。现有效果较好的神经网络框架需要大量高质量的数据来支撑其训练(虽然Leclerc 等使用了6 个数据集进行测试,但只有MARVEL 和VAIS 的数据集是开源的。此外,都是野外非常少的与地面交通数据,如KITTI[27],VOT[28])。其次,动态背景下的海上物体特征与陆地上物体特征有较大的不同,将现有的在地面上表现良好的网络直接迁移到海事场景并不能得到较好的跟踪效果。

2 方法介绍

对基于孪生网络和区域推荐网络的海上跟踪模型SiamRPN[29]进行改进,以适应海事跟踪场景,如图1所示。

2.1 孪生网络

孪生网络中的特征提取模块为改进后的AlexNet,如图1 所示。本专利去掉了AlexNet 中的填充,并修改了卷积层中的深度,以适应设定的场景。孪生网络有2 个分支:模板分支和检测分支。这2 个分支分别实现模板帧和检测帧的特征提取,分别用φ(z)和φ(x)表示,z 表示模板帧,x 表示检测帧。

2.2 区域推荐网络

与孪生网络对应,区域推荐网络也有2 个分支:分类分支和回归分支。分类分支判断锚点框属于目标还是背景,对应的回归分支计算锚点框的位置偏移量。设锚点框的数目为k,分类分支的输出大小为2k,回归分支的输出为4k。φ(z)和φ(x)分别输入区域推荐网络计算对应的分类和回归值。

定义锚点框的表达式为:

从计算得到的回归框中先筛选出置信度最高的K 个候选框,再加入大小形变等约束筛选出最优的目标边界框。

2.3 损失函数

本模型的输出包括分类结果和回归结果,因此损失函数由两部分组成。首先,分类损失的计算方法如下式:其中:yi为分类的标签;Si为分类正确的概率。

图 1 跟踪器概览图Fig.1 An overview of our proposed tracker

对于回归分支,设预测框表示为(Ax,Ay,Aw,Ah),对应的真值框表示为(Gx,Gy,Gw,Gh),先对其进行归一化:

回归损失的计算公式如下:

其中,smoothL1函数的计算方法如下:

总损失函数可表示为:

其中,γ 为超参数,用于平衡分类和回归损失。

2.4 候选框选择

为从K 个候选框中选出最优的目标边界框,采用2 种策略。第1 个策略是加入历史航行轨迹作为约束。考虑到目标运动具有连续性,选用了历史轨迹的前5 帧采用最小二乘法预测目标在检测帧的位置,其中的距离计算选用的是曼哈顿距离。

其中,pospredicted为使用历史轨迹预测的目标位置,pos 为神经网络预测的目标位置,Distance(pos,pospre-dicted)表示2 个预测点之间的曼哈顿距离。第2 个策略是考虑目标的大小形状变化。在视频流中,目标可认为在相邻两帧中的大小形状不会有太大变化,并对与前一帧大小变化较大的预测框进行惩罚:

其中:k 为人工设置的超参数,r 为前一帧目标框的宽高比,r'为当前预测帧的候选框宽高比;s 和s'分别为前一帧和当前帧目标框的面积。本网络使用Softmax 函数计算每个候选框为目标框的置信度Score。加入约束后,目标框根据Score 值大小重新排序:

其中:size_influence 和distance_influence 为人工设置的超参数。对重新排序后的候选框,再采用非极大值抑制算法合并重复候选框,最后选择置信度最高的候选框作为当前目标框。

3 实验

3.1 数据集

由于船舶跟踪实验需要船舶在海面上航行的视频流数据,但是此场景下的公开数据集很少,而神经网络的训练和测试需要大量的视频流数据,因此到珠海九洲港附近海域采集船舶视频流数据用于网络的训练。本文将采集的视频根据跟踪目标进行剪辑、分类、整理后,共获得260 多个视频段,共计有目标的图像有54 000 多张。为了探索船舶类型对跟踪效果的影响,把数据集根据船型,货船、渔船、客船和快艇,分为4 类(如图2 所示),再根据天气状况分为晴天、阴天、雨天、雾天4 类,分别探索船舶类型和多种天气情况对海上船舶跟踪的影响。

图 2 数据集中包含4 种不同类型的船舶Fig.2 The dataset contains four different types of ships

为扩大训练的数据集,获得更多的训练数据,本文使用数据增强的方法。在数据驱动的深度学习领域中,数据增强能有效增广数据集,使得深度学习模型获得更多的数据用于训练,提高模型的泛化能力。常用的数据增强方法可以分为两大类:基于空间的方法和基于颜色的方法。基于空间的方法有平移、旋转、翻转、裁剪、缩放等;而基于颜色的有调整图像的饱和度、亮度等。另外,为了加强模型对噪声的鲁棒性,也会在训练数据集上加入噪声,例如高斯噪声。本文主要采用了基于空间的数据增强方法,平移、旋转、翻转、裁剪和缩放这5 个方法。

3.2 评价指标

为衡量分析本专利所提出方法的性能,采用精确度、召回率、F 值和帧率作为本次实验的性能衡量指标,具体计算方法如下:

设Ωt为目标在t 时刻预测框与真值框的交并集,AtG表示在t 时刻目标的真值框,AtT(θt),θt表示在t 时刻的预测置信度,τθ是分类阈值,Ng真值框不为空的帧数,Nt为检测过程中预测框不为空的帧数,N 为网络预测次数,PT(im(i))为编号为i 的检测帧im 的处理时间。4 个衡量指标的计算公式如下:

3.3 实验结果

分析实验结果可得,本文提出的海上跟踪模型可达到5 8%的平均跟踪准确率,运行帧率达到了124.21FPS,能实现海上船舶实时准确跟踪。在本实验中,采用原始的AlexNet 和vgg16 作为特征提取模块进行实验。结果表明,改进后的AlexNet 的跟踪准确率相对于原模型有3%的提升,也比vgg16 高1%,而且取得了124.21 的高帧率。

为验证本模型在不同天气环境下对不同船舶跟踪的鲁棒性,根据天气情况和船舶类型设置实验。结果如表2~表4 所示。

由表2 和表3 可以看出,在恶劣天气条件下,跟踪器的平均精度达到56%,平均召回率为53%。其中雾天气对跟踪效果影响较大,因为它模糊了目标的大部分特征,对于不同类型的船舶,外观和速度将影响跟踪结果。通常,客船彼此之间具有更高的相似性,并且尺寸非常接近。此外,客船有固定的路线,以便顺利运行,因此客船的跟踪效果较好。相比之下,快艇的跟踪性能较差。快艇具有小尺寸和高速度,并且驾驶员随机地改变其路线,因此其位置偏移和外观变化是显著的,这对跟踪具有负面影响。在表4 中,F 值集成了精度和召回率,以证明所提出的跟踪器的优良性能。图3 为跟踪效果展示,分别截取了视频中的第1,10 和20 帧。

表 1 不同CNN 下跟踪模型性能效果Tab.1 Tracking model performance under different CNNs

表 2 不同天气和船舶类型数据集上的准确率Tab.2 Accuracy of our model in data sets of different weather and ship types

表 3 不同天气和船舶类型数据集上的召回率Tab.3 Recall of our model in data sets of different weather and ship types

表 4 不同天气和船舶类型数据集上的F 值Tab.4 F-measure of our model on different weather and ship type data sets

图 3 跟踪效果展示Fig.3 Tracking performancedisplay

4 结 语

本文将深度学习方法应用于船舶跟踪,提出使用孪生网络和区域推荐网络的海上船舶跟踪方法。为进一步提高跟踪性能,参照AlexNet 网络对孪生网络的CNN 模块进行修改,并提出一种基于历史轨迹的自适应搜索区域提取方法,以适应不同的运动场景。利用数据集对所提出的跟踪器进行评估。结果表明,在使用Intel Xeon CPU E5-2620,GTX TITAN 的PC 机上可以达到58%的平均精度和124.21 FPS。

猜你喜欢

船舶分类目标
大数据分析的船舶航迹拟合研究
《船舶》2022 年度征订启事
船舶自动识别系统对船舶救助的影响
BOG压缩机在小型LNG船舶上的应用
按需分类
教你一招:数的分类
说说分类那些事
给塑料分分类吧
新目标七年级(下)Unit 3练习(一)
新目标七年级(下)Unit 4练习(一)