APP下载

一种基于YOLOv3的水下声呐图像目标检测方法

2022-10-29王欣宇周景春

电子与信息学报 2022年10期
关键词:声呐框架卷积

王 非 王欣宇 周景春 刘 淼

(大连海事大学信息科学技术学院 大连 116026)

1 引言

目标检测是计算机视觉中的一个基础性的且具有挑战性的问题,其目的是在输入的图像中找到待检测目标的位置以及判断目标的类别。随着时代的发展和海洋强国战略的提出,提高海洋资源开发能力,发展海洋经济已成为我国的迫切需求。近年来,针对水下目标的检测任务成为了非常活跃的研究领域之一,其应用非常广泛,包括鱼群定位、水深测量等方面,也可用于水雷、潜艇探测等军事领域。但由于水下环境复杂多变和水下信号的获取及处理存在困难,使得在水下采集到的数据信息往往不够精确[1,2]。因此,如何在复杂多变的水下环境和噪声、畸变等影响下准确地进行目标检测是业界公认的关键点和研究难题。

对于水下目标检测,前人已提出过许多有效的检测方法,根据关注点不同,可大体分为基于像素、回波[3,4]和特征[5,6]的检测方法。在深度学习的助力下,目标检测领域出现了一系列里程碑式的检测框架,根据其算法流程总体上可以分为两类:两阶段目标检测框架和单阶段目标检测框架。2014年Girshick等人[7]提出的基于卷积神经网络的R-CNN目标检测框架是2阶段检测的开端,该框架通过端到端的方式从大量数据中训练出来检测模型,再将模型应用于大量不同类别的目标,这成为了R-CNN系列的奠基框架,但此框架在目标检测效率和物体识别等方面存在一定问题。Girshick[8]在R-CNN框架的基础上进行改进,提出了Fast R-CNN框架,该框架将特征提取器和分类器合并,并且对特征提取的方式进行改进,使得原本对每一个候选框进行特征提取变为了一次性对一整张图像进行特征提取,大大加快了训练速度。后续提出的Faster R-CNN框架[9]考虑到因选取过多候选框而导致的模型训练时间较长的问题,利用RPN(Regional Proposal Networks)负责目标预测框的选取,大幅度提升了网络检测速度。近几年,He等人[10]提出的Mask R-CNN巧妙地更改了处理特征图尺寸变化的方法,很大程度上减小了下游特征图像向上游映射时的误差,在提升了目标检测效果的同时满足了其算法语义分割任务的精确度的要求。在单阶段目标检测框架中,基于回归算法不需要经过候选框选取阶段,可直接从输入图像中直接预测结果。单阶段检测的代表性框架有YOLO系列和SSD系列,YOLOv1[11]将检测任务表述成一个统一的、端到端的回归问题,在最终的高维特征图上通过一个全连接层对目标进行检测及分类。但神经网络粗糙、对小目标检测有限制的问题也随之产生。Liu等人[12]提出的SSD(Single Shot multibox Detector)算法结合了YOLO算法的回归思想和Faster-RCNN的锚机制,使得算法更容易训练。YOLOv2[13]是在YOLOv1的基础上进行优化的,其在提升检测速度的同时,对目标的检测精度也得到了提高。与此同时,Jeong等人[14]提出了SSD算法的改进版R-SSD算法,解决了SSD算法存在的目标被重复检出的问题。YOLOv3[15]在继承了YOLOv1和YOLOv2的优点的同时做出了一些改进,使得其可进行多目标检测任务。Law等人[16]提出的CornerNet采用预测识别框的左上角和右下角顶点信息来替代传统的锚机制,检测性能得到了明显提高。

2 相关网络模型与数据获取

2.1 网络模型

