Yolov4论文翻译与解析(一)

前言

时隔两年之后,伴着Yolo原作者Redmon在twitter正式宣布退出cv界,大家都以为yolo系列已经终结的时候,Yolov4横空出世,虽然作者已经大换血,但论文中给出的测试结果依然保留yolo系列的血统:保持相对较高的mAP的同时,大大降低计算量,可谓是学术成果在工业应用的典范,至于实际使用如何,还需要时间的进一步检验,期望v4能够如v3一般强大。
整体而言,YOLOv4几乎没有像前几代YOLO一样提出一些创新性的东西,而是大量列举了近几年以来关于目标检测的一些最新技术和成果,并对这些方法进行了大量的人工试验,可以认为是一种人工NAS,用试验的方式来选择一系列新的方法来对YOLOv3从网络结构、训练、数据增强等多个层面进行相应的增强,从而达到更好的效果。虽说没有提出令人惊艳的理论创新,但单单是用工作量如此巨大的人工搜索,了解并实践了如此多的最新研究成果,并将其中较优的方法应用于YOLO这样一个工业化如此优秀的检测器中,就已经足够令人感到赞叹了。
论文翻译部分:

YOLOv4:速度和准确度更好的目标检测

Yolov4论文翻译与解析(一)_第1张图片

摘要:

目前已经有许多方法可以提高卷积神经网络(CNN)的准确性,但需要在大型数据集上对这些方法的组合进行实际测试,并对结果进行理论证明。某些方法只针对某些模型、某些问题、或者仅在小型数据集上有效;而某些方法(例如批归一化和残差连接)适用于大多数模型,任务和数据集。我们假设此类通用功能包括加权残差连接(WRC),交叉阶段部分连接(CSP),交叉小批量标准化(CmBN),自对抗训练(SAT)和Mish激活。我们使用的新方法包括:WRC,CSP,CmBN,SAT,Mish激活,马赛克数据增强,CmBN,DropBlock正则化和CIoU损失,并结合其中的几项来达到最先进的结果:在MS COCO数据集上,基于Tesla V100 GPU,实现实时速度约为65 FPS,精度为43.5%AP(65.7%AP50)的检测。
论文的源码链接:https://github.com/JianqiuChen/darknet

1 简介

大多数基于CNN的目标检测器仅适用于推荐系统。例如,使用慢速精确模型,执行通过城市摄像机搜索空闲停车位的过程,而汽车碰撞警告则与快速不准确的模型有关。提高实时目标检测器的准确性,不仅可以将它们用于提示生成推荐系统,还可以用于独立的流程管理和减少人工输入。运行在常规图形处理单元(GPU)上的实时目标检测器,允许它们以可承受的价格进行大量使用。最精确的现代神经网络无法实时运行,由于min-batch size较大,需要大量的GPU来进行训练。我们创建了一个能够在常规GPU上实时运行的CNN来解决此类问题,并且训练仅需要一个常规GPU。
这项工作的主要目标是设计生产系统中目标检测器的快速运行速度并优化并行计算,而不是低计算量理论指标(BFLOP)。我们希望可以轻松地训练和使用该检测器。例如,任何使用常规GPU进行训练和测试的人都可以获得实时,高质量和令人信服的目标检测结果,如图1所示。我们的主要成果如下:
1.我们开发了一种高效的和强大的目标检测模型。它使每个人都可以使用1080 Ti或2080 Ti GPU训练超快速和准确的目标检测器。
2.我们在检测器训练期间,验证了最先进的我们称之为Bag-of-Freebies和Bag-of-Specials(参见下文)的方法的影响。
3.我们修改了最先进的方法,使它们更有效,更适合单GPU训练,包括CBN,PAN,SAM等。

2 相关工作

2.1目标检测模型

