[发明专利]一种提高HEVC编码器离散余弦变换处理速度的方法在审
申请号: | 201510776362.4 | 申请日: | 2015-11-13 |
公开(公告)号: | CN105306956A | 公开(公告)日: | 2016-02-03 |
发明(设计)人: | 陈卫刚;陈启超 | 申请(专利权)人: | 浙江工商大学 |
主分类号: | H04N19/62 | 分类号: | H04N19/62;H04N19/625;H04N19/132 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 310018 浙江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 提高 hevc 编码器 离散 余弦 变换 处理 速度 方法 | ||
技术领域
本发明涉及视频图像压缩编码领域,具体涉及一种提高HEVC编码器离散余弦变换处理速度的方法。
背景技术
作为新一代视频编码标准,高效率视频编码(HighEfficiencyVideoCoding,HEVC)沿用了H.264等前一代编码标准所使用的基于块的混合编码框架,利用帧内和帧间预测去除空间和时间冗余,利用离散余弦变换(DiscreteCosineTransform,DCT)和熵编码去除统计冗余。
HEVC以变换单元(TransformUnit,TU)为单位进行离散余弦变换和量化,每个TU包含亮度和色度分量的变换块(TransformBlock,TB),变换块的数据为经过预测补偿后的残差数据。
设X是一个大小为N×N(N=4,8,16,或32)的变换块,二维DCT变换可写成如下的矩阵相乘的形式:
F=AXAT
其中A是一个N×N的变换矩阵,其元素按下式确定:
其中,若i=0,则Ci=1;否则,
在HEVC中,二维DCT变换由两个顺序执行的一维变换实现,首先对残差矩阵执行如下的第一级一维离散余弦变换,即一维行变换,得到中间结果矩阵Y:
Y=AXT
然后对Y矩阵执行如下的第二级一维离散余弦变换,即一维列变换,得到与变换块对应的二维离散余弦变换系数矩阵F:
F=AYT
由于采用了帧间或帧内预测、离散余弦变换、量化等压缩编码工具,所以在HEVC中通常存在大量的变换块,经变换量化后的系数全部为零或者只有在部分位置存在非零元素。如果在进行DCT变换之前能检测那些经变换量化后为全零的变换块,则后续的DCT变换和量化步骤都可以省略;如果在第二个一维DCT变换之前能检测经变换量化后的系数矩阵为全零的列,则后续的一维DCT变换过程可忽略这些列,这两种情况都能有效地提高编码器进行离散余弦变换的处理速度。
本发明针对上述HEVC以行列分离的方式实现二维DCT计算的结构,提供一种提高HEVC编码器二维离散余弦变换处理速度的方法,这种方法在DCT变换之前针对变换块的残差数据,一维行变换之后针对行变换的中间结果矩阵检测全零变换块和全零系数列,以减少编码器花费在DCT变换和量化计算的时间代价,从而提升HEVC的编码效率。
发明内容
本发明所要解决的技术问题在于提供一种提高HEVC编码器离散余弦变换处理速度的方法,通过提前检测经离散余弦变换和量化后为全零或者部分为零的变换块,对被检测为全零块的变换块忽略后续的一维行变换和一维列变换,对被检测为全零系数列的列,忽略后续的一维列变换,从而达到提高编码效率的目的,包括:
为包含N列的变换块预设L(L≤N)个依次递增的阈值,在第一级一维离散余弦变换之前,计算块内残差绝对值之和,并且逐个与L个阈值作比较,当某个阈值大于残差绝对值之和,则提前判定该阈值对应的列以及其后的列经变换量化后为全零系数列;特别地,当对应第0列的阈值大于残差绝对值之和,则提前判定变换块为全零变换块;
变换块经过第一级一维离散变换后得到中间结果矩阵Y,以Y的转置矩阵为输入,逐列地计算列向量的所有元素之和,求取二维离散余弦变换系数矩阵的列向量中第0个(即下标为0)元素值;计算列向量所有元素的绝对值之和,求取二维离散余弦变换系数矩阵的列向量中除第0个元素之外的其它元素的上界值;根据第0个元素的绝对值和其它元素的上界值是否都小于由量化参数确定的阈值提前判断二维DCT系数矩阵中的各列是否是全零系数列。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江工商大学,未经浙江工商大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510776362.4/2.html,转载请声明来源钻瓜专利网。