首页 / 专利库 / 手术 / 图像空间 / 一种基于区域一致性的图像插值算法

一种基于区域一致性的图像插值算法

阅读:632发布:2023-01-30

专利汇可以提供一种基于区域一致性的图像插值算法专利检索,专利查询,专利分析的服务。并且一种基于区域一致性的图像插值 算法 ,首先确定插值点在原始图像中的 位置 ,然后利用 阈值 判断对插值点周围进行区域划分,然后判断插值点所属区域,之后利用插值公式求取插值点 像素 值,最后输出插值后的图像。解决了传统插值算法对边缘区域划分不准确造成的图像 质量 较低、运算复杂程度高,占用内存空间多,在 硬件 上难以实现的技术问题,而且与边缘自适应算法相比,在不显著降低图像质量的前提下,大大降低了算法复杂度,使得插值后的图像获得较好的视觉效果,是一种运算简单、效果好、易于 硬件实现 的图像放大的插值算法。,下面是一种基于区域一致性的图像插值算法专利的具体信息内容。

1.一种基于区域一致性的图像插值算法,其特征在于,包括如下步骤:
(1)原始图像为F(x,y),放大后的图像为H(x,y),获得放大后的图像中的一个插值点h(i,j);
(2)利用阈值判断对插值点进行区域划分,确定插值点所属区域,包括:
当插值点h(i,j)与原像素点同列时,获得所述插值点上方的原始像素点f(x,y),获得所述插值点下方的原始像素点f(x+1,y),设y1=|f(x,y)-f(x+1,y)|,t为设定的阈值,若y1<t,则插值点h(i,j)与f(x,y)和f(x+1,y)属于同一区域,反之,插值点在f(x,y)所属区域和f(x+1,y)所属区域的过渡位置
(3)根据所述步骤(2)中确定的区域,选择插值公式,进行插值计算,包括:
当插值点h(i,j)与原像素点同列,插值点与f(x,y)和f(x+1,y)属于同一区域时,采用一维线性插值公式:H(i,j)=f(x,y)*(1-dx)+f(x+1,y)*dx,其中dx为插值点到f(x,y)的距离,满足0≤dx≤1;
当插值点h(i,j)与原像素点同列,插值点在f(x,y)所属区域和f(x+1,y)所属区域的过渡位置时,采用一维线性插值公式:
H(i,j)=[f(x,y)*(1-dx)*0.5+f(x+1,y)*dx*0.5]/((1-dx)*0.5+dx*0.5),dx为插值点到f(x,y)的距离,满足0≤dx≤1;
(4)根据所述步骤(1)-(3),对所有插值点进行插值处理,得到新的图像。
2.根据权利要求1所述的图像插值算法,其特征在于:
在所述步骤(2)中,还包括插值点h(i,j)与原像素点同行时,获得所述插值点左侧的原始像素点f(x,y),获得所述插值点右侧的原始像素点f(x,y+1),y2=|f(x,y)-f(x,y+1)|,若y2<t,则插值点与f(x,y)和f(x,y+1)属于同一区域,反之,插值点在f(x,y)所属区域和f(x,y+1)所属区域的过渡位置;
在所述步骤(3)中,还包括当插值点h(i,j)与原始像素同行,且插值点与f(x,y)和f(x,y+1)属于同一区域时,采用一维线性插值公式:H(i,j)=f(x,y)*(1-dy)+f(x+1,y)*dy,其中dy为插值点到f(x,y)的距离,满足0≤dy≤1;
当插值点h(i,j)与原始像素同行,且所述插值点h(i,j)在f(x,y)所属区
域和f(x,y+1所属区域的过渡位置时,采用一维线性插值公式:H(i,j)=[f(x,y)*(1-dy)*0.5+f(x+1,y)*dy*0.5]/((1-dy)*0.5+dy*0.5),其中dy为插值点到f(x,y)的距离,满足0≤dy≤1。
3.根据权利要求1或2所述的图像插值算法,其特征在于:
在所述步骤(2)中,还包括当所述插值点h(i,j)与原像素点不同行且不同列时,获得所述插值点左上、右上角、左下角和右下角的原始像素点分别为:f(x,y)、f(x,y+1)、f(x+1,y)、f(x+1,y+1),设y3=|f(x,y)-f(x+1,y+1)|、y4=|f(x,y+1)-f(x+1,y)|,A)当y4<t且y3<t时,则所述插值点与这四个原始像素点属于同一个区域;
B)当y3<t且y4>t时,则所述插值点与f(x,y)和f(x+1,y+1)两个原始像素点属于同一区域;
C)当y3>t且y4<t时,则所述插值点与f(x,y+1)和f(x+1,y)两个原始像素点属于同一区域;
D)当y3>t且y4>t时,四个原始像素点在不同的四个区域,所述插值点位于这四个区域的过渡位置,判断所述插值点与哪个点的距离最近,则插值点与其最近的原始像素点属于同一区域;
在所述步骤(3)中,还包括当所述插值点h(i,j)与原像素点不同行且不同列时,进行以下处理:
a)所述插值点与这四个原始像素点属于同一个区域,采用如下二维线性插值公式:
H(i,j)=[f(x,y)*(2-dx-dy)+f(x+1,y)*(1-dy+dx)+f(x,y+1)*(1-dx+dy)+,f(x+1,y+1)*(dx+dy)]/4
其中,dx为插值点到f(x,y)的平距离,dy为插值点到f(x,y)的垂直距离;
b)所述插值点与f(x,y)和f(x+1,y+1)两个原始像素点属于同一区域,采用如下二维非线性插值公式:
H(i,j) = [f(x,y)*(2-dx-dy)*2+f(x+1,y)*(1-dy+dx)+f(x,y+1)*(1-dx+dy),+f(x+1,y+1)*(dx+dy)*2]/6
其中,dx为插值点到f(x,y)的水平距离,dy为插值点到f(x,y)的垂直距离;
c)当所述插值点与f(x,y+1)和f(x+1,y)两个原始像素点属于同一区域时,采用如下二维非线性插值公式:
H(i,j) = [f(x,y)*(2-dx-dy)+f(x+1,y)*(1-dy+dx)*2+f(x,y+1)*(1-dx+dy)*2,+f(x+1,y+1)*(dx+dy)]/6
其中,dx为插值点到f(x,y)的水平距离,dy为插值点到f(x,y)的垂直距离;
d)当插值点与四个原始像素点都不属于同一个区域时,采用如下二维非线性插值公式:
H(i,j)=[f(x,y)*(2-dx-dy)*2^(d min==d1)+f(x+1,y)*(1-dy+dx)*2^(d min==d2)+f(x,y+1)*(1-dx+dy)*2^(d min==d3)+f(x+1,y+1)*(dx+dy)*2^(d min==d4)]/[(2-dx-dy)*2^(d min==d1)+(1-dy+dx)*2^(d min==d2)+(1-dx+dy)*2^(d min==d3)+(dx+dy)*2^(d min==d4)]
其中dmin=d1表示插值点与原始像素点f(x,y)距离最近时取值为1,反之,为0;d min=d2表示插值点与原始像素点f(x+1,y)距离最近时取值为1,反之,为0;d min=d3表示插值点与原始像素点f(x,y+1)距离最近时取值为1,反之,为0;d min==d4表示插值点与原始像素点f(x+1,y+1)距离最近时取值为1,反之,为0,dx为插值点到f(x,y)的水平距离,dy为插值点到f(x,y)垂直的距离。
4.一种基于区域一致性的图像插值算法,其特征在于,包括如下步骤:
(1)原始图像为F(x,y),放大后的图像为H(x,y),获得放大后的图像中的一个插值点h(i,j);
(2)插值点h(i,j)与原像素点同行时,获得所述插值点左侧的原始像素点f(x,y),获得所述插值点右侧的原始像素点f(x,y+1),y2=|f(x,y)-f(x,y+1)|,若y2<t,t为设定的阈值,则插值点与f(x,y)和f(x,y+1)属于同一区域,反之,插值点在f(x,y)所属区域和f(x,y+1)所属区域的过渡位置;
(3)选择插值公式,进行插值计算,包括:
当插值点h(i,j)与原始像素同行,且插值点与f(x,y)和f(x,y+1)属于同一区域时,采用一维线性插值公式:H(i,j)=f(x,y)*(1-dy)+f(x+1,y)*dy,其中dy为插值点到f(x,y)的距离,满足0≤dy≤1;
当插值点h(i,j)与原始像素同行,且所述插值点h(i,j)在f(x,y)所属区
域和f(x,y+1所属区域的过渡位置时,采用一维线性插值公式:H(i,j)=[f(x,y)*(1-dy)*0.5+f(x+1,y)*dy*0.5]/((1-dy)*0.5+dy*0.5);其中dy为插值点到f(x,y)的距离,满足0≤dy≤1;
(4)根据所述步骤(1)-(3),对所有插值点进行插值处理,得到新的图像。
5.根据权利要求4所述的图像插值算法,其特征在于:
在所述步骤(2)中,还包括当所述插值点h(i,j)与原像素点不同行且不同列时,获得所述插值点左上角、右上角、左下角和右下角的原始像素点分别为:f(x,y)、f(x,y+1)、f(x+1,y)、f(x+1,y+1),设y3=|f(x,y)-f(x+1,y+1)|、y4=|f(x,y+1)-f(x+1,y)|,A)当y4<t且y3<t时,则所述插值点与这四个原始像素点属于同一个区域;
B)当y3<t且y4>t时,则所述插值点与f(x,y)和f(x+1,y+1)两个原始像素点属于同一区域;
C)当y3>t且y4<t时,则所述插值点与f(x,y+1)和f(x+1,y)两个原始像素点属于同一区域;
D)当y3>t且y4>t时,四个原始像素点在不同的四个区域,所述插值点位于这四个区域的过渡位置,判断所述插值点与哪个点的距离最近,则插值点与其最近的原始像素点属于同一区域;
在所述步骤(3)中,还包括当所述插值点h(i,j)与原像素点不同行且不同列时,进行以下处理:
a)所述插值点与这四个原始像素点属于同一个区域,采用如下二维线性插值公式:
H(i,j)=[f(x,y)*(2-dx-dy)+f(x+1,y)*(1-dy+dx)+f(x,y+1)*(1-dx+dy)+,f(x+1,y+1)*(dx+dy)]/4
其中,dx为插值点到f(x,y)的水平距离,dy为插值点到f(x,y)的垂直距离;
b)所述插值点与f(x,y)和f(x+1,y+1)两个原始像素点属于同一区域,采用如下二维非线性插值公式:
H(i,j) = [f(x,y)*(2-dx-dy)*2+f(x+1,y)*(1-dy+dx)+f(x,y+1)*(1-dx+dy),+f(x+1,y+1)*(dx+dy)*2]/6
其中,dx为插值点到f(x,y)的水平距离,dy为插值点到f(x,y)的垂直距离;
c)当所述插值点与f(x,y+1)和f(x+1,y)两个原始像素点属于同一区域时,采用如下二维非线性插值公式:
H(i,j) = [f(x,y)*(2-dx-dy)+f(x+1,y)*(1-dy+dx)*2+f(x,y+1)*(1-dx+dy)*2,+f(x+1,y+1)*(dx+dy)]/6
其中,dx为插值点到f(x,y)的水平距离,dy为插值点到f(x,y)的垂直距离;
d)当插值点与四个原始像素点都不属于同一个区域时,采用如下二维非线性插值公式:
H(i,j)=[f(x,y)*(2-dx-dy)*2^(d min==d1)+f(x+1,y)*(1-dy+dx)*2^(d min==d2)+f(x,y+1)*(1-dx+dy)*2^(d min==d3)+f(x+1,y+1)*(dx+dy)*2^(d min==d4)]/[(2-dx-dy)*2^(d min==d1)+(1-dy+dx)*2^(d min==d2)+(1-dx+dy)*2^(d min==d3)+(dx+dy)*2^(d min==d4)]
其中d min=d1表示插值点与原始像素点f(x,y)距离最近时取值为1,反之,为0;d min=d2表示插值点与原始像素点f(x+1,y)距离最近时取值为1,反之,为0;d min=d3表示插值点与原始像素点f(x,y+1)距离最近时取值为1,反之,为0;d min==d4表示插值点与原始像素点f(x+1,y+1)距离最近时取值为1,反之,为0,dx为插值点到f(x,y)的水平距离,dy为插值点到f(x,y)垂直的距离。
6.一种基于区域一致性的图像插值算法,其特征在于,包括如下步骤:
(1)原始图像为F(x,y),放大后的图像为H(x,y),获得放大后的图像中的一个插值点h(i,j);
(2)当所述插值点h(i,j)与原像素点不同行且不同列时,获得所述插值点左上角、右上角、左下角和右下角的原始像素点分别为:f(x,y)、f(x,y+1)、f(x+1,y)、f(x+1,y+1),设y3=|f(x,y)-f(x+1,y+1)|、y4=|f(x,y+1)-f(x+1,y)|,t为设定的阈值,A)当y4<t且y3<t时,则所述插值点与这四个原始像素点属于同一个区域;
B)当y3<t且y4>t时,则所述插值点与f(x,y)和f(x+1,y+1)两个原始像素点属于同一区域;
C)当y3>t且y4<t时,则所述插值点与f(x,y+1)和f(x+1,y)两个原始像素点属于同一区域;
D)当y3>t且y4>t时,四个原始像素点在不同的四个区域,所述插值点位于这四个区域的过渡位置,判断所述插值点与哪个点的距离最近,则插值点与其最近的原始像素点属于同一区域;
(3)选择插值公式,进行插值计算,当所述插值点h(i,j)与原像素点不同行且不同列时,进行以下处理:
a)所述插值点与这四个原始像素点属于同一个区域,采用如下二维线性插值公式:
H(i,j)=[f(x,y)*(2-dx-dy)+f(x+1,y)*(1-dy+dx)+f(x,y+1)*(1-dx+dy)+;f(x+1,y+1)*(dx+dy)]/4
b)所述插值点与f(x,y)和f(x+1,y+1)两个原始像素点属于同一区域,采用如下二维非线性插值公式:
H(i,j) = [f(x,y)*(2-dx-dy)*2+f(x+1,y)*(1-dy+dx)+f(x,y+1)*(1-dx+dy);
+f(x+1,y+1)*(dx+dy)*2]/6
c)当所述插值点与f(x,y+1)和f(x+1,y)两个原始像素点属于同一区域时,采用如下二维非线性插值公式:
H(i,j) = [f(x,y)*(2-dx-dy)+f(x+1,y)*(1-dy+dx)*2+f(x,y+1)*(1-dx+dy)*2;
+f(x+1,y+1)*(dx+dy)]/6
d)当插值点与四个原始像素点都不属于同一个区域时,采用如下二维非线性插值公式:
H(i,j)=[f(x,y)*(2-dx-dy)*2^(d min==d1)+f(x+1,y)*(1-dy+dx)*2^(d min==d2)+f(x,y+1)*(1-dx+dy)*2^(d min==d3)+f(x+1,y+1)*(dx+dy)*2^(d min==d4)]/[(2-dx-dy)*2^(d min==d1)+(1-dy+dx)*2^(d min==d2)+(1-dx+dy)*2^(d min==d3)+(dx+dy)*2^(d min==d4)]
其中d min=d1表示插值点与原始像素点f(x,y)距离最近时取值为1,反之,为0;d min=d2表示插值点与原始像素点f(x+1,y)距离最近时取值为1,反之,为0;d min=d3表示插值点与原始像素点f(x,y+1)距离最近时取值为1,反之,为0;d min==d4表示插值点与原始像素点f(x+1,y+1)距离最近时取值为1,反之,为0;
其中,dx为插值点到f(x,y)的水平距离,dy为插值点到f(x,y)的垂直距离;
(4)根据所述步骤(1)-(3),对所有插值点进行插值处理,得到新的图像。
7.根据权利要求1-6中任一项所述的图像插值算法,其特征在于:在所述步骤(2)的B)和C)步中,分别采用众数法判断所述插值点与f(x,y)和f(x,y+1)、f(x+1,y)和f(x+1,y+1)属于同一区域。
8.根据权利要求1-7中任一项所述的图像插值算法,其特征在于:在所述步骤(2)的D)步中,采用邻近法判断插值点与哪个点的距离最近。
9.根据权利要求1-8中任一项所述的图像插值算法,其特征在于:在所述步骤(2)中,所述设定的阈值t的取值范围为100-130之间,单位为像素值。
10.根据权利要求9所述的图像插值算法,其特征在于:所述设定的阈值t为120。