现代的检测器通常由两部分组成,一个是在ImageNet上预训练的backbone(骨架网络),另一个是用来预测对象的类别和边界框的head(头部)。对于在GPU平台上运行的那些检测器,其骨干网络可能是VGG [68],ResNet [26],ResNeXt [86]或DenseNet [30]。对于在CPU平台上运行的那些检测器,其骨架可以是SqueezeNet [31],MobileNet [28、66、27、74]或ShuffleNet [97、53]。至于头部,通常分为两类,即单阶段目标检测器和双阶段目标检测器。最具有代表性的双阶段目标检测器是R-CNN [19]系列,包括Fast R-CNN [18],Faster R-CNN [64],R-FCN [9]和Libra R-CNN [ 58]。也可以使两阶段目标检测器成为anchor-free(无需借助锚点)检测器,例如RepPoints [87]。对于单阶段目标检测器,最具代表性的模型是YOLO [61、62、63],SSD [50]和RetinaNet [45]。近年来,有研究开发了anchor-free的单阶段目标检测器,例如CenterNet [13],CornerNet [37、38],FCOS [78]等。近年来开发的目标检测器通常在骨架和头部之间插入一些层,通常使用这些层。收集不同阶段的特征图。我们可以称其为目标检测器的neck(颈部)。通常,颈部由几个自下而上的路径和几个自上而下的路径组成。应用此机制的网络包括特征金字塔网络(FPN)[44],路径聚集网络(PAN)[49],BiFPN [77]和NAS-FPN [17]。
除上述模型外,一些研究人员还着重于直接构建用于目标检测的新骨架网(DetNet [43],DetNAS [7])或新的整个模型(SpineNet [12],HitDeector [20])。 。
综上所述,普通的目标检测器由以下几部分组成(输入,骨架网络,颈部,头部):
Yolov4论文翻译与解析(一)_第2张图片

2.2 Bag of freebies

通常,传统的目标检测器是离线训练的。因此,研究人员总是喜欢利用这一优势,并开发出更好的训练方法,这些方法可以使目标检测器获得更好的精度而又不会增加推理成本。我们称这些方法为bag of freebies(免费赠品?)”,仅改变培训策略或仅增加培训成本。目标检测方法经常采用并且符合bag of freebies定义的是数据增强。数据增强的目的是增加输入图像的多样性,从而使设计的目标检测模型对从不同环境获得的图像具有更高的鲁棒性。例如,光度畸变和几何畸变是两种常用的数据增强方法,它们无疑有益于目标检测任务。在处理光度畸变时,我们会调整图像的亮度,对比度,色相,饱和度和噪点。对于几何畸变,我们添加了随机缩放,裁剪,翻转和旋转。

上面提到的数据扩充方法都是逐像素调整,并且保留了调整区域中的所有原始像素信息。此外,一些从事数据增强的研究人员将重点放在模拟目标遮挡问题上。他们在图像分类和目标检测中取得了良好的效果。例如,随机擦除[100]和CutOut [11]可以随机选择图像中的矩形区域,并填充零的随机或互补值。至于hide-and-seek[69]和网格遮罩[6],他们随机或均匀地选择图像中的多个矩形区域,并将它们替换为零。如果类似的概念应用于特征图,则有DropOut [71],DropConnect [80]和DropBlock [16]方法。另外,一些研究人员提出了使用多个图像一起执行数据增强的方法。例如,MixUp [92]使用两个图像以不同的系数比值相乘和叠加,然后使用这些叠加的比值来调整标签。对于CutMix [91],它是将裁切后的图像覆盖到其他图像的矩形区域,并根据混合区域的大小调整标签。除了上述方法之外,style transfer GAN [15]还被用于数据扩充,这种用法可以有效地减少CNN所学习的纹理偏差。

