论文笔记-R-FCN:Object Detection via Region-based Fully Convolutional Networks

分类任务需要网络的转换不变性,目标检测任务需要网络的转换可变性。因为分类任务的目标对象是整张图像,一张图像上只有一个对象。检测任务需要适应每张图像上的多个尺寸不一的对象。对于目标检测网络而言,因其主干网络都是应用于分类任务的网络,因此在目标检测网络中就存在转换不变性和转换可变性的矛盾。作者为了解决这一问题,提出了R-FCN网络。下图为R-FCN的结构图:
这里写图片描述
作者通过一些指定的卷积层块,使卷积输出一系列position-sensitive的分数映射,每一个映射对应其在原始图像中的空间位置。

R-FCN

R-FCN采用了基于候选区域的two-stage网络架构,如下图:
这里写图片描述
网络的最后一层对于每一个种类产生k*k个position-sensitive分数映射,因此输出共有(C+1)个通道(C个种类和1个背景)。k*k的position-sensitive分数映射,编码了一个种类对象的空间位置信息。下面的两个图是一个例子:
这里写图片描述
这里写图片描述
Backbone architecture
采用ResNet-101,作者移除了fc layers和average pooling layers,使用全卷积层。对于全卷积层的输出,跟着一个 k*k*(C+1)通道数的卷积。

Position-sensitive score maps & Position-sensitive RoI pooling
为了更好的编码RoI的位置信息,作者将每一个RoI区域分成k*k个块。一个RoI的尺寸为w * h,那么一个块的尺寸为(w/k) * (h/k)。对于第(i,j)个分数块,定义position-sensitive RoI pooling操作如下:
这里写图片描述
为第c类,第(i , j)位置的池化响应。
这里写图片描述为第c类,第(i , j)位置的映射分数。
(x0,y0)表示一个RoI的左上角。
n是一个bin中像素的个数。
这里写图片描述表示网络所有的可学习参数。

经过RoI pooling后,每一个RoI产生一个(C+1)通道的k*k向量,其中每一个通道对应一个类别。通过下式,对该类别的k*k个分数求和,作为一个RoI属于该类的置信分数,向量变为(C+1)维。
这里写图片描述
然后计算该类别c的softmax相应:
这里写图片描述

对于边界框回归,除了上面的k*k*(C+1)维的卷积层外,作者又并行生成了一个k*k*4维的卷积层,用于进行边界框坐标回归。RoI pooling在k*k*4维的卷积层后,生成一个4*k*k维的向量。然后通过上文的方法,计算k*k个坐标分数的和,此时变成4维的向量。

网络的损失函数采用分类损失和边界坐标回归损失的和的形式:
这里写图片描述
其中,这里写图片描述是RoI的ground truth label
这里写图片描述

实验

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值