一种质量可分级hevc视频编码方法

文档序号:7813782阅读:279来源:国知局
一种质量可分级hevc视频编码方法
【专利摘要】本发明公开了一种质量可分级HEVC视频编码方法,属于视频编码【技术领域】。本发明方法利用了基层和增强层编码深度的相关性,在进行增强层的编码时,增强层的各编码树单元分别以其所对应的基层编码树单元的实际编码深度作为自身的最大编码深度来进行编码。本发明还利用了前后帧中相对应CTU编码深度之间的相关性来进一步降低基层编码算法的计算复杂度。相比现有技术,本发明方法能够在保持编码后图像质量的前提下,有效降低编码的计算复杂度,提高编码过程的实时性。
【专利说明】-种质量可分级HEVC视频编码方法

【技术领域】
[0001] 本发明涉及HEVC (High Efficiency Video Coding)视频编码,尤其涉及一种质量 可分级HEVC视频编码方法,属于视频编码【技术领域】。

【背景技术】
[0002] 随着视频技术以及视频应用向高清晰读、高压缩率和高帧率等方向的发展,高清, 超高清视频已深入到人们生活个个方面。新一代视频编码标准HEVC便在这一潮流中应运 而生,而其可分级视频编码的扩展SHVC(Scalable High Efficiency Video Coding)正在开 发过程中。另一方面,随着Internet和移动设备技术的发展,越来越多的人通过智能手机 或者便携式笔记本浏览视频信息内容,极大丰富了人们的日常生活。但是我们知道不同的 设备具有不同的屏幕分辨率、计算性能、网络带宽要求以及存储容量,所以怎样满足不同设 备的要求从而提供人们流畅的视频服务是一个关键的问题。可分级视频编码是其中的解决 方案之一。和H.264/AVC可分级视频编码SVC (Scalable Vide Coding)类似,SHVC目前有 时间可分级、空间可分级、质量可分级以及以上可分级的组合模式。HEVC的可分级视频编码 的扩展SHVC既继承了 HEVC相比之前视频编码器高压缩效率和高视觉质量的优点同时又继 承了其计算复杂度高的特点。所以,在维持压缩效率和视觉质量在一定范围内的前提下尽 量减少计算复杂度成为可分级视频编码的研究的热点之一。
[0003] 几种针对降低SHVC计算复杂度的方法已经被提出,例如,自适应搜寻范围的方法 [H. R. Tohidypour, Μ. T. Pourazad, P. Nasiopoulos, ^Adaptive Search Range Method for Spatial Scalable HEVC〃,IEEE International Conference on Consumer Electronics (ICCE),pp. 191-192, Jan. 2014],这种方法能够自适应地改变增强层层间预测时的搜寻范 围从而减少SHVC的计算复杂度,但是总体效果不理想。另外,针对质量可分级视频编码, 另一种快速编码算法被提出[Robin BAILLEUL, Jan DE COCK, Rik VAN DE WALLE,〃Fast mode decision for SNR scalability in SHVC digest of technical papers",IEEE International Conference on Consumer Electronics (ICCE),pp. 193-194,Jan. 2014]。这 两种方法虽然不同程度地降低了编码的复杂度,但都只针对增强层,所以总体编码时间有 再次被减少的空间。


【发明内容】

[0004] 本发明所要解决的技术问题在于克服现有技术不足,提供一种质量可分级HEVC 视频编码方法,根据增强层和基层相对应的编码单元编码深度的相关性,动态自适应地调 节增强层的最大编码深度,从而减少增强层不必要的划分过程,最终降低编码的计算复杂 度。
[0005] 本发明采用以下技术方案解决上述技术问题:
[0006] -种质量可分级HEVC视频编码方法,首先进行基层的编码,然后进行增强层的编 码,在进行增强层的编码时,增强层的各CTU(Coding Tree Unit,编码树单元)分别以其所 对应的基层CTU的实际编码深度作为自身的最大编码深度来进行编码。
[0007] 作为本发明的进一步改进方案,在进行基层编码时,CTU递归地选择最佳四叉树划 分模式,在此过程中,当前CTU将已编码参考帧中与其所对应CTU的实际编码深度作为参考 深度,自适应地调整帧内预测的过程:当前CTU在其当前搜索深度小于所述参考深度时,其 帧内预测过程跳过SIZE_2NxN和SIZE_Nx2N这两种模式的计算和评估。
[0008] 优选地,所述CTU递归地选择最佳四叉树划分模式,具体是指:CTU递归地进行 Merge模式、帧间预测、帧内预测、层间预测的率失真代价的计算并根据率失真代价选择最 佳四叉树划分模式。
[0009] 优选地,该方法具体包括以下步骤:
[0010] 步骤1、判断当前帧是否为I巾贞,如是,则转步骤1〇 ;
[0011] 步骤2、判断当前帧是基层编码还是增强层编码,如为增强层编码,则转步骤7 ;
[0012] 步骤3、基层CTU获取基层已编码参考帧中与其对应CTU的实际编码深度RefBL_ D,此时基层的最大编码深度为默认值;
[0013] 步骤4、对当前CTU进行Merge模式的率失真代价的计算并根据率失真代价选择最 佳四叉树划分模式;
[0014] 步骤5、判断基层当前CTU的当前搜索深度是否小于RefBL_D,如是,则递归地对当 前CTU进行帧间预测、层间预测的率失真代价的计算并根据率失真代价选择最佳四叉树划 分模式,其中,帧内预测过程跳过sIZE_2NxN和SIZE_Nx2N这两种模式的计算和评估;否则, 递归地对当前CTU进行帧间预测、层间预测的率失真代价的计算并根据率失真代价选择最 佳四叉树划分模式;
[0015] 步骤6、判断基层当前CTU的深度是否小于预设的基层最大编码深度,如是,则转 至步骤4 ;否则,停止当前CTU的划分过程,转至步骤2,开始对下一个CTU进行编码;
[0016] 步骤7、获取增强层当前CTU相对应基层CTU的实际编码深度BL_D^)th ;
[0017] 步骤8、递归地对当前CTU进行Merge模式、帧间预测、层间预测的率失真代价的计 算并根据率失真代价选择最佳四叉树划分模式;
[0018] 步骤9、判断当前CTU的编码深度是否小于BL_Depth,如是,则转至步骤7 ;如否, 停止当前CTU的划分过程,转至步骤2,开始对下一个CTU进行编码。
[0019] 步骤10、递归地对当前CTU进行帧内预测的率失真代价的计算并根据率失真代价 选择最佳四叉树划分模式;
[0020] 步骤11、判断当前CTU的编码深度是否小于最大编码深度,如是,则进行四叉树划 分,在下一个层次递归进行4个子CTU编码;如否,当前CTU编码结束。
[0021] 相比现有技术,本发明及其进一步改进方案具有以下有益效果:
[0022] 本发明方法能够在保持编码后图像质量的前提下,有效降低编码的计算复杂度, 提高编码过程的实时性。

