前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >深度学习: 从 RoIPooling 到 RoIAlign

深度学习: 从 RoIPooling 到 RoIAlign

作者头像
JNingWei
发布2018-09-27 16:14:33
2.2K0
发布2018-09-27 16:14:33
举报
文章被收录于专栏:JNing的专栏JNing的专栏

SPP Layer

对RoI进行pooling的操作最早由SPPNet中的SPP layer提出:

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

对RoI进行pooling,使得检测网络可以输入任意size的图片。因为从输入图片到fc之间契入了对RoI的pooling,使得fc的存在也无法写死输入图片的size。

RoIPooling

2015年,Ross Girshick大神在Fast R-CNN中继承了SPP layer的精髓,并简化了该设计,提出了RoIPooling。旨在满足一次性训练 feature map的前提下,替代 R-CNNwraped region 的功能:

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

方位

在 Faster R-CNN 中,anchor经过优胜劣汰升级为RoI ,之后 输入 RoIPooling 进行 size归一化 。其中,RoIPooling 的 位置 如下:

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

缺陷

百密一疏。由于 RoIPooling 采用的是 INTER_NEAREST(即最近邻插值) ,即在resize时,对于 缩放后坐标不能刚好为整数 的情况,采用了 粗暴的四舍五入,相当于选取离目标点最近的点。

RoIAlign

诞生

Kaiming He 在他的论文Mask RCNN里指出,这样做会在一定程度上损失 空间对称性(Alignment),所以他们把 最近邻插值 换成了 双线性插值 。换完插值法的 RoIPooling 就有了一个更加高大上的名字 —— RoIAlign

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

弊端

SPP Layer及其后继的RoI Pooling、RoI Align的出现,使得Detection算法可以享受到“共享特征抽取”,从而免去了前半段网络的重复计算;然而该设计也导致了一个问题——后半段变成了RoI-wise subnetwork,依然无法共享计算,每输入一个RoI都需重复一次。

R-FCN针对这个痛病,将处理位置信息的任务交给了 “ position-sensitive score map ” (位置敏感得分图) 来做,从而炒了RoI Pooling的鱿鱼。

插值法

具体关于 双线性插值 的介绍可参见我的另一篇博客:图像处理: 五种 插值法


[1] 论文阅读: R-FCN [2] 图像处理: 五种 插值法

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017年12月16日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • SPP Layer
  • RoIPooling
    • 方位
      • 缺陷
      • RoIAlign
        • 诞生
        • 弊端
          • 插值法
          相关产品与服务
          图像处理
          图像处理基于腾讯云深度学习等人工智能技术,提供综合性的图像优化处理服务,包括图像质量评估、图像清晰度增强、图像智能裁剪等。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档