跳到主要内容

目标检测

问题

目标检测的主要方法有哪些?YOLO 系列是如何演进的?

答案

一、目标检测任务

目标检测 = 定位(框出目标位置)+ 分类(识别类别)

二、方法分类

三、方法对比

对比维度两阶段单阶段DETR
代表Faster R-CNNYOLOv8RT-DETR
速度
精度中~高
后处理NMSNMS无需 NMS
实时性

四、YOLO 演进

版本年份关键改进
YOLOv12016单阶段检测开创者
YOLOv32018多尺度检测、Darknet-53
YOLOv52020PyTorch 实现、易用性
YOLOv82023Anchor-free、解耦头
YOLO112024Ultralytics 最新版

五、核心概念

概念说明
Anchor预定义的候选框尺寸(Anchor-free 不需要)
IoU预测框与真实框的重叠比例
NMS非极大值抑制,去除重复检测框
mAP平均精度,检测模型的主要评估指标

常见面试问题

Q1: Anchor-based 和 Anchor-free 的区别?

答案

  • Anchor-based(YOLO v3~v5):预定义一组 Anchor 框,模型预测偏移量
  • Anchor-free(YOLO v8+、FCOS):直接预测目标中心和宽高,无需预定义
  • Anchor-free 更简单、超参数更少,是当前趋势

Q2: NMS 是什么?DETR 为什么不需要 NMS?

答案

  • NMS:对同一目标的多个检测框,保留置信度最高的,删除重叠的
  • DETR 使用 Transformer + 匈牙利匹配,每个目标只产生一个预测,天然无重复
  • 去除 NMS 是端到端检测的优势

相关链接