复杂环境下的多特征融合船舶目标检测算法

2022-11-23 09:06王长军
计算机与现代化 2022年11期
关键词:候选框损失特征

王长军,彭 成,李 勇

(新疆师范大学计算机科学技术学院,新疆 乌鲁木齐 830054)

0 引 言

近年来,国内外在目标检测[1-3]领域取得很大提升。蒋少峰等人[4]提出按船体比例进行结构特征分析的船舶分类算法,提升了SAR商用船只图像检测效果。王新立等人[5]通过改进特征提取的残差块来提升船舶检测精度。陈从平等人[6]利用深度学习模型Faster RCNN(Faster Regions with CNN features)和IoU(Intersection over Union)重合度的方法对船舶进行检测,相较于传统方法有较大提升。王言鹏等人[7]运用样本增强和迁移学习的方法避免了波浪等外界因素的误检,增加了模型的鲁棒性。赵蓬辉等人[8]通过增加异步卷积和最大池化操作,加强实时处理和提高船舶检测的平均精度。于洋等人[9]对传统YOLOv2(YOLO9000)算法添加维度聚类和多尺度变换进行检测,相比于原始算法准确度有所提高。Lang等人[10]通过增强像素邻域的空间和强度信息,提高船舶目标与海杂波的可分离性。李承昊等人[11]通过在2阶段目标检测模型引入注意力机制引导模块改善区域建议网络RPN(Region Proposal Network),同时增加置信因子的NMS(Non-Maximum Suppression)算法,候选框生成更加合理以及准确性有所提升。但对于目标回归定位引导性不够,目标重叠情况效果没有得到改善。任之俊等人[12]提出改进的特征金字塔的Mask RCNN(Mask Regions with CNN features)算法,增加2个多尺度融合路径网络,有效提取到目标空间位置信息,提升了模型检测效果。运用注意力机制[13]在机器视觉领域可提升模型的性能,谢飞等人[14]提出具有空间注意力机制的Mask RCNN的检测算法,在特征金字塔阶段加入空间注意力模块,提升网络的分割性能,减少误差,引入深度可分离卷积,对卷积层改进以减少模型计算量,但网络的检测性能有所下降。高鑫等人[15]将可变形卷积核引入目标检测领域,通过对卷积核设置偏移量,使采样点不再局限于规则格点,提升网络适应能力,对于目标密集区域有较好的检测效果,但对于目标位置回归提升效果并不是很大,多目标重叠检测回归问题依然亟待解决。在目标定位研究中,Choi等人[16]提出利用高斯模型对网络输出进行建模,在基本不改变YOLOv3(You Only Look Once)结构和计算量的情况下,能够输出每个预测框的可靠性,能够在提升网络性能的同时输出更加贴近目标的边界框。Li等人[17]基于单阶段检测器提出GFocal Loss(Generalized Focal Loss)函数,调整框本身与框质量估计的表示,在改善检测效果的同时并没有增加花费。

本文结合当前目标检测研究现状,提出基于侧边融合路径网络的船舶目检测方法,通过仿真实验对比分析,在不同天气条件下,均能实现水上船舶目标检测的高精度实时检测。

1 Faster RCNN介绍

Faster RCNN是使用锚框机制生成候选框再进行分类和回归的双阶段目标检测算法。将图片输入特征金字塔网络FPN(Feature Pyramid Networks)进行特征提取,通过区域建议网络RPN生成候选框,对候选框进行Soft-NMS(Soft Non-Maximum Suppression)处理来判断是属于前景或者后景,若候选框判断为前景,则将前景候选框映射到特征图上,经过ROI(Region Of Interest)池化后进行目标分类和位置回归,否则丢弃候选框。2阶段检测算法准确率高、适应强、网络结构调整灵活。但Faster RCNN算法直接应用到船舶检测,存在以下问题:

1)在不同的天气条件下,Faster RCNN算法在特征提取时,高层特征信息丢失严重,同时高层特征和低层特征之间融合路径较长,增加了特征提取难度,导致出现部分船只漏检、误检的情况。

2)在船舶目标出现相交以及显示不完整情况下,Faster RCNN算法在进行目标定位时,忽略了边界位置的不确定性估计,定位准确性不高,出现目标框过大或过小问题。

不同场景下的实验结果如图1所示,在不同的天气状况下,船只相互遮挡或者显示不完全等情况会出现漏检和误检情况。

(a) 船体遮挡漏检情况

(b) 雾天船体显示不全漏检情况

(c) 低照明度小船目标漏检情况图1 Faster RCNN算法效果图

