改进YOLOv5的高空航拍图像检测方法

谢晓竹,卢 罡

(陆军装甲兵学院,北京 100072)

摘要:YOLOv5模型对普通场景图像的目标检测有更好的性能,但在高空航拍图像检测中表现不佳,针对这个问题,提出一种改进的YOLOv5模型。首先,建立高空航拍目标数据集,弥补该类图像不足的问题,对模型进行针对性训练,其次,采用多尺度细节增强提升处理数据图像,整体提升数据质量;最后,利用多尺度特征融合更好的平衡目标特征和位置信息,增加大尺度检测头提升小目标检测能力。经过实验分析,证明该方法在对高空航拍图像目标进行检测时平均精度、准确率和召回率分别比YOLOv5模型提高了12.6%、10.3%和6%,满足检测要求。

关键词:YOLOv5;高空航拍图像;目标检测;多尺度特征融合

1 引言

无人机航拍在战场侦查、交通管制、抢险救灾等军用或民用领域中具有普遍的应用价值。无人机由于其载荷小,飞行高度和轨迹不稳定的特点[1],导致航拍图像目标小,图像模糊,存在遮挡等情况,造成目标背景情况复杂,所含信息量较少,形状特征不易提取,使得针对高空航拍目标检测存在诸多困难。传统的基于滑动窗口的目标检测算法诸如Haar分类器[2-3]、DPM算法[4]使用人工设计的特征提取,滑动窗效率低下,表征能力不强。基于深度学习的目标检测算法构建了多层卷积神经网络,通过对大量样本进行训练,学习目标特征。相对于传统算法,该方法大量使用卷积运算,发挥了硬件计算能力强的特点,深度网络结构提升了模型的检测准确率。

目前,基于深度学习的目标检测算法大致可以分为2种类型[5]:一种是基于候选区域的两阶段目标检测模型(two-stage),另一种是基于回归的单阶段目标检测模型(one-stage)。单阶段目标检测YOLO[6]模型在平衡检测精度和速度方面具有很高的检测性能,是工业领域的首选模型,目前已更新到YOLOv5版本。

无人机航拍目标检测近年来逐渐成为研究热点,主流的数据集有天津大学推出的VisDrone数据集,武汉大学推出的DOTA数据集等,这些数据集都是低空飞行的无人机航拍采集的,对于飞行高度在3 000 m以上的高空航拍图像则缺乏专门的数据集,使得对高空航拍图像的目标检测缺少数据训练。对高空航拍目标,在自然场景图像中性能优异的YOLOv5模型很难较好的提取目标特征,漏检率和误检率较高。为此,以YOLOv5的3.0版本为基础,从以下方面进行改进:建立高空航拍目标数据集对模型进行训练;针对航拍目标特点,使用高斯函数差分[7](difference of gaussian,DoG)多尺度增强图像细节,提升训练效果;针对目标特征难以提取,修改网络结构,使用加权双向特征金字塔网络[8](bidirectional feature pyramid network,BiFPN)代替原来的路径聚合网络[9](path aggregation network,PANet),在原模型3个检测头的基础上再增加一个大尺度检测头,专门用于检测小目标。从而提升模型对高空航拍目标的检测能力。

2 YOLOv5

YOLOv5模型是当前YOLO模型的最新版本,一共有YOLOv5s、YOLOv5m、YOLOv5l和YOLOv5x四个网络模型,网络架构分为2个部分:骨干网络(backbone)和Head结构,具体结构如图1所示。

图1 YOLOv5网络结构

Fig.1 Structure of YOLOv5

图像经过预处理后输入到骨干网络,骨干网络采用特征金字塔[10](feature pyramid networks,FPN)结构自底向上提取特征,并在不同图像细粒度上聚合并形成图像特征,主要由Focus、CBL、BottleNeckCSP和SPP结构组成。Focus结构将输入图像切分成4份,在通道维度上进行拼接,使得特征图尺寸从640×640×3变成320×320×32,图像的宽度、高度信息融合到了通道维度上,可以减少浮点运算,提升训练速度。CBL由标准的卷积模块、归一化和Leaky-ReLU[11]激活函数组成,是模型中的基础结构,进行卷积运算提取特征。BottleNeckCSP由BottleNeck模块堆叠而成,参考了跨阶段局部网络[12](cross stage partial network,CSPNet)思想,解决了冗余梯度信息问题,通过分割梯度流,使梯度流通过不同的网络路径传播。BottleNeck由1×1和3×3卷积组成,可以通过卷积计算灵活改变数据的通道数。在YOLOv5中,设计了2种BottleNeck结构,区别在于是否有shortcut连接。SPP结构参考空间金字塔网络(spatial pyramid pooling networks, SPPNet)[13]将不同尺寸的输入图像统一为相同大小的特征图,先使用卷积使得通道数减半,再经过3个不同尺寸的最大池化层,最后通过拼接使得不同大小的输入在经过池化后特征的宽度、高度保持一致。

Head部分参考了路径聚合网络思想。在图像自顶向下经过神经网络各层时,特征图的维度在逐层增加,同时图像的分辨率在降低,网络增加了自底向上的路径,使得底层信息与顶层信息双向融合,同时具有深层的特征信息和浅层的语义信息。在输出端,YOLOv5采用了类别损失、目标损失和回归损失3部分来修正训练,y为预测类别,为真实类别,类别损失采用二值交叉熵,表示为

(1)

目标损失同样为二值交叉熵,表示为

(2)

回归损失采用GIOU[14]计算,A为预测框,B为真实框,C为包含A与B的最小凸闭合框,表示为

(3)

总损失为以上3部分损失的加权和,表示为

loss=α·clsloss+β·objloss+γ·giouloss

(4)

3 模型改进

3.1 构建高空航拍数据集

以汽车为目标,通过无人机实飞,飞行高度为3 000~4 000 m,采集1 600余张图像,对其进行手工标注。其中1 300张图像构成训练集,300余张作为验证集。与VisDrone、DOTA等公开数据集比较,高空航拍数据集有以下特点:

1)目标尺度变化剧烈,随着无人机飞行高度、速度和拍摄角度不同,目标尺度会相应发生变化,导致目标提供的细节信息有限。

2)拍摄视野广,背景复杂,包含大量噪声信息,会弱化目标特征,易发生漏检情况。

3)外部环境变化导致拍摄图像质量多变,高空环境下无人机飞行不稳定,造成成像模糊,同时,不良气候也会弱化目标特征。

3.2 多尺度细节增强

高空航拍图像中的目标由于像素点较少,缺乏细节信息,边界特征不清晰,导致模型无法很好识别目标。使用不同尺度下的高斯函数的差分来增加目标细节信息[15],从而提升检测效果。高斯函数表示为

(5)

使用标准差为σ1=1,σ2=2,σ3=4的高斯函数得到3种不同程度的滤波结果,表示为

B1 = Gσ1*I, B2 = Gσ2*I, B3 = Gσ3*I

(6)

I为原图,σ控制着周围像素对当前像素的影响程度,σ越大,远处像素对中心像素的影响程度也越大,选择不同的σ得到3种程度的细节信息,如图2所示,从左至右分别对应σ1、σ2、σ3,σ越来越大,远处像素对中心像素的影响也越来越大,图像也越来越模糊。

图2 高斯滤波成像

Fig.2 Gauss filtering images

将滤波结果与原图差分,得到3种不同程度的细节信息,表示为

D1=I-B1, D2=I-B2, D3=I-B3

(7)

将3种细节信息的加权和合并到原图中,得到I*,表示为

I*=w1×D1+w2×D2+w3×D3+I

(8)

w1=0.8,w2=0.5,w3=0.25,为了突出目标像素,减小周围像素的影响,将w1调大,w3调小,提高目标图像与背景的区分度,突出了低频图像骨架信息,过滤了高频信息,降低了冗余度和计算量,实现去噪。

3.3 改网络结构

以YOLOv5为基础,主要从三方面对模型进行修改:一是修改激活函数;二是使用多尺度特征融合;三是增加大尺度检测头。

YOLOv5在CBL模块中的激活函数是Leaky-ReLU,表示为

(9)

