基于YOLOv5 无人机小目标检测技术研究

2023-11-29 02:11张丰节郁书好王冠凌代广珍
关键词:注意力阈值精度

张丰节,郁书好,王冠凌,代广珍*

(1.安徽工程大学电气工程学院,安徽 芜湖 241000;2.高端装备先进感知与智能控制教育部重点实验室,安徽 芜湖 241000)

在实际应用场景中,无人机获取的图像可以看作是一个特殊的物体检测场景,这些图像中的小目标信息通常特征较少. 当无人机飞行高度变化时极易导致物体比例发生变化,使得检测精度降低,在密集场景中可能会存在目标之间相互遮挡的情况,使得一些目标遗失.[1-4]因此,需要设计一种适用于搭载在无人机上的目标检测模型. 目前,无人机小目标检测研究取得了较多进展,不少学者在双阶段目标检测算法Fast R-CNN 和单阶段算法YOLO 的基础上给出了优化方案. 宋建辉[5]等在Faster R-CNN 基础上,采用骨干网络ResNet-50 以进行多特征融合,针对正负样本不均衡的问题采用Focal Loss 损失函数进行优化,大大提高了模型的感受野和平均精度. 黄文斌[6]等基于YOLOv3-SPP 模型,在BN 层中添加缩放因子以进行稀疏训练和通道剪枝,再对数据及数据集进行优化,这一方法提升了模型的推理速度和检测精度. 韩玉洁[7]等通过在YOLOv4 上运用空间金字塔池化和路径聚合网络的方法以改进特征层之间的连接,采用自对抗训练、马赛克法等数据增强方法,提升了无人机对地面小目标的检测精度;陈旭[8]等参考了YOLOv5s 的网络结构,设计了一种改进的浅层网络YOLOv5sm,引入可增大感受野的残差空洞卷积模块来提高空间特征的利用率,使得模型的精度在前人的基础上大大提高. 应用无人机航拍视频流进行实时目标检测,对算法模型的检测速度有较高要求,而无人机上嵌入式机载平台算力有限、存储容量小,对于模型参数量较高的双阶段算法,虽然其检测精度较高但检测实时性达不到实际需求.

YOLOv5 模型参数量小,具有推理速度快,精度高等优点,推理速度上最快能够达到140 FPS[9-10].本文采用基于YOLOv5 算法,提出一种无人机小目标检测方法. 主要从两个方面进行改进:在模型主干网络引入CAM-SAM 注意力模块,在特征融合中采用跳跃式连接方法,进行不同尺度的特征融合;在预测网络,使用高斯加权的Soft-NMS 替换NMS( 图1).

图1 改进的YOLOv5 网络结构

1 YOLOv5m 算法改进

1.1 注意力机制

注意力机制源于对人类视觉的研究,使神经网络能够专注于一个特征子集并选择特定的输入,将输入图像特征输出到下一层进行加权组合,增强特征图中有效特征的积累,并在深度的学习中得到广泛应用[11-12].本文在CBAM 基础上进行改进,得到通道-空间注意力模块CAM-SAM,其结构如图2 所示.CAM-SAM 利用空间和通道两个维度的注意力权值,挖掘小目标密集区域的特征信息,提高小目标区域的注意程度.

图2 改进的通道-空间注意力结构

图3为注意力机制CBAM 的结构,与通道-空间注意力进行对比,通道-空间注意力的优点在于没有将CBAM 结构中的特征Ms与通道特征向量F1相乘输出最终特征图,而是将特征Ms与通道特征Mc相乘得到的结果作为最后的特征输出,其优点是减少了该模块的参数量和计算量,使其能作为轻量级通用 模块集成到检测网络中.

图3 CBAM 结构

通道和空间注意力采用平行-串联的方式连接组成通道-空间注意力模块.首先,将特征F∈RC*H*W输入通道注意力,进行全局最大池化和全局平均池化,将生成的两组序列发送给神经网络MLP,得到两组特征向量1×1×C,将两组特征向量相加,并使用sigmoid 函数激活,得到通道注意权值Mc,并与原始输入特征F相乘得到通道特征向量F1. 计算公式为:

将通道-注意力生成的特征向量F1作为空间注意力模块的输入特征,得到两个H×W×1 特征图,并利用7*7 卷积核进行降维操作生成一个H×W×1 特征图,得到空间注意权重Ms,最后与通道注意权重Mc相乘,输出通道-空间注意力特征图.F2

[13-14]计算公式为:

上式中,F∈RC*H*W为输入特征图,C为特征图的通道数,H和W分别为特征图的高度和宽度,MLP为人工神经网络,表示使用7×7 的卷积核对特征进行卷积处理,σ 为Sigmoid 函数,⊗表示两个向量之间的乘法.

1.2 非极大值抑制

