CN109325909B - 一种图像放大方法和图像放大装置 - Google Patents
一种图像放大方法和图像放大装置 Download PDFInfo
- Publication number
- CN109325909B CN109325909B CN201710640627.7A CN201710640627A CN109325909B CN 109325909 B CN109325909 B CN 109325909B CN 201710640627 A CN201710640627 A CN 201710640627A CN 109325909 B CN109325909 B CN 109325909B
- Authority
- CN
- China
- Prior art keywords
- dif
- pixel
- pixel point
- value
- original image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 230000003321 amplification Effects 0.000 title abstract description 23
- 238000003199 nucleic acid amplification method Methods 0.000 title abstract description 23
- 238000001514 detection method Methods 0.000 claims description 44
- 239000011159 matrix material Substances 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 7
- 230000000694 effects Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 5
- 230000005484 gravity Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4007—Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种图像放大方法和图像放大装置,包括:计算原始图像中每一像素点的方向值和方向可信度;根据原始分辨率、目标分辨率计算新图像中的待插值像素点对应的原始图像坐标;根据所述每一像素点的方向值、计算出的原始图像坐标及其周围三个点的像素值进行基于方向的插值,得到所述待插值像素点的第一像素值;根据计算出的原始图像坐标及其周围三个点的像素值进行插值,得到所述待插值像素点的第二像素值;根据方向可信度对第一像素值和第二像素值进行加权合并,得到所述待插值像素点的像素值。本发明通过合并基于方向的插值和插值的输出结果,有效减少了线性插值放大带来的锯齿现象,且运算复杂度低,实现了任意倍率的放大效果。
Description
技术领域
本发明涉及图像处理技术领域,尤其涉及一种图像放大方法和图像放大装置。
背景技术
随着显示设备分辨率的不断提升,越来的越多的高分辨率(例如4K、8K分辨率)显示设备蜂拥而出,但是,很多视频采集设备拍摄到的视频或照片还停留在720P或1080P的分辨率,为了使得较小的原始图像能够适应高分辨率的显示,就必须对图像进行放大。
目前常用的图像视频放大方法,主要有以下三种:
1)传统的线性插值放大方法:例如双线性插值(Bilinear Interpolation)、双三次插值(Bi-cubic interpolation)等,但是,这种线性插值方法没有考虑图像的纹理方向特征,放大后的图像会存在严重的锯齿现象,影响视觉感官质量;
2)基于方向特征的非线性插值放大方法:这种非线性插值放大方法生成的插值点能够更好地符合原始图像的纹理方向特征,从而使得插值放大的图像更准确;但是,这种放大方法需要通过复杂的运算估计图像纹理方向,而且复杂度随方向特征数目的增加而成倍增加;并且,基本目前所有的方向估计算法都会造成不同程度的方向误判,导致最后的结果有很多噪点,尤其是边缘附近的插值噪点;此外,现有结合方向特征的插值放大方法都是针对图像放大2n(n为大于0的整数)倍设计的,应用场景受限;
3)超分辨率重构方法(Super Resolution):该方法是近年来兴起的一种图像放大方法,但是,这种方法的计算复杂度极高,有的超分辨率重构方法还需要样本进行训练,因此,这种方法不适合于超大规模集成电路(VeryLarge Scale Integration,VLSI)的设计实现。
发明内容
为了解决上述技术问题,本发明提供了一种图像放大方法和图像放大装置,能够有效减少线性插值放大带来的锯齿现象、降低运算复杂度且能够实现任意倍率的放大效果。
为了达到本发明目的,本发明实施例的技术方案是这样实现的:
本发明实施例提供了一种图像放大方法,包括:
计算原始图像中每一像素点的方向值和方向可信度;
根据原始分辨率、目标分辨率计算新图像中的待插值像素点对应的原始图像坐标;
根据所述每一像素点的方向值、计算出的原始图像坐标及其周围三个点的像素值进行基于方向的插值,得到所述待插值像素点的第一像素值;根据计算出的原始图像坐标及其周围三个点的像素值进行插值,得到所述待插值像素点的第二像素值;
根据方向可信度对第一像素值和第二像素值进行加权合并,得到所述待插值像素点的像素值。
进一步地,所述计算原始图像中每一像素点的方向值,具体包括:
以所述每一像素点为中心设置检测模板,分别计算所述检测模板内沿着45°方向的相邻像素之间的差值绝对值之和dif_pos,以及所述检测模板内沿着-45°方向的相邻像素之间的差值绝对值之和dif_neg;
计算所述45°方向的差值绝对值之和dif_pos以及-45°方向的差值绝对值之和dif_neg之间的差值绝对值|dif_pos-dif_neg|,并将计算出的差值绝对值|dif_pos-dif_neg|与预先设置的平坦阈值进行比较,如果小于等于预先设置的平坦阈值,则该像素点的方向为无方向;
如果大于预先设置的平坦阈值,则比较45°方向的差值绝对值之和dif_pos与-45°方向的差值绝对值之和dif_neg的大小,如果dif_pos<dif_neg,则该像素点的方向为45°;如果dif_pos>dif_neg,则该像素点的方向为-45°。
进一步地,所述检测模板为以所述每一像素点为中心的3×3像素矩阵或5×5像素矩阵。
进一步地,所述计算原始图像中每一像素点的方向可信度,具体包括:
如果当前所述像素点的方向为无方向,则该像素点的方向可信度为0;
如果当前所述像素点的方向为45°,则该像素点的方向可信度为1-dif_pos/dif_neg;
如果当前所述像素点的方向为-45°,则该像素点的方向可信度为1-dif_neg/dif_pos。
本发明实施例还提供了一种图像放大装置,包括方向检测模块、方向插值模块、插值模块和合并模块,其中:
方向检测模块,用于计算原始图像中每一像素点的方向值和方向可信度,根据原始分辨率、目标分辨率计算新图像中的待插值像素点对应的原始图像坐标,将计算出的原始图像坐标输出至插值模块和方向插值模块,将计算出的每一像素点的方向可信度输出至合并模块和方向插值模块;
方向插值模块,用于接收方向检测模块的每一像素点的方向值以及原始图像坐标,根据所述每一像素点的方向值、原始图像坐标及其周围三个点的像素值进行基于方向的插值,得到所述待插值像素点的第一像素值,将所述第一像素值输出至合并模块;
插值模块,用于接收方向检测模块的原始图像坐标,根据计算出的原始图像坐标及其周围三个点的像素值进行插值,得到所述待插值像素点的第二像素值,将所述第二像素值输出至合并模块;
合并模块,用于接收所述每一像素点的方向可信度、第一像素值和第二像素值,根据所述方向可信度对第一像素值和第二像素值进行加权合并,得到所述待插值像素点的像素值。
进一步地,所述方向检测模块的计算原始图像中每一像素点的方向值,包括:
以所述每一像素点为中心设置检测模板,分别计算所述检测模板内沿着45°方向的相邻像素之间的差值绝对值之和dif_pos,以及所述检测模板内沿着-45°方向的相邻像素之间的差值绝对值之和dif_neg;
计算所述45°方向的差值绝对值之和dif_pos以及-45°方向的差值绝对值之和dif_neg之间的差值绝对值|dif_pos-dif_neg|,并将计算出的差值绝对值|dif_pos-dif_neg|与预先设置的平坦阈值进行比较,如果小于等于预先设置的平坦阈值,则该像素点的方向为无方向;
如果大于预先设置的平坦阈值,则比较45°方向的差值绝对值之和dif_pos与-45°方向的差值绝对值之和dif_neg的大小,如果dif_pos<dif_neg,则该像素点的方向为45°;如果dif_pos>dif_neg,则该像素点的方向为-45°。
进一步地,所述检测模板为以所述每一像素点为中心的3×3像素矩阵或5×5像素矩阵。
进一步地,所述方向检测模块的计算原始图像中每一像素点的方向可信度,包括:
如果当前所述像素点的方向为无方向,则该像素点的方向可信度为0;
如果当前所述像素点的方向为45°,则该像素点的方向可信度为1-dif_pos/dif_neg;
如果当前所述像素点的方向为-45°,则该像素点的方向可信度为1-dif_neg/dif_pos。
本发明的技术方案,具有如下有益效果:
本发明提供的图像放大方法和图像放大装置,通过检测视频图像中纹理边缘的方向,并根据纹理特征估计该方向的可信度,根据每一像素点的方向值和方向可信度对基于方向的双线性插值和双线性插值的输出结果进行合并,该方法不仅有效减少了线性插值放大带来的锯齿现象,而且运算复杂度很低,同时实现了任意倍率的放大效果,便于VLSI的设计和实现。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实施例的一种图像放大装置的结构示意图;
图2为本发明实施例的一种图像放大方法的流程示意图;
图3为本发明第一优选实施例的图像放大方法的检测模板的结构示意图;
图4为当待插值像素点对应的原始图像坐标点的方向为45°时,方向插值模块获取的原始图像坐标及其周围三个点的结构示意图;
图5为当待插值像素点对应的原始图像坐标点的方向为-45°时,方向插值模块获取的原始图像坐标及其周围三个点的结构示意图;
图6为插值模块获取的原始图像坐标及其周围三个点的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
如图1所示,根据本发明的一种图像放大方法,包括如下步骤:
步骤101:计算原始图像中每一像素点的方向值和方向可信度;
进一步地,所述计算原始图像中每一像素点的方向值,具体包括:
以所述每一像素点为中心设置检测模板,分别计算所述检测模板内沿着45°方向的相邻像素之间的差值绝对值之和dif_pos,以及所述检测模板内沿着-45°方向的相邻像素之间的差值绝对值之和dif_neg;
计算所述45°方向的差值绝对值之和dif_pos以及-45°方向的差值绝对值之和dif_neg之间的差值绝对值|dif_pos-dif_neg|,并将计算出的差值绝对值|dif_pos-dif_neg|与预先设置的平坦阈值进行比较,如果小于等于预先设置的平坦阈值,则该像素点的方向为无方向;
如果大于预先设置的平坦阈值,则比较45°方向的差值绝对值之和dif_pos与-45°方向的差值绝对值之和dif_neg的大小,如果dif_pos<dif_neg,则该像素点的方向为45°;如果dif_pos>dif_neg,则该像素点的方向为-45°。
在本发明一实施例中,所述检测模板为以所述每一像素点为中心的3×3像素矩阵或5×5像素矩阵。
进一步地,所述计算原始图像中每一像素点的方向可信度,具体包括:
如果当前所述像素点的方向为无方向,则该像素点的方向可信度为0;
如果当前所述像素点的方向为45°,则该像素点的方向可信度为1-dif_pos/dif_neg;
如果当前所述像素点的方向为-45°,则该像素点的方向可信度为1-dif_neg/dif_pos。
步骤102:根据原始分辨率、目标分辨率计算新图像中的待插值像素点对应的原始图像坐标;
进一步地,所述步骤102中根据原始分辨率、目标分辨率计算新图像中的待插值像素点对应的原始图像坐标,具体包括:
其中,hor_dst和ver_dst分别表示待插值像素点在新图像中的水平和垂直坐标,hor_ori和ver_ori分别表示待插值像素点对应的原始图像坐标的水平坐标和垂直坐标的整数部分,表示向下取整,src_height、src_width、dst_height、dst_width分标表示原始图像高度、宽度和新图像高度、宽度;hor_ori_phase和ver_ori_phase分别表示待插值像素点对应的原始图像坐标的水平坐标和垂直坐标的小数部分。
步骤103:根据所述每一像素点的方向值、计算出的原始图像坐标及其周围三个点的像素值进行基于方向的插值,得到所述待插值像素点的第一像素值;根据计算出的原始图像坐标及其周围三个点的像素值进行插值,得到所述待插值像素点的第二像素值;
在本发明一实施例中,所述根据计算出的原始图像坐标及其周围三个点的像素值进行插值,得到所述待插值像素点的第二像素值,具体包括:
itp1=A*(1-ver_ori-phase)+C*ver_ori_phase
itp2=B*(1-ver_ori_phase)+D*ver_ori_phase
BI=itp1*(1-hor_ori_phase)+itp2*hor_ori_phase.
其中,itp1为第一中间插值像素值,itp2为第二中间插值像素值,A、B、C、D分别为(ver_ori,hor_ori)、(ver_ori,hor_ori+1)、(ver_ori+1,hor_ori)及(ver_ori+1,hor_ori+1)四个点的像素值,weight为权重因子,BI为所述待插值像素点的第二像素值。
在本发明一实施例中,所述根据所述每一像素点的方向值、计算出的原始图像坐标及其周围三个点的像素值进行基于方向的插值,得到所述待插值像素点的第一像素值,具体包括:
如果当前像素点的方向值为45°,则比较hor_ori_phase+vee_ori_phase的值是否大于1;
如果hor_oriphase+ver_ori_phase小于或等于1,则获取(ver_ori,hor_ori)、(ver_ori,hor_ori+1)及(ver_ori+1,hor_ori)三个点的像素值A、B、C,并根据如下公式进行基于方向的插值;
itp1=A*(1-ver_ori_phase)+C*ver_ori_phase
itp2=B*(1-ver_ori_phase)+C*ver_ori_phase
weight=hor_ori_phase/(1-ver_ori_phase)
EBBI=itp1*(1-weight)+itp2*weight;
其中,itp1为第一中间插值像素值,itp2为第二中间插值像素值,weight为权重因子,EBBI为所述待插值像素点的第一像素值;
如果hor_ori_phase+ver_ori_phase大于1,则获取(ver_ori,hor_ori+1)、(ver_ori+1,hor_ori)及(ver_ori+1,hor_ori+1)三个点的像素值B、C、D,并根据如下公式进行基于方向的插值;
itp1=B*(1-ver_ori_phase)+D*ver_ori_phase
itp2=B*(1-ver_ori_phase)+C*ver_ori_phase
weight=(1-hor_ori_phase)/ver_ori_phase
EBBI=itp1*(1-weight)+itp2*weight.
如果当前像素点的方向值为-45°,则比较hor_ori_phase与ver_ori_phase的大小;
如果hor_ori_phase<=ver_ori_phase,则获取(ver_ori,hor_ori)、(ver_ori+1,hor_ori)及(ver_ori+1,hor_ori+1)三个点的像素值A、C、D,并根据如下公式进行基于方向的插值;
itp1=A*(1-ver_ori_phase)+C*ver_ori_phase
itp2=A*(1-ver_ori_phase)+D*ver_ori_phase
weight=hor_ori_phase/ver_ori_phase
EBBI=itp1*(1-weight)+itp2*weight;
如果hor_ori_phase>ver_oriphase,则获取(ver_ori,hor_ori)、(ver_ori,hor_ori+1)及(ver_ori+1,hor_ori+1)三个点的像素值A、B、D,并根据如下公式进行基于方向的插值;
itp1=B*(1-ver_ori_phase)+D*ver_ori_phase
itp2=A*(1-ver_ori_phase)+D*ver_ori_phase
weight=(1-hor_ori_phase)/(1-ver_ori_phase)
EBBI=itp1*(1-weight)+itp2*weight。
步骤104:根据方向可信度对第一像素值和第二像素值进行加权合并,得到所述待插值像素点的像素值。
在本发明一实施例中,所述步骤104中根据方向可信度对第一像素值和第二像素值进行加权合并,得到所述待插值像素点的像素值,具体包括:
output=Alpha*EBBI+(1-Alpha)*BI;
其中,output为待插值像素点的像素值,Alpha为当前像素点的方向可信度。
如图2所示,根据本发明的一种图像放大装置,包括方向检测模块、方向插值模块、插值模块和合并模块,其中:
方向检测模块,用于计算原始图像中每一像素点的方向值和方向可信度,根据原始分辨率、目标分辨率计算新图像中的待插值像素点对应的原始图像坐标,将计算出的原始图像坐标输出至插值模块和方向插值模块,将计算出的每一像素点的方向可信度输出至合并模块和方向插值模块;
方向插值模块,用于接收方向检测模块的每一像素点的方向值以及原始图像坐标,根据所述每一像素点的方向值、原始图像坐标及其周围三个点的像素值进行基于方向的插值,得到所述待插值像素点的第一像素值,将所述第一像素值输出至合并模块;
插值模块,用于接收方向检测模块的原始图像坐标,根据计算出的原始图像坐标及其周围三个点的像素值进行插值,得到所述待插值像素点的第二像素值,将所述第二像素值输出至合并模块;
合并模块,用于接收所述每一像素点的方向可信度、第一像素值和第二像素值,根据所述方向可信度对第一像素值和第二像素值进行加权合并,得到所述待插值像素点的像素值。
进一步地,所述方向检测模块的计算原始图像中每一像素点的方向值,包括:
以所述每一像素点为中心设置检测模板,分别计算所述检测模板内沿着45°方向的相邻像素之间的差值绝对值之和dif_pos,以及所述检测模板内沿着-45°方向的相邻像素之间的差值绝对值之和dif_neg;
计算所述45°方向的差值绝对值之和dif_pos以及-45°方向的差值绝对值之和dif_neg之间的差值绝对值|dif_pos-dif_neg|,并将计算出的差值绝对值|dif_pos-dif_neg|与预先设置的平坦阈值进行比较,如果小于等于预先设置的平坦阈值,则该像素点的方向为无方向;
如果大于预先设置的平坦阈值,则比较45°方向的差值绝对值之和dif_pos与-45°方向的差值绝对值之和dif_neg的大小,如果dif_pos<dif_neg,则该像素点的方向为45°;如果dif_pos>dif_neg,则该像素点的方向为-45°。
在本发明一实施例中,所述检测模板为以所述每一像素点为中心的3×3像素矩阵或5×5像素矩阵。
进一步地,所述方向检测模块的计算原始图像中每一像素点的方向可信度,包括:
如果当前像素点的方向为无方向,则该像素点的方向可信度为0;
如果当前像素点的方向为45°,则该像素点的方向可信度为1-dif_pos/dif_neg;
如果当前像素点的方向为-45°,则该像素点的方向可信度为1-dif_neg/dif_pos。
需要说明的是,方向插值模块和插值模块具体的插值过程如前所述,此处不再赘述。
本发明还提供了一个优选的实施例对本发明进行进一步解释,但是值得注意的是,所述优选实施例只是为了更好的描述本发明,并不构成对本发明不当的限定。
根据本发明的一种图像放大方法,包括如下步骤:
第一步:对输入数据按照模板进行方向检测以及方向可信度估计,方向检测使用的模板见图3,其中(0,0)表示当前处理点,其余表示相对当前处理点的偏移坐标,括号内的第一个数值表示行偏移坐标,第二个数值表示列偏移坐标,计算过程具体如下:
(101)分别计算模板内像素沿着45°和-45°方向的像素之间的差值绝对值之和,作为当前处理点的两个方向特征值,根据该方法使用的模板,45°和-45°方向各需要计算四个差值绝对值,然后进行累加,见如下公式:
dif_pos=abs(p0,-1-p-1,0)+abs(p1,-1-p0,0)+abs(p0,0-p-1,1)+abs(p1,0-p0,1)
dif_neg=abs(p0,-1-p1,0)+abs(p-1,-1-p0,0)+abs(p0,0-p1,1)+abs(p-1,0-p0,1)
其中dif_pos表示45°方向特征值,dif_neg表示-45°方向特征值。
(102)判断dif_pos和dif_neg是否近似相等:在图像纹理较为复杂区域或者一些平坦区域,方向特征并不是很明显,如果一定要强加一个方向给这种区域,往往会造成方向的误判,进而影响后续的插值效果,所以这里对这种复杂或者平坦区域进行判定,也即如果该区域45°的特征和-45°特征值近似接近,那么就认为该点处于复杂或者平坦区域。
其中equal_thr是输入参数,可以根据需要进行配置,默认配置为30。
(103)根据(101)和(102)计算当前点的方向值dir和可信度值alpha:
根据(102)得到的特性,首先判定当前点是否处于复杂或者平台区域,如果是的话那么当前点判定为无方向(NONE),这样避免方向误判造成插值不准确;如果不是在复杂或者平坦区域,那么就判断45°和-45°方向特征值的大小,如果45°方向特征值dif_pos小于-45°方向特征值,说明该点所在区域具有45°方向特征,即判定当前点方向为45°(POS);其它情况则判定当前点方向为-45°(NEG)。
在该发明中,除了给出方向信息外,同时还会估计给定方向的可信度,众所周知,如果一个区域方向特征很明显的情况下,那么该区域沿着方向的像素之间差值绝对值累加值和垂直于该方向的像素之间差值累计值会差别很大,这也是我们计算可信度的依据,具体计算如下
第二步:利用第一步得到的方向值进行基于方向的双线性插值(Edge-basedBilinear Interpolation,EBBI),具体过程如下:
(201)首先根据原始分辨率和目标分辨率求出新图像中的待插值像素点对应的原始图像坐标的整数部分以及小数部分;
其中,hor_dst和ver_dst分别表示待插值像素点在新图像中的水平和垂直坐标,hor_ori和ver_ori分别表示待插值像素点对应的原始图像坐标的水平坐标和垂直坐标的整数部分,表示向下取整,src_height、src_width、dst_height、dst_width分标表示原始图像高度、宽度和新图像高度、宽度;hor_ori_phase和ver_ori_phase分别表示待插值像素点对应的原始图像坐标的水平坐标和垂直坐标的小数部分。
(202)利用(201)得到的原始图像坐标及其周围三个点,进行基于方向的插值,插值方式包括图4和图5所示的四种情况,其中45°对应图4中的第一种和第二种情况,-45°对应图5中的第三种和第四种情况,四种情况插值方法类似,这里仅以像素位于第1区域的第一种情况为例说明如何进行点插值,其它情况以此类推。
首先判定像素点是否位于第1区域内,位于第1区域内的当前点应符合如下特征:
hor_ori_phase+ver_ori_phase<=1;
如果满足上述公式,则会用图4中(ver_ori,hor_ori)、(ver_ori,hor_ori+1)及(ver_ori+1,hor_ori)三个点的像素值A、B、C进行插值,该插值过程与普通双线性插值(Bilinear Interpolation,BI)类似,需要先利用三个点进行两次插值,得到两个中间插值像素值itp1、itp2,再用得到的两个中间插值像素值itp1和itp2再进行一次插值,得到所述待插值像素点的第一像素值EBBI;
插值中使用的权重采用的计算规则是,距离待插值像素点位置越近的点获得的权重越大;
EBBI=itp1*(1-weight)+itp2*weight
itp1=A*(1-ver_ori_phase)+C*ver_ori_phase
itp2=B*(1-ver_ori_phase)+C*ver_ori_phase
weight=hor_ori_phase/(1-ver_ori_phase)
由于每个点都具有方向信息,所以当前点方向为POS时,输出第一像素值为第1区域和第2区域中的某一个值,而当前点为NEG时,输出第一像素值为第3区域和第4区域中的某一个值。
需要说明的是,位于第2区域内的当前点应符合如下特征:
hor_ori_phase+ver_ori_phase>1;
如果满足上述公式,则会用图4中(ver_ori,hor_ori+1)、(ver_ori+1,hor_ori)及(ver_ori+1,hor_ori+1)三个点的像素值B、C、D进行插值;
位于第3区域内的当前点应符合如下特征:
hor_ori_phase<=ver_ori_phase;
如果满足上述公式,则会用图5中(ver_ori,hor_ori)、(ver_ori+1,hor_ori)及(ver_ori+1,hor_ori+1)三个点的像素值A、C、D进行插值;
位于第4区域内的当前点应符合如下特征:
hor_ori_phase>=ver_ori_phase;
如果满足上述公式,则会用图5中(ver_ori,hor_ori)、(ver_ori,hor_ori+1)及(ver_ori+1,hor_ori+1)三个点的像素值A、B、D进行插值,具体的计算过程如前所述,此处不再赘述。
第三步:根据输入进行双线性插值BI,得到所述待插值像素点的第二像素值BI:
插值使用的点如图6所示,该过程只有一种计算方式,计算过程如下:
BI=itp1*(1-hor_ori_phase)+itp2*hor_ori_phase
itp1=A*(1-ver_ori_phase)+C*ver_ori_phase
itp2=B*(1-ver_ori_phase)+D*ver_ori_phase
第四步:利用方向可信度Alpha值、所述待插值像素点的第一像素值EBBI以及所述待插值像素点的第二像素值BI进行合并输出,采用合并输出不仅能够避免单独采用基于方向的双线性插值算法由于方向估计不准造成的插值结果错误,而且能够解决只采用普通的双线性插值造成插值结果锯齿现象明显的问题。
本优选实施例的合并原则是如果当前点方向可信度Alpha值较大,那么最终输出中所述待插值像素点的第一像素值EBBI的比重会越大,反之,则所述待插值像素点的第二像素值BI的比重越大。具体合并输出公式为:
output=Alpha*EBBI+(1-Alpha)*BI。
本发明提供的图像放大方法和图像放大装置,能自动检测视频图像中纹理边缘的方向,并根据纹理特征估计该方向的可信度,对可信度为1的点采用基于方向的双线性插值放大EBBI,而对可信度为0的点采用普通的双线性插值放大BI,介于0和1之间的点利用EBBI和BI进行合并输出,该方法不仅有效减少了线性插值放大带来的锯齿现象,而且运算复杂度很低,同时实现了任意倍率的放大效果,便于VLSI的设计和实现。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现,相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种图像放大方法,其特征在于,包括:
计算原始图像中每一像素点的方向值和方向可信度;
根据原始分辨率、目标分辨率计算新图像中的待插值像素点对应的原始图像坐标;
根据所述每一像素点的方向值、计算出的原始图像坐标及其周围三个点的像素值进行基于方向的插值,得到所述待插值像素点的第一像素值;根据计算出的原始图像坐标及其周围三个点的像素值进行插值,得到所述待插值像素点的第二像素值;
根据方向可信度对第一像素值和第二像素值进行加权合并,得到所述待插值像素点的像素值;
所述计算原始图像中每一像素点的方向值,具体包括:
以所述每一像素点为中心设置检测模板,分别计算所述检测模板内沿着45°方向的相邻像素之间的差值绝对值之和dif_pos,以及所述检测模板内沿着-45°方向的相邻像素之间的差值绝对值之和dif_neg;
计算所述45°方向的差值绝对值之和dif_pos以及-45°方向的差值绝对值之和dif_neg之间的差值绝对值|dif_pos-dif_neg|,并将计算出的差值绝对值|dif_pos-dif_neg|与预先设置的平坦阈值进行比较,如果小于等于预先设置的平坦阈值,则该像素点的方向为无方向;
如果大于预先设置的平坦阈值,则比较45°方向的差值绝对值之和dif_pos与-45°方向的差值绝对值之和dif_neg的大小,如果dif_pos<dif_neg,则该像素点的方向为45°;如果dif_pos>dif_neg,则该像素点的方向为-45°。
2.根据权利要求1所述的图像放大方法,其特征在于,所述检测模板为以所述每一像素点为中心的3×3像素矩阵或5×5像素矩阵。
3.根据权利要求1所述的图像放大方法,其特征在于,所述计算原始图像中每一像素点的方向可信度,具体包括:
如果当前所述像素点的方向为无方向,则该像素点的方向可信度为0;
如果当前所述像素点的方向为45°,则该像素点的方向可信度为1-dif_pos/dif_neg;
如果当前所述像素点的方向为-45°,则该像素点的方向可信度为1-dif_neg/dif_pos。
4.一种图像放大装置,其特征在于,包括方向检测模块、方向插值模块、插值模块和合并模块,其中:
方向检测模块,用于计算原始图像中每一像素点的方向值和方向可信度,根据原始分辨率、目标分辨率计算新图像中的待插值像素点对应的原始图像坐标,将计算出的原始图像坐标输出至插值模块和方向插值模块,将计算出的每一像素点的方向可信度输出至合并模块,将计算出的每一像素点的方向值输出至方向插值模块;
方向插值模块,用于接收方向检测模块的每一像素点的方向值以及原始图像坐标,根据所述每一像素点的方向值、原始图像坐标及其周围三个点的像素值进行基于方向的插值,得到所述待插值像素点的第一像素值,将所述第一像素值输出至合并模块;
插值模块,用于接收方向检测模块的原始图像坐标,根据计算出的原始图像坐标及其周围三个点的像素值进行插值,得到所述待插值像素点的第二像素值,将所述第二像素值输出至合并模块;
合并模块,用于接收所述每一像素点的方向可信度、第一像素值和第二像素值,根据所述方向可信度对第一像素值和第二像素值进行加权合并,得到所述待插值像素点的像素值;
所述方向检测模块的计算原始图像中每一像素点的方向值,包括:
以所述每一像素点为中心设置检测模板,分别计算所述检测模板内沿着45°方向的相邻像素之间的差值绝对值之和dif_pos,以及所述检测模板内沿着-45°方向的相邻像素之间的差值绝对值之和dif_neg;
计算所述45°方向的差值绝对值之和dif_pos以及-45°方向的差值绝对值之和dif_neg之间的差值绝对值|dif_pos-dif_neg|,并将计算出的差值绝对值|dif_pos-dif_neg|与预先设置的平坦阈值进行比较,如果小于等于预先设置的平坦阈值,则该像素点的方向为无方向;
如果大于预先设置的平坦阈值,则比较45°方向的差值绝对值之和dif_pos与-45°方向的差值绝对值之和dif_neg的大小,如果dif_pos<dif_neg,则该像素点的方向为45°;如果dif_pos>dif_neg,则该像素点的方向为-45°。
5.根据权利要求4所述的图像放大装置,其特征在于,所述检测模板为以所述每一像素点为中心的3×3像素矩阵或5×5像素矩阵。
6.根据权利要求4所述的图像放大装置,其特征在于,所述方向检测模块的计算原始图像中每一像素点的方向可信度,包括:
如果当前所述像素点的方向为无方向,则该像素点的方向可信度为0;
如果当前所述像素点的方向为45°,则该像素点的方向可信度为1-dif_pos/dif_neg;
如果当前所述像素点的方向为-45°,则该像素点的方向可信度为1-dif_neg/dif_pos。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710640627.7A CN109325909B (zh) | 2017-07-31 | 2017-07-31 | 一种图像放大方法和图像放大装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710640627.7A CN109325909B (zh) | 2017-07-31 | 2017-07-31 | 一种图像放大方法和图像放大装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109325909A CN109325909A (zh) | 2019-02-12 |
CN109325909B true CN109325909B (zh) | 2023-03-31 |
Family
ID=65245614
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710640627.7A Active CN109325909B (zh) | 2017-07-31 | 2017-07-31 | 一种图像放大方法和图像放大装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109325909B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112508783B (zh) * | 2020-11-19 | 2024-01-30 | 西安全志科技有限公司 | 基于方向插值的图像处理方法、计算机装置及计算机可读存储介质 |
CN112669429A (zh) * | 2021-01-07 | 2021-04-16 | 稿定(厦门)科技有限公司 | 图像扭曲渲染方法及装置 |
CN113160051B (zh) * | 2021-03-30 | 2023-12-22 | 珠海全志科技股份有限公司 | 基于边缘方向的图像插值采样方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW546777B (en) * | 2002-09-12 | 2003-08-11 | Promos Technologies Inc | Trench and via structure and filling method of the same |
CN101079949A (zh) * | 2006-02-07 | 2007-11-28 | 索尼株式会社 | 图像处理设备和方法、记录介质以及程序 |
CN101866479A (zh) * | 2010-05-07 | 2010-10-20 | 浙江大学 | 基于非下采样Contourlet变换的边缘自适应图像放大方法 |
CN102638679A (zh) * | 2011-02-12 | 2012-08-15 | 澜起科技(上海)有限公司 | 基于矩阵对图像进行插值的方法及图像处理系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5471474B2 (ja) * | 2010-01-14 | 2014-04-16 | 富士通セミコンダクター株式会社 | 画像処理装置および画像処理方法 |
TWI546777B (zh) * | 2015-03-12 | 2016-08-21 | 瑞昱半導體股份有限公司 | 影像處理裝置與方法 |
-
2017
- 2017-07-31 CN CN201710640627.7A patent/CN109325909B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW546777B (en) * | 2002-09-12 | 2003-08-11 | Promos Technologies Inc | Trench and via structure and filling method of the same |
CN101079949A (zh) * | 2006-02-07 | 2007-11-28 | 索尼株式会社 | 图像处理设备和方法、记录介质以及程序 |
CN101866479A (zh) * | 2010-05-07 | 2010-10-20 | 浙江大学 | 基于非下采样Contourlet变换的边缘自适应图像放大方法 |
CN102638679A (zh) * | 2011-02-12 | 2012-08-15 | 澜起科技(上海)有限公司 | 基于矩阵对图像进行插值的方法及图像处理系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109325909A (zh) | 2019-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9041834B2 (en) | Systems and methods for reducing noise in video streams | |
US10614551B2 (en) | Image interpolation methods and related image interpolation devices thereof | |
US8810692B2 (en) | Rolling shutter distortion correction | |
US20100067818A1 (en) | System and method for high quality image and video upscaling | |
JP5500163B2 (ja) | 画像処理システム、画像処理方法および画像処理プログラム | |
JP6160292B2 (ja) | 画像補正装置、撮像装置及び画像補正用コンピュータプログラム | |
CN106780336B (zh) | 一种图像缩小方法及装置 | |
CN109325909B (zh) | 一种图像放大方法和图像放大装置 | |
CN106169173B (zh) | 一种图像插值方法 | |
WO2018196470A1 (zh) | 图像处理方法及装置 | |
US8233748B2 (en) | Image-resolution-improvement apparatus and method | |
JP2009212969A (ja) | 画像処理装置、画像処理方法、及び画像処理プログラム | |
JP5603798B2 (ja) | 欠陥検出装置、欠陥検出方法及びコンピュータプログラム | |
US20160005158A1 (en) | Image processing device and image processing method | |
JP7328096B2 (ja) | 画像処理装置、画像処理方法、およびプログラム | |
WO2015198368A1 (ja) | 画像処理装置及び画像処理方法 | |
JP2019028912A (ja) | 画像処理装置、画像処理方法 | |
KR20120020821A (ko) | 영상 왜곡 보정 장치 및 방법 | |
JP4868249B2 (ja) | 映像信号処理装置 | |
KR101836238B1 (ko) | 다운 스케일링과 비용함수를 이용한 이미지 연결선 추정방법 | |
KR20130036430A (ko) | 저 해상도 깊이 맵으로부터 고 해상도 깊이 맵을 생성하는 방법 및 이를 기록한 기록매체 | |
Gour et al. | Hardware accelerator for real-time image resizing | |
US20130120461A1 (en) | Image processor and image processing method | |
JP5911063B2 (ja) | 物体検出装置およびプログラム | |
CN112237002A (zh) | 图像处理方法和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |