数字图像处理——图像插值

如题所述

第1个回答  2022-05-31
网上有很多介绍插值算法的,但感觉收获都不大

介绍三种图像插值算法:最近邻内插,双线性内插,双三次内插(双立方内插)

三次插值即用三阶多项式拟合原函数(也应该有其他用途)。假设三次拟合函数为

在matlab中,图像被定义为一个三维向量,若不考虑图像的通道数,可以将图像看作一个二维矩阵处理。matlab图像矩阵中坐标值映射到二维坐标系中,每一个像素块对应的是一个点,但实际的像素块是有一定尺寸的。

在进行双线性插值和双三次插值时,需要用坐标值拟合函数,为了简化计算,总是选取 作为局部坐标系原点,其中 为待插值坐标。

当出现这些情况时,补充这些像素的灰度值为图像内最相邻像素块的灰度值。

进行坐标变换后,选取与内插点 欧式距离最近的像素值进行插值。在程序中,使用将 按照四舍五入的舍入方式选取最近邻的像素块。

双线性内插是线性内插的二维实现,在x维度先进行线性插值,再由得到的值对y维度进行插值。在局部坐标系中,选取 相邻的四个像素进行双线性内插。由在数学原理中的推导可知

双三次内插是三次插值的二维实现。选取与 相邻的16个像素进行双三次内插,局部坐标系中x与y坐标范围均为 。由数学原理中的推到可知

最近邻插值法的优点是计算量很小,运算速度较快。但它仅使用离待测采样点最近的像素的灰度值作为该采样点的灰度值,而没考虑其他相邻像素点的影响,因而重新采样后灰度值有明显的不连续性,会产生明显的马赛克和锯齿现象。

双线性插值法效果要好于最近邻插值,计算量较大。缩放后图像质量高,基本克服了最近邻插值灰度值不连续的特点,因为它考虑了待测采样点周围四个直接邻点对该采样点的相关性影响。但是,此方法未考虑到各邻点间灰度值变化率的影响, 具有低通滤波器的性质, 从而导致缩放后图像的高频分量受到损失, 图像边缘在一定程度上变得较为模糊,丢失了一些细节信息。

双立方插值计算量最大,运算速度慢。双立方插值用三阶函数逼近,不仅考虑到周围四个直接相邻像素点灰度值的影响,还考虑到它们灰度值变化率的影响,能够产生比双线性插值更为平滑的边缘,计算精度很高,处理后的图像细节损失最少,效果最佳。