基于改进CenterNet的舰面多目标检测算法*

2022-11-05 10:52朱兴动范加利王
舰船电子工程 2022年9期
关键词:样本函数特征

黄 葵 朱兴动 范加利王 正 汪 丁

(1.海军航空大学青岛校区 青岛 266041)(2.海军航空大学 烟台 264001)

1 引言

随着神经网络及光学技术等不断快速发展,计算机视觉相关理论逐步成熟,研究成果在各领域纷纷落地。计算机视觉的应用在各个行业得到了不同程度的开展,在国防工业领域的应用也得到了极高的重视。大型船舶作为未来舰艇的发展方向之一,其甲板平面管理成为重点问题[1]。舰面空间非常有限,加之较为复杂的电磁环境,利用视觉方案实现舰面目标的定位和追踪管理方案相对较为成熟。舰面目标的检测与识别是舰面态势感知的重要数据入口,同时对舰面无人化作业具有重要意义[2]。

目标检测算法近年得到了快速的发展,从传统人工标定特征的模板匹配等方法,到基于神经网络的图像识别技术,目标检测已经有了多条技术路线。当前先有的目标检测算法有R-CNN系列、SSD系列以及YOLO系列[3]。RCNN是一种双阶段(Two-Stage)的算法,首先提取特征产生先验框,后对框进行分类和回归,双阶段的算法精度较高而速率较低。而SSD和YOLO系列算法是One-Stage模式,可以直接进行分类和回归处理[4]。目前最为常用的算法是YOLO系列,但其同样存在短板,一是需要设定先验框,这种方式会限制算法的性能。二是利用NMS进行非极大抑制处理消耗很多算力,同时容易产生漏检或者重复框。这些算法都是依赖于Anchor-based思想,而CenterNet算法是一种基于Anchor-free的目标检测算法,是从CornerNet算法的基础上改进而来的,去除了YOLO系列算法需要设定先验锚框的弊端,同时可以提取到关键点的信息,具有较好的通用性。

2 CenterNet算法原理

CenterNet算法是从 2018年 Law 等[5]提出的CornerNet算法为基础,CornerNet算法是预测两个角点,因此需要判断哪些角点是属于同一个目标。而 2019年 Zhou等[6]提出了 CenterNet目标检测算法,直接通过目标中心点的特征信息进行目标分类和回归,相比于CornerNet利用角点进行检测可以更好的获取到内部的特征,并取得了一定的效果。但在舰面目标检测的应用上,由于遮挡和角度问题,检测精度依旧不是很理想。本文针对舰面目标检测的痛点问题,在CenterNet目标检测模型的基础上进行改进和优化,通过数据增强以及注意力机制等策略优化网络以提升目标检测模型的性能。

CenterNet网络模型采用的是先编码后解码的网络结构提取图像的特征,然后通过检测网络分别预测网络的中心点、偏移值以及尺度等信息,并利用关键点的特征信息来预测目标的类型和回归框的位置以及目标的长与宽[7],检测方式如图1所示。文中根据CenterNet网络存在的问题和检测目标的特点,提出了与目标特征相匹配的检测分支,分别为舰面目标热力图预测、中心点偏移量预测和目标尺寸预测[8]。

图1 CenterNet检测方式

CenterNet算法的网络结构主要可以分为图像输入、编码模块、解码模块以及检测网络[9],如图2所示。

图2 CenterNet算法检测流程

图像输入的尺寸可以根据图像设备设定,在输入模块中会resize为512×512的图像,同时为了防止变形会对空白部分进行填充。

编码和解码网络作为重要组成部分,主要是完成目标中心点的特征信息提取,常用的结构主要有Resnet-18、DLA-34、Hourglass-104或者ResNet等,本文所采用的是带有反卷积的ResNet结构。

在检测网络部分主要有三个分支,热力图(Heat map)分支预测关键中心点,中心偏移图(Center offset map)预测中心点的偏移,高宽图(Height width map)预测框的长和宽[10]。其中,Heat map包括C个通道,每个通道对应一个类别,Center offset map是一个维度为2的feature maps,分别预测x,y方向上中心点位的偏移,Height width map也是一个维度为2的feature maps,分别预测框的长和宽。CenterNet网络的检测流程如图2所示。

3 算法的改进

CenterNet算法相比于YOLO系列算法更为简单,将网格划分的目标检测问题转换成了关键点估计问题。通过实验发现CenterNet算法在简单场景下能够基本实现单目标的正确检测,但在多目标和密集目标等复杂场景时,其检测性能依旧有限,因此需要在原算法的基础上进行进一步的改进,如图3所示。

图3 不同的舰面目标场景

3.1 数据增强策略

CenterNet算法以中心点进行目标估计,因此需要根据充分的数据量以保证各视角下中心特征点有充分的特征信息。数据集决定模型的上限,而好的算法才能逼近上限。从神经网络生成神经网络模型需要利用大量的标签数据进行训练,通过训练使模型达到最为理想的拟合效果。而在舰面目标数据采集数据样本量有限的情况下,需要通过数据增强方法进一步丰富样本数据,防止模型在训练过程中出现过拟合现象[11]。

