图像插值方法

  1. 最近邻元法。最简单的一种插值方法,不需要计算。在待求像素的四邻像素中,将距离待求像素最近的邻像素灰度赋给待求像素。具体计算方法如下图所示。其中设 i+u, j+v(i, j 为正整数, u, v 为大于 0 小于 1 的小数) 为待求
    像素坐标,则待求像素灰度的值为 f(i+u,j+v)。如果 (i+u,j+v) 落在 A区,即 u<0.5, v<0.5,则将左上角像素的灰度值赋给待求像素,同理可得,落在 B 区则赋予右上角的像素灰度值,落在 C 区则赋予左下角像素的灰度值,落在 D 区则赋予右下角像素的灰度值。最近邻元法计算量较小,但可能会造成插值生成的图像灰度上的不连续,在灰度变化的地方可能出现明显的锯齿状

  1. 双线性内插法。已知(x1, y1, f (x1, y1)),(x1, y2, f (x1, y2)),(x2, y1, f (x2, y1)),(x2, y2, f (x2, y2))
    用双线性插值估计 f(x, y):
    先对 x 进行插值去求 f(x,y1) 和 f(x,y2):

    f ( x , y 1 ) = f ( x 1 , y 1 ) ⋅ x 2 − x x 2 − x 1 + f ( x 2 , y 1 ) ⋅ x − x 1 x 2 − x 1 f\left(x, y_{1}\right)=f\left(x_{1}, y_{1}\right) \cdot \frac{x_{2}-x}{x_{2}-x_{1}}+f\left(x_{2}, y_{1}\right) \cdot \frac{x-x_{1}}{x_{2}-x_{1}} f(x,y1)=f(x1,y1)x2x1x2x+f(x2,y1)x2x1xx1

f ( x , y 2 ) = f ( x 1 , y 2 ) ⋅ x 2 − x x 2 − x 1 + f ( x 2 , y 2 ) ⋅ x − x 1 x 2 − x 1 f\left(x, y_{2}\right)=f\left(x_{1}, y_{2}\right) \cdot \frac{x_{2}-x}{x_{2}-x_{1}}+f\left(x_{2}, y_{2}\right) \cdot \frac{x-x_{1}}{x_{2}-x_{1}} f(x,y2)=f(x1,y2)x2x1x2x+f(x2,y2)x2x1xx1
然后再去求 f ( x , y ) f(x, y) f(x,y) :
f ( x , y ) = f ( x , y 1 ) ⋅ y 2 − y y 2 − y 1 + f ( x , y 2 ) ⋅ y − y 1 y 2 − y 1 f(x, y)=f\left(x, y_{1}\right) \cdot \frac{y_{2}-y}{y_{2}-y_{1}}+f\left(x, y_{2}\right) \cdot \frac{y-y_{1}}{y_{2}-y_{1}} f(x,y)=f(x,y1)y2y1y2y+f(x,y2)y2y1yy1
㓚果 x 2 = 1 , x 1 = 0 , y 2 = 1 , y 1 = 1 x_{2}=1, x_{1}=0, y_{2}=1, y_{1}=1 x2=1,x1=0,y2=1,y1=1, 那么:
f ( x , y ) = ( 1 − y ) ⋅ ( 1 − x ) ⋅ f ( 0 , 0 ) + ( 1 − y ) ⋅ x ⋅ f ( 1 , 0 ) + y ⋅ ( 1 − x ) ⋅ f ( 0 , 1 ) + y ⋅ x ⋅ f ( 1 , 1 ) f(x, y)=(1-y) \cdot(1-x) \cdot f(0,0)+(1-y) \cdot x \cdot f(1,0)+y \cdot(1-x) \cdot f(0,1)+y \cdot x \cdot f(1,1) f(x,y)=(1y)(1x)f(0,0)+(1y)xf(1,0)+y(1x)f(0,1)+yxf(1,1)
RoI Align 就行用的双线性插值对连续点利用周围的四个点进行双线性插值

  1. 三次内插值

W ( x ) = { ( a + 2 ) ∣ x ∣ 3 − ( a + 3 ) ∣ x ∣ 2 + 1  for  ∣ x ∣ ≤ 1 a ∣ x ∣ 3 − 5 a ∣ x ∣ 2 + 8 a ∣ x ∣ − 4 a  for  1 < ∣ x ∣ < 2 0  otherwise  W(x)= \begin{cases}(a+2)|x|^{3}-(a+3)|x|^{2}+1 & \text { for }|x| \leq 1 \\ a|x|^{3}-5 a|x|^{2}+8 a|x|-4 a & \text { for } 1<|x|<2 \\ 0 & \text { otherwise }\end{cases} W(x)=(a+2)x3(a+3)x2+1ax35ax2+8ax4a0 for x1 for 1<x<2 otherwise 

其中 a 取-0.5。待求像素 (x, y) 的灰度值由其周围 16 个灰度值加权内插得到, 通过分别计算 x 轴和 y 轴的 BiCubic 函数值,然后相乘得到最终的权值,再加权相加。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Fighting_1997

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

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

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

打赏作者

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

抵扣说明:

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

余额充值