APP下载

数字图像放大方法探讨

2014-06-18陈旭光

新媒体研究 2014年6期
关键词:数字图像

摘 要 越来越多的数字图像出现在我们的生活中,作为应用和理论的交叉点,数字图像的放大方法受到了广泛的关注。文章以介绍三种放大算法作为切入点,力图使读者对图像放大和图像放大方法的选择有初步的认识。

关键词 数字图像;放大;算法选择

中图分类号:TP391 文献标识码:A 文章编号:1671-7597(2014)06-0069-02

1 数字图像放大方法介绍

我们知道,放大镜可以使图像变大而且图像的边缘是光滑和清晰的,而计算机上的有些图像经过放大后会有锯齿或者马赛克现象。这是因为光学图像可以做到无限细分,而数字图像的大小受像素数多少的制约。而数字图像的放大过程就是给原图像中添加信息。也就是添加像素,提高分辨率,从而使得数字图像变大的过程。但是,怎样才能使得添加了像素的新图像看起来是可接受的,这就需要根据原图像中的初始像素和相应的算法来解决这个问题。

数字图像的放大方法有很多,基本上可以分为插值、小波变换和偏微分方程处理等几类。插值算法是最常用的放大方法,常见的插值放大算法有最近邻域法、双线性法、双三次插值、三次样条插值和曲面插值算法等,图像处理软件的图像放大(比如Photoshop)、数码产品的数码变焦大多采用插值算法。小波变换通过将图像进行小波分解、处理、重构的手段,较好的保留了图像边界细节,但小波变换计算量大,速度慢。基于偏微分方程的放大算法则涉及成像原理、光照度、边缘梯度、像素关系等方面,较好的保证了图像的柔和且边缘清晰。

2 图像放大原理介绍

本文中主要介绍了三种数字图像放大方法。分别是基于插值方法的双三次放大方法和双三次放大方法,以及基于非线性偏微分方程的Self-snake方法。基于插值的前两种方法具有速度快,适应性强的特点,不足之处是视觉效果稍有些差;基于Self-snake方法放大的图像视觉效果相对较好,图像边缘清晰且连通性良好,但是处理速度比较慢。

2.1 双线性放大方法介绍

双线性插值:双线性插值法又称一阶插值法,其核心思想是在垂直和水平两个方向分别进行一次线性插值。以待插值点和周围最近的四个像素点之间的距离作权值,通过加权求和得到待插像素值。权值和距离成反比,待插值点距离原图像中哪个像素点越近,受到该像素点的影响也就越大。插值结果和按什么顺序分别对水平和垂直方向插值无关。插值原理如图1所示。

图1 双线性插值示意图

如果放大图像中的某个坐标为(m,n)的像素点对应着原图像中坐标为(p+i,q+j)的像素点,显然i,j属于[0,1]区间。也就是说(p+i,q+j)在原图像的对应位置位于(p,q)、(p+1,q)、(p,q+1)、(p+1,q+1)范围内。则像素点(m,n)的值f(p+i,q+j)为:

(1)

其中f(p,q) 像素点(p,q)的值。以同样的方法可以得到其他像素点的值。

双线性方法对图像进行放大后结果如图2所示。

(a)Bear原图 (b)双线性放大2倍 (c)双线性放大3倍

图2 双线性算法处理效果

2.2 双三次插值放大方法介绍

双三次插值:双三次插值又被称为双立方插值,它以待插值点在原图像中对应的最邻近的16个像素值作为数据源,使用三次函数作为插值函数。既考虑了最邻近的4个像素值的影响,也考虑了邻近像素值的变化快慢问题。所以它比双线性插值精度高,获得的图像边缘也较清晰,但计算量也更大。

其算法示意图如图3所示。

图3 双三次插值示意图

双三次插值采用二次多项式S(x)作为插值函数,其数学表达式为:

(2)

离散化后的双三次插值公式可以表示为:

(3)

公式中A、B、C均为矩阵,且:

(4)

(5)

(6)

其中f(i,j)为源图像(i,j)点的值。

放大结果如图4所示。

(a)Bear原图 (b)双三次放大2倍 (c)双三次放大3倍

图4 双三次算法处理效果

2.3 Self-snake方法介绍

Self-snake方法:Self-snake方法是将泛函和偏微分方程相结合来实现图像放大。基本原理是把原始图像每个像素点当成一个温度源,用一个最小化封闭曲线“能量”泛函去分割图像。放大的过程就是模拟从高温点向低温点扩散,既可以使得图像边缘相对平滑,而且边缘模糊现象有所改善。

对于数字图像这样的离散数据,可以用差分计算替代微分计算,即用半点离散化近似表示div算子。由Self-snake模型,可以得出下面的计算公式:

