参考:https://blog.csdn.net/qq_27871973/article/details/81121995
https://www.cnblogs.com/dudumiaomiao/p/6560841.html
https://www.cnblogs.com/CZiFan/p/9903518.html
一、框架
二、算法步骤:
- 输入训练图像;
- 利用selective search 算法在图像中从上到下提取2000个左右的建议窗口(Region Proposal);
- 将整张图片输入CNN,进行特征提取;
- 把建议窗口映射到CNN的最后一层卷积feature map上;
- 通过RoI pooling层使每个建议窗口生成固定尺寸的feature map;
- 利用Softmax Loss(探测分类概率) 和Smooth L1 Loss(探测边框回归)对分类概率和边框回归(Bounding box regression)联合训练.
三、RoI max pooling
由于region proposal的尺度各不相同,而期望提取出来的特征向量维度相同,其思路如下:
The RoI layer is simply the special-case of the spatial pyramid pooling layer used in SPPnets [11] in which there is only one pyramid level. (RoI 层是SPPnets的一个特例,因为RoI只用了一个金字塔层级,SPPnets用了三个,RoI划分成HxW,SPPnets将region proposal划分成4x4,2x2, 1x1)
扫描二维码关注公众号,回复:
5779740 查看本文章
- 将region proposal划分为H×W大小的网格
- 对每一个网格做MaxPooling(即每一个网格对应一个输出值)
- 将所有输出值组合起来便形成固定大小为H×W的feature map
四、优点:
相对于R-CNN与SPPnet,Fast R-CNN的主要亮点有:
- Fast R-CNN将借助多任务损失函数,将物体识别和位置修正合成到一个网络中(训练一个阶段);
- 不需要大量内存来存储训练过程中特征的数据(内存);
- 用RoI层代替SPPnet层,可以使用BP算法训练更新整个网络(更新整个网络)。