ROI相关内容

ROI直译为感兴趣的区域(region of interest),也就是你需要检测的目标(object),一般科研中主要有两种方法,RoIPooling和RoIAlign。

现有问题是使用大量的预选框去确定目标十分浪费算力,图片的处理也十分麻烦,会很慢,而却没法端到端

目录

一、ROIPooling

目的

操作流程

具体细节

二、RoIAlign

目的

操作流程

具体细节


一、ROIPooling

目的

将不同大小的区域(通常是边界框)映射到固定大小的特征图上,以便进行后续的特征提取和分类。

操作流程

1.特征提取,得到特征图

2.将ROI区域映射到特征图上

3.将映射到的区域按维度分块,分块数量自己指定

4.对每个块单独进行pooling操作

具体细节

下例想从一个16*16的特征图得到一个2*2的ROI。

把原本8*8的ROI化为2*2的块,做max pooling操作就完成了ROIPooling操作。

缺点:该方法有一个明显的缺点,当原图映射到特征图,会有一次量化的向下取整,分块时(8*8到2*2)又有一次取整,这样会导致丢失特征,这种现象被称为区域不匹配。

参考论文:Region of interest pooling explained

二、RoIAlign

针对于ROIPooling的缺点,RoIAlign得以提出。

目的

ROI Pooling的改进版,解决了映射误差和均分误差问题,提高了后续处理的准确率。ROI Align利用虚拟像素的方法,即用双线性插值的方法获得坐标为浮点数的像素点上的图像数值,从而将整个特征聚集过程转化为一个连续的操作。

操作流程

1.遍历每一个候选区域,保持浮点数边界不做量化。

2.将候选区域分割成k×k 个单元,每个单元的边界也不做量化(这两步和ROIPooling是一样的,只是没做量化)

3.在每个单元中计算采样点的坐标,即每一个块的最中心点,用双线性插值的方法计算出采样点的值,然后进行最大池化操作。

具体细节

还是以想得到2*2的特征为例。

前置步骤和ROIPooling一样

得到2*2的块后不直接使用max pooling操作;
假设采样点数是4,将每个单元格子均分成四个小方格,以每个小方格的中心作为采样点;采样点数是8,就将每个单元格子均分成八个小方格;
对采样点像素进行双线性插值,得到该采样点的像素值(共四个);
对每个单元格内的 4 个采样点进行 max pooling(变为一个像素值),得到最终的 ROI Align 结果。

参考论文:https://arxiv.org/abs/1703.06870

关于双线性插值,首先,图像放大会产生空白的像素点,双线性插值的目的就是给空白插值,从而填补像素,在RoIAlign中就拿来算中心点的像素值

已知的是周围点的(x,y)坐标和他们的像素值以及采样点的(x,y)坐标,求的是采样点的像素值。

求法就是x,y两个平面上分别做单线性插值的和

此图来源于:图像处理-双线性插值_哔哩哔哩_bilibili

  • 21
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值