其中,α取值在(0,1)之间,Leaky-ReLU解决了ReLU函数在输入为负的情况下产生的梯度消失问题,但无法为正负输入值提供一致的关系预测。使用Mish[16]作为激活函数:

Mish= x·tanh(ln(1+ex))

(10)

图3为Mish函数图像与其导数,可以看出Mish函数具有无上界、有下界、非单调和平滑的性质。无上界和有下界既避免了函数饱和,防止梯度消失,又提升网络正则化效果;非单调为较小的负输入产生负输出,增加了表现力并改善了梯度流,对不同的初始化和学习速率提供一定的鲁棒性,保证信息不会中断,使得更多神经元学习到参数;平滑能够让信息深入神经网络,使得网络更容易优化。

图3 Mish与其一阶导数

Fig.3 Mish and its derivative

多尺度特征融合目标是给定一组输入特征找到一个转化函数f(·)聚合不同层的特征并输出一系列新的特征Pout=f(Pin)。

BiFPN和PANet都源于FPN。FPN提出了一种自上而下的方法来组合多尺度特征,这是一项开创性的工作,而PANet在FPN的基础上增加了一条自底向上的路径,从而实现了自顶向下和自底向上的双向特征融合,但需要花费更多的参数和计算。

BiFPN增加了特征的交叉尺度连接和权重融合,可以更好的平衡不同尺度的特征信息。如图4所示,首先,BiFPN没有对单输入边节点进行特征融合,该类节点具有的信息较少,删除对最后的特征融合并无过多影响,同时还能减少网络计算量;其次,对于和输入节点分辨率相同的输出节点,增加一条路径,可以融合更多的特征。在融合特征时引入注意力机制,不同分辨率的特征对于输出特征的贡献是不同的,给每个特征赋予权重。以图4右图第4层特征融合为例,为中间隐藏节点输出特征,为输出节点特征,表达式为

图4 PANet和BiFPN特征融合对比图

Fig.4 PANetand BiFPNfeature fusion

(11)

(12)

融合了P4的输入特征和P5的输入特征,Resize对P5分辨率匹配,权重ω归一化到的输入进行加权求和,再除以所有权重和(分母加了一个极小量ε,防止除0),得到最终输出特征。

为增强对高空航拍目标的检测能力,在YOLOv5的基础上融合特征,增加大尺度检测头,增强浅层的语义信息,进一步提升对小目标的特征提取和定位能力,具体修改如图5红框所示。

图5 改进后网络结构图

Fig.5 Structure of improved YOLOv5

在Backbone提取特征过程中,增加一次卷积,得到10×10×512的特征图,进一步提取深层特征信息。在网络25和28层增加拼接操作,分别将6,19,24层和8,15,27层特征进行融合,通过融合不同层次特征,平衡目标特征和定位精度。在Head部分增加特征尺寸为160×160×64的检测头,用来更好的对小目标进行检测。相较于原模型的7.4×106个参数,修改后的模型参数有1.1×107个,网络深度也由232层增加到326层,新增加的参数和网络层主要是实现多尺度特征融合,该方法在计算时没有采用指数运算,因此模型整体计算量并没有大幅增加。经过更深网络的学习,模型可以更好地平衡目标特征和定位精度,在权重计算时舍去语义特征不丰富的特征,将注意力集中在语义丰富的特征上,以此突出目标的特征。

4 实验结果分析

4.1 实验环境配置

实验环境如表1所示,标注使用labelImg软件。

表1 实验环境配置

Table 1 Environment configuration

硬件设备CPU:i9-10940X GPU:RTX 2080 Ti操作系统Windows 10软件平台Pytorch1.7.1 CUDA10.1CUDNN7.6.4

4.2 评价指标

目标检测领域中,常用评判标准有精确率和召回率的调和平均数F1-score,表示为

(13)

准确率P(Precision),表示为

(14)

召回率R(Recall),表示为

(15)

TP是正确检测出的正样本数量,FP是错误检出的负样本数量,FN是漏检的正样本数量。

平均精度mAP在单目标检测时是AP,是P-R曲线围成的面积。

使用同样的实验环境、训练参数和高空航拍图像数据集,对原模型和改进后的模型分别进行训练,并在验证集中进行分析。

