YOLOv7#
标题: YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors
作者: Chien-Yao Wang, Alexey Bochkovskiy, Hong-Yuan Mark Liao (Institute of Information Science, Academia Sinica, Taiwan)
摘要: YOLOv7在实时目标检测领域中超越了所有已知的目标检测器,无论是在速度还是准确性方面。在GPU V100上,YOLOv7-E6目标检测器(56 FPS, 55.9% AP)在速度上比基于变换器的检测器SWINL Cascade-Mask R-CNN(9.2 FPS, 53.9% AP)快509%,准确性上高出2%,比基于卷积的检测器ConvNeXt-XL Cascade-Mask R-CNN(8.6 FPS, 55.2% AP)快551%,准确性上高出0.7%。
1. 问题: 论文试图解决实时目标检测中速度与准确性之间的权衡问题,提高目标检测器在不同设备上的运行效率和准确性。
2. 新问题: 这不是一个全新的问题,但是YOLOv7提出了新的解决方案,以实现更好的速度和准确性权衡。
3. 科学假设: 假设通过优化训练过程和模型架构,可以实现不增加推理成本的情况下提高目标检测的准确性。
4. 相关研究:
实时目标检测器:YOLO系列、FCOS、SSD、RetinaNet等。
模型重参数化和动态标签分配:与网络训练和目标检测相关的方法。
领域内值得关注的研究员包括但不限于:Joseph Redmon、Ali Farhadi(YOLO系列的主要贡献者)。
5. 解决方案关键:
设计了可训练的“免费功能包”(trainable bag-of-freebies),包括新的优化模块和方法。
提出了“计划重参数化模型”(planned re-parameterized model)和“粗到细引导标签分配”(coarse-to-fine lead guided label assignment)方法。
6. 实验设计: 实验使用Microsoft COCO数据集进行,所有模型从头开始训练,不使用预训练模型。设计了针对边缘GPU、常规GPU和云GPU的基本模型,并使用提出的复合缩放方法对模型进行扩展。
7. 数据集与代码: 使用的数据集是COCO,源代码已在GitHub上开源:https://github.com/WongKinYiu/yolov7。
8. 实验结果: 实验结果表明,YOLOv7在不同模型尺寸上均取得了优异的性能,支持了论文提出的科学假设。
9. 贡献:
提出了YOLOv7,一个高性能的实时目标检测模型。
引入了新的训练方法和模型优化技术,提高了目标检测的准确性和速度。
提供了不同规模的模型以适应不同的计算设备。
10. 下一步工作:
进一步探索和优化YOLOv7模型,以提高对小目标的检测能力。
在更多的数据集上测试YOLOv7的性能。
探索YOLOv7在不同应用场景中的实用性和效果。
回答问题
问题: 提高实时目标检测的速度和准确性。
新问题: 不是新问题,但提出了新的解决方案。
科学假设: 通过训练过程和模型架构的优化,可以在不增加推理成本的情况下提高检测准确性。
相关研究: YOLO系列、FCOS、SSD、RetinaNet等。
解决方案关键: 可训练的“免费功能包”,计划重参数化模型,粗到细引导标签分配。
实验设计: 在COCO数据集上进行,设计了不同规模的模型。
数据集与代码: 使用COCO数据集,代码已开源。
实验结果: 支持假设,YOLOv7在不同模型尺寸上均取得了优异性能。
贡献: 提出了YOLOv7和一系列新的训练和模型优化技术。
下一步工作: 提高小目标检测能力,测试更多数据集,探索应用场景。
总结
YOLOv7的优势:
YOLOv7在推理时间和平均精度上均表现出色,推理时间最短,平均精度最高。
YOLOv7比其他模型快120%,在实时目标检测任务中具有显著优势。
其他模型的表现:
YOLO-R和PPYOLOE在推理时间和平均精度上次于YOLOv7,但仍表现良好。
YOLOX和Scaled-YOLOv4的推理时间较长,平均精度较低。
YOLOv5的推理时间最长,平均精度最低,表现最差。
结论
通过对YOLOv7与其他模型在MS COCO数据集上的性能对比,可以看出YOLOv7在推理时间和平均精度上均表现出色,具有显著的优势。YOLOv7在实时目标检测任务中具有更高的效率和准确性,是当前最先进的目标检测模型之一。根据具体应用场景的需求,可以选择合适的模型进行目标检测任务。
图表内容
VoVNet:
结构:包含多个3x3卷积层和1x1卷积层。
特点:使用层聚合策略,通过多个卷积层的堆叠来提取特征。
CSPVoVNet:
结构:在VoVNet的基础上增加了部分卷积层(partial convolution)。
特点:通过部分卷积层的引入,进一步提高特征提取的效率。
ELAN:
结构:包含多个3x3卷积层和1x1卷积层,并引入了堆叠和计算块(stack & computational block)。
特点:通过堆叠和计算块的引入,增强了特征提取的能力。
E-ELAN:
结构:在ELAN的基础上增加了扩展基数(expand cardinality)和混洗基数(shuffle cardinality)。
特点:通过扩展和混洗基数,进一步增强了特征提取的能力,并提高了参数和计算的使用效率。
输入输出流程
输入:
输入图像通过输入层进入模型。
输入层通常是一个卷积层,用于初步提取图像的低级特征。
特征提取:
VoVNet:输入图像通过多个3x3卷积层和1x1卷积层进行特征提取。每个卷积层提取不同层次的特征,并通过层聚合策略进行组合。
CSPVoVNet:在VoVNet的基础上,部分卷积层(partial convolution)进一步提取特征,提高特征提取的效率。
ELAN:输入图像通过多个3x3卷积层和1x1卷积层进行特征提取,并通过堆叠和计算块(stack & computational block)增强特征提取能力。
E-ELAN:在ELAN的基础上,扩展基数(expand cardinality)和混洗基数(shuffle cardinality)进一步增强特征提取能力,并提高参数和计算的使用效率。
特征聚合:
VoVNet:通过层聚合策略,将不同卷积层提取的特征进行组合。
CSPVoVNet:通过部分卷积层的引入,进一步聚合特征。
ELAN:通过堆叠和计算块,将不同卷积层提取的特征进行组合。
E-ELAN:通过扩展和混洗基数,将不同卷积层提取的特征进行组合,增强特征聚合能力。
输出:
最终的特征通过输出层进行处理,生成目标检测结果。
输出层通常是一个全连接层或卷积层,用于生成目标检测的类别和位置。
总结
VoVNet:通过层聚合策略,提取和组合不同层次的特征。
CSPVoVNet:在VoVNet的基础上,通过部分卷积层进一步提高特征提取效率。
ELAN:通过堆叠和计算块,增强特征提取能力。
E-ELAN:在ELAN的基础上,通过扩展和混洗基数,进一步增强特征提取能力,并提高参数和计算的使用效率。
结论
通过对四种模型结构的分析,可以看出每种模型在特征提取和聚合方面都有其独特的策略和优势。E-ELAN在ELAN的基础上,通过扩展和混洗基数,进一步增强了特征提取能力,并提高了参数和计算的使用效率,是当前最先进的特征提取模型之一。根据具体应用场景的需求,可以选择合适的模型进行目标检测任务。
图表内容
基于连接的模型(concatenation-based model):
结构:包含多个卷积层,通过连接操作将特征进行组合。
特点:通过连接操作,将不同卷积层提取的特征进行组合,形成更丰富的特征表示。
深度扩展的基于连接的模型(scaled-up concatenation-based model):
结构:在基于连接的模型基础上,通过增加卷积层的深度进行扩展。
特点:通过增加卷积层的深度,进一步提取更深层次的特征。
复合扩展的基于连接的模型(compound scaling up depth and width for concatenation-based model):
结构:在深度扩展的基础上,同时对深度和宽度进行扩展。
特点:通过同时扩展深度和宽度,增强特征提取能力,并提高模型的性能。
输入输出流程
输入:
输入图像通过输入层进入模型。
输入层通常是一个卷积层,用于初步提取图像的低级特征。
特征提取:
基于连接的模型:
输入图像通过多个卷积层进行特征提取。
每个卷积层提取不同层次的特征,并通过连接操作将这些特征进行组合。
深度扩展的基于连接的模型:
在基于连接的模型基础上,通过增加卷积层的深度,进一步提取更深层次的特征。
连接操作将不同深度的特征进行组合,形成更丰富的特征表示。
复合扩展的基于连接的模型:
在深度扩展的基础上,同时对深度和宽度进行扩展。
通过增加卷积层的深度和宽度,增强特征提取能力。
连接操作将不同深度和宽度的特征进行组合,形成更强大的特征表示。
特征聚合:
基于连接的模型:通过连接操作,将不同卷积层提取的特征进行组合。
深度扩展的基于连接的模型:通过增加卷积层的深度,进一步聚合特征。
复合扩展的基于连接的模型:通过同时扩展深度和宽度,进一步增强特征聚合能力。
输出:
最终的特征通过输出层进行处理,生成目标检测结果。
输出层通常是一个全连接层或卷积层,用于生成目标检测的类别和位置。
总结
基于连接的模型:通过连接操作,将不同卷积层提取的特征进行组合,形成更丰富的特征表示。
深度扩展的基于连接的模型:在基于连接的模型基础上,通过增加卷积层的深度,进一步提取更深层次的特征。
复合扩展的基于连接的模型:在深度扩展的基础上,同时对深度和宽度进行扩展,增强特征提取能力,并提高模型的性能。
结论
通过对三种模型结构的分析,可以看出每种模型在特征提取和聚合方面都有其独特的策略和优势。复合扩展的基于连接的模型通过同时扩展深度和宽度,进一步增强了特征提取能力,并提高了模型的性能,是当前最先进的特征提取模型之一。根据具体应用场景的需求,可以选择合适的模型进行目标检测任务。
图表展示了几种不同的模型结构:PlainNet、RepPlainNet、ResNet、RepResNet、P1-RepResNet、P2-RepResNet、P3-RepResNet和P4-RepResNet。每种模型结构都采用了不同的卷积和连接方法,以提高模型的性能。以下是对图表内容的详细分析和总结。
图表内容
PlainNet:
结构:包含两个3x3卷积层。
特点:简单的卷积层堆叠,没有任何连接操作。
RepPlainNet:
结构:包含一个3x3卷积层和一个RepConv层。
特点:通过RepConv层进行特征提取,增强了特征表示能力。
ResNet:
结构:包含两个3x3卷积层,并有一个残差连接(residual connection)。
特点:通过残差连接,解决了深层网络中的梯度消失问题,提高了训练效果。
RepResNet:
结构:包含一个3x3卷积层和一个RepConv层,并有一个残差连接。
特点:通过残差连接和RepConv层,进一步增强了特征提取能力。
P1-RepResNet:
结构:包含一个RepConv层和一个普通卷积层,并有一个残差连接。
特点:通过残差连接和RepConv层,增强了特征提取能力。
P2-RepResNet:
结构:包含一个RepConv层和一个普通卷积层,并有一个残差连接。
特点:与P1-RepResNet类似,但在某些情况下不推荐使用。
P3-RepResNet:
结构:包含一个RepConvN层(不含身份连接)和一个普通卷积层,并有一个残差连接。
特点:通过残差连接和RepConvN层,增强了特征提取能力。
P4-RepResNet:
结构:包含一个RepConvN层(不含身份连接)和一个普通卷积层,并有一个残差连接。
特点:与P3-RepResNet类似,但在某些情况下不推荐使用。
输入输出流程
输入:
输入图像通过输入层进入模型。
输入层通常是一个卷积层,用于初步提取图像的低级特征。
特征提取:
PlainNet:输入图像通过两个3x3卷积层进行特征提取。
RepPlainNet:输入图像通过一个3x3卷积层和一个RepConv层进行特征提取。
ResNet:输入图像通过两个3x3卷积层进行特征提取,并通过残差连接将输入直接传递到输出。
RepResNet:输入图像通过一个3x3卷积层和一个RepConv层进行特征提取,并通过残差连接将输入直接传递到输出。
P1-RepResNet:输入图像通过一个RepConv层和一个普通卷积层进行特征提取,并通过残差连接将输入直接传递到输出。
P2-RepResNet:与P1-RepResNet类似,但在某些情况下不推荐使用。
P3-RepResNet:输入图像通过一个RepConvN层(不含身份连接)和一个普通卷积层进行特征提取,并通过残差连接将输入直接传递到输出。
P4-RepResNet:与P3-RepResNet类似,但在某些情况下不推荐使用。
特征聚合:
PlainNet:通过卷积层的堆叠进行特征聚合。
RepPlainNet:通过卷积层和RepConv层的组合进行特征聚合。
ResNet:通过卷积层和残差连接进行特征聚合。
RepResNet:通过卷积层、RepConv层和残差连接进行特征聚合。
P1-RepResNet:通过RepConv层、普通卷积层和残差连接进行特征聚合。
P2-RepResNet:与P1-RepResNet类似,但在某些情况下不推荐使用。
P3-RepResNet:通过RepConvN层、普通卷积层和残差连接进行特征聚合。
P4-RepResNet:与P3-RepResNet类似,但在某些情况下不推荐使用。
输出:
最终的特征通过输出层进行处理,生成目标检测结果。
输出层通常是一个全连接层或卷积层,用于生成目标检测的类别和位置。
图表展示了几种不同的模型结构:普通模型、带辅助头的模型、独立分配器、引导头分配器以及粗到细引导头分配器。每种模型结构都采用了不同的标签分配方法,以提高模型的性能。以下是对图表内容的详细分析和总结。
图表内容
普通模型(Normal model):
结构:包含多个卷积层和检测层。
特点:传统的目标检测模型,通过卷积层提取特征,并通过检测层进行目标检测。
带辅助头的模型(Model with auxiliary head):
结构:在普通模型的基础上,增加了一个辅助头(Aux Head)。
特点:辅助头用于辅助主检测头(Lead Head)进行特征提取和目标检测,提高模型的检测性能。
独立分配器(Independent assigner):
结构:包含主检测头和辅助头,每个头都有独立的标签分配器(Assigner)。
特点:每个检测头独立进行标签分配和损失计算,互不干扰。
引导头分配器(Lead guided assigner):
结构:包含主检测头和辅助头,标签分配由主检测头引导。
特点:主检测头引导标签分配,辅助头根据主检测头的预测结果进行标签分配和损失计算。
粗到细引导头分配器(Coarse-to-fine lead guided assigner):
结构:包含主检测头和辅助头,标签分配由粗到细进行。
特点:标签分配过程分为粗略分配和精细分配两个阶段,主检测头进行粗略分配,辅助头进行精细分配,提高标签分配的准确性。
输入输出流程
输入:
输入图像通过输入层进入模型。
输入层通常是一个卷积层,用于初步提取图像的低级特征。
特征提取:
普通模型:输入图像通过多个卷积层进行特征提取,最后通过检测层进行目标检测。
带辅助头的模型:输入图像通过多个卷积层进行特征提取,特征同时传递给主检测头和辅助头,辅助头辅助主检测头进行目标检测。
独立分配器:输入图像通过多个卷积层进行特征提取,特征同时传递给主检测头和辅助头,每个头独立进行标签分配和损失计算。
引导头分配器:输入图像通过多个卷积层进行特征提取,特征同时传递给主检测头和辅助头,主检测头引导标签分配,辅助头根据主检测头的预测结果进行标签分配和损失计算。
粗到细引导头分配器:输入图像通过多个卷积层进行特征提取,特征同时传递给主检测头和辅助头,标签分配过程分为粗略分配和精细分配两个阶段,主检测头进行粗略分配,辅助头进行精细分配。
标签分配:
普通模型:通过检测层直接进行目标检测。
带辅助头的模型:辅助头辅助主检测头进行标签分配和目标检测。
独立分配器:主检测头和辅助头独立进行标签分配和损失计算。
引导头分配器:主检测头引导标签分配,辅助头根据主检测头的预测结果进行标签分配和损失计算。
粗到细引导头分配器:标签分配过程分为粗略分配和精细分配两个阶段,主检测头进行粗略分配,辅助头进行精细分配。
损失计算:
普通模型:通过检测层直接进行损失计算。
带辅助头的模型:辅助头辅助主检测头进行损失计算。
独立分配器:主检测头和辅助头独立进行损失计算。
引导头分配器:主检测头引导标签分配,辅助头根据主检测头的预测结果进行损失计算。
粗到细引导头分配器:标签分配过程分为粗略分配和精细分配两个阶段,主检测头进行粗略分配,辅助头进行精细分配,并进行损失计算。
输出:
最终的特征通过输出层进行处理,生成目标检测结果。
输出层通常是一个全连接层或卷积层,用于生成目标检测的类别和位置。
总结
普通模型:传统的目标检测模型,通过卷积层提取特征,并通过检测层进行目标检测。
带辅助头的模型:通过增加辅助头,辅助主检测头进行特征提取和目标检测,提高模型的检测性能。
独立分配器:主检测头和辅助头独立进行标签分配和损失计算,互不干扰。
引导头分配器:主检测头引导标签分配,辅助头根据主检测头的预测结果进行标签分配和损失计算。
粗到细引导头分配器:标签分配过程分为粗略分配和精细分配两个阶段,主检测头进行粗略分配,辅助头进行精细分配,提高标签分配的准确性。
通过对几种模型结构的分析,可以看出每种模型在特征提取、标签分配和损失计算方面都有其独特的策略和优势。带辅助头的模型和引导头分配器通过引入辅助头和引导标签分配,提高了模型的检测性能和标签分配的准确性。
图表内容
模型结构:
左侧图:展示了一个包含三层3x3卷积层的堆叠结构,每层卷积层的输出通道数为c。
右侧图:展示了五种不同的RepConv替换位置(a, b, c, d, e),蓝色圆圈表示用RepConv替换常规卷积层的位置。
RepConv:
RepConv是一种改进的卷积操作,通常用于提高模型的特征提取能力和计算效率。
在图中,蓝色圆圈标记了用RepConv替换常规卷积层的位置。
输入输出流程
输入:
输入图像通过输入层进入模型。
输入层通常是一个卷积层,用于初步提取图像的低级特征。
特征提取:
输入图像通过三层堆叠的3x3卷积层进行特征提取。
每层卷积层的输出通道数为c。
在特定位置(由右侧图中的蓝色圆圈标记)用RepConv替换常规卷积层,以提高特征提取的效果。
RepConv替换位置:
位置a:在第一层卷积层的位置用RepConv替换。
位置b:在第二层卷积层的位置用RepConv替换。
位置c:在第三层卷积层的位置用RepConv替换。
位置d:在第一层和第二层卷积层的位置用RepConv替换。
位置e:在第一层、第二层和第三层卷积层的位置用RepConv替换。
输出:
最终的特征通过输出层进行处理,生成目标检测或分类结果。
输出层通常是一个全连接层或卷积层,用于生成最终的预测结果。
总结
模型结构:该模型使用了三层堆叠的3x3卷积层,并在特定位置用RepConv替换常规卷积层,以提高特征提取的效果。
RepConv替换位置:右侧图展示了五种不同的RepConv替换位置(a, b, c, d, e),每种替换位置可能对模型的性能产生不同的影响。
输入输出流程:输入图像通过三层堆叠的3x3卷积层进行特征提取,在特定位置用RepConv替换常规卷积层,最终通过输出层生成预测结果。
结论
通过对模型结构和输入输出流程的分析,可以看出该模型通过在特定位置用RepConv替换常规卷积层,提高了特征提取的效果。根据具体应用场景的需求,可以选择合适的RepConv替换位置,以优化模型的性能。
图表展示了四种不同的卷积块结构:Dark block、CSPDark block、RDark block 和 RCSPDark block。这些块结构通过调整1x1卷积层和3x3卷积层的位置来适应重新参数化的模型设计策略。以下是对图表内容的详细分析和总结。
图表内容
Dark block:
结构:包含一个1x1卷积层和一个3x3卷积层。
输入通道数为c,1x1卷积层的输出通道数为c/2,3x3卷积层的输出通道数为c。
CSPDark block:
结构:包含两个并行的路径,每个路径包含一个1x1卷积层和一个3x3卷积层。
输入通道数为c,1x1卷积层的输出通道数为c/2,3x3卷积层的输出通道数为c/2。
RDark block:
结构:与Dark block相反,包含一个3x3卷积层和一个1x1卷积层。
输入通道数为c,3x3卷积层的输出通道数为c/2,1x1卷积层的输出通道数为c。
RCSPDark block:
结构:与CSPDark block相反,包含两个并行的路径,每个路径包含一个3x3卷积层和一个1x1卷积层。
输入通道数为c,3x3卷积层的输出通道数为c/2,1x1卷积层的输出通道数为c/2。
输入输出流程
输入:
输入图像通过输入层进入模型。
输入层通常是一个卷积层,用于初步提取图像的低级特征。
特征提取:
Dark block:
输入特征图通过1x1卷积层,输出通道数为c/2。
然后通过3x3卷积层,输出通道数为c。
CSPDark block:
输入特征图分为两条并行路径,每条路径通过1x1卷积层,输出通道数为c/2。
然后每条路径通过3x3卷积层,输出通道数为c/2。
最后将两条路径的输出特征图进行拼接。
RDark block:
输入特征图通过3x3卷积层,输出通道数为c/2。
然后通过1x1卷积层,输出通道数为c。
RCSPDark block:
输入特征图分为两条并行路径,每条路径通过3x3卷积层,输出通道数为c/2。
然后每条路径通过1x1卷积层,输出通道数为c/2。
最后将两条路径的输出特征图进行拼接。
输出:
最终的特征通过输出层进行处理,生成目标检测或分类结果。
输出层通常是一个全连接层或卷积层,用于生成最终的预测结果。
总结
Dark block:包含一个1x1卷积层和一个3x3卷积层,用于特征提取。
CSPDark block:包含两个并行的路径,每个路径包含一个1x1卷积层和一个3x3卷积层,用于特征提取和拼接。
RDark block:与Dark block相反,包含一个3x3卷积层和一个1x1卷积层,用于特征提取。
RCSPDark block:与CSPDark block相反,包含两个并行的路径,每个路径包含一个3x3卷积层和一个1x1卷积层,用于特征提取和拼接。
结论
通过对模型结构和输入输出流程的分析,可以看出这些卷积块结构通过调整1x1卷积层和3x3卷积层的位置,适应了重新参数化的模型设计策略。根据具体应用场景的需求,可以选择合适的卷积块结构,以优化模型的性能。
图表展示了不同方法在辅助头和主头上的目标性图(Objectness Map)预测结果。以下是对图表内容的详细分析和总结。
图表内容
输入图像:
图(a)展示了一个包含多个人物的输入图像。
目标性图预测:
图(b)和图(c)展示了独立辅助头和独立主头的目标性图预测结果。
图(d)和图(e)展示了引导辅助头和引导主头的目标性图预测结果。
红色圆圈:
红色圆圈标记了目标性图中高目标性区域的位置,这些区域通常对应于输入图像中的目标物体(如人物)。
详细分析
独立辅助头和独立主头:
图(b)和图(c)分别展示了独立辅助头和独立主头的目标性图预测结果。
从图中可以看出,独立辅助头和独立主头在某些区域的目标性预测较为分散,可能存在漏检或误检的情况。
引导辅助头和引导主头:
图(d)和图(e)分别展示了引导辅助头和引导主头的目标性图预测结果。
从图中可以看出,引导辅助头和引导主头在目标性预测上更加集中,红色圆圈标记的高目标性区域更为明显,预测结果更加准确。
总结
输入图像:图(a)展示了一个包含多个人物的输入图像。
独立辅助头和独立主头:图(b)和图(c)展示了独立辅助头和独立主头的目标性图预测结果,预测结果较为分散,可能存在漏检或误检的情况。
引导辅助头和引导主头:图(d)和图(e)展示了引导辅助头和引导主头的目标性图预测结果,预测结果更加集中,红色圆圈标记的高目标性区域更为明显,预测结果更加准确。
结论
通过对不同方法在辅助头和主头上的目标性图预测结果的分析,可以看出引导辅助头和引导主头在目标性预测上表现更为优越,预测结果更加集中和准确。这表明引导方法在目标检测任务中具有更好的性能,能够更准确地识别输入图像中的目标物体。
这个图表展示了在MS COCO min-val数据集上不同目标检测模型的性能比较。横轴表示V100 GPU上单个批次的推理时间(毫秒),纵轴表示平均精度(AP)百分比。图表中的每个点代表一个模型的性能,点的位置由其推理时间和平均精度决定。
以下是对图表中模型性能的分析:
YOLOv7 系列模型:
YOLOv7在推理时间和平均精度上表现出色,尤其是YOLOv7-E6E,达到了56.80%的AP,推理时间约为30ms。
YOLOv7的多个变体(如YOLOv7-E6、YOLOv7-D6等)在推理时间和精度上均表现优异,显示了其在不同配置下的强大性能。
YOLOv6 系列模型:
YOLOv6系列模型的性能也相当不错,尤其是YOLOv6-L,达到了52.30%的AP,推理时间约为20ms。
这些模型在推理时间和精度上与YOLOv7系列相近,但略逊色于YOLOv7。
YOLOv5 系列模型:
YOLOv5系列模型的性能稍逊于YOLOv6和YOLOv7,但仍然表现良好。例如,YOLOv5-X的AP为50.70%,推理时间约为15ms。
其他模型:
图表中还包括了一些其他模型,如EfficientDet-D7、DETR-R101-DC5等。这些模型的推理时间较长,精度也不如YOLO系列。
例如,EfficientDet-D7的AP为52.20%,但推理时间超过100ms,显示了其在速度上的劣势。
性能总结:
总体来看,YOLOv7系列模型在推理时间和平均精度上均表现出色,尤其是YOLOv7-E6E,显示了其在目标检测任务中的强大性能。
YOLOv6和YOLOv5系列模型也表现良好,但在某些配置下略逊于YOLOv7。
其他模型虽然在某些方面表现不错,但在推理时间和精度的平衡上不如YOLO系列。
图表中的注释还指出,YOLOv7比其他模型快了1200%,进一步强调了其在速度上的优势。
这个图表展示了在MS COCO数据集上不同目标检测模型的性能比较,分别在单个批次(batch=1)和批次为32(batch=32)的情况下进行评估。横轴表示V100 GPU上的推理时间(毫秒),纵轴表示平均精度(AP)百分比。图表中的每个点代表一个模型的性能,点的位置由其推理时间和平均精度决定。
左图:V100 batch=1 推理时间
YOLOv7 系列模型:
YOLOv7在推理时间和平均精度上表现出色,尤其是YOLOv7-E6E,达到了56.8%的AP,推理时间约为30ms。
YOLOv7的多个变体(如YOLOv7-E6、YOLOv7-D6等)在推理时间和精度上均表现优异,显示了其在不同配置下的强大性能。
YOLOv6 系列模型:
YOLOv6系列模型的性能也相当不错,尤其是YOLOv6-L,达到了52.3%的AP,推理时间约为20ms。
这些模型在推理时间和精度上与YOLOv7系列相近,但略逊色于YOLOv7。
YOLOv5 系列模型:
YOLOv5系列模型的性能稍逊于YOLOv6和YOLOv7,但仍然表现良好。例如,YOLOv5-X的AP为50.7%,推理时间约为15ms。
Scaled-YOLOv4:
Scaled-YOLOv4的性能也不错,但在推理时间和精度上略逊于YOLOv7和YOLOv6。
右图:V100 batch=32 平均推理时间
YOLOv7 系列模型:
YOLOv7在批次为32的情况下依然表现出色,尤其是YOLOv7-E6E,达到了56.8%的AP,推理时间约为3ms。
YOLOv7的多个变体在推理时间和精度上均表现优异,显示了其在不同配置下的强大性能。
YOLOv6 系列模型:
YOLOv6系列模型在批次为32的情况下也表现良好,尤其是YOLOv6-L,达到了52.3%的AP,推理时间约为2ms。
YOLOv5 系列模型:
YOLOv5系列模型在批次为32的情况下表现稍逊于YOLOv6和YOLOv7,但仍然表现良好。例如,YOLOv5-X的AP为50.7%,推理时间约为1.5ms。
Scaled-YOLOv4:
Scaled-YOLOv4在批次为32的情况下表现也不错,但在推理时间和精度上略逊于YOLOv7和YOLOv6。
性能总结
YOLOv7 系列模型在单个批次和批次为32的情况下均表现出色,显示了其在推理时间和平均精度上的强大性能。
YOLOv6 系列模型在推理时间和精度上也表现良好,但略逊色于YOLOv7。
YOLOv5 系列模型在推理时间和精度上稍逊于YOLOv6和YOLOv7,但仍然表现良好。
Scaled-YOLOv4 在推理时间和精度上表现也不错,但略逊于YOLOv7和YOLOv6。
图表中的注释还指出,YOLOv7在单个批次情况下比其他模型快了1200%,在批次为32的情况下快了1500%,进一步强调了其在速度上的优势。