Ultralytics YOLO27: 加入候补名单。
获取 YOLO 许可
返回 Ultralytics 术语表

One-Stage Object Detectors

单阶段目标检测器在一次网络前向传播中预测所有框和类别,无需区域提议步骤。了解其工作原理、主要模型和权衡。

单阶段目标检测器是一类目标检测模型,只需对一个网络进行一次前向计算,就能预测图像中所有对象的边界框和类别标签,并同时为密集网格中的候选位置打分。它们没有单独的区域提议步骤:两阶段目标检测器会先提出可能包含对象的区域,再对每个区域运行第二个检测头。省去这一步后,单阶段检测器成为实时检测的基础,从 2015 年基础模型速度达到每秒 45 帧的 YOLO到当前模型都是如此。

单阶段检测器如何工作#

主干网络会将图像转换为特征图,颈部网络会融合不同尺度的特征图,而密集的检测头则会在每个尺度的每个位置预测类别分数和边界框。早期的单阶段模型(例如 SSD、YOLOv2 和 RetinaNet)会根据每个位置的多个锚框预测偏移量;自 2019 年 FCOS 出现以来,大多数模型都会预测每个位置到框四条边的距离,这是无锚框检测器的设计方式。最终会得到数千个候选框;置信度阈值和非极大值抑制 (NMS)会将其筛减为每个对象一个框,或者由经过一对一匹配训练的检测头直接输出。

运行单阶段检测器只需调用一次,其耗时细分显示只进行了一次网络前向计算:

from ultralytics import YOLO

# Load YOLO26n, a one-stage detector pretrained on the 80 COCO classes
model = YOLO("yolo26n.pt")

# One forward pass predicts the box and class of every object in the image
results = model("https://ultralytics.com/images/bus.jpg")
result = results[0]
print(f"{len(result.boxes)} objects: {[result.names[int(c)] for c in result.boxes.cls]}")

# Milliseconds for resizing the image, the single network pass, and NMS
print(result.speed)

result.speed 列出三个步骤:预处理、推理和后处理;一次推理即可处理图像中的所有对象。

单阶段检测器与两阶段检测器#

两种设计都共用主干网络和颈部网络。随后,两阶段检测器会运行区域提议网络,选出数百个候选区域,裁剪每个区域的特征,并将每个裁剪结果传给第二个检测头进行分类和细化。单阶段检测器则用一个覆盖每个网格位置的密集检测头取代这些步骤。

多年来,R-CNN 系列一直引领检测精度:Faster R-CNN会细化每张图像中约 300 个候选区域,并使用 VGG-16 主干网络以 5 FPS 运行。单阶段检测器速度快得多,但精度较低,直到 2017 年的 RetinaNet发现差距源于前景与背景类别不平衡:密集检测器每张图像会评估约 100,000 个候选位置,其中几乎全是背景,而这些容易判别的负样本会主导标准损失函数。RetinaNet 的焦点损失会降低这些负样本的权重;它的速度与早期单阶段检测器相当,同时精度超过了当时的两阶段检测器。DETR和 RT-DETR等 Transformer 检测器也只通过一个网络运行,并使用一对一匹配预测固定数量的框。

实际应用#

  • 交通与视频分析:检测器会处理每路摄像头视频流的每一帧,以统计车辆数量、测量流量并为目标跟踪器提供输入。
  • 制造业质检:生产线摄像头会在零件经过摄像头的短短一瞬间,检测出缺陷和缺失部件。
  • 无人机和嵌入式设备:单个小型网络即可满足无人机、手机或智能摄像头的计算和功耗预算。

现代单阶段检测器背后的理念#

  • 特征金字塔网络 (FPN):在多个分辨率上进行预测,可以让精细特征图找到小对象,让粗略特征图找到大对象。
  • 焦点损失:降低容易判别的背景候选项的权重,解决了阻碍早期密集检测器发展的类别不平衡问题。
  • 标签分配:SimOTA 和任务对齐分配等方法会在训练期间根据预测结果,为每个对象选出正样本位置。
  • 无 NMS 检测头:经过一对一匹配训练的检测头会为每个对象输出一个框,从而省去后处理步骤;这一步的开销会随着候选框数量增加。

YOLO26是单阶段、无锚框检测器,具备两种类型的检测头:默认会应用 NMS,而 nms=False 会切换到一对一检测头。YOLO26n使用 NMS 时在 COCO上的 mAP50-95达到 40.9,不使用时为 40.1;在搭载 TensorRT的 NVIDIA T4 GPU上,每张图像耗时 1.7 毫秒。

探索解决方案

体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

使用 Ultralytics YOLO 将无人机和航空影像转化为农业、水产养殖、保护工作和地理空间分析的实时洞察。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 将计算机视觉应用于航空航天领域,包括飞机检查、跑道 FOD 检测、机场地面作业和复合材料缺陷检测。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情

让我们携手构建 AI 的未来!

开启你的旅程,迎接机器学习的未来