4.3 实验参数选择

YOLOv5模型有28个超参数,分为网络模型相关参数和数据增强相关参数,由于实验数据集的数据量较少且车辆是唯一检测目标,因此启用Mosaic数据增强[17]、单目标检测以获得更好的训练效果。

Mosaic数据增强可以提升数据集的整体质量,将4张图片随机裁剪,裁剪的长宽、位置可以随机变化,再拼接到一张图片上作为训练数据,目标框也随之调整。Mosaic数据增强丰富了检测物体的背景,有利于对小目标的检测,在抽取4张图的情况下,每张图都有不同程度的缩小,原来的目标尺寸也更接近小目标的大小。

设置YOLOv5中的single-cls参数开启单目标检测,由于本数据集中制设置了车辆一个目标,单目标检测可以加速训练并且降低噪音干扰。

4.4 结果分析

图6中黑色表示改进的YOLOv5实验结果,蓝色表示YOLOv5实验结果。由表2和图6看出:改进的YOLOv5模型F1-score比原YOLOv5模型提升了8%,准确率提升了10.3%,mAP提升幅度最大,达到了12.6%,召回率提升6%,说明对YOLOv5模型进行的改进操作对本数据集的检测综合性能更好,准确率,检测精度和漏检率都分别有所提升。

图6 实验结果

Fig.6 Results

表2 模型性能

Table 2 Model performance

模型F1-scoremAPPRYOLOv50.760.7640.6950.92改进模型0.840.890.7980.98

分析原因,通过分析数据集图像,选择使用高斯滤波对图像进行多尺度细节增强,突出了目标图像特征,强化了前景与背景的区别,使得模型训练时能够更好的提取目标特征。对网络模型的两点改进,增加小目标检测头提升对小目标的检测效果,BiFPN使得检测准确率和定位精度更高,注意力机制融合了图像上下文信息与局部特征,让模型更聚焦图像中的目标信息。

在VisDrone数据集上进行迁移学习,图7所示为实验结果,右侧为改进的YOLOv5模型,可以看出,我们的模型输出的目标位置更加精确,误检目标减少,整体目标置信度得分也得到提升。对1 920×1 080像素的mp4格式视频进行检测时,帧速率达到25帧/s,可以满足对视频实时检测的要求。

图7 VisDrone实验结果

Fig.7 VisDrone results

5 结论

通过增加目标图像细节信息,多尺度特征融合和增加大尺度检测头的方法,建立高空航拍图像数据集对模型进行训练,取得的成果主要有:

在验证集上取得了较好的实验效果,mAP提升12.6%,准确率提升10.3%,召回率提升6%改进效果明显。YOLOv5s的轻量化设计能够保证在移动端的部署,和对视频的检测。

对VisDrone数据集迁移学习后的实验结果整体目标置信度也有提升,说明改进的模型具有较好的普适性,同时也能满足对实时检测的要求。

参考文献:

[1] 裴伟,许晏铭,朱永英,等.改进的SSD航拍目标检测方法,软件学报,2019,30(03):738-758.

Pei W,Xu Y M,Zhu Y Y,et al.The target detection method of aerial photography images with improved SSD[J].Journal of Software,2019,30(03):738-758.

[2] VIOLA P A,JONES M J.Rapid object detection using a boosted cascade of simple features[C]//Proceedings of the 2001 IEEE Computer Society Conference on Computer Vision and Pattern Recognition.CVPR 2001,1-9.

[3] VIOLA P A,JONES M.Robust real-time face detection[J].International Journal of Computer Vision,2004,57(04):137-154.

[4] FELZENSZWALB P F,MCALLESTER D A,RAMANAN D.A discriminatively trained,multiscale,deformable part model[C]//2008 IEEE Conference on Computer Vision and Pattern Recognition,2008:1-8.

[5] ZOU Z,SHI Z,GUO Y,et al.Object detection in 20 years[J].A survey.ArXiv,2019,abs/1905.05055.

[6] REDMON J,DIVVALA S,GIRSHICK R B,et al.You only look once:Unified,real-time object detection[C]//2016 IEEE Conference on Computer Vision and Pattern Recognition(CVPR),2016:779-788.

