The invention relates to a method of motion compensation, including the unit block all matching block all prediction of the current frame, the matching block is divided into squares, all of the same size, all the squares, according to the local cache line size GPU and GPU size, combined into blocks, GPU receives all the matching chunks and the motion compensation calculation, the predicted image to generate a frame. The invention also provides a HEVC decoding method using the motion compensation method for embedded system, in addition to pure CPU soft decoding and dedicated hardware decoding module, provides a performance, power consumption, cost, scalability and other more balanced HEVC decoding scheme. The invention also provides a motion compensation device and a HEVC decoding device using the same.
【技术实现步骤摘要】
本专利技术涉及视频编解码领域,具体涉及一种运动补偿方法及装置、HEVC解码方法及设备。
技术介绍
HEVC是新一代的视频压缩技术,在继承了H.264众多优点基础上,进一步提升了压缩率。对高清晰度的视频,在编码质量不变的情况下,HEVC的压缩率相比H.264提高了30-50%,大大减轻了对存储空间和传输带宽的消耗。但压缩率的提升是以增加复杂度为代价的。对嵌入式系统,目前主流的HEVC解码方法有两种:纯CPU软解码(包括NEON加速)和硬件专用模块解码。纯CPU软解码对系统资源,尤其是CPU资源消耗非常大,在面对高码率视频时,很容易出现解码不流畅的现象;同时高负载下系统耗电量很大,散热压力也很大,这些严重影响了软解码在嵌入式系统中的使用。硬件专用解码模块,具有解码流畅、耗电低,发热小的特点,往往得到SoC厂家的青睐。但该模块的引入会增加研发周期和硬件成本,后续扩展性差,一旦出现兼容性问题,则不容易解决,因而即便是包含硬件解码的系统,往往也需要一套软解码作为备份解码方案。在学术界上,有诸多使用CUDA加速的HEVC编解码方案,相对于纯CPU软解码和硬件专用解码模块来说,是一种较好的折衷。但这些方案全都基于PC平台,由于CUDA技术在嵌入式系统中基本不通用,并且嵌入式系统在GPU结构和显存方面与PC平台有显著差异,使得基于PC平台的GPU-HEVC加速方案很难直接应用在嵌入式系统中。目前在嵌入式系统中,尚无基于CPU和GPU协作的HEVC解码方案。
技术实现思路
本专利技术提供一种嵌入式系统中基于CPU和GPU协作的运动补偿方法及装置,同时还设计了一 ...
【技术保护点】
一种运动补偿方法,其特征在于,包括以下步骤:获取当前帧的全部预测单元块的全部匹配块;所述全部匹配块分成大小相同的匹配小方块;所述匹配小方块根据GPU的缓存行的大小和GPU的局部缓存的大小组合成多个匹配大块;所述GPU接收所述匹配大块做运动补偿计算。
【技术特征摘要】
1.一种运动补偿方法,其特征在于,包括以下步骤:获取当前帧的全部预测单元块的全部匹配块;所述全部匹配块分成大小相同的匹配小方块;所述匹配小方块根据GPU的缓存行的大小和GPU的局部缓存的大小组合成多个匹配大块;所述GPU接收所述匹配大块做运动补偿计算。2.如权利要求1所述的运动补偿方法,其特征在于,所述匹配小方块的边长为2的幂次。3.如权利要求1所述的运动补偿方法,其特征在于,取所述全部匹配块的边长的最大公约数作为所述匹配小方块的边长。4.如权利要求1所述的运动补偿方法,其特征在于:所述匹配大块的宽度为GPU的缓存行的预设整数倍;所述匹配大块的高度为GPU的局部缓存的大小除以所述GPU的缓存行的预设整数倍与预设值的乘积。5.如权利要求4所述的运动补偿方法,其特征在于,当所述匹配大块的宽度和/或高度不是所述匹配小方块边长的整数倍时,将所述匹配大块的宽度和/或高度减至所述匹配小方块边长的整数倍。6.如权利要求1所述的运动补偿方法,其特征在于,对所述匹配大块做运动补偿计算由GPU完成,其他步骤由CPU完成。7.如权利要求6所述的运动补偿方法,其特征在于,所述GPU从所述CPU接收所述匹配大块。8.如权利要求7所述的运动补偿方法,其特征在于,所述GPU从所述CPU一
\t次接收的所述匹配大块的数量是基于当前帧的整帧或半帧图像。9.如权利要求7所述的运动补偿方法,其特征在于,所述GPU从所述CPU接收所述匹配大块具体包括:所述GPU读取系统内存中所述CPU存入的匹配大块,所述系统内存以所述CPU和所述GPU都能识别的方式申请,从而实现内存零拷贝。10.如权利要求6所述的运动补偿方法,其特征在于,还包括:所述GPU向CPU输出运动补偿计算结果。11.如权利要求10所述的运动补偿方法,其特征在于,所述GPU向所述CPU一次输出的运动补偿计算结果是基于当前帧的整帧或半帧图像。12.如权利要求10所述的运动补偿方法,其特征在于,所述GPU向所述CPU输出运动补偿计算结果具体包括:以所述CPU和所述GPU都能识别的方式申请系统内存,所述运动补偿计算结果存入所述系统内存;所述CPU读取所述系统内存中的运动补偿计算结果,从而实现内存零拷贝。13.一种HEVC解码方法,其特征在于,采用如权利要求1至12任一项所述的运动补偿方法对当前帧做运动补偿运算。14.如权利要求13所述的HEVC解码方法,其特征在于,所述HEVC解码方法中除运动补偿运算外的其他运算由CPU完成。15.如权利要求13所述的HEVC解码方法,其特征在于,所述HEVC解码方法中的反量化反变换运算由CPU和GPU协作完成。16.如权利要求13所述的HEVC解码方法,其特征在于,所述HEVC解码方法中的重构运算由GPU完成。17.一种运动补偿装置,其特征在于,包括:处理模块,用于获取当前帧的全部预测单元块的全部匹配块,并将所述全部匹配块根据GPU的缓存行的大...
【专利技术属性】
技术研发人员:高峰,
申请(专利权)人:珠海全志科技股份有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。