图像的放大缩小其实是一回事,都是先创建一张空白目标图像(放大缩小后的图像),其大小就是想要放大缩小后所得到的图像大小。创建图像后我们并不知道这张图像里面的各个像素点RGB(或灰度)值是多少,这个时候就需要经过一个算法去算目标图像的像素点RGB(或灰度)值。基本上所有相关的算法都是通过算出目标图像的像素跟原图像的像素的映射关系来实现的,但是不同的算法由于这个映射关系的求取不同,处理效率和处理效果会有所差异。本文介绍的是比较常用到的双线性插值算法,并通过C/C++ BMP(24位真彩色)图像处理这一系列所用到的基本框架来实现。
关于双线性插值算法的原理,由下图解释: