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的最优划分与最佳预测模式;
所述并行帧内预测方法中引入了优先级任务队列来存储对应不同深度CU的RDcost的计算任务,每个队列中CU的RDcost计算任务是按四叉树遍历顺序分配优先级的,每个队列都调用一个空闲线程来处理,具体处理过程如下:步骤4-1所有的优先级任务队列同时进行处理,即调用线程池中一个线程来处理本队列中优先级最高的RDcost计算任务;
步骤4-2在第H个优先级任务队列中,根据同一深度下并行帧内预测可知,第一组内的CU单元可并行处理,则第一组内CU单元具有相同的优先级,在此队列中,调用线程池中两个线程一次并行处理两个CU单元;
步骤4-3当第H个优先级任务队列中前4个CU完成RDcost计算任务并重建完成,第H-1个优先级任务队列中第一个CU也完成RDcost的计算任务,比较第H-1个队列中的RDcost与第H个队列中4个RDcost之和,从而决定第H-1个队列中第一个CU最优划分与最佳预测模式,按此方式继续向下进行;
步骤4-4直到第一个优先级任务队列中CU完成最优划分与最佳预测模式判断,并行帧内预测过程才终止;
(5)重复步骤4,直到所有优先级任务队列为空,即完成该LCU的帧内预测过程。
2.如权利要求1所述的基于多核平台的HEVC并行帧内预测方法,其特征在于,步骤2中的线程池初始化阶段,根据多核平台CPU核心的数量创建相应的线程数,并将每一个线程绑定到对应的核上,通过绑定可以避免线程从一个核上被调度到另一个核上导致的总线竞争和Cache利用率下降问题,对于线程的并行,引入线程池模型来减少线程反复创建和销毁的开销,同时也减少多线程间的冲突。