【专利附图】

【附图说明】
[0023] 图1是HEVC可分级视频编码SHVC编码器结构框图;
[0024] 图2增强层CTU和相对应基层的CTU图;
[0025] 图3当前帧CTU与相对应的前后帧CTU图;
[0026] 图4是一个CTU四叉树递归划分过程示意图;
[0027] 图5为本发明质量可分级HEVC视频编码方法一个优选实施例的流程示意图;
[0028] 图6为使用本发明方法进行编码的率失真曲线图,所编码的视频序列从上到下 依次为分辨率为960x540,帧率为60的"BQTerrace",分辨率为960x540,帧率为24的 "Kimono" 和分辨率为 960x540,帧率为 24 的 "ParkScene"。

【具体实施方式】
[0029] 下面结合附图对本发明的技术方案进行详细说明:
[0030] 可分级视频编码分为时间可分级、空间可分级和质量可分级。图1是HEVC可分级 视频编码SHVC编码器的结构框图,此框图为一个基层和一个增强层的可分级编码情形,在 此需要指出的是增强层可以有多层。从图1可知,除去基层和增强层之间的层间预测技术, 基层和增强层是两个独立的HEVC视频编解码过程。由于可分级视频编码基层和增强层的 视频序列是同一个视频,只是分辨率不同或者相同而已,对于质量可分级而言,基层和增强 层的视频分辨率是相同的,在基层和增强中使用了不同的量化步长来使基层和增强层得到 不同质量的视频以适应不同网络及设备,通常基层的量化步长要大于增强层的量化步长。 不管怎么说,基层和增强层具有较大的冗余性,为了进一步提高可分级视频压缩效率,层间 预测技术被提了出来。H.264/SVC中的层间预测技术有层间运动预测技术、层间冗余预测技 术和层间帧内(纹理)预测技术。HEVC可分级视频编码SHVC也有相似的层间预测技术。
[0031] 基于基层和增强层之间具有较大的冗余性,本发明提出的一种快速的质量可分级 HEVC视频编码方法。既然基层和增强层之间具有较大的冗余性,那么编码后的基层和增强 层的每个CTU编码深度也具有较大的相关性,本发明方法就是利用了基层和增强层编码深 度的相关性。
[0032] 图2表示增强层CTU和相对应基层的CTU图。视频在编码时会将每一帧划分成大 小为64x64的CTU,编码树单元(CTU)规定为64x64。对于可分级视频编码,首先编码器会 先对基层第N帧进行编码,然后再对增强层第N帧进行编码。对于质量可分级视频编码,基 层和增强层的视频序列的分辨率是一样的,也就是说增强层某一个CTU和与其相对应基层 的CTU是同一帧内的相同部分,那么基层和增强层最终编码深度之间具有很强的相关性。
[0033] 图3为当前帧CTU与相对应的前后帧CTU的示意图。视频由一帧一帧相互连续的 帧组成,当前帧与前后帧之间具有很强的时间相关性,所以当前帧某一个CTU与其相对应 的前后帧CTU最终编码后的编码深度也具有很强的相关性。
[0034] 图4是一个CTU四叉树递归划分过程示意图。HEVC的编码单元类似于H. 264/AVC 中的宏块,对于编码深度为4的CTU,其四叉树划分后的编码的元大小可能为64x64、32x32、 16x16和8x8,则其对应的最大深度分别为0、1、2和3。其中,对于增强层假设其参考得到 的基层的深度为D印th2,则增强层快速编码算法的思想是跳过CU的划分过程,也就是减少 了 D印th3的率失真计算和模式选择过程,从而减少了计算复杂度,所以增强层快速编码算 法对应于图中方法一。对于基层假设其参考得到的参考帧的深度为Depth2,则基层快速编 码算法的思想是跳过D印thO和D印thl的率失真计算和模式选择过程,在实际过程中我们 对编码复杂度和编码质量进行了折中处理,只跳过了 xCheckRDCostlnter(SIZE_2NxN)和 xCheckRDCostlnter (SIZE_Nx2N)的模式计算过程。所以基层快速编码算法对应于图中方法 --ο
[0035] 图5为本发明质量可分级HEVC视频编码方法一个优选实施例的流程示意图。从 此流程图上可以看出本发明的快速编码算法针对基层和增强层有不同的算法。
[0036] A.对于增强层快速编码算法。具体的操作有:
[0037] 第一步,进入编码函数xCompressCU(Depth)后,首先判断当前巾贞是否是I巾贞,若是 I帧,则按照原先的编码方式进行编码,也就是说提出的算法不考虑I帧。如果不是I帧,则 进行第二步。
[0038] 第二步,判断当前编码帧是否是增强层编码,若不是,表示当编码是基层编码,则 进行提出的基层编码算法。若是,则进行第三步。
[0039] 第三步,获取增强层当前CTU相对应基层CTU的深度BlJ^pth,并将BL_D^th赋 值给增强层当前CTU的最大编码深度。接下来进行第四步。
[0040] 第四步,增强层编码器递归地对每一个CTU进行Merge模式、帧间预测、帧 内预测和层间预测过程率失真代价的计算并选择最优模式,也就是说Merge模式为: xCheckRDCostMerge2Nx2N()。帧间预测为:CheckRDCostlnterO,其有 SIZE_2Nx2N,SIZE_ NxN,SIZE_2NxN,SIZE_Nx2N,SIZE_2NxnU,SIZE_2NxnD,SIZE_nLx2N,SIZE_nRx2N 八种模式。 层间预测为:xCheckRDCostILRUni〇。在进行CTU划分前进行第五步。
[0041] 第五步,判断增强层当前CTU的深度是否小于增强层最大编码深度,如果小于,则 重复进行第四步。否则,停止此CTU的划分过程,进行下一个CTU编码过程。
[0042] B.对于基层快速编码算法。具体的操作有:
[0043] 第一步,进入编码函数xCompressCU(Depth)后,首先判断当前巾贞是否是I巾贞,若是 I帧,则按照原先的编码方式进行编码,也就是说提出的算法不考虑I帧。如果不是I帧,则 进行第二步。
[0044] 第二步,判断当前编码帧是否是增强层编码,若不是,表示当编码是基层编码,则 进行提出的基层编码算法。若是,则进行第三步。
[0045] 第三步,获取基层CTU相对应参考帧CTU的深度RefBL_D,此时最大编码深度为默 认值,接下来进行第四步。
[0046] 第四步,递归第对CTU进行Merge模式率失真代价的计算并选择最优模式,Merge 模式为:xCheckRDCostMerge2Nx2N()。
[0047] 第五步,判断基层当前CTU的深度是否小于相对应参考帧CTU的深度RefBL_ D,如果小于,则基层编码器递归地对每一个CTU进行帧间预测(此时的帧间预测不包括 SIZE_2NxN和SIZE_Nx2N两种模式)的率失真代价的计算并选择最优模式。否则,基层编 码器递归地对每一个CTU进行帧间预测所有模式过程率失真代价的计算并选择最优模式。 也就是说。帧间预测为:CheckRDCostInter〇,其有 SIZE_2Nx2N,SIZE_NxN,SIZE_2NxnU, SIZE_2NxnD,SIZE_nLx2N,SIZE_nRx2N六种模式。在进行CTU划分前进行第六步。
[0048] 第六步,判断基层当前CTU的深度是否小于基层最大编码深度,如果小于,则重复 进行第二步,否则停止CTU的划分过程,开始对下一个CTU进行编码。
[0049] 为了验证本发明方法的效果,进行了以下验证试验:选取三段不同的视频序列,利 用本发明方法进行编码,视频序列分别为分辨率为960x540,帧率为60的"BQTerrace",分 辨率为960x540,帧率为24的"Kimono"和分辨率为960x540,帧率为24的"ParkScene"。 本发明编码方法在SHVC参考软件SHM5. 1上实现并与参考软件做了对比试验。
[0050] 所得到的实验数据如下表1所示。
[0051] 表 1
[0052]

