CN110730343B - 一种多功能视频编码帧间划分方法、***及存储介质 - Google Patents

一种多功能视频编码帧间划分方法、***及存储介质 Download PDF

Info

Publication number
CN110730343B
CN110730343B CN201910894063.9A CN201910894063A CN110730343B CN 110730343 B CN110730343 B CN 110730343B CN 201910894063 A CN201910894063 A CN 201910894063A CN 110730343 B CN110730343 B CN 110730343B
Authority
CN
China
Prior art keywords
current coding
coding unit
edge
horizontal
feature
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
Application number
CN201910894063.9A
Other languages
English (en)
Other versions
CN110730343A (zh
Inventor
梁凡
唐娜
曹健
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sun Yat Sen University
Original Assignee
Sun Yat Sen University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sun Yat Sen University filed Critical Sun Yat Sen University
Priority to CN201910894063.9A priority Critical patent/CN110730343B/zh
Publication of CN110730343A publication Critical patent/CN110730343A/zh
Application granted granted Critical
Publication of CN110730343B publication Critical patent/CN110730343B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明公开了一种多功能视频编码帧间划分方法、***及存储介质,方法包括:确定当前编码树单元的编码帧为帧内编码帧或第一比率小于等于第一阈值时执行下一步骤;提取并计算当前编码单元的垂直边缘纹理特征和水平边缘纹理特征;根据当前编码单元的垂直边缘纹理特征和水平边缘纹理特征,进行当前编码单元的划分决策。本发明在帧间预测编码时利用了第一比率的相对大小、编码帧是否为帧内编码帧或当前编码单元的边缘纹理特征来跳过某些划分方式,提升了编码效率;根据当前编码单元的垂直边缘纹理特征和水平边缘纹理特征来至少选择3种划分方式来进行递归划分,BD‑rate更小,编码性能更好。本发明可广泛应用于视频编码领域。

Description

一种多功能视频编码帧间划分方法、***及存储介质
技术领域
本发明涉及视频编码领域,尤其是一种多功能视频编码帧间划分方法、***及存储介质。
背景技术
ITU-T VCEG和ISO/IEC MPEG成立了Joint Video Exploration Team(JVET)工作组,该工作组主要是为了研究未来视频编码标准的潜在需求。在JVET的发展过程中,形成了新一代的视频编码标准Versatile Video Coding(VVC,多功能视频编码)。许多新的编码技术在VVC中已经被研究采纳,例如Quadtree with nested multi-type tree(QTMT),Position Dependent intra Prediction Combination(PDPC),Affine MotionCompensation Prediction(AMCP)等。这些技术能够很好地提升编码性能,但是也极大地增加了编码时间。因此,有必要找到一种有效的算法,以实现编码效率和编码时间之间更好的权衡。
在VVC中,每个编码树单元(Coding Tree Unit,CTU)被分割成编码单元(CodingUnit,CU)以适应各种局部纹理的特征。QTMT支持更灵活的CU划分形状,CU可以是正方形或者矩形:首先,利用四叉树对CTU进行划分。然后,可以用二叉、三叉或者四叉树结构对四叉树叶节点进行进一步划分,其中二叉和三叉树这二种结构统称为多树结构。二叉树结构包括垂直和水平二叉划分,而三叉树结构包括垂直和水平三叉划分。图1是一个CTU划分成CU的示意图。在VVC中,QTMT结构采用率失真优化(Rate-distortion Optimization,RDO)方法来确定所有块的最佳划分方式:首先,将当前的CU看为一个叶子节点,不进行任何分割,然后尝试各种模式进行预测和变换,最后选择并存储最佳模式的RD(率失真)代价。其次,根据划分模式将CU分为两个、三个或四个子块。然后,递归地执行RDO过程,以确定这些子块的最佳划分方式。最后,选择RD代价最低的那个作为最好的划分方式。然而,该划分方式整个递归的过程非常耗时。
帧间预测利用视频时间域的相关性,使用邻近已编码图像(如当前帧的前一帧已编码图像)像素预测当前图像的像素,能够有效去除视频时域冗余。因此,当当前编码单元与参考图像的同位块明显相似(即相对静止)时,即使跳过所有的进一步的划分操作,预测误差也可以很小。这种情况可以减少划分信息的开销;同时,考虑了***开销和预测误差的率失真代价将增加很少,但编码时间将显著合理地减少。目前VVC参考软件的VTM中所采用帧间预测编码方案,在当前编码单元与参考图像的同位块不明显相似(即相对运动)而需要进一步划分时,将最佳划分方式的选择作为一个多分类问题,从全局纹理、局部纹理和图像内容信息这三类信息中选取特征,并且选择决策树作为分类器,这样能明显加快划分过程。这种方式选择了决策树作为分类器,直接从水平二叉划分方式、垂直二叉划分方式、水平三叉选择划分方式、垂直三叉划分方式和四叉树划分方式中选择一种划分方式而跳过其他划分方式,这种方式虽然能加快编码速度和节省编码时间,但其只选择一种划分方式来进行编码单元划分的做法会增大编码的BD-rate(表示在同等视频质量的情况下,码率的变化情况),减小编码的峰值信噪比PSNR,导致编码性能变差。
发明内容
为解决上述技术问题,本发明实施例的目的在于:提供一种多功能视频编码帧间划分方法、***及存储介质,以在保证编码性能的同时提升编码效率。
本发明实施例第一方面所采取的技术方案是:
一种多功能视频编码帧间划分方法,包括以下步骤:
确定当前编码树单元的编码帧为帧内编码帧或第一比率小于等于第一阈值时执行下一步骤,其中,第一比率是当前编码单元采用三帧差分法计算得到的差值图像中等于0的像素个数占当前编码单元像素总个数的比率,当前编码单元为将当前编码树单元进行四叉树划分后得到的4个编码单元中的任一编码单元;
提取并计算当前编码单元的垂直边缘纹理特征和水平边缘纹理特征;
根据当前编码单元的垂直边缘纹理特征和水平边缘纹理特征,进行当前编码单元的划分决策,所述进行当前编码单元的划分决策包括:确定当前编码单元的垂直边缘纹理特征大于水平边缘纹理特征时,跳过水平二叉划分方式和水平三叉划分方式;确定当前编码单元的垂直边缘纹理特征小于水平边缘纹理特征时,跳过垂直二叉划分方式和垂直三叉划分方式。
具体地,第一阈值可预先设定。
进一步,所述确定当前编码树单元的编码帧为帧内编码帧或第一比率小于等于第一阈值时执行下一步骤,其具体包括:
从输入图像选取一个编码树单元作为当前编码树单元;
对当前编码树单元进行四叉树划分得到4个编码单元;
从4个编码单元中选择任一个编码单元作为当前编码单元;
判断当前编码单元所在的编码帧是否为帧内编码帧,若是,则执行提取并计算当前编码单元的垂直边缘纹理特征和水平边缘纹理特征这一步骤;反之,则执行下一步骤;
采用三帧差分法计算当前编码单元的差值图像;
计算当前编码单元的差值图像中等于0的像素个数占当前编码单元像素总个数的比率作为第一比率;
确定第一比率小于等于第一阈值时执行提取并计算当前编码单元的垂直边缘纹理特征和水平边缘纹理特征这一步骤。
具体地,根据VCC的帧内预测编码要求,一开始必须先对编码树单元CTU进行一次四叉树划分变成四个64*64大小的编码单元CU,后面可以再对大小小于等于64*64的CU进行QTMT树划分类型的划分后变成一个个的子CU。故可通过对当前编码树单元进行四叉树划分来得到当前编码树单元的4个编码单元。
进一步,所述提取并计算当前编码单元的垂直边缘纹理特征和水平边缘纹理特征这一步骤,具体包括:
采用基于块的边缘提取算法提取当前编码单元的的边缘特征;
根据当前编码单元的边缘特征计算当前编码单元的垂直边缘纹理特征;
根据当前编码单元的边缘特征计算当前编码单元的水平边缘纹理特征;
根据当前编码单元的边缘特征计算当前编码单元的纹理特征密度。
进一步,所述基于块的边缘提取算法采用Canny算法,所述根据当前编码单元的边缘特征计算当前编码单元的垂直边缘纹理特征这一步骤,具体包括:
确定当前编码单元经Canny算法提取后得到的边缘图像中任一点的纹理值,进而得到所述边缘图像中每一列的垂直边缘特征分量;
从得到的每一列的垂直边缘特征分量中找出垂直边缘特征分量最大值和垂直边缘特征分量最小值;
根据垂直边缘特征分量最大值和垂直边缘特征分量最小值计算当前编码单元的垂直边缘纹理特征。
具体地,所述当前编码单元的垂直边缘纹理特征的计算公式为:
Figure BDA0002209678640000031
其中,(x,y)为当前编码单元经Canny算法提取后得到的边缘图像中点的坐标,canny(x,y)为坐标(x,y)处的Canny特征值,vei和vej分别为当前编码单元经Canny算法提取后得到的边缘图像中第i列和第j列的垂直边缘特征分量,w和h分别为当前编码单元的宽度和高度,VE为当前编码单元的垂直边缘纹理特征。
进一步,所述基于块的边缘提取算法采用Canny算法,所述根据当前编码单元的边缘特征计算当前编码单元的水平边缘纹理特征这一步骤,具体包括:
确定当前编码单元经Canny算法提取后得到的边缘图像中任一点的纹理值,进而得到所述边缘图像中每一行的水平边缘特征分量;
从得到的每一行的水平边缘特征分量中找出水平边缘特征分量最大值和水平边缘特征分量最小值;
根据水平边缘特征分量最大值和水平边缘特征分量最小值计算当前编码单元的水平边缘纹理特征。
具体地,当前编码单元的垂直边缘纹理特征的计算公式为:
Figure BDA0002209678640000041
其中,(x,y)为当前编码单元经Canny算法提取后得到的边缘图像中点的坐标,canny(x,y)为坐标(x,y)处的Canny特征值,hei和hej分别为当前编码单元经Canny算法提取后得到的边缘图像中第i行和第j行的水平边缘特征分量,w和h分别为当前编码单元的宽度和高度,HE为当前编码单元的水平边缘纹理特征。
进一步,所述基于块的边缘提取算法采用Canny算法,所述根据当前编码单元的边缘特征计算当前编码单元的纹理特征密度这一步骤,具体包括:
计算当前编码单元经Canny算法提取后得到的边缘图像中所有点的Canny特征值之和;
确定当前编码单元的宽度和高度;
根据计算的Canny特征值之和以及确定的宽度和高度计算当前编码单元的纹理特征密度。
具体地,所述当前编码单元的纹理特征密度的计算公式为:
Figure BDA0002209678640000042
其中,(x,y)为当前编码单元经Canny算法提取后得到的边缘图像中点的坐标,canny(x,y)为坐标(x,y)处的Canny特征值,w和h分别为当前编码单元的宽度和高度,Density为当前编码单元的纹理特征密度。
进一步,所述根据当前编码单元的垂直边缘纹理特征和水平边缘纹理特征,进行当前编码单元的划分决策这一步骤,具体包括:
以当前编码单元为当前编码块;
计算当前编码块的率失真代价;
确定当前编码块的纹理特征密度大于等于第二阈值时,执行下一步骤;
确定第一商大于第三阈值时,跳过水平二叉划分方式和水平三叉划分方式,选择垂直二叉划分方式、垂直三叉划分方式和四叉树划分方式作为当前编码块的候选划分方式,所述第一商等于当前编码块的垂直边缘纹理特征值除以水平边缘纹理特征值;
确定第二商大于第三阈值时,跳过垂直二叉划分方式和垂直三叉划分方式,选择水平二叉划分方式、水平三叉划分方式和四叉树划分方式作为当前编码块的候选划分方式,所述第二商等于当前编码块的水平边缘纹理特征值除以垂直边缘纹理特征值;
确定第一商和第二商均小于等于第三阈值时,选择水平二叉划分方式、垂直二叉划分方式、垂直三叉划分方式、水平三叉划分方式和四叉树划分方式作为当前编码块的候选划分方式;
对当前编码块按照选择的候选划分方式依次进行划分尝试,得到当前编码块的划分方式;
根据得到的划分方式将当前编码块划分为若干个子块;
选择若干个子块中的任一个子块作为当前编码块,返回计算当前编码块的率失真代价这一步骤。
具体地,当前编码块可以是编码单元CU、编码单元CU进一步划分后的子CU等。第二阈值和第三阈值均可预先设定。
依次进行划分尝试时是按照选择的候选划分方式来进行的。以选择的候选划分方式为水平二叉划分方式、垂直二叉划分方式、垂直三叉划分方式、水平三叉划分方式和四叉树划分方式为例,当前编码块依次进行水平二叉划分方式、垂直二叉划分方式、垂直三叉划分方式、水平三叉划分方式和四叉树划分方式的划分尝试,从这5种方式中选择任一种作为当前编码块的划分方式,若这5种方式的划分尝试均失败(即当前编码块不需要进一步细分),则当前编码块的率失真代价已最小,此时当前编码块的划分方式已为最佳划分方式而不需进行进一步的子编码块划分;反之,则根据划分尝试得到的划分方式将当前编码块划分为若干个子块,并在从这若干个子块中选择任一个子块作为当前编码块后返回计算当前编码块的率失真代价这一步骤。其它选择的候选划分方式与该方式类似,在此不再赘述。
本发明实施例第二方面所采取的技术方案是:
一种多功能视频编码帧间划分***,包括:
确定单元,用于确定当前编码树单元的编码帧为帧内编码帧或第一比率小于等于第一阈值时由特征提取与计算模块处理,其中,第一比率是当前编码单元采用三帧差分法计算得到的差值图像中等于0的像素个数占当前编码单元像素总个数的比率,当前编码单元为将当前编码树单元进行四叉树划分后得到的4个编码单元中的任一编码单元;
特征提取与计算模块,用于提取并计算当前编码单元的垂直边缘纹理特征和水平边缘纹理特征;
划分决策模块,用于根据当前编码单元的垂直边缘纹理特征和水平边缘纹理特征,进行当前编码单元的划分决策,所述进行当前编码单元的划分决策包括:确定当前编码单元的垂直边缘纹理特征大于水平边缘纹理特征时,跳过水平二叉划分方式和水平三叉划分方式;确定当前编码单元的垂直边缘纹理特征小于水平边缘纹理特征时,跳过垂直二叉划分方式和垂直三叉划分方式。
本发明实施例第三方面所采取的技术方案是:
一种多功能视频编码帧间划分***,包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现所述的一种多功能视频编码帧间划分方法。
本发明实施例第四方面所采取的技术方案是:
一种存储介质,其中存储有处理器可执行的指令,其特征在于:所述处理器可执行的指令在由处理器执行时用于实现所述的一种多功能视频编码帧间划分方法。
上述本发明实施例中的一个或多个技术方案具有如下优点:本发明实施例确定当前编码树单元的编码帧为帧内编码帧或第一比率小于等于第一阈值时,提取并计算当前编码单元的垂直边缘纹理特征和水平边缘纹理特征,再根据得到的垂直边缘纹理特征和水平边缘纹理特征进行当前编码单元的划分决策,在帧间预测编码时利用了第一比率的相对大小、编码帧是否为帧内编码帧或当前编码单元的边缘纹理特征来跳过某些划分方式,减少了编码时间,提升了编码效率;在当前编码单元与参考图像的同位块不明显相似而需要进一步划分时,根据当前编码单元的垂直边缘纹理特征和水平边缘纹理特征来跳过水平二叉划分方式和水平三叉划分方式或跳过垂直二叉划分方式和垂直三叉划分方式,至少选择3种划分方式来进行递归划分,与现有只选择一种划分方式来进行递归划分的方式相比,BD-rate更小,编码性能更好。
附图说明
图1为现有CTU划分结构示意图;
图2为本发明多功能视频编码帧间划分方法的整体流程图;
图3为非最大抑制示意图;
图4为CTU划分结果图;
图5为图4经Canny算法提取得到的边缘图;
图6为本发明具体实施例基于Canny算法和三帧差分法的帧间快速算法流程图。
具体实施方式
下面结合说明书附图和具体实施例对本发明作进一步解释和说明。对于本发明实施例中的步骤编号,其仅为了便于阐述说明而设置,对步骤之间的顺序不做任何限定,实施例中的各步骤的执行顺序均可根据本领域技术人员的理解来进行适应性调整。
本发明的多功能视频编码帧间划分方案先采用三帧差分法来确定当前块是静止块还是非静止块,若是静止块,则可以提前终止进一步划分操作;若不是静止块,则利用边缘算法去提取编码单元CU的边缘纹理特征,并根据这些特征决定是否对CU进行进一步划分,以及跳过某些划分方式,以达到在保证编码性能的同时减少编码时间的目的。
参照图2,本发明多功能视频编码帧间划分方案的基本过程为:首先,确定当前编码树单元的编码帧为帧内编码帧或第一比率小于等于第一阈值;然后采用边缘提取算法(如Sobel、Roberts、Prewitt和Canny等边缘检测算法)提取并计算当前编码单元的垂直边缘纹理特征和水平边缘纹理特征;最后,根据当前编码单元的垂直边缘纹理特征和水平边缘纹理特征,进行当前编码单元的划分决策:若当前编码单元的垂直边缘纹理特征大于水平边缘纹理特征,则表明水平边缘纹理特征不明显,此时跳过水平二叉划分方式和水平三叉划分方式这两种方式;若当前编码单元的垂直边缘纹理特征小于水平边缘纹理特征时,则表明垂直边缘纹理特征不明显,此时跳过垂直二叉划分方式和垂直三叉划分方式。
下面对本发明多功能视频编码帧间划分方案所涉及的相关理论及具体实现过程进行详细说明:
(一)Canny边缘检测算法
本发明是利用图像边缘特征来进行CU块快速划分判决的算法。常用的边缘检测算法有Sobel、Roberts、Prewitt和Canny边缘检测算法。在这些边缘检测算法中,Canny算法性能较为优越,因其在提取图像边缘特征时错误率低,并且检测到并标记为边缘的点能够尽可能地接近真实边缘。所以本具体实施例利用Canny边缘检测算法来提取CU块的边缘特征。
Canny边缘检测算法的主要步骤如下:
(1)用一个高斯滤波函数H(x,y)与从输入图像选取的CTU进行卷积,平滑图像噪声。高斯滤波函数如公式(1)所示:
Figure BDA0002209678640000081
(2)利用Sobel算子计算出高斯滤后图像灰度沿x、y方向的偏导数Gx和Gy,再计算对应的梯度幅值图像M(x,y)和角度图像θ(x,y),如公式(2)和(3)所示:
Figure BDA0002209678640000082
Figure BDA0002209678640000083
(3)对梯度幅值图像M(x,y)应用非最大值抑制进行处理,主要处理步骤包括:
1)从角度图像θ(x,y)中得到当前点的梯度方向θ。
2)当θ沿着水平、+45°、垂直、-45°四个方向时,若该点的M(x,y)至少小于沿着θ的两个相邻像素点之一,则令该点的非最大抑制结果为0,否则,令最大抑制结果为M(x,y);当θ不沿着以上的四个方向时,该点沿着梯度方向的相邻的两点是亚像素点,为了获得它们的梯度值必须通过对其两侧的点进行插值。如图3所示,M(x,y)表示中心位置点,带有箭头的黑线表示梯度方向。如果|Gx|>|Gy|,权重weight=|Gy|/|Gx|;同理,当|Gy|>|Gx|时,权值weight=|Gx|/|Gy|。例如,像图3这种情况,其插值表示则为:
m1=weight*M(x-1,y+1)+(1-weight)*M(x-1,y) (4)
m2=weight*M(x+1,y-1)+(1-weight)*M(x+1,y) (5)
(4)用双阈值处理和连接分析来检测并连接边缘。非最大抑制图像中像素大于高阈值(即阈值上界)的点是边缘,小于低阈值(即阈值下界)的不是边缘;介于两者阈值之间的,如果其邻接像素有大于高阈值的则为边缘,反之则不是边缘。最后,对于非边缘点,该点在最终的输出边缘图中的值设为0,反之,则为255。
由于传统的Canny算法中的步骤(4)需要根据整幅图像的梯度幅值的直方图计算高和低阈值,时间耗费比较大。鉴于此,本实施例可以直接手动选择高阈值和低阈值(即阈值上界和阈值下界均为预设值)。高阈值不应太大以避免丢失边缘,因为当像素的梯度幅值大于高阈值时,像素被视为有效边缘。因此,低阈值和高阈值可分别设置为4和45。除此之外,在VVC中,编码树单元CTU是在分割成编码单元CU之前的最初始的块结构单元。因此,本实施例使用基于块的Canny算法而不是传统的基于帧的Canny算法,该改进的基于块的Canny算法对于块的纹理特性具有更强的鲁棒性。
在利用改进的Canny算法对输入图像进行处理之后,可以得到一幅边缘图像,如图4和图5所示,图4和图5中,红色矩形框代表输入图像的一个CTU。边缘图像中每一个点都有纹理值。对于一个点的纹理值而言,没有垂直和水平特征之分。但是,每一列有其垂直纹理特征值,每一行有其水平纹理特征值。从图4和图5中,可以观察到垂直(水平)纹理明显的块,它们选取的划分方式大部分都是垂直(水平)分割。因此,在选择划分方式时可以充分利用边缘纹理信息,以节省编码时间。
(二)基于改进的Canny算法和三帧差分法的帧间快速划分算法
在视频编码中,每一帧代表一幅静止的图像。在实际压缩时,会采取各种算法减少数据的容量,其中IPB就是最常见的。I帧又称帧内编码帧,是一种自带全部信息的独立帧,无需参考其他图像可独立进行编码。视频序列的第一帧始终都是I帧。P帧是通过充分降低图象序列中前面已编码帧的时间冗余信息来压缩传输数据量的编码图像,也叫预测帧。B帧是既考虑源图像序列的前面已编码帧,也顾及源图像序列的后面已编码帧之间的时间冗余信息来压缩传输数据量的编码图像,也叫双向预测帧。
帧间预测利用视频时间域的相关性,使用邻近已编码图像像素预测当前图像的像素,能够有效去除视频时域冗余。因此,当当前编码块与参考图像的同位块明显相似时,即使跳过所有的进一步的划分操作,预测误差也可以很小。在这种情况下,可以减少划分信息的开销;同时,考虑了***开销和预测误差的率失真代价将增加很少,但编码时间将显著合理地减少。
三帧差分法是一种有效的运动目标检测算法,通过对视频序列中的图像做差分运算来标记物体的运动,其主要步骤如下:
1)在视频序列中选择连续的三帧图像Ii-1(x,y)、Ii(x,y)和Ii+1(x,y),则差值图像可以定义为:
Figure BDA0002209678640000101
2)选择一个合适的阈值T,对1)的差值图像进行二值化,定义如下:
Figure BDA0002209678640000102
3)对2)二值化后的两幅图像进行逻辑与操作(即取交集):
Figure BDA0002209678640000103
在VVC中,当前帧的参考帧不一定是视频时间上相邻的前一帧或后一帧,因此,在使用三帧差分法时,要使用的三帧图像不是时间上连续的,而是利用当前帧以及它的两幅参考帧图像来计算差值图像D(x,y)。为了节省编码时间,对于当前CU块,本实施例先计算D(x,y)中等于0的像素个数占整个CU块像素个数的比率r,r计算公式如下:
Figure BDA0002209678640000104
其中,D(i,j)为当前CU块的差值图像D(x,y)中像素值等于0的像素点,h和w分别为当前CU块的宽和高。
当r大于第一阈值(如95%或其它接近100%的值)时,则判定当前CU块是静止块,此时可以提前终止进一步划分。
如果当前CU块的划分没有提前终止(即r小于等于第一阈值时),则使用(一)所述的改进的canny算法做进一步的快速决策,以节省帧间编码时间。另外,对于当前CU块中属于I帧的编码帧来说,其不需要参考其他帧图像来编码,故其无法应用三帧差分法来计算r值,所以其也需要使用(一)所述的改进的canny算法做进一步的快速决策,以节省帧间编码时间。
本实施例的帧间编码方式在r小于等于第一阈值或编码帧为I帧时,可根据(一)的结论利用Canny边缘检测算法去提取CU的边缘纹理特征,从而跳过某些划分方式:若当前CU块中垂直边缘(Vertical Edge,VE)特征比水平边缘(Horizontal Edge,HE)更为明显,则可以跳过水平二叉和水平三叉这两种划分方式;相反,若水平边缘比垂直边缘明显,则可以跳过垂直二叉和垂直三叉这两种划分方式。
在利用基于块的Canny算法对输入图像选择的当前CU进行处理之后,可以得到一幅二值边缘图,如图5所示。如果该边缘图中坐标为(x,y)的点的像素值不等于零,则(x,y)处的canny(特征)值为1,否则为0。假设待划分的CU块的宽度为w,高度为h,则每个CU块的VE和HE由下式(10)和(11)给出:
Figure BDA0002209678640000111
Figure BDA0002209678640000112
同时,按照下式(12)计算CU块的纹理密度(Density):
Figure BDA0002209678640000121
本实施例的帧间编码在进行当前CU块进一步的快速决策之前,可选取两个合适的第二阈值TH_1和第三阈值TH_2,例如可将TH_1和TH_2分别设为0.01和1.5,将第一阈值设为95%,则本实施例基于Canny算法和三帧差分法的帧间快速算法流程图如图6所示,具体包括以下步骤:
S1:从输入图像选取一个编码CTU(按CTU的大小来选取,一般输入图像可采用若干个CTU进行编码)作为当前CTU;
S2:将当前CTU通过四叉树划分来分成4个编码单元CU,并选择这4个CU中的任一个CU作为当前编码单元CU;
S3:进入QTMT_RDO递归模式,计算当前编码块(初始时当前编码块为当前编码单元CU,若后续划分尝试后确定需要对当前CU进行进一步划分,则当前编码块为进一步划分得到的编码子块即子CU)的QTMT_RDO率失真代价(其初始时为当前CU不划分时的代价);
S4:判断当前编码块所在的编码帧是否为I帧,若是,则执行步骤S7,反之,则执行步骤S5;
S5:采用三帧差分法计算当前编码块的r值;
若当前编码块为当前CU,则按照公式(9)计算当前CU的r值;若当前编码块为编码子块,则可以采用与公式(9)类似的方式计算其r值。
S6:判断计算的r值是否大于95%,若是,则不对当前编码块进行划分,结束递归划分,并返回上一层(在递归划分时,上一层划分的代价由其划分得到的所有下一层(即子层)的率失真代价相加得到);反之,则执行步骤S7;
S7:采用基于块的Canny算法提取当前编码块的边缘特征;
S8:分别计算当前编码块的VE、HE和Density;
若当前编码块为当前CU,则分别按照公式(10)、(11)和(12)计算当前CU的VE、HE和Density;若当前编码块为编码子块,则可以采用与公式(10)、(11)和(12)类似的方式计算其VE、HE和Density。
S9:判断计算的Density是否小于TH_1,若是,则不对当前编码块进行划分,结束递归划分,并返回上一层,反之,则执行步骤S10;
S10:判断VE/HE是否大于TH_2,若是,则对当前编码块依次进行垂直二叉树划分、垂直三叉树划分和四叉树递归划分的划分尝试,再根据划分尝试得到的划分方式将当前编码块划分为若干个子块,并从若干个子块中任选一个子块作为新的当前编码块,然后返回步骤S3(其余的子块的处理方式相同,可逐个子块进行不断的迭代处理直至所有子块处理完毕);反之,则执行步骤S11;
S11:判断HE/VE是否大于TH_2,若是,则对当前编码块依次进行水平二叉递归划分、垂直二叉递归划分、水平三叉递归划分、垂直三叉递归划分和四叉树递归划分的划分尝试,再根据划分尝试得到的划分方式将当前编码块划分为若干个子块,并从若干个子块中任选一个子块作为新的当前编码块,然后返回步骤S3(其余的子块的处理方式相同,可逐个子块进行不断的迭代处理直至所有子块处理完毕);反之,则对当前编码块依次进行水平二叉递归划分、水平三叉递归划分和四叉树递归划分的划分尝试,再根据划分尝试得到的划分方式将当前编码块划分为若干个子块,并从若干个子块中任选一个子块作为新的当前编码块,然后返回步骤S3(其余的子块的处理方式相同,可逐个子块进行不断的迭代处理直至所有子块处理完毕)。
另外,若当前编码块所有候选划分方式的划分尝试失败(即不需要进一步划分),则当前编码块的率失真代价已最小,此时当前编码块的划分方式已为最佳划分方式而不需进行进一步的子编码块划分,可以结束CTU的划分操作。
以上是对本发明的较佳实施进行了具体说明,但本发明并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。

