基于YOLOv5算法的飞机类型光学遥感识别
YOLOv5 based on Aircraft Type Detection from Remotely Sensed Optical Images
通讯作者:
收稿日期: 2021-07-3 修回日期: 2021-08-24
基金资助: |
|
Corresponding authors:
Received: 2021-07-3 Revised: 2021-08-24
Fund supported: |
|
作者简介 About authors
龙怡灿(1990—),女,湖南保靖人,硕士生,主要从事数字摄影测量与遥感方向研究。E-mail:
飞机类型检测是遥感影像分析领域的研究热点,在机场监控和情报分析等应用中起着重要的作用。其中,深度学习方法作为遥感影像分析领域广泛应用的手段之一,在飞机类型检测任务中仍面临许多问题,如使用未公开的自制数据集、实验复现困难、无法验证泛化能力等。同时,光学遥感影像易受光照条件、云雨变化等因素影响,使检测任务更加困难。为了解决这些问题,本文首先利用MTARSI数据集对样本进行筛选,再结合Google Earth等开源方法收集飞机影像,采用随机旋转、改变亮度等方法构建新的飞机类型检测数据集。其次,采用YOLOv5作为基础网络框架,针对其多层卷积和池化操作可能会削弱或完全丢失飞机特征的问题,进行多尺度优化训练,有效检测飞机类型特征。最后,利用跨数据集验证模型的泛化能力。实验结果表明,本文方法能准确、有效地检测出光学遥感影像中的飞机的具体类型,具有较强的鲁棒性和泛化能力,跨数据集进行飞机类型检测正确率达到82.12%,可为智能化的飞机目标语义分析、星上应用等研究提供技术支撑。
关键词:
Automatic detection of aircrafts plays an important role in airport monitoring and intelligence analysis. Currently, there are various and mature methods for aircraft detection, but the aircraft type detection is still facing many problems, such as the use of unpublicized self-made datasets, the difficulty to reproduce experiment, and the inability to verify generalization ability. Therefore, detecting aircraft type quickly and accurately is still a hotspot in the field of remote sensing image analysis. The traditional detection methods are complicated in processes, poor in robustness and generalization, and cannot detect the specific type of aircrafts. In recent years, deep learning methods have been widely applied in the field of computer vision. Compared with the two-stage algorithm, YOLO, as a one-stage algorithm, rejects the steps of multiple regression, includes only a convolution network, and regards the detection problem as the regression problem of image classification and candidate box parameters. However, multi-layer convolution and pooling may weaken or completely lose aircraft features, making it challenging to extract practical features. Meanwhile, remote sensing images are susceptible to light conditions, seasonal changes, cloud occlusion, noise, and other factors, which makes the detection task harder. In order to solve these problems, this paper firstly used the MTARSI dataset to screen samples and then collected aircraft images from open-source methods such as Google Earth using random rotation, changed brightness, added noise, and other methods to form a new aircraft type detection dataset. Secondly, multi-scale adjustment and training were carried out based on YOLOv5. Finally, an across-dataset was used to identify the aircraft in the optical remote sensing images, which could verify the model’s generalization ability. The experimental results show that the method can accurately and effectively detect the number, location, and type of aircraft in the optical remote sensing images and has strong robustness and generalization ability. The accuracy of type detection reached 82.12% in the across-dataset, which can provide technical support for intelligent aircraft semantic analysis and on-board application research.
Keywords:
本文引用格式
龙怡灿, 雷蓉, 董杨, 李东子, 赵琛琛.
LONG Yican, LEI Rong, DONG Yang, LI Dongzi, ZHAO Chenchen.
1 引言
当前,飞机检测可以分为3个层次。① 检测出飞机的区域,不能检测飞机的数量和型号。这类方法通常采用传统模板匹配方法,主要依据先验知识设计模板,然后采用滑动窗口历遍影像,寻找阈值范围内的匹配模块。如项盛文等[3]提出的知识驱动下的飞机目标变化检测方法。② 检测出飞机的数量和位置,不能检测飞机的具体型号。该类方法目前发展较为成熟,主流方法是利用神经网络,在特征提取、特征处理等方面对网络进行针对性改进,到达提高检测效果的目的。如Ji等[4]基于fast R-CNN, Emre等[5]基于YOLT网络,徐俊峰等[6]基于NIN卷积神经网络和Shi等[7]基于DPANet网络,分别在影像输入、特征提取、特征融合、影像输出等阶段作出改进,这些方法都在一定程度上提高了飞机目标检测的准确性,但是无法确定飞机的具体类型。③ 检测出飞机目标的具体型号。该类方法目前研究较少,较多的是利用深度学习网络,采用自制数据集,在图像预处理、网络结构、训练方法等方面进行改进,从而达到检测飞机类型的目的。如Wei等[8]提出了一种“单独训练,联合检测”的方法,采用自制数据集,将YOLOv3和Faster R-CNN的跨平台检测特征融合,减少单个算法的漏检和误检现象;Wei等[9]提出了一种先消除飞机阴影再检测的方法,利用自制数据集实现了飞机类型检测效果的提高。飞机检测当前大部分的研究主要集中在第①、②,方法多样且较为成熟;第三层次的研究较少,存在采用自制数据集且数据集不公开,实验结果难以复现,没有跨数据集验证算法泛化能力等问题。因此,如何快速、准确地检测出遥感影像上飞机的具体型号一直作为目标检测领域的重难点问题,鲜有突破。
随着人工智能技术的发展,深度卷积神经网络以其自动学习影像特征和泛化能力强的优势,在目标检测领域应用广泛,常见算法可分为2类:① 两阶段算法(Two-stage),主要有R-CNN[10],Fast R-CNN[11],和R-FCN[12]等,该类算法是基于区域推荐的检测算法,即先选取候选区域,后对候选区域进行分类和回归;②一阶段算法(One-stage),主要有YOLO系列[13,14],SSD[15]等,该类算法摒弃多次回归的步骤,将目标识别与分类视为一个问题,相较两阶段算法大大提高了检测速度。尽管利用深度学习进行目标检测研究取得了一定进展,但在遥感影像飞机类型检测问题上应用较少,最主要的原因是飞机样本数据集较少,难以得到鲁棒性高、泛化能力强的模型。
针对以上问题,本文利用深度学习网络结合开源数据,实现了跨数据集对光学遥感影像中飞机目标数量、位置、具体型号等关键信息的检测。首先,结合MTARSI数据集[16],剔除质量较差的样本,再利用Google Earth等开源方式搜集需补充的飞机影像,采用随机旋转、缩放、改变亮度、添加噪声等方式进行样本增广,形成新的飞机类型检测数据集;其次,以YOLOv5模型为基础进行多尺度优化和训练,并对遥感影像中的飞机进行检测,验证模型精度;最后,利用模型对跨数据集的遥感影像飞机目标进行检测,实现对同一区域不同时相遥感影像飞机类型变化情况的检测,验证模型泛化能力。
2 研究方法
遥感影像作为目标检测的主要数据源,容易受光照条件、季节变化、云雾遮挡、噪声等因素干扰,对目标细节和纹理等特征信息产生较大影响,使得目标检测任务难度增大,影响检测准确率。同时,由于大幅面、高分辨率的光学遥感影像具有更加丰富的空间信息和细节表征能力,但因为数据量大,背景复杂,一般方法的处理效率难以满足星上处理等实时性要求较高的应用场景,因此研究如何平衡检测速度和准确率成为了目标检测需要解决的迫切问题。
针对飞机目标,其尺寸在整幅遥感影像中所占的比例非常小,且飞机之间的尺寸差异很大,一架小型战斗机和一架运输机长度相差可达5倍,目标框的面积相差可达25倍,同时不同尺寸、地面分辨率的遥感影像更加剧了这一差异[17]。经过深度学习卷积神经网络中的多层卷积和池化操作,可能导致小型飞机目标特征弱化甚至完全丢失,难以提取到有效识别特征,因此在飞机目标检测研究中需要对网络多尺度适应作出相应改进。
本文提出的方法技术路线如图1所示。① 剔除MTARSI数据集中错漏的样本,再根据需求利用Google Earth等开源方式补充搜集飞机样本,对其进行数据增广,在增广过程中,注重模拟多种光照条件、多种尺度缩放、旋转和添加噪声等样本的生成,二者结合形成新的飞机目标数据集;② 为了满足飞机目标尺度的多样性,对YOLOv5模型中的多尺度参数进行优化改进,将值设为0.5~3.0进行训练,对训练好的模型进行精度评价;③ 为了验证本文方法的鲁棒性和泛化能力,利用模型对跨数据集的同区域不同时相的遥感影像进行目标检测,得到各个时相影像上飞机目标的具体位置、数量、型号等的语义信息,对这些语义信息进行提取和对比,获得不同时相遥感影像上飞机目标类型的变化结果,判断该模型是否具有实际应用价值。
图1
图1
基于YOLOv5算法的飞机类型光学遥感识别技术路线
Fig. 1
Technical route of YOLOv5 based aircraft type detection from remotely sensed optical images
2.1 扩增飞机数据集
当前常用的飞机目标检测数据集有很多,如UCMerced LandUse数据集[18]主要来源于美国地质调查局国家地图,包含2100张256 像素×256 像素的影像,空间分辨率约0.3 m,共有21种不同的场景类型,“飞机”作为一个子类别,只有100张图片。DOTA数据集[19]主要来源于Google Earth,包含2806张大小约4000像素×4000像素的遥感影像,共15个类别,其中“飞机”作为子类约有1万个标注对象。NWPU-RESISC45数据集[20]是目前最大的开源遥感影像数据集之一,包含31 500张大小为256像素×256像素的影像,空间分辨率0.2~30.0 m,共45类,“飞机”作为子类,有700张影像。中国科学院大学高清航拍目标数据集(UCAS-AOD)[21]共有910张影像,分为2类,“飞机”作为一个子类,有600张图片,标注3591个目标。
以上几个数据集都是将“飞机”作为其中一个子类,并未对飞机的具体类型加以区分。目前,公开的可进行飞机类型识别的数据集有2020年由合肥大学人工智能与大数据学院Wu团队发布的MTARSI数据集[16]以及2021年由中国科学院空天信息创新研究院付琨研究员团队和国际摄影测量与遥感协会共同构建的FAIR1M数据集[22]。FAIR1M数据集提供11型民用飞机影像,包括波音737、777、747、787,空客A320、A220、A330、A350,中国商飞C919、ARJ21以及other-airplane,空间分辨率优于1m;MTARSI数据集提供20型飞机共9385幅影像,包括B-1、B-2、B-29、B-52、波音、C-130、C-135、C-17、C-5、E-3、F-16、F-22、KC-10、C-21、U-2、A-10、A-26、P-63、T-6和T-43,空间分辨率为0.3~1.0 m。通过对比可以看出,上述2个数据集侧重类型不同,本文采用MTARSI数据集作为基础,原因是MTARSI数据集提供的飞机种类较多,具备较大的检测实用价值,但同时样本数量较少,存在较大的提升空间。因此,本文需要先剔除原MTARSI数据集中质量较差的样本,再结合需求,利用数据增广技术对飞机目标样本进行人为扩展。
2.1.1 样本增广技术
图2
图2
飞机的类内复杂性和类间相似性
Fig. 2
Intra-class complexity and interclass similarity of aircraft
图3
2.1.2 新数据集基本情况
通过上述步骤进行样本增广后,使用labelImg软件对影像中飞机目标进行标注,结合剔除了模糊、错判等质量不高样本的MTARSI数据集,最终形成新的数据集,共19种型号飞机、10 081个样本,基本情况如图4所示。
图4
2.2 模型改进与评价指标
2.2.1 YOLOv5模型及改进
2016年,Redmon等[26]提出YOLO(You Only Look Once)算法,开辟了目标检测新思路。与Faster R-CNN等两阶段算法相比,YOLO是端到端的设计,只包含一个卷积网络,摒弃了多次回归的步骤。YOLOv5[27,28]作为YOLO系列最新的深度学习网络,由输入端,Backbone,Neck,预测层4部分组成。① 输入端,使用Mosaic的数据增强方式,随机调用4张图片,随机大小和分布,丰富了数据,可以提升小物体的识别能力。② Backbone,采用Focus和CSP模块,使用Darknet53csp。③ Neck,采用FPN结构和PAN结构,使用PANet,可以加强网络特征的融合。④ 预测层,使用GIOU_Loss作为损失函数,并在最后采用非极大值抑制(Non-Maximum Suppression),解决一个目标多个候选框的问题。通过现有YOLOv5相关研究发现[27,28,30],与其他YOLO系列相比,YOLOv5网络结构更加灵活,可以方便地对网络结构,卷积层数量、内部参数等进行调整;更加轻量化,速度更快,权重文件较YOLOv4小90%,具有更高的准确率和更好的小目标识别能力。因此,本文选用YOLOv5作为飞机目标检测基础框架。
飞机目标在整幅光学遥感影像中所占比例较小、飞机之间尺寸差异大,经过深度学习网络中的多层卷积运算和池化操作,可能导致小型飞机目标的提取特征弱化甚至完全丢失,难以提取有效识别特征。本文提出将训练网络中的多尺度适应值设为0.5~3.0,其方法如图5所示:将训练集中的飞机目标样本在缩小0.5倍至放大3.0倍的区间范围内进行尺寸变换后,再输入网络进行特征提取,尽可能保留小尺寸样本的识别特征,以解决影像中因飞机尺寸差异、小型飞机目标经多层卷积运算后造成的特征丢失等问题。
图5
图5
基于YOLOv5的多尺度优化示意
Fig. 5
YOLOv5 based multi-scale optimization schematic diagram
2.2.2 评价指标
为了评估模型是否能够较好地完成光学遥感影像飞机目标类型检测任务,本文设计2类指标对模型进行评估。
(1)模型训练阶段:采用精确率(Precision)、召回率(Recall)、F1-score和mAP(mean Average Precision)对模型性能进行评估。其中精确率(Precision)是针对模型预测结果而言,它表示的是预测为正的样本中有多少是真正的正样本,又称为查准率,其计算方式见式(1)。
召回率(Recall):指针对原来的样本而言的,它表示的是样本中的正例有多少被预测正确了,又称为查全率,其计算方式见式(2)。
F1-score:基于召回率和精确率计算,其计算方式见式(3)。
mAP(mean Average Precision):各类别AP的平均值。AP是指精确率-召回率(Precision-Recall)曲线下面积,可以充分表示模型精确率和召回率的总体优势,mAP指各类别AP的平均值。其中,式(1)—式(3)中,
(2)跨数据集验证:模型泛化能力(Generalization Ability),指深度学习算法对新鲜样本的适应能力[29]。模型训练完成后,采用未参与制作数据集样本的真实遥感影像作为跨数据集检验影像,定义正确率(Accuracy,A)、错检律(False Detection Rate,FDR)、漏检律(Miss Detection Rate,MDR)对模型的泛化能力进行评估,式(4)—式(6)中:待检测影像中飞机目标总数为
错检率,指检测错误的目标占目标总数的比例,计算方式见式(5)。
漏检率,指本应该被检测到却没有被检测出的目标占目标总数的比例,计算方式见式(6)。
3 结果分析与讨论
3.1 模型训练及精度评价
首先将新数据集中的目标按类型分别以8:2随机划分为训练集和测试集。再对YOLOv5网络进行训练,权值的初始学习率设为0.01,batch设为16,训练总轮次100次,多尺度适应值设为0.5~3.0。实验采用软硬件包括:Intel(R)Core(TM)i7-9750H CPU@2.60GHz;GPU:GeForce RTX 2080;操作系统:Windows10;深度学习框架:PyTorch。
图6
表1 不同方法主要指标的比较
Tab. 1
方法 | GIoU | 精确率 | 召回率 | F1-score | mAP |
---|---|---|---|---|---|
YOLOv3-tiny | 0.882 | 0.957 | 0.486 | 0.644 | 0.932 |
本文方法 | 0.005 | 0.979 | 0.995 | 0.944 | 0.993 |
图7
3.2 跨数据集检测实验
图8
图9
图9
跨数据集检测实验结果二
注:绿框为检测正确的飞机;黄框为影像局部放大;红圈为漏检的飞机。
Fig. 9
Across dataset test result 2
表2 各场景影像检测语义结果
Tab. 2
时相1 | 时相2 | |
---|---|---|
场景1 | 4架C-17 | 5架 C-17 |
场景2 | 4架C-135 | 5架C-135 |
场景3 | 5架C-135; 1架C-17 | 5架C-135 |
场景4 | 21架C-135 | 12架C-135 |
模拟场景5 | 21架C-135 | 11架C-135 |
(1)图8(a)、(b)场景1中,光线变暗,目标阴影面积增大,检测增加1架C-17型飞机。体现该模型可以应对不同光照条件和阴影变化的场景,具有较好的鲁棒性。
(2) 图8(c)、(d)场景2中,背景地物多,时相1存在同机型不同涂装,时相2飞机姿态发生变化,检测增加1架C-135型飞机。体现该模型能够适应复杂背景环境,对飞机目标的位姿变化、内类复杂性均具有较强的鲁棒性。
(3) 图8(e)、(f)场景3中, C-135飞机数量保持不变,时相2减少1架C-17。体现了模型具备同时检测不同类型飞机目标的能力。
(4) 图9(a)、(b)场景4中,减少9架C-135型飞机,体现了模型在较大场景光学遥感影像上,仍具有较好的检测能力。
针对实验中模型对部分机型的错检、漏检现象,分析主要原因是由数据集样本数量、多样性不足造成的,下一步可以将这些错、漏检的飞机影像制作成为样本,进一步提高模型的检测能力。
3.3 讨论
在现阶段,利用光学遥感影像进行飞机目标类型检测的主流的方法仍然是人工目视判读,该方法存在工作量大,对判读人员经验要求高,容易出现人为错漏等问题。而利用计算机实现飞机检测的算法大部分只能判断飞机的位置和数量,不能检测飞机的具体型号;多数针对飞机类型的检测,由于数据集非公开导致算法难以复现。
本文依据飞机目标在光学遥感影像上的特性,设计了改变光照条件、旋转飞机姿态、增加不同涂装样本等方式扩充现有数据集,提高了样本的多样性、复杂性;针对小型飞机经多层卷积运算可能造成特征丢失的现象,优化了多尺度运算参数。通过对比检测实验,验证了本文方法对比原始YOLOv5网络,检测效果大幅提升,证明了数据集增广和增加网络多尺度适应能力,对提高飞机目标类型检测效果有积极作用。通过跨数据集检测,证明了该模型可以适应不同光照、阴影变化的场景,对飞机的位姿变化、内类复杂性均具有较强鲁棒性;具备在较大场景光学遥感影像上对多种飞机实行类型检测的能力,具有较强的泛化能力,可以较好地运用于飞机目标类型检测任务。
同时,本文所做工作也仅仅只是开始,将来还能够以此为基础实现以下工作:① 通过对检测效果的分析,发现数据集缺漏,继续完善形成更多样化、更丰富的飞机类型数据集; ② 进一步改进和优化网络卷积层,加强目标特征的复用与融合,有效提高检测准确率; ③ 对网络进行枝剪和轻量化,加快计算速度,减少对硬件系统的依赖,使其可以搭载在卫星、无人机等平台上,实现可实时在轨的类型检测; ④ 利用模型对开源飞机目标进行自动分类,减少人工判读和标注工作,降低数据集样本制作成本,为后续公开飞机类型数据集提供支撑。
4 结论
飞机目标类型检测是遥感影像分析中重要的研究课题。本文将飞机目标类型检测与基于深度学习的目标识别相结合,实现了对真实光学遥感影像飞机目标的类型检测,解决了传统检测中无法同时确定飞机位置、数量、型号的问题,大大提高了检测效果,有效减少人工干预成本。首先利用开源影像获取飞机目标,结合MTARSI数据集进行样本增广;然后基于YOLOv5,优化多尺度训练参数,采用新数据集训练得到最终模型;最后跨数据集对同一区域不同时相的遥感影像飞机目标进行变化检测,验证模型泛化能力。实验表明,本文方法大大提高了克服光照条件、飞机姿态、复杂背景等因素干扰的能力,可以在较大场景的光学遥感影像上对飞机的具体型号进行检测,有较强的鲁棒性和泛化能力,检测准确率达82.12%。
参考文献
我国测绘遥感技术发展的回顾与展望
[J].
Retrospect and prospect of mapping and remote sensing technology development in China
[J].
遥感影像目标的尺度特征卷积神经网络识别法
[J].
Object detection in remote sensing imagery based on convolutional neural networks with suitable scale features
[J].
知识驱动下的飞机目标变化检测方法
[J].
Knowledge driven change detection method for aircraft targets
[J].
Aircraft detection in high spatial resolution remote sensing images combining multi-angle features driven and majority voting CNN
[J].DOI:10.3390/rs13112207 URL [本文引用: 1]
Small aircraft detection using deep learning
[J].DOI:10.1108/AEAT-11-2020-0259 URL [本文引用: 1]
多特征融合的高分辨率遥感影像飞机目标变化检测
[J].
Aircraft target change detection for high-resolution remote sensing images using multi-feature fusion
[J].
Aircraft detection in remote sensing images based on deconvolution and position attention
[J].DOI:10.1080/01431161.2021.1892858 URL [本文引用: 1]
Remote sensing image aircraft detection based on feature fusion across deep learning framework
[C]//
Remote sensing image aircraft detection technology based on deep learning
[C]//
Fast R-CNN
[C]//
R-FCN: Object detection via region-based fully convolutional networks
[C]//
You only look once: Unified, real-time object detection
[C]//
YOLOv3: An incremental improvement
[C].
A benchmark data set for aircraft type recognition from remote sensing images
[J].DOI:10.1016/j.asoc.2020.106132 URL [本文引用: 2]
光学遥感影像飞机目标识别与分类方法
[J].
Method for aircraft target recognition and classification in optical remote sensing image
[J].
DOTA: A large-scale dataset for object detection in aerial images
[C]//
Remote sensing image scene classification: Benchmark and state of the art
[J].DOI:10.1109/JPROC.2017.2675998 URL [本文引用: 1]
Orientation robust object detection in aerial images using deep convolutional neural network
[C]//
用于迁移学习的飞机遥感图像数据集的建立
[J].
Establishment of aircraft remote sensing image data set for transfer learning
[J].
深度学习在军用飞机识别与检测中的应用
[D].
Application of deep learning in military aircraft recognition and detection
[D].
You only look once: Unified, real-time object detection
[C]//
深入浅出Yolo系列之Yolov5核心基础知识完整讲解
[EB/OL].
Complete explanation of core knowledge of Yolov5
[EB/OL].
Research on the use of YOLOv5 object detection algorithm in mask wearing recognition
[J].
/
〈 |
|
〉 |
