基于更快区域卷积神经网络的多视角船舶识别

2024-01-01 08:13程静王荣杰曾光淼林安辉王亦春
哈尔滨工程大学学报 2023年10期
关键词:锚框候选框船舶

程静,王荣杰,2,曾光淼,林安辉,2,王亦春,2

(1.集美大学 轮机工程学院,福建 厦门 361021;2.福建省船舶与海洋工程重点实验室,福建 厦门 361021)

随着社会经济的发展,海上交通日益繁华,船舶识别对海洋监视、海运管理有重要的应用价值[1]。在海洋监视领域,船舶识别对海洋环境和不法船舶有强有力的监督作用。在海运管理上可以监控和辅助管理海上交通,同时确保海岸和海上安全。船舶检测和识别已成为热门研究课题[2-3]。此外,随着人工智能发展,自从新型深度卷积神经网络(convolu‐tional neural network,CNN)AlexNet[4]在2012 年 的ImageNet 图像分类竞赛中取得胜利以来,许多领域都提出了越来越多的基于深度学习的解决方法。例如,计算机视觉(图像检测、识别和分类)、语音识别、自然语言处理、音频识别、生物信息和医学学科等[5]。其中基于图像的目标检测,已经有许多著名的基于CNN的检测方法,包括:1)一阶段检测器,如文献[6]提出的you only look once(YOLO)、文献[7]提出的单次多框检测器(single shot multibox de‐tector,SSD)、文献[8]提出的RetinaNet和文献[9]提出的anchor-free CenterNet;2)两阶段检测器,如文献[10]提出的区域卷积神经网络(region convolu‐tional neural network,R-CNN)、文献[11]对文献[10]改进的快速区域卷积神经网络(fast region con‐volutional neural network,Fast R-CNN)和文献[12]的更快区域卷积神经网络(faster region convolution‐al neural network,Faster R-CNN)。

基于图像的目标检测已经广泛应用于路上目标检测和海上目标检测。在人工智能和自动驾驶技术的推动下,无人控制的智能船舶顺势而生。智能船舶自主航行或执行的感知周围环境,即识别海上船舶等其他目标。目前主要通过图像信息研究船舶识别,根据图像产生的来源,基于图像的船舶识别方法大致分为雷达图像、遥感图像和视觉图像3 类[13]。基于雷达图像的船舶检测,文献[14]通过Faster R-CNN 对检测网络中分类置信度较低的边界框重新评估,提高对船舶的检测性能。文献[15]在Faster R-CNN 的感兴趣区域(region of interest,RoI )添加上下文信息,生成不同深度的多层建议区域,实现了基于合成孔径雷达(synthetic aperture radar,SAR)图像的船舶端到端检测。文献[16]提出了一种基于密集注意金字塔网络的SAR 图像船舶检测方法,提高了SAR 图像的识别精度。文献[17]采用特征重用策略来提高参数效率,并引入分支实现多尺度对象检测。利用遥感图像检测船舶的研究,文献[18]提出了一种从遥感图像中自适应学习特征的网络用于船舶检测。文献[19]在基于R-CNN 的船舶监测框架中引入场景掩模提取网络,用于辅助船舶检测,有效抑制了非目标区域的误报。文献[20]提出了一种融合多层特征交叉层次、旋转区域建议网络和双向递归神经网络融合自注意机制的舰船检测框架,解决了图像船舶的多维、背景复杂的问题。视觉图像指通过摄像机采集的视频或图像,海洋环境的复杂性增大了通过船载摄像机或岸域摄像机获取多艘船舶的困难,且目前公开的船舶视觉图像数据集也很少,因此,相较于基于雷达图像和遥感图像,基于视觉图像的船舶识别研究较少,文献[21]提出了一种两阶段分层特征选择算法来区分3 种民用船舶类型。文献[22]提出了一种基于Faster R-CNN 的船舶概率检测与分类系统,将分类器置信度视为概率,通过贝叶斯融合确定舰船类别。文献[23]提出了一种从粗到精级联卷积神经网络,识别不同类型的船舶。这些是对船舶类型的检测,不能识别同一类别的不同艘船舶。文献[24]使用SSD 算法检测内河船舶,应用样本增强和迁徙学习缓解了训练中的过拟合问题。文献[13]提出了一个显著性感知的CNN框架用于船舶检测,以获得更准确的船舶位置。文献[25]提出了一个增强的卷积神经网络,能够精准识别不同艘船舶,且提高了不同天气条件下的船舶检测精度。这是基于同一视角下的船舶图像进行的研究。由于海洋环境的特殊性和摄像机位置固定以及视角范围局限性,获取同一艘船舶在相同/不同时刻、相同/不同背景下的不同视角的图像较为困难,因此多视角下的船舶识别领域缺乏能够训练深度网络模型的大规模数据集。同类船舶都是刚性同质的,高度相似,难以区分其细微差别;且当视角改变时,大型船舶在外观上有很大不同[26]。相比于人和车辆重识别,有关船舶多视角识别的研究很少。文献[27]提出了基于合成孔径雷达图像的多视角船舶识别方法,文献[26]提出了一个基于全局和局部融合的多视角特征学习的船舶识别框架,利用自制的多视角船舶数据集评估模型性能。目前还没有找到其他基于视觉图像的多视角船舶识别研究。