(7)

以第一项为例说明:

其余三项,计算方法相同。可得到公式(8):

(8)

放大结果如图5所示。

(a)Bear原图 (b)Self-snake放大2倍 (c)Self-snake放大3倍

图5 Self-Snake算法处理结果

3 结论

图像放大算法的种类很多,为了让读者对数字图像放大有初步认知,文章仅介绍了具有代表性的三种图像放大方法。图像放大的效果与所添加的像素值有着密切的关系,这就和放大算法的选则,迭代的次数和步长的设置等因素有关。通常强调放大效果就要考虑较多的因素,所以算法相对复杂;如果追求放大速度,则可以选取一些计算量较小的经典算法。总之,在放大算法的选取时要权衡放大效果和效率之间的关系。

当然,一个优秀的算法不但能保证良好的放大效果,还能在一定程度上降低计算量。因此,在寻求优良算法的研究上依然有很多工作可以做。

参考文献

[1]帅金晓,颜永红,彭琰,罗江平.双线性插值图像放大算法优化及硬件实现[J].核电子学与探测技术,2009(1).

[2]尤玉虎,周孝宽.数字图像最佳插值算法的研究[J].中国空间科学技术,2005,6(3).

[3]王蕾.基于偏微分方程的图像放大研究[D].西安:西北大学,2009.

[4]陈旭光.图像放大系统设计与实现[D].西安.西北大学,2012.endprint

摘 要 越来越多的数字图像出现在我们的生活中,作为应用和理论的交叉点,数字图像的放大方法受到了广泛的关注。文章以介绍三种放大算法作为切入点,力图使读者对图像放大和图像放大方法的选择有初步的认识。

关键词 数字图像;放大;算法选择

中图分类号:TP391 文献标识码:A 文章编号:1671-7597(2014)06-0069-02

1 数字图像放大方法介绍

我们知道,放大镜可以使图像变大而且图像的边缘是光滑和清晰的,而计算机上的有些图像经过放大后会有锯齿或者马赛克现象。这是因为光学图像可以做到无限细分,而数字图像的大小受像素数多少的制约。而数字图像的放大过程就是给原图像中添加信息。也就是添加像素,提高分辨率,从而使得数字图像变大的过程。但是,怎样才能使得添加了像素的新图像看起来是可接受的,这就需要根据原图像中的初始像素和相应的算法来解决这个问题。

数字图像的放大方法有很多,基本上可以分为插值、小波变换和偏微分方程处理等几类。插值算法是最常用的放大方法,常见的插值放大算法有最近邻域法、双线性法、双三次插值、三次样条插值和曲面插值算法等,图像处理软件的图像放大(比如Photoshop)、数码产品的数码变焦大多采用插值算法。小波变换通过将图像进行小波分解、处理、重构的手段,较好的保留了图像边界细节,但小波变换计算量大,速度慢。基于偏微分方程的放大算法则涉及成像原理、光照度、边缘梯度、像素关系等方面,较好的保证了图像的柔和且边缘清晰。

2 图像放大原理介绍

本文中主要介绍了三种数字图像放大方法。分别是基于插值方法的双三次放大方法和双三次放大方法,以及基于非线性偏微分方程的Self-snake方法。基于插值的前两种方法具有速度快,适应性强的特点,不足之处是视觉效果稍有些差;基于Self-snake方法放大的图像视觉效果相对较好,图像边缘清晰且连通性良好,但是处理速度比较慢。

2.1 双线性放大方法介绍

双线性插值:双线性插值法又称一阶插值法,其核心思想是在垂直和水平两个方向分别进行一次线性插值。以待插值点和周围最近的四个像素点之间的距离作权值,通过加权求和得到待插像素值。权值和距离成反比,待插值点距离原图像中哪个像素点越近,受到该像素点的影响也就越大。插值结果和按什么顺序分别对水平和垂直方向插值无关。插值原理如图1所示。

图1 双线性插值示意图

如果放大图像中的某个坐标为(m,n)的像素点对应着原图像中坐标为(p+i,q+j)的像素点,显然i,j属于[0,1]区间。也就是说(p+i,q+j)在原图像的对应位置位于(p,q)、(p+1,q)、(p,q+1)、(p+1,q+1)范围内。则像素点(m,n)的值f(p+i,q+j)为:

(1)

其中f(p,q) 像素点(p,q)的值。以同样的方法可以得到其他像素点的值。

双线性方法对图像进行放大后结果如图2所示。

(a)Bear原图 (b)双线性放大2倍 (c)双线性放大3倍

图2 双线性算法处理效果

