TPH-YOLOv5: (中文翻译)

内容

Abstract

Introduction

2. Related Work

2.1。Data Augmentation

2.2。Multi-Model Ensemble Method in Object Detection

2.3。Object Detection

3. TPH-YOLOv5

3.1。Overview of YOLOv5

3.2。TPH-YOLOv5

4. Experiments

4.1。Implementation Details

4.2。Comparisons with the State-of-the-art On VisDrone2021-DET testset-challenge.

4.3。Ablation Studies

5. Conclusion

Abstract

无人机捕获场景下的目标检测是一个最近流行的任务。由于无人机总是在不同的高度进行导航,目标尺度变化剧烈,给网络优化带来负担。此外,在高速低空飞行过程中,由于物体密度较大,会产生运动模糊,给物体识别带来很大挑战。针对上述两个问题,我们提出了TPH-YOLOv5。在YOLOv5的基础上,我们增加了一个预测头来检测不同尺度的物体。然后将原预测头替换为变压器预测头(Transformer prediction heads, TPH),探索具有自我注意机制的预测潜力。此外,我们还集成了卷积块注意模型(CBAM)来寻找物体密集场景下的注意区域。为了进一步改进我们提出的TPH-YOLOv5,我们提供了大量有用的策略,如数据增强、多尺度测试、多模型集成和利用额外分类器。在VisDrone2021数据集上的大量实验表明,TPH-YOLOv5在无人机捕获场景上具有良好的性能和令人印象深刻的可解释性。在dt -test-challenge数据集上,TPH-YOLOv5的AP结果为39.18%,比之前的SOTA方法(DPNetV3)提高了1.81%。在2021年VisDrone挑战赛上,TPHYOLOv5获得第五名,并获得了与第一名模型(AP 39.43%)相当的成绩。与基线模型(YOLOv5)相比,TPH-YOLOv5提高了约7%,这是令人鼓舞的和具有竞争力的。

Introduction

无人机捕获场景下的目标检测技术在植物保护[18,41]、野生动物保护[23,22]、城市监控[1,15]等实际应用中得到了广泛的应用。在本文中,我们专注于提高无人机捕获图像的目标检测性能,并为上述众多的应用提供见解。

近年来,深度卷积神经网络在目标检测任务方面取得了显著进展[40,37,34,27,58]。一些著名的基准数据集如MS COCO[30]和PASCALVOC[9]极大地促进了对象检测应用的发展。然而,以往大多数深度卷积神经网络都是针对自然场景图像设计的。直接应用以往的模型处理无人机捕获场景下的目标检测任务主要存在三个问题,如图1中的一些案例直观地说明了这三个问题。首先,由于无人机的飞行高度变化很大,物体尺度变化剧烈。其次,无人机拍摄的图像中包含了高密度的物体,导致物体之间存在遮挡。第三,无人机拍摄的图像由于覆盖面积大,往往包含令人困惑的地理元素。以上三个问题使得无人机捕捉图像的目标检测非常具有挑战性。

TPH-YOLOv5: (中文翻译)

图1:用直观的案例解释了无人机捕捉图像的目标检测的三个主要问题。第一行、第二行和第三行的case分别显示了无人机拍摄图像上物体的大小变化、高密度和大覆盖。

在目标检测任务中,YOLO系列[37,38,39,2]在单级检测器中发挥着重要作用。本文在YOLOv5[21]的基础上,提出了一种改进的模型TPH-YOLOv5来解决上述三个问题。使用TPHYOLOv5进行检测的管道概述如图2所示。我们分别使用CSPDarknet53[52, 2]和path aggregation network (PANet[33])作为TPH-YOLOv5的骨干和颈,沿用了原来的版本。在头部部分,我们首先介绍了一个用于微小物体检测的头部。TPH-YOLOv5共包含四个检测头,分别用于对小、小、中、大物体的检测。然后,我们将原来的预测头替换为变压器预测头(Transformer prediction heads, TPH)[7,49],以探索预测潜力。为了在大覆盖的图像中找到注意区域,我们采用卷积块注意模块(CBAM[54])沿通道维和空间维依次生成注意图。与YOLOv5相比,改进后的TPH-YOLOv5可以更好地处理无人机拍摄的图像。

