一种基于多核平台的HEVC并行帧内预测方法技术

技术编号:13375380 阅读:51 留言:0更新日期:2016-07-20 21:53
本发明专利技术属于视频编码的技术领域,具体涉及一种基于多核平台的HEVC并行帧内预测方法。可以实现不同深度下的CU并行预测,同时在4×4粒度下通过共用参考像素,一次并行处理两个4×4大小的CU。由帧內预测依赖性可知,当大尺寸的CU开始进行预测时,其包含的左上角小尺寸的CU也可进行预测,当一个CU完成重建时,多个有依赖关系的CU可以同时开始。以此类推,从而实现不同深度下的CU并行。本发明专利技术通过不同深度下CU与相同深度下CU并行处理相结合的方式,利用多核平台提供的线程池技术,为并行处理的CU单元分配一个线程去处理,使帧内预测在编码速度上有了明显的改善,显著提升了并行加速比。

【技术实现步骤摘要】

本专利技术属于视频编码的
,具体涉及一种基于多核平台的HEVC并行帧内预测方法
技术介绍
HEVC(HighEfficiencyVideoCoding)作为新一代视频标准,于2010年4月在德国德累斯顿召开的JCT-VC会议中被提出。其核心目标是在H.264/AVCHighProfile的基础上,压缩效率提高一倍,即保证在相同的视频图像质量的前提下,视频流的码率减少50%。HEVC遵循H.264/AVC的核心机制,并采用了多种编码技术,显著提高了编码性能。其中包括帧内预测技术,采用更加灵活的四叉树编码单元结构。HEVC帧内预测采用CU(CodeUnit),PU(PredictionUnit)以及TU(TransformUnit)进行编码、预测和变换等操作。CU的尺寸按四叉树递归的方式,根据深度的不同可以分为64×64,32×32,16×16,8×8四种尺寸。在所有不同深度的CU遍历完成后,根据计算得到的率失真代价值确定CU的最佳划分尺寸。每个尺寸为64×64的最大编码单元共需要计算1+4+42+43+44=341次率失真代价值。因此,HEVC在获得高性能的同时也带来很大的计算复杂度。在HEVC中采用四叉树结构的编码单元(CU),CU块始终是正方形,其大小从8×8到64×64。CU块的划分从LCU(最大编码单元)开始递归,逐层遍历所有从64×64到8×8的块,并且根据率失真代价选择最佳块,从而实现CU的划分。在标准HEVC中,LCU的划分的原算法如下:(1)从最大编码单元64×64(LCU)开始,对其进行预测编码,得到其率失真代价。(2)进一步划分为4个32×32的子块,对这4个子块进行预测编码,得到四个子块的率失真代价和。(3)如此类推,一直算到4×4块。(4)递归返回,根据率失真代价值选择最佳块。从8×8的块开始,如果4个4×4的CU的率失真代价和大于8×8块的率失真代价,则不划分,选择8×8的CU块类型,否则选择4×4的CU块类型。以此算法对16×16的块进行判断是否划分,一直到LCU。(5)编码下一个LCU。基于这种递归结构,编码器需要对各个尺寸的CU进行全遍历算法,这是很耗时的过程。
技术实现思路
本专利技术针对HEVC中基于递归结构的全遍历算法存在的耗时、效率低下的问题提出一种基于多核平台的HEVC并行帧内预测方法,该方法通过结合不同深度下的CU单元和4×4粒度下的CU单元并行处理,使帧内预测在编码速度上有了明显的改善,显著提升了并行加速比。本专利技术提供的解决方案是一种基于多核平台的HEVC并行帧内预测方法,包括以下步骤:(1)主线程首先确定LCU的尺寸,根据LCU的尺寸可以决定最大编码深度H以及需要使用的线程或核的数量;(2)线程池初始化完成后,根据CPU数量创建相应的线程数,并将每个线程绑定到不同的核上;(3)根据最大编码深度H,初始化H个优先级任务队列,分别用于存储对应不同深度CU的RDcost的计算任务,每个队列中CU的RDcost计算任务是按四叉树遍历顺序分配优先级的;(4)分别调用线程池中H+1个线程来处理所述H个优先级任务队列,最后一个队列使用两个线程并行处理,每个线程同时取出对应队列中优先级最高的CU,同时并行帧内预测,当4个子CU串行完成RDcost的计算和重建后,与父CU的RDcost值进行比较,从而决定该层CU的最优划分与最佳预测模式;(5)重复步骤4,直到所有优先级任务队列为空,即完成该LCU的帧内预测过程。进一步,步骤4中的并行帧内预测方法中引入了优先级任务队列来存储对应不同深度CU的RDcost的计算任务,每个队列中CU的RDcost计算任务是按四叉树遍历顺序分配优先级的,每个队列都调用一个空闲线程来处理,具体处理过程如下:(1)所有的优先级任务队列同时进行处理,即调用线程池中一个线程来处理本队列中优先级最高的RDcost计算任务;(2)在第H个优先级任务队列中,根据同一深度下并行帧内预测可知,第一组内的CU单元可并行处理,则第一组内CU单元具有相同的优先级,在此队列中,调用线程池中两个线程一次并行处理两个CU单元;(3)当第H个优先级任务队列中前4个CU完成RDcost计算任务并重建完成,第H-1个优先级任务队列中第一个CU也完成RDcost的计算任务,比较第H-1个队列中的RDcost与第H个队列中4个RDcost之和,从而决定第H-1个队列中第一个CU最优划分与最佳预测模式,按此方式继续向下进行;(4)直到第一个优先级任务队列中CU完成最优划分与最佳预测模式判断,并行帧内预测过程才终止。又进一步,步骤2中的线程池初始化阶段,根据多核平台CPU核心的数量创建相应的线程数,并将每一个线程绑定到对应的核上,通过绑定可以避免线程从一个核上被调度到另一个核上导致的总线竞争和Cache利用率下降问题,对于线程的并行,引入线程池模型来减少线程反复创建和销毁的开销,同时也减少多线程间的冲突。作为优选,用加速比来衡量并行算法的性能,反映并行优化前后的变化,具体如下:Speedup=EncTimeserial/EncTimeparallel其中EncTimeserial为串行单核编码的耗时,EncTimeparallel为多核并行编码的耗时,加速比越大,算法的编码速度越快,并行性能越好,HEVC编码效率越高。有益效果(1)降低了HEVC帧内预测的计算复杂度,大大减小了编码时间,提高了编码效率;(2)对于全帧内编码模式的视频序列,大大提高了并行加速比;(3)相比于现有的快速帧内预测,本专利提出的方法能够充分利用多核资源,在不影响视频图像主客观质量的前提下,减少预测编码的时间,提升帧内预测的效率。附图说明图1为相同深度下CU的预测顺序图。图2为HEVC中帧内预测与4×4粒度并行帧内预测参考像素的比较图。图3为LCU的递归划分图。图4为基于多核平台的HEVC并行帧内预测方法的流程图。图5为优先级任务队列。具体实施方式现结合附图对本专利技术的具体实施作进一步的详细说明。一种基于多核平台的HEVC并行帧内预测方法的具体实施方式分为以下3个步骤:1、相同深度下的CU单元并行。由帧内预测原理与依赖关系可知,一个CU单元会参考其相邻的左方、左上方、上方和右上方的CU单元。这种高度依赖的结构,使得同一深度的CU在做帧内预测时必须按照一定的顺序来执行。如图1所示,一个8×8的CU本文档来自技高网
...