2.2 双三次插值放大方法介绍

双三次插值:双三次插值又被称为双立方插值,它以待插值点在原图像中对应的最邻近的16个像素值作为数据源,使用三次函数作为插值函数。既考虑了最邻近的4个像素值的影响,也考虑了邻近像素值的变化快慢问题。所以它比双线性插值精度高,获得的图像边缘也较清晰,但计算量也更大。

其算法示意图如图3所示。

图3 双三次插值示意图

双三次插值采用二次多项式S(x)作为插值函数,其数学表达式为:

(2)

离散化后的双三次插值公式可以表示为:

(3)

公式中A、B、C均为矩阵,且:

(4)

(5)

(6)

其中f(i,j)为源图像(i,j)点的值。

放大结果如图4所示。

(a)Bear原图 (b)双三次放大2倍 (c)双三次放大3倍

图4 双三次算法处理效果

2.3 Self-snake方法介绍

Self-snake方法:Self-snake方法是将泛函和偏微分方程相结合来实现图像放大。基本原理是把原始图像每个像素点当成一个温度源,用一个最小化封闭曲线“能量”泛函去分割图像。放大的过程就是模拟从高温点向低温点扩散,既可以使得图像边缘相对平滑,而且边缘模糊现象有所改善。

对于数字图像这样的离散数据,可以用差分计算替代微分计算,即用半点离散化近似表示div算子。由Self-snake模型,可以得出下面的计算公式:

(7)

以第一项为例说明:

其余三项,计算方法相同。可得到公式(8):

(8)

放大结果如图5所示。

(a)Bear原图 (b)Self-snake放大2倍 (c)Self-snake放大3倍

图5 Self-Snake算法处理结果

3 结论

图像放大算法的种类很多,为了让读者对数字图像放大有初步认知,文章仅介绍了具有代表性的三种图像放大方法。图像放大的效果与所添加的像素值有着密切的关系,这就和放大算法的选则,迭代的次数和步长的设置等因素有关。通常强调放大效果就要考虑较多的因素,所以算法相对复杂;如果追求放大速度,则可以选取一些计算量较小的经典算法。总之,在放大算法的选取时要权衡放大效果和效率之间的关系。

当然,一个优秀的算法不但能保证良好的放大效果,还能在一定程度上降低计算量。因此,在寻求优良算法的研究上依然有很多工作可以做。

参考文献

[1]帅金晓,颜永红,彭琰,罗江平.双线性插值图像放大算法优化及硬件实现[J].核电子学与探测技术,2009(1).

[2]尤玉虎,周孝宽.数字图像最佳插值算法的研究[J].中国空间科学技术,2005,6(3).

[3]王蕾.基于偏微分方程的图像放大研究[D].西安:西北大学,2009.

[4]陈旭光.图像放大系统设计与实现[D].西安.西北大学,2012.endprint

摘 要 越来越多的数字图像出现在我们的生活中,作为应用和理论的交叉点,数字图像的放大方法受到了广泛的关注。文章以介绍三种放大算法作为切入点,力图使读者对图像放大和图像放大方法的选择有初步的认识。

关键词 数字图像;放大;算法选择

中图分类号:TP391 文献标识码:A 文章编号:1671-7597(2014)06-0069-02

1 数字图像放大方法介绍

我们知道,放大镜可以使图像变大而且图像的边缘是光滑和清晰的,而计算机上的有些图像经过放大后会有锯齿或者马赛克现象。这是因为光学图像可以做到无限细分,而数字图像的大小受像素数多少的制约。而数字图像的放大过程就是给原图像中添加信息。也就是添加像素,提高分辨率,从而使得数字图像变大的过程。但是,怎样才能使得添加了像素的新图像看起来是可接受的,这就需要根据原图像中的初始像素和相应的算法来解决这个问题。

数字图像的放大方法有很多,基本上可以分为插值、小波变换和偏微分方程处理等几类。插值算法是最常用的放大方法,常见的插值放大算法有最近邻域法、双线性法、双三次插值、三次样条插值和曲面插值算法等,图像处理软件的图像放大(比如Photoshop)、数码产品的数码变焦大多采用插值算法。小波变换通过将图像进行小波分解、处理、重构的手段,较好的保留了图像边界细节,但小波变换计算量大,速度慢。基于偏微分方程的放大算法则涉及成像原理、光照度、边缘梯度、像素关系等方面,较好的保证了图像的柔和且边缘清晰。

2 图像放大原理介绍

