深圳Yolo 视觉
深圳
立即加入
词汇表

锚箱

了解锚点盒如何实现基于锚点的物体检测、分类先验、回归和NMS,并应用于自动驾驶和零售业。

锚点框是许多物体检测模型架构中的基础概念。 在许多物体检测模型的架构中,锚点框都是一个基础概念。 作为预测物体位置和大小的预定义参考。该模型不是从头开始扫描图像,寻找任意尺寸的物体,而是使用这些固定的形状 而是使用这些由特定高度和宽度定义的固定形状作为起点、 或先验。这种方法简化了学习过程,将具有挑战性的绝对坐标预测任务转化为更易于管理的回归问题。 网络学会调整或 "偏移 "这些模板,以适应地面实况。 网络学会调整或 "偏移 "这些模板,以适应地面实况对象。这种 这种技术在流行的架构(如 Faster R-CNN系列和早期的单级探测器。

锚箱的功能

锚点框的原理是用密集的中心网格平铺输入图像。在每个网格单元中 生成多个不同长宽比比例的锚点框,以适应不同形状的物体,如高大的行人或宽大的车辆。 生成多个不同纵横比和比例的锚点框,以适应不同形状的物体,如高大的行人或宽大的车辆。在 在模型训练阶段,系统会使用名为 "锚点 "的指标将这些锚点与实际物体相匹配。 使用一种称为 交集大于联合(IoU)的指标来匹配这些锚点和实际物体。锚点 与目标对象有明显重叠的锚点被标记为正样本。

检测器的主干从图像中提取特征、 检测头利用这些特征对每个正锚执行两项 并行任务:

  • 分类:模型会预测锚点包含特定对象类别的概率。 类别,并给出置信度分数
  • 方框回归:网络计算重塑锚点所需的精确坐标偏移,将锚点紧紧包围在最终边界框中。 所需的精确坐标偏移。 物体。

为了处理对同一对象的重叠预测,一个被称为 非最大值抑制 (NMS)后处理步骤 去多余的方框,只保留置信度最高的方框。框架,如 PyTorchTensorFlow提供了必要的计算工具 高效地实现这些复杂的操作。

锚点与相关概念

理解锚点框需要将其与计算机视觉 (CV) 中的类似术语区分开来。 计算机视觉 (CV)

  • 锚点框与边界框:锚点框是一个理论上的固定模板,在处理过程中用作 假设。边框是 边界框是包含检测物体坐标的最终精细输出。
  • 基于锚点的探测器与无锚点的:传统的 基于锚点的检测器,如 YOLOv5就依赖于这些手动预设。相比之下,现代 无锚检测器,如 Ultralytics YOLO11直接预测物体中心或关键点 直接预测物体中心或关键点。这种转变通过消除与锚点维度相关的超参数调整需求,简化了模型设计。 维度相关的超参数调整,从而简化了模型设计,通常还能提高数据集(如 COCO.

实际应用

锚点盒的结构性使其在物体形状一致且可预测的环境中特别有效。 一致且可预测的环境中特别有效。

  1. 自动驾驶:为 自动驾驶汽车系统依赖于检测 汽车、卡车和交通标志等标准物体。由于这些物体具有相对固定的长宽比,因此可以通过调整锚点框来有效捕捉它们、 锚点框可以进行调整,以有效捕捉这些物体。像 Waymo这样的公司使用复杂的检测管道来确保复杂交通场景中的安全。 交通场景中的安全。
  2. 零售库存管理:在零售分析中 在零售分析中,视觉系统监控货架以 detect 库存水平。包装商品通常具有统一的形状,因此基于锚点的模型可以准确地计算商品数量并识别缺货商品。 并识别缺货产品。这种自动化支持 人工智能驱动的库存管理,减少人工劳动。

代码示例

YOLO11 等现代型号不使用锚点,而YOLOv5 等早期型号则使用锚点盒。锚点 ultralytics 包抽象了这一复杂性,使用户无需手动配置锚点就能运行推理。 配置锚点。下面的示例演示了加载预先训练好的模型来detect 物体:

from ultralytics import YOLO

# Load a pretrained YOLOv5 model (anchor-based architecture)
model = YOLO("yolov5su.pt")

# Run inference on a static image from the web
results = model("https://ultralytics.com/images/bus.jpg")

# Display the detected bounding boxes
results[0].show()

对于那些对这些系统的数学基础感兴趣的人来说,像 和 DeepLearning.AI等教育平台提供了关于卷积神经网络和物体检测的深入课程。 卷积神经网络和物体检测方面的深入课程。

加入Ultralytics 社区

加入人工智能的未来。与全球创新者联系、协作和共同成长

立即加入