卷积神经网络——RoIPool与RoIAlign的区别

RoIPooling在Fast RCNN中用于处理RoI大小不一致的问题,但存在错位问题。RoIAlign在Mask R-CNN中提出,通过消除量化和采用双线性插值解决了这一问题,尤其适用于位置敏感任务如语义分割。RoIPooling的两次量化导致misalignment,RoIAlign则避免了量化,提高精度。
摘要由CSDN通过智能技术生成

RoIPool最初是在Fast RCNN中提出的,是SPP(spatial pyramid pooling)的一个特例,解决RoI(Region of Interest)大小不一致但是全连接层输入只能是固定大小的问题。但是会有错位(misalignment)的问题——由于两次量化导致执行完RoIPool后的结果与原始的Region Proposal在特征图(Feature map)中的位置发生偏移。针对小物体会更加的明显。

为了解决上面的问题,HE Kaiming等人在Mask R-CNN中提出了RoIAlign,一个更加优雅的解决方案,既可以解决全连接层输入大小固定的问题又解决了RoIPooling中出现的misalignment的问题。下面我们分别详细说一下:

RoIPooling

在SPP-net中对全连接层只接受固定输入的解决方案是添加一个SPP层。SPP层的输入的大小可以是不同的,但是输出的大小是固定的。到后面Fast R-CNN中的RoIPooling功能与SPP层类似,只不过是将RPN输出的RoI作为输入,这些RoI的大小是不同的。Fast R-CNN中RoI pooling层的输出是一个超参的配置。RoI的定义为(r,c,h,w),(r, c)是左上角坐标,(h, w)是高和宽。

RoIPool的计算过程如下(不知道图的原出处, 借用一下):

    1. 原始图片大小为800x800。假定骨干网络(这里是VGG16)的缩放步长为32,也就是最后得到的特征图的大小是原始图片大小的1/32,即25x25。
    1. 通过RPN网络选出一个665x665的RoI,RoI的坐标假定为(r, c, h, w),对应的RoI映射到特征图的大小为(665/32)x(655/32)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值