NMS 是目标检测领域中重要的组成部分,在YOLO 算法的后处理阶段中,采用非极大值抑制NMS进行检测框筛选,抑制非极大值的元素.NMS 算法是对每个类别所有检测框的分类得分进行排序,计算分数最高的检测框与其他框的IOU 值,删除大于阈值的框,保留小于阈值的框.[15]其目的是在检测目标生成的多个候选框中,去除冗余边框,保留最佳候选框.存在的问题是:当面对多目标且相互重叠遮挡的情况时,NMS 算法易将重叠程度大的边框得分置为0,从而造成目标漏检.因此,本文采用Soft-NMS算法并引入分数重置的方法,完成预测框的筛选.通过对大于阈值的框进行惩罚,保留IOU 值大且置信度高的同类别遮挡目标,利用加权降低置信度的方法,取代原NMS 中直接删除大于阈值的框.Soft-NMS加权的方式有线性加权与高斯加权[16-17],线性加权的公式如(5)所示.

式(5)中,Si为第i个预测框对应的分类得分,Ni为预设阈值,bi表示第i个预测框,M为每一轮得分最高的预测框,Xiou为预测边界框面积A与实际边界框面积B的交集与并集的比值.

高斯加权对IOU 值较大的目标得分衰减更强,而线性加权的分数重置函数是一个断层不连续函数,为防止检测序列突然发生变化,提出高斯分数惩罚函数来解决检测序列不连续的情况.对重叠遮挡的候选框使用高斯加权比使用线性加权有更好的检测作用.本文在高斯加权的基础上,对函数进行改进,公式为:

(6)式中,σ 取值0.5,分数重置函数的衰减幅度更大,对于有高度重叠的预测框,有利于预测框bi的置信度得分衰减至分数阈值之下,从而加快预测框的筛选过程.

2 实验结果与分析

2.1 VisDrone 数据集

本文采用天津大学无人机拍摄的数据集VisDrone-2019.数据集共计包含6 471 张训练集图像,548张验证集图像,1 610 张测试集图像,平均每张图片包含50 多个目标,其训练集10 类检测目标样本数量总计343 205 个,检测目标类别一共10 类,包括car, bus, motor, people, pedestrian, van, bicycle, truck,tri-cycle,awning-tricycle[18-19],数据集中,小目标较多.

2.2 评价指标

网络训练基于pytorch 深度学习框架,硬件配置:CPU 为AMD EPYC-7543,GPU 为RTX A5000,24 G内存,云台镜像环境为pytorch1.7.0,Python3.8,Cuda11.0.

模型相关超参数设置:批量大小(Batch Size) 为4,训练周期(epochs)为200,权重衰减系数为0.000 5,初始学习率为0.02.实验评估指标使用平均精度(Averge Precision, AP)、平均精度均值(mean Average Precision, mAP)、参数量(Params)、检测速率(FPS)检验算法的性能,计算公式为:

式(7)和式(8)中,AP代表训练数据集中各类别目标的平均精度值,mAP表示所有类别目标AP值的平均值[18],N为预测总类别数.

评价指标交并比(IOU)计算公式如(9)所示.其中,A为实际框,B为预测框.分子部分A∩B的值为预测框和实际框之间的重叠区域,分母部分A∪B为预测框和实际框所占有的全部区域.

2.3 网络训练结果分析

选择YOLOv5m 作为本文改进设计目标的检测模型. 将YOLOv3, YOLOv4, YOLOv5m 和YOLOv5m+CAM-SAM+Soft-NMS 在相同数据集上进行200 轮训练,实验结果表明,YOLOv5m+CAMSAM+Soft-NMS 模型在平均精度均值上要优于其他3 种模型,且4 种模型在训练约150 轮后逐渐趋于稳定,均没有出现过拟合与欠拟合的情况.

为了验证改进模块的有效性,实验在输入图像分辨率大小为640×640、IOU 阈值0.5、相关超参数和训练轮数相同的情况下,得到训练的实验参数结果如表1 所示.表1 的实验4 通过引入改进的通道-空间注意力CAM-SAM 和高斯加权的Soft-NMS,大大提高了模型的性能,其mAP 为42.1,与原始YO- LOv5m相比提高了5.8%,检测速度FPS 提高了3 帧.检测精度的提高反映出CAM-SAM 注意力机制增加了小目标通道的权重比例,通过挖掘目标特征信息引导模型更加关注小目标相关特征信息,并加强了这些特征的训练.模型在引入改进的Soft-NMS 后,准确识别了一部分重叠的遮挡目标,加快了模型的收敛速度.在此基础上分别使用YOLOv3 和YOLOv4 进行对比实验.结果显示,改进的YOLOv5m 算法在检测精度和推理速度上有明显的提升.

表1 4 种目标检测算法实验

2.4 对比实验分析

2.4.1 YOLOv5 模型版本选择