Claims (10)

1.一种多功能视频编码帧间划分方法,其特征在于:包括以下步骤:
确定当前编码树单元的当前编码单元的第一比率小于等于第一阈值时执行下一步骤,其中,第一比率是当前编码单元采用三帧差分法计算得到的差值图像中等于0的像素个数占当前编码单元像素总个数的比率,当前编码单元为将当前编码树单元通过四叉树划分所得到的4个编码单元中的任一编码单元;
提取并计算当前编码单元的垂直边缘纹理特征和水平边缘纹理特征;
根据当前编码单元的垂直边缘纹理特征和水平边缘纹理特征,进行当前编码单元的划分决策,所述进行当前编码单元的划分决策包括:确定当前编码单元的垂直边缘纹理特征大于水平边缘纹理特征时,跳过水平二叉划分方式和水平三叉划分方式;确定当前编码单元的垂直边缘纹理特征小于水平边缘纹理特征时,跳过垂直二叉划分方式和垂直三叉划分方式。
2.根据权利要求1所述的一种多功能视频编码帧间划分方法,其特征在于:所述确定当前编码树单元的当前编码单元的第一比率小于等于第一阈值时执行下一步骤,其具体包括:从输入图像选取一个编码树单元作为当前编码树单元;
对当前编码树单元进行四叉树划分得到4个编码单元;
从4个编码单元中选择任一个编码单元作为当前编码单元;
判断当前编码单元所在的编码帧是否为帧内编码帧,若是,则执行提取并计算当前编码单元的垂直边缘纹理特征和水平边缘纹理特征这一步骤;反之,则执行下一步骤;
采用三帧差分法计算当前编码单元的差值图像;
计算当前编码单元的差值图像中等于0的像素个数占当前编码单元像素总个数的比率作为第一比率;
确定第一比率小于等于第一阈值时执行提取并计算当前编码单元的垂直边缘纹理特征和水平边缘纹理特征这一步骤。
3.根据权利要求1所述的一种多功能视频编码帧间划分方法,其特征在于:所述提取并计算当前编码单元的垂直边缘纹理特征和水平边缘纹理特征这一步骤,具体包括:
采用基于块的边缘提取算法提取当前编码单元的边缘特征;
根据当前编码单元的边缘特征计算当前编码单元的垂直边缘纹理特征;
根据当前编码单元的边缘特征计算当前编码单元的水平边缘纹理特征;
根据当前编码单元的边缘特征计算当前编码单元的纹理特征密度。
4.根据权利要求3所述的一种多功能视频编码帧间划分方法,其特征在于:所述基于块的边缘提取算法采用Canny算法,所述根据当前编码单元的边缘特征计算当前编码单元的垂直边缘纹理特征这一步骤,具体包括:
确定当前编码单元经Canny算法提取后得到的边缘图像中任一点的纹理值,进而得到所述边缘图像中每一列的垂直边缘特征分量;
从得到的每一列的垂直边缘特征分量中找出垂直边缘特征分量最大值和垂直边缘特征分量最小值;
根据垂直边缘特征分量最大值和垂直边缘特征分量最小值计算当前编码单元的垂直边缘纹理特征。
5.根据权利要求3所述的一种多功能视频编码帧间划分方法,其特征在于:所述基于块的边缘提取算法采用Canny算法,所述根据当前编码单元的边缘特征计算当前编码单元的水平边缘纹理特征这一步骤,具体包括:
确定当前编码单元经Canny算法提取后得到的边缘图像中任一点的纹理值,进而得到所述边缘图像中每一行的水平边缘特征分量;
从得到的每一行的水平边缘特征分量中找出水平边缘特征分量最大值和水平边缘特征分量最小值;
根据水平边缘特征分量最大值和水平边缘特征分量最小值计算当前编码单元的水平边缘纹理特征。
6.根据权利要求3所述的一种多功能视频编码帧间划分方法,其特征在于:所述基于块的边缘提取算法采用Canny算法,所述根据当前编码单元的边缘特征计算当前编码单元的纹理特征密度这一步骤,具体包括:
计算当前编码单元经Canny算法提取后得到的边缘图像中所有点的Canny特征值之和;
确定当前编码单元的宽度和高度;
根据计算的Canny特征值之和以及确定的宽度和高度计算当前编码单元的纹理特征密度。
7.根据权利要求3所述的一种多功能视频编码帧间划分方法,其特征在于:所述根据当前编码单元的垂直边缘纹理特征和水平边缘纹理特征,进行当前编码单元的划分决策这一步骤,具体包括:
以当前编码单元为当前编码块;
计算当前编码块的率失真代价;
确定当前编码块的纹理特征密度大于等于第二阈值时,执行下一步骤;
确定第一商大于第三阈值时,跳过水平二叉划分方式和水平三叉划分方式,选择垂直二叉划分方式、垂直三叉划分方式和四叉树划分方式作为当前编码块的候选划分方式,所述第一商等于当前编码块的垂直边缘纹理特征值除以水平边缘纹理特征值;
确定第二商大于第三阈值时,跳过垂直二叉划分方式和垂直三叉划分方式,选择水平二叉划分方式、水平三叉划分方式和四叉树划分方式作为当前编码块的候选划分方式,所述第二商等于当前编码块的水平边缘纹理特征值除以垂直边缘纹理特征值;
确定第一商和第二商均小于等于第三阈值时,选择水平二叉划分方式、垂直二叉划分方式、垂直三叉划分方式、水平三叉划分方式和四叉树划分方式作为当前编码块的候选划分方式;
对当前编码块按照选择的候选划分方式依次进行划分尝试,得到当前编码块的划分方式;
根据得到的划分方式将当前编码块划分为若干个子块;
选择若干个子块中的任一个子块作为当前编码块,返回计算当前编码块的率失真代价这一步骤。
8.一种多功能视频编码帧间划分***,其特征在于:包括:
确定单元,用于确定当前编码树单元的当前编码单元的第一比率小于等于第一阈值时由特征提取与计算模块处理,其中,第一比率是当前编码单元采用三帧差分法计算得到的差值图像中等于0的像素个数占当前编码单元像素总个数的比率,当前编码单元为将当前编码树单元进行四叉树划分后得到的4个编码单元中的任一编码单元;
特征提取与计算模块,用于提取并计算当前编码单元的垂直边缘纹理特征和水平边缘纹理特征;
划分决策模块,用于根据当前编码单元的垂直边缘纹理特征和水平边缘纹理特征,进行当前编码单元的划分决策,所述进行当前编码单元的划分决策包括:确定当前编码单元的垂直边缘纹理特征大于水平边缘纹理特征时,跳过水平二叉划分方式和水平三叉划分方式;确定当前编码单元的垂直边缘纹理特征小于水平边缘纹理特征时,跳过垂直二叉划分方式和垂直三叉划分方式。
9.一种多功能视频编码帧间划分***,其特征在于:包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现如权利要求1-7任一项所述的一种多功能视频编码帧间划分方法。
10.一种存储介质,其中存储有处理器可执行的指令,其特征在于:所述处理器可执行的指令在由处理器执行时用于实现如权利要求1-7任一项所述的一种多功能视频编码帧间划分方法。
CN201910894063.9A 2019-09-20 2019-09-20 一种多功能视频编码帧间划分方法、***及存储介质 Active CN110730343B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910894063.9A CN110730343B (zh) 2019-09-20 2019-09-20 一种多功能视频编码帧间划分方法、***及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910894063.9A CN110730343B (zh) 2019-09-20 2019-09-20 一种多功能视频编码帧间划分方法、***及存储介质

