图像插值算法_第1页
图像插值算法_第2页
图像插值算法_第3页
图像插值算法_第4页
图像插值算法_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、常用图像插值算法分析与比较摘要:插值算法在图像缩放处理中是一项基本且重要的问题。插值算法有多种,最常用的有最近邻插值、双线性插值以及立方卷积插值。本文对三种插值算法进行简单分析并对它们的处理结果加以比较,最后总结了三种算法各自的优缺点。关键词:图像处理;最近邻插值;双线性插值;立方卷积插值1 引言图像几何变换包括平移、转置、镜像和缩放等。其中前三种操作变换中,输出图像的每一个像素点在输入图像中都有一个具体的像素点与之对应。但是,在缩放操作中,输出图像像素点坐标有可能对应于输入图像上几个像素点之间的位置,这个时候就需要通过灰度插值处理来计算出该输出点的灰度值1。图像插值是图像超分辨处理的重要环节

2、,不同的插值算法有不同的精度,插值算法的好坏也直接影响着图像的失真程度。最常用的插值算法有三种:最近邻插值、双线性插值、立方卷积插值,其中使用立方卷积插值达到的效果是最佳的。2 几种插值算法原理分析插值算法所应用的领域较多,对图像进行缩放处理是比较典型的应用,由于图像像素的灰度值是离散的, 因此一般的处理方法是对原来在整数点坐标上的像素值进行插值生成连续的曲面, 然后在插值曲面上重新采样以获得缩放图像像素的灰度值。缩放处理从输出图像出发,采用逆向映射方法,即在输出图像中找到与之对应的输入图像中的某个或某几个像素,采用这种方法能够保证输出图像中的每个像素都有一个确定值,否则,如果从输入图像出发来

