参考文章:(23条消息) 双线性插值实现图像缩放详解_CtrlZ1的博客-CSDN博客_双线性插值放大
要对缩放图像的每个像素点进行操作,可以使用以下的方法对每个像素点进行操作。
对要处理的图像进行缩放后,将两张图像拉伸完全重叠,对于处理后图像的每个像素点,对应原图像同比例处的坐标。
例如4x4的图像拉伸至7x7,对于处理后图像的坐标(3, 5),对应原图像坐标为(3*(3/6),3*(5/6)),(由于从0开始,因此乘数和分母减一),为(3/2, 5/2),则附近紧邻的四个像素坐标为(1,2),(2,2),(1,3),(2,3),而处理后对应像素点的坐标在以(1,2)为原点的坐标系中,坐标为(1/2,1/2)。
如下图所示
通过上面的参考文章,可以了解到最终的表达式为
f(p)=f(Q11)(1−x)(1−y)+f(Q21)x(1-y)+f(Q12)(1−x)y+f(Q22)xy
对于上面的例子,f(Q11)为(1, 2)处的像素点值,f(Q21)为(2, 2)处的像素点值...x,y即为 (1/2,1