说明书全文

一种基于区域一致性的图像插值算法

技术领域

[0001] 本发明涉及一种图像插值算法,具体地说是一种基于区域一致性的图像插值算法。

背景技术

[0002] 图像处理(image processing)技术是指利用计算机对图像进行分析,以达到所需结果的技术。图像处理技术的主要内容包括图像压缩、增强和复原、匹配、描述和识别等。图像是人类获取和交换信息的主要来源,因此,图像处理的应用领域涉及到人类生活和工作的方方面面。随着可视化信息的高速发展,大屏幕显示技术逐渐发展,尤其在交通控制、机场控制等领域,使用大屏幕拼接显示技术可以获得更好的视频显示效果,具有更宽阔的视野,为现场监控提供便利。大屏幕数字拼接墙技术在可视化监控领域的需求急剧扩大,对图像质量和转换速度的要求也越来越高。
[0003] 由于受到采集设备或传输设备的制约,获得的图像在大屏幕上显示时,有时不能满足像素要求。此时,需要将获得的图像进行放大处理,从而可以显示在更高分辨率的显示设备上。目前,图像放大多采用插值方法,即在原有图像像素的基础上在像素点之间采用合适的插值算法插入新的元素。在传统图像插值算法中,最近邻插值较简单,容易实现,早期的时候应用比较普遍。但是,该方法会在新图像中产生明显的锯齿边缘和赛克现象。双线性插值法具有平滑功能,能有效地克服最近邻法的不足,但会退化图像的高频部分,使图像细节变模糊。
[0004] 为提高视觉效果,很多学者相继提出边缘保持的自适应插值算法。如文献新边缘检测插值算法(New edge-directed interpolation[J],Xin Li andMichael T.Orchard,IEEE Transactions on Image Processing,2001,vol.10:1521-1527)中对一种边缘自适应插值算法进行了研究,用带插点相邻的若干降采样像素估计高分辨率图像的局部协方差。在该方法中,虽然图像视觉质量有一定提高,但边缘模糊现象仍然存在。
[0005] 为此,在中国专利文献20081001792.5中公开了一种基于视频对象和区域指导的图像插值算法,该方法利用Mean Shift和视频对象的区域分割方法将图像分割成不同区域,对区域内点采用线性方法插值,区域间点采用非线性插值方法插值。虽然这些算法都能得到较高的图像质量,但运算复杂度较高,且占用较大内存空间,难以在硬件上实现,并不适用于实时的视频信号处理。而在中国专利文献201010145573.5中公开了一种图像处理设备和图像处理方法,该技术方案中将阈值判断用于改善灰度级的再现性和减小点增大现象中,但是需要加网处理单元,用于使用子单元来实现加网处理,子单元与多个像素相对应的并且在子单元中根据各个像素的位置来确定第一阈值和第二阈值,使得满足第一阈值小于第二阈值的关系,因此该方法需要多个子单元以及针对不同子单元设置的阈值表,运算复杂度高,难以在硬件上实现。
[0006] 图1中给出了现有技术中一种区域指导的图像插值算法的主要步骤,现有技术中采用区域指导的插值算法时,首先对图像进行区域分割,然后结合插值点所在位置判断其所属区域,最后通过插值计算公式求取插值点像素值。这种方法获得较高的主观和客观图像质量,克服了原有插值技术的不足,但是区域分割方法的算法复杂度较大,并不适合硬件实现和实时的视频信号处理。