Publications (2)

Publication Number Publication Date
CN110730343A CN110730343A (zh) 2020-01-24
CN110730343B true CN110730343B (zh) 2021-12-07

Family

ID=69219317

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910894063.9A Active CN110730343B (zh) 2019-09-20 2019-09-20 一种多功能视频编码帧间划分方法、***及存储介质

Country Status (1)

Country Link
CN (1) CN110730343B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111372079B (zh) * 2020-03-11 2021-01-22 南华大学 一种vvc帧间cu深度快速划分方法
CN111770340B (zh) * 2020-07-23 2022-03-15 腾讯科技(深圳)有限公司 视频编码方法、装置、设备以及存储介质
CN111669593B (zh) * 2020-07-27 2022-01-28 北京奇艺世纪科技有限公司 视频编码方法、装置、电子设备和存储介质
CN112104868B (zh) * 2020-11-05 2021-02-05 电子科技大学 一种针对vvc帧内编码单元划分的快速决策方法
CN113286144B (zh) * 2021-03-24 2022-07-29 中山大学 基于Gabor的CU划分快速决策方法、装置及介质
CN113225552B (zh) * 2021-05-12 2022-04-29 天津大学 一种智能快速帧间编码方法
CN115802044B (zh) * 2023-02-06 2023-08-18 深流微智能科技(深圳)有限公司 编码块划分方式的确定及装置、设备及存储介质
CN117241042B (zh) * 2023-08-31 2024-05-14 湖南大学 一种利用dct进行图像块分类的分形图像压缩方法及***

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103096090A (zh) * 2013-02-20 2013-05-08 广州柯维新数码科技有限公司 一种用于视频压缩中的编码块划分的方法
CN105120292A (zh) * 2015-09-09 2015-12-02 厦门大学 一种基于图像纹理特征的视频编码帧内预测方法
CN105847838A (zh) * 2016-05-13 2016-08-10 南京信息工程大学 一种hevc帧内预测方法
CN106454342A (zh) * 2016-09-07 2017-02-22 中山大学 一种视频压缩编码的帧间模式快速选择方法及***
CN109068142A (zh) * 2018-09-06 2018-12-21 北方工业大学 基于纹理特征的360度视频帧内预测快速决策

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2016262259B2 (en) * 2015-05-12 2019-01-17 Samsung Electronics Co., Ltd. Image decoding method for performing intra prediction and device thereof, and image encoding method for performing intra prediction and device thereof

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103096090A (zh) * 2013-02-20 2013-05-08 广州柯维新数码科技有限公司 一种用于视频压缩中的编码块划分的方法
CN105120292A (zh) * 2015-09-09 2015-12-02 厦门大学 一种基于图像纹理特征的视频编码帧内预测方法
CN105847838A (zh) * 2016-05-13 2016-08-10 南京信息工程大学 一种hevc帧内预测方法
CN106454342A (zh) * 2016-09-07 2017-02-22 中山大学 一种视频压缩编码的帧间模式快速选择方法及***
CN109068142A (zh) * 2018-09-06 2018-12-21 北方工业大学 基于纹理特征的360度视频帧内预测快速决策

