YOLO(You Look Only Once)是一种在物体检测中流行的算法。物体检测是一种与计算机视觉有关的技术。
物体检测器用于定位数字图像或图像序列中的物体。在YOLO发明之前,各种物体检测器,如滑动窗口物体检测、R-CNN、快速R-CNN和RetinaNet被使用。由于YOLO的检测速度和准确度高于其他检测方法,因此变得很受欢迎。
计算机视觉
计算机视觉与人工智能有关,它使系统有权从数字图像或视频中获得有用信息。
计算机视觉主要涉及到对单一数字图像的分析和理解。这篇文章帮助读者了解YOLO的意义、历史、用途以及如何工作。
YOLO简介
YOLO是一种使用神经网络技术来检测数字图像或视频中物体的算法。神经网络只不过是一系列的算法,它试图以与人脑相同的方式识别一组数据中的关系。
YOLO是一个物体检测器,可以定位和缺陷各种物体。该对象可能是一个人、一辆车、一辆摩托车等。YOLO是由Joseph Redmon在2015年推出的。
YOLO是基于回归算法的。它预测了整个图像的类别和边界框。YOLO被广泛用于实时检测领域。
在YOLO中,一个神经网络直接从图像中预测边界框和类别概率。YOLO的速度非常快。它能以每秒45帧的速度处理图像。与其他人相比,YOLO的背景错误更少。

YOLO是如何工作的?
在我们开始之前,让我们清楚一些术语,如分类、定位和检测。
分类是指对图像中呈现的哪种物体进行分类。定位是指找到特定物体的位置。检测只不过是在图像中定位物体并给它贴上标签。
残留区块
首先,YOLO将图像分割成小网格。它将图像分成S×S(19×19)的相等尺寸的网格。每个网格都被识别,用于检测和定位物体。
边界盒
边界框是在物体周围创建的一个轮廓,作为一个亮点。它的创建是为了准确检测和定位物体。
矢量
形成一个包含一些组件的向量。这些成分是。
- 类的概率,Pc
- 中心坐标,(bx, by)
- 高度,bh
- 宽度,by
- 级别
交叉超过联合
IoU的计算方法是将边界盒的面积除以重叠的面积。如果IoU大于或等于0.5或以上,那么预测的界线盒可以与地面实况界线盒相同。IoU= 重叠面积/联合面积。
锚定盒
在YOLO中,当图像中的两个物体有一个中心点时,就会使用锚定框。通过使用这些元素,可以在图像中检测到一个物体。YOLO有助于确保准确和快速的物体检测。
物体检测
物体检测是一种先进的技术,它通过使用神经网络的边界框对图像中的物体进行检测和分类。
它涉及到物体的实时分类、识别、定位和检测。简而言之,它是两项任务的结合:图像分类和物体定位。
两阶段物体检测
这种物体检测方法将整个过程分成两个阶段。
- 检测可能的物体区域。
- 对这些区域的图像进行分类。
一些两阶段物体检测方法是R-CNN、FPN和Mask R-CNN。
单阶段物体检测
单阶段检测只需要一次通过神经网络,并在一次运行中预测边界框。单阶段检测是通过一次运行完成的。
一些单阶段检测器是SSD和YOLO。YOLO是一个流行的实时物体检测器,是一个单阶段物体检测器。
YOLOv4
YOLOv4的运行速度是Efficient Det的两倍。 将YOLOv3的AP提高10%,FPS提高12%。本次YOLOv4设计的主要目的是提高运行速度和优化并行计算。
它是一个高效和强大的物体检测模型。为了训练一个超级快速和准确的物体检测器,它利用了1080 Ti或2080 Ti GPU。
进行了修改,使其更有效率,适合单GPU训练。YOLOv4在COCO数据集上获得了43.5%的AP和65FPS的行为状态。
赠品袋和特殊袋影响了YOLOv4更准确地进行物体检测。
YOLOv4的结构
- **输入。**图像,补丁,图像金字塔
- **骨干网。**CSPDarknet 53
- 颈部。
- 附加块。空间金字塔池(SPP)
- 路径聚合块。PAN( PANet路径聚合)
- 头部。YOLOv3
- 密集预测(单阶段)。
- 基于锚点。RPN, SSD, YOLO, Retina Net
- 无锚点。CornerNet, CentreNet, MatrixNet, FCOS
- 稀疏预测(两阶段)。
- 基于锚点的。快速R-CNN、R-FCN、掩码R-CNN
- 无锚。RepPoints (无锚)
YOLOv4的意义
- 在与其他设计进行比较时,YOLOv4表现得超快且更准确。
- 这种新颖的结构确保了更高的输入网络规模,以检测多个小尺寸的物体。
- 更多的层被赋予了更高的感受野,以覆盖输入网络的更大尺寸。
- 更多的参数是为了使模型有更大的能力来检测不同尺寸的单一图像中的多个物体。
- 在主干线上增加了SSP块,以确保网络运行速度不降低。
- 引入了新的数据增强方法,如Mosaic和Self-Adversarial Training,分别用于混合多幅图像和训练中的良好表现。
- 在应用遗传算法时,使用了最佳的超参数。
- 一些现有的方法也被修改以提高性能和有效的训练,如修改的SAM、修改的PAN和交叉小批归一化。
YOLO的应用
YOLO物体检测被应用于各个领域。当自动驾驶时,物体检测有助于避免道路上的事故。它通过检测不同种类的动物来帮助检测野生动物,这样我们就可以获得关于它们的迁移信息。
在发展中的技术世界里,物体检测在机器人领域将更加有用。YOLO物体检测技术将对限制人们通过的地方的安全很有帮助。
赠品袋(BoF)
改变训练策略或只增加训练成本的一组方法应被称为免费的袋子。它在没有任何时间干扰的情况下提高了性能。并在数据扩增和数据管理中看到改进。
数据扩充增加了输入图像的可变性,确保从数据集中获得最大的信息。在YOLOv4的骨干中使用的 "免费袋 "是CUtmix和Mosaic 数据增强,用于检测器的是Self-adversarial训练。
特价袋(BoS)
特效袋 "是一些插件模块和后处理方法,可以提高物体检测精度,并以少量的方式增加推理成本。
YOLOv4的主干使用的特异性袋是CSP 和MiWRC。 用于检测器的BoS是Mish激活、SPP-块、SAM-块、路径聚合块和DIoU-NMS。
最后的思考
YOLOv4是一个最先进的检测器,与其他检测器相比,速度极快,精度更高。传统的GPU,有8-16GB的内存,可以用来训练检测器。
在这个技术世界里,像YOLOv4这样具有更多特征和选定技术的物体探测器将非常有用,以获得准确的性能。
YOLO在早期非常有用,在后期,通过推出YOLOv2、YOLO9000、YOLOv3和YOLOv4,逐步克服了YOLO的缺点。
YOLOv4也将成为未来版本的良好基础和支柱。我希望你觉得这篇文章对你有帮助。编码愉快