首页> 中国专利> 一种基于线性插值运算中误差估计的图像放大方法

一种基于线性插值运算中误差估计的图像放大方法

摘要

本发明属于数字图像处理与视频显示技术领域,具体涉及基于线性插值运算的图像放大方法。本发明提出一种基于线性插值运算的图像放大方法,能较好的保留图像高频信息,具体包括以下步骤:a.计算插值点P的位置;b.获取插值点P所处位置的相邻4个像素点的像素值;c.通过相邻4个像素点的像素值计算线性插值的误差估计,将所述误差估计作为线性插值结果的补偿;d.计算线性插值结果与误差估计之和,其结果为插值点P的像素值。本发明克服了原线性插值运算导致高频退化、图像模糊的缺陷。通过本发明处理后的图像放大效果基本达到了双三次插值算法处理后的图像效果,且运算量小,易于硬件实现。

著录项

  • 公开/公告号CN101163190A

    专利类型发明专利

  • 公开/公告日2008-04-16

    原文格式PDF

  • 申请/专利权人 四川虹微技术有限公司;

    申请/专利号CN200710202354.4

  • 发明设计人 张宇;

    申请日2007-11-01

  • 分类号H04N1/393(20060101);H04N5/208(20060101);

  • 代理机构成都虹桥专利事务所;

  • 代理人李顺德

  • 地址 610041 四川省成都市高新区天府大道南延线高新孵化园8号楼1009室

  • 入库时间 2023-12-17 19:58:27

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-12-22

    未缴年费专利权终止 IPC(主分类):H04N1/393 授权公告日:20091125 终止日期:20161101 申请日:20071101

    专利权的终止

  • 2009-11-25

    授权

    授权

  • 2008-06-11

    实质审查的生效

    实质审查的生效

  • 2008-04-16

    公开

    公开

说明书

技术领域

本发明属于数字图像处理与视频显示技术领域,具体涉及基于线性插值运算的图像放大方法。

背景技术

图像放大是数字图像处理中最重要的技术之一,常用的放大方法有最邻近插值、双线性插值、双三次插值等。最邻近插值简单、速度快,但放大后的图像有严重的马赛克现象;双线性插值会退化图像的高频部分,造成图像的模糊;双三次插值算法较好的保留图像高频信息,边缘更锐化、细节更清晰,但运算量和硬件实现难度都很大。

发明内容

本发明所要解决的技术问题是,提出一种基于线性插值运的图像放大方法,能较好的保留图像高频信息,使边缘更锐化、细节更清晰。

本发明为解决上述技术问题所采用的技术方案是,一种基于线性插值运算中误差估计的图像放大方法,其特征在于,具体包括以下步骤:

a、计算插值点P的位置;

b、获取插值点P所处位置的相邻4个像素点的像素值;

c、通过相邻4个像素点的像素值计算线性插值的误差估计,将所述误差估计作为线性插值结果的补偿;

d、计算线性插值结果与误差估计之和,其结果为插值点P的像素值。

所述相邻4个像素点,具体的是,在做水平方向的插值时为水平位置的4个相邻像素点;做垂直方向的插值时为垂直位置的4个相邻像素点;

所述误差估计具体为,在做水平方向的插值时误差估计为:

f(Pi)+f(Pi+1)-f(Pi-1)-f(Pi+2)4·x·(1-x);

其中插值点P水平方向相邻4点的像素值分别为f(Pi-1)、f(Pi)、f(Pi+1)、f(Pi+2);x为插值点P与相邻像素点Pi的水平距离,x∈(0,1);那么,水平方向做插值时插值点P的像素值f(P)为:

f(P)=f(Pi)+[f(Pi+1)-f(Pi)]·x+f(Pi)+f(Pi+1)-f(Pi-1)-f(Pi+2)4·x·(1-x);

在做垂直方向的插值时误差估计为:f(Pj)+f(Pj+1)-f(Pj-1)-f(Pj+2)4·y·(1-y);其中插值点P垂直方向相邻4点的像素值分别为f(Pj-1)、f(Pj)、f(Pj+1)、f(Pj+2);y为插值点P与相邻像素点Pi的垂直距离,y∈(0,1);那么,垂直方向做插值时插值点P的像素值f(P)为:

f(P)=f(Pj)+[f(Pj+1)-f(Pj)]·y+f(Pj)+f(Pj+1)-f(Pj-1)-f(Pj+2)4·y·(1-y).

本发明的有益效果是,原双线性插值方法的插值点由原图像周围4个像素点的值确定,通过本发明引入误差估计参变量的改进后,插值点像素值的确定参考了该点周围16个像素点的值。本发明克服了原线性插值运算导致高频退化、图像模糊的缺陷。通过本发明处理后的图像放大效果基本达到了双三次插值算法处理后的图像效果,且运算量小,易于硬件实现。

附图说明

图1为本发明原理图;

图2为误差估计的推导示意图。

具体实施方式

线性插值中相对于三次插值的误差估计E的计算原理如下:

线性插值如图1所示,Pi与Pi+1为插值点P在水平方向上的相邻2像素点,线性插值的公式f′(P)=f(Pi)+[f(Pi+1)-f(Pi)]·x,x∈(0,1);线性插值不光滑,会造成图像高频部分的退化。要保留图像高频信息,需要插值点P与像素点形成的曲线尽量光滑,所以引入误差估计E,完善插值点P的像素值的计算方法:

f(P)=f(Pi)+[f(Pi+1)-f(Pi)]·x+E,x∈(0,1);

