经典检测架构
本节定位
经典检测架构最值得学的不是“模型名”,而是它们一路在解决同一个问题:
怎么在保证检测质量的同时,把检测速度提上来。
R-CNN 家族的发展史,本质上就是“把重复计算越来越多地省掉”的历史。
学习目标
- 理解 R-CNN 家族为什么重要
- 理解 region proposal 在检测早期路线中的作用
- 理解 Fast / Faster R-CNN 分别优化了哪一层瓶颈
- 建立两阶段检测器的核心直觉
先建立一张地图
经典检测架构这节最适合新人的理解顺序不是“背一串模型名”,而是先看清它们在解决同一条问题链:
所以这节真正想解决的是:
- 早期检测系统为什么会慢
- 后续架构到底是在优化哪一层
一个更适合新人的总类比
你可以把经典检测架构想成逛一个超大商场找目标商品:
- R-CNN 像是把每个可疑区域都单独拿出来认真检查一遍
- Fast R-CNN 像是先把整个商场快速扫一遍,再对重点区域放大看
- Faster R-CNN 则像是连“哪些区域值得看”这件事也交给系统自动学会
这样理解后,这三代模型的区别就不会只剩名字。
一、R-CNN 系列在做什么?
1.1 基本套路
两阶段检测的典型思路是:
- 先提出候选区域
- 再对候选区域做分类和框回归