[7] GONZALEZ R,CWOODS R E.Digital image processing[C]//IEEE Transactions on Acoustics Speech and Signal Processing,1980,28(4):484-486.

[8] TAN M,PANG R M,LE Q V.Efficientdet:Scalable and efficient object detection[C]//2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition(CVPR),2020:10778-10787.

[9] LIU S,QI L,QIN H,et al.Path aggregation network for instance segmentation[C]//2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition,2018:8759-8768.

[10] LIN TY,DOLLR P,GIRSHICK R B,et al.Feature pyramid networks for object detection[C]//2017 IEEE Conference on Computer Vision and Pattern Recognition(CVPR),2017:936-944.

[11] HE K,ZHANG X,REN S,et al.Delving deep into rectifiers:Surpassing human-level performance on imagenet classification[C]//2015 IEEE International Conference on Computer Vision(ICCV),2015:1026-1034.

[12] WANG C Y,LIAO H,YEH I H,et al.Cspnet:A new backbone that can enhance learning capability of cnn[C]//2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops(CVPRW),2020:1571-1580.

[13] HE K,ZHANG X,REN S,et al.Spatial pyramid pooling in deep convolutional networks for visual recognition[C]//IEEE Transactions on Pattern Analysis and Machine Intelligence,2015,37:1904-1916.

[14] REZATOFIGHI S H,TSOI N,GWAK J,et al.Generalized intersection over union:A metric and a loss for bounding box regression[C]//2019 IEEE/CVFConference on Computer Vision and Pattern Recognition(CVPR),2019:658-666.

[15] KIM Y,KOH Y J,LEE C,et al.Dark image enhancement based onpairwise target contrast and multi-scale detail boosting[C]//2015 IEEE International Conference on Image Processing(ICIP),2015:1404-1408.

[16] Li S P,LiC L,Han J B,Zhu X L.Application of Binocular Vision Single Step Multi-target Detection Method for Robot Grasping[J].Journal of Chongqing Technology and Business University(Natural Science Edition),2021,38(05):68-74.

[17] YUN S,HAN D,OH S J,et al.Cutmix:Regularization strategy to train strong classifiers with localizable features[C]//2019 IEEE/CVF International Conference on Computer Vision(ICCV),2019:6022-6031.

Improved detection of high-altitude aerial images based on YOLOv5

XIE Xiaozhu, LU Gang

(Army Academy of Armored Forces, Beijing 100072, China)

Abstract: YOLOv5 has better performance in object detection of common scene images, but it has a poor performance in detecting objects in high-altitude aerial images.Aiming at this problem, this paper proposes an improved YOLOv5 model.Firstly, a target dataset of high-altitude aerial images is built to make up for the shortage of such images to train the model.Secondly, multi-scale detail enhancement is used to process data images to improve the overall quality of the data.Finally, multi-scale feature fusion is used to better balance the object features and location information, and the large-scale detection head is added to improve the small object detection ability.The experimental results show that the average accuracy, accuracy rate and recall rate of this method are 12.6%, 10.3% and 6% higher than that of the YOLOv5 model respectively, which meets the detection requirements.

Key words: YOLOv5; high-altitude aerial images; object detection; multi-scale feature fusion

本文引用格式:谢晓竹,卢罡.改进YOLOv5的高空航拍图像检测方法[J].兵器装备工程学报,2023,44(01):248-253.

Citation format:XIE Xiaozhu, LU Gang.〗Improved detection of high-altitude aerial images based on YOLOv5[J].Journal of Ordnance Equipment Engineering,2023,44(01):248-253.

中图分类号:TP391.4

文献标识码:A

文章编号:2096-2304(2023)01-0248-06

收稿日期:2022-04-13; 修回日期:2022-05-09

基金项目:军内科研项目(LJ20202AXXX)

作者简介:谢晓竹(1966—),女,博士,教授。

通信作者:卢罡(1991—),男,硕士,工程师,E-mail:lugang1124@126.com。

doi:10.11809/bqzbgcxb2023.01.037

科学编辑 朱福珍 博士(黑龙江大学副教授、硕导)

责任编辑 唐定国