两阶段方法
两阶段方法是基于 R-CNN 发展而来的一系列方法。这类方法之所以称为两阶段,是因为他们与 RCNN 类似,都是先在图像中找出可能包含物体的区域,再针对这些区域进行类别预测与边界框回归。
两阶段方法的发展路线也比较明确,算法进化路线也相对清晰。
2013 年,Ross Girshick 等人提出 RCNN,开起了两阶段检测的方向。但 RCNN 基本还是基于传统的检测框架。
2013 年,何恺明等人提出 SPPNet,通过特殊设计的 SPP 层,使得基于不同区域所需要的卷积可以共享,相比于 RCNN 大幅提高了检测速度(大约 10 倍),但该工作并没有实现端到端训练,训练速度仍然是瓶颈。
2014 年,Ross Girshick 等人提出 Fast RCNN,通过共享主干网络。FastRCNN 还实现了整个检测系统的端到端训练。
2015 年,任少卿、何恺明等人 提出了 Faster RCNN,其中用一个 RPN 模块替代了 FasterRCNN 中的其中最重要的 。
截止目前(2020)为止,FasterRCNN 仍然是目标检测最常用的,后续提出的一些方法也逐步加入到 FasterRCNN 中,进一步提高检测性能与精度。
2015 年,何恺明等人提出了 resnet 。resnet50-101 等结构替代 VGGnet 成为 fasterrcnn 的主干网络。
2017 年,FAIR 提出了 FPN,通过将高低层特征进行融合,构建出一系列同时包含位置信息和语义信息的特征图,提高了检测的精度。随后 FPN 成为 FasterRCNN 的标准组件。
2017 年,何恺明等人提出了 mask RCNN,基于 FasterRCNN 的架构,又增加了一个用语预测 mask 的检测头,用两个监督信号训练网络。并提出了 ROIPooling 的改进版,ROIAlign,进一步提高位置精度。随后,ROIAlign 也替代 RoiPooling 成为 FasterRCNN 的标准组件之一。
Last updated