实施例一、
本发明实施例提供一种图像放大的方法,具体如图1所示,包括:
S101、获取源图像,并获取源图像的颜色格式分量。
具体的,本发明实施例中,源图像具体指原始图像。
具体的,由于源图像的颜色格式并不相同,因此源图像的颜色格式分量并不是唯一确定的。示例性的:
若源图像为红-绿-蓝(Red-Green-Blue,RGB)颜色格式,则源图像的颜色格式分量包括:R分量、G分量、B分量;若源图像为亮度-色调-饱和度(Luminance-Chrominance-Saturation,YCrCb)颜色格式,则源图像的颜色格式分量包括:Y分量、Cr分量、Cb分量。本发明实施例对源图像的颜色格式分量具体包括哪些分量不作具体限定,源图像的颜色格式分量具体依据源图像的颜色格式而定。
S102、确定与放大方向上的待插值点在颜色格式分量上具有最大相关度方向的两个第一源像素点,放大方向包括:水平方向、竖直方向。
需要说明的是,第一源像素点可能是源图像中的像素点,也可能是图像放大过程中的插值点,本发明实施例对此不作具体限定。示例性的,若插值点C是根据像素点A和像素点B通过一定算法插值得到的,则像素点A和像素点B可以称为插值点C的第一源像素点。
一种可能的实现方式中,如图2所示,步骤S102具体可以包括:
S102a、结合预设相关度计算方向,计算与放大方向上的待插值点相邻两侧的第一源像素点组中两个源像素点在颜色分量上的像素值的绝对值,放大方向包括:水平方向、竖直方向。
S102b、根据绝对值取值确定最大相关度方向。
S102c、将第一源像素点组中最大相关度方向上的两个源像素点确定为与放大方向上的待插值点在颜色格式分量上具有最大相关度方向的两个第一源像素点。
需要说明的是,本发明实施例中在确定与放大方向上的待插值点在颜色格式分量上具有最大相关度方向的两个第一源像素点的过程中,采用一阶差分计算方式确定最大相关度方向,相对于现有技术中采用二阶差分计算方式计算源图像中各方向的相关性的方法,在满足计算结果基本一致的前提下,一阶差分的计算过程更为简单,进而能够快速确定最大相关度方向,得到与放大方向上的待插值点在颜色格式分量上具有最大相关度方向的两个第一源像素点,节约计算时间,从而提升整个图像放大过程的计算效率。
优选的,当放大方向为水平方向时,步骤S102a具体可以通过如下方式实现:
根据第一预设公式,计算与放大方向上的待插值点相邻两侧的第一源像素点组中两个源像素点在颜色分量上的像素值的绝对值,第一预设公式如公式(1)所示:
Dk=|fZ(m+k,n)-fZ(m-k,n+1)| 公式(1)
其中,K取-2、-1、0、1、2,表征5个不同相关度计算方向,Dk表示在k方向上的相关度值,fZ(m+k,n)表示像素点f(m+k,n)在颜色格式分量上的像素值,fZ(m-k,n+1)表示像素点f(m-k,n+1)在颜色格式分量上的像素值,像素点f(m+k,n)与像素点f(m-k,n+1)为在K方向上与待插值点相邻的2个第一源像素点。
公式(1)具体可表征一个最大相关度模型,该最大相关度模型对应的像素点阵具体可以如图3所示。其中,0方向上的像素点f(m,n)、f(m,n+1)为与待插值点在水平方向左右相邻的2个第一源像素点,当0方向确定后,f(m+1,n)与f(m-1,n+1)所在的方向为1方向,f(m-1,n)与f(m+1,n+1)所在的方向为-1方向,f(m+2,n)与f(m-2,n+1)所在的方向为2方向,f(m-2,n)与f(m+2,n+1)所在的方向为-2方向。
其中,0方向上的第一源像素点的确定方法可以如下:
根据源图像的宽度值、目标图像的预设宽度值、以及第七预设公式,确定目标图像中水平方向的待插值点对应的左右两个第一源像素点。第七预设公式包括公式(2)和公式(3):
Step_h=1.0*In_image_width/Out_image_width 公式(2)
Int_y=(int)(y*Step_h),q=y*Step_h-Int_y 公式(3)
其中,y表示目标图像中待插值点f(x,y)的列坐标,Int_y表示待插值点f(x,y)对应的左侧第一源像素点的列坐标,Step_h表示宽度放大比例,In_image_width表示源图像的宽度,Out_image_width表示目标图像的宽度,q表示在水平方向放大时待插值点f(x,y)与左侧第一源像素点的距离。
需要说明的是,在水平方向放大时,待插值点到0方向上的第一源像素点的距离与0方向上的第一源像素点与待插值点的距离系数之和为1,因此根据待插值点到0方向上的第一源像素点的距离可以计算得到0方向上的第一源像素点与待插值点的距离系数。
示例性的,假设如图4所示,源图像的宽度值为3、高度值为2;如图5所示,目标图像的预设宽度值为4、预设高度值为3。这里以目标图像中水平方向的待插值点(0,1)点(即图5中的A点)为例,给出确定目标图像中水平方向的待插值点对应的0方向上的左右两个第一源像素点的示例如下:
根据公式(2),可知Step_h=3/4,根据公式(3),可知Int_y=0、q=3/4,所以源像素点(0,0)点(即图4中的A1点)以及在水平方向距离(0,0)点最近的(0,1)点(即图4中的A2点)即是待插值点A对应的0方向上的左右两个第一源像素点,待插值点A到左侧第一源像素点(0,0)的距离为q=3/4,距离系数为1-q=1/4;由于左右两个第一源像素点到待插值点的距离之和为1,因此待插值点A到右侧第一像素点(0,1)的距离为1-q=1/4,距离系数为1-(1-q)=3/4。
优选的,当放大方向为竖直方向时,步骤S102a具体可以通过如下方式实现:
根据第二预设公式,计算与放大方向上的待插值点相邻两侧的第一源像素点组中两个源像素点在颜色分量上的像素值的绝对值,第二预设公式如公式(4)所示:
Dk=|fZ(m,n+k)-fZ(m+1,n-k)| 公式(4)
其中,K取-2、-1、0、1、2,表征5个不同相关度计算方向,Dk表示在k方向上的相关度值,fZ(m,n+k)表示像素点f(m,n+k)在颜色格式分量上的像素值,fZ(m+1,n-k)表示像素点f(m+1,n-k)在颜色格式分量上的像素值,像素点f(m,n+k)与像素点f(m+1,n-k)为在K方向上与所述待插值点相邻的2个第一源像素点。
公式(4)具体可表征一个最大相关度模型,该最大相关度模型对应的像素点阵具体可以如图6所示,其中,0方向上的像素点f(m,n)、f(m+1,n)为与待插值点在竖直方向上下相邻的2个第一源像素点,当0方向确定后,f(m,n+1)与f(m+1,n-1)所在的方向为1方向,f(m,n-1)与f(m+1,n+1)所在的方向为-1方向,f(m,n+2)与f(m+1,n-2)所在的方向为2方向,f(m,n-2)与f(m+1,n+2)所在的方向为-2方向。
其中,0方向上的第一源像素点的确定方法可以如下:
根据源图像的高度值、目标图像的预设高度值、以及第八预设公式,确定目标图像中竖直方向的待插值点对应的上下两个第一源像素点。第八预设公式包括公式(5)和公式(6):
Step_v=1.0*In_image_height/Out_image_height 公式(5)
Int_x=(int)(x*Step_v),p=x*Step_v-Int_x 公式(6)
其中,x表示目标图像中待插值点f(x,y)的行坐标,Int_x表示待插值点f(x,y)对应的上侧第一源像素点的行坐标,Step_v表示高度放大比例,In_image_height表示源图像的高度,Out_image_height表示目标图像的高度,p表示在竖直方向放大时待插值点f(x,y)与上侧第一源像素点的距离。
需要说明的是,在竖直方向放大时,待插值点到0方向上的第一源像素点的距离与0方向上的第一源像素点与待插值点的距离系数之和为1,因此根据待插值点到0方向上的第一源像素点的距离可以计算得到0方向上的第一源像素点与待插值点的距离系数。
示例性的,假设如图4所示,源图像的宽度值为3、高度值为2;如图5所示,目标图像的预设宽度值为4、预设高度值为3。这里以目标图像中竖直方向的待插值点(1,2)点(即图5中的D点)为例,给出确定目标图像中竖直方向的待插值点对应的0方向上的上下两个第一源像素点的示例如下:
根据公式(5),可知Step_v=2/3,根据公式(6),可知Int_x=0、p=2/3,所以源像素点(0,2)点(即图4中的D1点)以及在竖直方向距离(0,2)点最近的(1,2)点(即图4中的D2点)即是待插值点D对应的0方向上的上下两个第一源像素点,待插值点D到上侧第一源像素点(1,2)的距离为p=2/3,距离系数为1-p=1/3;由于上下两个第一源像素点到待插值点的距离之和为1,因此待插值点D到下侧第一源像素点(0,2)的距离为1-p=1/3,距离系数为1-(1-p)=2/3。
进一步的,当最大相关度模型如公式(1)或公式(4)所示时,根据绝对值取值确定最大相关度方向(步骤S102b)具体可以包括:
根据绝对值取值,获得颜色格式分量在5个不同相关度方向上的相关度值的最小值Dmin;
根据最小值Dmin,结合最大相关度方向判断准则,确定最大相关度方向,其中,最大相关度方向判断准则包括:
若Dmin与D0相等,将0方向确定为最大相关度方向。
若Dmin与D1相等,且Dmin≠D0&&Dmin≠D-2&&Dmin≠D-1&&Dmin≠D2,将1方向确定为最大相关度方向。
若Dmin与D-1相等,且Dmin≠D0&&Dmin≠D-2&&Dmin≠D1&&Dmin≠D2,将-1方向确定为最大相关度方向。
若Dmin与D2相等,且Dmin≠D0&&Dmin≠D-2&&Dmin≠D1&&Dmin≠D-1,将2方向确定为最大相关度方向。
若Dmin与D-2相等,且Dmin≠D0&&Dmin≠D2&&Dmin≠D1&&Dmin≠D-1,将-2方向确定为最大相关度方向。
若Dmin=D-2&&Dmin=D-1,且Dmin≠D0&&Dmin≠D2&&Dmin≠D1,将-1方向确定为最大相关度方向。
若Dmin=D2&&Dmin=D1,且Dmin≠D0&&Dmin≠D-2&&Dmin≠D-1,将1方向确定为最大相关度方向。
否则,若上述情况均不满足,将0方向确定为最大相关度方向。
也就是,需要判断最小值与所述预设K个方向上每一个方向上的的值是否相等,先判断是否与相等,若是,则选择0方向为最大相关度方向,否则继续判断是否仅与除0方向之外的其中一个方向的值相等而与剩余其他方向的值均不相等,若是则将该方向确定为最大相关度方向,否则判断是否同时与多个方向的值相等,选择K的绝对值取值较小的方向为最大相关度方向,但需要注意的是,此处的多个方向应为同一偏向方位上的,比如从模型上看,此处多个方向均位于左上位置,或者均位于右下方位的。若仅同一偏向、不同偏角的两个方向上的相关度值均与Dmin相等,比如-2方向和-1方向上的相关度值均与Dmin相等、2方向和1方向上的相关度值均与Dmin相等,而其它方向上的相关度值均与Dmin不相等,此时选择k的绝对值取值较小的方向为最大相关度方向;当存在不同偏向的两个方向上的相关度值均与Dmin相等时,比如-1和1方向上的相关度值均与Dmin相等,此时认为0方向是最可靠的,-1和1方向中的任一方向作为最大相关度方向均不可靠,因此该情况下会选取0方向为最大相关度方向。
需要说明的是,公式(1)及公式(4)所表征的最大相关度模型仅是本发明实施例提供的一种优选的最大相关度模型,在本发明实施例中,也可以选用其它最大相关度模型,只要能够用以确定与放大方向上的待插值点在颜色格式分量上具有最大相关度方向的两个第一源像素点即可,本发明实施例对此不作具体限定。
需要说明的是,在本发明实施例的步骤S102中,之所以确定与放大方向上的待插值点在颜色格式分量上具有最大相关度方向的两个第一源像素点,是因为该两个第一源像素点与待插值点的相关性最大,在视觉上最为相似。因此当待插值点处于图像的边界、边缘位置时,根据两个第一源像素点计算得到的待插值点在视觉上与原始图像边缘和细节处的像素点最为相似,从而使得放大后的图像边缘和细节更为清晰。
S103、分别计算两个第一源像素点与待插值点的距离系数;以及分别计算两个第一源像素点的边界程度系数。
具体的,当最大相关度模型为公式(1)所表征的最大相关度模型时,即最大相关度模型对应的像素点阵具体可以如图3所示时,基于相似三角形对应边成比例的性质,可知最大相关度方向上的两个第一源像素点与水平方向的插值点的距离和0方向上的两个第一源像素点与水平方向的待插值点的距离对应成比例,进而最大相关度方向上的两个第一源像素点与水平方向的待插值点的距离系数和0方向上的两个第一源像素点与水平方向的插值点的距离系数相同。类似的,当最大相关度模型为公式(4)所表征的最大相关度模型时,即最大相关度模型对应的像素点阵具体可以如图6所示时,基于相似三角形对应边成比例的性质,可知最大相关度方向上的两个第一源像素点与竖直方向的待插值点的距离和0方向上的两个第一源像素点与竖直方向的待插值点的距离对应成比例,进而最大相关度方向上的两个第一源像素点与竖直方向的插值点的距离系数和0方向上的两个第一源像素点与竖直方向的插值点的距离系数相同。
本领域普通技术人员容易理解的是,通常,源像素点与待插值点的距离系数能够反映源像素点与待插值点在位置上的接近程度。比如,源像素点A与待插值点的距离系数大于源像素点B与待插值点的距离系数,则表征源像素点A相对于源像素点B在位置上更为接近待插值点。
具体的,在本发明实施例中,步骤S103具体可以通过以下方式实现:
根据第三预设公式,分别计算两个第一源像素点的边界程度系数,第三预设公式如公式(7)所示:
ωi,j=1.0-α*(Ei,j/512)2 公式(7)
其中,Ei,j=λ×Si,j+(1-λ)×Di,j,ωi,j表示第一源像素点f(i(j)的边界程度系数;α为修正因子,默认值为0.5;Ei,j表示第一源像素点f(i,j)的边界程度;Si,j表示f(i,j)周围方向的梯度总和;Di,j表示f(i,j)四邻域的差分总和;λ表示Si,j和Di,j的权重系数,默认值为0.43。当然,α、λ也可以取其它数值,本发明实施例对此不作具体限定。
一种可能的实现方式中,Si,j、Di,j具体通过如下第四预设公式计算得到,第四预设公式包括公式(8)和公式(9):
公式(8)
Di,j=|di,j|, 公式(9)
其中,表示f(i,j)在水平方向的边界程度,表示f(i,j)在竖直方向的边界程度,表示f(i,j)在45度方向的边界程度,表示f(i,j)在135度方向的边界程度,di,j表示孤立点的边界程度。
需要说明的是,第四预设公式具体可表征一个边界程度检测模型,该边界程度检测模型对应的像素点阵具体可以如图7所示,以第一源像素点f(i,j)为中心点,紧邻行与列环绕的8个点作为边缘阵点。
进一步的,一种可能的实现方式中,当边界程度检测模板为:
孤立点检测模板为:
具体通过如下第五预设公式计算得到,第五预设公式包括公式(10)、公式(11)、公式(12)、公式(13)、公式(14):
公式(10)
公式(11)
公式(12)
公式(13)
di,j=fi-1,j+fi,j-1+fi,j+1+fi+1,j-4*fi,j; 公式(14)
其中,fa,b表示像素点f(a,b)的像素值,a的取值为i-1、i、i+1,b的取值为j-1、j、j+1。
需要说明的是,第四预设公式所表征的边界程度检测模型仅是本发明实施例提供的一种优选的边界程度检测模型,第五预设公式所表征的边界程度检测模板及孤立点检测模板仅是本发明实施例提供的一种优选的边界程度检测模板及孤立点检测模板,在本发明实施例中,也可以选用其它边界程度检测模型,或其它边界程度检测模板及孤立点检测模板,只要能够用以计算两个第一源像素点的边界程度系数即可,本发明实施例对此不作具体限定。
本领域普通技术人员容易理解的是,通常,源像素点的边界程度系数能够反映源像素点的边界程度。具体而言,源像素点的边界程度系数较小,表征源像素点处于边界、边缘位置;源像素点的边界程度系数较大,表征第一源像素点处于平坦区域。
S104、根据两个第一源像素点的边界程度系数分别修正两个第一源像素点与待插值点的距离系数,并进行归一化,获得两个第一源像素点的归一化修正系数。
一种可能的实现方式中,根据两个第一源像素点的边界程度系数分别修正两个第一源像素点与待插值点的距离系数,并进行归一化的步骤可以如下:
根据两个第一源像素点的边界程度系数,结合第六预设公式,分别修正两个第一源像素点与待插值点的距离系数,并进行归一化。
其中,第六预设公式包括公式(15)和公式(16):
公式(15)
公式(16)
其中,ωx1,y1表示第一源像素点f(x1,y1)的边界程度系数,ωx2,y2表示第一源像素点f(x2,y2)的边界程度系数,αx1,y1表示待插值点与f(x1,y1)的距离系数,αx2,y2表示待插值点与f(x2,y2)的距离系数,βx1,y1表示f(x1,y1)的归一化修正系数,βx2,y2表示f(x2,y2)的归一化修正系数。
需要说明的是,在本发明实施例步骤S104中,之所以根据两个第一源像素点的边界程度系数分别修正两个第一源像素点与待插值点的距离系数,是因为:如上所述,第一源像素点的边界程度系数能够反映第一源像素点的边界程度。当第一源像素点的边界程度系数较大时,则表征第一源像素点处于平坦区域,使用边界程度系数修正距离系数后,会增加处于平淡区域的该第一源像素点参与待插值点的像素值的计算的权重,进而可以增强平坦区域的源像素点对待插值点的影响;当第一源像素点的边界程度系数较小时,则表征第一源像素点处于边缘、边界位置,使用边界程度系数修正距离系数后,会减少处于边缘、边界位置的该第一源像素点参与待插值点的像素值的计算的权重,进而可以减弱处于边缘、边界位置的源像素点对待插值点的影响。如此一来,根据该归一化修正系数计算得到的待插值点就可以尽量靠近平坦区域,从而可以减小图像放大产生的锯齿,起到抑制锯齿现象的作用。
S105、分别将两个第一源像素点在颜色格式分量的像素值与各自对应的归一化修正系数相乘后叠加,得到待插值点在颜色格式分量的像素值。
其中,步骤S105可以用公式(17)表示如下:
fZ(x,y)=βx1,y1fZ(x1,y1)+βx2,y2fZ(x2,y2) 公式(17)
其中,βx1,y1表示f(x1,y1)的归一化修正系数,βx2,y2表示f(x2,y2)的归一化修正系数,fZ(x1,y1)表示f(x1,y1)在颜色格式分量的像素值,fZ(x2,y2)表示f(x2,y2)在颜色格式分量的像素值,fZ(x,y)表示插值点f(x,y)在颜色格式分量的像素值。
需要说明的是,本发明实施例提供的图像放大方法中,包括水平放大方向上的待插值点在各颜色格式分量的像素值的计算、以及竖直放大方向上的待插值点在各颜色格式分量的像素值的计算。即,需要选择所有放大方向及所有颜色格式分量,直至完成所有插值点像素值计算。在本发明实施例的上述实施过程中,并不限定放大方向及颜色格式分量的执行顺序。即,水平方向的待插值点在各分量的像素值和竖直方向的待插值点在各分量的像素值的计算可以交替进行,也可以同步进行。示例性的,若源图像的颜色格式分量包括:Y分量、Cr分量、Cb分量,则水平方向的待插值点在Y分量的像素值、水平方向的待插值点在Cr分量的像素值、水平方向的待插值点在Cb分量的像素值、竖直方向的待插值点在Y分量的像素值、竖直方向的待插值点在Cr分量的像素值以及竖直方向的待插值点在Cb分量的像素值的计算顺序并不唯一确定,可以根据实际情况灵活选择。
需要说明的是,本发明实施例将水平放大方向上的待插值点在各颜色格式分量的像素值与竖直放大方向上的待插值点在各颜色格式分量的像素值的分开进行计算,即采用一维方法放大,仅需要放大方向上的两点线性插值即可得到待插值点。相对于现有技术中的二维放大方法中需要采用3点线性插值,至少需要两行数据才能计算得到水平方向或竖直方向上的待插值点的计算方案,一方面,由于2D放大方法在计算时,需要至少缓存一行的数据,因此在硬件上必须增加一个缓冲寄存器,同时计算过程相对复杂一些,需要较多逻辑运算器件,而本发明实施例的一维放大方法可以仅在单一方向进行计算,无需缓存其它行或列的数据,因此不需要缓冲寄存器,并可以减少逻辑运算器件,所以可以从硬件上节省资源,使得整个芯片的面积减少;另一方面,一维放大方法中的两点计算比2D放大方法中的三点计算更加简单,因此可以降低图像放大过程的计算复杂度,节约计算时间,提高图像放大的效率。
进一步的,本发明实施例提供的图像放大的方法中,在获取源图像之后,获取源图像的颜色格式分量之前,可以先确定源图像的颜色格式是否为YCrCb444颜色格式,若源图像的颜色格式不是YCrCb444颜色格式,将源图像的颜色格式转化为YCrCb444颜色格式。这是因为,一方面,由于RGB颜色格式几乎包括了人类视力所能感知的所有颜色,因此在人眼看来RGB颜色格式中的颜色与自然界中的颜色十分接近,所以在计算机、电视机系统中大多采用RGB颜色格式显示图像。而在将YCrCb444颜色格式的图像转化成RGB颜色格式显示时形成的失真度较小,因此,将源图像的颜色格式转化为YCrCb444颜色格式进行放大,在根据用户习惯将图像还原成RGB颜色格式显示时,可以降低图像的失真度;另一方面,由于YCrCb444颜色格式中三个分量的比例是1:1:1,因此可以认为与待插值点在Y分量、Cr分量、Cb分量上具有最大相关度方向的两个第一源像素点的边界程度系数一致。在计算得到其中一个分量上的两个第一源像素点的边界程度系数之后,其余两个分量上的两个第一源像素点的边界程度系数可以不用计算,直接采用计算得到的其中一个分量上的两个第一源像素点的边界程度系数即可,这样可以减少计算步骤,简化计算过程,节约计算时间。一般情况下,由于相比色调与饱和度,人眼对亮度更为敏感,因而在图像放大时,可以先计算得到放大方向上的待插值点在Y分量的像素值,该过程中计算得到与待插值点在Y分量上具有最大相关度方向的两个第一源像素点的边界程度系数。进而,在计算得到放大方向上的待插值点在Cr分量的像素值与放大方向上的待插值点在Cb分量的像素值的过程中,可以直接利用Y分量上的两个第一源像素点的边界程度系数,不需要再次计算边界程度系数,减少了计算步骤,简化计算过程,节约计算时间,提高图像放大的效率。
示例性的,如图8所示,这里将结合本发明上述实施例的描述,给出一种具体的图像放大的示例如下:
S801、读入源图像。
其中,源图像的颜色格式可以是RGB、亮度-色调-饱和度(Luminance-Chrominance-Saturation,YUV)422、YUV444、YCrCb422、YCrCb444等颜色格式。
S802、确定源图像的颜色格式是否为YCrCb444颜色格式。
S803、若源图像的颜色格式不是YCrCb444颜色格式,将源图像的颜色格式转化为YCrCb444颜色格式。
S804、获取源图像的Y分量、Cr分量、Cb分量。
S805a、计算竖直方向上的待插值点在Y分量的像素值。
S805b、计算竖直方向上的待插值点在Cr分量的像素值。
S805c、计算竖直方向上的待插值点在Cb分量的像素值。
S805d、计算水平方向上的待插值点在Y分量的像素值。
S805e、计算水平方向上的待插值点在Cr分量的像素值。
S805f、计算水平方向上的待插值点在Cb分量的像素值。
其中,如上所述,步骤S805a-S805e没有必然的先后执行顺序,本示例对此不作具体限定。
具体的,水平方向及竖直方向上的待插值点在Y分量、Cb分量、Cr分量的像素值的计算方法可参考实施例一的相关描述,本示例在此不再赘述。
S806、将计算得到的图像转化为读入源图像时源图像的颜色格式,得到目标图像。
S807、保存目标图像。
至此,使用本发明实施例提供的图像放大的方法对图像进行放大的过程结束。
示例性的,为了客观地对比本发明提供的图像放大的方法与现有技术中图像放大的方法的优劣,这里将一组采用不同插值放大方法获取的放大图像与原始图像的峰值信噪比结果显示如下:
表一
其中,表一为选取尺寸为1920×1080的图像1、图像2、图像3,分别进行均匀亚采样,得到尺寸为720×480的采样图像后,以得到的采样图像为源图像,分别使用双线性插值法、双立方插值法、最大相关度插值法以及本发明实施例提供的图像放大方法,将源图像放大至1920×1080,得到的放大图像与原始图像的峰值信噪比结果。
由实验数据可知,本发明实施例提供的图像放大的方法相对于现有技术中图像放大的方法,所获得的放大图像与原始图像的峰值信噪比相对较大。峰值信噪比能够反映重建图像的图像质量,峰值信噪比越大,重建图像与原始图像差别越小,重建图像的质量越高。因此,相比于其它三种图像放大的方法,根据本发明实施例提供的图像放大的方法获得的放大图像与原始图像差别最小,图像质量最高。
基于本发明实施例提供的图像放大的方法,在获取源图像,并获取源图像的颜色格式分量之后,确定与放大方向上的待插值点在颜色格式分量上具有最大相关度方向的两个第一源像素点,所述放大方向包括:水平方向、竖直方向。之所以确定与放大方向上的待插值点在所述颜色格式分量上具有最大相关度方向的两个第一源像素点,是因为现有的图像插值方法通常先找到待插值点在原始图像中对应的映射点,然后利用映射点周围邻近的源像素点,结合插值公式,计算待插值点的像素值。因此,现有的图像插值方法仅仅根据位置选择源像素点,并没有考虑待插值点与源像素点的相关性。当待插值点处于边界、边缘位置时,待插值点对应的映射点周围邻近的源像素点与待插值点虽然在位置上很靠近,在视觉上却相差较大,进而根据这些源像素点得到的待插值点与其周围像素点相差较大,最终导致放大后的图像边缘和细节信息丢失,图像质量较差。本发明实施例提供的图像放大的方法,不再如现有技术那样仅依靠位置选择源像素点,而是考虑到待插值点与源像素点的相关性,确定与放大方向上的待插值点在所述颜色格式分量上具有最大相关度方向的两个第一源像素点。由于该两个第一源像素点与待插值点的相关性最大,在视觉上最为相似。因此当待插值点处于图像的边界、边缘位置时,根据两个第一源像素点计算得到的待插值点在视觉上与原始图像边缘和细节处的像素点最为相似,从而使得放大后的图像边缘和细节更为清晰。
在确定两个第一源像素点之后,分别计算两个第一源像素点与待插值点的距离系数,得到两个第一源像素点与待插值点的距离系数。通常,第一源像素点与待插值点的距离系数能够反映第一源像素点与待插值点在位置上的接近程度。比如,第一源像素点A与待插值点的距离系数大于第一源像素点B与待插值点的距离系数,则表征第一源像素点A相对于第一源像素点B在位置上更为接近待插值点;以及,分别计算两个第一源像素点的边界程度系数,得到两个第一源像素点的边界程度系数。通常,第一源像素点的边界程度系数能够反映第一源像素点的边界程度。比如,第一源像素点的边界程度系数较小,表征第一源像素点处于边界、边缘位置;第一源像素点的边界程度系数较大,表征第一源像素点处于平坦区域。
进而,根据两个第一源像素点的边界程度系数分别修正两个第一源像素点与待插值点的距离系数,并进行归一化,获得所述两个第一源像素点的归一化修正系数。即,本发明实施例在图像放大过程中,同时考虑到反映第一源像素点与待插值点的相对位置的距离系数、以及反映第一源像素点的边界程度的边界程度系数这两个因素,通过边界程度系数修正距离系数。之所以根据两个第一源像素点的边界程度系数分别修正两个第一源像素点与待插值点的距离系数,是因为:如上所述,第一源像素点的边界程度系数能够反映第一源像素点的边界程度。当第一源像素点的边界程度系数较大时,则表征第一源像素点处于平坦区域,使用边界程度系数修正距离系数后,会增加处于平淡区域的该第一源像素点参与待插值点的像素值的计算的权重,进而可以增强平坦区域的源像素点对待插值点的影响;当第一源像素点的边界程度系数较小时,则表征第一源像素点处于边缘、边界位置,使用边界程度系数修正距离系数后,会减少处于边缘、边界位置的该第一源像素点参与待插值点的像素值的计算的权重,进而可以减弱处于边缘、边界位置的源像素点对待插值点的影响。如此一来,根据该归一化修正系数计算得到的待插值点就可以尽量靠近平坦区域,从而可以减小图像放大产生的锯齿,起到抑制锯齿现象的作用。
最后,分别将两个第一源像素点在所述颜色格式分量的像素值与各自对应的归一化修正系数相乘后叠加,得到待插值点在颜色格式分量的像素值。
综上,通过上述技术方案,一方面,本发明实施例考虑到待插值点与源像素点的相关性,根据与放大方向上的待插值点在所述颜色格式分量上具有最大相关度方向的两个第一源像素点计算待插值点。由于该两个第一源像素点与待插值点的相关性最大,在视觉上最为相似。因此,当待插值点处于图像的边界、边缘位置时,根据两个第一源像素点计算得到的待插值点在视觉上与原始图像边缘和细节处的像素点最为相似,从而使得放大后的图像边缘和细节更为清晰;另一方面,本发明实施例提供的图像放大的方法还分别计算两个第一源像素点与待插值点的距离系数;以及,分别计算两个第一源像素点的边界程度系数;并根据两个第一源像素点的边界程度系数分别修正两个第一源像素点与待插值点的距离系数。这样,当第一源像素点的边界程度系数较大时,即第一源像素点处于平坦区域时,使用边界程度系数修正距离系数后,会增加处于平淡区域的该第一源像素点参与待插值点的像素值的计算的权重,进而可以增强平坦区域的源像素点对待插值点的影响;当第一源像素点的边界程度系数较小时,即第一源像素点处于边缘、边界位置时,使用边界程度系数修正距离系数后,会减少处于边缘、边界位置的该第一源像素点参与待插值点的像素值的计算的权重,进而可以减弱处于边缘、边界位置的源像素点对待插值点的影响。如此一来,根据该归一化修正系数计算得到的待插值点就可以尽量靠近平坦区域,从而可以减小图像放大产生的锯齿,起到抑制锯齿现象的作用。
实施例二、
本发明实施例提供一种图像放大的装置90,具体如图9所示,装置90包括:获取单元901、确定单元902、距离系数计算单元903、边界程度系数计算单元904、距离系数修正单元905、像素值计算单元906。
获取单元901,用于获取源图像,并获取源图像的颜色格式分量。
确定单元902,用于确定与放大方向上的待插值点在颜色格式分量上具有最大相关度方向的两个第一源像素点,放大方向包括:水平方向、竖直方向。
距离系数计算单元903,用于分别计算两个第一源像素点与待插值点的距离系数。
边界程度系数计算单元904,用于分别计算两个第一源像素点的边界程度系数。
距离系数修正单元905,用于根据两个第一源像素点的边界程度系数分别修正两个第一源像素点与待插值点的距离系数,并进行归一化,获得两个第一源像素点的归一化修正系数。
像素值计算单元906,用于分别将两个第一源像素点在颜色格式分量的像素值与各自对应的归一化修正系数相乘后叠加,得到待插值点在颜色格式分量的像素值。
一种可能的实现方式中,如图10所示,确定单元902具体包括:绝对值计算模块902a、最大相关度方向确定模块902b、第一源像素点确定模块902c。
绝对值计算模块902a,用于结合预设相关度计算方向,计算与放大方向上的待插值点相邻两侧的第一源像素点组中两个源像素点在颜色分量上的像素值的绝对值。
最大相关度方向确定模块902b,用于根据绝对值取值确定最大相关度方向。
第一源像素点确定模块902c,用于将第一源像素点组中最大相关度方向上的两个源像素点确定为与放大方向上的待插值点在颜色格式分量上具有最大相关度方向的两个第一源像素点。
优选的,当放大方向为水平方向时,绝对值计算模块902a具体用于:
根据第一预设公式,计算与放大方向上的待插值点相邻两侧的第一源像素点组中两个源像素点在颜色分量上的像素值的绝对值,第一预设公式包括:Dk=|fZ(m+k,n)-fZ(m-k,n+1)|;
其中,K取-2、-1、0、1、2,表征5个不同相关度计算方向,Dk表示在k方向上的相关度值,fZ(m+k,n)表示像素点f(m+k,n)在颜色格式分量上的像素值,fZ(m-k,n+1)表示像素点f(m-k,n+1)在颜色格式分量上的像素值,像素点f(m+k,n)与像素点f(m-k,n+1)为在K方向上与待插值点相邻的2个第一源像素点。
优选的,当放大方向为竖直方向时,绝对值计算模块902a具体用于:
根据第二预设公式,计算与放大方向上的待插值点相邻两侧的第一源像素点组中两个源像素点在颜色分量上的像素值的绝对值,第二预设公式包括:Dk=|fZ(m,n+k)-fZ(m+1,n-k)|;
其中,K取-2、-1、0、1、2,表征5个不同相关度计算方向,Dk表示在k方向上的相关度值,fZ(m,n+k)表示像素点f(m,n+k)在颜色格式分量上的像素值,fZ(m+1,n-k)表示像素点f(m+1,n-k)在颜色格式分量上的像素值,像素点f(m,n+k)与像素点f(m+1,n-k)为在K方向上与待插值点相邻的2个第一源像素点。
进一步的,最大相关度方向确定模块902b具体用于:
根据绝对值取值,获得颜色格式分量在5个不同相关度方向上的相关度值的最小值Dmin;
根据最小值Dmin,结合最大相关度方向判断准则,确定最大相关度方向,其中,最大相关度方向判断准则包括:
若Dmin与D0相等,将0方向确定为最大相关度方向;
若Dmin与D1相等,且Dmin≠D0&&Dmin≠D-2&&Dmin≠D-1&&Dmin≠D2,将1方向确定为最大相关度方向;
若Dmin与D-1相等,且Dmin≠D0&&Dmin≠D-2&&Dmin≠D1&&Dmin≠D2,将-1方向确定为最大相关度方向;
若Dmin与D2相等,且Dmin≠D0&&Dmin≠D-2&&Dmin≠D1&&Dmin≠D-1,将2方向确定为最大相关度方向;
若Dmin与D-2相等,且Dmin≠D0&&Dmin≠D2&&Dmin≠D1&&Dmin≠D-1,将-2方向确定为最大相关度方向;
若Dmin=D-2&&Dmin=D-1,且Dmin≠D0&&Dmin≠D2&&Dmin≠D1,将-1方向确定为最大相关度方向;
若Dmin=D2&&Dmin=D1,且Dmin≠D0&&Dmin≠D-2&&Dmin≠D-1,将1方向确定为最大相关度方向;
否则,若上述情况均不满足,将0方向确定为最大相关度方向。
一种可能的实现方式中,边界程度系数计算单元904具体用于:
根据第三预设公式,分别计算两个第一源像素点的边界程度系数,第三预设公式包括:
ωi,j=1.0-α*(Ei,j/512)2,其中,Ei,j=λ×Si,j+(1-λ)×Di,j;
ωi,j表示第一源像素点f(i,j)的边界程度系数,α为修正因子,Ei,j表示第一源像素点f(i,j)的边界程度,Si,j表示f(i,j)周围方向的梯度总和,Di,j表示f(i,j)四邻域的差分总和,λ表示Si,j和Di,j的权重系数。
进一步的,Si,j、Di,j具体可以通过如下第四预设公式计算得到,第四预设公式包括:
其中,表示f(i,j)在水平方向的边界程度,表示f(i,j)在竖直方向的边界程度,表示f(i,j)在45度方向的边界程度,表示f(i,j)在135度方向的边界程度,di,j表示孤立点的边界程度。
进一步的,di,j具体可以通过如下第五预设公式计算得到,第五预设公式包括:
di,j=fi-1,j+fi,j-1+fi,j+1+fi+1,j-4*fi,j;
其中,fa,b表示像素点f(a,b)的像素值,a的取值为i-1、i、i+1,b的取值为j-1、j、j+1。
一种可能的实现方式中,距离系数修正单元905具体用于:
根据两个第一源像素点的边界程度系数,结合第六预设公式,分别修正两个第一源像素点与待插值点的距离系数,并进行归一化,其中,第六预设公式包括:
其中,ωx1,y1表示第一源像素点f(x1,y1)的边界程度系数,ωx2,y2表示第一源像素点f(x2,y2)的边界程度系数,αx1,y1表示待插值点与f(x1,y1)的距离系数,αx2,y2表示待插值点与f(x2,y2)的距离系数,βx1,y1表示f(x1,y1)的归一化修正系数,βx2,y2表示f(x2,y2)的归一化修正系数。
具体的,通过本发明实施例提供的图像放大的装置90进行图像放大的方法可参考实施例一的描述,本发明实施例在此不再赘述。
需要说明的是,本发明实施例提供的图像放大的装置具体可以为一种图像放大的芯片系统110,如图11所示,该芯片系统包括处理器1101、存储介质1102。
其中,存储介质1102,用于存储程序代码11021。
处理器1101,用于调用存储介质1102中的程序代码11021,执行如实施例一所述图像放大的方法,本发明实施例在此不再赘述。
基于本发明实施例提供的图像放大的装置,在获取单元获取源图像,并获取源图像的颜色格式分量之后,确定单元确定与放大方向上的待插值点在颜色格式分量上具有最大相关度方向的两个第一源像素点,所述放大方向包括:水平方向、竖直方向。确定单元之所以确定与放大方向上的待插值点在所述颜色格式分量上具有最大相关度方向的两个第一源像素点,是因为现有的图像插值装置通常先找到待插值点在原始图像中对应的映射点,然后利用映射点周围邻近的源像素点,结合插值公式,计算待插值点的像素值。因此,现有的图像插值装置仅仅根据位置选择源像素点,并没有考虑待插值点与源像素点的相关性。当待插值点处于边界、边缘位置时,待插值点对应的映射点周围邻近的源像素点与待插值点虽然在位置上很靠近,在视觉上却相差较大,进而根据这些源像素点得到的待插值点与其周围像素点相差较大,最终导致放大后的图像边缘和细节信息丢失,图像质量较差。本发明实施例提供的图像放大的装置,不再如现有技术那样仅依靠位置选择源像素点,而是考虑到待插值点与源像素点的相关性,由确定单元确定与放大方向上的待插值点在所述颜色格式分量上具有最大相关度方向的两个第一源像素点。由于该两个第一源像素点与待插值点的相关性最大,在视觉上最为相似。因此当待插值点处于图像的边界、边缘位置时,根据两个第一源像素点计算得到的待插值点在视觉上与原始图像边缘和细节处的像素点最为相似,从而使得放大后的图像边缘和细节更为清晰。
在确定单元确定两个第一源像素点之后,距离系数计算单元分别计算两个第一源像素点与待插值点的距离系数,得到两个第一源像素点与待插值点的距离系数。通常,第一源像素点与待插值点的距离系数能够反映第一源像素点与待插值点在位置上的接近程度。比如,第一源像素点A与待插值点的距离系数大于第一源像素点B与待插值点的距离系数,则表征第一源像素点A相对于第一源像素点B在位置上更为接近待插值点;以及,边界程度系数计算单元,分别计算两个第一源像素点的边界程度系数,得到两个第一源像素点的边界程度系数。通常,第一源像素点的边界程度系数能够反映第一源像素点的边界程度。比如,第一源像素点的边界程度系数较小,表征第一源像素点处于边界、边缘位置;第一源像素点的边界程度系数较大,表征第一源像素点处于平坦区域。
进而,距离系数修正单元根据两个第一源像素点的边界程度系数分别修正两个第一源像素点与待插值点的距离系数,并进行归一化,获得所述两个第一源像素点的归一化修正系数。即,本发明实施例的图像放大的装置在图像放大的过程中,同时考虑到反映第一源像素点与待插值点的相对位置的距离系数、以及反映第一源像素点的边界程度的边界程度系数这两个因素,通过边界程度系数修正距离系数。之所以根据两个第一源像素点的边界程度系数分别修正两个第一源像素点与待插值点的距离系数,是因为:如上所述,第一源像素点的边界程度系数能够反映第一源像素点的边界程度。当第一源像素点的边界程度系数较大时,则表征第一源像素点处于平坦区域,使用边界程度系数修正距离系数后,会增加处于平淡区域的该第一源像素点参与待插值点的像素值的计算的权重,进而可以增强平坦区域的源像素点对待插值点的影响;当第一源像素点的边界程度系数较小时,则表征第一源像素点处于边缘、边界位置,使用边界程度系数修正距离系数后,会减少处于边缘、边界位置的该第一源像素点参与待插值点的像素值的计算的权重,进而可以减弱处于边缘、边界位置的源像素点对待插值点的影响。如此一来,根据该归一化修正系数计算得到的待插值点就可以尽量靠近平坦区域,从而可以减小图像放大产生的锯齿,起到抑制锯齿现象的作用。
最后,像素值计算单元分别将两个第一源像素点在所述颜色格式分量的像素值与各自对应的归一化修正系数相乘后叠加,得到待插值点在颜色格式分量的像素值。
综上,通过上述技术方案,一方面,本发明实施例提供的图像放大的装置考虑到待插值点与源像素点的相关性,根据与放大方向上的待插值点在所述颜色格式分量上具有最大相关度方向的两个第一源像素点计算待插值点。由于该两个第一源像素点与待插值点的相关性最大,在视觉上最为相似。因此,当待插值点处于图像的边界、边缘位置时,根据两个第一源像素点计算得到的待插值点在视觉上与原始图像边缘和细节处的像素点最为相似,从而使得放大后的图像边缘和细节更为清晰;另一方面,本发明实施例提供的图像放大的装置还分别计算两个第一源像素点与待插值点的距离系数;以及,分别计算两个第一源像素点的边界程度系数;并根据两个第一源像素点的边界程度系数分别修正两个第一源像素点与待插值点的距离系数。这样,当第一源像素点的边界程度系数较大时,即第一源像素点处于平坦区域时,使用边界程度系数修正距离系数后,会增加处于平淡区域的该第一源像素点参与待插值点的像素值的计算的权重,进而可以增强平坦区域的源像素点对待插值点的影响;当第一源像素点的边界程度系数较小时,即第一源像素点处于边缘、边界位置时,使用边界程度系数修正距离系数后,会减少处于边缘、边界位置的该第一源像素点参与待插值点的像素值的计算的权重,进而可以减弱处于边缘、边界位置的源像素点对待插值点的影响。如此一来,根据该归一化修正系数计算得到的待插值点就可以尽量靠近平坦区域,从而可以减小图像放大产生的锯齿,起到抑制锯齿现象的作用。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。