针对上述问题,本文自制多视角船舶数据集,以Faster R-CNN 为基准网络,提取船舶在不同视角下的特征,进而实现对多视角船舶的识别,并评估不同背景环境以及图像分辨率对Faster R-CNN 识别多尺度船舶的性能影响。

1 Faster R-CNN模型和RPN网络

1.1 Faster R-CNN模型

Faster R-CNN 是对Fast R-CNN 的改进,使用区域建议网络(region proposal network,RPN)替代Fast R-CNN 的选择性搜索算法来确定候选区域。Faster R-CNN 主要由RPN 和Fast R-CNN 两部分组成,其核心过程是利用主干特征提取网络提取目标特征,获得共享特征图(feature map),再通过RPN生成候选区域。Fast R-CNN 确定候选区域是否包含目标,并校正候选区域的位置和尺寸。最后,使用感兴趣区域池化(region of interest pooling,RoI Pool‐ing)对候选区域进行分类和边界回归。

Faster R-CNN先将任意尺寸的图像调整至需要的尺寸,同时将调整比例和调整后图像的宽高存储到图像信息im_info 中,再通过主干网络提取特征,并将获得的特征图作为公共特征图,被共享于RPN和全连接层。RPN 用于生成候选框,通过RoI Pool‐ing 利用候选框截取共享特征图。最后通过全连接层进行边界回归预测和分类,并使用边界回归预测调整建议框,得到精确预测框,如图1所示。

1.2 特征提取网络

Faster R-CNN 可以采用多种主干特征提取网络,虽然深度网络能够提取更深层次的特征信息,但随着网络的加深,参数也会随之增加[28]。残差网络(ResNet)能够有效解决梯度消失和梯度爆炸以及网络退化的问题,且其残差结构使得梯度可以从浅层平滑地传递到深层,能够训练深度的神经网络来提高特征提取能力。与VGG网络模型相比,具有残差机制的ResNet可以更好地保留浅层特征,并传递给深层参与训练[29]。因此,本文以残差网络(ResNet50)[30]作为Faster R-CNN 的主干特征提取网络。ResNet50有5个模块(模块0~模块4)组成,如图2(a)所示,(3,224,224)分别表示图像的输入通道数、高度和宽度。模块0是对输入的预处理,模块1~模块4 结构类似,都是由瓶颈层(bottleneck layer,BTNK)组成,分别包含3、4、6、3个BTNK。输入输出通道数相同的表示为BTNK1,如图2(b)所示,用于加深网络;输入输出通道数不同的表示为BTNK2,如图3(c)所示,用于改变网络的通道。以ResNet50 的模块3的输出为共享特征层,如图2(d)所示。

图2 ResNet50网络模型结构Fig.2 Diagram of the ResNet50 network model

图3 RPN网络Fig.3 RPN Network

1.3 RPN模块

