APP下载

轻量化改进网络的海天线检测模型*

2023-06-27杨露菁魏鸿波

火力与指挥控制 2023年5期
关键词:轻量化天线损失

张 鹏,杨露菁,黄 亮*,魏鸿波

(1.海军工程大学电子工程学院,武汉 430033;2.解放军92808 部队,海口 570100)

0 引言

水面无人艇即无人驾驶操作的水面舰艇,是将传统船舶技术与无人智能技术相结合的新产物,具有体积小,机动性强,隐身性能好,成本较低,无人员伤亡等优点[1]。近年来,无人艇在海洋环境监测、海上救援、海上军事行动等领域的作用越来越显著[2]。潘磊等提出可以利用无人艇与反潜巡逻机互补,大幅提高反潜效能[3]。实际任务中,无人艇需要在无干预的情况下,借助各类传感器对自身状态与周边环境进行感知研判,规避各类障碍,自主航行。与其他传感器相比,相机类图像传感器具有获取信息丰富、便于监控、成本较低等优势,在无人艇环境感知任务中意义重大。

根据先验知识可知,在海上远距离平视状态下,海上的目标在视场中通常按照位置远近关系从海天线位置向画面边缘分布。确定海天线的位置,能够在进行海上障碍物识别时辅助确定候选区域,减少计算量,加快目标识别速度,抑制噪声干扰,降低虚警率。且无人艇可根据海天线在画面中的位置及倾斜程度对自身姿态进行判断。

现有的海天线检测算法多是基于海天线线性或像素梯度特性,结合不同的梯度增强、噪声抑制及目标筛选算法而来。韩嘉隆等使用二维的OTSU算法对图像进行分割,协助生成海天线[4]。徐良玉等提出利用结构森林算子实现快速边缘检测,再利用Hough 变换拟合海天线[5]。孙熊伟等提出基于边缘相位编码的海天线生成方法[6]。王学伟将求取海天线方程归结为一个回归分析问题,利用最小二乘法拟合得出海天线[7]。詹维等借助LSD 线段检测算法获取图像中局部直线轮廓辅助提取海天线[8]。李慧玲等借助线性滤波器扩大海天线附近的灰度梯度差,用门限分析法提取边缘坐标提取海天线[9]。李林丰等将梯度图像区域累加结果的极大值位置作为海天线候选位置,通过随机抽样一致(RANSAC)算法拟合直线,筛选出海天线[10]。LI F X 等根据海天线区域在时域上灰度变化差异较大的特征来提取海天线区域,进而检测海天线[11]。

近年来,图像处理逐渐向深度学习方向发展,神经网络也逐渐被引入海天线检测领域。YANG W H等采用语义分割的方法,利用高斯混合模型分割图像区域提取海天线[12]。胡耀辉等利用VGG 网络对图像海天线区域进行分割,然后利用边缘检测和Hough 变换提取海天线[13]。张志祥等利用卷积神经网络提取图像特征,划分图像场景,选择合适的方法进行海天线检测[14]。LIU J Y 等利用高斯混合模型(GMM)来拟合海洋图像的语义模型,再从水体边界点估算海天线[15]。

本文利用目标检测算法,将YOLOv5 网络模型与ShuffleNetV2 网络[16]相结合,搭建轻量化特征提取网络,形成海天线提取模型。该模型容量小,检测速度快,能够快速准确检测海天线,为无人艇驾驶及海上目标检测提供了技术支持。

1 算法原理

1.1 方法介绍

在海上远距离平视状态下,视场内的画面通常可分为海面、天空和海天线3 部分,海面和天空在远处延伸交接处即为海天线,故可通过识别画面中的海面与天空,提取海天线区域,抑制画面中其他区域的噪声干扰,再利用线性检测的方法检测海天线。