与上面提出的各种方法不同,其他一些bag of freebies方法专用于解决数据集中语义分布可能存在偏差的问题。在处理语义分布偏向问题时,一个非常重要的问题是不同类之间存在数据不平衡的问题,并且该问题通常在双阶段目标检测器中通过困难负例挖掘[72]或在线困难样本挖掘来解决。但是样本挖掘方法并不适用于单阶段目标检测器,因此这类检测器属于稠密预测结构,因此林等。 [45]提出了focal loss,以解决各种类别之间存在的数据不平衡问题。另一个非常重要的问题是,很难用one-hot硬表示来表达不同类别之间的关联度。标记时通常使用这种表示方案。在[73]中提出的标签平滑是将硬标签转换为软标签以进行训练,这可以使模型更鲁棒。为了获得更好的软标签,Islam等。 [33]介绍了知识蒸馏的概念来设计标签优化网络。
最后的bag of freebies是边界框(BBox)回归的目标函数。传统的目标检测器通常使用均方误差(MSE)对BBox的中心点坐标以及高度和宽度直接执行回归,即 { x c e n t e r , y c e n t e r , w , h } \{ x_{center},y_{center},w,h\} {xcenterycenterwh}或左上点和右下点,即 { x t o p l e f t , y t o p l e f t , x b o t t o m r i g h t , y b o t t o m r i g h t } \{x_{top_left},y_{top_left},x_{bottom_right},y_{bottom_right}\} {xtopleftytopleftxbottomrightybottomright}。对于基于锚的方法,它是估计对应的偏移量,例如 { x c e n t e r o f f s e t , y c e n t e r o f f s e t , w o f f s e t , h o f f s e t } \{x_{center_offset},y_{center_offset},w_{offset},h_{offset}\} {xcenteroffsetycenteroffsetwoffsethoffset} { x t o p _ l e f t _ o f f s e t , y t o p _ l e f t _ o f f s e t , x b o t t o m _ r i g h t _ o f f s e t , y b o t t o m _ r i g h t _ o f f s e t } \{x_{top\_left\_offset},y_{top\_left\_offset},x_{bottom\_right\_offset},y_{bottom\_right\_offset}\} {xtop_left_offsetytop_left_offsetxbottom_right_offsetybottom_right_offset}。但是,直接估计BBox的每个点的坐标值是将这些点视为各自独立的变量,但实际上并没有考虑对象本身的完整性。为了使这个问题得到更好的处理,一些研究人员最近提出了IoU损失[90],从而将预测的BBox区域和真实BBox区域的覆盖范围考虑在内。 IoU损失将计算预测BBox与真实标签的IoU,这个过程将激活每个BBox的四个坐标点的计算,然后将生成的结果连接到整段代码中。因为IoU是尺度不变表示,所以可以解决传统方法计算{x,y,w,h}的l1或l2损失时,损失会随着尺度增加的问题。最近,一些研究人员继续改善IoU损失。例如,GIoU损失[65]除了覆盖区域外还包括对象的形状和方向。他们建议找到最小面积的BBox,它可以同时覆盖预测的BBox和真实BBox,并使用该BBox作为分母来代替最初用于IoU损失的分母。至于DIoU损失[99],它还考虑了对象中心的距离,而CIoU损失[99]同时考虑了重叠区域,中心点之间的距离和纵横比。 CIoU可以在BBox回归问题上实现更好的收敛速度和准确性。

2.3 Bag of specials

对于那些仅少量增加推理成本,但可以显着提高目标检测准确性的插件模块和后处理方法,我们称它们为bag of specials(特价袋)。一般而言,这些插件模块用于增强模型中的某些属性,例如扩大感受野,引入注意力机制或增强特征集成能力等,而后处理是一种筛选模型预测结果的方法。

可以用来增强感受野的通用模块是SPP [25],ASPP [5]和RFB [47]。 SPP模块起源于空间金字塔匹配(SPM)[39],SPM的原始方法是将特征图分割为几个d×d个相等的块,其中d可以为{1,2,3,…。 },从而形成空间金字塔,然后提取bag-of-word(词袋)特征。 SPP将SPM集成到CNN中,并使用最大池化操作而不是词袋操作。由于He等人提出的SPP模块 [25]将输出一维特征向量,在全卷积网络(FCN)中应用是不可行的。因此,在YOLOv3 [63]的设计中,Redmon和Farhadi将SPP模块改进为内核大小为k×k的最大池化输出的级联,其中k = {1、5、9、13},步幅等于1。在这种设计下,较大的k×k最大池有效地增加了骨架网络特征的感受野。在添加了改进版本的SPP模块之后,YOLOv3-608在MS COCO目标检测任务上将AP50提高了2.7%,而额外的计算代价为0.5%。 ASPP [5]模块和改进的SPP模块之间在操作上的差异主要在于原始k×k内核大小、步幅等于1的最大池化到几个3×3内核大小,扩展比率等于k和在膨胀卷积运算中,步幅等于1。 RFB模块将使用k×k核的多个膨胀卷积,膨胀比等于k,步幅等于1,以获得比ASPP更全面的空间覆盖。 RFB [47]仅花费7%的额外推理时间,即可将MS COCO上SSD的AP50提高5.7%。