2 复杂环境下的多特征融合船舶目标检测算法

船舶检测的主要工作是对海上恶劣天气下船只的分类和定位。针对以上问题,本文算法改进如下:使用图形增强技术模拟不同的环境,从而扩充数据样本;引入侧边融合路径网络促进高层和低层信息融合;结合高斯分布与方差投票方法改进定位损失拟合目标框位置,回归更加精确。算法的具体模型结构如图2所示。

图2 实验模型结构图

2.1 特征提取网络改进

在目标检测算法中,高级特征[18]对于大型实例检测具有较强的语义信息。本文在特征金字塔的基础上,增加自下而上侧边融合金字塔网络,加强低层特征信息和高层信息融合。

2.1.1 特征金字塔网络

特征金字塔网络(Feature Pyramid Networks)在特征提取过程中由自底向上提取路径网络和自顶向下融合网络2个部分组成。自底向上提取路径网络在特征提取过程中,分阶段对输入图片进行不同步长卷积和池化操作,形成自下而上路径,输出一组特征图{C2,C3,C4,C5}。自顶向下融合路径网络引入自顶向下的融合路径,对顶层的小特征图采用上采样方法放大到和上个阶段特征图同等尺寸,同时对2阶段输出的特征图进行加和操作。最终得到由{P2,P3,P4,P5}组成的自顶向下融合特征。

2.1.2 侧边融合路径网络

通过上述过程,所得特征图在保持原有位置信息的同时,能够获得较强的语义信息,提升网络检测性能。但在自顶而下路径过程中网络经过大量卷积操作,不利于信息传递和梯度回传,需引入自底向上的侧边融合路径网络,缩短信息流动路径,加强低层和高层信息融合。侧边融合路径网络将特征图Pi复制为Ni,使用3×3大小、步长为2的卷积核对特征进行提取,下采样为原来的一半,最后将Ni与经过1×1卷积后的Pi+1进行加和操作,形成侧边融合路径网络。以此迭代,得到{N2,N3,N4,N5}特征图,用于后续的分类和回归,如图3所示。生成的特征图既包含本层的特征信息同时又融合了顶层特征信息,特征融合具体过程如图4所示。

图3 增加侧边融合路径网络

图4 特征融合操作

2.2 定位损失函数改进

Faster RCNN的损失函数由2个部分组成,即为分类损失和回归损失。公式如下:

L=Lcls+Lreg

(1)

其中,Lcls表示分类误差,Lreg表示回归误差,在进行回归操作时,其计算方式如下:

(2)

其中,x是预测结果和真实目标之间的偏差,选用鲁棒性更好的Smooth L1损失函数进行类别之间的区域回归训练。

目标受异物遮挡或船只相遇会出现显示不完整情况,Faster RCNN算法缺乏对目标边缘位置不确定性估计,影响边界框回归效果。在坐标方差与位置关系中,算法在产生估计位置坐标的同时能够估计目标位置的置信度,可利用坐标方差提升边界框位置回归准确度。本文对Faster RCNN算法的回归损失函数进行修改。首先更改边界框参数化形式,方便后续方差调节;其次利用高斯分布拟合预测框和目标框的距离作为边界框回归损失函数;最后采用Soft-NMS与方差投票相结合方式,使回归更加精确。

2.2.1 边界框参数化形式

在原Faster RCNN网络位置预测中,目标框位置采用四维向量(x,y,w,h)表示,但这缺乏对不同尺寸特征图变换的敏感度,同时没有将预测框信息编码进来。本文设计2点式的目标框(x1,y1,x2,y2),可适用不同尺度变换以及预测框编码,以下是预测坐标和真实坐标相对锚点框的偏移量,用于后期预测概率分布。

(3)

本文利用概率分布对预测定位置信度进行表示,候选框的各个坐标相对独立,选用单变量高斯分布对候选框建模,设上方边界坐标为x,因此可表示为:

(4)

其中,xe是预测阶段的候选框位置,标准差σ表示预测的不确定度。当σ趋近于0时,表示预测框位置贴合目标框位置。

对于数据集中的真实目标框位置同样采用概率分布表示。当σ趋近于0时,则转化为狄拉克函数,如下:

PD(x)=δ(x-xg)

(5)

其中,xg为真实目标框的位置。2点式目标框方便后续进行高斯分布建模和增加新的损失函数。

2.2.2 改进回归损失函数

KL损失又称为KL散度(Kullback-Leibler divergence),是描述同一空间里的2个概率分布的拟合情况。利用KL散度特性作为边界框回归损失,用Lreg表示位置回归的损失函数。