在数据增强上,主要是解决两个方面的问题,一是由于数据样本有限带来的模型过拟合问题,二是数据样本分布不均衡带来的数据样本不平衡问题。数据增强分为离线和在线两种方式,离线增强是在训练前对数据集进行预处理以获得数量翻倍的增强数据集,而在线增强是在训练过程的预处理阶段中对原数据集中的图像直接进行变换等处理后送入神经网络中,增强过程伴随着整个训练过程。

数据增强方法主要是通过对图片的属性参数进行调整,例如图片的尺度比例、亮暗、色彩以及噪声等属性。通过丰富不同的图像属性来拟合不同舰面场景下的图像特征,增强对不同背景下环境的检测性能。目前常用的数据增强方法主要有Cut-Out、Random Erasing、Mixup以及Mosaic等。CutOut和Random Erasing是在基础变换的情况下,随机生成一个遮挡框加入图片中形成新的样本。文中融合两种类型的组合方式,并加入天气图层叠加尽可能逼近真实环境,如图4所示。

图4 策略示意图

在舰面目标数据集中,由于模型数量配比及图像采集比例问题,不同目标的数量存在着较大的差异,因此在训练过程中容易出现数据集的不平衡,导致数据样本采集过采样或欠采样。为了保持五类舰面目标的样本的分布均衡性,所以需要在数据增强的过程中通过重采样技术在数据增强的过程中对生成的样本数量进行调整。

重采样技术是通过调整多数类和少数类在整个数据集中的比例来实现不同类型目标数据的再平衡。重采样技术通常分为欠采样和过采样方法。欠采样方法是通过删除部分多数类来达到平衡,而文中为了保留充分的数据量采用过采样方法,即通过数据增强方法合成新的少数类样本,将新的样本添加到原始的数据集中来达到各类样本的平衡。SMOTE是由Chawla等[12]提出的基于随机过采样改进的一种线性插值过采样方法,通过取每一个稀有样本数量点x,以样本点附近选出k个最临近的样本点,并以0~1的采样倍率进行线性插值从而产生新的合成数据,其公式如下:

通过将SMOTE算法与数据增强策略进行组合,不仅可以解决了简单复制少数类样本带来的数据样本重复问题,还能可以根据原始数据集进行灵活调整,可以使得目标数据得以充分的利用。

3.2 CBAM注意力机制

注意力机制最早是应用在自然语言领域,随后在网络模型引入计算机视觉领域后,经实验发现同样对目标检测模型的性能有提升。

注意力机制主要是用来解决特征融合产生的信息干扰问题,主要分为空间注意力模块(Spartial Attention Model,SAM)和通道注意力模块(Chanel Attention Model,CAM)[13]。本文引入了CBAM注意力模块[14],其核心是让神经网络忽略无关特征而关注重要的内容,因而可以自适应调整在通道域和空间域上的特征融合权重,使网络模型更加关注舰面目标的特征信息而忽略甲板面等背景信息。两个子模块的模型如图5和图6所示。

图5 CAM模块

图6 SAM模块

在CAM模块中,将输入的特征分别通过最大池化和平均池化两种池化方式后,再通过多层感知机(Muti-Layer Perception,MLP)输出得到对应的特征。多层感知机由两个全连接层组成,先后进行降维和升维操作,然后将特征相加之后通过激活函数后得到CAM模块的通道注意力分布权重,其计算公式如下:

其中,O表示输入的原特征,σ表示Sigmoid激活函数。

在SAM模块中,将CAM模块得到的权重与原特征进行相乘后作为输入,将平均池化和最大池化得到的特征图后进行堆叠并进行卷积操作,再通过激活函数后获得空间注意力的权重分布。其公式如下:

其中,F是模块的输入,f7*7是进行7*7的卷积操作。

在两个模块的组合搭建上,作者通过实验证明先通道后空间并与原特征并行时效果最好,能够最有效地保留图像的特征信息。在与早期发展的SE(Squeeze-and-Excitation)模块[15]相比时,CBAM 模块可以同时关注到通道特征和空间特征,以此来调节对不同通道和空间位置的注意力权重,提高对目标特征的关注程度和检测性能。

3.3 损失函数改进

通常CenterNet算法的损失函数同样可以分为三个子模块,热力图关键中心点预测损失函数,中心点偏移量预测损失函数和角度预测损失函数[16]。其总的损失函数为

其中,Lk表示热力图关键点预测损失函数,Langle表示关键点角度预测损失函数、Loff表示关键点偏移量预测损失函数,λ表示超参数。

根据舰面目标检测的特点,考虑到不需要角度问题的设定,因此只设定热力图关键点损失函数、关键点偏移量损失函数以及目标尺寸损失函数。在损失函数中,中心点的位置至关重要,会直接影响到检测框的准确率,为了均衡热力图中的正负样本,文中采用中心损失的变体作为热力图损失,其表达式为