通常在目标检测中使用的注意力模块主要分为通道注意和点注意,这两个注意模型的代表是Squeeze-and-Excitation(SE)[29]和Spatial Attention module(SAM)[85]。尽管SE模块可以使ImNetNet图像分类任务中的ResNet50提高1%的top-1准确性,同时仅增加2%计算量,但是通常在GPU上它将使推理时间增加大约10%,因此更适合在移动设备中使用。但是对于SAM,它只需要支付0.1%的额外计算量,就可以在ImageNet图像分类任务上将ResNet50-SE的top-1准确性提高0.5%。最好的是,它根本不影响GPU上的推理速度。
在特征集成方面,早期的实践是使用跳过连接[51]或hyper-column[22]将低层物理特征集成到高层语义特征。由于诸如FPN的多尺度预测方法已变得流行,因此提出了许多集成了不同特征金字塔的轻量级模块。这种模块包括SFAM [98],ASFF [48]和BiFPN [77]。 SFAM的主要思想是使用SE模块在多尺度级联特征图上执行通道级级别的加权。对于ASFF,它使用softmax作为逐点级别权重,然后添加不同比例的特征图。在BiFPN中,提出了多输入加权残差连接以执行按比例的级别重新加权,然后添加不同比例的特征图。
在深度学习的研究中,有些人专注于寻找良好的激活函数。良好的激活函数可以使梯度更有效地传播,同时不会引起过多的额外计算成本。 Nair和Hinton [56]在2010年提出ReLU来实质上解决传统tanh和S形激活函数中经常遇到的梯度消失问题。随后,LReLU [54],PReLU [24],ReLU6 [28],比例指数线性单位(SELU)[35],Swish [59],hard-Swish [27]和Mish [55]等相继被提出来用于解决梯度消失问题。 LReLU和PReLU的主要目的是解决当输出小于零时ReLU的梯度为零的问题。至于ReLU6和Hard-Swish,它们是专门为量化网络设计的。为了对神经网络进行自归一化,提出了SELU激活函数来满足这一目标。要注意的一件事是,Swish和Mish都是连续可导的激活函数。
基于深度学习的目标检测中常用的后处理方法是NMS,它可以用来过滤那些预测相同目标的BBox,而仅保留具有较高响应度的候选BBox。 NMS尝试改进的方法与优化目标函数的方法一致。 NMS提出的原始方法没有考虑上下文信息,因此Girshick等[19]在R-CNN中添加了分类置信度得分作为参考,并且根据置信度得分的顺序,从高分到低分的顺序执行了贪婪NMS。而soft NMS[1],它考虑到一个问题,即物体的遮挡可能会导致置信度得分随贪婪NMS中的IoU分数的不同而下降。 DIoU NMS [99]开发人员的思维方式是在soft NMS的基础上将中心距离的信息添加到BBox筛选过程中。值得一提的是,由于上述后处理方法均未直接涉及捕获的图像特征,因此在随后的anchor free方法开发中不再需要后处理。

3 方法论

基本目标是能在生产系统快速运行的神经网络,并优化并行计算,而不是低计算量理论指标(BFLOP),我们提出了两种神经网络:
• For GPU 我们使用较小数量(1-8)的卷积层组: CSPResNeXt50/CSPDarknet53
• For VPU 我们使用分组卷积,但不使用Squeeze-and-excitement(SE)模块,具体来说,这包括以下模型:EfficientNet-lite / MixNet [76] / GhostNet [21] / MobileNetV3

3.1 结构选择

YOLOv4 的目标是在输入网络分辨率,卷积层数,参数数之间找到最佳平衡。 (filter size2 * filters * channel / groups), and the number of layer outputs (filters)

我们的目标是在输入网络分辨率,卷积层数,参数数(过滤器大小2 过滤器通道/组)和层输出(过滤器)的数量之间找到最佳平衡。 例如,我们的大量研究表明,就ILSVRC2012(ImageNet)数据集上的目标分类而言,CSPResNext50与CSPDarknet53相比要好得多[10]。 但是,相反,在MS COCO数据集上的目标检测方面,CSPDarknet53比CSPResNext50更好。
下一个目标是针对不同的检测器、不同的骨架网络,选择其他模块来增加感受野和参数聚集的最佳方法: FPN,PAN,ASFF,BiFPN。
分类最佳的参考模型对于检测器并非总是最佳的。 与分类器相比,检测器需要满足以下条件:

  • 更高的网络输入尺度(分辨率)–用于检测多个小型物体
  • 更多的层数,从而拥有更大的感受野以覆盖扩大尺度的网络输入
  • 更多的参数–提高模型在单个图像中检测不同大小的多个对象的能力