【技术保护点】
一种基于多核平台的HEVC并行帧内预测方法,其特征在于,该方法包括以下步骤:(1)主线程首先确定LCU的尺寸,根据LCU的尺寸可以决定最大编码深度H以及需要使用的线程或核的数量;(2)线程池初始化完成后,根据CPU数量创建相应的线程数,并将每个线程绑定到不同的核上;(3)根据最大编码深度H,初始化H个优先级任务队列,分别用于存储对应不同深度CU的RDcost的计算任务,每个队列中CU的RDcost计算任务是按四叉树遍历顺序分配优先级的;(4)分别调用线程池中H+1个线程来处理所述H个优先级任务队列,最后一个队列使用两个线程并行处理,每个线程同时取出对应队列中优先级最高的CU,同时并行帧内预测,当4个子CU串行完成RDcost的计算和重建后,与父CU的RDcost值进行比较,从而决定该层CU的最优划分与最佳预测模式;(5)重复步骤4,直到所有优先级任务队列为空,即完成该LCU的帧内预测过程。

【技术特征摘要】
1.一种基于多核平台的HEVC并行帧内预测方法,其特征在于,该方法包括以下步骤:
(1)主线程首先确定LCU的尺寸,根据LCU的尺寸可以决定最大编码深度H以及需
要使用的线程或核的数量;
(2)线程池初始化完成后,根据CPU数量创建相应的线程数,并将每个线程绑定到不
同的核上;
(3)根据最大编码深度H,初始化H个优先级任务队列,分别用于存储对应不同深度
CU的RDcost的计算任务,每个队列中CU的RDcost计算任务是按四叉树遍历顺序分配优先
级的;
(4)分别调用线程池中H+1个线程来处理所述H个优先级任务队列,最后一个队列使
用两个线程并行处理,每个线程同时取出对应队列中优先级最高的CU,同时并行帧内预测,
当4个子CU串行完成RDcost的计算和重建后,与父CU的RDcost值进行比较,从而决定
该层CU的最优划分与最佳预测模式;
(5)重复步骤4,直到所有优先级任务队列为空,即完成该LCU的帧内预测过程。
2.根据权利要求1所述的基于多核平台的HEVC并行帧内预测方法,其特征在于,步
骤4中的并行帧内预测方法中引入了优先级任务队列来存储对应不同深度CU的RDcost的计
算任务,每个队列中CU的RDcost计算任务是按四叉树遍历顺序分配优先级的,每个队列都
调用一个空闲线程来处理,...

【专利技术属性】
技术研发人员:胡栋束骏方狄
申请(专利权)人:南京邮电大学
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1