R-CNN
R-CNN使用选择性搜索(selective search)代替传统方法的滑动窗口(sliding windows),大约选择出2000个候选区域,将所有候选区域resize成227*227大小的图像,通过CNN(Alexnet网络)提取特征向量,即最后一个全连接层产生的特征向量,送入SVM分类器中进行分类。每个类别训练一个SVM分类器,从特征向量中推断其属于该类别的概率大小。为了提升定位准确性,R-CNN最后又训练了一个边界框回归模型,通过边框回归模型对框的准确位置进行修正。
AlexNet模型
- AlexNet为8层结构,其中前5层为卷积层,后面3层为全连接层;
- AlexNet在两个GPU上运行,第2,4,5层在同一个GPU中前后链接,第3层是与两个GPU的前面层进行全连接,全连接是2个GPU全连接;
- RPN层第1,2个卷积层后;
- Max pooling层在RPN层以及第5个卷积层后。
由于R-CNN中不涉及RPN层,因此不过多介绍。并且只使用单GPU上的网络的网络结构搭建CNN网络进行组建。R-CNN可以使用5个卷积和池化,2个全连接层构建。
R-CNN模型
- 采用 Selective Search 技术生成 Region Proposal,一般选择设置区域个数为2000
- 将这2000个图像区域分别经过5个卷积层和池化层和2个全连接层的卷积神经网络进行特征提取
- 对每个类别训练一个SVM分类器和框回归分类器
总结
R-CNN 采用 AlexNet网络预训练。
R-CNN 采用 Selective Search 技术生成 Region Proposal。
R-CNN 在 ImageNet 上先进行预训练,然后利用成熟的权重参数在训练集上进行 fine-tune。
R-CNN 用 CNN 抽取特征,然后用一系列的的 SVM 做类别预测。
R-CNN 的 bbox 位置回归。