相较于先前的YOLO版本,YOLOv3首先对主干网络进行了修改,引入了残差结构进行特征提取,通过使用卷积层代替最大池化层提升了检测效果。此外,YOLOv3网络模型借鉴了特征金字塔网络[17](Feature Pyramid Networks, FPN)的思想,先从主干网络中提取3个不同尺度的特征图,再通过上采样和特征拼接的方式将高维特征图信息与低维特征图信息相融合,使得能够对低维特征图进行高精度预测的同时又能结合高维特征图中的语义信息,达到了对特征图的多尺度检测效果,从而使模型对小目标的检测效果大大提升。相比于R-CNN系列网络的先对输入图像产生候选区域,再对候选区域图像块进行位置预测和分类的方式,YOLOv3采用端到端的方式,使用单个网络对整张图像直接进行目标检测的方法更具实时性。

2.2 数据获取

声呐是一种利用声波在水下的传播特性,根据不同物体反射声信号的强度和频谱信息的不同,通过电声转换和信息处理,完成水下探测和通讯任务的电子设备。根据同时刻发出的波束数量不同又可分为单波束前视声呐和多波束前视声呐,本文利用的数据多为单束前视声呐所测。

当处于水下这一3维空间进行检测时,前视声呐通过换能器发射像扫描线一样的以ϕ为半径、以θ为水平跨越角度的波束,进而形成一个相应的扇形探测区,再以ϕ作为俯仰角构成检测的3维空间,并对覆盖的目标区域进行条带式测量。若取扫描线上的一点Q,那么该点在3维空间中的坐标可表示为Q(r,θ,ϕ)。同时,利用基阵的自然方向性定向建立直角坐标系,对应的直角坐标为(x,y,z)。

球面坐标系和直角坐标系的转化关系如式(1)所示。由于原始数据中缺少俯仰角ϕ的信息,因此在处理数据时我们只能选择将立体空间中的点投影到平面,将3维坐标转换成2维进行计算。将球面Q点映射至投影平面P点,两坐标之间的转换关系如式(2)所示。

已发射的声波遇到物体时会回射,声呐装置收到反射的波束,通过计算回波从发射到收回的时间与波束在水中的运动速度就能精确计算物体所在处与声呐设备的距离,多个波束反射投影到声呐装置中便形成了一张画有物体边远轮廓的原始声呐图片。

3 水下目标检测方法设计

3.1 总体流程

本文提出了一种基于YOLOv3的水下目标检测模型YOLOv3F,以解决水下声呐图像的形状失真和畸变的问题,网络整体结构如图1所示。将原始的声呐图像与对应生成的点云数据送入backbone分别对纹理特征和空间几何形态特征进行特征提取,再通过对提取出的两部分特征进行特征维度的相加,接着送入YOLOv3的neck网络对相加之后特征进行不同维度的特征融合,最后通过预测网络实现目标检测。

3.2 特征提取

本文使用式(1)和式(2)来计算每个声呐扫描点对应的点云坐标,将生成的点云坐标存储在一个N×2的矩阵中,其中N代表扫描点的总数,矩阵中每个元素定义为相应扫描点处的声呐信号值。再根据每个像素点的不同强度值,利用图像二值化(Image Binarization)算法,过滤掉大量强度值比较小的无用点,实现前后景的划分和背景点的过滤。本文采用的固定阈值二值化技术是先统计出整张图片中所有像素点的强度值,将算出的强度值的中值设为阈值,并将大于中值的值设为1,小于中值的值设为0,接着过滤掉值为0的扫描点。最后将得到的点云坐标信息以三通道(x,y,0)的形式保存。

本文使用基于YOLOv3模型的改进版YOLOv3F,采取的主干网络由两个Darknet-53网络组成,每个Darknet-53网络由26个残差结构、6个卷积层和1个全连接层组成,每个残差结构中包含2个卷积层,并且最后的全连接操作由卷积实现,整个网络共进行了53次卷积操作。文中使用的网络以原始声呐图像和点云数据分别作为两个主干网络的输入,分别依次通过卷积层和包含1, 2, 8, 8, 4个残差模块的残差网络。当输入通过步长为1的卷积层后特征图大小不变,通过步长为2的卷积层后特征图大小变为输入大小的1/2。随着网络的前向传播,特征图尺寸越来越小,其中包含的语义信息越来越丰富,两个主干网络最终分别输出低层特征图、中层特征图和高层特征图。最后将从原始声呐图像提取的纹理特征和从点云中提取的空间几何特征进行拼接,送入neck网络进行特征融合。

