05 计算机视觉进阶本域第 4 篇
目标检测
从「图里有什么」到「谁、在哪里、有几个」
定义
目标检测不仅回答「图里有什么」,还要给出每个物体在哪里——通常输出一组边界框,每个框带类别与置信度。它把分类从「整张图一个标签」推进到「每个物体一个标签加一个位置」。
直观理解
分类说「这是客厅」;检测说「这是客厅,沙发在左下角、电视在中上、猫趴在窗台」。前者只需说对一件事,后者要在同一张图里同时找对数量、类别和位置——难点一下子从识别升级成了搜索。
检测流水线:主干网络给出特征,检测头做密集或候选预测,最后经 NMS 去重得到带标签的框
检测器在 COCO 上的 mAP 演进:从两阶段的 Faster R-CNN 到单阶段 YOLO 系列与端到端的 DETR
工作原理
- 01
分类、定位、检测的三级台阶
分类输出一个标签;定位在「图中只有一个物体」的假设下额外回归一个框;检测则要处理数量未知、大小不一、彼此遮挡的多个实例。
- 02
两阶段:先找候选,再逐一分类
R-CNN 系列先用区域建议网络(RPN)产生上千个候选框,再对每个框做分类与坐标回归。精度高,但流程慢,且依赖候选框的质量。
- 03
单阶段:一步同时预测类别与框
YOLO 与 SSD 直接在特征图上做密集预测,把检测变成一个回归问题。速度快,早期对小目标与密集场景较弱,后续版本已大幅弥补。
- 04
锚框 → 无锚 → 端到端
从预设锚框,到 FCOS / CenterNet 的锚点无关方法,再到 DETR 用集合预测加匈牙利匹配直接输出框,检测头在结构上被不断简化。
- 05
后处理:IoU 与 NMS
用交并比(IoU)衡量两个框的重合程度,非极大值抑制(NMS)去掉同一物体的重复框,最终由 mAP 在多个 IoU 阈值上汇总评估。
典型检测头:同一张特征图分岔到分类分支与回归分支,再汇总成「框 + 类别」
速度与精度的权衡:单阶段方法普遍更快、两阶段更准,现代模型则同时向两个方向推进(悬停看坐标)
应用场景
- 自动驾驶:车辆、行人、交通标志检测
- 安防与零售:人流量统计、货架商品盘点
- 医学影像:病灶与细胞定位
- 遥感:飞机、船舶、建筑检测
常见误区
- mAP 高不代表部署好。漏检与误检的代价往往不对称,应结合业务看精度-召回曲线,而非只看单一数字。
- NMS 是超参数。阈值过低会误删相邻物体(人群中的两个人),过高则保留重复框。
- 小目标依然是弱项:下采样会抹掉它,而高分辨率又带来算力代价。
关键术语
- 边界框
- 用 (x, y, w, h) 或角点表示的矩形
- IoU
- 两个框的交集与并集之比
- NMS
- 非极大值抑制,用于去除重复框
- mAP
- 多类别、多 IoU 阈值下的平均精度均值