1.2 目标检测在计算机视觉中的地位与应用场景


1.2 目标检测在计算机视觉中的地位与应用场景

本节摘要:目标检测是计算机视觉的承上启下任务——比分类难,是分割和跟踪的基础。本节梳理它的应用版图,帮你理解为什么这个领域这么热。

本节目标

阅读完本节,你应当能够:

  1. 理解检测在视觉任务链中的位置
  2. 列举主要应用场景
  3. 判断什么场景需要目标检测

概念脉络

一、检测在视觉任务链中的位置

目标检测是视觉任务的"中间件":

  • 上游:图像分类(给整图打标签)
  • 检测:找出所有目标的位置和类别
  • 下游:实例分割(像素级)、目标跟踪(时序)、姿态估计(关键点)、行为识别

很多复杂任务以检测结果为输入,检测是基础能力。例如多目标跟踪(MOT)第一步就是逐帧检测,再用卡尔曼滤波或相似度匹配把同一目标连成轨迹;姿态估计往往先检测到人,再在人的区域里找关键点。可以说,检测做不好,下游任务跟着遭殃。

二、主要应用场景

场景 检测目标 特点
自动驾驶 车、人、交通标志 实时性、安全性要求极高
安防监控 人、人脸、异常行为 全天候、密集场景
工业质检 缺陷、产品 高精度、高速产线
医疗影像 病灶、器官 高精度、小目标
零售 商品、货架 商品识别、库存
农业 果实、病虫害 大范围、野外
机器人 抓取目标 实时交互

这七个场景只是缩影。快递分拣、考古遗址、野生动物监测、体育赛事分析都在用检测。判断一个业务是否适合检测:如果它需要"在图像里找出若干对象并知道它们在哪",就是检测任务的菜。

三、自动驾驶中的检测

自动驾驶是检测最严苛的场景:

  • 多类目标:车辆、行人、cyclist、交通标志、车道线
  • 实时性:每帧必须 30ms 内处理完
  • 安全性:漏检可能致命
  • 多传感器:相机 + 激光雷达 + 毫米波雷达融合

自动驾驶对检测有三层要求:一是时延硬约束,决策模块在等检测结果,超过时限就会错过刹车窗口;二是精度上限要求,远处小目标(几十像素的行人)漏检后果严重;三是可靠性,雨雾天、逆光、夜间都要稳定。因此自动驾驶感知常采用多模型冗余:视觉用 YOLO 系保证实时,激光雷达点云用 3D 检测器,两者结果做融合校验。

YOLO 系列因速度快成为自动驾驶感知的主流选择之一。

四、安防监控

  • 人脸检测:门禁、支付
  • 行人检测:人群密度、异常行为
  • 车辆检测:卡口、违停
  • 挑战:夜间、遮挡、小目标

安防监控的特点是全天候长视频流:一台摄像头一年跑几百万帧,模型要能扛住光照变化、人群密集、目标尺度跨度大。工程上常用"检测 + 跟踪 + 属性识别"的级联:检测定位人,跟踪维持身份,再对轨迹做行为分析。这类场景对模型速度的要求同样很高,边缘盒子(NVR)上部署轻量 YOLO 是常见方案。

五、工业质检

工业质检用检测找产品缺陷:

  • 表面缺陷:划痕、污点、裂纹
  • 尺寸测量:零件尺寸偏差
  • 特点:精度要求高(亚像素)、产线高速、样本不均衡

质检与通用检测不同:缺陷样本少而难采集,正常样本占绝大多数,属于典型的长尾问题。业界做法是先合成缺陷样本或迁移学习预热,再用小目标友好的检测器(带 FPN)在特定区域检测。有时还会用无监督异常检测(重建误差)先粗筛,再让检测器精定位。产线节拍按秒计,模型推理必须跑到毫秒级。

六、医疗影像

  • 病灶检测:肺结节、肿瘤
  • 细胞检测:病理切片细胞分类
  • 挑战:目标小、边界模糊、标注成本高

医疗场景对假阴性零容忍:漏检一个病灶可能误诊。因此模型往往先低阈值多检出,再由医生复核,或用集成模型投票。肺结节通常只有几毫米,在 CT 切片上占几十像素,需要高分辨率特征和小目标优化。标注需要专业医生,成本高,常用半监督、预训练微调来缓解。医疗检测更看重灵敏度与特异性曲线(ROC/AUC),而不只是 mAP。

七、场景选型建议

需求 推荐
实时(<30ms) YOLO 系列、SSD
高精度离线 Faster R-CNN、Cascade R-CNN
边缘设备 YOLOv5n/s + 量化
小目标密集 RetinaNet、带 FPN 的检测器

选型前先明确三个数字:时延预算(多久出一帧结果)、精度指标(mAP@0.5 还是 mAP@[0.5:0.95])、算力资源(GPU 还是 ARM)。用一段伪代码辅助判断:

def pick_detector(latency_ms, need_high_accuracy, edge_device): if edge_device: return "YOLOv5n/s + INT8量化" if latency_ms < 30: return "YOLOv8s / YOLOX" if need_high_accuracy: return "Cascade R-CNN / Faster R-CNN+FPN" return "YOLOv8m / RetinaNet"

⚠️ 常见误区:什么场景都用最准的模型。实时场景用太慢的模型会卡死,边缘设备用大模型会爆显存。按延迟、精度、算力三角选型。

💡 关键直觉:检测是视觉任务链中间件,下游接分割/跟踪/姿态。应用版图广:自动驾驶(实时安全)、安防、工业质检(高精度)、医疗(小目标)。按实时性、精度、算力选型。

一节小结

  • 位置:检测是视觉任务"中间件",上游分类,下游分割/跟踪/姿态。
  • 应用:自动驾驶、安防、工业质检、医疗、零售、农业、机器人。
  • 自动驾驶:最严苛,多类、实时、安全、多传感器融合。
  • 工业质检:高精度、高速、样本不均衡。
  • 医疗:小目标、边界模糊、标注贵,假阴性零容忍。
  • 选型:实时用 YOLO/SSD,高精度用 Faster R-CNN,边缘用小模型+量化。

下一节讲检测难在哪。


作者与出处
原作者: 灏天文库
来源:灏天文库
整理: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U