TPH-YOLOv5: (中文翻译)

图2:TPH-YOLOv5工作管道概述。与原设计相比,我们主要采用变压器预测头(TPH)来改进磁头。我们还增加了一个头部,以更好地检测不同比例的对象。此外,我们还采用了数据扩充、多尺度测试、模型集成和自训练分类器等技巧包,使TPH-YOLOv5更强大。

为了进一步提高TPH-YOLOv5的性能,我们采用了一套技巧(图2)。具体来说,我们在训练过程中采用了数据增强技术,提高了对图像中物体剧烈尺寸变化的适应性。在推理过程中增加了多尺度测试(ms-testing)和多模型集成策略,以获得更有说服力的检测结果。此外,通过对失效案例的可视化分析,我们发现所提出的体系结构具有较好的定位能力,但分类能力较差,特别是对类似“三轮车”和“遮阳篷-三轮车”这类类别。为了解决这个问题,我们提供了一个自训练的分类器(ResNet18[17]),它使用从训练数据中裁剪的图像块作为分类训练集。使用自训练的分类器,我们的方法在AP值上有0.8% ~ 1.0%的改进。

我们的贡献如下:

• 我们添加了一个预测头来处理对象的大规模方差。

•我们将Transformer Prediction Heads (TPH)集成到YOLOv5中,可以在高密度场景中准确定位物体。

•我们将CBAM集成到YOLOv5中,可以帮助网络在大区域覆盖的图像中找到感兴趣的区域。

• 我们为无人机捕捉场景的物体检测任务提供了一些有用的提示并过滤了一些无用的提示。

• 我们使用自训练的分类器来改进一些令人困惑的类别的分类。

•在VisDrone2021测试挑战数据集上,我们提出的TPH-YOLOv5达到39.18% (AP),比DPNetV3(以前的SOTA方法)的性能好1.81%。在VisDrone2021 DET挑战赛中,TPH-YOLOv5获得第5名,与第一名的型号相比差距较小。

2. Related Work


2.1. Data Augmentation

数据增强的有效性是对数据集进行扩展,使模型对不同环境下获得的图像具有更高的鲁棒性。光度失真和几何失真被研究人员广泛使用。对于光度失真,我们调整了图像的色调、饱和度和值。在处理几何失真时,我们添加了随机缩放、裁剪、平移、剪切和旋转。除了上述的全局像素增广方法外,还有一些更独特的数据增广方法。一些研究者提出了使用多幅图像一起进行数据增强的方法,如MixUp [57], CutMix[56]和Mosaic[2]。MixUp从训练图像中随机选取两个样本进行随机加权求和,样本的标签也对应加权求和。与通常使用零像素“黑布”遮挡图像的遮挡作品不同,CutMix使用另一幅图像的一个区域来覆盖被遮挡的区域。Mosaic是CutMix的改进版。拼接四幅图像,极大地丰富了被检测对象的背景。此外,批量归一化计算每层上4张不同图像的激活统计量。

在TPH-YOLOv5中,我们结合了MixUp、Mosaic和传统的数据增强方法

2.2. Multi-Model Ensemble Method in Object Detection


深度学习神经网络是非线性方法。它们提供了更大的灵活性,并且可以与训练数据量成比例地扩展。这种灵活性的一个缺点是它们通过随机训练算法进行学习,这意味着它们对训练数据的细节很敏感,并且每次训练时可能会发现一组不同的权重,从而导致不同的预测。这使得神经网络具有高方差。减少神经网络模型方差的一个成功方法是训练多个模型,而不是单个模型,并结合这些模型的预测。

