点击蓝字
关注我们
关注并星标
从此不迷路
计算机视觉研究院


公众号ID|计算机视觉研究院
https://pmc.ncbi.nlm.nih.gov/articles/PMC10304702/
计算机视觉研究院专栏
Column of Computer Vision Institute
飞行器检测在航空监视与交通管控领域具有重大应用价值。无人机所拍摄图像存在目标尺寸微小、车辆相互遮挡等特点,极大增加了检测难度。当前针对航拍图像中车辆检测的研究,普遍存在漏检与误检问题。

PART/1
概述
为此,本文基于YOLOv5定制了一款更适用于航拍图像车辆检测的模型(YOLOv5-VTO)。第一,新增一个预测头以实现对更小尺度目标的检测;其次,为保留参与模型训练过程的原始特征,引入双向特征金字塔网络(BiFPN)对多尺度特征信息进行融合;最后,采用Soft-NMS(软非极大值抑制)作为预测框筛选方法,缓解因车辆排列密集导致的漏检问题。在本文自制数据集上的实验结果表明,与YOLOv5s相比,YOLOv5-VTO的mAP@0.5和mAP@0.5:0.95分别提升3.7%和4.7%,精度与召回率两项指标也均有改善。
PART/2
背景
近年来,小型低空无人机(UAV)的使用呈爆发式增长。基于配备视觉传感器的无人机的目标检测技术在无人驾驶车辆和智能交通系统等领域引起了广泛关注。基于无人机的航空车辆检测技术比固定位置安装的摄像头成本更低,且能提供更广阔的图像视野、更高的灵活性和更广泛的覆盖范围。无人机可以监控任何范围内的道路交通,为后续的智能交通监管任务(如交通流量计算、意外事故检测和交通态势感知)提供关键信息。不过,绝大多数车辆目标的特征点少、尺寸小,这给无人机俯视图下的车辆精准且实时检测带来了困难。
现有车辆检测方法大致可分为传统车辆检测算法和基于深度学习的车辆检测算法。传统车辆检测算法必须手动提取特征,然后使用支持向量机(SVM)、自适应提升(AdaBoost)等机器学习方法进行分类。不过,这种方法耗时且只能提取浅层特征,在应用于小目标的航空摄影场景时存在显著局限性。近年来,随着深度学习技术的不断发展,各种基于卷积神经网络的人工智能算法在不同领域发挥了重大作用,例如自动驾驶、医疗政策优化和野生动物普查。基于深度学习的目标检测算法也得到了广泛应用,主要包括两阶段算法和单阶段算法。两阶段目标检测算法需要先提取候选区域,然后对目标进行回归定位和分类,常见的例子包括Fast R-CNN、Faster R-CNN和R-FCN。Singh等人使用Fast R-CNN优化的样本设计了一个实时智能框架,该框架在背景复杂且小目标众多的车辆检测任务中表现良好。不过,当目标尺寸变化较大时,该模型可能不太适用。文献的作者基于Faster R-CNN对车辆检测进行了研究,改善后的模型减少了延迟并增强了对小目标的检测性能。但该模型在检测过程中需要大量的计算资源。Kong等人使用并行区域提议网络(RPN)结合基于密度的样本分配器来改善航拍图像中车辆密集区域的检测。不过,该模型结构复杂,需要分两个阶段完成检测,无法满足实时检测的要求。由于两阶段检测算法需要预先生成大量预选框,因此其精度很高但速度慢,无法满足实时检测的需求。单阶段目标检测算法直接将定位和分类问题转化为回归问题,与两阶段算法相比,具有绝对的速度优势和精度潜力。主流的单阶段目标检测算法主要包括YOLO系列和SSD系列。Yin等人通过提高SSD在不同尺度下利用特征信息的效率,在小目标检测方面取得了出色的性能。不过,默认框需要手动选择,这可能会影响模型在小目标检测中的性能。Lin等人基于YOLOv4在航拍图像中检测有向车辆,改善后的模型在车辆和建筑物密集排列的场景中显著提高了检测性能。但对于小目标场景,缺乏进一步的改善研究。Adel等人在无人机航拍车辆数据集上比较了Faster R-CNN、YOLOv3和YOLOv4的检测性能,但未思考车辆遮挡、拍摄角度和光照条件对模型的影响。Zhang等人提出了一种新颖的多尺度对抗网络用于改善无人机中的车辆检测,该模型在不同视角、高度和成像情况下对图像都有很好的表现。不过,车辆的分类不够具体,仅分为大型车辆和小型车辆两类。
由于YOLOv5具有出色的检测精度和快速的推理速度,因此在各个领域的实际应用中得到了广泛应用。Niu等人使用ZrroDCE低光增强算法对数据集进行优化,并将其与YOLOv5和AlexNet结合用于交通灯检测。Sun等人使用YOLOv5来识别螺栓和螺母上的标记,通过计算相对旋转角度来判断螺栓是否松动。Yan等人将基于YOLOv5的增强模型应用于苹果检测,提高了检测速度并降低了被遮挡目标的误检率。
为了降低车辆检测任务的误检率和漏检率,本文对YOLOv5版本6.1中最小的网络YOLOv5s进行了改善研究。具体细节如下:
(1)本文在原始网络的三个检测层中添加了一个更小的检测层。这使得网络对高分辨率图片中的小目标更敏感,并增强了网络的多尺度检测能力。
(2)我们在YOLOv5的基础上引入了双向特征金字塔网络(BiFPN)结构,强化了特征提取和融合过程。BiFPN使模型能够更有效地利用深层和浅层的特征信息,从而获得更多关于小目标和被遮挡目标的细节。
(3)YOLOv5s采用非极大值抑制(NMS)算法,该算法会直接删除两个重叠过多的候选框中置信度低的那个,从而导致漏检。因此,我们使用软非极大值抑制(Soft-NMS)算法来优化锚框置信度,有效缓解了车辆遮挡导致的漏检。
PART/3
新算法框架解析
YOLOv5概述
YOLOv5是Ultralytics于2020年发布的单阶段目标检测算法,包含YOLOv5s、YOLOv5l、YOLOv5m和YOLOv5x四种结构。该模型通过将图像划分为多个网格来工作,若目标中心落在某个网格内,该网格负责预测该目标。在这四种模型中,YOLOv5s是尺寸最小的模型,在深度和宽度上均为最小。随着模型尺寸的增大,尽管检测精度有所提升,但检测速度也会变慢。如图1所示,YOLOv5网络主要分为四个部分:输入层(input)、骨干网络(backbone)、颈部网络(neck)和预测层(head)。

