YOLO(You Only Look Once)是一个流行的目标检测算法系列,自2016年以来已经发展出多个版本,每个版本都在性能、速度和准确性上有所改进。以下是YOLO的主要版本及其功能差异的概述:
-
YOLOv1:提出了一个统一的模型,可以在单次传递中直接从完整图像预测边界框和类别概率。
-
YOLOv2(也称为Darknet-19):通过使用批量归一化、多尺度锚定框以及其他优化,对原始版本进行了改进。
-
YOLOv3:引入了Darknet-53作为新的特征提取器,并添加了多尺度预测,改进了对小物体的检测。
-
YOLOv4:结合了其他对象检测器和分割模型的想法,在保持快速推理的同时提高准确性。
-
YOLOv5:在PyTorch中完全重写了YOLOv4,并引入了CSPDarknet53等新特性,优化了性能和易用性。
-
YOLOv6:继续优化架构和训练过程,引入了无锚点的检测器和新的损失函数等创新。
-
YOLOv7:相较于YOLOv5,在参数量上有所减少,特别是YOLOv7-tiny版本,致力于提高推理速度。
-
YOLOv8:在准确性方面胜过YOLOv5,特别是在检测小物体方面表现出色,并解决了YOLOv5的一些限制。
-
YOLOv9:引入了通用高效层聚合网络(GELAN)和可编程梯度信息(PGI),专注于提高效率,以便在更广泛的设备上实现实时性能。
-
PP-YOLO:并非YOLO主线版本,但值得一提,它使用ResNet50-vd作为骨干网,并引入了多项优化,如DropBlock、IoU预测分支等,以提高性能。
-
Scaled-YOLOv4:提供了扩大和缩小的技术,以适应不同的计算能力和速度需求。
-
YOLOX:以YOLOv3为起点,引入了无锚结构、多阳性、解耦头等改进。
-
YOLOR:采用了多任务学习方法,旨在为各种任务创建一个单一的模型。
-
PP-YOLOE:使用了无锚的架构,并引入了高效任务排列头(ET-head)和任务对齐学习(TAL)。
每个版本都根据当时的技术需求和挑战进行了特定的优化。例如,YOLOv3引入了多尺度预测来改善对小目标的检测,而YOLOv5则完全重写,使用了PyTorch框架,提高了模型的可用性和性能。YOLOv9则进一步推动了目标检测的效率和性能,使其更适合在资源受限的设备上运行。随着计算机视觉和深度学习领域的不断发展,YOLO系列仍在持续进化中。