针对不同的目标检测模型,有三种不同的集成盒方法:非最大抑制(Non-maximum suppression, NMS)[36]、Soft-NMS[53]、加权盒融合(weighted boxes fusion, WBF)[43]。在NMS方法中,如果盒的重叠、交集(IoU)高于某个阈值,则认为它们属于同一对象。对于每个对象,NMS只留下一个具有最高可信度的边界框,其他边界框将被删除。因此,盒过滤过程取决于单个IoU阈值的选择,这对模型性能有很大影响。Soft-NMS对NMS做了轻微的改变,这使得Soft-NMS在标准基准数据集(如PASCAL VOC[10]和MS COCO[30])上比传统NMS有了显著的改进。它根据IoU值为相邻包围盒的置信度设置一个衰减函数,而不是完全将其置信度分数设置为0并删除。WBF的工作方式与NMS不同。NMS和Soft-NMS都排除了一些盒子,而WBF合并了所有的盒子,形成最终的结果。因此,它可以解决模型的所有不准确的预测。我们使用WBF集成最终的模型,其性能比NMS要好得多。

2.3. Object Detection


基于cnn的对象检测器可分为多种类型:1)单级检测器:YOLOX[11]、FCOS[48]、DETR[65]、scaledyolov4[51]、EfficientDet[45]。2)两级探测器:VFNet [59],CenterNet2[62]。3)锚基探测器:ScaledYOLOv4 [51], YOLOv5[21]。4)无锚探测器:CenterNet [63], YOLOX [11], RepPoints[55]。有些探测器是专门为无人机捕获的图像设计的,如RRNet[4]、PENet[46]、CenterNet[63]等。但从组件的角度来看,它们一般由两部分组成,一部分是基于cnn的主干,用于图像特征提取,另一部分是用于预测目标的类和包围盒的检测头。此外,近年来发展起来的物体探测器往往在脊骨与头部之间插入一些层,人们通常称这部分为探测器的颈部。接下来,我们将分别详细介绍这三种结构。

骨干。常用的骨干包括VGG[42]、ResNet[17]、DenseNet[20]、MobileNet[19]、EfficientNet[44]、CSPDarknet53[52]、Swin Transformer[35]等,而不是我们自己设计的网络。因为这些网络已经证明在分类等问题上具有很强的特征提取能力。但研究人员也将对主干进行微调,使其更适合于特定的任务。

颈部。颈部的设计是为了更好地利用脊柱提取的特征。它对Backbone在不同阶段提取的特征图进行再加工和合理利用。通常,颈部由多条自底向上的路径和多条自顶向下的路径组成。颈部是目标检测框架中的关键环节。最早的颈部是使用上下取样块。该方法的特点是没有特征层聚合操作,如SSD[34],直接跟随多层特征映射后的头部。neck中常用的路径聚合块有:FPN[28]、PANet[33]、NAS-FPN[12]、BiFPN[45]、ASFF[32]、SFAM[61]。这些方法的共性是反复使用各种上下采样、拼接、点和或点积来设计聚合策略。还有一些额外的block在颈部使用,如SPP [16], ASPP [5], RFB [31], CBAM[54]。

头部。骨干网作为一个分类网络,不能完成定位任务,而头部则负责通过从骨干网中提取的特征图来检测目标的位置和类别。头部一般分为两种:一级物体检测器和两级物体检测器。两级检测器长期以来一直是目标检测领域的主导方法,其中最具代表性的是RCNN系列[14,13,40]。与两级检测器相比,一级检测器可以同时预测物体的包围盒和类别。单级检测器的速度优势明显,但精度较低。对于单级探测器,最具代表性的型号有YOLO系列[37,38,39,2],SSD[34]和RetinaNet[29]。

3. TPH-YOLOv5


3.1. Overview of YOLOv5