本文中主要介绍了三种数字图像放大方法。分别是基于插值方法的双三次放大方法和双三次放大方法,以及基于非线性偏微分方程的Self-snake方法。基于插值的前两种方法具有速度快,适应性强的特点,不足之处是视觉效果稍有些差;基于Self-snake方法放大的图像视觉效果相对较好,图像边缘清晰且连通性良好,但是处理速度比较慢。

2.1 双线性放大方法介绍

双线性插值:双线性插值法又称一阶插值法,其核心思想是在垂直和水平两个方向分别进行一次线性插值。以待插值点和周围最近的四个像素点之间的距离作权值,通过加权求和得到待插像素值。权值和距离成反比,待插值点距离原图像中哪个像素点越近,受到该像素点的影响也就越大。插值结果和按什么顺序分别对水平和垂直方向插值无关。插值原理如图1所示。

图1 双线性插值示意图

如果放大图像中的某个坐标为(m,n)的像素点对应着原图像中坐标为(p+i,q+j)的像素点,显然i,j属于[0,1]区间。也就是说(p+i,q+j)在原图像的对应位置位于(p,q)、(p+1,q)、(p,q+1)、(p+1,q+1)范围内。则像素点(m,n)的值f(p+i,q+j)为:

(1)

其中f(p,q) 像素点(p,q)的值。以同样的方法可以得到其他像素点的值。

双线性方法对图像进行放大后结果如图2所示。

(a)Bear原图 (b)双线性放大2倍 (c)双线性放大3倍

图2 双线性算法处理效果

2.2 双三次插值放大方法介绍

双三次插值:双三次插值又被称为双立方插值,它以待插值点在原图像中对应的最邻近的16个像素值作为数据源,使用三次函数作为插值函数。既考虑了最邻近的4个像素值的影响,也考虑了邻近像素值的变化快慢问题。所以它比双线性插值精度高,获得的图像边缘也较清晰,但计算量也更大。

其算法示意图如图3所示。

图3 双三次插值示意图

双三次插值采用二次多项式S(x)作为插值函数,其数学表达式为:

(2)

离散化后的双三次插值公式可以表示为:

(3)

公式中A、B、C均为矩阵,且:

(4)

(5)

(6)

其中f(i,j)为源图像(i,j)点的值。

放大结果如图4所示。

(a)Bear原图 (b)双三次放大2倍 (c)双三次放大3倍

图4 双三次算法处理效果

2.3 Self-snake方法介绍

Self-snake方法:Self-snake方法是将泛函和偏微分方程相结合来实现图像放大。基本原理是把原始图像每个像素点当成一个温度源,用一个最小化封闭曲线“能量”泛函去分割图像。放大的过程就是模拟从高温点向低温点扩散,既可以使得图像边缘相对平滑,而且边缘模糊现象有所改善。

对于数字图像这样的离散数据,可以用差分计算替代微分计算,即用半点离散化近似表示div算子。由Self-snake模型,可以得出下面的计算公式:

(7)

以第一项为例说明:

其余三项,计算方法相同。可得到公式(8):

(8)

放大结果如图5所示。

(a)Bear原图 (b)Self-snake放大2倍 (c)Self-snake放大3倍

图5 Self-Snake算法处理结果

3 结论

图像放大算法的种类很多,为了让读者对数字图像放大有初步认知,文章仅介绍了具有代表性的三种图像放大方法。图像放大的效果与所添加的像素值有着密切的关系,这就和放大算法的选则,迭代的次数和步长的设置等因素有关。通常强调放大效果就要考虑较多的因素,所以算法相对复杂;如果追求放大速度,则可以选取一些计算量较小的经典算法。总之,在放大算法的选取时要权衡放大效果和效率之间的关系。

当然,一个优秀的算法不但能保证良好的放大效果,还能在一定程度上降低计算量。因此,在寻求优良算法的研究上依然有很多工作可以做。

参考文献

[1]帅金晓,颜永红,彭琰,罗江平.双线性插值图像放大算法优化及硬件实现[J].核电子学与探测技术,2009(1).

[2]尤玉虎,周孝宽.数字图像最佳插值算法的研究[J].中国空间科学技术,2005,6(3).

[3]王蕾.基于偏微分方程的图像放大研究[D].西安:西北大学,2009.

[4]陈旭光.图像放大系统设计与实现[D].西安.西北大学,2012.endprint

猜你喜欢

数字图像
广州市稻田土壤大孔隙特征研究
离散数列的傅里叶变换
数字图像处理在机械零件测量中的应用
沥青路面离析的数字图像评价方法
数字图像时代应用型本科院校美术学专业转型研究
一种对矢量地图的理论研究
《数字图像处理》课程的驱动教学实践
基于数字图像处理的图像分析的研究
数字图像修复技术应用于文物领域的研究
数字图像取证