海天线检测通常是为检测海上目标等任务做准备,对检测速度要求较高,且画面中的海天线只存在一处,占画面的比例较大,不需要过于复杂庞大的检测网络。本文基于YOLOv5 算法设计了海天线检测模型YOLOv5-SH,模型使用ShuffleNetV2 网络单元搭建特征提取网络,提取海天线区域,而后采用Canny 边缘检测算子与Hough 变换结合的直线检测方法提取海天线[17]。检测模型如图1 所示。

图1 海天线检测模型图Fig.1 Model diagram of sea-sky line detection

1.2 YOLOv5 网络模型

近年来,基于神经网络的目标检测技术发展日渐成熟,各类快速准确的目标检测算法层出不穷。YOLOv5 是YOLO 网络中最新的网络模型,在前代YOLO 网络的基础上,增加了数据增强、自适应锚框计算以及网络深度宽度按比例缩放等模块。模型由输入端(Input)、主干网络(Backbone)、颈部(Neck)和输出端(Prediction)4 部分组成。

输入端采用Mosaic 数据增强[18]、自适应锚框计算和自适应图片缩放方式对输入图像进行预处理。

主干网络使用Focus 结构对图像进行切片操作,利用两种CSP 模块划分基础层的特征映射,然后将其通过跨阶段层次结构合并,SPP 层用来分离最重要的上下文特征。

颈部采用FPN+PAN 结构的路径聚合网络结构,能加快网络中推理信息的传输,加强网络的特征融合。

输出端针对检测目标的大小不同,设计了3 个不同尺寸的输出通道,分别检测大、中、小目标。最后通过非极大抑制(NMS)方法保留置信度最高的预测框,完成目标检测过程。

1.3 ShuffleNetV2 网络

ShuffleNetV2 网络是Ningning Ma 等2018 年在ECCV 会议提出的一种轻量化网络。该网络以降低内存访问成本(memory access cost,MAC)为目标改进而来。具体改进为:1)在开始处增加通道分割操作,将输入特征的通道分成两个宽度相同的通道,模拟分组过程,并保证通道数相同,实现通道宽度平衡;2)将1×1 的分组卷积改为普通卷积,减少不必要的分组卷积;3)将通道混淆操作移到了拼接操作之后,降低网络碎片化程度;4)将stride=1 时的add 操作替换成concat,减少元素级操作。其网络基本单元如图2 所示。

图2 ShuffleNetV2 网络单元Fig.2 ShuffleNetV2 network unit

1.4 模型的改进

为实现快速准确提取海天线区域,充分利用YOLOv5 网络模型与ShufflenetV2 网络各自的优点,对两种网络进行结合和改进,得到YOLOv5-SH 网络模型。

原始的ShufflenetV2 网络单元使用ReLU 函数作为激活函数,该损失函数计算简单,应用范围广,但存在容易出现“坏死”而减少模型有效容量的情况。本文采用Hardswish 替换ShufflenetV2 网络单元中的激活函数[19],在增加少量计算量的情况下,保证网络单元的“活性”。Hardswish 函数的计算公式为:

使用ShufflenetV2 网络单元搭建特征提取网络。步长(stride)为2 的网络单元(SHU-2)可以对特征图进行下采样,并增加通道数;步长为1 的网络单元(SHU-1)可以在进行特征信息提取的同时,避免出现特征退化。参考ShufflenetV2 网络的搭建方式,以1 个SHU-2 连接3 个SHU-1 为一组,对特征图进行下采样及特征提取。将以上过程重复4 次,得到所需的轻量化特征提取网络,如表1 所示。

表1 轻量化特征提取网络的总体架构Table 1 Overall architecture of lightweight feature extraction network

将YOLOv5 的骨干网络由Darknet53 替换为轻量化特征提取网络,连接SPP 层。由于海天线区域在画面中只存在一处且占据画面比例较大,检测过程中无需融合不同大小的特征图,颈部只需一个3×3 卷积层连接输出端模块。输出端同时调整,只保留一个输出通道。

Hough 变换能够通过将原图像上的点映射到用于累加的参数空间,实现对直线的识别。海天线区域检出后,在检出区域中使用canny 算子进行边缘跟踪,再使用Hough 变换的方法,提取线性特征,即可得到海天线。

