找回密码
 注册
关于网站域名变更的通知
查看: 513|回复: 3
打印 上一主题 下一主题

怎么实现双线性插值?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-6-10 10:06 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
Interp的算法简单来说就是用源图的四个点分别与各自的权重相乘然后再相加得到目标图片的一个值。所以这个算法的关键点有两个:
: ^" M7 K8 _% T" \$ t1. 源图4个像素点的选择;; Q" |! I2 k. H: I) d$ Y4 n! j
2. 与4个像素点相乘的权重的计算。8 S6 s* ]( ?& V
实际上,无论是像素点的选择还是权重的计算都依赖源图片和目标图片长和宽像素点的比例关系。根据源图片和目标图片的比例关系可以先算出一个基础系数(Base_Parameter)。但这并不意味着一个2*2的图片扩大成4*4的图片,比例系数就由2/4直接得到,因为双线性插值的的点是指的每个像素点的中心点的值,如下图所示。 & V. W8 _& x4 R, B8 }; h
$ C" v( b+ {* T8 }3 Y
所以实际的比例关系计算应该是中心点距离的总和之间的比例关系,也就是像素点减一之后的比例关系。还是举例说明的话,2*2的图片扩大成4*4的图片应该就是(2-1)/(4-1)这样来得出比例关系。为了证明这个推导的正确性,下面是caffe里面interp层的c++代码,可以从图中看到的是选择像素点的代码,确实是需要进行减一操作的。
: U, b  o% Q" O. q) L ; n. g; h6 B; S# D' D1 S
关键点1  像素点选择
3 L6 [' x  b4 L, p' q9 R用3*3扩大成4*4的例子来举例说明。根据上面推导出的公式可以得到这个过程中的基础比例系数是(3-1)/(4-1)=0.67。如下图所示,目标图片的第二行第二列的点是由1,2,4,5四个点计算的。因为此时,选择像素点行的参数为0.67*1=0.67没有超过1且选择像素点水平方向和垂直方向的参数为0.67*1=0.67没有超过1。所以,参与计算的源图片像素点。9 a* Q" S% H! |% i- E: g& ]
是最左最上的2*2矩阵。到计算目标图片的第二行第三列数时,水平方向的参数为0.67*2=1.34,这个值超过了1,所以源图片水平2*2的矩阵要向右移动一个像素的位置。而垂直方向的参数还是0.67,故而垂直方向无需移动。参与运算的数就从1、2、4、5变为了2、3、5、6。9 C, D  z% F. ^, e; |" |" k+ V
9 f  n1 [+ `' S
关键点2  权重计算8 p5 B7 _4 J. w1 h6 Z* @3 q5 I
还是用3*3扩大成4*4的例子来举例说明。现在需要计算0Base下(1,1)的数,也就是图中黄色的像素点。由于它的行坐标和列坐标都为1,所以这层的计算参数需要分别将行和列的基础系数乘1得到,也就是行为0.67,列为0.67。具体计算过程为1*(1-0.67)*(1-0.67) + 2*0.67(1-0.67) + 4*(1-0.67)*0.67 +5*0.67*0.67。其中红字的部分就是权重的计算过程。
, o4 J& ~0 w1 e小结:9 y5 U$ @/ p* W# }3 r& c. U  \
1. 根据输入输出分辨率计算出基础系数。
; w, s/ i3 @/ }( j9 ?4 v2. 根据需要计算的像素点位置计算出计算参数。7 z. q6 T* |* ~2 d. v$ M
3. 计算参数的整数部分作为index去选择像素点,小数部分作为权重去计算。
8 L! ~6 |  ^8 `/ v' e7 k3 H# F+ R+ @2 Y7 S+ B1 A& _$ ?# c

- U7 e& R9 R+ |  O" [

该用户从未签到

2#
发表于 2021-6-10 10:54 | 只看该作者
Interp的算法简单来说就是用源图的四个点分别与各自的权重相乘然后再相加得到目标图片的一个值
7 U. r3 z3 c0 y

该用户从未签到

3#
发表于 2021-6-10 11:03 | 只看该作者
1. 根据输入输出分辨率计算出基础系数。: h* o/ j( [* ?# V) o9 i! R: k
, a4 v3 W$ u3 F4 X* ?2. 根据需要计算的像素点位置计算出计算参数。. `' R* [. i5 ~4 m  [7 ^: y6 }5 A# \( w9 I% |, Y7 w' f$ N
3. 计算参数的整数部分作为index去选择像素点,小数部分作为权重去计算。1* i& D% C6 [% ]# M

该用户从未签到

4#
发表于 2021-6-10 11:08 | 只看该作者
无论是像素点的选择还是权重的计算都依赖源图片和目标图片长和宽像素点的比例关系。& V) `! w% o- I! N! U( D" R
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-7 20:00 , Processed in 0.125000 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表