以detectron2了解maskrcnn实现源码(1)--双线性插值

前前言

按理说,应该先理清maskrcnn的整体脉络的。可是因为太多技术细节没理清。所以,就按着学习节奏,学到哪写到哪,最后再来个总结串起来。

前言

双线性插值在maskrcnn中用于RoiAlign过程中。
本质作用:用来实现特征的压缩提取。
其实,它真的很简单。原理简单,公式也简单。

正文

举例场景:将一个2x2的特征汇聚成一个。

常规的取平均值、最大值。这些办法都没有考虑到权重。
RoiAlign中对于区域中心点来说,周围的像素点的权重就不一样。当然,此处不打算涉及RoiAlign,对它不了解也没事。反正就假设,现在要将一个2x2网格分布的4个特征汇聚成一个特征。

双线性插值
网上随便找了张图。我们将四个特征定义为:Q11、Q12、Q21、Q22。P就是采样点位置。
P的位置对应不同的权重情况,就是说:实际场景中,提取特征时,4个特征的权重大小是通过P的位置来体现的。RoiAlign就是对其最直观的体现。
为何能通过位置来体现呢?因为可以用P点离某个特征的距离远近来表示该特征的权重大小。
此点不理解的话,下篇看了RoiAlign就理解了。

既然用距离远近来代表权重大小,那也就是离某个特征越近那这个特征权重越大。你想呐,汇聚像素特征的时候,自然就该离哪个像素近就受其影响大,其权重就高。
那我们现在将问题简化下,现在是二维的,因为图像是二维码的嘛。那我们先假设现在是提取一维的特征。比如:在Q11,Q21这条一维的横线上,提取R1点的特征。那R1取值时,Q11和Q21的权重与其R1的距离成反比。则有公式如下:

R1 = Q11*(x2-x)/(x2-x1) + Q21*(x1-x)/(x2-x1)

其实,就是一条横线上的Q11和Q21,自身的值乘以自身权重再相加。而权重和距离成反比,所以此处用的x1,x2这边坐标轴来计算距离比值。
R1已经计算出来,同理:R2也可计算出来。再同理,R1、R2、P此时处于一条一维竖线上了,就可以再次取值。
所以,顾名思义,双线性插值。就是:P和周围4个点,不在一个维度不好插,那就先把那4个点拍成2个点,这2个点和P在一个维度,然后就好插了。也就是做了两轮线性插值。
不管,双线性插值在数学上如何理解,但在cv上这样理解就足够了。
其本质就是为了–让周围的像素点根据各自权重来发言。以免max取值那种一言堂,或者均值法那种绝对皿煮。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值