Lreg=DKL(PD(x)‖PΘ(x))

(6)

(7)

对目标检测的概率分布建模如图5所示,当生成的预测框位置xe不准确时,σ2较大。σ在训练开始时不稳定,为避免梯度爆炸,将α=log(σ2)替代为σ,同时采用类似于Smooth L1损失形式,回归损失函数表示为:

(8)

图5 预测和真实目标位置概率分布建模[19]

图5中的实曲线和实直线是根据样本数据产生的预测分布和真实目标位置的狄拉克函数分布,当预测结果不准确时,网络得到更大的方差σ2,此时目标位置回归误差降低Lreg。

2.2.3 NMS改进

方差投票为根据相邻边界框方差,对候选边界框权值重新分配,结合Soft-NMS对候选框筛选和定位。对于分数高于阈值的候选框并不是直接过滤,而是重新赋较低的分数,从而避免删除堆叠的目标。得到预测位置方差σ用于后续候选框回归,根据高分数候选框与相邻候选框计算出新的位置。新坐标的计算方法如下:

(9)

其中,x为候选框坐标,xi为第i个候选框坐标,σt是阈值参数,在投票期间,高方差候选框与重新计算预测框比交并比IoU小的候选框将获得较低的权重;同时类别分数不参与投票,低分候选框仍可以获得高置信度。

3 仿真实验

3.1 实验环境

本文实验使用的操作系统为Ubuntu18.04,处理器型号为Intel Core i5-8300H,显卡型号NVIDIA GeForce GTX 1050Ti。为验证本文方法在船舶检测的有效性,对比实验均采用统一标准参数,具体内容如表1所示。

表1 实验数据参数设置

3.2 数据集

本文采用船舶目标检测SeaShips[19]数据集。包含7000张6个类别的船舶图像。每个类别数量相似,分布不同,但数据场景基本为白天,缺乏考虑不同天气场景情况,为了增强模型鲁棒性,缓解过拟合,提高算法在恶劣天气条件下的检测能力,使用图形增强技术模拟雨天、雾天和低照明度环境,有效扩充了训练的数量,从而提高了网络的鲁棒性和泛化能力,样本增强后效果如图6所示。

图6 不同天气情况图形增强效果图

3.3 实验评价准则

为评价本文算法的性能,选用平均准确率(mAP)、交并比(IoU)作为评价指标。

平均准确率(mean Average Precision, mAP)表示对所有类别的AP取均值,定义如下:

(10)

其中,Kc表示类别数,Ta表示类别为a,N′a表示Ta类被正确预测为Ta类样本的总量,Na为类别标签Ta的总样本总量。

IoU(Intersection over Union)表示预测框与目标框的交集与并集的比值。公式如下:

(11)

其中,C为生成的预测框,G为目标框,area(C)为预测框的面积,area(G)为目标框的面积。

4 实验分析

为验证本文所提算法的有效性,本文设计5组实验,第一组实验通过结合不同方法来与原始算法性能进行对比;第二组实验将改进算法中侧边融合路径网络与目前改进特征金字塔网络方法进行对比;第三组实验将本文所提出的回归损失函数与原始损失函数进行对比,验证算法在训练过程中收敛情况以及性能提升;第四组实验验证方差投票方法对于目标位置回归效果的影响;第五组将本文算法同目标检测主流算法以及改进的Faster RCNN算法进行对比。

4.1 改进方法对比实验

表2 不同改进方式对算法性能提升实验结果

通过横向对比分析法,将不同方法结合对比实验,网络效果如表2所示。其中“√”表示所采用的方法,改进方法1使用数据增强方法,提升网络结构的鲁棒性和泛化能力,使得模型的准确率提升3.16个百分点。其次,在此基础上增加侧边融合路径网络得到改进方法2,使得模型的准确率提升了13.43个百分点。在网络的后处理阶段,改进定位损失函数,使网络的IoU提高了6.49个百分点,在改进方法3的基础上将Soft-NMS和方差投票相结合得到本文算法,本文算法在准确率和IoU上都取得大幅度提升。表明预测框与真实目标框的重合度更高,对船舶的定位更加准确。

4.2 改进金字塔网络对比实验

在对比本文所提出的侧边融合金字塔网络与其他网络过程中,实验均采用ResNet 50网络作为特征提取的骨架网络,评价指标选用阈值IoU=0.5的平均准确率(mAP)和收敛损失,对比算法选用如下:

