详解 Mask-RCNN 中的 “RoIAlign” 作用 / 双线性插值的方法

本文深入解析RoIAlign在Mask-RCNN中的应用,对比RoIPooling,阐述其如何通过双线性插值提高特征图精度,实现更精准的目标检测与分割。

1. RoIAlign的产生背景

首先设想一个场景,假设从一个图像中锚定了一个人的边界框
在这里插入图片描述
图1 锚定一个目标人物的边界框

这个时候,要提取边界框中的人的特征,显然应该用 CNN 网络来做这个工作。CNN 处理之后会形成一个特征图。按照一般的处理方式,会使用 RoI Pooling 来缩小特征图的尺寸。但是在 Mask-RCNN 中提出了一个 RoIAlign 的方式,使得得到的小特征图可以更加的精确和信息完整。

2. RoI Pooling

举例来说,如果我们现在得到了一个特征图,特征图尺寸是 5 × 7 5×7 5×7,要求将此区域缩小为 2 × 2 2×2 2×2。此时,因为 5 / 2 = 2.5 {5}/{2}=2.5 5/2=2.5,是个非整数,所以此时系统会对其进行取整的分割,即将 “ 5 5 5 ”分割成 “ 3 + 2 3+2 3+2 ”,将 “ 7 7 7 ” 分割成 “ 3 + 4 3+4 3+4 ”,然后取每个区域的最大值作为本区域的值,整个过程如下所示:在这里插入图片描述
图2 整个RoI Pooling 的过程

3. RoI Align

可以知道,使用 R o I P o o l i n g RoI Pooling RoIPooling 存在一个很大的问题:

  • 很粗糙地选用了一个值来代替一个区域的值,而且每个区域的尺寸还有很大的差距。

R o I A l i g n RoI Align RoIAlign 的过程如下:
在这里插入图片描述
图3 整个RoI Align 的过程

  • 因为最终要将这个 5 × 7 5×7 5×7 的特征图处理成 2 × 2 2×2 2×2 的特征图。所以先将要进行 R o I A l i g n RoI Align RoIAlign 的过程转换成 2 × 2 2×2 2×2 个相同规模的范围,这个过程中不做任何量化处理。
    在这里插入图片描述
  • 将这 4 4 4 个模块(①,②,③,④)内部同样进行这样的处理,再细分成 4 4 4 个规模相同的区域(图中虚线表示)。
    在这里插入图片描述
  • 然后对于每一个最小的区域(包含不止一个像素点)确定其中心点(图中的红色 × × × )然后使用双线性插值法得到这个 × × × 号所在位置的值作为 最小格子区域 的值。
    在这里插入图片描述
  • 对于每一个 小区域(①,②,③,④)都会有 4 4 4 个这样的值,把这 4 4 4 个值取他们的最大值作为每个 小区域(①,②,③,④) 的值。这样最终就可以得到 4 4 4 个小区域的 4 4 4 个值,作为最终的特征图输出结果。

R o I A l i g n RoI Align RoIAlign 提出的这种方式可以避免过程中丢失原特征图的信息,中间过程全程不量化来保证最大的信息完整性。

4. 双线性插值

双线性插值,又称为双线性内插。在数学上,双线性插值是有两个变量的插值函数的线性插值扩展,其核心思想是在两个方向分别进行一次线性插值。

首先确定几个量:

  • 四个像素点 Q 11 , Q 12 , Q 21 , Q 22 Q_{11}, Q_{12},Q_{21},Q_{22} Q11,Q12,Q21,Q22
  • 他们的坐标分别是 ( x 1 , y 1 ) , ( x 1 , y 2 ) , ( x 2 , y 1 ) , ( x 2 , y 2 ) (x_1,y_1),(x_1,y_2),(x_2,y_1),(x_2,y_2) (x1,y1),(x1,y2),(x2,y1),(x2,y2)
  • 他们的像素值分别是 f ( Q 11 ) , f ( Q 12 ) , f ( Q 21 ) , f ( Q 22 ) f(Q_{11}),f(Q_{12}),f(Q_{21}),f(Q_{22}) f(Q11),f(Q12),f(Q21),f(Q22
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

暖仔会飞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值