误差估计E的推导方法如下:

牛顿一次插值多项式为:

f(x)=f(x0)+f(x0+h)-f(x0)h(x-x0)+f(ξ)2(x-x0)(x-(x0+h)),ξ(x0,x0+h)---(1)

其中,f(ξ)2(x-x0)(x-(x0+h))为牛顿一次插值多项式的误差估计;

如图2所示,-1、0、1、2分别表示插值点x在水平方向上相邻4点的位置,若:x0=-1,h=3,代入(1)式,得到:

f(x)=f(-1)+f(2)-f(-1)3(x+1)+f(ξ1)2(x+1)(x-2),ξ1(-1,2)---(2)

若:x0=0,h=1,代入(1)式,得到:

f(x)=f(0)+[f(1)-f(0)]·x+f(ξ2)2x(x-1),ξ2(0,1)---(3)

在本发明中作误差估计时,认为f″(x)在x∈(-1,2)上变换很小,即认为:f″(ξ1)≈f″(ξ2),并统一用f″(σ)表示,并由式(2)、式(3)两式相减得到:

f(σ)f(-1)+f(2)-f(-1)3(x+1)-f(0)-[f(1)-f(0)]·x

令x=1/2,得到:

f(σ)f(-1)+f(2)2-f(0)+f(1)2---(4)

当x=1/2时,如图2所示,A点的值为:

f(0)+[f(1)-f(0)]·(1/2);B点的值为:

f(-1)+f(2)-f(-1)3((1/2)+1);

由上,线段AB的长度作为f″(σ)的近似估计值,将式中(3)中作为线性插值的误差error,并以变量E作为误差error的估计值。将f(σ)=f(-1)+f(2)2-f(0)+f(1)2带入

当x=1/2时,得出结论,误差估计E=AB/8。

再用二次函数并引入误差估计值E,来近似估计error曲线ferror(x),如图2所示得到:f1(x)=-4·E·x2+(4·E-a)·x;f2(x)=-ax,error曲线为曲线f1(x)与直线f2(x)之差:因此:ferror(x)=4·E·x·(1-x);

将E=AB/8带入上式,得到ferror(x)=f(0)+f(1)-f(-1)-f(2)4·x·(1-x);

E为ferror(x)的估计值,令插值点水平方向相邻4点分别为Pi-1、Pi、Pi+1、Pi+2,那么有水平方向插值时的误差估计值E为:

E=ferror(x)=f(Pi)+f(Pi+1)-f(Pi-1)-f(Pi+2)4·x·(1-x);

同理,令插值点水平方向相邻4点分别为Pj-1、Pj、Pj+1、Pj+2,由上面的推导可知垂直方向上插值时的误差估计值E为:

f(Pj)+f(Pj+1)-f(Pj-1)-f(Pj+2)4·y·(1-y).

实施例

在实现图像放大过程中,本发明先对图像在水平方向作放大,得到一个过渡图像,然后再对过渡图像作垂直方向的放大,得到最终的放大图像。当然也可以先做垂直方向的放大再做水平方向的放大。放大的实质是将二维信号作一维方向上的插值运算。

令原始图像大小为M×N,放大后的图像大小为X×Y,并且第一行(列)以零行(列)开始计数,最后一行(列)为M-1行(N-1列)。

首先作水平方向的插值运算,具体步骤如下:

1、对于原始图像第r行(r=0,1,2……M-1),依次计算出插值点P的水平位置s:s=-0.5+N/(2*Y)+C*N/Y;其中,C=0,1,2……Y-1为图像放大后的列序数。

由此可以找到插值点P所处位置的前后相邻四个已知点:Pi-1=floor(s)-1、Pi=floor(s)、Pi+1=floor(s)+1、Pi+2=floor(s)+2;其中,函数floor(s)为s向下取整。

2、计算出P到Pi的距离x:x=s-floor(s);

3、根据本发明提出的插值公式,计算出插值点P的像素值:

f(P)=f(Pi)+[f(Pi+1)-f(Pi)]·x+f(Pi)+f(Pi+1)-f(Pi-1)-f(Pi+2)4·x·(1-x);

4、依次完成0至M-1行的水平方向插值运算,并由此完成整个图像在水平方向的放大,得到一个过渡图像T,其大小为M×Y。

再进行垂直方向的插值,具体步骤如下:

5、对于过渡图像T的第C列,C=0,1,2……Y-1,在垂直方向上,依次计算出插值点P的垂直位置t为:t=-0.5+M/(2*X)+R*M/X,其中,R=0,1,2……X-1,为图像放大后的行序数;

得到待插点P所处位置的上下相邻四个已知点:Pj-1=floor(t)-1、Pj=floor(t)、Pj+1=floor(t)+1、Pj+2=floor(t)+2;

6、计算出P到Pj的距离y:y=t-floor(t);

7、根据本发明提出的插值公式,计算出待插点P的像素值:

f(P)=f(Pj)+[f(Pj+1)-f(Pj)]·y+f(Pj)+f(Pj+1)-f(Pj-1)-f(Pj+2)4·y·(1-y);

8、依次完成0至Y-1列的垂直方向插值运算,并由此完成整个过渡图像T在垂直方向的放大,得到最终放大的图像,其大小为X×Y。

通过实验验证:经本发明处理过的图像比经双线性插值处理后的图像有明显改善,总体放大效果与双三次插值相当,但运算量远低于双三次插值运算。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号