在人工智能、互联网、大数据等现代新兴技术的推动下,船舶的智能化水平不断提升[1-3].传统的水面目标检测方法往往基于手工特征[4-5]和支持向量机[6]等分类器对图像内的目标进行识别.近年来,随着卷积神经网络的快速发展,水面目标检测技术得到了广泛的研究.基于卷积神经网络的目标检测方法通常被分为两阶段方法和一阶段方法.两阶段方法首先在图像中提取候选区域,再对候选区域内的目标进行分类和边界框的回归,如Fast R-CNN[7]和Faster R-CNN[8].一阶段方法基于预设锚框直接对目标进行预测,如YOLO[9-11]和SSD[12].齐亮等[13]利用场景窄化方法改进了Faster R-CNN,相比于传统方法大幅提升了船舶目标的识别效率.Lin等[14]将通道注意力机制引入Faster R-CNN,通过抑制冗余特征来提升船舶目标的检测精度.赵蓬辉等[15]将SSD算法应用于水面目标检测,利用异步卷积强化了骨干网络的特征提取能力.段敬雅等[16]采用支持向量机对YOLOv2网络提取的水面目标特征进行分类,有效提升了算法在复杂海况下泛化能力.盛明伟等[17]将空间注意力机制引入了YOLOv3的Darknet53骨干网络,实现了对船舶目标的准确检测.Chen等[18]将生成对抗网络与卷积神经网络相结合,以提升小尺度船舶目标的检测性能.Guo等[19]利用平衡特征金字塔对密集的船舶目标进行检测.徐海祥等[20-21]采用自适应特征融合策略将不同尺度的目标特征进行融合,提高了水面小目标的检测精度.YOLOv3[11]算法能够对检测的精度与速度进行良好的平衡,在水面目标的检测中应用较为广泛.YOLOv3在头部网络中通过串联卷积块来处理目标的分类和定位.然而,串联卷积块间无法进行跨越式的信息交互.此外,为丰富浅层特征的语义信息,YOLOv3采用最近邻算法提高深层特征的分辨率,再与浅层特征进行拼接.由于最近邻算法以固定的方式对特征进行上采样,其处理过程不仅过于粗放,并且网络在训练过程中无法对特征的尺度扩张进行有效学习.因此,经典YOLOv3网络对目标的定位精度并不理想.针对上述问题,本研究提出一种面向精准目标定位的水面目标检测算法.首先,利用残差密集模块改进了YOLOv3头部网络,实现不同特征间的跨越式信息交互;其次,以反卷积取代YOLOv3中固定的最近邻上采样操作,让网络能够自主地学习特征的尺度缩放;最后,将学习率衰减策略与学习率余弦退火策略进行结合,帮助网络更好地拟合训练数据.1 YOLOv3网络YOLOv3算法在基于卷积神经网络的一阶段目标检测方法中极具代表性,其网络结构如图1所示.其中,卷积块由卷积层、批归一化层和激活层组成,残差单元包括两个连续的卷积块和跳跃连接结构,残差体包含特征外围的补零操作、一个卷积块和多个残差单元.各模块中注明了不同结构所处的位置(骨干网络或头部网络),以及不同结构的序号.10.13245/j.hust.239329.F001图1YOLOv3网络结构YOLOv3采用DarkNet53骨干网络来提取目标特征,在骨干网络后设置头部网络对目标进行分类和定位.头部网络由三条分支组成,分别负责大、中、小尺度目标的检测.每个分支中部利用5个串联的卷积块来对目标特征进行处理.较大尺度目标特征经1×1卷积块压缩和最近邻上采样后与较小尺度的目标特征进行拼接,以丰富较小尺度目标的语义信息.头部网络对最终的目标定位准确度有着重要影响.然而,YOLOv3头部网络中堆叠的卷积块对目标特征的处理能力十分有限,不同特征间缺乏全面的信息交互.此外,固定的最近邻上采样算法对较大尺度目标特征的处理较为粗放,网络在训练过程中无法对其进行有效引导.2 面向精准目标定位的水面目标检测算法针对经典YOLOv3头部网络中的问题,本研究进行了相应的改进,改进后的网络结构如图2所示.10.13245/j.hust.239329.F002图2改进的YOLOv3头部网络结构为尽可能减少网络的计算开销、减少特征损失,网络中的卷积核尺寸均设置为3×3,并且不采用池化层.2.1 残差密集模块改进头部网络为强化头部网络对目标特征的处理能力,增强不同特征间的信息交互,本研究将YOLOv3头部网络各分支中部的串联卷积块改为了残差密集模块.残差密集模块[22]将残差网络模块[23]和密集网络模块[24]进行了融合,三者的网络结构如图3所示.残差网络模块通过设置跳跃连接让网络学习输入与输出间的残差,降低网络的学习难度,同时保证随着网络层数的增加网络的性能不会下降.密集网络模块将每个网络层与其前面所有的网络层建立连接,将不同网络层的特征在通道维度上进行拼接以加强不同特征间的融合.残差密集模块将这两个模块的优势进行了有效的结合,通过设置跳跃拼接与带有残差缩放因子β的跳跃连接使得网络能够对目标特征进行更加有效的处理.10.13245/j.hust.239329.F003图3不同模块结构为提升网络的表达能力,YOLOv3头部网络中普通的串联卷积块以较高的通道数对目标特征进行处理,不仅大幅增加了网络的计算量,并且处理的过程中不同特征间无法进行跨越式的融合.相比之下,残差密集模块先以较低的通道数来处理目标特征,之后通过跳跃拼接和跳跃连接来逐步增加特征的通道数,最后再对通道数进行压缩.通过这种方式,一方面可以减少网络的计算开销,另一方面不同特征间能够进行全面的信息交互,使得网络能够对目标进行更加精确的定位.2.2 反卷积层改进头部网络YOLOv3头部网络利用1×1的卷积块和最近邻算法对较大尺度目标特征进行压缩和上采样处理,并将处理过的特征与较小尺度目标特征进行拼接,以丰富较小尺度目标特征的语义信息.然而,最近邻算法对特征的上采样过程相对固定,网络在训练过程中无法对其传入的有效的梯度信息进行优化,因此无法与其他网络层进行有效的融合.针对该问题,本研究将头部网络中的1×1卷积块和最近邻上采样层替换为可学习的反卷积层.反卷积层带有可学习的网络参数,随着网络的训练,其内部参数能够被逐步优化.添加反卷积层后,头部网络能够以更加精细化方式地对目标特征进行处理,有助于提升网络的检测精度.2.3 训练策略训练策略的选择对网络模型性能有着决定性的影响.固定学习率策略是最为基础和经典的一种训练方式,由于无法随着网络训练过程的推进动态调整学习步长,该策略对网络的训练效果较为一般.学习率衰减策略能够随着训练周期的增加逐步减小学习步长,有效提升网络对训练数据的学习能力.学习率余弦退火策略按照余弦函数以固定的周期对学习步长进行波动调整,当网络的训练陷入局部极小值时,能够通过变化学习率来帮助网络回归正常训练.三种训练策略的学习率变化过程如图4所示.10.13245/j.hust.239329.F004图4不同学习率策略为使网络能够充分拟合训练数据,本研究将学习率衰减策略与学习率余弦退火策略进行了结合,实现了学习率的整体衰减和局部波动,其变化过程如图4(d)所示.在提出的学习率衰减与余弦退火相结合策略中,随着训练周期的增加,学习率以一定的比例逐渐降低,在每个训练周期内部,学习率按照余弦函数波动变化.改进后的训练策略既能防止网络的训练陷入局部极小值,又能帮助网络以循序渐进的方式对训练数据进行有效拟合.3 仿真实验3.1 实验数据集本研究在SeaShips数据集[25]上进行对比实验.该数据集由部署在长江沿岸的摄像头采集,包含大量船舶目标,能够有效反映不同方法在真实水域下的目标检测性能.本研究从SeaShips数据集中随机选取5 000张图像作为训练集,2 000张图像作为测试集.采用经典YOLOv3,SSD进行实验对比.3.2 实验平台及参数设置本研究基于Ubuntu18.04操作系统开展仿真实验,利用PyTorch1.1[26]深度学习框架搭建网络模型,在显存为11 GiB的NVIDIA GeForce GTX 2080Ti GPU上对模型进行训练和测试.网络的训练采用Adam优化器,共100个训练周期,训练批次为4.残差密集模块中的β=0.2.训练过程中采用两种不同的学习率调整策略.当采用普通的学习率衰减策略时,学习率以0.9的比例随着训练周期的增加逐渐衰减,并在每个周期内部固定不变;当采用提出的学习率衰减与余弦退火相结合策略时,学习率同样以0.9的比例衰减,但衰减后的学习率在每个周期内部按照余弦函数波动变化,波动变化的比例范围为[0.95,1.05].3.3 评价指标查准率P和召回率R是目标检测任务中使用较为普遍的两项评价指标.其中,查准率用于衡量检测结果的准确度,召回率用于衡量检测结果的全面性,两项指标的表达式为P=NTPNTP+NFP;R=NTPNTP+NFN,式中:NTP为正确预测的目标数量;NFP为错误预测目标的数量;NFN为没有被检测出的目标数量.不可忽略的是:高查准率可能伴随着大量目标的漏检,高召回率可能伴随着大量目标的误检.因此,本研究选择综合了查准率和召回率的Z作为实验的评价指标.该指标以查准率和召回率关系曲线下的面积作为最终的评价结果,该面积的值域为[0,1],能够更加全面地对算法进行评估.检测框与标注框的交并比(IOU)是判断检测结果正确与否的关键参数.为更加清晰地反映不同方法对目标的定位精度,本研究选择0.5的IOU阈值对不同方法进行最为基础的目标定位评估,该评价指标记为Z1,同时以0.5~0.95的10项等间隔IOU阈值下的平均检测结果对算法进行更为严格的目标定位测试,该评价指标记为Z2.3.4 定量结果为更加明确地反映不同改进点对网络的影响,本研究在经典YOLOv3的基础上逐步添加不同的改进策略来进行消融实验,即方法1至方法3的策略组合,具体信息如表1所示.10.13245/j.hust.239329.T001表1不同方法的具体信息方法残差密集模块改进头部网络反卷积层改进头部网络学习率衰减与余弦退火相结合策略YOLOv3方法1采用方法2采用采用方法3采用采用采用表2展示了不同方法在测试集上定量的目标检测结果,表中:T为检测每张图片的用时;P为模型的总参数量;V为网络测试过程中的GPU显存占用量.从表2可以看出,改进后的方法相比于经典YOLOv3和SSD算法在定位精度上均具有明显优势.10.13245/j.hust.239329.T002表2不同方法在测试集上的定量检测结果方法Z1/%Z2/%T/sP/106V/(GiB)SSD88.7153. 900. 0124.412.44YOLOv390.3555.430. 0261.562.84方法190.4957.770. 0259.262.62方法291.2157.870 .0260.582.63方法391.3858.010. 0260.582.63利用残差密集模块改进YOLOv3头部网络后,网络的检测精度在Z1,Z2两项指标上均有提升,尤其对高精度的目标定位指标Z2的提升更为显著,将检测精度提升了4.7%.此外,网络的总参数量减少了2.3×106,显存占用量减少了0.22 GiB,这对显存资源较为有限的小型水面无人系统更加友好.通过在头部网络引入反卷积层,进一步强化了网络的检测性能,虽然略微增加了模型参数量,但仍能实时地对目标进行更加精准的定位.添加学习率衰减与余弦退火相结合策略后,Z1和Z2两项指标均得到了有效提升,说明网络对训练数据的拟合更为充分.3.5 定性结果学习率改进前后的训练过程如图5所示,图中:横轴为网络的训练周期;纵轴为网络对损失函数的拟合程度.从图5可以看出:改进的学习率策略的训练过程虽然波动相对较大,但网络收敛时的损失函数数值更小,说明改进后的学习率策略帮助网络对训练数据进行了更加充分地拟合.10.13245/j.hust.239329.F005图5不同学习率策略的训练过程SSD,YOLOv3和本文方法在测试集上的部分检测结果如图6所示,图中:首行为SSD的检测结果;次行为经典YOLOv3的检测结果;末行为本文方法的检测结果;各子图右上角为边界框与目标的交并比大小.由图6可知:相比于SSD和经典YOLOv3,本文方法输出的边界框能够更加紧密地贴合不同目标,具有更高的定位精度,这验证了本文方法出色的水面目标检测性能.10.13245/j.hust.239329.F006图6不同方法的可视化目标检测结果4 结语针对经典YOLOv3对水面目标定位精度较低的问题,本研究提出了面向精准目标定位的水面目标检测算法.首先,利用残差密集模块对YOLOv3头部网络进行改进,以加强不同特征间的信息融合;其次,采用反卷积层取代了头部网络中的最近邻上采样层,以优化头部网络中的特征缩放.此外,为使网络能够充分拟合训练数据,本研究将学习率衰减策略与学习率余弦退火策略进行了结合.在大型船舶图像数据集上的实验结果表明:提出的方法具有更加优良的水面目标检测性能,能够实时地对目标进行精准定位,为智能船舶的自主避障提供了有力的技术支持.

使用Chrome浏览器效果最佳,继续浏览,你可能不会看到最佳的展示效果,

确定继续浏览么?

复制成功,请在其他浏览器进行阅读