面向水下环境的海洋生物轻量化目标检测模型∗
2022-12-07田生伟周铁军
王 哲,田生伟†,王 博,周铁军
(1. 新疆大学软件学院,新疆乌鲁木齐 830091;2. 国家计算机网络与信息安全管理中心新疆分中心,新疆乌鲁木齐 830000)
0 引言
地球上超过70%的面积被海洋覆盖,海洋对全人类起着至关重要的作用.但飞机残骸、船舶漏油、工业废水甚至核废水排放入海,都对海洋及海洋生物造成了严重污染,甚至引起海洋生物变异,对海洋生态系统和渔业发展带来了极大威胁.因此,进行水下海洋生物目标检测十分必要.
传统的目标检测模型[1]主要使用基于梯度直方图(HOG)和支持向量机(SVM)的机器学习方法进行目标检测.自从AlexNet被提出之后[2],卷积神经网络被应用于目标检测领域.目标检测模型通常包含三个部分:骨干网络、收集骨干网络不同阶段特征图的颈部以及预测种类和边界框的头部.最流行的骨干网络是ResNet[3]及其变种(Res2Net[4]和ResNeXt[5]等),而YOLO[6]系列使用DarkNet.通常来说,颈部由数个由上到下和由下到上的卷积层构成,其中特征金字塔网络(FPN)[7]是最先提出也是最常用的颈部.头部分为单阶段和二阶段两种不同的类型.R-CNN系列(Fast R-CNN[8]、Faster R-CNN[9]、Libra R-CNN[10]等)首先将深度卷积网络应用于目标检测,是最具影响力的二阶段目标检测模型.单阶段目标检测模型由YOLO系列最先提出.
随着图形处理器(GPU)的高速发展,计算机计算能力得到了极大提升,使得基于深度学习的目标检测模型在各个领域得到了广泛应用.在目标检测领域中,孟欣欣[11]等人使用迁移学习进行自然环境下的香梨检测和分割;韩文轩[12]等人使用深度可分离卷积进行遥感影像小目标快速检测.在海洋生物目标检测领域中,Villon[13]等人使用微调后的卷积神经网络进行珊瑚礁鱼类检测和分类;Siddiqui[14]等人使用深度卷积神经网络进行水下鱼类目标检测;Rasmussen[15]等人使用YOLOV2进行扇贝检测;Pedersen[16]等人使用YOLOV3进行水下海洋生物目标检测.
对于MS COCO[17]和PASCAL VOC[18]等大型数据集,SOTA算法能够在准确率和速度间取得良好的平衡.但面对水下海洋生物等小型数据集时,SOTA算法的速度表现不如人意.针对这一问题,本文提出了一种快速轻量化的目标检测模型FL-Net.首先,对ResNet18进行修改:使用空洞卷积替换普通卷积、使用动态激活函数替换ReLU[19],使模型在轻量化的同时确保准确度、更适合本文使用的水下海洋生物数据集.其次,使用单阶段的GFL模块,提高推理速度.最后,使用Soft-NMS[20]去除冗余的检测框,提高准确度.
1 FL-Net
1.1 FL-Net结构
为了减少训练时间、提高推理速度和准确率,提出FL-Net单阶段目标检测模型.输入图像在骨干网络经过五次下采样操作得到C1、C2、C3、C4、C5五个特征图.FPN接收C3、C4、C5,经过1×1卷积、上采样、加(add)操作得到P3、P4、P5三个特征图.GFLHead由分类和检测两个分支组成,各特征图在两个分支进行权重共享.Soft-NMS对两个分支输出的特征图进行处理,得到带有标签的检测框.FL-Net的结构如图1所示.
图 1 FL-Net结构
1.2 结合动态激活函数和空洞卷积的残差网络
RepPoints[21]、ATSS[22]等SOTA算法通常使用ResNet50或ResNet101作为骨干网络在MS COCO和PASCAL VOC等数据集上进行实验.MS COCO和PASCAL VOC等数据集拥有丰富的物体种类和各式各样的背景,数据量庞大且分辨率不一;而FL-Net使用的Brackish[16]数据集仅包含鱼、小鱼、螃蟹、虾、水母和海星六个物体种类,背景为相对单一的水下环境,分辨率统一为960×540.数据集间的差别如图2所示.考虑到卷积层数更多的ResNet50和ResNet101会增加训练负担、影响训练速度,FL-Net选择ResNet18作为基础骨干网络.
图 2 Brackish与MS COCO、PASCAL VOC的区别
ResNet18由一个7×7卷积、一个3×3最大池化层和八个标准残差模块组成.一个标准残差模块包含两个卷积模块,每个卷积模块由3×3卷积、批量归一化(BN)[23]和ReLU组成.FL-Net替换第一个卷积模块的ReLU为Meta Acon[24],替换第二个卷积模块的普通卷积为空洞卷积,从而提升骨干网络的特征提取能力.标准残差模块结构如图3所示.
图 3 标准残差模块
1.2.1 空洞卷积
空洞卷积通过扩大卷积核的间距来提高感受野,是计算机视觉领域常用的卷积方式之一.如公式(1)所示,k为原始卷积核大小,r为空洞率.当r=1时,为普通卷积;当r>1时,为空洞卷积.空洞卷积可以在不改变分辨率和卷积核大小的情况下获得更多的上下文信息,且不需要增加额外的计算负担,如图4所示.
图 4 普通卷积与空洞卷积
1.2.2 动态激活函数MetaAcon
ReLU激活函数会统一激活神经元,而ACON提出的MetaAcon激活函数可以通过学习自适应选择是否激活神经元,如图5所示.MetaAcon已经被证明可以在图像分类中在仅增加少量参数的情况下提高网络提取特征的能力.MetaAcon可以用公式(2)表示,其中:x为特征图,p1、p2为两组可学习参数,β为自适应函数.MetaAcon通过β控制神经元是否激活,当β=0时,不进行激活.β的结构可以是逐层的、逐通道的或者逐像素的,经过多组实验,FL-Net选择逐像素的结构,如公式(3)所示.
图 5 ReLU与MetaAcon
1.3 GFL模块
传统单阶段目标检测模型的头部末端输出一般包含三个部分:分类评分(classification score)、检测框回归(bbox regression)和检测框质量评分(IoU/centerness score).在训练阶段,分类评分和检测框质量评分单独进行训练;在测试阶段,分类评分和检测框质量评分相乘作为非极大值抑制(NMS)的排序依据,如图6所示.Focal Loss[25]方法在解决正负样本不平衡问题的同时引入了一个新问题:部分分类评分较低的负样本的检测框质量评分在训练过程中没有受到监督.这就可能出现一种情况:一个真正的负样本(分类评分低但拥有一个不可信的极高的检测框质量评分)排在一个真正的正样本(分类评分不够高且检测框质量评分较低)前面.为了解决这一问题,FL-Net使用GFL[26−27]作为网络头部.GFL由Quality Focal Loss(QFL)、Distribution Focal Loss(DFL)和Distribution-Guided Quality Predictor(DGQP)三部分组成.
图 6 NMS流程
1.3.1 QFL模块
QFL通过替换对应类别置信度的类别标签(0或1)为质量标签(0∼1)将分类评分和检测框质量评分联合起来,如图7所示.QFL可以用公式(4)表示,其中:y为质量标签,σ为采用Sigmoid函数的多重二元分类,β参数用来控制降权率,这里取β=2.
图 7 类别置信度
1.3.2 DFL模块
DFL使用回归分布对边界框进行建模.为了使网络快速聚焦到标签y附近区域,DFL使用交叉熵函数优化离标注最近的两个位置的概率,可以用公式(5)表示,其中Si由i+1个Softmax函数组成.
1.3.3 DGQP模块
DGQP使用学习到的边框分布的统计特征指导分类质量评估.选取DFL中学习到的K个最大分布离散概率和平均概率作为输入特征,依次经过全连接层、ReLU激活、全连接层、Sigmoid激活,最后与QFL中的分类表征相乘.DGQP可以用公式(6)表示,其中:W1、W2是两个全连接层,F为输入特征.
2 实验数据
Brackish数据集由89个视频文件组成,逐帧切割每个视频文件以便进行训练,共得到14 518幅图片.根据Brackish提供的标注信息,将14 518幅图片按照8︰1︰1分割成训练集、测试集和验证集.Brackish共包含六个物体种类,各物体种类所包含的标注数量如表1所示.
3 实验结果与分析
表 1 各物体种类对应标注数量
3.1 实验平台
实验在Manjaro Linux系统下搭建的PyTorch[28]和MMDetection[29]环境下进行,各项参数如表2所示.
表 2 实验平台各项参数
3.2 评价标准
采用MS COCO数据集的评价指标评估模型的有效性,采用每秒内识别的帧数(FPS)评估算法的推理速度.目标检测的通用指标为准确率Precision(见公式(7))和召回率Recall(见公式(8)),其中:TP为True Positive,TN 为True Negative,FP为False Positive,FN 为False Negative.
MS COCO数据集以平均准确率(AP)作为评价指标,各指标含义见表3.其中Intersection over Union(IoU)为交并比,即产生的候选框与原标记框交集与并集的比值(见公式(9)).
表 3 MS COCO评价指标及其含义
3.3 实验细节
优化器使用Adam[30],学习率衰减使用余弦退火函数(CosineAnnealing)并在第一个epoch使用线性warmup策略,相关参数设置见表4.在骨干网络,冻结第一个阶段(stage);在颈部,仅获取骨干网络最后三个阶段的特征信息;在头部,使用Soft-NMS去除冗余的检测框.
3.4 消融实验
为了验证空洞卷积、MetaAcon和Soft-NMS的有效性,进行消融实验研究各模块对水下海洋生物目标检测的影响.将空洞卷积、MetaAcon和Soft-NMS逐一插入检测器中,并使用MS COCO评价指标评估其性能,实验细节与第3.3节说明一致.实验结果表明:添加三个模块使得AP指标提升1.1%,达到了预期目标,如表5所示.
表 4 模型相关参数
表 5 消融实验结果
3.4.1 ResNet消融实验
为了验证ResNet18在水下海洋生物目标检测上相较于ResNet50具有快速轻量化的优点,选择Faster R-CNN、RepPoints、ATSS等算法进行实验,每组实验除了骨干网络不同外其余参数均相同.实验结果表明:对于大部分算法,ResNet18的AP比ResNet50低0.7%∼1.4%,但训练时间缩短24%∼41%,FPS提高31%∼58%;对于Grid RCNN,ResNet18的AP比ResNet50高0.7%;对于FL-Net,结合动态激活函数和空洞卷积的ResNet18的AP和ResNet 50相当,但训练时间缩短32%,FPS提高21%.综上所述,相较于更深层的残差网络,ResNet18在水下海洋生物目标检测上具有快速轻量化的优点.实验数据如表6所示.
3.4.2 空洞卷积消融实验
空洞率是空洞卷积中最重要的参数,控制卷积核的间隔数量.为了确定合适的空洞率大小,对空洞率等于2、3、4、5进行了实验,实验结果表明空洞率等于2在本实验中效果最好,如表7所示.需要注意的是,空洞率等于1即为普通卷积,实验结果见表5.
表 6 ResNet消融实验结果
表 7 空洞卷积消融实验结果
3.4.3 MetaAcon消融实验
MetaAcon的β参数具有逐层、逐通道和逐像素三种不同的结构,为了验证各种结构的有效性,分别对三种结构进行了实验.需要注意的是,这里的实验细节与第3.3节存在差异,头部使用NMS.实验结果表明:逐像素的结构对本实验的提升最大,如表8所示.
表 8 MetaAcon消融实验结果
3.4.4 Soft-NMS消融实验
Soft-NMS通过阈值对权重进行控制,IoU小于阈值将会被降权.为了验证不同阈值对实验结果的影响,分别进行阈值为0.5、0.6、0.7的实验,实验结果表明:0.5是本实验适合的阈值,如表9所示.
表 9 Soft-NMS消融实验结果
3.5 对比实验
为了验证FL-Net在水下海洋生物目标检测的有效性,选择了一些最经典、最先进的研究,包含Faster R-CNN、RepPoints、FreeAnchor[33]、PAA、FCOS等,使用默认参数和MS COCO评价指标在Brackish数据集上进行实验.其中:FL-Net使用ResNet18作为骨干网络,其余模型使用ResNet50.实验结果如表10所示.
表 10 对比实验结果
PAA的AP比FL-Net高0.6%,但所需训练时间是FL-Net的2.6倍,推理速度仅为FL-Net的1/4;YOLOF的训练时间和推理速度与FL-Net相当,但其AP比FL-Net低18%;Cascade R-CNN的APM和APL取得了最优,但综合性能却不如FL-Net,说明该模型更适合大目标检测,而Brackish数据集中小目标居多.FL-Net、PAA、YOLOF和FSAF的可视化目标检测结果如图8所示.实验结果表明:FL-Net在保证准确率的同时降低了训练时间、提高了推理速度,在三者间取得了良好的平衡,达到了预期目标.
图 8 可视化检测结果
4 结论
本文针对面向水下环境的海洋生物目标检测进行了研究,提出了一种快速轻量化目标检测模型FL-Net.FLNet使用结合MetaAcon和空洞卷积的ResNet18作为骨干网络,降低训练时间、提高特征提取能力;使用单阶段GFL方法作为头部,提高推理速度;使用Soft-NMS去除冗余的检测框,提高准确率.实验证明:与传统模型相比,FL-Net在背景简单、物体种类较少的数据集上具有一定优势,后续考虑推广到口罩佩戴检测、电梯间电动车检测等实际应用中.