图1
输入层的主要功能是将输入图像的尺寸统一为固定大小。骨干网络部分包含CBS、C3和SPPF模块,主要负责从输入图像中提取关键信息,每个模块的结构如图2所示。

图2
YOLOv5的颈部网络采用特征金字塔网络(FPN)和路径聚合网络(PAN)的混合结构。FPN将语义信息从深层特征图传递到浅层,而PAN将定位信息从浅层传递到深层。两者结合可聚合来自骨干网络多个层级的特征到不同检测层,增强网络的特征融合能力。
YOLOv5目标检测算法仍在不断更新迭代,它通过吸收其他检测方法的优点,实现了较高的精度和速度,且易于实现。因此,本文选择YOLOv5s作为基准模型,通过一系列实验开发出更适用于航空车辆识别的模型。
为微小目标添加预测层
YOLOv5s网络的最大下采样步长为32,因此,分辨率小于32×32像素的目标被视为小目标,大于96×96像素的被定义为大目标,介于两者之间的被归类为中目标。由于无人机拍摄的图像中存在大量微小尺度的目标,我们进一步将分辨率小于32×32像素的目标细分为极小目标(分辨率 3所示,可以发现训练集、验证集和测试聚焦的微小目标数量都很显著。因此,定制一个更适合检测微小目标的检测层至关重大。

图3
YOLOv5s网络有三个检测层,即P3、P4和P5,其特征图尺寸分别为80×80、40×40和20×20。特征图尺寸越大,负责检测的目标越小。最大的80×80特征图对应输入尺寸为640×640,该特征图中一个网格的感受野尺寸为8×8。如果原始图像中极小车辆的高度或宽度小于8像素,网络将难以学习该目标的特征。新的P2检测分支可以检测4×4像素级的目标,同时配置更小尺寸的锚框,从而有效减少极小车辆的漏检情况。

图4
从图4可以看出,骨干网络中的第一个C3模块经过两次下采样后输出160×160的特征图,第二个C3模块生成80×80的特征图。我们将160×160的特征图与上采样后的第二个C3模块的输出融合,得到检测分支P2。通过这种方式,P2主要来自浅层卷积层,包含更多与形状、位置和尺寸相关的信息。这些信息有助于模型更准确地辨别细粒度特征,从而提高检测小目标的能力。
基于BiFPN增强特征融合
YOLOv5的颈部网络采用FPN和PAN的组合结构。在特征提取方面,浅层网络具有更高的分辨率和更准确的位置信息;而深层网络具有更广泛的感受野和更丰富的高维语义信息,有助于目标分类。FPN促进语义信息从深层特征图向浅层特征图传递,PAN则实现浅层定位信息与深层语义信息的高度整合。FPN与PAN的结合将来自骨干网络多个层级的参数聚合到不同检测层,显著提升了网络的特征融合能力。
不过,存在一个问题:PAN结构的输入主要是经过FPN处理的特征信息,未纳入来自骨干网络的原始特征信息。这可能导致模型的优化方向出现偏差,影响检测效果。BiFPN第一通过移除只有单输入单输出边的节点来简化PAN结构,然后在同一层级的两个节点之间添加一条额外的边,以融合更多差异化特征,其结构如图5C所示。原始BiFPN会根据特征的重大性为不同输入特征分配不同权重,这种结构常用于促进特征融合。但在本研究的数据集上,引入带权重的BiFPN会增加参数数量和计算量,且检测效果并不理想。
由于引入BiFPN的出发点是让PAN能够获取更多原始特征信息作为输入,因此我们移除了加权部分,仅参考其跨尺度连接方式。通过引入去加权的BiFPN,兼顾了精度与效率之间的权衡,使特征融合过程更合理、更高效。这样,PAN的每个节点都有一条来自骨干网络的输入边,使训练过程持续纳入原始特征,防止模型在训练过程中偏离预期。微小目标的特征信息本就相对不足,经过几次卷积后特征易丢失。如图6所示,新增预测层的部分输入来自第一个C3模块,该模块保留了大部分原始特征信息,从而可以获取更多关于微小目标的特征,提升模型的检测性能。

引入Soft-NMS以减少漏检
本文采用Soft-NMS替代YOLOv5所采用的NMS算法。NMS算法会在所有预测框中选择置信度最高的那个,然后依次与其他预测框进行交并比(IoU)运算。对于IoU值超过设定阈值的预测框,会直接将其删除。在高峰通勤时段,无人机拍摄的图像中车辆密度大且排列密集,这种情况下,使用NMS算法会抑制许多原本属于不同目标的锚框,导致被遮挡车辆的漏检。NMS算法如公式(1)所示。

与NMS方法不同,Soft-NMS选择M作为基准框,然后计算M与相邻预测框之间的IoU。当IoU值小于设定阈值时,不会抑制该相邻预测框。当IoU值大于设定阈值时,惩罚函数会降低与参考框重叠的预测框的分数,而不是直接将分数设为0。通过对IoU值大的预测框的分数进行惩罚,重叠区域大的锚框会获得更高的惩罚系数,从而得到更小的分数( s_i )。因此,在抑制迭代过程中,更多的锚框得以保留,避免了高度重叠但包含目标的预测框被移除的情况。 Soft-NMS算法的表达式如公式(2)所示。

图7a对比了YOLOv5分别使用NMS和Soft-NMS作为预测框筛选算法时的检测性能。关注图7b中的红色虚线框可以发现,Soft-NMS算法的应用成功减少了车辆密集区域的漏检车辆数量,提升了模型在高重叠场景下的检测性能。

图7
PART/4
实验及可视化

图9
图9展示了本文数据聚焦的部分图像。数据集一般分为训练集、验证集和测试集,其中训练集用于训练模型,验证集用于持续优化参数,测试集用于评估模型。如果这三个集合的数据分布差异很大,可能会影响模型在真实场景中的泛化能力。因此,对数据集进行随机分配至关重大,常见的比例为8:1:1和7:2:1。在本研究中,我们大致按照8:1:1的比例对数据集进行随机划分,得到训练集2800张、验证集350张、测试集500张。
数据预处理
我们对数据集采用了自适应图像缩放和马赛克数据增强进行预处理。由于许多原始图像的宽高比不同,在输入模型之前需要对其进行缩放和填充。如果边缘填充过多黑边,会导致冗余信息并影响训练速度。因此,我们使用自适应图像缩放,它可以自适应地为原始图像添加最少的黑边,从而加快模型的学习速度。马赛克数据增强会随机选择四张经过缩放的原始图像,对其进行排列,然后将它们拼接成一张新图像。这种数据增强方法可以有效提升对小目标的检测能力。图10展示了这两种数据预处理方式。


本文探索了三种结构来改善YOLOv5s算法。第一种是添加新的检测层P2,以增强对小目标车辆的识别能力;第二种是引入去加权的BiFPN,使特征融合过程更合理、更实用;第三种是采用Soft-NMS作为预测框筛选算法,以提升对重叠和遮挡车辆的检测性能。我们设计了相应的消融实验来验证添加不同模块后YOLOv5的有效性,结果如上表所示。
从表中的数据分析可以看出,添加P2检测层后,与基准模型相比,模型的参数数量和计算量略有增加。不过,进一步引入BiFPN后,在保证精度的同时,参数数量和计算量显著减少。将这三种改善策略结合,得到改善后的模型YOLOv5-VTO。虽然与仅使用P2和BiFPN相比,添加Soft-NMS降低了“轿车(car)”类别的AP,但其余类别的AP均有提升。由于模型已在“轿车”类别上实现了出色的检测性能,我们认为“厢式货车(van)”“卡车(truck)”和“公交车(bus)”类别更需要提升AP。此外,mAP的大幅提升也表明,Soft-NMS的引入对增强模型的综合性能起到了重大作用。当然,从图7中也可以清楚地看到,Soft-NMS的确 减少了密集排列车辆的漏检情况。
与基准模型相比,mAP@0.5和mAP@0.5:0.95这两个综合指标分别提升了3.7%和4.7%,有效提高了航空车辆检测的精度。尽管与基准模型相比,参数数量和计算量略有增加,但在后续的对比实验中发现,改善后的模型仍能满足实时检测的要求。消融实验表明,本文所采用的方法在无人机航拍车辆检测任务中表现出色,在小目标和多重叠遮挡目标场景下优于基础模型。
在整个训练过程中,本文中的YOLOv5和YOLOv5-VTO模型使用一样的数据集和参数设置。根据训练过程中保存的日志文件,绘制了两个模型的mAP和损失对比图,如图11所示。

图11
图11a显示,改善后的模型获得了更高的mAP。相比之下,图11b、c表明训练过程中没有明显的过拟合问题。此外,与基准模型相比,该模型在训练集和验证聚焦的整体损失值更低。
我们根据模型训练过程中生成的关于精度和召回率的日志文件,绘制了如图 12所示的P-R曲线。由于Soft-NMS是预测阶段的预测框优化方法,不参与模型训练过程,因此图12b只是添加P2和BiFPN后训练模型得到的曲线。P-R曲线下方的面积表明某一类别的AP,因此曲线越靠近右上角,算法的整体性能越好。

图12

图13
图13A显示,YOLOv5-VTO模型能够减少车辆的误检情况。通过对比B组和C组的结果可以观察到,改善后的模型降低了漏检率,即使在光线不足的场景中也能保持有效检测。从D组和E组的对比结果可以发现,本文模型对小目标的检测性能得到了提升。上述可视化结果表明,我们的模型在航拍图像中对微小和遮挡车辆实现了更好的检测性能。
有相关需求的你 可以联系我们!

END

转载请联系本公众号获得授权

计算机视觉研究院学习群等你加入!
ABOUT
计算机视觉研究院
计算机视觉研究院主要涉及深度学习领域,主要致力于目标检测、目标跟踪、图像分割、OCR、模型量化、模型部署等研究方向。研究院每日分享最新的论文算法新框架,提供论文一键下载,并分享实战项目。研究院主要着重”技术研究“和“实践落地”。研究院会针对不同领域分享实践过程,让大家真正体会摆脱理论的真实场景,培养爱动手编程爱动脑思考的习惯!