YOLOv5-SH 模型整体结构如下页图3 所示。

图3 YOLOv5-SH 模型结构图Fig.3 Structure diagram of YOLOv5-SH model

1.5 损失函数

损失函数是神经网络中重要的组成部分,其利用检测结果与标注数据的误差评价检测网络的准确性,通过反向传播调整网络参数完成网络的训练。YOLOv5-SH 模型的损失与一般的目标检测算法相同,分为分类损失(classification loss)、位置损失(localization loss)及置信度损失(confidence loss)。总损失可表示为:

本研究为单类目标,分类损失恒为0,置信度损失使用二元交叉熵损失函数的方法计算,位置损失使用CIoU(Complete IoU)来计算Bounding box 回归。

二元交叉熵函数是二分类问题中常用的一个损失函数,其计算过程可表示为:

式中,N 表示样本的数量;yi表示二元标签0 或者1;p(yi)表示输出为yi的概率。

在YOLOv5s 模型中用来计算Bounding box 回归的GIoU(Generalized IOU),由于没有考虑预测框与真实框中心点与长宽比的回归,位置损失计算收敛不够快且回归不够精确。

2019 年ZHENG Z H 等提出计算预测框与真实框重叠面积与中心点距离的DIOU(Distance IoU)来加速收敛,并在DIOU 的基础上,加入预测框与真实框长宽比的损失计算提出CIOU,进一步提高收敛速度和回归精度[20]。其计算方法为:

式中,IoU 表示预测框与真实框的交集与并集的比值;d 表示预测框与真实框中心点的距离;c 为预测框与真实框的最小外接矩形的对角线长度;υ 为度量预测框与真实框宽高比一致性的参数;α 为一个大于零的权重系数,其计算过程如下:

式中,w0与h0表示真实框的宽和高;w 与h 表示预测框的宽和高。

2 实验与结果分析

2.1 实验数据与预处理

本文采用的数据集,来自于人工查找互联网上各类情景海面视频通过分帧生成图片,包括海天线清晰、海天线模糊、海天线易混淆等情景,共计5 306幅图像,图像示例如图4 所示。

图4 各类场景下的海天线图片Fig.4 Pictures of the sea-sky line in various scenarios

为方便网络训练,将所有图像采用边缘补充像素的方法统一补充为正方形并缩放为608×608 像素大小。检测的对象为海天线区域的海面和天空,使用LabelImg 标注工具,用矩形选定框选定海天线区域海面和天空,生成xml 格式的标签文件。按照8∶1∶1 的比例将数据集分为训练集、验证集与测试集。

2.2 实验环境与参数设置

本文进行海天线检测模型YOLOv5-SH 的训练和测试环境为Ubuntu20.04 操作系统,Python3.8 编程语言,Pytorch1.8.0 深度学习框架。

训练阶段的超参数设置:初始学习率为0.003 2,衰减系数为0.12,动量为0.843,批大小(batch size)为32,训练次数(epoch)为200 次。

检测阶段参数统一设置为:Canny 算子阈值为(50,150),sobel 算子为3,Hough 变换的阈值设置为80,不调用GPU 参与计算。

2.3 评估指标

目标检测中通常用平均精准度AP(average precision)和平均精准度的均值mAP(mean average precision)来评价模型的检测效果和性能,AP 为召回率(recall)和精确率(precision)曲线下的面积,本研究为单类目标,AP 即等同于mAP。计算公式如下:

式中,Pr 为检测的准确率;Re 为模型的召回率;TP为准确预测的个数;FP 为误检数;FN 为漏检数。

检测速度用FPS(frames per second)即模型每秒能处理的图片数量来表示。用模型权重大小、参数量以及浮点数来衡量模型的复杂程度。

2.4 实验对比