3.3 特征融合

由于本文在主干网络中将声呐图像特征与点云特征进行特征维度的求和,所以neck结构的特征通道维度相较于原始的YOLOv3网络翻了1倍,即输入neck网络的特征维度分别为2048, 1024和512。Neck网络结构对高层特征图一方面直接利用5次卷积进行特征提取,一方面对其进行上采样,再与中层特征图进行拼接,将拼接之后的特征图重复上述操作,再与低层特征图进行拼接。最后将3种尺寸的特征图送入预测网络进行目标预测。

3.4 目标预测

本文所提出的模型使用端到端的方式对特征图上的边界框进行预测,网络先通过K-means聚类算法得到9组不同尺寸的预设边界框(Bounding Box Prior),再将这9组预设边界框分别应用到3个不同尺度的特征图上进行预测,每个预测特征层会预测S×S×k×(4+1+C)个参数,其中S×S表示特征图的尺度,k为当前预测特征层的预设边界框的个数,4为预设边界框的4个偏置信息,1表示每个边界框对目标预测的置信度。

如图2所示,(cx,cy)表示当前单元格相对特征图左上角的偏移量,(pw,ph)为预测框的宽和高,(tx,ty,tw,th)为网络模型要预测的4个偏置信息。YOLOv3F为了使预测边界框的中心点固定在一个单元格中,使用sigmoid函数将预测坐标归一化到0~1之间。预测边界框的坐标(bx,by,bw,bh)将由以式(3)—式(4)计算得到:

3.5 损失函数

本文提出的模型的损失函数参照原始YOLOv3模型结构分为3个部分,分别是对目标偏移量损失lossb的计算,对目标置信度损失lossw的计算和对目标分类损失losss的计算。损失函数的3个部分分别如式(7)所示。

计算分类误差时使用交叉熵损失函数,概率值p由sigmoid函数进行计算,当单元格内不存在待检测目标时不会对分类错误进行惩罚。

YOLOv3F的总损失即为上述3部分损失函数之和,即

4 实验结果与分析

本文进行的实验是在一个真实水下环境的公共数据集上对其进行测试,该数据集包含各种各样的目标对象,并通过将本文提出的模型与原始YOLOv3, SSD, RetinaNet[18]网络模型进行定性和定量对比,验证了所提方法的有效性。

4.1 数据集

本实验中使用的公共数据集由2021届中国水下机器人专业比赛提供,可在https://www.heywhale.com/home/competition/605ab7f821e3f6003 b56a7e5进行查询。该数据集由4000张声呐图像组成,涵盖了水下场景的典型环境。它包含立方体、球体、圆柱体、人体模型、轮胎、圆形地笼、方形地笼、铁桶8类物体。在实验中,4000张图像被分为训练集(约60%)、验证集(约20%)和测试集(20%)。

4.2 评估指标

在本文的实验中使用平均准确率(mAP)来对不同的模型进行评估。准确率指的是所有正样本中预测为正样本的比例,包括真正样本和假正样本。mAP衡量每个类别数据的平均精度,在评估模型定位性能,目标检测模型性能和分割模型性能方面是非常重要的。

4.3 实验设置

本实验使用开源目标检测框架MMDetection来实现所提出的方法,该框架的源码网址为https://github.com/open-mmlab/mmdetection,其中包含了YOLOv3, SSD, RetinaNet 3个对比模型的实现源码。这些代码是用Python3.7和Pytorch1.8.1编写的。所有实验的服务器操作系统都是Ubuntu18.04, CUDA Toolkit11.1和CUDNN8.0。硬件包括Inter Core i9-10980XE(3.0GHz), 32GB RAM和Nvidia GeForce3090(24GB)。

对于本文所提方法及3种基线模型的训练,实验中采用了统一的参数设置,具体如下:使用随机梯度下降(Stochastic Gradient Descent, SGD)算法进行参数优化,设置初始学习率为0.001,动量为0.9,权重衰减为0.0005,最大迭代次数为350次。

