导读
以前在学校里学过双线性插值,但是没怎么用过后面逐渐就忘记了。后来工作中遇到多次,发现每次都要上网查,主要还是理解的不深刻。于是索性用自己的话好好总结一下。
本文主要从几何方面来解释双线性插值,以便于理解。
双线性插值几何解释
为了便于说明,本文将一个2x2尺寸的图像(如图1)resize到3x3(如图1)来进行叙述。
图1 2x2图像坐标系
图2 3x3图像坐标系
图1、图2中每个坐标表示图像中的一个像素位置,为了计算图2中坐标处的像素值,显然要用到原图像(图1)。
将映射回原图,可得到对应的像素位置
,二者的关系可表示为:
,其中
。
一般情况下,坐标都是小数,但像素坐标显然都是整数,所以真正的像素值计算必然要从距离
最近的四个像素入手,如图1灰色方块的四个顶点。
为了便于说明这里将图1灰色方块单独拿出来,如图3所示:
图3 距离
最近的四个点
从图3中容易想到,距离越近的像素点对其真正的像素值贡献系数越大;反之距离越远,则对真正的像素值贡献系数越小,因此容易得出:
;
其中:
1、;
2、;
3、;
4、;
5、;
6、;
有了上述公式,利用Python可以很容易实现双线性插值算法!
参考文献
1、双线性插值