CN105141953B - 一种适用于hevc的快速帧间模式选择方法 - Google Patents
一种适用于hevc的快速帧间模式选择方法 Download PDFInfo
- Publication number
- CN105141953B CN105141953B CN201510464054.8A CN201510464054A CN105141953B CN 105141953 B CN105141953 B CN 105141953B CN 201510464054 A CN201510464054 A CN 201510464054A CN 105141953 B CN105141953 B CN 105141953B
- Authority
- CN
- China
- Prior art keywords
- rdo
- coding unit
- pattern
- rate distortion
- current
- 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
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明一种适用于HEVC的快速帧间模式选择方法,在帧间编码时,对每个编码树单元,也就是最大编码单元,按模式对应的编码单元尺寸从大到小顺序逐级计算对应的模式的率失真代价,当后一模式的率失真代价大于前一模式的率失真代价时,则结束该编码单元的模式选择,取前一模式为该编码单元的最佳模式;本发明所提出的方法简单易行,能大大降低HEVC帧间编码的计算复杂度。
Description
技术领域
本发明涉及视频编解码领域,具体涉及当前最新国际视频编码标准HEVC(HighEfficiency Video Coding)编码单元的快速帧间模式选择方法,可用于提高HEVC编码器的帧间预测编码速度。
背景技术
随着高清、超高清、3D视频和移动无线通信等新要求的提出,H.264已经不能满足视频应用发展的要求。为此,视频编码专家组(Video Coding Experts Group,VCEG)和运动图像编码专家组(Moving Picture Experts Group,MPEG)组成联合视频编码小组(JointCollaborative Team on Video Coding,JCT-VC),致力于新的国际视频编码标准的制定,并于2013年1月公布了新的国际视频编码标准HEVC。
HEVC采用了与H.264类似的块混合编码框架,并在此基础上进行了大量的创新。例如,把宏块的概念推广到编码单元(Coding Unit,CU)、预测单元(Prediction Unit,PU)和变换单元(Transform Unit,TU),其中编码单元的块尺寸变化范围从8×8至64×64,并提出基于四叉树的块尺寸递归分割结构和先进的运动矢量预测等技术,大大提高了编码效率。然而,HEVC编码效率的提高是以高计算复杂度为代价的。其中,帧间预测不仅占用大量的内存空间,还耗费大量编码时间。在HEVC中,每帧图像首先被分为一组编码树单元(CodingTree Unit,CTU),如图1所示。图1中,各编码树单元通过四叉树编码结构被递归分割成四个相等的块大小的编码单元,变化范围从64×64到8×8,对应划分深度为0到3,每个编码单元可以进一步划分为块大小可变的预测单元。对于帧间预测,如图2所示,HEVC提供各种对称和非对称的划分(模式),包括2N×2N,2N×N,N×2N,N×N,2N×nU,2N×nD,nL×2N和nR×2N,用于和视频对象的边界精确匹配。
HEVC帧间模式选择需要遍历SKIP模式和所有的帧间划分模式,分别计算各个模式的率失真代价RDO,最后选择率失真代价RDO最小的模式作为其最终模式,其计算复杂度相当大。实验结果表明,HEVC的帧间预测占用了约70%以上的编码时间,因此研究一种高效的快速模式选择方法对于降低HEVC的编码复杂度,提高HEVC的实际应用价值就显得尤为重要。
发明内容
本发明的目的在于提供一种适用于HEVC的快速帧间模式选择方法,不但能大大降低HEVC的编码复杂度,而且基本不影响HEVC的编码效率。
本发明一种适用于HEVC的快速帧间模式选择方法,在帧间编码时,对每个编码树单元,也就是最大编码单元,按模式对应的编码单元尺寸从大到小顺序逐级计算对应的模式的率失真代价,当后一模式的率失真代价大于前一模式的率失真代价时,则结束该编码单元的模式选择,取前一模式为该编码单元的最佳模式。
本发明所提出的方法简单易行,能大大降低HEVC帧间编码的计算复杂度。本发明的主要优点是:
1、揭示了“HEVC的率失真代价函数与最佳模式的尺寸之间的关系服从单极点模型分布(只有一个局部最小值)”的原理,并将其用于HEVC的快速模式选择。
2、利用自然视频序列中选择低序号(大尺寸)块作为最佳模式概率较大的特点,按块序号从小到大(块尺寸从大到小)的顺序进行率失真代价计算,一旦出现小块模式率失真代价大于大块模式,则及时判定最佳模式,终止模式的选择过程,这样的设计能较快地定位到最佳模式,避免了不必要的率失真代价计算,大大降低了HEVC计算复杂度。
3、所提出的方法简单有效,计算顺序和HEVC的测试软件HM相同,易于实现。
附图说明
图1为HEVC中编码单元的递归划分过程;
图2为HEVC中预测单元的划分示意图。
以下结合附图和实施例对本发明做进一步详述。
具体实施方式
本发明提出了一种适用于HEVC的快速帧间模式选择方法,把2N×2N中的帧间预测模式细分为SKIP和2N×2N模式,对HEVC的帧间预测模式按下述方法进行排序:
令序号为0的模式为模式0,序号为1的模式为模式1,依此类推,序号为12的模式为模式12,记序号为m对应的模式的率失真代价为RDO(m),编码时,对每个编码树单元,也就是最大编码单元,从它的SKIP 2N×2N模式开始,按序号m从小到大顺序逐级计算对应的模式率失真代价RDO(m),当后一模式的率失真代价大于前一模式的率失真代价时,则结束该编码单元的模式选择过程,取前一模式为最佳模式。不失一般性,设最大编码单元的大小为64×64,则本发明的快速帧间模式选择方法具体步骤如下:
步骤1、读入当前的最大编码单元,判断其是否为帧间预测编码块,若为帧间预测编码,转步骤2,否则进行帧内预测编码,并转步骤7;
步骤2、计算当前编码单元选择SKIP_64×64模式时的率失真代价RDO(0),转步骤3;
步骤3、计算当前编码单元选择64×64模式的率失真代价RDO(1),若RDO(0)<RDO(1),则判定SKIP_64×64模式为当前编码单元的最佳模式,转步骤7;否则,转步骤4;
步骤4、分别计算当前编码单元选择64×32、32×64模式时的率失真代价,选择其中率失真代价较小的记为RDO(2),若RDO(1)<RDO(2),则判定64×64模式为当前编码单元的最佳模式,转步骤7;否则,转步骤5;
步骤5、把当前编码单元划分为4个大小为32×32的子编码单元,分别计算每个32×32的子编码单元选择SKIP_32×32模式时的率失真代价RDOi(3)(i=0,1,2,3),并计算SKIP_32×32模式下当前编码单元的率失真代价:RDO(3)=RDO0(3)+RDO1(3)+RDO2(3)+RDO3(3),若RDO(2)<RDO(3),则判定64×32和32×64模式中率失真代价较小的模式为当前编码单元的最佳模式,转步骤7;否则,转步骤6;
步骤6、如果当前4个划分尺寸为32×32的子编码单元均已处理完毕,转步骤7;否则,转步骤6.1确定下一个尺寸为32×32的子编码单元的最佳模式;
步骤6.1、计算当前子编码单元(即第i号子编码单元)选择32×32模式时的率失真代价RDOi(4),若RDOi(3)<RDOi(4),则判定SKIP_32×32模式为当前子编码单元的最佳模式,转步骤6;否则,转步骤6.2;
步骤6.2、分别计算当前子编码单元选择32×16、16×32模式的率失真代价,选择其中率失真代价较小的记为RDOi(5),若RDOi(4)<RDOi(5),则判定32×32模式为当前子编码单元的最佳模式,转步骤6;否则,转步骤6.3;
步骤6.3、把当前尺寸为32×32的第i号编码单元划分为4个尺寸为16×16的子编码单元,分别计算每个16×16尺寸的子编码单元选择SKIP_16×16模式时的率失真代价RDOij(6)(j=0,1,2,3),并计算当前32×32的编码单元选择SKIP_16×16模式的率失真代价:RDOi(6)=RDOi0(6)+RDOi1(6)+RDOi2(6)+RDOi3(6),若RDOi(5)<RDOi(6),则判定32×16和16×32模式中率失真代价较小的模式为当前子编码单元的最佳模式,转步骤6;否则,转步骤6.4;
步骤6.4、如果当前4个划分尺寸为16×16的子编码单元均已处理完毕,转步骤6;否则,转步骤6.4.1确定下一个尺寸为16×16的子编码单元的最佳模式;
步骤6.4.1、计算当前子编码单元(即第(i,j)号子编码单元)选择16×16模式时的率失真代价RDOij(7),若RDOij(6)<RDOij(7),则判定SKIP_16×16模式为当前子编码单元的最佳模式,转步骤6.4;否则,转步骤6.4.2;
步骤6.4.2、分别计算当前子编码单元选择16×8、8×16模式时的率失真代价,选择其中率失真代价较小的记为RDOij(8),若RDOij(7)<RDOij(8),则判定16×16模式为当前子编码单元的最佳模式,转步骤6.4;否则,转步骤6.4.3;
步骤6.4.3、把当前大小为16×16的第(i,j)号子编码单元划分为4个尺寸为8×8的子编码单元,分别计算每个尺寸为8×8的子编码单元选择SKIP_8×8模式时的率失真代价RDOijk(9)(k=0,1,2,3),并计算当前16×16的编码单元选择SKIP_8×8模式的率失真代价:RDOij(9)=RDOij0(9)+RDOij1(9)+RDOij2(9)+RDOij3(9);若RDOij(8)<RDOij(9),则判定16×8和8×16模式中率失真代价较小的模式为当前子编码单元的最佳模式,转步骤6.4;否则,转步骤6.4.4;
步骤6.4.4、如果当前4个划分尺寸为8×8的子编码单元均已处理完毕,转步骤6.4;否则,转步骤6.4.4.1确定下一个尺寸为8×8的子编码单元的最佳模式;
步骤6.4.4.1、计算当前子编码单元(第ijk号子编码单元)选择8×8模式时的率失真代价RDOijk(10);若RDOijk(9)<RDOijk(10),则判定SKIP_8×8模式为当前子编码单元的最佳模式,转步骤6.4.4;否则,转步骤6.4.4.2;
步骤6.4.4.2、分别计算当前子编码单元选择8×4、4×8模式时的率失真代价,并选择其中率失真代价较小的记为RDOijk(11),若RDOijk(10)<RDOijk(11),则判定8×8模式为当前子编码单元的最佳模式,转步骤6.4.4;否则,转步骤6.4.4.3;
步骤6.4.4.3、把当前编码单元向下划分为4个尺寸为4×4的子编码单元,选择4×4模式时总的率失真代价RDOijk(12),若RDOijk(11)<RDOijk(12),则判定8×4、4×8模式中率失真代价较小的模式为当前子编码单元的最佳模式,否则,判定4×4模式为当前子编码单元的最佳模式,转步骤6.4.4;
步骤7、当前最大编码单元模式选择过程结束,转步骤1编码下一个最大编码单元。
以上所述,仅是本发明较佳实施例而已,并非对本发明的技术范围作任何限制,故凡是依据本发明的技术实质对以上实施例所作的任何细微修改、分层深度合并、等同变化与修饰,均仍属于本发明技术方案的范围内。
Claims (1)
1.一种适用于HEVC的快速帧间模式选择方法,其特征在于:
把2N×2N中的帧间预测模式细分为SKIP和2N×2N模式,对HEVC的帧间预测模式按下述方法进行排序:
令序号为0的模式为模式0,序号为1的模式为模式1,依此类推,序号为12的模式为模式12,记序号为m对应的模式的率失真代价为RDO(m);在帧间编码时,对每个编码树单元,也就是最大编码单元,按模式对应的编码单元尺寸从大到小顺序逐级计算对应的模式的率失真代价,当后一模式的率失真代价大于前一模式的率失真代价时,则结束该编码单元的模式选择,取前一模式为该编码单元的最佳模式,设最大编码单元的大小为64×64,快速帧间模式选择方法具体如下:
步骤1、读入当前的最大编码单元,判断其是否为帧间预测编码块,若为帧间预测编码,转步骤2,否则进行帧内预测编码,并转步骤7;
步骤2、计算当前编码单元选择SKIP_64×64模式时的率失真代价RDO(0),转步骤3;
步骤3、计算当前编码单元选择64×64模式的率失真代价RDO(1),若RDO(0)<RDO(1),则判定SKIP_64×64模式为当前编码单元的最佳模式,转步骤7;否则,转步骤4;
步骤4、分别计算当前编码单元选择64×32、32×64模式时的率失真代价,选择其中率失真代价较小的记为RDO(2),若RDO(1)<RDO(2),则判定64×64模式为当前编码单元的最佳模式,转步骤7;否则,转步骤5;
步骤5、把当前编码单元划分为4个大小为32×32的子编码单元,分别计算每个32×32的子编码单元选择SKIP_32×32模式时的率失真代价RDOi(3),i=0,1,2,3;并计算SKIP_32×32模式下当前编码单元的率失真代价:RDO(3)=RDO0(3)+RDO1(3)+RDO2(3)+RDO3(3),若RDO(2)<RDO(3),则判定64×32和32×64模式中率失真代价较小的模式为当前编码单元的最佳模式,转步骤7;否则,转步骤6;
步骤6、如果当前4个划分尺寸为32×32的子编码单元均已处理完毕,转步骤7;否则,转步骤6.1确定下一个尺寸为32×32的子编码单元的最佳模式;
步骤6.1、计算当前子编码单元,即第i号子编码单元,选择32×32模式时的率失真代价RDOi(4),若RDOi(3)<RDOi(4),则判定SKIP_32×32模式为当前子编码单元的最佳模式,转步骤6;否则,转步骤6.2;
步骤6.2、分别计算当前子编码单元选择32×16、16×32模式的率失真代价,选择其中率失真代价较小的记为RDOi(5),若RDOi(4)<RDOi(5),则判定32×32模式为当前子编码单元的最佳模式,转步骤6;否则,转步骤6.3;
步骤6.3、把当前尺寸为32×32的第i号编码单元划分为4个尺寸为16×16的子编码单元,分别计算每个16×16尺寸的子编码单元选择SKIP_16×16模式时的率失真代价RDOij(6),j=0,1,2,3,并计算当前32×32的编码单元选择SKIP_16×16模式的率失真代价:RDOi(6)=RDOi0(6)+RDOi1(6)+RDOi2(6)+RDOi3(6),若RDOi(5)<RDOi(6),则判定32×16和16×32模式中率失真代价较小的模式为当前子编码单元的最佳模式,转步骤6;否则,转步骤6.4;
步骤6.4、如果当前4个划分尺寸为16×16的子编码单元均已处理完毕,转步骤6;否则,转步骤6.4.1确定下一个尺寸为16×16的子编码单元的最佳模式;
步骤6.4.1、计算当前子编码单元,即第(i,j)号子编码单元,选择16×16模式时的率失真代价RDOij(7),若RDOij(6)<RDOij(7),则判定SKIP_16×16模式为当前子编码单元的最佳模式,转步骤6.4;否则,转步骤6.4.2;
步骤6.4.2、分别计算当前子编码单元选择16×8、8×16模式时的率失真代价,选择其中率失真代价较小的记为RDOij(8),若RDOij(7)<RDOij(8),则判定16×16模式为当前子编码单元的最佳模式,转步骤6.4;否则,转步骤6.4.3;
步骤6.4.3、把当前大小为16×16的第(i,j)号子编码单元划分为4个尺寸为8×8的子编码单元,分别计算每个尺寸为8×8的子编码单元选择SKIP_8×8模式时的率失真代价RDOijk(9),k=0,1,2,3;并计算当前16×16的编码单元选择SKIP_8×8模式的率失真代价:RDOij(9)=RDOij0(9)+RDOij1(9)+RDOij2(9)+RDOij3(9);若RDOij(8)<RDOij(9),则判定16×8和8×16模式中率失真代价较小的模式为当前子编码单元的最佳模式,转步骤6.4;否则,转步骤6.4.4;
步骤6.4.4、如果当前4个划分尺寸为8×8的子编码单元均已处理完毕,转步骤6.4;否则,转步骤6.4.4.1确定下一个尺寸为8×8的子编码单元的最佳模式;
步骤6.4.4.1、计算当前子编码单元,即第ijk号子编码单元,选择8×8模式时的率失真代价RDOijk(10);若RDOijk(9)<RDOijk(10),则判定SKIP_8×8模式为当前子编码单元的最佳模式,转步骤6.4.4;否则,转步骤6.4.4.2;
步骤6.4.4.2、分别计算当前子编码单元选择8×4、4×8模式时的率失真代价,并选择其中率失真代价较小的记为RDOijk(11),若RDOijk(10)<RDOijk(11),则判定8×8模式为当前子编码单元的最佳模式,转步骤6.4.4;否则,转步骤6.4.4.3;
步骤6.4.4.3、把当前编码单元向下划分为4个尺寸为4×4的子编码单元,选择4×4模式时总的率失真代价RDOijk(12),若RDOijk(11)<RDOijk(12),则判定8×4、4×8模式中率失真代价较小的模式为当前子编码单元的最佳模式,否则,判定4×4模式为当前子编码单元的最佳模式,转步骤6.4.4;
步骤7、当前最大编码单元模式选择过程结束,转步骤1编码下一个最大编码单元。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510464054.8A CN105141953B (zh) | 2015-07-31 | 2015-07-31 | 一种适用于hevc的快速帧间模式选择方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510464054.8A CN105141953B (zh) | 2015-07-31 | 2015-07-31 | 一种适用于hevc的快速帧间模式选择方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105141953A CN105141953A (zh) | 2015-12-09 |
CN105141953B true CN105141953B (zh) | 2018-05-25 |
Family
ID=54727143
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510464054.8A Active CN105141953B (zh) | 2015-07-31 | 2015-07-31 | 一种适用于hevc的快速帧间模式选择方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105141953B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105933718B (zh) * | 2016-04-25 | 2019-04-05 | 北京奇艺世纪科技有限公司 | 一种编码单元的分割方法和装置 |
CN108124154B (zh) * | 2017-12-28 | 2020-04-24 | 北京数码视讯科技股份有限公司 | 帧间预测模式的快速选择方法、装置及电子设备 |
CN109286816A (zh) * | 2018-09-12 | 2019-01-29 | 天津大学 | 一种hevc优化帧内预测分块的方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101527851A (zh) * | 2009-04-10 | 2009-09-09 | 清华大学深圳研究生院 | H.264中p帧模式的快速选择方法 |
CN101710996A (zh) * | 2009-12-15 | 2010-05-19 | 山东大学 | 一种将时域与纹理相结合的快速帧间预测模式选择算法 |
CN102790878A (zh) * | 2011-12-07 | 2012-11-21 | 北京邮电大学 | 一种视频编码的编码模式选择方法及装置 |
CN102932642A (zh) * | 2012-11-13 | 2013-02-13 | 北京大学 | 一种帧间编码快速模式选择方法 |
CN102984521A (zh) * | 2012-12-12 | 2013-03-20 | 四川大学 | 基于时域相关性的高性能视频编码帧间模式判决方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7843995B2 (en) * | 2005-12-19 | 2010-11-30 | Seiko Epson Corporation | Temporal and spatial analysis of a video macroblock |
-
2015
- 2015-07-31 CN CN201510464054.8A patent/CN105141953B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101527851A (zh) * | 2009-04-10 | 2009-09-09 | 清华大学深圳研究生院 | H.264中p帧模式的快速选择方法 |
CN101710996A (zh) * | 2009-12-15 | 2010-05-19 | 山东大学 | 一种将时域与纹理相结合的快速帧间预测模式选择算法 |
CN102790878A (zh) * | 2011-12-07 | 2012-11-21 | 北京邮电大学 | 一种视频编码的编码模式选择方法及装置 |
CN102932642A (zh) * | 2012-11-13 | 2013-02-13 | 北京大学 | 一种帧间编码快速模式选择方法 |
CN102984521A (zh) * | 2012-12-12 | 2013-03-20 | 四川大学 | 基于时域相关性的高性能视频编码帧间模式判决方法 |
Non-Patent Citations (1)
Title |
---|
MODE-CORRELATION-BASED EARLY TERMINATION MODE DECISION FOR MULTI-VIEW VIDEO CODING;Huanqiang Zeng 等;《Proceedings of 2010 IEEE 17th International Conference on Image Processing》;20100929;第3405-3408页 * |
Also Published As
Publication number | Publication date |
---|---|
CN105141953A (zh) | 2015-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103763570B (zh) | 一种基于satd的hevc快速帧内预测方法 | |
CN105141954B (zh) | 一种hevc帧间编码快速模式选择方法 | |
CN105959699B (zh) | 一种基于运动估计和时空域相关性的快速帧间预测方法 | |
CN103997645B (zh) | 一种快速的hevc帧内编码单元和模式决策方法 | |
CN103561263A (zh) | 基于运动矢量约束和加权运动矢量的运动补偿预测方法 | |
CN102648631A (zh) | 用于编码/解码高分辨率图像的方法和设备 | |
CN104168480B (zh) | 基于hevc标准的帧内预测编码模式快速选择方法 | |
CN104081774A (zh) | 基于预测单元的分割模式进行系数扫描的方法和装置 | |
CN105141953B (zh) | 一种适用于hevc的快速帧间模式选择方法 | |
CN103796023A (zh) | 基于h.264/avc宏块结构及纹理的h.265/hevc转码方法及转码器 | |
CN101022555B (zh) | 帧间预测编码的模式快速选择方法 | |
CN103188496A (zh) | 基于运动矢量分布预测的快速运动估计视频编码方法 | |
CN103024378A (zh) | 一种视频编解码中运动信息导出方法及装置 | |
CN103491334A (zh) | 一种基于区域特征分析的由h264到hevc的视频转码方法 | |
CN104883565A (zh) | 一种高效视频编码的帧内预测模式决策方法及装置 | |
CN102647598B (zh) | 基于极大极小mv差值的h.264帧间模式优化方法 | |
CN110446052A (zh) | 一种3d-hevc帧内深度图快速cu深度选择方法 | |
CN104811729B (zh) | 一种视频多参考帧编码方法 | |
CN104954787B (zh) | Hevc帧间预测模式选择方法及装置 | |
CN105681808A (zh) | 一种scc帧间编码单元模式的快速决策方法 | |
CN110365975A (zh) | 一种avs2视频编解码标准优化方案 | |
CN109302616A (zh) | 一种基于rc预测的hevc帧间预测快速算法 | |
CN104581152A (zh) | 一种hevc帧内预测模式选择加速方法 | |
CN103702122A (zh) | 编码模式选择方法、装置及编码器 | |
CN107295336B (zh) | 基于图像相关性的自适应快速编码单元划分方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |