[发明专利]一种基于CPU+GPU混合编码的帧内编码预测方法有效
申请号: | 201910903086.1 | 申请日: | 2019-09-24 |
公开(公告)号: | CN110677646B | 公开(公告)日: | 2022-01-11 |
发明(设计)人: | 谢亚光;陈勇;李日 | 申请(专利权)人: | 杭州当虹科技股份有限公司 |
主分类号: | H04N19/103 | 分类号: | H04N19/103;H04N19/176;H04N19/42 |
代理公司: | 杭州橙知果专利代理事务所(特殊普通合伙) 33261 | 代理人: | 林伟 |
地址: | 310012 浙江省杭州市西*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 cpu gpu 混合 编码 预测 方法 | ||
1.一种基于CPU+GPU混合编码的帧内编码预测方法,其特征是,具体包括如下步骤:
(1)当编码器开始编码一帧Intra帧时,获得需要编码的Intra帧数据时,通常为YUV数据,先把YUV数据copy到GPU的global memory上;
(2)在GPU上面创建n个CUDA流处理器,每个流处理器负责一个尺寸的Intra预测模式,n为所有Intra预测块大小的个数;
(3)每个流处理器分别对整个图像的某个块尺寸的各个模式进行处理,首先基于输入帧YUV的数据而不是重建帧数据以及相应的模式获得预测块数据,然后通过当前帧的编码块数据与预测块数据相减得到残差块数据,进而对残差块数据做哈达玛变换,进而计算出每个残差块的Satd,GPU计算完所有模式的Satd后,把每个预测块的最优N个模式以及对应的Satd传回到CPU;
(4)GPU计算完所有的预测块的所有预测模式的Satd后,由于这是近似值,需要用CPU来进一步确定最佳模式;CPU确定最佳模式的具体操作步骤如下:
(a)CPU端采用正常编码顺序,对每个CTU或LCU按顺序串行处理;
(b)对于每一个CTU或LCU,先考察最大的CU,将其视为CUup,将步骤(3)中计算得到的近似satd最优的N个模式为候选模式,使用标准处理方法,计算得到每个候选模式的RDCost_simple,得到最优的模式,然后计算最优模式的RDCost,记做Rup,此最优模式为Modeup;
(c)把CUup分为4个正方形小CU,每个CU的宽度为CUup的二分之一,这四个小CU称为CUsub,然后分别对每个CUsub用步骤(b)的方法计算最优模式并得到相应的RDCost, 分别记做Ri,i=1、2、3、4,四个Ri之和记做Rthis,如果Rup=Rthis,则表示CUup划分确定为上一层,不再往下划分CU,且预测模式即为Modeup,本CU的判断到此即可结束;如果RupRthis,则表示CUup需要划分到本层,甚至还需要继续向更小的CU划分做尝试, 针对每一个小CUsub,分别继续执行步骤(d);
(d)如果当前CUsub的尺寸已经是允许的最小CU尺寸,则当前CUsub就划分为当前CUsub,否则把当前CUsub当做CUup,递归重复步骤(b)、步骤(c)和步骤(d),最终可以确认当前CUsub的划分模式以及预测模式;
(e)通过如此迭代,依次对所有的CTU或LCU完成整帧的模式判决,最终确认整个CTU或LCU的划分模式以及相应的预测模式。
2.根据权利要求1所述的一种基于CPU+GPU混合编码的帧内编码预测方法,其特征是,在步骤(2)中,n最多为5,分别代表64x64,32x32,16x16,8x8,4x4大小,编码器可以根据实际情况主动禁止模式尺寸从而减小总复杂度,故n小于等于5。
3.根据权利要求1所述的一种基于CPU+GPU混合编码的帧内编码预测方法,其特征是,在步骤(3)中,每个流处理器也分很多线程块,每个线程块含多个线程并行处理,线程块的个数以及每个线程块的线程数依据GPU的型号来定。
4.根据权利要求1所述的一种基于CPU+GPU混合编码的帧内编码预测方法,其特征是,在步骤(b)和步骤(c)中,计算Rup或者Ri时候还可以选择的方法是:全部预测模式均计算RDCost,而不是Satd最优模式才计算RDCost,具体使用两者中的哪一种依据计算资源和计算量灵活确定。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州当虹科技股份有限公司,未经杭州当虹科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910903086.1/1.html,转载请声明来源钻瓜专利网。