Region Based CNN 系列之——(2) Fast-RCNN思路及其基础整理

    以R-CNN思路及其基础整理SPP-net为基础,我们便可以很好理解 Fast-RCNN。

一、整体结构

Region Based CNN 系列之——(2) Fast-RCNN思路及其基础整理

    Fast-RCNN的整体结构主要由这几部分组成:1.对输入图片用区域推荐算法获得2000个区域,并记录下框的坐标和索引;2.用卷积神经网络对图片进行特征提取,并且将框同样映射到特征空间(也就是对应到特征图上应该在什么位置);3.将卷积神经网络的最后一层pool层替换为RoI_Pooling层,获得固定尺寸的特征向量;4.对这个固定尺寸的特征向量后面添加两组全连接层,一组尺寸为21,用于分类;另一组尺寸为84,用于对框进行回归。

二、RoI_Pooling_layer

    RoI_Pooling的作用与SPP-Net有着相同的作用,只不过操作步骤有一点不同。SPP—Net是用不同尺度的金字塔将原特征分割为(1x1,2x2,4x4...)等,但是RoI_Pooling并不将特征这样分割。假设我们RoI_Pooling的输入尺寸是w*h,而输出尺寸想要是W*H,那么就需要把特征分割为Region Based CNN 系列之——(2) Fast-RCNN思路及其基础整理份,其中每一份都用max_pooling来提取最大特征,因此输出就变成了固定尺寸Region Based CNN 系列之——(2) Fast-RCNN思路及其基础整理。(等看完代码再补充:如果Region Based CNN 系列之——(2) Fast-RCNN思路及其基础整理不是整数,应该向上舍入还是向下舍入?不平均分配应该怎么做?)

相对RCNN的改进:

1、卷积不再是对2000个region proposal中的每一个进行,而是直接对整张图像,这样减少了很多重复计算。

2、用ROI pooling进行特征的尺寸变换,因为全连接层的输入要求尺寸大小一样,因此不能直接把region proposal作为输入。

3、将regressor放进网络一起训练,每个类别对应一个regressor,同时用softmax代替原来的SVM分类器。