深度学习目标检测项目
本次学习是围绕深度学习目标检测,从基础概念到技术细节、评估指标及主流方法逐一阐述,系统呈现目标检测领域核心知识。
一、目标检测核心定义与挑战
- 核心任务:不仅要识别图片中物体的类别,还需确定物体的位置,属于 “位置 + 类别” 的多任务问题。
- 关键挑战:面临目标种类与数量繁多、目标尺度不均,以及遮挡、噪声等外部环境干扰等问题,增加了检测难度。
二、主流数据集介绍
- VOC 数据集:源于 PASCAL VOC 挑战赛,包含 4 大类、20 小类目标;VOC 2007 有 9963 张图片、24640 个目标,VOC 2012 则有 23080 张图片、54900 个目标,为早期目标检测研究提供重要数据支撑。
- COCO 数据集:由微软 2014 年出资标注,涵盖 20 万个图像、80 个类别,超过 50 万个目标标注,且平均每个图像含 7.2 个目标,数据规模更大、类别更丰富,满足复杂场景下的模型训练需求。
三、Ground Truth 格式
Ground Truth 包含物体类别与真实边界框坐标,不同数据集格式不同:
- YOLO(TXT)格式:坐标为(x,y,w,h),分别代表中心点坐标和宽、高,且均经过归一化处理。
- VOC(XML)格式:以(Xmin,Ymin,Xmax,Ymax)表示,对应边界框左上角和右下角坐标。
- COCO(JSON)格式:坐标为(Xmin, Ymin, W, H),x,y 代表左上角坐标,w,h 为宽和高,且未做归一化。
四、评估指标体系
- IoU(Intersection over Union):衡量预测边界框与真实边界框的重叠程度,先过滤低类别置信度检测结果,再以 IoU 判断边界框正确性。
- TP、FP、TN、FN 定义:TP 指 IoU > 阈值的正样本预测,FP 为 IoU < 阈值的负样本误判为正样本,TN 是负样本正确预测,FN 为正样本漏检。
- Precision 与 Recall:Precision(查准率)反映预测正样本的准确性,Recall(查全率)体现对真实正样本的覆盖程度,二者可通过 P-R 曲线展示;mean AP 是所有类别 AP 的算术平均值,AP 计算常用 11 点法(取召回率 0-1 间隔 0.1 的 11 个点对应的精度均值)等方法。
- mean 与 average 区别:mean 为简单算术平均,average 包含更多度量规则;AP 需设计规则均衡,mean AP 因 AP 已较均衡,直接算术平均即可。
五、目标检测方法演进
- 传统方法:以滑动窗口法为代表,需人工设计窗口尺寸,存在大量冗余操作,且定位准确性低,难以满足复杂检测需求。
- 深度学习方法
- Anchor 相关:Anchor box 通过 ratio(长宽比)和 scale(面积大小)描述,基于 feature map 点确定位置;分为 anchor-base(自顶向下,类似滑动窗口法穷举后筛选)和 anchor-free(自底向上,自动生成无需预设)两类。
- 算法流程:分为 two stage 和 one stage。two stage 先生成候选区域(proposal),经 ROI pooling 后进行类别预测与位置回归,最后通过 NMS 筛选,代表算法有 R-CNN 系列、Cascade R-CNN 等;one stage 直接对图像进行处理,同步完成类别预测与位置回归,再经 NMS 优化,代表算法包括 YOLO 系列、SSD 系列等。
- NMS(非极大值抑制):先设定置信度阈值(常用 0.5),按置信度降序排列候选框;选取置信度最高的框加入输出列表并删除,计算剩余框与该框的 IoU,删除 IoU 大于阈值的框;重复操作至候选框为空,得到最终检测结果,用于去除冗余候选框。