RCNN-SPP Net-Fast rcnn-Faster rcnn

RCNN

1.训练或者下载一个预训练好的模型(Vgg16)

2.对此模型进行fine-turning,即将分类数目改为20(自己需要分类的类别数目)+去掉全连接层。

vgg-16网络结构:点击打开链接

3.特征提取,用selective search方法从原图中得到不同大小不同位置的2000个region proposals,将这些region proposals缩放到固定大小(227*227),即对每一个区域,修正区域大小以合适CNN的输入,做一次前向运算,将第五个池化层的输出(就是对region proposals提取到的特征)存到硬盘。

4.训练一个SVM分类器(二分类)来判断这个region proposal里物体的类别(每个类别对应一个SVM,判断是不是属于这个类别,如果是则为positive,否则为negative。

5.使用bounding box对窗口位置进行精修,对每一个类,训练一个线性回归模型去判断这个框是否框的完美。

6.更新参数,使用SGD方法进行backpropagation。


SPP Net:(RCNN的改进参考了SPP Net)

SPP:spatial pyramid pooling(空间金字塔池化)

特点:

1.结合空间金字塔方法实现CNNs对尺度的输入:

一般CNN后后全连接层或者分类器都需要固定的出入尺寸,因此不得不对输入的数据进行crop或者warp,这些处理会造成数据的丢失或者几何失真,对模型的效果产生一定的影响。SPP net在卷积层和全连接层之间加入了SPP layer,在SPP layer中每一个pooling的filter会根据输入调整大小,而SPP的输出尺幅始终是固定的。实现了数据的多尺度输入。

2.只对原图提取一次卷积特征:

在RCNN中,每个proposal先resize到统一大小,然后分别作为CNN的输入,这样是很低效。所以SPP net根据这个缺点做了优化:只对原图进行一次卷积得到整张图的feature map,然后找到每个region proposal在feature map上的映射patch,将此pathc作为每个region proposal的卷积特征输入到SPP layer和之后的层。


Fast R-CNN:

 · 在RCNN的基础上采用了SPP Net的核心思想。

 · RCNN:使用selective search方法提取2000个Region Proposals --> 每一个Region Proposal都进行缩放使其统一尺度 -- > 每一个Region Proposal都经过CNN提取特征。 --> 分类+回归(缺点:对所有region proposals进行特征提取有重复计算+缩放使得细节信息损失,导致精度下降)

 · Fast-RCNN:

1.使用了单层的sppnet,叫做ROI Pooling,可以把不同大小的输入映射到一个固定尺度的特征向量(conv,pooling,relu等操作都不需要固定size的输入,而fc层需要固定size的输入)

2.共享卷积层,输入一张完整的图片,在第5个卷积层再得到每个region proposals的feature map。

一张完整的图片+2000个Region Proposals位置 --> CNN --> (经过SPP Net)得到每张候选框的特征 --> 分类+回归


Faster RCNN:

详讲解见点击打开链接

1.增加了一个提取Region Proposals的网络 -- RPN:

 原图经过conv后的feature map每一窗口对应原图中的9种区域(即9种anchors),实现了Region Proposals的提取。

一张完整的照片 --> CNN (得到特征)-->( 在feature map上滑动窗口 --> 建立一个神经网络用于物体分类+位置回归 --> 滑动窗口的位置提供了物体的大体位置信息,位置回归提供了框的精确位置。)RPN层得到region proposals的特征信息 --> 分类+回归

anchors:


结构图:


参考链接:点击打开链接

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SPP Net和Fast R-CNN是两种不同的目标检测算法,它们在网络结构和特征提取方式上有一些区别。 1. 网络结构: - SPP Net:SPP Net引入了空间金字塔池化层(Spatial Pyramid Pooling Layer),可以接受任意尺寸的输入图像,并且保持固定长度的特征向量输出。SPP Net通过将输入图像划分为多个子区域并对每个子区域进行池化操作,然后将这些池化结果拼接在一起,形成固定尺寸的特征向量。 - Fast R-CNNFast R-CNN使用整个图像作为输入,通过卷积神经网络(如VGGNet)提取图像的特征图。引入了ROI池化层(Region of Interest Pooling Layer),可以将不同大小的候选区域映射到固定大小的特征图上。 2. 特征提取方式: - SPP Net:SPP Net在整个图像上提取特征,并通过空间金字塔池化层对不同尺度的特征进行融合和池化,生成固定长度的特征向量。 - Fast R-CNNFast R-CNN通过卷积神经网络提取整个图像的特征图,然后使用ROI池化层将不同大小的候选区域映射到固定大小的特征图上,以便进行后续分类和回归任务。 总的来说,SPP Net和Fast R-CNN都是目标检测算法,但在特征提取方式和网络结构上有所不同。SPP Net通过空间金字塔池化层实现了对任意尺寸图像的处理,而Fast R-CNN通过ROI池化层实现了对不同大小的候选区域的处理。它们都在某种程度上提高了目标检测的准确性和效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值