假设地说,我们可以假设一个具有较大感受野的(通过大量3×3卷积)和大量参数的模型骨架网络。表1显示了CSPResNeXt50,CSPDarknet53和EfficientNet B3的信息。 CSPResNext50仅包含16个3×3卷积层,一个425×425感受野和20.6 M参数,而CSPDarknet53包含29个3×3卷积层,一个725×725感受野和27.6 M参数。这种理论上的论证,再加上我们的众多实验,表明CSPDarknet53神经网络是两者作为检测器骨架的最佳模型。
Yolov4论文翻译与解析(一)_第3张图片
不同大小的感受野的影响总结如下:

  • 取决于目标大小,使其能够覆盖整个目标
  • 取决于网络大小,使其能够覆盖目标周围的背景
  • 超出网络规模,增加映像点与最终激活之间的连接数

我们将SPP模块添加到CSPDarknet53上,因为它显着增加了感受野,分离出最重要的上下文特征,并且几乎没有降低网络运行速度。我们使用PANet为不同检测器从不同backbone级别的参数聚合方法,而不是YOLOv3中使用的FPN。

最后,我们选择CSPDarknet53为骨架网络,SPP作为附加模块,PANet路径聚合作为颈部以及和YOLOv3(anchor based)的头部作为YOLOv4的体系结构。
将来,我们计划大幅扩展检测器的bag of freebies(BoF)的内容,从理论上讲,它可以解决一些问题并提高检测器的准确性,并以实验方式依次检查每个功能的影响。

YOLO V4 不使用跨GPU批量标准化(CGBN或SyncBN)或昂贵的专用设备。这样一来,任何人都可以在传统的图形处理器上重现我们的最新技术成果,例如GTX 1080Ti或RTX 2080Ti。

3.2 BoF and BoS的选择

为了改进目标检测训练过程,CNN通常使用以下方法:

  • 激活函数:ReLU,leakage-ReLU,parameter-ReLU,ReLU6,SELU,Swish或Mish
  • 边界框回归损失函数:MSE,IoU,GIoU,DIoU
  • 数据增强:CutOut,MixUp,CutMix
  • 正则化方法:DropOut,DropPath [36],Spacial DropOut[79]或DropBlock
  • 通过计算均值和方差的网络激活函数归一化:批次归一化(BN)[32],跨GPU批量归一化(CGBN或SyncBN)[93],过滤器响应归一化(FRN)[70]或交叉迭代批量归一化(CBN)[89]
  • 跳过连接:残差连接,加权残差连接,多输入加权残差连接或跨阶段部分连接(CSP)

至于训练激活函数,由于PReLU和SELU更难以训练,并且ReLU6是专门为量化网络设计的,因此我们从候选列表中删除了上述激活函数。在重新量化方法中,发布DropBlock的人已将其方法与其他方法进行了详细的比较,并且其正则化方法胜过其他方法许多。因此,我们毫不犹豫地选择了DropBlock作为我们的正则化方法。至于归一化方法的选择,由于我们专注于仅使用一个GPU的训练策略,因此不考虑syncBN。

3.3 额外的提升

为了使设计的检测器更适合在单个GPU上进行训练,我们进行了以下附加设计和改进:

  • 我们引入了一种新的数据增强方法,即自我对抗​​训练(SAT)
  • 我们在应用遗传算法时选择最佳超参数
  • 我们修改了一些现有方法,使我们的设计适合进行有效的训练和检测,例如修改后的SAM,修改后的PAN和交叉小批量归一化(CmBN)

马赛克代表一种新的数据增强方法,该方法混合了4个训练图像。然而 CutMix 只有两个输入图像。这样就可以检测到超出其正常背景的对象。此外,批量归一化从每层上的4张不同图像计算激活统计信息。这大大减少了对大的mini-batch size的需求。
自我对抗训练(SAT)也代表了一项新的数据增强技术,该技术执行2个前向和反向传播。在第一阶段,神经网络会更改原始图像,而不是网络权重。这样,神经网络通过改变原始图像,从而创造了一种图像上没有想要目标的假象,对其自身执行了对抗攻击。在第二阶段,训练神经网络以正常方式检测此修改图像上的目标。

CmBN是CBN修改版本,如图4所示,定义为Cross mini-Batch Normalization(CmBN)。这仅收集单个batch中的mini-batches之间的统计信息。
Yolov4论文翻译与解析(一)_第4张图片
我们将SAM从空间注意改为点注意,并将PAN的快捷连接替换为串联,分别如图5和图6所示。
Yolov4论文翻译与解析(一)_第5张图片

3.4 YOLOv4

YOLOv4 的细节。
YOLOv4的组成:

  • 骨架网络: CSPDarknet53 [81]
  • 颈部: SPP [25], PAN [49]
  • 头部: YOLOv3 [63]

