提交 7d2e71ac 编写于 作者: A Aston Zhang

till fast rcnn

上级 359e14a4
# 区域卷积神经网络(R-CNN)系列
区域卷积神经网络(region-based CNN或regions with CNN features,简称R-CNN)是将深度模型应用于目标检测的开创性工作之一 [1]。本节中,我们将介绍R-CNN和它的一系列改进方法:快速的R-CNN(fast R-CNN)[3]、更快的R-CNN(faster R-CNN)[4] 以及掩码R-CNN(mask R-CNN)[5]。由于篇幅有限,这里只介绍模型的大体设计思路。
区域卷积神经网络(region-based CNN或regions with CNN features,简称R-CNN)是将深度模型应用于目标检测的开创性工作之一 [1]。本节中,我们将介绍R-CNN和它的一系列改进方法:快速的R-CNN(fast R-CNN)[3]、更快的R-CNN(faster R-CNN)[4] 以及掩码R-CNN(mask R-CNN)[5]。由于篇幅有限,这里只介绍这些模型的大体设计思路。
## R-CNN
R-CNN首先对图像选取若干提议区域(例如锚框也是一种选取方法)并标注类别和边界框,然后用卷积神经网络对每个提议区域做前向计算抽取特征,以得到若干提议区域样本。之后,我们对每个提议区域样本预测类别和边界框。图9.5描述了R-CNN模型。
R-CNN首先对图像选取若干提议区域(例如锚框也是一种选取方法)并标注它们的类别和边界框(例如偏移量)。然后,用卷积神经网络对每个提议区域做前向计算抽取特征。之后,我们用每个提议区域的特征预测类别和边界框。图9.5描述了R-CNN模型。
![R-CNN模型。](../img/r-cnn.svg)
具体来说,R-CNN主要由以下四步构成:
1. 对输入图像使用选择性搜索(selective search)来选取多个高质量的提议区域 [2]。这些提议区域通常是在多个尺度下选取的,并具有不同的形状和大小。然后为每个提议区域标注类别和真实边界框。
1. 选取一个预训练的卷积神经网络,并将其在输出层之前截断。将每个提议区域变形为网络需要的输入尺寸,并通过前向计算输出抽取的提议区域特征。
1. 将每个提议区域的特征连同其标注的类别作为一个样本,训练多个支持向量机对目标分类。其中每个支持向量机用来判断样本是否属于某一个类别。
1. 将每个提议区域的特征连同其标注的边界框作为一个样本,训练线性回归模型来预测真实边界框。
1. 将每个提议区域的特征连同其标注的类别做成一个样本,训练多个支持向量机来进行目标类别分类,这里第$i$个支持向量机预测样本是否属于第$i$类。
1. 在这些样本上训练一个线性回归模型来预测真实边界框。
R-CNN对之前目标识别算法的主要改进是使用了预先训练好的卷积神经网络来抽取特征,有效的提升了识别精度。但R-CNN的一个主要缺点在于速度。对一张图像我们可能选出上千个兴趣区域,这样导致每张图像需要对卷积网络做上千次的前向计算。当然在训练的时候我们可以事先算好每个区域的特征并保存,因为训练中不更新卷积网络的权重。但在做预测时,我们仍然需要计算上千次的前向计算,其带来的巨大计算量使得RCNN很难在实际应用中被使用。
R-CNN虽然通过预训练的卷积神经网络有效抽取了图像特征,但它的主要缺点在于速度慢。例如,我们可能从一张图像中选出上千个提议区域,对该图像做目标检测将导致上千次的卷积神经网络的前向计算。这个巨大的计算量令R-CNN难以在实际应用中普及。
## Fast R-CNN:快速的区域卷积神经网络
......
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册