Also Published As

Publication number Publication date
CN110730343A (zh) 2020-01-24

Similar Documents

Publication Publication Date Title
CN110730343B (zh) 一种多功能视频编码帧间划分方法、***及存储介质
CN110650338B (zh) 一种多功能视频编码帧内划分方法、***及存储介质
US8320470B2 (en) Method for spatial error concealment
US9877044B2 (en) Video encoder and operation method thereof
KR100644498B1 (ko) 노이즈 검출방법과 노이즈 검출장치 및 화상 복호화장치
JP4509104B2 (ja) 高度動画像符号化におけるイントラ予測のための高速モード決定アルゴリズム
US20110188574A1 (en) Deblocking method, deblocking apparatus, deblocking program and computer-readable recording medium recorded with the program
CN109068142B (zh) 360度视频帧内预测快速决策方法、装置、编解码器和介质
CN116886930A (zh) 对图像编码/解码的方法和设备及存储比特流的记录介质
KR20210119549A (ko) 양방향 광 흐름을 위한 비트-폭 제어를 위한 방법 및 디바이스
US8189667B2 (en) Moving picture encoding apparatus
JP2006165840A (ja) 動き補償画像符号化装置及び符号化方法
CN114830651A (zh) 帧内预测方法、编码器、解码器以及计算机存储介质
CN101389023B (zh) 一种自适应运动估计方法
CN113940077A (zh) 用于视频编码/解码的虚拟边界信令方法和设备
KR100970726B1 (ko) 계층적 움직임 추정 방법
KR20200005653A (ko) 코딩 유닛 분할 결정 방법 및 디바이스, 컴퓨팅 디바이스 및 판독 가능한 저장 매체
CN105791865B (zh) 帧内预测及去块滤波方法
KR20060111528A (ko) 비디오 신호에서 국부적인 시각적 공간-시간 상세의 검출
JP2005184241A (ja) 動画像フレーム内モード判定方式
JP2009027762A (ja) 動き補償画像符号化装置及び符号化方法
CN112449181A (zh) 一种编解码方法、装置及其设备
KR20130037843A (ko) 예측 픽셀 생성 장치 및 그 동작 방법
CN113038144B (zh) 一种去除块效应的方法、装置和计算机可读存储介质
CN113115042B (zh) 一种基于isp优化的帧内决策方法、装置、设备及介质

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