其中,Yxyc为关键点的实际位置和类别,̂xyc为关键点位置和类别的预测值,α和β为超参数,N为关键点的数量。

而在关键点偏移量损失中,由于经过特征提取网络进行下采样后,坐标在映射过程中会发生偏移,因此需要进行补偿,中心点偏移损失函数的表达式为

其中,为网络预测后的偏移值,p表示图像中心的坐标值,͂表示缩放后的中心近似坐标值,T表示缩放因子。

最后根据目标检测框的大小,建立目标尺寸损失函数,其公式为

其中,和分别表示真实的检测框横纵长度,xc和yc分别表示检测框横纵长度预测值。

最后得到算法总的损失函数为

其中,λs和λoff为超参数。

4 实验结果与分析

4.1 数据集的创建

在数据集的建立上,在实验室仿真平台上搭建等比例模型,通过购置相应的模型配件进行组装上色,还原甲板面上舰面目标的分布情况,并对摄像机视场进行调整,以贴近实际的使用场景。

实验中利用工业相机捕获图像信息,图像格式为1280×720的JPG图像。然后利用LabelImg图像标注工具对图像中舰面目标的类型和位置进行标注,得到PASCAL VOC数据集,用于网络模型的训练,具体的样本数据如表1所示。

表1 数据集设置

4.2 实验参数及评价指标

本实验中网络的训练环境如表2所示。

表2 实验环境

在训练过程中,设置迭代轮数为40,初始学习率为0.0001,结束学习率为0.000001,在训练集和验证集上的的loss曲线如图7所示。

图7 损失函数图

为评价目标检测模型的性能,本文根据需要设定以下参数作为评价指标。

1)查准率(Precision,P)和召回率(Recall,R)分别表示对召回目标的检测正确率和对正确目标的召回比例,计算公式如下:

其中,TP表示预测的目标类别和真实类别一致样本的数量;FP表示预测的目标类别和真实类别不一样的样本数量;FN表示未被检测出来的样本。

2)平均准确率是一种常用的多类图像分类的评价方法,可以衡量目标检测性能的优劣,通常用各类的AP均值来mAP来表示,其计算公式为

3)帧率,是神经网络每秒预测图片的数量,可以用来衡量模型的计算性能。

4)模型体积,用于表示模型占电脑存储空间的大小,用于衡量模型的轻量化水平。

4.3 实验结果

为进一步对比分析模型的优劣,在实验中加入主流的Faster R-CNN算法和YOLOv4算法,在相同的数据集上进行对比,通过相同的训练策略对算法进行多次测试并取平均值,以通过评价指标来进行对比,结果如表3所示。通过实验表明,改进的CenterNet算法准确率得到了较大的提升,模型体积也相对较小便于部署,并且相比于其他算法速率都有较大的优势。

表3 算法性能对比

通过在相同的样图上进行测试,对比图8和图9可以发现,图8中漏检了图像中间的plane2和plane3等目标,在图9中问题得以解决并且检测框的位置和大小也更加合理。

图8 原CenterNet效果

图9 改进的CenterNet效果

根据表4可以得知,在两类飞机等简单目标上,各类算法的性能都较为优秀,效果提升较小。但在车辆和人等小目标上,改进的CenterNet算法性能提升较大。通过图10也可以看出在小目标上的检测率提升更为显著。

表4 算法性能对比

图10 算法准确率对比图

通过算法对比分析可以得到,YOLOv4算法虽然检测准确率最高的,但是其检测速率相对较慢。而CenterNet算法作为一个端对端的网络,只有一个候选框因此免去了非极大抑制等计算,以极小的代价来实现感知物体内部特征,从而能有效抑制漏检和误检,在检测速度和检测准确率上保持一个相对均衡的水平。在相同阈值的情况下实验表明,数据增强方法对召回率的提升有较大帮助,可以有效降低模型的误检率。通过损失函数的改进,进一步提高了模型对多类目标拟合度和检测性能。而注意力机制模块的引入使得模型抗背景干扰的能力得到了改善,有效解决了背景干扰问题。

5 结语

本文针对舰面目标类型多、环境复杂、位置密集等问题,通过数据增强方法进一步丰富样本信息,使得其可以充分利用中心点特征实现目标检测与识别。为进步分离目标与背景特征,引入注意力机制模块来自适应调整空间及通道特征融合权重,使目标能够更好地从背景中剥离出来,增强模型的抗背景干扰能力。最后针对遮挡问题,对损失函数进行改进,提升在遮挡情况下的检测性能。通过实验对比分析,本文提出的方法在舰面目标检测上检测率达到了93.22%,速率达到了35fps,能够满足舰面目标检测准确性和实时性的要求。

猜你喜欢
样本函数特征
二次函数
第3讲 “函数”复习精讲
用样本估计总体复习点拨
二次函数
函数备考精讲
如何表达“特征”
不忠诚的四个特征
推动医改的“直销样本”
抓住特征巧观察
随机微分方程的样本Lyapunov二次型估计