4.4 主观实验结果(定性对比)

本实验中分别对单目标和多目标的情形进行了检测。图3展示了分别使用RetinaNet, SSD512,YOLOv3以及本文提出的YOLOv3F模型对单目标物体的检测效果,从图中可以看出RetinaNet和YOLOv3将人体模型错分为了轮胎和球体。图4和图5展示了4个模型对多目标的检测效果,从图4中可看出RetinaNet和YOLOv3将人体模型错分类为了其他物体,SSD512并没有检测到人体模型;从图5中我们可以观察到RetinaNet和SSD512分别将圆形地笼错分类为了方形地笼和圆柱体。从图3—图5反映的实验结果来看,无论是单目标情形还是多目标情形,在使用YOLOv3F模型对原始声呐图像和点云数据进行特征融合后,均表现出了良好的检测性能。

4.5 客观实验结果(定量对比)

表1、表2和表3分别展示了RetinaNet, SSD512,YOLOv3和本文提出的改进模型YOLOv3F在给定数据集下设定检测框不同交并比、对不同尺度以及不同类别的目标进行检测的效果。从表1可以看出,当检测框交并比阈值取[0.5,0.95]时,RetinaNet,SSD512和YOLOv3 3个模型的检测效果非常接近,而本文所提方法YOLOv3F相较于其他3个模型,其mAP分别提高了3.4%, 3.4%和3.6%,当检测框交并比阈值设置为大于0.5时,对应提高的mAP分别为7%, 3.8%和1.7%,这一数值在交并比设置为大于0.75时出现相对较大幅度的提升,分别为4.3%,6.8%和8.8%。因此由表2可知,本文提出的融合了点云特征的目标检测框架继承了原有YOLOv3的目标检测良好性能,并且在对检测框设置不同交并比的情况下,与其他3个模型相比均达到了最优的检测效果。

表1 检测框不同交并比mAP对照

表2 不同尺度目标检测mAP对照

表3 不同类别目标检测mAP对照

为了进一步凸显融合了声呐图像与点云特征的YOLOv3F模型的改进作用,本实验还分别就小尺度、中等尺度和大尺度目标的不同情形进行了mAP对照分析,如表2所示。在小目标情形下,YOLOv3F的检测性能与SSD512相近,前者相较于后者性能提升了0.9%,与RetinaNet和YOLOv3相比,YOLOv3F的检测性能提高了5%和3.3%。在检测中等尺度目标时,其他3种网络性能相近,其中RetinaNet优于另外两种,而YOLOv3F与RetinaNet相比,性能提高了3.2%。在检测大尺度目标时,本文提出的模型同样达到了最优的检测效果。

本实验还对4种网络模型检测不同类别目标的mAP进行了对照,如表3所示。虽然在对球体类别进行检测时,YOLOv3F模型的检测效果略低于SSD512,但仅相差0.5%,相较于原始YOLOv3,本文提出的改进版在性能上提升了2.4%。此外,从表中可以看出,本文提出的模型在对除球体之外的其他7种类别物体的检测效果均优于其他3种模型,这也验证了融入点云特征后的改进效果。

5 结束语

本文以YOLOv3模型为基础,提出了水下目标检测模型YOLOv3F,该模型将从原始声呐图像中提取的纹理特征和从点云中提取的物体空间几何形态特征相融合,并通过neck结构将低维特征与高维特征进行融合,增加上下文信息,改善对水下目标的检测性能。通过主客观对照实验结果可以看出,YOLOv3F的总体检测性能相较于RetinaNet,SSD512和YOLOv3均有不同程度的提升,在复杂的水下环境的情形下具有一定优势。

猜你喜欢

声呐框架卷积
航空声呐浮标的水下减振系统研究
空投声呐浮标空中运动轨迹研究
有机框架材料的后合成交换
框架
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种基于方位估计的双站被动声呐航迹关联方法
卷积神经网络的分析与设计
从滤波器理解卷积
航母中程反潜区声呐舰对潜警戒能力分析
基于傅里叶域卷积表示的目标跟踪算法