1)Faster RCNN表示Faster RCNN算法特征提取网络为特征金字塔网络(FPN)。

2)Faster RCNN(CBAM+FPN)[20]表示在Faster RCNN(FPN)基础上增加注意力机制CBAM。

3)Faster RCNN(SC+FPN)[21]表示在Faster RCNN(FPN)基础上增加深度可分离卷积。

实验效果如表3所示。增加深度可分离卷积后,网络计算量减少,但算法效果下降。

表3 不同改进金字塔网络对比实验结果

4.3 损失函数改进实验

为了能让算法更好地适应不同环境,同时验证预测框不确定性回归算法对目标定位误差是否有改进,实验在Faster RCNN的网络输出端增加KL损失函数。绘制了原Faster RCNN和本文算法的2种Loss曲线,如图7所示。图中实线Ori_Loss表示原Faster RCNN损失收敛情况,虚线New_Loss表示本文算法损失收敛情况。根据图像可得出,改进后算法相较于原Faster RCNN损失变化情况幅度偏小,此外训练误差的初始值明显降低,于15轮时开始平稳收敛,收敛速度更快,Loss值收敛更加理想。2种方案的检测结果如图8所示。图8为不同场景下原Faster RCNN算法和改进算法效果对比,图8(a)为雨天场景实验效果图,实验效果中改进算法可生成更加符合目标的边界框;图8(b)为雾天场景效果对比,在小目标识别和定位中改进算法较原Faster RCNN算法误报率降低,定位更加准确;图8(c)为阴天场景,改进算法针对小目标的识别和定位大幅度提升。图9为不同天气场景下多船只的识别效果图,改进算法在船体显示不全和船只之间相互重叠情况下都能取得不错的效果,在准确率和船只定位上都有大幅度提升。

图7 Loss曲线对比图

(a) 雨天场景改进前后效果对比

(c) 阴天小目标改进前后效果对比

(a) 雨天船体显示不全检测效果

(b) 雾天船体显示不全检测效果

(c) 阴天船体不全和重叠检测效果

4.4 NMS改进实验

在不同天气环境下,网络模型因目标遮挡而造成误报问题,一部分原因是目标遮挡有效识别面积变小,还有一部分原因是IoU阈值影响重复目标滤除效果。阈值过低时位置预测结果不够准确,造成目标漏报,阈值过高时,重复目标框滤除效果不理想,造成误报。综合考虑IoU阈值对检测效果的影响,选用IoU=0.3,图10为增加方差投票方法前后的效果对比图。在不同的天气情况下,增加方差投票方法后目标框标记效果更好,误报率降低,重叠面积区域变小,候选框位置更加接近真实框,在船舶定位的准确性上更加接近目标框。

(a) 雨天船体显示不全检测效果

(b) 雾天小目标检测效果

(c) 阴天船体不全和重叠检测效果

4.5 不同算法对比实验

表4 不同算法比较实验结果

本文算法与常见的几种深度学习算法进行了对比,其中包括YOLOv3[22]、SSD[23]、Faster RCNN[23]以及Faster RCNN改进算法,分别为注意力机制改进算法CBAM[20]、深度可分离卷积改进算法SC[21]。实验过程中每种算法使用同一训练集进行训练,网络中的相关参数均为对应文献中建议参数,通过使用mAP在测试集上对算法性能进行评估。算法的具体检测性能如表4所示。本文改进算法在不同的天气状况下对不同的船只检测效果相较于其他算法都有大幅度提升,使用场景更加广泛,更适用当前船舶检测和定位工作。

5 结束语

本文提出基于复杂环境下的多特征融合船舶目标检测算法,利用图像增强技术模拟雾天、低照明度场景,增加侧边融合路径网络,来加强低层特征和高层信息融合,改善特征信息传递丢失问题。在位置回归过程中,针对异物遮挡和船体显示不完整等问题引入边界框参数化,利用高斯分布拟合预测框和目标框的距离作为回归损失函数,同时采用Soft-NMS与方差投票相结合方式,使回归更加精确。本文算法有效解决了误报、遮挡、船体显示不全的问题,可以满足实际应用的执法和检测需求,适合复杂场景的实时船舶检测。

猜你喜欢
候选框损失特征
根据方程特征选解法
重定位非极大值抑制算法
面向自然场景文本检测的改进NMS算法
胖胖损失了多少元
基于深度学习的重叠人脸检测
不忠诚的四个特征
玉米抽穗前倒伏怎么办?怎么减少损失?
一种针对特定目标的提议算法
抓住特征巧观察
一般自由碰撞的最大动能损失