深度学习之物体检测——Fast R-CNN(Ross Girshick)
来源:互联网 发布:什么淘宝炒作 编辑:程序博客网 时间:2024/06/09 15:48
Fast R-CNN是Ross Girshick对R-CNN进行改进的一篇文章,影响力也比较大。R-CNN的基本思想是用box proposal的特征映射作为其特征向量,然后进行分类与box精调。但是R-CNN需要对每个box proposal进行卷积操作得到box特征映射,这样大大降低了检测效率。Fast R-CNN在R-CNN基本思想不变的情况下,只对原图做一次卷次操作得打特征映射,然后把每个box投影到这个特征映射上去,得到box的特征映射。
本文会交替地使用“box proposal”和“RoI”(region of interest)。
网络
RoI投影到特征映射上
首先计算卷积网络的输入图像
现在给定图像上的一个box:
RoI Max Pooling
每个box的大小不同,投影到特征映射上大小必然不一样。而卷积操作后面就是全连接层,全连接要求输入的大小是固定的。作者巧妙地加了一层RoI Max Pooling层,将box特征映射池化为H*W大小(一般是6*6或者7*7)。
具体操作如下:假设box特征映射的大小为好h*w,那么将其划分成H*W个格子,每个格子的大小为
RoI Pooling层除了令输出大小固定还有另外一个特点,即把batch大小由原来的图像数量变成了box数量。
目前Caffe中已经添加ROIPoolingLayer作为基本层,以特征映射和box proposals作为输入。PyTorch也增加了torch.nn.AdaptiveMaxPool2d(output_size, return_indices=False)
层,以box feature map作为输入。在实现时,Caffe为了减少内存占用率,一张图片只保存一个特征映射,然后所有的box的RoI Pooling操作都是在这个特征映射上得到的,而不是说为每个box存储其特征映射投影再进行RoI Pooling。而PyTorch采用的是后者,所以内存占用率要高,而且这一层的简单化增加了开发者的其他操作。
损失函数
caffe中也新增了SmoothL1LossLayer层,用于计算本文提出的smooth L1。
参考
[1]
- 深度学习之物体检测——Fast R-CNN(Ross Girshick)
- 深度学习之目标检测——基于R-CNN的物体检测
- 深度学习目标检测模型发展过程:R-CNN Fast R-CNN Faster R-CNN R-FCN
- R-CNN,SPP-NET, Fast-R-CNN,Faster-R-CNN, YOLO,系列深度学习检测方法
- 基于深度学习的目标检测技术演进:R-CNN、Fast R-CNN、Faster R-CNN
- 基于深度学习的目标检测技术演进:R-CNN、Fast R-CNN、Faster R-CNN
- 基于深度学习的目标检测技术演进:R-CNN、Fast R-CNN、Faster R-CNN
- 基于深度学习的目标检测技术演进:R-CNN、Fast R-CNN、Faster R-CNN
- 基于深度学习的目标检测技术演进:R-CNN、Fast R-CNN、Faster R-CNN
- 基于深度学习的目标检测技术演进:R-CNN、Fast R-CNN、Faster R-CNN
- 基于深度学习的目标检测技术演进:R-CNN、Fast R-CNN、Faster R-CNN
- 基于深度学习的目标检测技术演进:R-CNN、Fast R-CNN、Faster R-CNN
- 基于深度学习的目标检测技术演进:R-CNN、Fast R-CNN、Faster R-CNN
- 基于深度学习的目标检测技术演进:R-CNN、Fast R-CNN、Faster R-CNN
- 基于深度学习的目标检测方法:fast R-CNN
- 深度学习(十八)基于R-CNN的物体检测
- 深度学习 基于R-CNN的物体检测
- 深度学习(六十四)Faster R-CNN物体检测
- 使用C语言编写Python扩展——创建自定义类型(1)
- 开张大吉!
- Windows下qwtplot3d编译(win7+qt5.7.1+vs2013)
- Spring IOC 2
- 【Unet】Unet Failed to spawn server object, assetId=0000000000000e2656f netId=2 问题
- 深度学习之物体检测——Fast R-CNN(Ross Girshick)
- G711编码原理
- 关于mfc重载CListbox控件出现参数错误的问题
- Error: This class should provide a default constructor (a public constructor with no arguments)
- Matrix矩阵类的学习总结
- 制作Unity插件之-创建一个Window窗口
- spring ioc 3
- Datatables Server-side processing
- python基础------正则表达式