YOLO v4使用了:

  • Bag of Freebies (BoF) for backbone: CutMix和马赛克数据增强,DropBlock正则化,,类标签平滑
  • Bag of Specials (BoS) for backbone: Mish激活函数,跨阶段部分连接(CSP),多输入加权残差连接 (MiWRC)
  • Bag of Freebies (BoF) for detector: CIoU损失函数, CmBN, DropBlock正则化,马赛克数据增强,自对抗训练(SAT),Eliminate grid sensitivity,为每个真实标签使用多个锚点,,Cosine annealing scheduler [52],优化的超参数,随机的训练形状
  • Bag of Specials (BoS) for detector: Mish激活函数,SPP模块,SAM模块,路径聚合模块(PAN), DIoU-NMS

4 实验

我们测试了不同训练改进技术对ImageNet(ILSVRC 2012 val)数据集上分类器准确性的影响,然后对MS COCO(test-dev 2017)数据集上检测器的准确性进行了影响。

在ImageNet图像分类实验中,默认的超参数如下:训练步骤为8,000,000;批量大小和最小批量大小分别为128和32;采用多项式衰减学习率调度策略,初始学习率为0.1。预热步骤为1000;动量和重量偏差分别设置为0.9和0.005。我们所有的BoS实验都使用与默认设置相同的超参数,并且在BoF实验中,我们添加了额外的50%训练步骤。在BoF实验中,我们验证了MixUp,CutMix,Mosaic,模糊数据增强和标签平滑正则化方法。在BoS实验中,我们比较了LReLU,Swish和Mish激活功能的效果。所有实验均使用1080 Ti或2080 Ti GPU进行训练。
在MS COCO目标检测实验中,默认超参数如下:训练步骤为500,500;训练步骤为500,500。采用步阶衰减学习率调度策略,初始学习率为0.01,分别在40万步和45万步上乘以系数0.1。动量和重量衰减分别设置为0.9和0.0005。所有架构均使用单个GPU以64的批处理大小执行多尺度训练,而最小批处理大小为8或4则取决于架构和GPU内存限制。除了使用遗传算法进行超参数搜索实验外,所有其他实验均使用默认设置。遗传算法使用YOLOv3-SPP训练GIoU损失,并搜索300个纪元的最小值5k集。对于遗传算法实验,我们采用搜索学习率0.00261,动量0.949,IoU阈值来分配地面实况0.213,并使用损失归一化器0.07。我们已经验证了许多BoF,包括消除网格敏感性,分子数据增强,IoU阈值,遗传算法,类标签平滑,交叉小批量归一化,自对抗训练,余弦退火调度程序,动态小批量大小,DropBlock,优化锚点,不同类型的IoU损失。我们还对各种BoS进行了实验,包括Mish,SPP,SAM,RFB,BiFPN和高斯YOLO [8]。对于所有实验,我们仅使用一个GPU进行训练,因此未使用可优化多个GPU的诸如syncBN之类的技术。
(试验部分内容和图太多,翻译意义不大,看论文就好)

5 结果

与其他最先进的目标检测器获得的结果比较如图8所示。我们的YOLOv4位于Pareto最优曲线上,在速度和准确性方面均优于最快,最精确的检测器。 由于不同的方法使用不同架构的GPU进行推理时间验证,因此我们在Maxwell,Pascal和Volta架构的通用GPU上运行YOLOv4,并将它们与其他最新方法进行比较。 表8列出了使用Maxwell GPU的帧速率比较结果,它可以是GTX Titan X(Maxwell)或Tesla M40 GPU。 表9列出了使用Pascal GPU的帧速率比较结果,可以是Titan X(Pascal),Titan Xp,GTX 1080 Ti或Tesla P100 GPU。 至于表10,它列出了使用Volta GPU的帧率比较结果,可以是Titan Volta或Tesla V100 GPU。

6 结论

我们提供了一种最先进的检测器,其速度(FPS)和准确度(MS COCO AP50 … 95和AP50)比所有可用的替代检测器都要高。所描述的检测器可以训练并在具有8-16 GB-VRAM的常规GPU上使用,这使得它的广泛使用成为可能。单阶段基于锚的检测器的原始概念已经证明了其可行性。我们已经验证了大量新的方法,并选择使用这些方法以提高分类器和检测器的准确性。这些功能可以用作未来研究和开发的最佳实践。

以上是论文翻译部分,关于Yolov4采用的一些重要技术点将在下一篇结合一份代码详细讲解。

你可能感兴趣的:(计算机视觉)