为验证模型的有效性,需要进行消融实验。本文构建两种模型来与YOLOv5-SH 模型做对比。1)直接用YOLOv5 中最轻量的YOLOV5s 网络结合Canny 算子与Hough 变换对画面中的海天线进行检测,命名为YOLOv5s+H;2)使用文献[1]中所提的基于二维OTSU 的海天线提取算法对海天线进行检测,命名为OTSU-H。

图5 为YOLOv5s+H 模型与本文所提的YOLOv5-SH 模型训练期间的损失与AP 变化对比图,从图中可以看出,改进后的YOLOv5-SH 模型收敛的较慢且损失更高。在准确率方面,YOLOv5-SH经过15 轮训练之后即达到了和原始YOLOv5s 网络一致的准确性。

表2 为YOLOv5-SH 模型与YOLOv5s+H 模型在复杂度上的对比。由表2 可知经过轻量化改进后的网络模型的大小、参数量以及浮点运算量相较于原始的YOLOv5s 网络下降明显。

表2 两种网络复杂度对比Table 2 Complexity comparison of two kinds of models

综上所述,本文所提YOLOv5-SH 模型与YOLOv5s+H 模型相比,在检测速度与模型复杂度方面有较大优势,更易于在工程上应用。

2.5 检测结果与分析

根据模型流程设计,在进行海天线检测时,先检测画面中的海天线区域。图6 为本文所设计模型与原始的YOLOv5s 网络在示例图片中的海天线区域检测效果。

图6 海天线区域检测效果对比Fig.6 Comparison of detection effect of sea-sky line area

对比图6 中的海天线检测效果可以看出,经过轻量化改进后的YOLOv5-SH 模型在检测海天线区域的检测结果的置信度评分略低于原始的YOLOv5s 网络,在一般场景中能够满足海天线检测的需要。

图7 为本文所提模型与文献[1]所用方法对示例图像进行海天线检测的效果对比。由图7 可知,在海天线清晰的场景中,两种方法的检测效果不相上下,但在较复杂的场景中本文所提方法明显优于传统的线性提取方法。

3 种方法对测试集中的531 张图片的海天线检测效果统计结果如表3 所示。经过目标检测网络提取海天线区域后,海天线检测的准确度明显提高。

表3 检测结果统计Table 3 Statistical table of detection results

分析可知,在YOLOv5-SH 模型中目标检测网络抑制了图像中的大部分干扰像素,海天线检测针对性更强,检测也更准确;传统的算法需要对整张图片进行OTSU 极化、边缘检测及Hough 变换,容易被具有直线边缘特征的干扰因素影响,难以准确检测出海天线。

YOLOv5-SH 模型精度高、检测速度快,能够满足海天线实时检测任务。

3 结论

针对海天线检测这一任务,提出了一种基于轻量化改进的YOLOv5 网络的YOLOv5-SH 模型用于检测海天线。该模型以YOLOv5 网络为基础,利用ShuffleNetV2 网络单元搭建主干特征提取网络,并加入Canny 算子与Hough 变换相结合的直线检测算法,在检测精度少量下降的情况下,大幅降低模型的规模,提高了模型检测速度。

在自制数据集上的检测结果表明,所提模型在各类海况下检测海天线准确率达87.95%,检测速度为32.9 FPS,权重大小仅244.6 K,具有准确性优、鲁棒性好、检测速度快、可移植性高的优势。相较于传统的OTSU 结合Hough 检测算法,本模型检测精度提高22.36%,且检测速度符合实时检测需求;同时模型权重小,有利于移植到低性能的设备平台上。

猜你喜欢

轻量化天线损失
汽车轻量化集成制造专题主编
胖胖损失了多少元
一种轻量化自卸半挂车结构设计
一种轻量化自卸半挂车结构设计
玉米抽穗前倒伏怎么办?怎么减少损失?
ETC相控阵天线与普通天线应用对比分析
ALLESS转动天线射频旋转维护与改造
理论宣讲要上接天线、下接地气
瞄准挂车轻量化 锣响挂车正式挂牌成立
一般自由碰撞的最大动能损失