如图3 所示,RPN 以主干特征提取网络提取的特征图为输入,通过3×3 的滑动窗口将其映射到较低维度(以256 维为例)的隐藏层上,最后连接到2 个全连接层,一个用于目标分类,另一个用于获取目标坐标位置。每个滑动窗口在其映射位置同时生成k个锚框,为了适应各种目标尺寸和纵横比,设置3×3=9 种组合,即特征图上每个位置都有9 个不同尺寸的锚框。共享特征图经过向低维映射后进行分支:1)分类层:经过1×1×256×18的卷积核,得到1×1×18 的特征向量,分别表示9 个锚框的正标签前景概率和负标签背景概率(cls_score),通过逻辑回归获得目标类别概率;2)回归层:经过1×1×256×36 的卷积核,得到1×1×36的特征向量,分别表示9 个锚框的位置坐标(bbox_pre)。

按照以下标定方法为锚框标定正负标签:

1)与任意真实框(ground truth,GT)的重叠度(intersection over union,IoU)>0.7,标定为正标签;

2)与某个GT 的IoU 有最大值的锚框标定正标签;

3)与GT 的IoU<0.3,标定为负标签;

4)上述条件都不满足的既不是正标签也不是负标签,剔除。

由此确定前景锚框,使用边界框回归得到锚框与真实框之间的偏移值,即平移和伸缩参数,从而得到粗略建议框。通过图1 中的im_info 将粗略建议框映射回原图,判断粗略建议框是否超过边界,剔除严重超出边界的。按照逻辑回归分数进行从大到小排序,取出前N个粗略建议框,使用非极大值抑制算法消除冗余,对剩下粗略建议框再次排序,选择前M个粗略建议框,即为候选框。

1.4 分类及回归网络

RoI Pooling 将RPN 模块获得的候选框映射到共享特征图的相应位置,再将映射后的区域划分为相同大小的区域,最后对每个区域进行最大池化操作,完成从不同尺寸的候选框得到相同尺寸的特征图,极大地提高了处理速度。

利用RPN 模块中获得的建议框截取公共特征层中存在目标的区域,通过RoI Pooling 获得相同尺寸局部特征层,通过全连接层和逻辑回归计算每个建议框目标的类别概率;同时再次利用边界回归获得每个建议框的位置偏移量,即回归预测bbox_pre,用于回归更加精确的目标检测框,如图4所示。

图4 分类与回归网络Fig.4 Classification network and regression network

1.5 损失函数

在RPN 模块的分类过程中可能存在误识别,而生成的候选框与真实框存在位置偏差,如图5所示,因此将产生2 个损失:分类损失Lcls和回归损失Lreg。候选框一般使用四维向量(x,y,w,h)表示,(x,y)表示框的中心点坐标,w和h分别表示框的宽和高。计算分类损失需要与锚框对应标定结果和预测结果;计算回归损失需要:1)RPN 网络生成的候选框的坐标位置(x,y,w,h);2)锚框的坐标位置(xa,ya,wa,ha);3)真实框的坐标位置(x*,y*,w*,h*)。

图5 真实框与检测框示例Fig.5 Example of ground truth box and detect box

图5 中实线框为船舶的GT,虚线框为提取的候选框,即使该候选框被分类器识别为目标船舶,但相较于GT,位置存在偏差,仍相当于没有正确检测出邮轮,因此需要对候选框微调至与GT 位置尽可能接近。则候选框与GT 之间的平移量(tx,ty)与尺度因子(tw,th)分别表示为:

损失函数定义为:

其中:

式中:i为锚框的序号;pi为第i个锚框为目标的概率;p*i为GT 标签,当第i个锚框为正样本时p*i=1;第i个锚框为负样本,则为一个表示候选边界框4 个坐标位置参数的向量为与标定为正标签的锚框相对应的GT 框的坐标位置向量;分类损失为2 个类别(目标/非目标)的损失对数;为回归预测;R为鲁棒损失函数;分类层和回归层的输出分别由{p}i和{t}i组成。R计算为:

2 识别多视角船舶实验结果及分析

采用Faster R-CNN 对图6 所示的不同角度的船舶进行实验,由于目前公开的多角度船舶数据集很少,本数据集为从https://www.marinetraffic.com/网站下载不同类型的多艘船舶的多视角图片,使用la‐belImg 标注工具对其进行锚框标记,其中训练集1 904 张,测试集235 张,验证集211 张。船舶的种类、每一类的数量(小类数量)和每艘船舶的数量(船舶数量)如表1 所示。Faster R-CNN 的训练分为预训练阶段和训练阶段2个部分,在预训练阶段,使用在视觉对象类(visual object classes,VOC)数据集[31]上训练过的权重作为权重,且主干网络被冻结,不仅能够提高训练速度,而且能够在训练初期防止权重被破坏。批量大小设置为4,迭代50次,初始学习率设置为1×10-4。在训练阶段,主干网络参与训练,参数被调整,特征提取网络发生变化,批量大小设置为2,迭代100 次,初始学习率设置为1×10-5,且根据迭代次数动态调整学习率。

