- 经典论文
- 数据集
- PASCAL VOC – 20类物体
http://host.robots.ox.ac.uk/pascal/VOC/ - COCO数据集 – 80类物体
http://cocodataset.org/#home
- 图示 [ 物体的种类,种类出现的概率,坐标 ]
【一】R - CNN
- 搜索 + 分类
- 产生物体可能的位置的候选区域(基于 Selective Search 图像分割)
- 把这个区域送给CNN去做分类和检测框回归,即预测检测框的坐标
- CNN可以使用在 ImageNet 数据集上预训练的模型
- 主要贡献:用CNN去取代原来的特征提取和分类器
- 问题:每个区域的分类器的计算都是独立的,速度太慢
【二】Fast R - CNN
- 搜索 + 分类
- 输入图片直接输入到卷积网络得到特征图,特征计算可以被不同的候选区域共享
- 使用 Selective Search 选中 2000 个候选区域
- 修改预训练的 CNN,将 CNN 的最后一个 flatten 层及后面的层删掉,换成 RoI Pooling 层
- 在 RoI Pooling 层后面加上几个全连接层,两大分支:SoftMax 层 + Bounding-Box Regression 层
- 主要贡献:避免了对相同区域的特征重复提取,大大提高了检测器的速度
- 问题:候选区域提取成了瓶颈
【三】Faster R - CNN
- 搜索 + 分类
- 引入了一个叫 Region Proposal Network (RPN) 的结构,所谓 RPN 就是一个 CNN,用来预测哪些地方可能有物体,并回归出物体的位置
【家族】R-CNN 家族比较
【四】R - FCN
- Faster R-CNN 虽然有共享网络,但是在最后的区域特征分类环节,还是需要分别将区域送进分类网络,此时并不共享
- R - FCN 为每个通道(channel)都赋予了意义来解决这个问题
【五】YOLO(You Only Look Once)
- 在对图片不断地卷积提取特征后,通过全连接操作把特征向量的纬度变为:7 x 7 x 30
- 7 x 7 表示原图像被分为 7 x 7 个格子;
30(2 x 4 + 2 + 20)表示每个格子预测两个框 (2),每个框有4个坐标值 (4),该框是否含有物体 (2),物体总共有20个类别 (20)
【六】SSD(Single-Shot Detector)
- 一步到位的检测器
- SSD 可以看作是一个强化版的 RPN
- 多尺度检测,比较浅的输出层的分辨率比较高,用来检测小一些的物体,比较深的层分辨率低,检测大的物体
【七】FPN 优秀的特征提取方法
- 多尺度检测
- 很好的利用了各个卷积特征图
【八】Mask R - CNN
- 将 Roi Pooling 层替换成了 Roi Align,解决了仅通过 Pooling 直接采样带来的 misalignment 非对齐问题
- 在 Faster-RCNN 的基础上添加一个分支网络 Lmask,在实现目标检测的同时,把目标像素分割出来