随着无人机技术的发展,在无人机上部署多种传感器,使得无人机功能越来越强大,无论民用和军用领域无人机都被广泛应用[1]。在俄乌战场上的小规模巷战场景下,小型无人机展现了惊人的侦察能力。由于无人机执行拍摄任务是在空中,距离拍摄目标较远,空间背景大,背景信息复杂,所以无人机执行目标识别任务多为复杂背景的小目标识别。现有的目标识别算法,对大目标的识别已经达到很高的精度,对于小目标识别依然存在困难,检测精度低,容易出现漏检及误检的情况[2]。
由于无人机具有很好的机动能力以及广阔视角,因此无人机采集的目标范围广、信息多,也给目标检测带来了很大的困难,与其他机器视觉任务相比,小目标物体检测发展时间较短,在复杂大背景下的小目标的检测任务中,目标的特征信息少,所以难以识别。2014年,coco数据集给小目标提出了定义,认为分辨率32×32像素以下的目标为小目标。此后研究人员提出了很多小目标检测算法,2015 年,Girshick提出了Fast R-CNN[3]和Faster R-CNN[4]。2016年,Chen等[5]提出了基于深度学习的小目标检测网络模型。使用上下文模型来增强RCNN算法,提高了对小目标检测的精度。2017 年,何凯明提出了基于 Faster-RCNN 框架的Mask R-CNN[6]目标检测算法等。上述的基于候选区域的目标检测算法虽然精度很高,但实时性差,由于航拍图像的目标识别具有实时性,因此速度更快的单阶段检测器SSD系列算法[7]和YOLO系列算法[8]具有很多优势。SSD算法存在小目标特征提取不充分的问题,导致识别精度有限,而在YOLO系列算法中,YOLOv3[9]借鉴金字塔特征图的思想,小尺寸特征图用于识别大尺寸的物体,大尺寸特征图用于识别小尺寸物体,更加适合小目标识别任务。在无人机视角的目标识别领域,Zhu等[10]在YOLOv5增加小目标预测层,在大背景下实现对小目标的预测,提高小目标预测的准确率。然而目前在机器视觉领域,小目标的识别精度仍然是待解决的难题。
针对无人机视角的小目标尺寸小、可利用特征少等问题导致的识别精度低等问题,通过改进YOLOv7模型的网络结构,在主干网络中融入Swin Transform模块,构建复杂背景与小目标的全局关系,融合SENet通道注意力机制,头部网络中加入了YOLOv5网络中的C3模块,增加网络的深度和感受野,提高特征提取的能力,在网络最后加入1层小目标检测层,进一步提高对小目标检测的能力。1ST-YOLOv7模型设计针对无人机视角的目标检测任务背景复杂,检测目标较小等问题,本文选择检测速度和精度较高的YOLOv7模型为基础进行网络改进,改进后的网络结构如图1所示。
图1 ST-YOLOv7网络结构
Fig.1 ST-YOLOv7 network structure
模型主要由Input、Backbone、Head 3个部分组成,主干网络(Backbone)中融合了2 个Swin Transform模块,构建复杂背景与小目标的全局关系,在ELAN后融入SENet通道注意力机制,为不同通道的特征分配不同权重,增强小目标特征的捕捉,并且在头部网络(Head)中加入了YOLOv5网络中的C3模块,C3模块是由3个Conv块构成的,Conv块采用的都是3×3的卷积核。在每个Conv块之间,还加入了BN层和LeakyReLU激活函数,以提高模型的稳定性和泛化性能,增加网络的深度和感受野,提高特征提取的能力,并且增加1 个小目标检测层,进一步提高对小目标的检测能力。
YOLOv7[11]是单阶段目标检测算法YOLO系列的1个基本模型,YOLOv7的检测思路和YOLOv4和YOLOv5类似,然而YOLOv7在卷积操作方面更快,使用了更小的模型,因此在相同的计算能力的设备下可以达到更高的检测速度。此外,YOLOv7在5~160帧范围内的速度和精度都超过了目前已知的目标检测模型,在小目标对象的检测精度方面也大大提高,YOLOv7算法扩展了高效长程注意力网络(E-ELAN)[12],E-ELAN实现在不破坏原有梯度路径的情况下不断增强网络学习能力,提出基于级联(Concatenation)模型的模型缩放[13]以满足不同推理速度的需求,使用模型重参数化,通过融合卷积自身或者和 BN 为一个卷积模块,在保证YOLOv7 网络性能的基础上加速网络训练。在检测速度与精度之间取得了非常好的平衡。其网络架构如图2所示。
图2 YOLOv7网络结构
Fig.2 YOLOv7 network structure
算法主要由输入端(input)、主干网络(backbone)、头部网络(head)、预测端(prediction)构成,输入端用于数据增强操作,主干架构用于目标特征提取,头部架构完成特征融合操作,预测端使用CIoU_Loss函数,用于预测信息损失。
Swin Transformer是Transformer在CV领域的重要成果,在目标分类、检测、分割等任务中均取得了较好的效果,一般的Transformer中自注意力机制计算量大,位置编码操作无法捕获到图像中的局部相关性和整体结构信息,Swin Transformer的分层结构和移位窗口机制,不仅减少计算量,而且检测的准确度也有所提升。模块如图3所示。
图3 Swin Transformer模块结构
Fig.3 Swin Transformer module structure
(1)
Swin Transformer是基于具有全局信息建模能力的Transformer来构建分层特征图,对图像大小具有线性、计算复杂性,同时将自注意力计算限制在无重叠的窗口区域内,并允许移动窗口进行特征交互,对图像进行滑窗操作,通过带有步长的滑窗来降低分辨率移动[14]。其由2个连续的Transformer模块组成,模块中的LN(layer norm)用于归一化操作,MLP(multi-layer perceptron)用来选取合适的权值和偏置,实现特征转换、信息重组、特征提取,其中2个模块不同之处在于,第1个Transformer模块中的W-MSA(窗口自注意力机制)用于特征的学习,将图片分成多个窗口,然后在各个窗口内进行计算,大大减少了计算量,但它不具备全局感知能力,从而无法获取窗口之间的特征关系,第2层Transformer模块将第1 层的W-MSA层换成了SW-MSA层(滑移窗口子注意力机制),改进之后的SW-MSA层使用了滑动窗口技术,通过把自注意力计算限制为不重叠的局部窗口,同时允许进行跨窗口计算,使其具有了全局感知能力,移位的窗口方案提供了更高的效率.Swin Transformer模块具体公式如式(1)—式(4)所示。
(2)
(3)
(4)
Hu等[15]提出SENet,SENet网络关注的是通道之间的关系,对不同通道特征的重要程度可以自动学习。SENet由2部分组成,分别是Squeeze部分和Excitation部分,模块结构如图4所示。
图4 SENet模块结构
Fig.4 SENetmodule structure
Squeeze部分将W×H×C的特征图在空间维度进行压缩,得到1×1×C,将一个通道上的整个空间信息压缩为一个全局特征,最后得到C个全局特征,一般使用全局平均池化实现。如式(5)所示。
(5)
Excitation部分在得到Squeeze的1×1×C的特征图后,使用全连接层对每个通道的重要性进行预测,得到不同通道的重要性大小。通过2 个全连接层实现,第1 个全连接层用于降维,降低计算量,第2个用于恢复维度,得到不同通道的重要性大小后再作用到之前的特征图的对应通道上,获取所有特征图的权重值,从而让神经网络去重点关注那些权重大的特征图,将不重要的特征减弱,最终,空间上所有点信息都会平均成了一个数值,最后使用Scale对整个通道进行加权操作,让提取到的特征指向性更强。
在YOLOv5中,作者将BottleneckCSP模块更改为了C3模块,该模块由3 个Conv块构成的,采用的都是3×3的卷积核。在每个Conv块之间,还加入了BN层和SiLU激活函数,提高了模型的稳定性和泛化性能,其中的Bottleneck模块先将通道数减小再扩大,输入与输出的通道数不变,先通过1×1卷积将通道减半,再通过3×3卷积将通道数加倍,并获取特征。shortcut参数是用来控制是否进行残差连接。C3模块增加了网络的深度和感受野,以提高特征提取的能力,模块结构如图5所示。
图5 C3模块结构
Fig.5 C3 module structure
在无人机图像检测研究领域,大部分使用的是公开的航拍图像数据集,例如VisDrone数据集、UAVDT数据集等,但是这些数据集的图片质量不是很高,导致目标检测精度低,因此使用无人机进行航拍图像采集,自制数据集,使用无人机品牌为大疆,型号为DJI Mavic Air,采集数据集的拍摄高度从30 m到120 m,采用多角度拍摄,以增加样本的多样性,共采集1 000 张图片,并使用labelme软件对采集的数据进行标注,如图6所示,标注类别分别是行人(Pedestrian)和车辆(Vehicle),由于标注后的数据格式为VOC,本实验框架无法读取,因此将数据格式转换为YOLO格式,包含每张图片中人和车的中心位置(x,y)、高(h)、宽(w)3项信息。标注后的数据集用于训练检测网络,其中700张图片用于训练,150张用于验证,150张用于测试。
图6 Labelme数据集标注
Fig.6 Labelme dataset annotation
根据YOLOv7网络模型所需要的实验条件配置实验环境,实验设备及实验框架如表1所示。
表1 实验环境
Table 1 Experimental environment
配置参数操作系统Windows 10内存容量32 GBCPUIntel(R) Core(TM) i7-12700HGPUNVIDIA GeForce RTX 3070Ti模型框架PyTorch1.12.1+ CUDA11.6编程语言Python3.9
使用自制航拍数据集训练本文中改进的ST-YOLOv7模型,预训练权重使用YOLO7,使用 Adam 梯度下降法、固定步长衰减策略进行训练,初始学习率设置为0.01,epoch设置为1 000,并根据计算机的实际配置设置batch size为8,输入图片的像素大小为640×640,采用矩阵推理的方式去训练模型。
如图7所示,可视化热力图中,图像中的区域越偏红,表示该区域的权重越大,模型会重点考虑此区域,减弱其他区域的影响,可以看出加入SENet通道注意力机制后,对检测目标区域注意力更加集中,增强了识别效果。
图7 加入SENet前后的可视化热力图对比
Fig.7 Comparison of characteristic thermograms before and after adding SENet
为了对模型检测性能进行总体评估,分别用YOLOv5、YOLOv7、本文中改进的St-YOLOv7网络训练自制的数据集,实验结果如表2所示。由于本数据集只有Pedestrian、Vehicle两类,所以在目标检测网络中关注这2类的平均精度和所有类的mAP。由表1可知,YOLOv5网络模型对无人机平台下的小目标Pedestrian类的识别精度要比YOLOv7网络模型差,YOLOv7网络模型的mAP也优于YOLOv5网络模型,本文中改进的ST-YOLOv7网络模型在Pedestrian类、Vehicle类的检测精度均优于YOLOv7网络模型,因此本模型能够提升在无人机视角下的小目标检测精度。
表2 3种模型在自制数据集中识别精度对比
Table 2 Comparison of recognition accuracy of three modelson self-made datasets
ModelsPedestrianVehiclemAP@0.5YOLOv575.682.879.2YOLOv779.985.482.7ST-YOLOv783.489.386.4
通过图8可以看出,3个模型训练过程的mAP值的变化,从图8(a)中能够看出本文中的ST-YOLOv7模型在测试集上的mAP@0.5∶0.95值达到了0.59,高于YOLOv7模型的0.55和YOLOv5模型的0.49。并且从图中可以看出,改进的模型mAP波动小,模型有着更好的鲁棒性,在训练到400轮的时候就已经收敛,因此本模型的训练效率要高于YOLOv7模型。
图8 3种模型在自制数据集中mAP值对比
Fig.8 Comparison of mAP values among three modelsin self-made datasets
为了进一步验证改进后的模型的泛化性能,使用模型在FLIR数据集中的可见光图像部分进行了实验验证,FLIR数据集共有4个类别,采用其中的person类和car类以及mAP@0.5进行对比分析,3种模型对FLIR数据集的训练结果如表3所示。改进后的ST-YOLOv7模型在FLIR数据集中的person类的识别精度相比于YOLOv7模型提高了2%,对car类的识别精度提高了0.9%,mAP@0.5提升了3.5%,通过对FLIR数据集的实验验证能够进一步证明改进后的模型相比于原模型有着更好的检测性能。
表3 3种模型在FLIR数据集中识别精度对比
Table 3 Comparison of recognition accuracy of three modelson FLIR datasets
ModelspersoncarmAP@0.5YOLOv576.187.075.0YOLOv777.287.877.1ST-YOLOv779.288.780.6
本文中以YOLOv7为基础框架改进的ST-YOLOv7模型,融合了Swin Transform模块、SENet通道注意力机制、C3模块,增加了小目标检测层,提升了模型的检测效果,在自制的航拍图像数据集中对检测的小目标Pedestrian类的检测精度高达83.4%,相比YOLOv7模型检测精度提升3.5%。对数据集中的Vehicle类检测精度达到了89.3%,相比YOLOv7模型检测精度提升3.9%。同时mAP@0.5达到了86.4%,均优于YOLOv5和YOLOv7目标检测算法,说明改进后的模型在无人机视角下对行人和车辆的识别有着更高的精度。
[1]黄沛,曹国辉,张海晶,等.小型侦察无人机任务能力及拒止距离分析[J].现代防御技术,2022,50(1):1-6.
HUANG Pei,CAO Guohui,ZHANG Haijing,et al.Mission capability and denial distance analysis of small reconnaissance uavs[J].Modern Defense Technology,2022,50(1):1-6.
[2]董刚,谢维成,黄小龙,等.深度学习小目标检测算法综述[J].计算机工程与应用,2023,59(11):16-27.
DONG Gang,XIE Weicheng,HUANG Xiaolong,et al.A review of small object detection algorithms based on deep learning[J].Computer Engineering and Applications,2023,59(11):16-27.
[3]GIRSHICK R.Fast R-CNN[C]//Proceedings of the IEEE International Conference on Computer Vvision.2015:1440-1448.
[4]REN S,HE K,GIRSHICK R,et al.Faster R-CNN:Towards real-time object detection with region proposal networks[J].Advances in Neural Information Processing Systems,2015,28.
[5]CHEN C,LIU M Y,TUZEL O,et al.R-CNN for small object detection[C]//Computer Vision-ACCV 2016:13th Asian Conference on Computer Vision,Taipei,Taiwan,November 20-24,2016,Revised Selected Papers,Part V 13.Springer International Publishing,2017:214-230.
[6]HE K,GKIOXARI G,DOLLR P,et al.Mask R-CNN[C]//Proceedings of the IEEE international conference on computer vision.2017:2961-2969.
[7]LIU W,ANGUELOV D,ERHAN D,et al.SSD:Single shot multibox detector[C]//Computer Vision-ECCV 2016:14th European Conference,Amsterdam,The Netherlands,October 11-14,2016,Proceedings,Part I 14.Springer International Publishing,2016:21-37.
[8]REDMON J,DIVVALA S,GIRSHICK R,et al.You only look once:Unified,real-time object detection[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition.2016:779-788.
[9]REDMON J,FARHADI A.YOLOv3:An incremental improvement[J].arXiv preprint arXiv:1804.02767,2018.
[10]ZHU X,LYU S,WANG X,et al.TPH-YOLOv5:Improved YOLOv5 based on transformer prediction head for object detection on drone-captured scenarios[C]//Proceedings of the IEEE/CVF International Conference on Computer Vision.2021:2778-2788.
[11]WANG C Y,BOCHKOVSKIY A,LIAO H Y M.YOLOv7:Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors[J].arXiv preprint arXiv:2207.02696,2022.
[12]WANG C Y,BOCHKOVSKIY A,LIAO H Y M.Scaled-yolov4:Scaling cross stage partial network[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition.2021:13029-13038.
[13]DING X,ZHANG X,MA N,et al.Repvgg:Making vgg-style convnets great again[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition.2021:13733-13742.
[14]LIU Z,LIN Y,CAO Y,et al.Swin transformer:Hierarchical vision transformer using shifted windows[C]//Proceedings of the IEEE/CVF International Conference on Computer Vision.2021:10012-10022.
[15]HU J,SHEN L,SUN G.Squeeze-and-excitation networks[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition.2018:7132-7141.