YOLOv5 目标检测网络中共有4 个版本,分别为YOLOv5s, YOLOv5m, YOLOv5 l, YOLOv5x. 本文需要在这四个版本中选择一个检测精度较高、检测速率合适且易部署在无人机终端的目标检测网络模型.因此,使用YOLOv5s, m, 1, x 四种网络模型进行对比实验.在输入图像分辨率和相关实验超参数相同的情况下,实验结果如表2 所示.

表2 YOLOv5 不同版本模型的检测精度和速度

分析四种模型的训练结果,YOLOv5l 与YOLOv5x 在mAPs0 值比YOLOv5m 高出不到9%的情况下,模型的检测速率下降了45%左右,且网络训练时间更长,所得到的训练权重文件更大,难以在无人机中部署,且检测实时性上不满足实际需求.虽然YOLOv5s 在检测速率上能够达到每秒121 帧,且参数量较少,但其检测精度相比YOLOv5m 下降了7.3.因此,在权衡下选择YOLOv5m 作为无人机目标检测模型.

2.4.2 不同算法实验对比

为了验证改进后YOLOv5m 算法的有效性,将改进后YOLOv5m 算法与其他算法进性对比,结果见表3.文献[6]使用的YOLOv3-SPP 模型是在YOLOv3 的基础上,在第五层和第六层卷积中添加一个空间金字塔池化SPP 模块,并使用GIoU 损失函数替代损失模型,提高目标定位的精度,相比YOLOv3,其mAP50提高了18.3%,但检测速度有所下降.相比文献[20],在相同数据集和图像分辨率的情况下,改进模型mAP50值比文献中的模型提高了27.6%.对比改进模型与其他五种模型实验结果,可以发现,改进模型在检测精度要优于其他模型,检测速度也达到了不错的效果.

表3 不同目标检测网络对比

2.4.3 Soft-NMS 与NMS 对比验证

用高斯加权Soft-NMS 替换预测网络中的NMS, 验证改进的Soft-NMS 模块对重叠遮挡目标检测精度的影响.实验模型中均引入通道-空间注意力机制.AP(NMSo.s)表示IOU 阈值为0.5 时的平均精度,AP(NMSo5)表示IOU 阈值为0.75 时的平均精度.结果见表4.对比NMSo.s 和Soft-NMSo.s 的检测数据发现,使用高斯加权的Soft-NMS 可以有效减少重叠遮挡目标的漏检,提高各类别目标检测的精度.用NMSo75时,因阈值过大,真实预测框被抑制,导致AP 精度显著降低.

表4 不同非极大抑制方法对精度的影响

采用NMS 在阈值为0.5 和0.75 时与Soft-NMSo.s 对实际小目标漏检和误检的改进效果显示,使用高斯加权的Soft-NMS 能有效减少重叠目标的漏检和误检问题.

2.5 无人机平台测试

实验无人机搭载开源飞控PX4 和 Nvidia Jetson Xavier NX 机载计算机,采用Intel Realsense D435i 深度相机作为视觉传感器,通过无人机上搭载的深度相机进行图像采集,利用地面站与板载计算机的高清图传进行实时数据交互.

在无人机平台上使用YOLOv5m 与YOLOv5m+CAM-SAM+Soft-NMS 模型进行测试,将模型训练得到的权重文件部署在无人机机载平台上,并选择一处公园进行实景试飞检测.实验结果见图4.两种模型都能够准确检测出图中3 个行人小目标,YOLOv5m+CAM-SAM+Soft-NMS 模型在检测精度数值上分别为0.84,0.80,0.73,高于原YOLOv5m 模型中的0.81,0.79,0.49.

图4 两种模型搭载无人机检测效果图

3 结论

本文提出了一种改进的YOLOv5m 目标检测算法,解决无人机航拍图像中小目标像素信息少、特征表示弱导致的模型检测准确率低的情况.首先,基于CBAM 提出了一种轻量级通用的通道-空间注意力CAM-SAM 模块,使小目标群体获得更大的注意力权重,提高关键特征提取能力,并集成在主干网络中,在颈部网络中使用跳跃式特征金字塔结构提高模型检测性能.其次,在预测网络使用高斯加权的 Soft-NMS 替换NMS 算法,作为遮挡情况下精度优化的方法.改进的模型在保证检测精度的同时,检测速度上也得到了保证,在无人机目标检测实际任务当中得到了较好的应用 .

猜你喜欢
注意力阈值精度
让注意力“飞”回来
小波阈值去噪在深小孔钻削声发射信号处理中的应用
基于自适应阈值和连通域的隧道裂缝提取
基于DSPIC33F微处理器的采集精度的提高
比值遥感蚀变信息提取及阈值确定(插图)
“扬眼”APP:让注意力“变现”
A Beautiful Way Of Looking At Things
室内表面平均氡析出率阈值探讨
GPS/GLONASS/BDS组合PPP精度分析
改进的Goldschmidt双精度浮点除法器