3、推算输出图像,输出图像的像素点可能出现无灰度值的情况。因为,对图像进行缩放处理时输出图像像素和输入图像之间可能不再存在着一一对应关系。下面分别对三种算法予以介绍。2.1 最近邻插值算法最简单的插值法是最近邻插值法,也叫零阶插值法2。即选择离它所映射到的位置最近的输入像素的灰度值为插值结果。对二维图像,是取待测样点周围4 个相邻像素点中距离最近1 个相邻点的灰度值作为待测样点的像素值。若几何变换后输出图像上坐标为(x,y的对应位置为(m,n,则示意图如下所示:2.2 双线性插值算法双线性插值又叫一阶插值法3,它要经过三次插值才能获得最终结果,是对最近邻插值法的一种改进,先对两水平方向进行一阶线性

4、插值,然后再在垂直方向上进行一阶线性插值。2.3 立方卷积插值算法立方卷积插值又叫双三次插值2,是对双线性插值的改进,是一种较为复杂的插值方式,它不仅考虑到周围四个直接相邻像素点灰度值的影响,还考虑到它们灰度值变化率的影响。此法利用待采样点附近16 个像素点的灰度值作三次插值进行计算,还用到如图3 所示的三次多项式 S( w。首先确定 16 个邻点坐标,设其排成的矩阵为2:方卷积法就退化成双线性插值法。由此看来,立方卷积可看成两部分组成,其中( 1 - | m| 代表直接邻点的灰度值对待采样点的影响, 而l 则代表邻点间灰度值的变化率对待采样点的影响。与双线性插值法相比, 立方卷积法不仅考虑了

5、直接邻点的灰度值对待采样点的影响,还考虑了邻点间灰度值变化率的影响, 因此后者所求得的待采样点灰度值更为精确。3 三种插值算法处理结果及分析通过采用三种插值算法对图像进行缩放处理操作,可以直观比较它们处理后的效果。以下是对128*128 像素的灰度图像进行放大2 倍处理得到256*256 尺寸的图像。3.1 缩放操作效果图(a128*128 源图(b最近邻插值放大图(c双线性插值放大图 (d 立方卷积插值放大图图 4 效果图3.2 结果分析从三种插值算法处理图像后的对比结果可知:最近邻插值法效果最差,有明显的锯齿状,且细节部分很不清晰。双线性插值效果其次,锯齿难以察觉,但是图像的边缘有轻微的模

6、糊现象。立方卷积插值则是三种插值法中效果最佳的,它能克服前两插值法的缺点,产生比较清晰的图像边缘,计算精度较高。4 三种插值算法优缺点总结最近邻插值法的优点是计算量很小,算法也简单,因此运算速度较快。但它仅使用离待测采样点最近的像素的灰度值作为该采样点的灰度值,而没考虑其他相邻像素点的影响,因而重新采样后灰度值有明显的不连续性,图像质量损失较大,会产生明显的马赛克和锯齿现象。双线性插值法效果要好于最近邻插值,只是计算量稍大一些,算法复杂些,程序运行时间也稍长些,但缩放后图像质量高,基本克服了最近邻插值灰度值不连续的特点,因为它考虑了待测采样点周围四个直接邻点对该采样点的相关性影响。但是,此方法

7、仅考虑待测样点周围四个直接邻点灰度值的影响, 而未考虑到各邻点间灰度值变化率的影响, 因此具有低通滤波器的性质, 从而导致缩放后图像的高频分量受到损失, 图像边缘在一定程度上变得较为模糊。用此方法缩放后的输出图像与输入图像相比, 仍然存在由于插值函数设计考虑不周而产生的图像质量受损与计算精度不高的问题。立方卷积插值计算量最大,算法也是最为复杂的。在几何运算中,双线性内插法的平滑作用可能会使图像的细节产生退化,在进行放大处理时,这种影响更为明显。在其他应用中,双线性插值的斜率不连续性会产生不希望的结果。立方卷积插值不仅考虑到周围四个直接相邻像素点灰度值的影响,还考虑到它们灰度值变化率的影响。因此

8、克服了前两种方法的不足之处,能够产生比双线性插值更为平滑的边缘,计算精度很高,处理后的图像像质损失最少,效果是最佳的。总之,在进行图像缩放处理时,应根据实际情况对三种算法做出选择,既要考虑时间方面的可行性,又要对变换后图像质量进行考虑,这样才能达到较为理想的结果。参考文献1张宏林. 精通Visual C+数字图像处理典型算法及实现M.北京:人民邮电出版社, 2008.2谢凤英,赵丹培. Visual C+数字图像处理M. 北京:清华大学出版社,2008.3何斌,马天予,王运坚等. Visual C+数字图像处理M.北京:人民邮电出版, 2001电脑摄像头最高只有130万像素的,800万是通过软

9、件修改的。何为数码插值(软件插值插值(Interpolation,有时也称为“重置样本”,是在不生成像素的情况下增加图像像素大小的一种方法,在周围像素色彩的基础上用数学公式计算丢失像素的色彩。简单地说,插值是根据中心像素点的颜色参数模拟出周边像素值的方法,是数码相机特有的放大数码照片的软件手段。一、认识插值的算法“插值”最初是电脑术语,后来引用到数码图像上来。图像放大时,像素也相应地增加,但这些增加的像素从何而来?这时插值就派上用场了。插值就是在不生成像素的情况下增加图像像素大小的一种方法,在周围像素色彩的基础上用数学公式计算丢失像素的色彩(也有些相机使用插值,人为地增加图像的分辨率。所以在放

10、大图像时,图像看上去会比较平滑、干净。但必须注意的是插值并不能增加图像信息。以图1为原图(见图1,以下是经过不同插值算法处理的图片。1.最近像素插值算法最近像素插值算法(Nearest Neighbour Interpolation是最简单的一种插值算法,当图片放大时,缺少的像素通过直接使用与之最接近的原有像素的颜色生成,也就是说照搬旁边的像素,这样做的结果是产生了明显可见的锯齿(见图2。2.双线性插值算法双线性插值算法(Bilinear Interpolation输出的图像的每个像素都是原图中四个像素(2×2运算的结果,这种算法极大程度上消除了锯齿现象(见图3。 3.双三次插值算法

11、双三次插值算法(Bicubic Interpolation是上一种算法的改进算法,它输出图像的每个像素都是原图16个像素(4×4运算的结果(见图4。这种算法是一种很常见的算法,普遍用在图像编辑软件、打印机驱动和数码相机上。 4.分形算法分形算法(Fractal Interpolation是Altamira Group提出的一种算法,这种算法得到的图像跟其他算法相比更清晰、更锐利(见图5。现在有许多数码相机厂商将插值算法用在了数码相机上,并将通过算法得到的分辨率值大肆宣传,固然他们的算法比双三次插值算法等算法先进很多,但是事实是图像的细节不是凭空造出来的。因为插值分辨率是数码相机通过自

12、身的内置软件来增加图像的像素,从而达到增大分辨率的效果。二、插值的影响使用数码变焦拍出来的照片不清晰,这是数码变焦最遭人垢病的地方,事实上,这只是一种片面的说法。数码变焦对照片清晰度的影响有多大,取决于数码相机在变焦时,CCD是否进行了插值运算。在使用高像素的情况下,如果采用数码变焦进行拍摄,则此时CCD并不会有任何插值运算,数码变焦对最终得到的数码照片的清晰度的影响将会因此而变得极其有限。举个例子,一台CCD像素为520万、最大分辨率为2560×1920的数码相机,如果采用2×的数码变焦来进行拍摄的话,那么成像过程中只会有一半CCD在工作。换句话说,数码相机并不会使用类似

13、“在一个像素点周围添加八个像素点”的插值算法进行成像,而是通过降低分辨率的方法,即1280×960这个分辨率指标来进行成像。对于一般的数码照片来说,1280×960这个分辨率指标已经足够优秀了,它与2560×1920分辨率的差别将会因为没有插值运算的参与而变得可以接受。不过这种现象只限于某些比较高级的数码相机,对于那些千元以下的定焦数码相机来说,使用数码变焦就意味着必然的插值运算,牺牲分辨率的后果使得照片拍摄者只能有两个选择:要么得到一张模糊不清的“全尺寸”照片、要么得到一张质量可以保证但分辨率只有类似320×240这样的“迷你”照片。图像插值“插值”最

14、初是电脑的术语,现在引用到数码图像的处理上。即图像放大时,像素也相应地增加,增加的过程就是“插值”程序自动选择信息较好的像素作为增加的像素,而并非只使用临近的像素,所以在放大图像时,图像看上去会比较平滑、干净。不过需要说明的是插值并不能增加图像信息。通俗地讲插值的效果实际就是给一杯香浓的咖啡兑了一些白开水。常见的插值方法及其原理1. 最临近像素插值:图像出现了马赛克和锯齿等明显走样的原因。不过最临近插值法的优点就是速度快。2. 线性插值(Linear:线性插值速度稍微要慢一点,但效果要好不少。所以线性插值是个不错的折中办法。3. 其他插值方法:立方插值,样条插值等等,它们的目的是试图让插值的曲

15、线显得更平滑,为了达到这个目的,它们不得不利用到周围若干范围内的点,不过计算量显然要比前两种大许多。在以上的基础上,有的软件还发展了更复杂的改进的插值方式譬如S-SPline、Turbo Photo 等。它们的目的就是使边缘的表现更完美。评断插值结果的好坏第一个标准:走样现象的轻重。放大图像的时候,要看边缘是否产生了锯齿,缩小图像的时候,看看是否有干扰条纹,边缘是否平顺。第二个标准:边缘是否清晰?同样贴两个例子,左边是差的算法,右边是好的算法(如图1。第三个标准:过渡带的层次感细节感怎么样?贴两个例子,左边是差的算法,右边是好的算法(如图2。图像像素点坐标有可能对应于输入图像上几个像素点之间的

16、位置,这个时候就需要通过灰 度插值处理来计算出该输出点的灰度值1。图像插值是图像超分辨处理的重要环节,不同 的插值算法有不同的精度,插值算法的好坏也直接影响着图像的失真程度。最常用的插值 算法有三种: 最近邻插值、双线性插值、立方卷积插值,其中使用立方卷积插值达到的效果是最佳 的。 2 几种插值算法原理分析 插值算法所应用的领域较多,对图像进行缩放处理是比较典型的应用,由于图像像素 的灰度值是离散的, 因此一般的处理方法是对原来在整数点坐标上的像素值进行插值生成 连续的曲面, 然后在插值曲面上重新采样以获得缩放图像像素的灰度值。缩放处理从输出 图像出发,采用逆向映射方法,即在输出图像中找到与之

17、对应的输入图像中的某个或某几 个像素,采用这种方法能够保证输出图像中的每个像素都有一个确定值,否则,如果从输 入图像出发来推算输出图像,输出图像的像素点可能出现无灰度值的情况。因为,对图像 进行缩放处理时输出图像像素和输入图像之间可能不再存在着一一对应关系。下面分别对 三种算法予以介绍。 2.1 最近邻插值算法最简单的插值法是最近邻插值法,也叫零阶插值法2。即选择离 它所映射到的位置最近的输入像素的灰度值为插值结果。对二维图像,是取待测样点周围4 个相邻像素点中距离最近1 个相邻点的灰度值作为待测样点的像素值。若几何变换后输出 图像上坐标为(x,y的对应位置为(m,n),则示意图如下所示: 2

18、.2 双线性插值算法双线性插值又叫一阶插值法3,它要经过三次插值才能获得最终 结果,是对最近邻插值法的一种改进,先对两水平方向进行一阶线性插值,然后再在垂直 方向上进行一阶线性插值。 2.3 立方卷积插值算法立方卷积插值又叫双三次插值2,是对双线性插值的改进,是 一种较为复杂的插值方式,它不仅考虑到周围四个直接相邻像素点灰度值的影响,还考虑 到它们灰度值变化率的影响。 此法利用待采样点附近16 个像素点的灰度值作三次插值进行计算,还用到如图3 所示 的三次多项式 S( w。 首先确定 16 个邻点坐标,设其排成的矩阵为2: 方卷积法就退化成双线性插值法。由此看来,立方卷积可看成两部分组成,其中

19、( 1 | m| 代表直接邻点的灰度值对待采样点的影响, 而l 则代表邻点间灰度值的变化率对待 采样点的影响。与双线性插值法相比, 立方卷积法不仅考虑了直接邻点的灰度值对待采样 点的影响,还考虑了邻点间灰度值变化率的影响, 因此后者所求得的待采样点灰度值更为精 确。 3 三种插值算法处理结果及分析 通过采用三种插值算法对图像进行缩放处理操作,可以直观比较它们处理后的效果。 以下是对128*128 像素的灰度图像进行放大2 倍处理得到256*256 尺寸的图像。 3.1 缩放操作效果图(a)128*128 源图 (b)最近邻插值放大图(c)双线性插值放 大图 (d 立方卷积插值放大图图 4 效果图3.2 结果分析从三种插值算法处理图像后的对 比结果可知:最近邻插值法效果最差,有明显的锯齿状,且细节部分很不清晰。双线性插 值效果其次,锯齿难以察觉,但是图像的边缘有轻微的模糊现象。立方卷积插值则是三种 插值法中效果最佳的,它能克服前两插值法的缺点,产生比较清晰的图像边缘,计算精度 较高。 4 三种插值算法优缺点总结 最近邻插值法的优点是计算量很小,算法也简单,因此运算速度

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论