【权利要求】
1. 一种质量可分级HEVC视频编码方法,首先进行基层的编码,然后进行增强层的编 码,其特征在于,在进行增强层的编码时,增强层的各CTU分别以其所对应的基层CTU 的实际编码深度作为自身的最大编码深度来进行编码。
2. 如权利要求1所述质量可分级HEVC视频编码方法,其特征在于,在进行基层编码 时,CTU递归地选择最佳四叉树划分模式,在此过程中,当前CTU将已编码参考帧中与 其所对应CTU的实际编码深度作为参考深度,自适应地调整帧内预测的过程:当前CTU在其 当前搜索深度小于所述参考深度时,其帧内预测过程跳过SIZE_2NxN和SIZE_Nx2N这两种 模式的计算和评估。
3. 如权利要求2所述质量可分级HEVC视频编码方法,其特征在于,所述CTU递 归地选择最佳四叉树划分模式,具体是指:CTU递归地进行Merge模式、帧间预测、帧内 预测、层间预测的率失真代价的计算并根据率失真代价选择最佳四叉树划分模式。
4. 如权利要求3所述质量可分级HEVC视频编码方法,其特征在于,该方法具体包括 以下步骤: 步骤1、判断当前帧是否为I帧,如是,则转步骤10 ; 步骤2、判断当前帧是基层编码还是增强层编码,如为增强层编码,则转步骤7 ; 步骤3、基层CTU获取基层已编码参考帧中与其对应CTU的实际编码深度RefBL_D,此 时基层的最大编码深度为默认值; 步骤4、对当前CTU进行Merge模式的率失真代价的计算并根据率失真代价选择最佳四 叉树划分模式; 步骤5、判断基层当前CTU的当前搜索深度是否小于RefBL_D,如是,则递归地对当前 CTU进行帧间预测、层间预测的率失真代价的计算并根据率失真代价选择最佳四叉树划分 模式,其中,帧内预测过程跳过SIZE_2NxN和SIZE_Nx2N这两种模式的计算和评估;否则,递 归地对当前CTU进行帧间预测、层间预测的率失真代价的计算并根据率失真代价选择最佳 四叉树划分模式; 步骤6、判断基层当前CTU的深度是否小于预设的基层最大编码深度,如是,则转至步 骤4 ;否则,停止当前CTU的划分过程,转至步骤2,开始对下一个CTU进行编码; 步骤7、获取增强层当前CTU相对应基层CTU的实际编码深度BL_Depth ; 步骤8、递归地对当前CTU进行Merge模式、帧间预测、层间预测的率失真代价的计算并 根据率失真代价选择最佳四叉树划分模式; 步骤9、判断当前CTU的编码深度是否小于BL_Depth,如是,则转至步骤7 ;如否,停止 当前CTU的划分过程,转至步骤2,开始对下一个CTU进行编码; 步骤10、递归地对当前CTU进行帧内预测的率失真代价的计算并根据率失真代价选择 最佳四叉树划分模式; 步骤11、判断当前CTU的编码深度是否小于最大编码深度,如是,则进行四叉树划分, 在下一个层次递归进行4个子CTU编码;如否,当前CTU编码结束。
【文档编号】H04N19/34GK104243997SQ201410454262
【公开日】2014年12月24日 申请日期:2014年9月5日 优先权日:2014年9月5日
【发明者】胡栋, 葛庆阳, 朱惟妙, 徐秋萍 申请人:南京邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1