发明内容

[0007] 为此,本发明所要解决的技术问题在于现有技术中的图像插值算法运算复杂程度高,占用内存空间多,在硬件上难以实现,从而提出一种运算简单、效果好、易于硬件实现的图像插值算法。
[0008] 为解决上述技术问题,本发明提供一种基于区域一致性的图像插值算法,包括如下步骤:
[0009] (1)原始图像为F(x,y),放大后的图像为H(x,y),获得放大后的图像中的一个插值点h(i,j);
[0010] (2)利用阈值判断对插值点进行区域划分,确定插值点所属区域,包括:
[0011] 当插值点h(i,j)与原像素点同列时,获得所述插值点上方的原始像素点f(x,y),获得所述插值点下方的原始像素点f(x+1,y),设y1=|f(x,y)-f(x+1,y)|,t为设定的阈值,若y1<t,则插值点h(i,j)与f(x,y)和f(x+1,y)属于同一区域,反之,插值点在f(x,y)所属区域和f(x+1,y)所属区域的过渡位置;
[0012] (3)根据所述步骤(2)中确定的区域,选择插值公式,进行插值计算,包括:
[0013] 当插值点h(i,j)与原像素点同列,插值点与f(x,y)和f(x+1,y)属于同一区域时,采用一维线性插值公式:H(i,j)=f(x,y)*(1-dx)+f(x+1,y)*dx,其中dx为插值点到f(x,y)的距离,满足0≤dx≤1;
[0014] 当插值点h(i,j)与原像素点同列,插值点在f(x,y)所属区域和f(x+1,y)所属区域的过渡位置时,采用一维线性插值公式:
[0015] H(i,j)=[f(x,y)*(1-dx)*0.5+f(x+1,y)*dx*0.5]/((1-dx)*0.5+dx*0.5),dx为插值点到f(x,y)的距离,满足0≤dx≤1。
[0016] 在所述步骤(2)中,还包括插值点h(i,j)与原像素点同行时,获得所述插值点左侧的原始像素点f(x,y),获得所述插值点右侧的原始像素点f(x,y+1),y2=|f(x,y)-f(x,y+1)|,若y2<t,则插值点与f(x,y)和f(x,y+1)属于同一区域,反之,插值点在f(x,y)所属区域和f(x,y+1)所属区域的过渡位置;
[0017] 在所述步骤(3)中,还包括当插值点h(i,j)与原始像素同行,且插值点与f(x,y)和f(x,y+1)属于同一区域时,采用一维线性插值公式:H(i,j)=f(x,y)*(1-dy)+f(x+1,y)*dy,其中dy为插值点到f(x,y)的距离,满足0≤dy≤1;
[0018] 当插值点h(i,j)与原始像素同行,且所述插值点h(i,j)在f(x,y)所属区域和f(x,y+1所属区域的过渡位置时,采用一维线性插值公式:H(i,j)=[f(x,y)*(1-dy)*0.5+f(x+1,y)*dy*0.5]/((1-dy)*0.5+dy*0.5),其中dy为插值点到f(x,y)的距离,满足0≤dy≤1;
[0019] (4)根据所述步骤(1)-(3),对所有插值点进行插值处理,得到新的图像。
[0020] 在所述步骤(2)中,还包括当所述插值点h(i,j)与原像素点不同行且不同列时,获得所述插值点左上、右上角、左下角和右下角的原始像素点分别为:f(x,y)、f(x,y+1)、f(x+1,y)、f(x+1,y+1),设y3=|f(x,y)-f(x+1,y+1)|、y4=|f(x,y+1)-f(x+1,y)|,[0021] A)当y4<t且y3<t时,则所述插值点与这四个原始像素点属于同一个区域;
[0022] B)当y3<t且y4>t时,则所述插值点与f(x,y)和f(x+1,y+1)两个原始像素点属于同一区域;
[0023] C)当y3>t且y4<t时,则所述插值点与f(x,y+1)和f(x+1,y)两个原始像素点属于同一区域;
[0024] D)当y3>t且y4>t时,四个原始像素点在不同的四个区域,所述插值点位于这四个区域的过渡位置,判断所述插值点与哪个点的距离最近,则插值点与其最近的原始像素点属于同一区域;
[0025] 在所述步骤(3)中,还包括当所述插值点h(i,j)与原像素点不同行且不同列时,进行以下处理:
[0026] a)所述插值点与这四个原始像素点属于同一个区域,采用如下二维线性插值公式:
[0027] H(i,j) = [f(x,y)*(2-dx-dy)+f(x+1,y)*(1-dy+dx)+f(x,y+1)*(1-dx+dy)+,f(x+1,y+1)*(dx+dy)]/4
[0028] 其中,dx为插值点到f(x,y)的平距离,dy为插值点到f(x,y)的垂直距离;
[0029] b)所述插值点与f(x,y)和f(x+1,y+1)两个原始像素点属于同一区域,采用如下二维非线性插值公式:
[0030] H(i,j)= [f(x,y)*(2-dx-dy)*2+f(x+1,y)*(1-dy+dx)+f(x,y+1)*(1-dx+dy),+f(x+1,y+1)*(dx+dy)*2]/6
[0031] 其中,dx为插值点到f(x,y)的水平距离,dy为插值点到f(x,y)的垂直距离;
[0032] c)当所述插值点与f(x,y+1)和f(x+1,y)两个原始像素点属于同一区域时,采用如下二维非线性插值公式:
[0033] H(i,j)=[f(x,y)*(2-dx-dy)+f(x+1,y)*(1-dy+dx)*2+f(x,y+1)*(1-dx+dy)*2,+f(x+1,y+1)*(dx+dy)]/6
[0034] 其中,dx为插值点到f(x,y)的水平距离,dy为插值点到f(x,y)的垂直距离;
[0035] d)当插值点与四个原始像素点都不属于同一个区域时,采用如下二维非线性插值公式:
[0036] H(i,j)=[f(x,y)*(2-dx-dy)*2^(d min==d1)+f(x+1,y)*(1-dy+dx)*2^(d min==d2)+f(x,y+1)*(1-dx+dy)*2^(d min==d3)+f(x+1,y+1)*(dx+dy)*2^(d min==d4)]/[(2-dx-dy)*2^(d min==d1)+(1-dy+dx)*2^(d min==d2)+(1-dx+dy)*2^(d min==d3)+(dx+dy)*2^(d min==d4)]
[0037] 其中d min=d1表示插值点与原始像素点f(x,y)距离最近时取值为1,反之,为0;d min=d2表示插值点与原始像素点f(x+1,y)距离最近时取值为1,反之,为0;d min=d3表示插值点与原始像素点f(x,y+1)距离最近时取值为1,反之,为0;d min==d4表示插值点与原始像素点f(x+1,y+1)距离最近时取值为1,反之,为0,dx为插值点到f(x,y)的水平距离,dy为插值点到f(x,y)垂直的距离。
[0038] 一种基于区域一致性的图像差值方法,包括如下步骤:
[0039] (1)原始图像为F(x,y),放大后的图像为H(x,y),获得放大后的图像中的一个插值点h(i,j);
[0040] (2)插值点h(i,j)与原像素点同行时,获得所述插值点左侧的原始像素点f(x,y),获得所述插值点右侧的原始像素点f(x,y+1),y2=|f(x,y)-f(x,y+1)|,若y2<t,则插值点与f(x,y)和f(x,y+1)属于同一区域,反之,插值点在f(x,y)所属区域和f(x,y+1)所属区域的过渡位置;
[0041] (3)选择插值公式,进行插值计算,包括:
[0042] 当插值点h(i,j)与原始像素同行,且插值点与f(x,y)和f(x,y+1)属于同一区域时,采用一维线性插值公式:H(i,j)=f(x,y)*(1-dy)+f(x+1,y)*dy,其中dy为插值点到f(x,y)的距离,满足0≤dy≤1;
[0043] 当插值点h(i,j)与原始像素同行,且所述插值点h(i,j)在f(x,y)所属区域和f(x,y+1所属区域的过渡位置时,采用一维线性插值公式:H(i,j)=[f(x,y)*(1-dy)*0.5+f(x+1,y)*dy*0.5]/((1-dy)*0.5+dy*0.5)。
[0044] (4)根据所述步骤(1)-(3),对所有插值点进行插值处理,得到新的图像。
[0045] 在所述步骤(2)中,还包括当所述插值点h(i,j)与原像素点不同行且不同列时,获得所述插值点左上角、右上角、左下角和右下角的原始像素点分别为:f(x,y)、f(x,y+1)、f(x+1,y)、f(x+1,y+1),设y3=|f(x,y)-f(x+1,y+1)|、y4=|f(x,y+1)-f(x+1,y)|,[0046] A)当y4<t且y3<t时,则所述插值点与这四个原始像素点属于同一个区域;
[0047] B)当y3<t且y4>t时,则所述插值点与f(x,y)和f(x+1,y+1)两个原始像素点属于同一区域;
[0048] C)当y3>t且y4<t时,则所述插值点与f(x,y+1)和f(x+1,y)两个原始像素点属于同一区域;
[0049] D)当y3>t且y4>t时,四个原始像素点在不同的四个区域,所述插值点位于这四个区域的过渡位置,判断所述插值点与哪个点的距离最近,则插值点与其最近的原始像素点属于同一区域;
[0050] 在所述步骤(3)中,还包括当所述插值点h(i,j)与原像素点不同行且不同列时,进行以下处理:
[0051] a)所述插值点与这四个原始像素点属于同一个区域,采用如下二维线性插值公式:
[0052] H(i,j) = [f(x,y)*(2-dx-dy)+f(x+1,y)*(1-dy+dx)+f(x,y+1)*(1-dx+dy)+,f(x+1,y+1)*(dx+dy)]/4
[0053] 其中,dx为插值点到f(x,y)的水平距离,dy为插值点到f(x,y)的垂直距离;
[0054] b)所述插值点与f(x,y)和f(x+1,y+1)两个原始像素点属于同一区域,采用如下二维非线性插值公式:
[0055] H(i,j)= [f(x,y)*(2-dx-dy)*2+f(x+1,y)*(1-dy+dx)+f(x,y+1)*(1-dx+dy),+f(x+1,y+1)*(dx+dy)*2]/6
[0056] 其中,dx为插值点到f(x,y)的水平距离,dy为插值点到f(x,y)的垂直距离;
[0057] c)当所述插值点与f(x,y+1)和f(x+1,y)两个原始像素点属于同一区域时,采用如下二维非线性插值公式:
[0058] H(i,j)=[f(x,y)*(2-dx-dy)+f(x+1,y)*(1-dy+dx)*2+f(x,y+1)*(1-dx+dy)*2,+f(x+1,y+1)*(dx+dy)]/6
[0059] 其中,dx为插值点到f(x,y)的水平距离,dy为插值点到f(x,y)的垂直距离;
[0060] d)当插值点与四个原始像素点都不属于同一个区域时,采用如下二维非线性插值公式:
[0061] H(i,j)=[f(x,y)*(2-dx-dy)*2^(d min==d1)+f(x+1,y)*(1-dy+dx)*2^(d min==d2)+f(x,y+1)*(1-dx+dy)*2^(d min==d3)+f(x+1,y+1)*(dx+dy)*2^(d min==d4)]/[(2-dx-dy)*2^(d min==d1)+(1-dy+dx)*2^(d min==d2)+(1-dx+dy)*2^(d min==d3)+(dx+dy)*2^(d min==d4)]
[0062] 其中d min=d1表示插值点与原始像素点f(x,y)距离最近时取值为1,反之,为0;d min=d2表示插值点与原始像素点f(x+1,y)距离最近时取值为1,反之,为0;d min=d3表示插值点与原始像素点f(x,y+1)距离最近时取值为1,反之,为0;d min==d4表示插值点与原始像素点f(x+1,y+1)距离最近时取值为1,反之,为0,dx为插值点到f(x,y)的水平距离,dy为插值点到f(x,y)垂直的距离。
[0063] 一种基于区域一致性的图像插值方法,包括如下步骤:
[0064] (1)原始图像为F(x,y),放大后的图像为H(x,y),获得放大后的图像中的一个插值点h(i,j);
[0065] (2)当所述插值点h(i,j)与原像素点不同行且不同列时,获得所述插值点左上角、右上角、左下角和右下角的原始像素点分别为:f(x,y)、f(x,y+1)、f(x+1,y)、f(x+1,y+1),设y3=|f(x,y)-f(x+1,y+1)|、y4=|f(x,y+1)-f(x+1,y)|,
[0066] A)当y4<t且y3<t时,则所述插值点与这四个原始像素点属于同一个区域;
[0067] B)当y3<t且y4>t时,则所述插值点与f(x,y)和f(x+1,y+1)两个原始像素点属于同一区域;
[0068] C)当y3>t且y4<t时,则所述插值点与f(x,y+1)和f(x+1,y)两个原始像素点属于同一区域;
[0069] D)当y3>t且y4>t时,四个原始像素点在不同的四个区域,所述插值点位于这四个区域的过渡位置,判断所述插值点与哪个点的距离最近,则插值点与其最近的原始像素点属于同一区域;
[0070] (3)选择插值公式,进行插值计算,当所述插值点h(i,j)与原像素点不同行且不同列时,进行以下处理:
[0071] a)所述插值点与这四个原始像素点属于同一个区域,采用如下二维线性插值公式:
[0072] H(i,j) = [f(x,y)*(2-dx-dy)+f(x+1,y)*(1-dy+dx)+f(x,y+1)*(1-dx+dy)+;f(x+1,y+1)*(dx+dy)]/4
[0073] b)所述插值点与f(x,y)和f(x+1,y+1)两个原始像素点属于同一区域,采用如下二维非线性插值公式:
[0074] H(i,j)= [f(x,y)*(2-dx-dy)*2+f(x+1,y)*(1-dy+dx)+f(x,y+1)*(1-dx+dy);+f(x+1,y+1)*(dx+dy)*2]/6
[0075] c)当所述插值点与f(x,y+1)和f(x+1,y)两个原始像素点属于同一区域时,采用如下二维非线性插值公式:
[0076] H(i,j) = [f(x,y)*(2-dx-dy)+f(x+1,y)*(1-dy+dx)*2+f(x,y+1)*(1-dx+dy)*2+f(x+1,y+1)*(dx+dy)]/6
[0077] d)当插值点与四个原始像素点都不属于同一个区域时,采用如下二维非线性插值公式:
[0078] H(i,j)=[f(x,y)*(2-dx-dy)*2^(d min==d1)+f(x+1,y)*(1-dy+dx)*2^(d min==d2)+f(x,y+1)*(1-dx+dy)*2^(d min==d3)+f(x+1,y+1)*(dx+dy)*2^(d min==d4)]/[(2-dx-dy)*2^(d min==d1)+(1-dy+dx)*2^(d min==d2)+(1-dx+dy)*2^(d min==d3)+(dx+dy)*2^(d min==d4)]
[0079] 其中d min=d1表示插值点与原始像素点f(x,y)距离最近时取值为1,反之,为0;d min=d2表示插值点与原始像素点f(x+1,y)距离最近时取值为1,反之,为0;d min=d3表示插值点与原始像素点f(x,y+1)距离最近时取值为1,反之,为0;d min==d4表示插值点与原始像素点f(x+1,y+1)距离最近时取值为1,反之,为0。
[0080] (4)根据所述步骤(1)-(3),对所有插值点进行插值处理,得到新的图像。
[0081] 在所述步骤(2)的B)和C)步中,分别采用众数法判断所述插值点与f(x,y)和f(x,y+1)、f(x+1,y)和f(x+1,y+1)属于同一区域。
[0082] 在所述步骤(2)的D)步中,采用邻近法判断插值点与哪个点的距离最近。
[0083] 在所述步骤(2)中,所述设定的阈值t的取值范围为100-130之间,单位为像素值。
[0084] 所述设定的阈值t为120。
[0085] 本发明的上述技术方案相比现有技术具有以下优点,
[0086] (1)本发明所述的基于区域一致性的图像插值算法,在针对插值点进行计算时,首先利用阈值判断对插值点周围进行区域划分,然后判断出插值点所在区域,再根据插值点所在的区域来选择插值公式,这样,就通过简单的阈值比较来实现区域划分,简化了现有技术复杂的区域分割方法,减少了运算量。在针对划分的不同区域来选择公式时,具有同行或同列原像素点的插值点采用一维公式进行插值计算,公式简单,计算量小,其余的插值点虽然采用二维公式,但是公式的复杂程度也不高,运算速度也很快。这样不仅克服了传统插值算法对边缘区域划分不准确造成的图像质量较低的现象,而且与边缘自适应算法相比,在不显著降低图像质量的前提下,大大降低了算法复杂度,使得插值后的图像获得较好的视觉效果,且插值后图像的视觉效果与传统算法相比有较大提高,PSNR值(峰值信噪比,一种评价图像的客观标准)与传统图像插值算法相比也有所提高。
[0087] (2)本发明所述的图像插值算法,首先根据插值点与原像素点是否同行或者同列进行判断,然后在针对同行、同列或者不同行也不同列的情况分别进行区域划分,步骤简单,条理清晰,易于软件程序设计与实现。
[0088] (3)本发明所述的图像插值算法,针对插值点所述区域进行区域划分后,采用不同的插值公式进行计算,这样可以针对插值点所述区域的特点来设置插值公式,保证了插值点的准确性,从而提高了插值后的图像质量。
[0089] (4)本发明所述的图像插值算法,所述设定的阈值t的设置方式为使得图像质量达到最优,t可以在一个范围内取值,实验仿真结果表明,t一般在100-130之间,优选120,单位为像素值,像素值是在[0,255]之间的数值。当t在100-130,优选120的时候,在进行区域划分时具有很好的标志性,从而将插值点划分为不同的区域,阈值选取的合理性保证了区域划分的合理性,从而提高图像的质量。附图说明
[0090] 为了使本发明的内容更容易且被清楚的理解,下面根据本发明的具体实施例并结合附图,对本发明作进一步详细的说明,其中
[0091] 图1是现有技术中图像插值算法的流程框图
[0092] 图2是本发明所述的基于区域一致性的图像插值算法框图;
[0093] 图3是本发明实施例7中原始图像;
[0094] 图4是本发明实施例7中将插值点映射回原始图像中的位置关系图;
[0095] 图5是本发明实施例7中插值点插值的位置图。

具体实施方式

[0096] 实施例1:
[0097] 下面给出本发明所述的基于区域一致性的图像插值算法的具体的实施方式,其基本思路为首先确定插值点在原始图像中的位置,然后利用阈值判断对插值点周围进行区域划分,然后判断插值点所属区域,之后利用插值公式求取插值点像素值,最后输出插值后的图像,流程框图如图2所示。本发明所述的基于区域一致性的图像插值算法,包括如下步骤:
[0098] (1)原始图像为F(x,y),放大后的图像为H(x,y),获得放大后的图像中的一个插值点h(i,j);
[0099] (2)利用阈值判断对插值点进行区域划分,确定插值点所属区域,包括:
[0100] 当插值点h(i,j)与原像素点同列时,获得所述插值点上方的原始像素点f(x,y),获得所述插值点下方的原始像素点f(x+1,y),设y1=|f(x,y)-f(x+1,y)|,t为设定的阈值,仿真实验结果表明,一般取100-130,在此t取120,单位为像素值。若y1<t,则插值点h(i,j)与f(x,y)和f(x+1,y)属于同一区域,反之,插值点在f(x,y)所属区域和f(x+1,y)所属区域的过渡位置;
[0101] (3)根据所述步骤(2)中确定的区域,选择插值公式,进行插值计算,包括:
[0102] 当插值点h(i,j)与原像素点同列,插值点与f(x,y)和f(x+1,y)属于同一区域时,采用一维线性插值公式:H(i,j)=f(x,y)*(1-dx)+f(x+1,y)*dx,其中dx为插值点到f(x,y)的距离,满足0≤dx≤1;
[0103] 当插值点h(i,j)与原像素点同列,插值点在f(x,y)所属区域和f(x+1,y)所属区域的过渡位置时,采用一维线性插值公式:
[0104] H(i,j)=[f(x,y)*(1-dx)*0.5+f(x+1,y)*dx*0.5]/((1-dx)*0.5+dx*0.5);
[0105] (4)根据所述步骤(1)-(3),对所有插值点进行插值处理,得到新的图像。
[0106] 实施例2:
[0107] 本发明所述的基于区域一致性的图像插值算法,包括如下步骤:
[0108] (1)原始图像为F(x,y),放大后的图像为H(x,y),获得放大后的图像中的一个插值点h(i,j);
[0109] (2)利用阈值判断对插值点进行区域划分,确定插值点所属区域,包括:
[0110] I、当插值点h(i,j)与原像素点同列时,获得所述插值点上方的原始像素点f(x,y,获得所述插值点下方的原始像素点f(x+1,y),设y1=|f(x,y)-f(x+1,y)|,t为设定的阈值,在此t取100,单位为像素值。若y1<t,则插值点h(i,j)与f(x,y)和f(x+1,y)属于同一区域,反之,插值点在f(x,y)所属区域和f(x+1,y)所属区域的过渡位置;
[0111] II、插值点h(i,j)与原像素点同行时,获得所述插值点左侧的原始像素点f(x,y),获得所述插值点右侧的原始像素点f(x,y+1),y2=|f(x,y)-f(x,y+1)|,若y2<t,则插值点与f(x,y)和f(x,y+1)属于同一区域,反之,插值点在f(x,y)所属区域和f(x,y+1)所属区域的过渡位置;
[0112] (3)根据所述步骤(2)中确定的区域,选择插值公式,进行插值计算,包括:
[0113] I、当插值点h(i,j)与原像素点同列时,如果插值点与f(x,y)和f(x+1,y)属于同一区域时,采用一维线性插值公式:
[0114] H(i,j)=f(x,y)*(1-dx)+f(x+1,y)*dx,其中dx为插值点到f(x,y)的距离,满足0≤dx≤1;如果插值点在f(x,y)所属区域和f(x+1,y)所属区域的过渡位置时,采用一维线性插值公式:
[0115] H(i,j)=[f(x,y)*(1-dx)*0.5+f(x+1,y)*dx*0.5]/((1-dx)*0.5+dx*0.5);
[0116] II、当插值点h(i,j)与原始像素同行时,如果插值点与f(x,y)和f(x,y+1)属于同一区域时,采用一维线性插值公式:H(i,j)=f(x,y)*(1-dy)+f(x+1,y)*dy,其中dy为插值点到f(x,y)的距离,满足0≤dy≤1;如果所述插值点h(i,j)在f(x,y)所属区域和f(x,y+1)所属区域的过渡位置时,采用一维线性插值公式:H(i,j)=[f(x,y)*(1-dy)*0.5+f(x+1,y)*dy*0.5]/((1-dy)*0.5+dy*0.5);
[0117] (4)根据所述步骤(1)-(3),对所有插值点进行插值处理,得到新的图像。
[0118] 实施例3:
[0119] 本发明所述的基于区域一致性的图像插值算法,包括如下步骤:
[0120] (1)原始图像为F(x,y),放大后的图像为H(x,y),获得放大后的图像中的一个插值点h(i,j);
[0121] (2)利用阈值判断对插值点进行区域划分,确定插值点所属区域,包括:
[0122] I、当插值点h(i,j)与原像素点同列时,获得所述插值点上方的原始像素点f(x,y,获得所述插值点下方的原始像素点f(x+1,y),设y1=|f(x,y)-f(x+1,y)|,t为设定的阈值,在此t取130,单位为像素值。若y1<t,则插值点h(i,j)与f(x,y)和f(x+1,y)属于同一区域,反之,插值点在f(x,y)所属区域和f(x+1,y)所属区域的过渡位置;
[0123] II、插值点h(i,j)与原像素点同行时,获得所述插值点左侧的原始像素点f(x,y),获得所述插值点右侧的原始像素点f(x,y+1),y2=|f(x,y)-f(x,y+1)|,若y2<t,则插值点与f(x,y)和f(x,y+1)属于同一区域,反之,插值点在f(x,y)所属区域和f(x,y+1)所属区域的过渡位置;
[0124] III、当所述插值点h(i,j)与原像素点不同行且不同列时,获得所述插值点左上角、右上角、左下角和右下角的原始像素点分别为:f(x,y)、f(x,y+1)、f(x+1,y)、f(x+1,y+1),设y3=|f(x,y)-f(x+1,y+1)|、y4=|f(x,y+1)-f(x+1,y)|,
[0125] A)当y4<t且y3<t时,则所述插值点与这四个原始像素点属于同一个区域;
[0126] B)当y3<t且y4>t时,则采用众数法,其中众数法是选择一组数据中发生次数最多的值。对此种情况,根据众数法,所述插值点属于f(x,y)和f(x+1,y+1)两个原始像素点所在区域;
[0127] C)当y3>t且y4<t时,则采用众数法所述插值点与f(x,y+1)和f(x+1,y)两个原始像素点属于同一区域;
[0128] D)当y3>t且y4>t时,四个原始像素点在不同的四个区域,所述插值点位于这四个区域的过渡位置,采用邻近法,其中近邻法是指原始像素点中与当前点最近的像素点,根据近邻法,插值点和与其距离较近的邻域点属于同一区域;
[0129] (3)根据所述步骤(2)中确定的区域,选择插值公式,进行插值计算,包括:
[0130] I、当插值点h(i,j)与原像素点同列时,如果插值点与f(x,y)和f(x+1,y)属于同一区域时,采用一维线性插值公式:
[0131] H(i,j)=f(x,y)*(1-dx)+f(x+1,y)*dx,其中dx为插值点到f(x,y)的距离,满足0≤dx≤1;如果插值点在f(x,y)所属区域和f(x+1,y)所属区域的过渡位置时,采用一维线性插值公式:
[0132] H(i,j)=[f(x,y)*(1-dx)*0.5+f(x+1,y)*dx*0.5]/((1-dx)*0.5+dx*0.5);
[0133] II、当插值点h(i,j)与原始像素同行时,如果插值点与f(x,y)和f(x,y+1)属于同一区域时,采用一维线性插值公式:H(i,j)=f(x,y)*(1-dy)+f(x+1,y)*dy,其中dy为插值点到f(x,y)的距离,满足0≤dy≤1;如果所述插值点h(i,j)在f(x,y)所属区域和f(x,y+1)所属区域的过渡位置时,采用一维线性插值公式:H(i,j)=[f(x,y)*(1-dy)*0.5+f(x+1,y)*dy*0.5]/((1-dy)*0.5+dy*0.5);
[0134] III、当所述插值点h(i,j)与原像素点不同行且不同列时,进行以下处理:
[0135] a)所述插值点与这四个原始像素点属于同一个区域,采用如下二维线性插值公式:
[0136] H(i,j) = [f(x,y)*(2-dx-dy)+f(x+1,y)*(1-dy+dx)+f(x,y+1)*(1-dx+dy)+;f(x+1,y+1)*(dx+dy)]/4
[0137] b)所述插值点与f(x,y)和f(x+1,y+1)两个原始像素点属于同一区域,采用如下二维非线性插值公式:
[0138] H(i,j)= [f(x,y)*(2-dx-dy)*2+f(x+1,y)*(1-dy+dx)+f(x,y+1)*(1-dx+dy);+f(x+1,y+1)*(dx+dy)*2]/6
[0139] c)当所述插值点与f(x,y+1)和f(x+1,y)两个原始像素点属于同一区域时,采用如下二维非线性插值公式:
[0140] H(i,j) = [f(x,y)*(2-dx-dy)+f(x+1,y)*(1-dy+dx)*2+f(x,y+1)*(1-dx+dy)*2+f(x+1,y+1)*(dx+dy)]/6
[0141] d)当插值点与四个原始像素点都不属于同一个区域时,采用如下二维非线性插值公式:
[0142] H(i,j)=[f(x,y)*(2-dx-dy)*2^(d min==d1)+f(x+1,y)*(1-dy+dx)*2^(d min==d2)+f(x,y+1)*(1-dx+dy)*2^(d min==d3)+f(x+1,y+1)*(dx+dy)*2^(d min==d4)]/[(2-dx-dy)*2^(d min==d1)+(1-dy+dx)*2^(d min==d2)+(1-dx+dy)*2^(d min==d3)+(dx+dy)*2^(d min==d4)]
[0143] 其中d min=d1表示插值点与原始像素点f(x,y)距离最近时取值为1,反之,为0;d min=d2表示插值点与原始像素点f(x+1,y)距离最近时取值为1,反之,为0;d min=d3表示插值点与原始像素点f(x,y+1)距离最近时取值为1,反之,为0;d min==d4表示插值点与原始像素点f(x+1,y+1)距离最近时取值为1,反之,为0;
[0144] 其中,dx为插值点到f(x,y)的水平距离,dy为插值点到f(x,y)垂直的距离。
[0145] (4)根据所述步骤(1)-(3),对所有插值点进行插值处理,得到新的图像。
[0146] 实施例4:
[0147] 本发明所述的基于区域一致性的图像插值算法,包括以下步骤:
[0148] (1)原始图像为F(x,y),放大后的图像为H(x,y),获得放大后的图像中的一个插值点h(i,j);
[0149] (2)插值点h(i,j)与原像素点同行时,获得所述插值点左侧的原始像素点f(x,y),获得所述插值点右侧的原始像素点f(x,y+1),y2=|f(x,y)-f(x,y+1)|,若y2<t,t为预先设定的阈值,取125,单位为像素值,像素值是在[0,255]之间的数值。则插值点与f(x,y)和f(x,y+1)属于同一区域,反之,插值点在f(x,y)所属区域和f(x,y+1)所属区域的过渡位置;
[0150] (3)选择插值公式,进行插值计算,包括:
[0151] 当插值点h(i,j)与原始像素同行,且插值点与f(x,y)和f(x,y+1)属于同一区域时,采用一维线性插值公式:H(i,j)=f(x,y)*(1-dy)+f(x+1,y)*dy,其中dy为插值点到f(x,y)的距离,满足0≤dy≤1;
[0152] 当插值点h(i,j)与原始像素同行,且所述插值点h(i,j)在f(x,y)所属区域和f(x,y+1所属区域的过渡位置时,采用一维线性插值公式:H(i,j)=[f(x,y)*(1-dy)*0.5+f(x+1,y)*dy*0.5]/((1-dy)*0.5+dy*0.5)。
[0153] (4)根据所述步骤(1)-(3),对所有插值点进行插值处理,得到新的图像。
[0154] 实施例5:
[0155] 本发明所述的基于区域一致性的图像插值算法,包括以下步骤:
[0156] (1)原始图像为F(x,y),放大后的图像为H(x,y),获得放大后的图像中的一个插值点h(i,j);
[0157] (2)当所述插值点h(i,j)与原像素点不同行且不同列时,获得所述插值点左上角、右上角、左下角和右下角的原始像素点分别为:f(x,y)、f(x,y+1)、f(x+1,y)、f(x+1,y+1),设y3=|f(x,y)-f(x+1,y+1)|、y4=|f(x,y+1)-f(x+1,y)|,t为设定的阈值,在此t取130,单位为像素值。
[0158] A)当y4<t且y3<t时,则所述插值点与这四个原始像素点属于同一个区域;
[0159] B)当y3<t且y4>t时,则所述插值点与f(x,y)和f(x+1,y+1)两个原始像素点属于同一区域;
[0160] C)当y3>t且y4<t时,则所述插值点与f(x,y+1)和f(x+1,y)两个原始像素点属于同一区域;
[0161] D)当y3>t且y4>t时,四个原始像素点在不同的四个区域,所述插值点位于这四个区域的过渡位置,判断所述插值点与哪个点的距离最近,则插值点与其最近的原始像素点属于同一区域;
[0162] (3)选择插值公式,进行插值计算,当所述插值点h(i,j)与原像素点不同行且不同列时,进行以下处理:
[0163] a)所述插值点与这四个原始像素点属于同一个区域,采用如下二维线性插值公式:
[0164] H(i,j) = [f(x,y)*(2-dx-dy)+f(x+1,y)*(1-dy+dx)+f(x,y+1)*(1-dx+dy)+;f(x+1,y+1)*(dx+dy)]/4
[0165] b)所述插值点与f(x,y)和f(x+1,y+1)两个原始像素点属于同一区域,采用如下二维非线性插值公式:
[0166] H(i,j)= [f(x,y)*(2-dx-dy)*2+f(x+1,y)*(1-dy+dx)+f(x,y+1)*(1-dx+dy);+f(x+1,y+1)*(dx+dy)*2]/6
[0167] c)当所述插值点与f(x,y+1)和f(x+1,y)两个原始像素点属于同一区域时,采用如下二维非线性插值公式:
[0168] H(i,j) = [f(x,y)*(2-dx-dy)+f(x+1,y)*(1-dy+dx)*2+f(x,y+1)*(1-dx+dy)*2+f(x+1,y+1)*(dx+dy)]/6
[0169] d)当插值点与四个原始像素点都不属于同一个区域时,采用如下二维非线性插值公式:
[0170] H(i,j)=[f(x,y)*(2-dx-dy)*2^(d min==d1)+f(x+1,y)*(1-dy+dx)*2^(d min==d2)+f(x,y+1)*(1-dx+dy)*2^(d min==d3)+f(x+1,y+1)*(dx+dy)*2^(d min==d4)]/[(2-dx-dy)*2^(d min==d1)+(1-dy+dx)*2^(d min==d2)+(1-dx+dy)*2^(d min==d3)+(dx+dy)*2^(d min==d4)]
[0171] 其中d min=d1表示插值点与原始像素点f(x,y)距离最近时取值为1,反之,为0;d min=d2表示插值点与原始像素点f(x+1,y)距离最近时取值为1,反之,为0;d min=d3表示插值点与原始像素点f(x,y+1)距离最近时取值为1,反之,为0;d min==d4表示插值点与原始像素点f(x+1,y+1)距离最近时取值为1,反之,为0;
[0172] 其中,dx为插值点到f(x,y)的水平距离,dy为插值点到f(x,y)垂直的距离。
[0173] (4)根据所述步骤(1)-(3),对所有插值点进行插值处理,得到新的图像。
[0174] 实施例6:
[0175] 本发明所述的基于区域一致性的图像插值算法,包括如下步骤:
[0176] (1)原始图像为F(x,y),放大后的图像为H(x,y),获得放大后的图像中的一个插值点h(i,j);
[0177] (2)利用阈值判断对插值点进行区域划分,确定插值点所属区域,包括:
[0178] I、插值点h(i,j)与原像素点同行时,获得所述插值点左侧的原始像素点f(x,y),获得所述插值点右侧的原始像素点f(x,y+1),y2=|f(x,y)-f(x,y+1)|,t为设定的阈值,单位为像素值,在此t取130,若y2<t,则插值点与f(x,y)和f(x,y+1)属于同一区域,反之,插值点在f(x,y)所属区域和f(x,y+1)所属区域的过渡位置;
[0179] II、当所述插值点h(i,j)与原像素点不同行且不同列时,获得所述插值点左上角、右上角、左下角和右下角的原始像素点分别为:f(x,y)、f(x,y+1)、f(x+1,y)、f(x+1,y+1),设y3=|f(x,y)-f(x+1,y+1)|、y4=|f(x,y+1)-f(x+1,y)|,
[0180] A)当y4<t且y3<t时,则所述插值点与这四个原始像素点属于同一个区域;
[0181] B)当y3<t且y4>t时,则采用众数法,其中众数法是选择一组数据中发生次数最多的值。对此种情况,根据众数法,所述插值点属于f(x,y)和f(x+1,y+1)两个原始像素点所在区域;
[0182] C)当y3>t且y4<t时,则采用众数法所述插值点与f(x,y+1)和f(x+1,y)两个原始像素点属于同一区域;
[0183] D)当y3>t且y4>t时,四个原始像素点在不同的四个区域,所述插值点位于这四个区域的过渡位置,采用邻近法,其中近邻法是指原始像素点中与当前点最近的像素点,根据近邻法,插值点和与其距离较近的邻域点属于同一区域;
[0184] (3)根据所述步骤(2)中确定的区域,选择插值公式,进行插值计算,包括:
[0185] I、当插值点h(i,j)与原始像素同行时,如果插值点与f(x,y)和f(x,y+1)属于同一区域时,采用一维线性插值公式:H(i,j)=f(x,y)*(1-dy)+f(x+1,y)*dy,其中dy为插值点到f(x,y)的距离,满足0≤dy≤1;如果所述插值点h(i,j)在f(x,y)所属区域和f(x,y+1)所属区域的过渡位置时,采用一维线性插值公式:H(i,j)=[f(x,y)*(1-dy)*0.5+f(x+1,y)*dy*0.5]/((1-dy)*0.5+dy*0.5);
[0186] II、当所述插值点h(i,j)与原像素点不同行且不同列时,进行以下处理:
[0187] a)所述插值点与这四个原始像素点属于同一个区域,采用如下二维线性插值公式:
[0188] H(i,j) = [f(x,y)*(2-dx-dy)+f(x+1,y)*(1-dy+dx)+f(x,y+1)*(1-dx+dy)+;f(x+1,y+1)*(dx+dy)]/4
[0189] b)所述插值点与f(x,y)和f(x+1,y+1)两个原始像素点属于同一区域,采用如下二维非线性插值公式:
[0190] H(i,j)= [f(x,y)*(2-dx-dy)*2+f(x+1,y)*(1-dy+dx)+f(x,y+1)*(1-dx+dy);+f(x+1,y+1)*(dx+dy)*2]/6
[0191] c)当所述插值点与f(x,y+1)和f(x+1,y)两个原始像素点属于同一区域时,采用如下二维非线性插值公式:
[0192] H(i,j) = [f(x,y)*(2-dx-dy)+f(x+1,y)*(1-dy+dx)*2+f(x,y+1)*(1-dx+dy)*2+f(x+1,y+1)*(dx+dy)]/6
[0193] d)当插值点与四个原始像素点都不属于同一个区域时,采用如下二维非线性插值公式:
[0194] H(i,j)=[f(x,y)*(2-dx-dy)*2^(d min==d1)+f(x+1,y)*(1-dy+dx)*2^(d min==d2)+f(x,y+1)*(1-dx+dy)*2^(d min==d3)+f(x+1,y+1)*(dx+dy)*2^(d min==d4)]/[(2-dx-dy)*2^(d min==d1)+(1-dy+dx)*2^(d min==d2)+(1-dx+dy)*2^(d min==d3)+(dx+dy)*2^(d min==d4)]
[0195] 其中d min=d1表示插值点与原始像素点f(x,y)距离最近时取值为1,反之,为0;d min=d2表示插值点与原始像素点f(x+1,y)距离最近时取值为1,反之,为0;d min=d3表示插值点与原始像素点f(x,y+1)距离最近时取值为1,反之,为0;d min==d4表示插值点与原始像素点f(x+1,y+1)距离最近时取值为1,反之,为0;
[0196] 其中,dx为插值点到f(x,y)的水平距离,dy为插值点到f(x,y)垂直的距离。
[0197] (4)根据所述步骤(1)-(3),对所有插值点进行插值处理,得到新的图像。
[0198] 实施例7
[0199] 假设一幅原始低分辨率图像为F(x,y),如图3所示,插值后高分辨率图像为H(x,y),如图5所示,此处H(2x,2y)=F(x,y),即将原图像放大两倍,插值放大的步骤如下:
[0200] 步骤1、确定插值点在原始图像中的位置。
[0201] 图3为原始图像,f(x,y)、f(x+1,y)、f(x+1,y)和f(x+1,y+1)为原始图像中四个相邻的像素点。图4为插值点映射回原始图像的位置关系,在图4中dx、dy表示插值点映射回原始图像后,其到f(x,y)的水平和垂直距离。图5为插值点可能插值位置及其区域划分依据。将插值点映射回原始图像的位置为(x′,y′),求dx、dy的值,结合图5判断插值点(x′,y′)在原始图像中的可能插值位置。dx=0,dy=0时插值点即为原始图像中的点f(x,y);dx=0,dy≠0时插值点与原始像素同列,即为图5中的点h(2x+1,2y);dx≠0,dy=0时插值点与原始像素同行,即为图5中的点h(2x,2y+1);dx≠0,dy≠0时插值点位于四个相邻原始像素组成的矩形内,即为图5中的点h(2x+1,2y+1)。
[0202] 步骤2、利用阈值判断对插值点周围进行区域划分,同时确定插值点所属区域。本发明对插值点周围进行区域划分时,采用了阈值判断的方法。结合图5,具体过程为:
[0203] (1)插值点位于图5中点h(2x,2y)的位置时,插值点即为原始图像中的点f(x,y),则不进行区域划分,直接将点f(x,y)的值赋值给插值点h(2x,2y)。
[0204] (2)插值点位于图5中的点h(2x+1,2y)的位置时,设y1=|f(x,y)-f(x+1,y)|,t为设定的阈值,t取110,单位为像素值,像素值是在[0,255]之间的数值。若y1<t,则点f(x,y)和点f(x+1,y)属于同一区域,插值点h(2x+1,2y)在点f(x,y)和点f(x+1,y)所属区域内部;若y1>t,则点f(x,y)和点f(x+1,y)不在同一区域,插值点h(2x+1,2y)在点f(x,y)所属区域和点f(x+1,y)所属区域的过渡位置。
[0205] (3)插值点位于图5中点h(2x,2y+1)的位置时,设y2=|f(x,y)-f(x,y+1)|,若y2<t,则点f(x,y)和点f(x,y+1)属于同一区域,插值点h(2x,2y+1)在点f(x,y)和点f(x,y+1)所属区域内部;若y2>t,则点f(x,y)和点f(x,y+1)不在同一区域,插值点h(2x,2y+1)在点f(x,y)所属区域和点f(x,y+1)所属区域的过渡位置。
[0206] (4)插值点位于图5中点h(2x+1,2y+1)的位置时,设y3=|f(x,y)-f(x+1,y+1)|,y4=|f(x,y+1)-f(x+1,y)|,若y3<t且y4<t,点f(x,y),f(x,y+1),f(x+1,y),f(x+1,y+1)属于同一区域,插值点h(2x+1,2y+1)在这四个相邻点所属区域内部;若y3<t且y4>t,则点f(x,y)、f(x+1,y+1)属于同一区域,点f(x,y+1)、f(x+1,y)不属于同一区域,根据众数法判断,插值点h(2x+1,2y+1)在点f(x,y)和f(x+1,y+1)所属区域内部;若y3>t且y4<t,则点f(x,y)、f(x+1,y+1)不属于同一区域,点f(x,y+1)、f(x+1,y)属于同一区域,根据众数法判断,插值点h(2x+1,2y+1)在点f(x,y+1)、f(x+1,y)所属区域内部;若y3>t且y4>t,四个相邻像素点都不在同一区域,插值点位于这四个区域的过渡位置,根据近邻法判断插值点与哪个点的距离最近,则插值点与其最近的原始像素点属于同一区域。
[0207] 步骤3、利用插值公式求取插值点像素值。本发明的插值计算公式是根据插值点周围的区域划分情况构造的,结合图3-图5,具体实施过程如下:
[0208] (1)对于点h(2x,2y),直接将原始图像中的像素点f(x,y)的像素值赋值给h(2x,2y)。
[0209] (2)对于点h(2x+1,2y),当其在点f(x,y)和点f(x+1,y)所属区域内部时,使得插值权重与插值点h(2x+1,2y)到f(x,y)和f(x+1,y)的距离成反比,采用如下一维线性插值公式:
[0210] H(i,j)=f(x,y)*(1-dy)+f(x+1,y)*dy
[0211] 其中dx为插值点到f(x,y)的距离,满足0≤dx≤1。
[0212] 当插值点h(2x+1,2y)在点f(x,y)所属区域和点f(x+1,y)所属区域的过渡位置时,采用如下一维线性插值公式:
[0213] H(i,j)=[f(x,y)*(1-dy)*0.5+f(x+1,y)*dy*0.5]/((1-dy)*0.5+dy*0.5)[0214] (3)对于点h(2x,2y+1),当其在点f(x,y)和点f(x,y+1)所属区域内部时,使得插值权重与插值点h(2x,2y+1)到f(x,y)和f(x+1,y)的距离成反比,采用如下一维线性插值公式:
[0215] H(i,j)=f(x,y)*(1-dy)+f(x+1,y)*dy
[0216] 其中dy为插值点到f(x,y)的距离,满足0≤dy≤1。
[0217] 当插值点h(2x,2y+1)位于区域间过度位置时,采用如下一维线性插值公式:
[0218] H(i,j)=[f(x,y)*(1-dy)*0.5+f(x+1,y)*dy*0.5]/((1-dy)*0.5+dy*0.5)[0219] (4)对于点h(2x+1,2y+1),当其在四个原始像素所属区域内部时,使得插值权重与插值点h(2x+1,2y+1)到f(x,y)、f(x+1,y)、f(x+1,y)和f(x+1,y+1)的距离成反比,采用如下二维线性插值公式:
[0220] H(i,j) = [f(x,y)*(2-dx-dy)+f(x+1,y)*(1-dy+dx)+f(x,y+1)*(1-dx+dy)+f(x+1,y+1)*(dx+dy)]/4
[0221] 当插值点h(2x+1,2y+1)在f(x,y)和f(x+1,y+1)所属区域内部时,采用如下二维非线性插值公式:
[0222] H(i,j) = [f(x,y)*(2-dx-dy)*2+f(x+1,y)*(1-dy+dx)+f(x,y+1)*(1-dx+dy)+f(x+1,y+1)*(dx+dy)*2]/6
[0223] 当插值点h(2x+1,2y+1)在f(x,y+1)和f(x+1,y)所属区域内部时,采用如下二维非线性插值公式:
[0224] H(i,j) = [f(x,y)*(2-dx-dy)+f(x+1,y)*(1-dy+dx)*2+f(x,y+1)*(1-dx+dy)*2+f(x+1,y+1)*(dx+dy)]/6
[0225] 当插值点h(2x+1,2y+1)与四个原始像素点都不属于同一个区域时,采用如下二维非线性插值公式:
[0226] H(i,j)=[f(x,y)*(2-dx-dy)*2^(d min==d1)+f(x+1,y)*(1-dy+dx)*2^(d min==d2)+f(x,y+1)*(1-dx+dy)*2^(d min==d3)+f(x+1,y+1)*(dx+dy)*2^(d min==d4)]/[(2-dx-dy)*2^(d min==d1)+(1-dy+d)*2^(d min==d2)+(1-dx+dy)*2^(d min==d3)+(dx+dy)*2^(d min==d4)]
[0227] 其中d min==d1表示插值点与原始像素点f(x,y)距离最近时取值为1,反之,为0;d min=d2表示插值点与原始像素点f(x+1,y)距离最近时取值为1,反之,为0;d min=d3表示插值点与原始像素点f(x,y+1)距离最近时取值为1,反之,为0;d min=d4表示插值点与原始像素点f(x+1,y+1)距离最近时取值为1,反之,为0。
[0228] 步骤4、计算插值点像素值,输出插值后图像H(x,y)。利用步骤3中的插值公式求取插值点像素值,输出插值后图像H(x,y)。
[0229] 本发明所述的基于区域一致性的图像插值算法,实现简单、运算量小,能够快速完成这些步骤,克服了传统插值算法对边缘区域划分不准确造成的图像质量较低的现象,使得插值后图像获得较高视觉质量。
[0230] 显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