YOLOv5有YOLOv5s、YOLOv5m、YOLOv5l和YOLOv5x四种型号。一般来说,YOLOv5分别采用CSPDarknet53的架构,SPP层为骨干,PANet为颈,YOLO检测头[37]。为进一步优化整体架构,提供免费赠品袋和[2]特价。由于它是最显著和方便的一级检测器,我们选择它作为我们的基线。当我们使用VisDrone2021数据集[64],采用数据增强策略(Mosaic和MixUp)对模型进行训练时,我们发现YOLOv5x的结果要远远好于YOLOv5s、YOLOv5m和YOLOv5l, AP值的差距大于1.5%。虽然YOLOv5x模型的训练计算成本高于其他三种模型,但为了追求最佳的检测性能,我们仍然选择使用YOLOv5x。此外,根据无人机拍摄图像的特点,对常用的光度畸变和几何畸变参数进行了调整。

3.2. TPH-YOLOv5


TPH-YOLOv5的框架如图3所示。我们修改了最初的YOLOv5,使其专门用于VisDrone2021数据集。

TPH-YOLOv5: (中文翻译)

图3:TPH-YOLOv5的体系结构。a) CSPDarknet53骨干,末端有三个变压器编码器块。b) The Neck使用类似PANet的结构。c)四个TPHs(变压器预测头)使用来自Neck中的变压器编码器块的特征图。另外,每个块的编号在块的左边用橙色的数字标记。

预测微小物体。我们调查了VisDrone2021数据集,发现它包含许多非常小的实例,因此我们增加了一个预测头用于微小物体检测。结合其他三个预测头,我们的四头结构可以缓解暴力对象尺度方差带来的负面影响。如图3所示,我们添加的预测头(头1)是由低水平、高分辨率的feature map生成的,该feature map对微小物体更加敏感。增加检测头后,虽然增加了计算量和内存开销,但对微小物体的检测性能有了很大的提高。

变压器编码器。受视觉转换器[6]的启发,我们用变压器编码器块替换了YOLOv5原始版本中的一些卷积块和CSP瓶颈块。其结构如图4所示。与CSPDarknet53中原始的瓶颈块相比,我们认为变压器编码器块可以捕获全局信息和丰富的上下文信息。每个变压器编码器包含两个子层。第一子层为多头注意层,第二子层为全连接注意层。各子层之间使用剩余连接。变压器编码器块增加了捕获不同本地信息的能力。它还可以利用自注意机制[50]来挖掘特征表示潜能。在VisDrone2021数据集上,变压器编码器块在高密度遮挡对象上有更好的性能。

基于YOLOv5,我们只在磁头部分应用变压器编码块,形成变压器预测磁头(transformer Prediction head, TPH)和骨干端。由于网络末端的特征映射具有较低的分辨率。在低分辨率特征图上应用TPH可以减少昂贵的计算和内存开销。此外,当我们放大输入图像的分辨率时,我们可选地在早期层去除一些TPH块,使训练过程可用。

TPH-YOLOv5: (中文翻译)

图4:变压器编码器的结构包括两个主要模块,一个多头注意模块和一个前馈神经网络(MLP)。LayerNorm和Dropout层帮助网络更好地收敛,并防止网络过拟合。多头注意可以帮助当前节点不仅关注当前像素点,还可以获得上下文的语义。

卷积块注意模块(CBAM)。CBAM[54]是一个简单但有效的注意力模块。它是一个轻量级模块,可以集成到最著名的CNN架构中,并且可以以端到端方式对其进行训练。在给定特征映射的情况下,CBAM沿着通道和空间两个维度依次推导注意映射,然后将注意映射与输入特征映射相乘,进行自适应特征细化。CBAM模块的结构如图5所示。根据本文[54]的实验,将CBAM集成到不同分类和检测数据集的不同模型中后,模型的性能得到了较大的提高,证明了该模块的有效性。

TPH-YOLOv5: (中文翻译)

图5:CBAM模块概述。通过两个顺序子模块来细化经过CBAM的特征映射,并使用残留路径。

在无人机拍摄的图像上,大面积的覆盖区域往往包含着令人困惑的地理元素。利用CBAM可以提取注意区域,帮助TPH-YOLOv5抵御混淆信息,并将注意力集中在有用的目标对象上。