表1 实验所用的船舶种类及数量Table 1 Type and number of ships used in the experiment

图6 不同视角船舶Fig.6 Ships in different view

为了评估Faster R-CNN 对多视角船舶图像中船舶的识别能力,采用平均F1分数(meanF1score,mF1)、平均精度(mean average precision,mAP)和平均误检率(mean log-average miss rate,mMR)作为评价指标。为了定量分析Faster R-CNN 对不同分别率、不同背景图像的识别能力,以识别不同类型不同艘船舶的F1分数(F1score,F1)和误检率(log-aver‐age miss rate,MR),以及各类型船舶的mAP 作为评价指标,F1表示为:

式中mF1为F1的均值。

式中:n为船舶的数量;T iP为IoU 大于阈值的边界框数量;F iP为IoU 小于阈值的边界框数量,或者检测到同一个GT 的多余检测框的数量;F iN为没有检测到的GT的数量。

其中:

MR表示为:

当置信度设置为0.5时,Faster R-CNN识别所有多视角船舶图像的mF1=0.696 9,mAP=92.88%,mMR=8.34%,表明Faster R-CNN 能够较精准地识别多视角船舶图像。

Faster R-CNN 识别21 种高速船舶、22 种运输船舶、24种军舰和23种油船的F1和mAP分别如图7和图8所示,其中图8(a)、图8(b)、图8(c)和图8(d)分别表示检测每一艘高速船舶、运输船舶、军舰和油船的mAP。

图7 Faster R-CNN检测各类多艘船舶的F1 分数Fig.7 F score of Faster R-CNN detects various ships

图8 Faster R-CNN检测不同类别船舶的mAPFig.8 The mAP of detecting various ships by Faster R-CNN

图9表示存在误检的船舶,除图9所示13种船舶外,其他所有船舶误检率均为0。结果显示,运输船舶6、运输21、军舰1、军舰5、军舰14、军舰23、油轮8、油轮20的F1均为0,mAP均小于0.4,其中运输船舶6和军舰23为有雾环境下的低分辨率图像,运输船舶8、运输船舶21、军舰5油船8和油船20的图像均在昏暗环境下,而军舰14背景与目标极为相似,如图10所示,表明Faster R-CNN对低分辨率图像、背景与前景相似的图像以及昏暗环境下的图像检测能力低。而运输船舶6、运输船舶8、运输船舶21、军舰5、油船8和油船20的MR均为1,表明Faster R-CNN对有雾、背景昏暗等环境下的低分辨率船舶图像识别能力更低。

图9 Faster R-CNN误检船舶及其概率Fig.9 Ships of miss detection and their MR by Faster R-CNN

图10 高误检率船舶图像Fig.10 High MR of ship images

3 结论

1)本文以Faster R-CNN 为基准网络,多视角船舶图片为数据集,研究Faster R-CNN 对不同视角下船舶的识别能力,以及不同背景环境和图像分辨率对识别性能的影响;

2)实验结果表明,Faster R-CNN 能够较为准确地识别不同视角船舶,但是当图像背景与前景相似时,Faster R-CNN识别能力下降,而当图像为有雾或昏暗背景下的低分辨率图像时,Faster R-CNN 对多视角船舶的识别能力下降明显。

猜你喜欢
锚框候选框船舶
基于YOLOv3锚框优化的侧扫声呐图像目标检测
锚框策略匹配的SSD飞机遥感图像目标检测
基于SSD算法的轻量化仪器表盘检测算法*
重定位非极大值抑制算法
基于GA-RoI Transformer的遥感图像任意方向目标检测
面向自然场景文本检测的改进NMS算法
《船舶》2022 年度征订启事
基于Soft-NMS的候选框去冗余加速器设计*
船舶!请加速
BOG压缩机在小型LNG船舶上的应用