CN111294544B - 一种去隔行处理方法及装置、计算机可读存储介质 - Google Patents
一种去隔行处理方法及装置、计算机可读存储介质 Download PDFInfo
- Publication number
- CN111294544B CN111294544B CN201811504273.4A CN201811504273A CN111294544B CN 111294544 B CN111294544 B CN 111294544B CN 201811504273 A CN201811504273 A CN 201811504273A CN 111294544 B CN111294544 B CN 111294544B
- Authority
- CN
- China
- Prior art keywords
- value
- interlacing
- field
- interpolated
- inter
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/01—Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
- H04N7/0117—Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving conversion of the spatial resolution of the incoming video signal
- H04N7/012—Conversion between an interlaced and a progressive signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/14—Picture signal circuitry for video frequency region
- H04N5/144—Movement detection
- H04N5/145—Movement estimation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Television Systems (AREA)
Abstract
本申请公开了一种去隔行处理方法及装置、计算机可读存储介质。所述去隔行处理方法包括:获取待插值的像素点的图像内容特性信息;根据所述图像内容特性信息确定使用基于运动自适应的去隔行算法或者使用基于运动补偿的去隔行算法进行去隔行处理。本实施例提供的方案,能根据图像内容特性选择不同的去隔行算法。
Description
技术领域
本发明实施例涉及但不限于一种去隔行处理方法及装置、计算机可读存储介质。
背景技术
隔行扫描技术就是把每一帧图像分割为奇场和偶场,隔行扫描的行扫描频率为逐行扫描时的一半,视频信号的频谱以及传送视频信号的信道带宽也是逐行扫描的一半。由于早期通信技术不发达,为了节省有限的带宽,在传统的模拟信号电视中普遍采用隔行扫描的技术。隔行扫描有这样一些缺点:闪烁、画面抖动、垂直边沿锯齿化等。
去隔行(De-Interlace,DIT)就是把隔行视频图像转换为逐行视频图像的过程。目前主流去隔行算法主要是基于运动自适应(Motion Adaptive,MA)的去隔行算法和基于运动补偿(MC,Motion Compensation)的去隔行算法。然而这两种方法都有各自的缺点。
发明内容
本发明至少一实施例提供了一种去隔行处理方法及装置、计算机可读存储介质。
本发明至少一实施例提供一种去隔行处理方法,包括:
获取待插值的像素点的图像内容特性信息;
根据所述图像内容特性信息确定使用基于运动自适应的去隔行算法或者使用基于运动补偿的去隔行算法进行去隔行处理。
本发明至少一实施例提供一种去隔行处理装置,包括存储器和处理器,所述存储器存储有程序,所述程序在被所述处理器读取执行时,实现任一实施例所述的去隔行处理方法。
本发明至少一实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现任一实施例所述的去隔行处理方法。
与相关技术相比,本发明至少一实施例中,获取待插值的像素点的图像内容特性信息;根据所述图像内容特性信息确定使用基于运动自适应的去隔行算法或者使用基于运动补偿的去隔行算法进行去隔行处理。本发明实施例提供的方案,能根据图形内容特性信息选择不同的去隔行处理方案。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1是本发明一实施例提供的去隔行处理方法流程图;
图2是场示意图;
图3是本发明一实施例中M*N像素块示意图;
图4a~4b是本发明一实施例提供的去隔行处理示意图;
图5是基于MA去隔行框图;
图6是基于MA去隔行处理的一种处理方式示意图;
图7是基于MC去隔行框图;
图8是基于MC的去隔行处理示意图;
图9是基于MC去隔行处理的一种处理方式示意图;
图10是边缘方向示意图;
图11是用于拉丝羽化标志计算的5*5像素块示意图;
图12是本发明一实施例提供的去隔行处理装置示意图;
图13是本发明一实施例提供的计算机可读存储介质示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
基于运动自适应(MA)的去隔行算法的优点是算法实现相对简单,在图像静止,或者图像中任意运动物体的非水平边缘纹理有较好的处理效果。
基于运动补偿(MC)的去隔行算法的优点是在运动估计(Motion Estimate,ME)的运动矢量(Motion Vector,MV)的准确的情况下,不会产生信息的丢失,从而保持物体的细节信息,得到更好的去隔行后图像效果。
本文提出采用基于运动自适应的去隔行算法和基于运动补偿的去隔行算法相结合的一种新的去隔行处理方法。本实施例中,根据图像内容特性进行自适应选择以上两种方法。
如图1所述,本发明一实施例提供一种去隔行处理方法,包括:
步骤101,获取待插值的像素点的图像内容特性信息;
步骤102,根据所述图像内容特性信息确定使用基于运动自适应(MA)的去隔行算法或者使用基于运动补偿(MC)的去隔行算法进行去隔行处理。
在一实施例中,所述图像内容特性信息包括以下至少之一:运动矢量(MV)信息、场间匹配信息、帧间匹配信息、所述待插值的像素点的边缘方向信息、拉丝羽化强度信息。
其中,所述MV信息可以基于任意的标准算法获取,例如基于分块的相差绝对值求和(SAD)匹配法等。
其中,边缘方向信息是对当前待插值的像素点的边缘方向进行检测,边缘方向信息的检测是在当前场Fn和前一个场Fn-1中分别进行,边缘方向信息的检测的方法可以是任意通用的边缘方向检测方法,例如sobel算子等。
在图2中,Fn-2~Fn+1这4个图像都是场图像,其中Fn是当前场图像,Fn-1和Fn+1分别是当前场图像的前一场图像和后一场图像,Fn-2场是Fn-1场的前一场。anl,an,anr,bnl,bn,bnr是Fn场中的像素点,cn_1l,cn_1,cn_lr是Fn-1场中的像素点,an_2l,an_2,an_2r,bn_2l,bn_2,bn_2r是Fn-2场中的像素点,cn1l,cn1,cn1r是Fn+1场中的像素点。其中Fn场和Fn+1场合起来被称为当前帧即curr_frame,同理Fn-2场和Fn-1场合起来被称为前一帧last_frame。an和bn则是Fn场图像中的像素点,其对应亮度分量值分别是Yan,Ybn。后续描述中,Yx代表像素点x的亮度分量值,x比如为an,bn,cn1,cn_1等等。Y[i][j]代表第i行第j列的像素点的亮度。去隔行算法就是要在当前场图像的上下两行之间插值得到新一行像素,重构出新的逐行图像的过程。图2中Fn场的斜线填充的像素点就是当前待重构像素,也称为待插值像素。下面是以亮度分量为例来介绍本申请,对于色度分量处理方法与亮度分量完全一致,不再赘述。
其中,所述场间匹配信息根据如下方式确定:在当前场中选择待插值像素点的上一行的M个像素的组成的第一像素块和下一行的M个像素组成的第二像素块,确定第一像素块和第二像素块在前一场中的最佳匹配块,进而得到第一相差绝对值求和(第一SAD)以及第二相差绝对值求和(第二SAD),将其中最大值(第一SAD和第二SAD之中的最大值)作为场间匹配信息,其中,所述上一行的M个像素的中心位置和所述下一行的M个像素的中心位置与所述待插值的像素点处于同一列;即以待插值的像素点为中心,找到其上一行的M个像素,和下一行的M个像素。
需要说明的是,在其他实施例中,也可以直接将第一SAD或第二SAD作为场间匹配信息。
另外,在其他实施例中,也可以在当前场中选择待插值像素点的上一行的M个像素的组成的第一像素块和下一行的M个像素组成的第二像素块,确定第一像素块和第二像素块在后一场中的最佳匹配块,进而得到第三相差绝对值求和(第三SAD)以及第四相差绝对值求和(第四SAD),将其中最大值(第三SAD和第四SAD之中的最大值)作为场间匹配信息,其中,所述上一行的M个像素的中心位置和所述下一行的M个像素的中心位置与所述待插值的像素点处于同一列;即以待插值的像素点为中心,找到其上一行的M个像素,和下一行的M个像素。在其他实施例中,也可以直接将第三SAD或第四SAD作为场间匹配信息sad_field。
在一实施例中,所述帧间匹配信息根据如下方式确定:将待插值的像素点所在的场与下一场组成当前帧,以所述待插值的像素点为中心选择预设大小的块,与前一帧进行匹配得到所述帧间匹配信息。当然,也可以与后一帧进行匹配得到帧间匹配信息。比如,将当前场Fn和下一场Fn+1组成当前帧图像frm_curr,Fn-2和Fn-1两场图像组成前一帧图像frm_last。与场间匹配计算类似,计算到MV后进行匹配。选择以当前待插值点位置为中心的预设大小(比如6x6)块区域,根据这6x6块进行匹配,计算得到帧间匹配值sad_frame。
在一实施例中,所述拉丝羽化强度信息根据如下至少之一确定:
在当前场和前一场的合成帧中取一以所述待插值的像素点为中心且大小为M*N的像素块;对该M*N的像素块,按列计算该列中不同性质场的像素值之差的累加值以及同性质场的像素值之差的累加值;获取满足same_parity_value[i]*coeff)<dif_parity_value[i]的列的数目,其中,same_parity_value[i]为所述M*N像素块中第i列同性质场的像素值之差的累加值,dif_parity_value[i]为所述M*N像素块中第i列不同性质场的像素值之差的累加值,i=0~N-1,所述coeff大于0;当所述满足same_parity_value[i]*coeff)<dif_parity_value[i]的列的数目大于第一阈值时,所述拉丝羽化强度信息大于拉丝强度阈值;
对该M*N的像素块的每一行,获取该行的像素的累加值,得到M个累加值sum_value_ver[l],l=0~M-1;根据该M个累加值得到M-3个阈值thr[j]=|(sum_value_ver[j+1]*2-sum_value_ver[j]-sum_value_ver[j+2]|其中,j=0~M-3;其中,M大于等于3,N大于等于1;
逐点计算同性质场像素值之差以及不同性质场像素值之差;
frame_diff[j][i]=|Y[j][i]-Y[j+2][i]|
field_diff[j][i]=|Y[j+1][i]-Y[j+2][i]|
i=0~N-1;
当满足
thr[j]>frame_diff[j][i]*factor1
thr[j]<field_diff[j][i]*factor2的列的数目大于第二阈值时,所述拉丝羽化强度信息大于拉丝强度阈值,其中,所述factor1和factor2为大于0的拉丝检测调节因子,Y[j][i]为该M*N的像素块第j行第i列的像素点的值,比如亮度值或色度值。在一实施例中,factor1和factor2的取值范围为0~20。需要说明的是,可以使用标志来指示拉丝强度信息是否大于拉丝强度阈值;使用设置bob_flag=1表示拉丝强度信息大于拉丝强度阈值。
如图3所示,M*N像素块中,按列计算该列中不同性质场的像素值之差的累加值为:
第i列不同性质场中的像素值之差的累加值为其中,Y[j][i]为该M*N像素块中第j行第i列的像素点的值,比如亮度值或色度值等。
所述M*N像素块中第i列同性质场的像素值之差的累加值为
对该M*N的像素块的每一行,获取该行的像素的累加值,比如,第l行的累加值以第0行为例,/>
其中,同性质场的像素是指同一场的像素,不同性质场的像素是指不同场的像素。
其中,运动矢量信息用于评估图像的运动情况,所述场间匹配信息和帧间匹配信息用于评估当前场与其相邻的(相邻场或相邻帧)的相似度,需要说明的是,帧间匹配信息和场间匹配信息也可以是其他可以评估相似度的信息。
其中,当所述运动矢量为0或者所述运动矢量指示当前运动强度到达运动强度阈值条件时,使用基于MA的去隔行算法进行去隔行处理。基于MC的去隔行处理对运动估计得到的运动矢量非常敏感,所以对于运动估计(ME)的运动矢量(MV)的准确性要求很高,在物体发生旋转,形变等情况时MV往往会不够可靠从而可能导致补偿错误。即运动强度较大时(到达运动强度阈值条件时),使用基于MA的去隔行算法进行去隔行处理,从而避免了MC算法的补偿错误。
其中,场间匹配信息和帧间匹配信息指示场间或帧间的相似度,当相似度较小时(可以设置相似度阈值条件,当相似度小于相似度阈值条件时),使用基于MA的去隔行算法进行去隔行处理。
其中,边缘方向信息用于判断是否为水平方向(水平方向即图像中行方向(即扫描方向))。如果非水平方向,则使用基于MA的去隔行算法进行去隔行处理。基于MA的去隔行处理由于在运动时采用场内方向插值,对于一些水平边缘纹理可能会丢失一些信息从而导致图像闪烁和模糊。本实施例中,在非水平方向时采用基于MA的去隔行处理,从而避免了丢失信息,导致图形闪烁和模糊。
其中,拉丝羽化强度信息用于评估合成帧中相邻行之间的差异,当两场之间的运动比较大时,拉丝羽化强度信息比较大,因此,当拉丝羽化强度信息大于拉丝强度阈值时,使用基于MA的去隔行算法进行去隔行处理,避免MC算法对MV精度要求比较高,在运动比较大时补充错误的问题,提高了图像效果。
上述条件均不满足时,使用基于MC的去隔行算法进行去隔行处理。
在一实施例中,所述根据所述图像内容特性信息确定使用基于运动自适应的去隔行算法或者使用基于运动补偿的去隔行算法进行去隔行处理包括:
当满足如下条件之一时,使用基于运动自适应的去隔行算法进行去隔行处理;
当如下条件均不满足时,使用基于运动补偿的去隔行算法进行去隔行处理;
所述条件包括以下至少之一:
所述待插值的像素点的运动矢量为零;
所述待插值的像素点的运动矢量中任一个分量的绝对值大于预设数目的整像素时;其中,运动矢量有两个分量。
所述场间匹配信息>第一场间匹配阈值,且,所述帧间匹配信息>第一帧间匹配阈值;
所述场间匹配信息>第二场间匹配阈值,且,所述帧间匹配信息>第二帧间匹配阈值;
所述场间匹配信息>所述帧间匹配信息,且,所述帧间匹配信息>第三帧间匹配阈值;
所述待插值的像素点在当前场的第一边缘方向信息为非水平方向;
所述待插值的像素点在前一场的第二边缘方向信息为非水平方向;
所述待插值的像素点在后一场的第三边缘方向信息为非水平方向;
所述拉丝强度信息大于拉丝强度阈值。即拉丝羽化强度过大时,使用基于MA的去隔行处理。
在一实施例中,所述第一场间匹配阈值的取值范围为0~300;
所述第二场间匹配阈值的取值范围为200~600;
所述第一帧间匹配阈值的取值范围为200~700;
所述第二帧间匹配阈值的取值范围为100~500;
所述第三帧间匹配阈值的取值范围为0~300。
需要说明的是,上述取值仅为示例,可以根据需要取为其他值。
在一实施例中,所述使用基于运动补偿的去隔行算法进行去隔行处理包括:
获取基于运动自适应的去隔行算法所得的所述待插值的像素点的第一取值;
获取基于前向运动补偿的去隔行算法所得的所述待插值的像素点的第二取值;
获取基于后向运动补偿的去隔行算法所得的所述待插值的像素点的第三取值;
将所述第一取值、第二取值、第三取值进行中值滤波,将中值滤波的结果作为所述待插值的像素点的基于运动补偿的去隔行算法所得的取值。
需要说明的是,在其他实施例中,所述使用基于运动补偿的去隔行算法进行去隔行处理可以是获取上述第一取值或者获取第二取值,或者,从第一取值和第二取值中择一。
下面通过一具体实施例进一步说明本申请。如图4a和图4b所示,本发明一实施例所述的去隔行的方法包括:
步骤401,对视频进行基于运动自适应(MA)的去隔行处理。首先当前像素进行运动检测,如果该像素是运动则选择场内方向插值结果作为MA去隔行结果,如果是静止则复制当前帧中的另外一场对应位置像素作为MA去隔行的输出。
如图5所示,当前主流的基于MA的去隔行算法主要流程是:首先对当前像素点进行运动检测,输出move_flag,如果当前像素点是静止,则当前待插值像素根据Yan和Ybn的值从Ycn_1,Ycn1,(Ycn_1+Ycn1)/2中选择一个与Yan和Ybn都最接近的一个所对应的像素点作为最终重构像素输出。具体做法是使用Ycn_1,Ycn1,(Ycn_1+Ycn1)/2这3个值与(Yan+Ybn)/2比较,选择差异最小的作为最终输出。这里的Yan、Ybn、Ycn1都是当前帧的亮度分量,对于色度分量采用同样的方法处理。其中an、bn是当前待插值位置点上一个像素点和下一个像素点,cn_1,cn1分别是前一场和后一场对应位置的像素点。
如果当前像素点是运动则采用场内插值的结果作为最终重构像素输出。场内插值通常采用基于边缘方向的场内插值算法。
如图6所示,如果在待插值像素点处的边缘方向角度为θ6,该方向与待插值的像素点最接近的两个像素点分别为像素点b0和像素点a6,则待插值的像素点当前场内插值为(Yb0+Ya6)/2。对于边缘方向为其他角度时,也是类似处理。最后MA的去隔行结果表示为a。
需要说明的是,以上基于MA的去隔行方法不限于上面所述的方法,可以是上述方法的改进或者适当扩展。
步骤402,对视频进行基于MC的去隔行处理。首先将图像划分为NxN大小的块,对每个块进行运动估计(ME)得到该块的MV。根据已经计算得到的MV进行双向运动补偿(即分为前向运动补偿和后向运动补偿)。前向运动补偿、后向运动补偿以及基于MA的去隔行结果输入到一个3输入的中值滤波器可以得到基于运动补偿的去隔行结果。
如图7所示,首先是将图像进行分块,并且按块计算该分块内待插值像素点处的MV,这里计算MV的方法可以是任意的标准算法,例如基于分块的相差绝对值求和(SAD)匹配法等。对于MV的精度越高越好,具体要根据硬件实现的复杂度和实现的成本代价来定。在本算法中要根据该MV在前一场图像和后一场图像分别得到对应的运动补偿值,即前向运动补偿和后向运动补偿值。
下面就以前向运动补偿为例说明运动补偿的过程。如图8中在当前场Fn中的像素块41为当前块,其在Fn-1场中的最佳匹配块为块42,则此时的MV如图4所示。在进行运动补偿时,根据MV的值,在Fn场中就是把块42与当前块41进行交错合并(如图9所示)为一个帧块,这样就完成了一个块的基于前向运动补偿的去隔行,一场中所有块都进行这样处理就可以完成一整场的去隔行,得到的值就是b。需要注意的是,根据当前场的特性有2种交错方式,如图9所示。
同理,如图8所示,在Fn+1场中也存在一个与当前块41最佳的一个匹配块43,这样就可以把当前块41与Fn+1中对应的匹配块43交错组合为帧来完成后向运动补偿的去隔行,即后向补偿值c。
上面步骤401和步骤402可以并行进行。
最终基于MC的去隔行的输出是把前向运动补偿,后向运动补偿以及基于MA的去隔行结果输入到一个3输入的中值滤波器中进行中值滤波后输出。即最后基于mc的结果为:mc=median(a,b,c),其中,中值滤波是指取中位数,即输出a,b,c中位于序列中间的值。
需要说明的是,在其他实施例中,可以不进行中值滤波,基于MC的去隔行算法的输出可以是基于前向运动补偿得到的结果,亦可以是后向运动补偿得到的结果,或者,是二者中任一,或者,根据一定原则从前向运动补偿得到的结果和后向运动补偿得到的结果其中择一。
步骤403,计算待插值的像素点的图像内容特性,所述图像内容特性包括:帧间匹配信息和场间匹配信息,边缘方向信息,拉丝羽化标志,MV值;
需要说明的是在进行图像内容特性的计算和判断时是按逐像素处理而不是按块处理。图像内容特性的获取包括但不限于:
(a)场间匹配信息的获取:
在当前场Fn中选择待插值像素点的上一行的M个像素和下一行的M个像素分别与Fn-1场中计算得到MV即(mvx,mvy)进行匹配,这时可以计算得到两个SAD值,即sad_u和sad_d。选择其中最大值作为最终匹配值sad_field。
即sad_field=MAX(sad_u,sad_d)
其中SAD值的计算方法如下:
其中,YFn(x+i,y)代表Fn场中坐标为(x+i,y)的像素点的亮度,YFn-1(x+i+mvx,y+mvy)代表Fn-1场中坐标为(x+i+mvx,y+mvy)的像素点的亮度。M的取值可以根据需要设定。
(b)帧间匹配信息获取:
将当前场Fn和下一场Fn+1组成当前帧图像frm_curr,Fn-2和Fn-1两场图像组成前一帧图像frm_last。与场间匹配计算类似,选择以待插值的像素点为中心的块,计算到MV即(mvx,mvy)进行匹配。比如,选择以当前待插值点位置为中心的6x6块区域,根据这6x6块进行匹配,这时可以计算得到帧间匹配值sad_frame。其中,6*6仅为示例,可以根据需要选择其他大小的块进行匹配。当前,也可以是当前帧和后一帧计算帧间匹配信息。
(c)图像边缘方向计算:
对当前待插值的像素点的边缘方向进行检测,边缘方向是在当前场Fn和前一个场Fn-1中分别进行,边缘方向检测的方法可以是任意通用的边缘方向检测方法,例如sobel算子等。这两场检测得到两个边缘方向分别被标记为angle_curr和angle1_last。这些边缘方向从0~180度被定点化分为8个方向,如图10所示,分别用方向0~方向7表示,需要说明的是,此处仅为示例,可以使用其他值表示方向,比如直接使用角度表示,或者,使用两个值表示,水平方向,非水平方向。当然,边缘方向也可以是当前场和后一场中待插值的像素点的边缘方向。或者,边缘方向是前一场、当前场、后一场中任意一个或多个场中待插值的像素点的边缘方向。
(d)图像拉丝羽化标志的确定
“拉丝羽化”效应是由于隔行视频中,物体在两场之间存在较大的运动造成的,其特点一般是在这相邻两场的合成帧中相邻行像素(即不同场的像素)差异较大。于是本算法利用这个特点来对图像进行拉丝羽化标志计算。具体如下:
在当前帧图像中计算拉丝羽化强度是指当前场和前一场的合成帧中计算。需要说明的是,也可以是当前场和后一场的合成帧中计算,以下以当前场和前一场的合成帧为例,具体计算方法如下:
在当前帧(当前场和前一场构成的合成帧)中以当前待插值点位置为中心选择一个MxN的区域进行检测。为了介绍本算法的拉丝羽化标志计算,后面都以MxN为5x5为例来具体说明,需要说明的是,本申请不限于此,可以根据需要选择其他大小的块进行计算。如图11所示,图11中像素点1101是当前待插值点位置。
本实施例中,计算bob_flag1和bob_flag2两个标志位,具体方法如下:
(d.1)计算bob_flag1
按列分别计算该列中不同性质场的像素之差的累加值以及同性质场的像素值之差的累加值,具体如下:
dif_parity_value[i]=|up_data[i]-curr_data[i]|+|curr_data[i]-down_data[i]|
+|down_data[i]-down_down_data[i]|+|up_up_data[i]-up_data[i]|
same_parity_value[i]=|up_up_data[i]-curr_data[i]|+|up_data[i]-down_data[i]|+
+|curr_data[i]-down_down_data[i]|
其中,i=0...N-1,N的取值比如为5。其中,up_up_data[i]是图11中第0行第i列的亮度值,up_data[i]是图11中第1行第i列的亮度值,curr_data[i]是图11中第2行第i列的亮度值,down_data[i]是图11中第3行第i列的亮度值,down_down_data[i]是图11中第4行第i列的亮度值。这里对bob_flag1的计算以N=5为例进行说明,对于N的其他取值也是类似方法。
对于块中N列数据,计算满足下面条件的列的个数wave_cnt1。
same_parity_value[i]*coeff)<dif_parity_value[i]
其中,i=0~4,coeff大于0。在一实施例中,coeff的取值范围为0~20。
根据wave_cnt1的值是否大于阈值Num1判断整个5x5区域是否是属于类型1的拉丝场景,把bob_flag1标记为预设值(比如为1)。Num1的取值范围为1...N,在一实施例中,Num1的取值比如为3。
(d.2)bob_flag2计算
bob_flag2的计算首先将MxN块中水平行的每个像素进行累加,一共得到M个累加值。这里也是以M=5,N=5为例进行算法说明。
根据这5个值计算得到3个判断拉丝情况的阈值,具体如下:
thr[j]=|(sum_value_ver[j+1]*2-sum_value_ver[j]-sum_value_ver[j
+2]|
其中,j=0~M-3。当M=5时,j=0~2。
然后仍然是按列进行计算,分别逐点计算同性质场之差以及不同性质场之差,但是不用进行累加。
frame_diff[0][i]=|up_up_data[i]-curr_data[i]|
frame_diff[1][i]=|up_data[i]-down_data[i]|
frame_diff[2][i]=|curr_data[i]-down_down_data[i]|
field_diff[0][i]=|up_data[i]-curr_data[i]|
field_diff[1][i]=|curr_data[i]-down_data[i]|
field_diff[2][i]=|down_data[i]-down_down_data[i]|
其中,i=0~N-1
根据阈值和每一列上的每个像素差值进行判断当前列是否满足类型2的拉丝情况,对于MxN块中每一列同时满足下面6个条件的情况进行计数,这6个条件具体如下:
thr[j]>frame_diff[j][i]*factor1
thr[j]<field_diff[j][i]*factor2
j=0~2,i=0~N-1,按列比较时i的值不变,j的值从0到2这样每一列就有6次比较,只有当6次比较都满足时才表示该列满足拉丝情况。
这里factor1和factor2是拉丝检测调节因子,且factor1和factor2大于0。在一实施例中,factor1和factor2的取值范围为0~20。
在MxN块中,计算同时满足以上6个条件的列的个数wave_cnt2,如果wave_cnt2的值大于Num2,则说明该5x5区域的bob_flag2标记为1。Num2的取值范围为1...N,在一实施例中,Num 2的取值比如为3。
(d.3)在当前5x5区域中,bob_flag1或者bob_flag2被标记为1时,则将设置该点的拉丝羽化标志bob_flag=1。需要说明的是,置为1仅为示例,可以根据需要置为其他值,表示当前拉丝羽化强度满足拉丝强度条件。需要说明的是,在其他实施例中,也可以在获取bob_flag1=1时,不计算bob_flag2,设置该点的拉丝羽化标志bob_flag=1,或者,在获取bob_flag2=1时,不计算bob_flag1,设置该点的拉丝羽化标志bob_flag=1,或者,不设置bob_flag,直接输出bob_flag1和bob_flag2。
在以上计算图像内容特性的过程中步骤(a)~(d)可以并行进行。
步骤404,根据所述图像内容特性从MA去隔行结果和MC去隔行结果中选择相应的结果输出。
需要说明的是,在其他实施例中,也可以先确定使用基于去MA的去隔行处理,还是基于MC的去隔行处理,如果是基于去MA的去隔行处理,则无需进行基于MC的去隔行处理。
具体的,满足下面条件之一就选择基于MA的去隔行结果,如果均不满足则选择基于MC的去隔行结果:
MV条件:
(1)在当前MV为零时;表示图像静止;
(2)当前MV中任一个分量的绝对值大于T个整像素时,所述T大于0,在一实施例中,所述T比如为9;表示图像运动强度较大,因此使用基于MA的去隔行算法;
SAD条件:
(3)sad_field>sad_field_thr1且sad_frame>sad_frame_thr1,sad_field越小,场间相似度越高,sad_frame越小,帧间相似度越高;
(4)sad_field>sad_field_thr2且sad_frame>sad_frame_thr2
(5)sad_field>sad_frame且sad_frame>sad_frame_thr3
其中,sad_field_thr1的取值范围为0~300;
sad_field_thr2的取值范围为200~600;
sad_frame_thr1的取值范围为200~700;
sad_frame_thr2的取值范围为100~500;
sad_frame_thr3的取值范围为0~300;
边缘角度条件:
(6)angle_curr>0或者angle1_last>0,需要说明的是,此处方向angle_curr>0或angle1_last>0是表示当前的边缘方向为非水平方向,因为前面用值0~7表示0~180度的方向,因此,大于0为非水平方向。如果使用其他值指示方向,可相应变更表达式。当边缘方向为非水平方向时,采用基于MA的去隔行算法。
拉丝条件:
(7)bob_flag=1,表示当行间差异较大时,采用基于MA的去隔行算法。
当然,所述条件可以是上述条件(1)至(7)中任意一个或多个。
本发明至少一实施例中,根据基于MA的去隔行算法和基于MC的去隔行算法的特点以及视频图像的内容自适应从以上两种算法中选择合适的结果输出。基于MA的去隔行处理由于在运动时采用场内方向插值,对于一些水平边缘纹理可能会丢失一些信息从而导致图像闪烁和模糊。在场内方向判断不准确的情况下还可能导致图像产生一些噪点。基于MC的去隔行处理对运动估计得到的运动矢量非常敏感,所以对于运动估计(ME)的运动矢量(MV)的准确性要求很高,在物体发生旋转,形变等情况时MV往往会不够可靠从而可能导致补偿错误。本申请至少一实施例提供的方案,经实际电视机显示和实验发现克服了MA算法的闪烁和模糊以及MC算法对于MV准确性要求很高,太过敏感,容易产生噪点的缺点,从而提高了整体图像效果。另外由于本申请是将两种算法相结合,所以可以很好的对现有的一些去隔行装置进行改进。
如图12所示,本发明一实施例提供一种去隔行处理装置120,包括存储器1210和处理器1220,所述存储器1210存储有程序,所述程序在被所述处理器1220读取执行时,实现任一实施例所述的去隔行处理方法。
如图13所示,本发明至少一实施例提供一种计算机可读存储介质130,所述计算机可读存储介质130存储有一个或者多个程序131,所述一个或者多个程序131可被一个或者多个处理器执行,以实现任一实施例所述的去隔行处理方法。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
Claims (8)
1.一种去隔行处理方法,包括:
获取待插值的像素点的图像内容特性信息;所述图像内容特性信息包括以下至少之一:运动矢量信息、场间匹配信息、帧间匹配信息、所述待插值的像素点的边缘方向信息、拉丝羽化强度信息;
根据所述图像内容特性信息确定选择使用基于运动自适应的去隔行算法或者选择使用基于运动补偿的去隔行算法进行去隔行处理;
其中,使用基于运动补偿的去隔行算法进行去隔行处理包括:
获取基于运动自适应的去隔行算法所得的所述待插值的像素点的第一取值;
获取基于前向运动补偿的去隔行算法所得的所述待插值的像素点的第二取值;
获取基于后向运动补偿的去隔行算法所得的所述待插值的像素点的第三取值;
将所述第一取值、第二取值、第三取值进行中值滤波,将中值滤波的结果作为所述待插值的像素点的基于运动补偿的去隔行算法所得的取值。
2.根据权利要求1所述的去隔行处理方法,其特征在于,所述根据所述图像内容特性信息确定选择使用基于运动自适应的去隔行算法或者选择使用基于运动补偿的去隔行算法进行去隔行处理包括:
当满足如下条件之一时,使用基于运动自适应的去隔行算法进行去隔行处理;
当如下条件均不满足时,使用基于运动补偿的去隔行算法进行去隔行处理;
所述条件包括以下至少之一:
所述待插值的像素点的运动矢量为零;
所述待插值的像素点的运动矢量中任一个分量的绝对值大于预设数目的整像素时;
所述待插值的像素点的场间匹配信息>第一场间匹配阈值,且,所述待插值的像素点的帧间匹配信息>第一帧间匹配阈值;
所述待插值的像素点的场间匹配信息>第二场间匹配阈值,且,所述待插值的像素点的帧间匹配信息>第二帧间匹配阈值;
所述待插值的像素点的场间匹配信息>所述帧间匹配信息,且,所述待插值的像素点的帧间匹配信息>第三帧间匹配阈值;
所述待插值的像素点在当前场的第一边缘方向信息为非水平方向;
所述待插值的像素点在前一场的第二边缘方向信息为非水平方向;
所述待插值的像素点在后一场的第三边缘方向信息为非水平方向;
所述待插值的像素点的拉丝羽化强度信息大于拉丝强度阈值。
3.根据权利要求2所述的去隔行处理方法,其特征在于,
所述第一场间匹配阈值的取值范围为0~300;
所述第二场间匹配阈值的取值范围为200~600;
所述第一帧间匹配阈值的取值范围为200~700;
所述第二帧间匹配阈值的取值范围为100~500;
所述第三帧间匹配阈值的取值范围为0~300。
4.根据权利要求1所述的去隔行处理方法,其特征在于,所述场间匹配信息根据如下方式确定:在当前场中选择待插值像素点的上一行的M个像素的组成的第一像素块和下一行的M个像素组成的第二像素块,确定第一像素块和第二像素块在前一场中的最佳匹配块,进而得到第一相差绝对值求和以及第二相差绝对值求和,将其中最大值作为场间匹配信息,其中,所述上一行的M个像素的中心位置和所述下一行的M个像素的中心位置与所述待插值的像素点处于同一列。
5.根据权利要求1所述的去隔行处理方法,其特征在于,所述帧间匹配信息根据如下方式确定:将待插值的像素点所在的场与下一场组成当前帧,以所述待插值的像素点为中心选择预设大小的块,与前一帧进行匹配得到所述帧间匹配信息。
6.根据权利要求2所述的去隔行处理方法,其特征在于,所述拉丝羽化强度信息根据如下至少之一确定:
在当前场和前一场的合成帧中取一以所述待插值的像素点为中心且大小为M*N的像素块;对该M*N的像素块,按列计算该列中不同性质场的像素值之差的累加值以及同性质场的像素值之差的累加值;获取满足(same_parity_value[i]*coeff)<dif_parity_value[i]的列的数目,其中,same_parity_value[i]为所述M*N像素块中第i列同性质场的像素值之差的累加值,dif_parity_value[i]为所述M*N像素块中第i列不同性质场的像素值之差的累加值,i=0~N-1,所述coeff大于0;当所述满足(same_parity_value[i]*coeff)<dif_parity_value[i]的列的数目大于第一阈值时,所述拉丝羽化强度信息大于拉丝强度阈值;
对该M*N的像素块的每一行,获取该行的像素的累加值,得到M个累加值sum_value_ver[l],l=0~M-1;根据该M个累加值得到M-3个阈值thr[j]
|(sum_value_ver[j+1]*2-sum_value_ver[j]-sum_value_ver[j+2]|其中,j=0~M-3;其中,M大于等于3,N大于等于1;
逐点计算同性质场之差以及不同性质场之差:
frame_diff[j][i]=|Y[j][i]-Y[j+2][i]|
field_diff[j][i]=|Y[j+1][i]-Y[j+2][i]|
其中,i=0~N-1;当满足
thr[j]>frame_diff[j][i]*factor1
thr[j]<field_diff[j][i]*factor2的列的数目大于第二阈值时,所述拉丝羽化强度信息大于拉丝强度阈值,其中,所述factor1和factor2为大于0的拉丝检测调节因子,Y[j][i]为该M*N的像素块第j行第i列的像素点的值。
7.一种去隔行处理装置,其特征在于,包括存储器和处理器,所述存储器存储有程序,所述程序在被所述处理器读取执行时,实现如权利要求1至6任一所述的去隔行处理方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如权利要求1至6任一所述的去隔行处理方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811504273.4A CN111294544B (zh) | 2018-12-10 | 2018-12-10 | 一种去隔行处理方法及装置、计算机可读存储介质 |
PCT/CN2019/124221 WO2020119667A1 (zh) | 2018-12-10 | 2019-12-10 | 去隔行处理方法及装置、计算机可读存储介质 |
US17/311,407 US11595613B2 (en) | 2018-12-10 | 2019-12-10 | De-interlacing processing method and device, and computer-readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811504273.4A CN111294544B (zh) | 2018-12-10 | 2018-12-10 | 一种去隔行处理方法及装置、计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111294544A CN111294544A (zh) | 2020-06-16 |
CN111294544B true CN111294544B (zh) | 2023-08-08 |
Family
ID=71025154
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811504273.4A Active CN111294544B (zh) | 2018-12-10 | 2018-12-10 | 一种去隔行处理方法及装置、计算机可读存储介质 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11595613B2 (zh) |
CN (1) | CN111294544B (zh) |
WO (1) | WO2020119667A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111885338B (zh) * | 2020-07-31 | 2022-03-01 | 青岛信芯微电子科技股份有限公司 | 一种视频去隔行处理方法及装置 |
CN113852830B (zh) * | 2021-09-23 | 2023-12-29 | 杭州国芯科技股份有限公司 | 一种中值滤波视频去隔行方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101106685A (zh) * | 2007-08-31 | 2008-01-16 | 湖北科创高新网络视频股份有限公司 | 一种基于运动检测的去隔行方法和装置 |
CN101510985A (zh) * | 2009-02-27 | 2009-08-19 | 西安交通大学 | 一种运动补偿辅助运动自适应的去隔行方法 |
CN103369208A (zh) * | 2013-07-15 | 2013-10-23 | 青岛海信信芯科技有限公司 | 自适应去隔行方法及装置 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001054075A (ja) * | 1999-08-06 | 2001-02-23 | Hitachi Ltd | 画像信号の動き補償走査変換回路 |
US6459455B1 (en) | 1999-08-31 | 2002-10-01 | Intel Corporation | Motion adaptive deinterlacing |
US6940557B2 (en) * | 2001-02-08 | 2005-09-06 | Micronas Semiconductors, Inc. | Adaptive interlace-to-progressive scan conversion algorithm |
US7170561B2 (en) * | 2003-12-04 | 2007-01-30 | Lsi Logic Corporation | Method and apparatus for video and image deinterlacing and format conversion |
US7420618B2 (en) * | 2003-12-23 | 2008-09-02 | Genesis Microchip Inc. | Single chip multi-function display controller and method of use thereof |
KR101127220B1 (ko) * | 2004-07-28 | 2012-04-12 | 세종대학교산학협력단 | 움직임 보상 적응형 순차주사화 장치 및 그 방법 |
US7701508B2 (en) * | 2005-11-30 | 2010-04-20 | Lsi Corporation | Accurate motion detection for the combination of motion adaptive and motion compensation de-interlacing applications |
JP4929819B2 (ja) * | 2006-04-27 | 2012-05-09 | 富士通株式会社 | 映像信号の変換装置及び方法 |
US7945121B2 (en) * | 2006-08-29 | 2011-05-17 | Ati Technologies Ulc | Method and apparatus for interpolating image information |
US8508661B1 (en) * | 2008-02-01 | 2013-08-13 | Zenverge, Inc. | Enhanced deinterlacing using predictors from motion estimation engine |
US8457206B2 (en) * | 2008-11-03 | 2013-06-04 | Broadcom Corporation | Method and system for adaptive temporal interpolation filtering for motion compensation |
US8289444B2 (en) * | 2009-05-06 | 2012-10-16 | Samsung Electronics Co., Ltd. | System and method for reducing visible halo in digital video with covering and uncovering detection |
JP2013030862A (ja) * | 2011-07-27 | 2013-02-07 | Sony Corp | 画像処理装置、画像処理方法および画像表示装置 |
CN102364933A (zh) * | 2011-10-25 | 2012-02-29 | 浙江大学 | 一种基于运动分类的自适应去隔行方法 |
US9386265B2 (en) * | 2014-09-30 | 2016-07-05 | Intel Corporation | Content adaptive telecine and interlace reverser |
CN104349105B (zh) * | 2014-10-09 | 2017-11-17 | 深圳市云宙多媒体技术有限公司 | 一种针对编码视频源的去隔行方法及系统 |
CN104702877A (zh) * | 2014-12-02 | 2015-06-10 | 深圳市云宙多媒体技术有限公司 | 一种视频去隔行方法和装置 |
US10448014B2 (en) * | 2017-05-23 | 2019-10-15 | Intel Corporation | Content adaptive motion compensated temporal filtering for denoising of noisy video for efficient coding |
-
2018
- 2018-12-10 CN CN201811504273.4A patent/CN111294544B/zh active Active
-
2019
- 2019-12-10 WO PCT/CN2019/124221 patent/WO2020119667A1/zh active Application Filing
- 2019-12-10 US US17/311,407 patent/US11595613B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101106685A (zh) * | 2007-08-31 | 2008-01-16 | 湖北科创高新网络视频股份有限公司 | 一种基于运动检测的去隔行方法和装置 |
CN101510985A (zh) * | 2009-02-27 | 2009-08-19 | 西安交通大学 | 一种运动补偿辅助运动自适应的去隔行方法 |
CN103369208A (zh) * | 2013-07-15 | 2013-10-23 | 青岛海信信芯科技有限公司 | 自适应去隔行方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US20220030192A1 (en) | 2022-01-27 |
US11595613B2 (en) | 2023-02-28 |
CN111294544A (zh) | 2020-06-16 |
WO2020119667A1 (zh) | 2020-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8526502B2 (en) | Method and apparatus for line based vertical motion estimation and compensation | |
KR101536794B1 (ko) | 후광현상이 줄어든 영상보간 장치 및 방법 | |
KR101399616B1 (ko) | 모션이 보상된 이미지를 위한 보간 방법 및 이 방법의 구현을 위한 디바이스 | |
JP5594968B2 (ja) | ビデオ画像間の運動を確定するための方法と装置 | |
KR100381286B1 (ko) | 카메라 비디오 또는 필름으로부터 텔레비젼 신호를 디인터레이싱하기 위한 시스템 | |
US8265158B2 (en) | Motion estimation with an adaptive search range | |
US8537903B2 (en) | De-blocking and de-ringing systems and methods | |
US6118488A (en) | Method and apparatus for adaptive edge-based scan line interpolation using 1-D pixel array motion detection | |
US8189105B2 (en) | Systems and methods of motion and edge adaptive processing including motion compensation features | |
KR101097673B1 (ko) | 화질 개선을 위한 노이즈 검출 및 평가 기술 | |
US7170561B2 (en) | Method and apparatus for video and image deinterlacing and format conversion | |
US8542741B2 (en) | Image processing device and image processing method | |
US20100177239A1 (en) | Method of and apparatus for frame rate conversion | |
US7796191B1 (en) | Edge-preserving vertical interpolation | |
JP2003524949A (ja) | 動きの補償およびフレーム速度の変換を行うシステムと方法 | |
JP5133038B2 (ja) | 画像復元方法および画像復元装置 | |
CN111294544B (zh) | 一种去隔行处理方法及装置、计算机可读存储介质 | |
KR20040111694A (ko) | 선명도 향상 유닛 및 방법 | |
JPH02290382A (ja) | ビデオ信号をフィルム画像に変換する方法 | |
CN108270945B (zh) | 一种运动补偿去噪方法及装置 | |
US20090115845A1 (en) | Method and System for Inverse Telecine and Scene Change Detection of Progressive Video | |
US8704945B1 (en) | Motion adaptive deinterlacer | |
JP2005318623A (ja) | フィルムモード外挿方法及びフィルムモード検出器並びに動き補償器 | |
JP5197374B2 (ja) | 動き推定 | |
US8115865B2 (en) | De-interlacing system with an adaptive edge threshold and interpolating method thereof |
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 |