ms测试和模型集成。我们根据模型集成的不同角度训练了5个不同的模型。在推理阶段,我们首先对单个模型执行ms测试策略。ms-testing的实现细节如下三个步骤。1)将测试图像缩放到1.3倍。2)分别将图像压缩为1倍、0.83倍、0.67倍。3)水平翻转图像。最后,我们向TPH-YOLOv5提供6个不同比例的图像,并使用NMS融合测试预测。在不同的模型上,我们进行相同的ms-testing操作,并通过WBF将最后的5个预测进行融合得到最终结果。

自我训练的分类器。用TPH-YOLOv5对VisDrone2021数据集进行训练后,对test-dev数据集进行测试,通过可视化失败案例分析结果,得出TPH-YOLOv5具有较好的定位能力,但分类能力较差的结论。我们进一步探究如图6所示的混淆矩阵,观察到一些硬类如三轮车和遮阳三轮车的精度很低。因此,我们提出了一种额外的自训练分类器。首先,我们通过裁剪ground-truth包围框并将每个图像块的大小调整为64×64来构建一个训练集。然后选择ResNet18[17]作为分类器网络。从实验结果可以看出,我们的方法在该自训练分类器的帮助下,对AP值有大约0.8% ~ 1.0%的改进。

TPH-YOLOv5: (中文翻译)

图6:在IoU阈值为0.45,置信阈值为0.25时生成混淆矩阵。

4. Experiments


我们使用VisDrone2021数据集的测试集挑战和测试集开发来评估我们的模型,我们报告mAP(所有10个IoU阈值的平均值,范围从[0.5:0.95])和AP50。VisDrone2021-DET数据集与VisDrone2019-DET数据集和VisDrone2018-DET数据集相同。

4.1. Implementation Details

我们在Pytorch 1.8.1上实现了TPH-YOLOv5。我们所有的模型都使用NVIDIA RTX3090 GPU进行训练和测试。在训练阶段,我们使用从yolov5x pre-trained模型的一部分,因为TPH-YOLOv5 YOLOv5分享大部分的骨干(0˜8块)和部分头(15块10˜13块˜18),有许多可以从yolov5x转移到TPH-YOLOv5权重,通过使用这些重量我们可以节省大量的训练时间。

由于VisDrone2021训练集有点小,我们只在VisDrone2021 trainset上训练模型65个epoch,前2个epoch用于热身。我们使用adam优化器进行训练,并使用3e-4作为初始学习速率与余弦lr计划。最后一个历元的学习速率下降到初始学习速率的0.12。我们的模型的输入图像的大小非常大,图像的长边为1536像素,这导致批量大小只有2。

数据分析。根据我们以前的工程经验,在训练模型之前遍历数据集是非常重要的,这往往对mAP的改进有很大的帮助。我们分析了VisDrone2021数据集中的边界框。当输入图像大小设置为1536时,342391个标签中有622个大小小于3像素。如图7所示,这些小物体是很难识别的。当我们使用灰色方块覆盖这些小对象并在处理后的数据集上训练我们的模型时,mAP提高了0.2,这比不提高要好。

TPH-YOLOv5: (中文翻译)

图7:有些图像拍摄的高度过高,造成许多小物体无法识别。

Ms-testing。在针对计算机视觉问题训练神经网络模型时,数据增强是一种常用的提高性能和减少泛化误差的技术。在使用模型进行预测时,还可以应用测试数据集的图像数据增强,使模型能够对多个不同版本的图像进行预测。对增强后的图像进行平均预测,得到较好的预测效果。

在ms-testing中,我们将测试图像缩放到三个不同的尺寸,然后水平翻转,总共得到6张不同的图像。在测试了6张不同的图像并融合结果后,我们得到了最终的测试结果。

4.2. Comparisons with the State-of-the-art On VisDrone2021-DET testset-challenge.

由于在VisDrone2021竞赛服务器上提交的作品数量有限,我们只获得了4个模型的测试集挑战结果和5个模型集合的最终结果。我们最终在测试集挑战中获得了39.18分的高分,远远高于VisDrone2020的最好成绩37.37分。我们在VisDrone 2021排行榜上排名第五,比第一名的39.43分低0.25分。如果提交的数量没有用完,我们肯定会得到更好的结果。表1列出了我们的模型的分数,与上一年的VisDrone竞赛的分数和委员会提交的算法的分数进行了比较。

TPH-YOLOv5: (中文翻译)

表1:VisDrone2021测试集挑战的性能比较

4.3. Ablation Studies


在VisDrone2021-DET testset-dev。我们分析每个提议的组件在本地测试集开发的重要性,因为我们不能在VisDrone2021比赛服务器上测试这些,提交到比赛服务器的数量是非常宝贵的。表2列出了每个组件的影响。

TPH-YOLOv5: (中文翻译)

额外预测头的影响。增加了微小物体的探测头,使原来的YOLOv5x的层数从607层变为719层,GFLOPs从219.0层变为259.0层。这当然增加了计算量,但mAP的改进也非常高。从图9可以看出,TPH-YOLOv5在检测小目标时表现良好,因此增加计算量是值得的。

变压器编码器块的效果。使用变压器编码器模块后,模型的总层数从719层减少到705层,GFLOPs从259.0层减少到237.3层。使用变压器编码器块不仅可以增加mAP,还可以减小网络的规模。同时,它也在高密度物体和大型物体的检测中发挥作用。

模型集合的影响。我们列出了我们的五个不同模型在每个类别的最终结果的mAP,并与表3中的融合模型进行了比较。在训练阶段,我们使用不同的输入图像大小,并改变每个类别的权重,使每个模型具有独特性。从而使最终的集成模型得到一个相对平衡的结果。

TPH-YOLOv5: (中文翻译)

1) TPH-YOLOv5-1使用输入图像尺寸为1920,所有类别权重相等。

2) tph – yolov -2使用输入图像尺寸为1536,所有类别权重相等。

3) TPH-YOLOv5-3采用输入图像尺寸为1920,每个类别的权重与标签数量相关,如图8所示。某一类别的标签越多,其权重就越低。

4)TPH-YOLOv5-4采用输入图像尺寸1536,每个类别的权重与标签数量有关。

5) TPH-YOLOv5-5使用YOLOv5l的骨干,输入图像大小为1536。

TPH-YOLOv5: (中文翻译)

图8:每个类别的标签数量

VisDrone2021测试测试的一些检测结果。我们选取了一些具有代表性的图像作为测试结果的显示。图9显示了大目标、小目标、密目标和大面积覆盖图像的结果。

TPH-YOLOv5: (中文翻译)

图9:我们的TPH-YOLOv5测试集挑战的一些可视化结果,不同的类别使用不同颜色的边框。该算法在定位微小物体、密集物体和运动模糊物体方面具有良好的性能

5. Conclusion

本文在YOLOv5上加入了变压器编码器块、CBAM和一些经验丰富的技术,形成了目前最先进的探测器TPH-YOLOv5,尤其擅长无人机捕获场景下的目标检测。我们刷新了VisDrone2021数据集的记录,我们的实验表明,TPH-YOLOv5在VisDrone2021数据集上实现了最先进的性能。我们尝试了大量的特征,并利用其中的一些特征来提高目标检测器的准确性。我们希望这份报告可以帮助开发人员和研究人员在分析和处理无人机捕获的场景时获得更好的经验。

相关信息:

混淆矩阵怎么看_分类模型评判指标–混淆矩阵_weixin_39613744的博客-CSDN博客

数据增强:Mixup,Cutout,CutMix | Mosaic – 简书

Weighted Boxes Fusion_海里的羊的博客-CSDN博客

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
乘风的头像乘风管理团队
上一篇 2022年3月15日 下午2:03
下一篇 2022年3月15日

相关推荐