CN102685499B - 一种基于能量守恒的全零块检测方法 - Google Patents
一种基于能量守恒的全零块检测方法 Download PDFInfo
- Publication number
- CN102685499B CN102685499B CN201210139706.7A CN201210139706A CN102685499B CN 102685499 B CN102685499 B CN 102685499B CN 201210139706 A CN201210139706 A CN 201210139706A CN 102685499 B CN102685499 B CN 102685499B
- Authority
- CN
- China
- Prior art keywords
- sigma
- zero
- block
- coefficient
- sad
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
基于能量守恒的全零块检测方法,通过在变换量化前对变换量化后系数全为零的块(全零块)进行预判,可以提前检测出全零块,从而可省去残差块的变换量化过程。本方案在保证大QP时的检测率的同时对于小QP时的视频编码过程中的全零块检测效果突出,并且在检测过程中引入的计算量很小。因此能有效地减少变换量化过程中的计算量,从而提高编码效率。
Description
技术领域
本发明属于信息处理的视频编码领域,主要针对H.264国际视频编码标准中的变换量化过程,提出了一种基于能量守恒的全零块检测方法。
背景技术
随着以超大规模集成电路和互联网技术为代表的现代电子技术和计算机技术的迅猛发展,各种新的信息传播手段不断出现,其中多媒体技术及其应用领域是其中的热点。对于广泛的多媒体应用,视频压缩扮演着重要的角色。
H.264是由国际电信联盟(ITU)和国际标准化组织(ISO/IEC)的专家组成的联合视频组(JVT)提出的新一代数字视频编码标准,因此对于ISO被称为MPEG-4第10部分或对于JVT称为H.264/高级视频编码(H.264/AVC)。与之前的视频编码标准相比,H.264采用了多种新的编码技术使其编码效率提高70%以上,但其计算复杂度非常高,大约是H.263的4~5倍,限制了其在实时方面的应用。近年来,研究人员对H.264中复杂度非常高的运动估计和模式选择提出了很多快速算法,当运动估计和模式选择被优化后,变换和量化部分的计算复杂度就变得比较突出。
H.264的大致编码流程如下:
1、输入当前宏块,进行帧内或帧间预测;
2、预测块减去原始块得到残差块,对残差块进行变换量化等操作;
3、计算各预测模式下的率失真代价值,选择出率失真代价最小的模式作为最佳模式;
4、对下一宏块执行1-3的操作;
在视频压缩编码过程中,由于很多视频序列都具有运动缓慢、背景静止等特点,具有很强的相关性,因此预测编码的效果很好,由原始信号减去预测信号得到的残差信号的绝对值很小。如果编码块的残差信号经过变换、量化后的系数全部为零,则称这样的块为全零块(AZB)。显然对于全零块而言,变换、量化等操作都是多余的。因此,如果在H.264的编码过程中能提前检测出全零块,就可以跳过变换、量化等操作,减少相应的计算量,降低编码复杂度。
为避免反变换引起的不匹配问题,H.264采用了4×4的整数DCT。对于一个4×4残差块f(x,y),0≤x,y≤3,其整数离散余弦变换(DCT)定义为:
其中FI表示整数DCT系数,X表示残差块, 为整数变换矩阵,E为伸缩因子矩阵,符号表示(CXCT)矩阵中的元素与矩阵E中对应位置上的伸缩因子相乘,W=CXCT为核心变换。为降低计算量,缩放操作合并到了量化过程中。量化系数Z(u,v)可表示为:
|Z(u,v)|=(|W(u,v)|·M[qrem][r]+f)>>qbits,0≤u,v≤3 (18)
sign(Z(u,v))=sign(W(u,v)),其中qbits=15+floor(QP/6),QP为取值范围是0到51的量化参数,帧间时f=(2qbits)/6,帧内时f=(2qbits)/3,>>表示线性右移, 为一个周期表,其中qrem=QP%6,r=2-(u%2)-(v%2)。从公式(18)可以得到当W(u,v)满足以下不等式时量化系数Z(u,v)为零:
由W=CXCT可得到:
又因绝对误差和(SAD)为因此由公式(19)和(20)可以得到全零块检测的充分条件:
SAD<min{T(r)},r=2-(u%2)-(v%2) (21)
其中r的取值为0,1,2,
现有的全零块检测算法大部分是基于绝对误差和,且在SAD<T(2)的情况下讨论的。然而当SAD>T(2)时仍有很多全零块,因此全零块的检测率仍有提升空间。
发明内容
本发明的目的在于克服上述现有技术的存在的问题,提供了一种能够降低H.264的编码复杂度的基于能量守恒的全零块检测方法。
为达到上述目的,本发明采用的技术方案是:
1)查表得到检测全零块的阈值T(2)和Th;
2)判断SAD<T(2),满足条件则判断该块为全零块跳到步骤5),否则跳到步骤3);
3)判断计算直流系数DC是否为零,若为零跳到步骤4),否则判断该块为非全零块,跳到步骤6);
4)判断SAD<Th,满足条件则判断该块为全零块跳到步骤5),否则判断该块为非全零块,跳到步骤6);
5)跳过变换量化操作,进入下一块编码;
6)进行变换量化操作,进入下一块编码。
当SAD>T(2)时,对当前块的特性进行以下处理:
1)直流系数量化为零的条件
由H.264的整数变换量化公式可知直流量化系数Z(0,0)为0的条件为:
由W=CXCT可知因此直流系数量化为0的判断条件为:
2)交流系数量化为0的条件
假设作为DCT输入的残差系数f(x,y)近似为均值为0方差为σ的高斯分布:
|f|的期望为:
由于E[|f|]可以近似表示为
其中N表示块尺寸,因此由公式(25)和(26)得到:
由H.264的变换量化公式可知等于I,因此根据帕斯瓦尔原理可以得到
FI(0,0)表示直流系数,可表示为:
因此对于交流系数的总能量可以表示为:
很自然地:
由于DCT系数量化为零的条件为:
其中QStep=0.625×2QP/6。由公式(30)、(31)和(32)得到交流系数为零的条件:
又因为:
由公式(33)和(34)得到交流系数为零的条件:
将公式(27)代入(35)可得到由SAD判断交流系数为零的条件:
由于不同视频和编码方式下,DCT系数的分布模型或相应N×N残差块的能量有所不同,因此我们引入一个伸缩因子k:
根据统计得到的全零块与SAD的关系,当QP<30时设定k为经验值1.4,当QP≥30时设定k为经验值1.3。
本发明的有益效果是,通过在变换量化前对全零块进行预判,可以提前检测出全零块,从而可省去残差块的变换量化过程。本方案在保证大QP时的检测率的同时对于小QP时的视频编码过程中的全零块检测效果突出,并且在检测过程中引入的计算量很小。因此能有效地减少变换量化过程中的计算量,从而提高编码效率。
附图说明
图1为本发明中全零块检测的流程图。
具体实施方式
在全零块检测之前,对各个QP计算出其对应的全零块检测阈值T(2)和Th,将这些阈值存储在表中。全零块检测过程中,通过查表得到这些阈值。编码过程中,根据H.264的编码流程,在变换量化前得到绝对误差和(SAD)。若SAD<T(2),判断当前块为全零块;若SAD>T(2),计算直流系数(DC),判断直流系数是否为零,若直流系数不为零,则判断当前块为非全零块;若直流系数为零,则判断SAD<Th,若成立,则判断当前块为全零块,否则为非全零块。利用该方法可以在各QP下对不同视频序列进行全零块检测。
实施例1
选取运动复杂度从高到底的三个视频序列Football,Foreman,Mother利用提出的全零块检测算法进行全零块检测,检测流程如图1所示:
1)查表得到T(2)和Th;
2)判断SAD<T(2),满足条件则判断该块为全零块跳到步骤5),否则跳到步骤3);
3)判断计算直流系数DC是否为零,若为零跳到步骤4),否则判断该块为非全零块,跳到步骤6);
4)判断SAD<Th,满足条件则判断该块为全零块跳到步骤5),否则判断该块为非全零块,跳到步骤6);
5)跳过变换量化操作,进入下一块编码;
6)进行变换量化操作,进入下一块编码。
当SAD>T(2)时,对当前块的特性进行以下处理:
1)直流系数量化为零的条件
由H.264的整数变换量化公式可知Z(0,0)为0的条件为:
由W=CXCT可知因此计算直流系数DC系数为0的判断条件为:
2)交流系数量化为0的条件
假设作为DCT输入的残差系数f(x,y)近似为均值为0方差为σ的高斯分布:
|f|的期望为:
由于E[|f|]可以近似表示为
其中N表示块尺寸,因此由公式(41)和(42)得到:
由H.264的变换量化公式可知等于I,因此根据帕斯瓦尔原理可以得到
FI(0,0)表示直流系数,可表示为:
因此对于交流系数的总能量可以表示为:
很自然地:
由于DCT系数量化为零的条件为:
其中QStep=0.625×2QP/6。由公式(46)、(47)和(48)得到交流系数为零的条件:
又因为:
由公式(49)和(50)得到交流系数为零的条件:
将公式(43)代入(51)可得到由SAD判断交流系数为零的条件:
由于不同视频和编码方式下,DCT系数的分布模型或相应N×N残差块的能量有所不同,因此我们引入一个伸缩因子k:
根据统计得到的全零块与SAD的关系,当QP<30时设定k为经验值1.4,当QP≥30时设定k为经验值1.3。
实施例2
选取纹理复杂度从高到低的三个视频序列Mother,Foreman,Bridge-far进行全零块检测,检测流程与实施例1中一致。
Claims (2)
1.一种基于能量守恒的全零块检测方法,其特征在于:采用H.264国际视频编码标准,在编码时,对于原始4×4块和其预测块之间的残差块,经整数DCT变换和量化后,所有量化系数都为零的块称之为全零块;
1)在全零块检测之前,对各个QP计算出其对应的全零块检测阈值T(2)和Th,将这些阈值存储在表中;全零块检测过程中,通过查表得到检测全零块的阈值T(2)和Th;QP为取值范围是0到51的量化参数;T(2)即为判断直流量化系数是否为0的阈值;Th即为判断交流量化系数是否为0的阈值;
2)对原始4×4块和其预测块之间获得的绝对误差和进行判断,其中f(x,y)为残差块:SAD<T(2),满足条件则判断该块为全零块跳到步骤5),否则跳到步骤3);
3)判断计算直流系数DC是否为零,若为零跳到步骤4),否则判断该块为非全零块,跳到步骤6);
4)判断SAD<Th,满足条件则判断该块为全零块跳到步骤5),否则判断该块为非全零块,跳到步骤6);
5)跳过变换量化操作,进入下一块编码;
6)进行变换量化操作,进入下一块编码。
2.根据权利要求1所述的基于能量守恒的全零块检测方法,其特征在于:
当SAD>T(2)时,对当前块的特性进行以下处理:
1)直流系数量化为零的条件
由H.264的整数变换量化公式可知直流量化系数Z(0,0)为0的条件为:
其中,
W=CXCT为核心变换,X为残差块,
量化系数Z(u,v)可表示为:
|Z(u,v)|=(|W(u,v)|·M[qrem][r]+f)>>qbits,0≤u,v≤3
式中,sign(Z(u,v))=sign(W(u,v)),qbits=15+floor(QP/6),QP为取值范围是0到51的量化参数,帧间编码时f=(2qbits)/6,帧内时f=(2qbits)/3,>>表示线性右移,
由W=CXCT可知因此直流系数量化为0的判断条件为:
2)交流系数量化为0的条件
假设作为DCT输入的残差系数f(x,y)近似为均值为0方差为σ的高斯分布:
|f|的期望为:
由于E[|f|]可以近似表示为:
其中N表示块尺寸,因此由公式(4)和(5)得到:
由H.264的变换量化公式可知等于I,因此根据帕斯瓦尔原理可以得到:
FI(0,0)表示直流系数,可表示为:
因此对于交流系数的总能量可以表示为:
很自然地:
由于DCT系数量化为零的条件为:
其中QStep=0.625×2QP/6,由公式(9)、(10)和(11)得到交流系数为零的条件:
又因为:
由公式(12)和(13)得到交流系数为零的条件:
将公式(6)代入(14)可得到由SAD判断交流系数为零的条件:
由于不同视频和编码方式下,DCT系数的分布模型或相应N×N残差块的能量有所不同,因此我们引入一个伸缩因子k:
根据统计得到的全零块与SAD的关系,当QP<30时设定k为经验值1.4,当QP≥30时设定k为经验值1.3。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210139706.7A CN102685499B (zh) | 2012-05-07 | 2012-05-07 | 一种基于能量守恒的全零块检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210139706.7A CN102685499B (zh) | 2012-05-07 | 2012-05-07 | 一种基于能量守恒的全零块检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102685499A CN102685499A (zh) | 2012-09-19 |
CN102685499B true CN102685499B (zh) | 2015-01-07 |
Family
ID=46816783
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210139706.7A Expired - Fee Related CN102685499B (zh) | 2012-05-07 | 2012-05-07 | 一种基于能量守恒的全零块检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102685499B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104247418A (zh) * | 2013-07-29 | 2014-12-24 | 北京大学深圳研究生院 | Hevc视频编码中变换量化方法和视频编码装置 |
CN108124163B (zh) * | 2017-12-14 | 2020-07-14 | 西北工业大学 | 一种适用于hevc的全零块检测方法 |
CN111757111B (zh) * | 2020-06-29 | 2023-02-24 | 北京百度网讯科技有限公司 | 视频编码方法、装置、设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1770863A (zh) * | 2004-11-02 | 2006-05-10 | 华为技术有限公司 | 零块预判条件的确定方法及零块预先判定方法 |
CN101193304A (zh) * | 2007-09-14 | 2008-06-04 | 四川虹微技术有限公司 | 一种视频编码快速变换量化的实现方法 |
CN101795404A (zh) * | 2009-10-21 | 2010-08-04 | 深圳市融创天下科技发展有限公司 | 基于量化步长的零块阈值确定方法及零块预先判断方法 |
-
2012
- 2012-05-07 CN CN201210139706.7A patent/CN102685499B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1770863A (zh) * | 2004-11-02 | 2006-05-10 | 华为技术有限公司 | 零块预判条件的确定方法及零块预先判定方法 |
CN101193304A (zh) * | 2007-09-14 | 2008-06-04 | 四川虹微技术有限公司 | 一种视频编码快速变换量化的实现方法 |
CN101795404A (zh) * | 2009-10-21 | 2010-08-04 | 深圳市融创天下科技发展有限公司 | 基于量化步长的零块阈值确定方法及零块预先判断方法 |
Non-Patent Citations (2)
Title |
---|
Early all-zero blocks detecting method for video coding based on novel threshold;Zhong Guoyun et al.;《Journal or Southeast University(English Edition)》;20110930;第27卷(第3期);全文 * |
H.264/AVC全零块检测算法原理及性能分析;刘志成 等;《计算机与现代化》;20110331(第3期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN102685499A (zh) | 2012-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102137263B (zh) | 基于cnm关键帧分类的分布式视频编码及解码方法 | |
CN102148989B (zh) | 一种h.264中全零块检测的方法 | |
CN103329522B (zh) | 用于使用字典编码视频的方法 | |
CN100592798C (zh) | 一种视频编码快速变换量化的实现方法 | |
CN102158709B (zh) | 一种解码端可推导的运动补偿预测方法 | |
CN101257630B (zh) | 结合三维滤波的视频编码方法和装置 | |
CN103384325A (zh) | 一种avs-m视频编码快速帧间预测模式选择方法 | |
CN105306939A (zh) | 用于对视频进行解码的方法和装置 | |
CN102291582B (zh) | 一种基于运动补偿精化的分布式视频编码方法 | |
CN100574447C (zh) | 基于avs视频编码的快速帧间预测模式选择方法 | |
CN100581262C (zh) | 基于ρ域的视频编码码率控制方法 | |
CN101340593B (zh) | 一种容错性视频转码中的率失真优化方法 | |
CN101529916A (zh) | 利用帧内编码选择的视频编码 | |
CN102625102B (zh) | 一种面向h.264/svc mgs编码的率失真模式选择方法 | |
CN107846593B (zh) | 一种率失真优化方法及装置 | |
CA2679767A1 (en) | Encoding bit-rate control method and apparatus, program therefor, and storage medium which stores the program | |
CN103024392B (zh) | 基于二维哈达玛变换的帧内模式预测方法及装置 | |
CN102685499B (zh) | 一种基于能量守恒的全零块检测方法 | |
Chen et al. | Improving video coding quality by perceptual rate-distortion optimization | |
CN103384327A (zh) | 基于自适应阈值的avs快速模式选择算法 | |
CN102857760B (zh) | 一种无反馈的优化码率的分布式视频编解码方法及其系统 | |
Ramasubbu et al. | Modeling the HEVC encoding energy using the encoder processing time | |
CN107343202B (zh) | 基于附加码率的无反馈分布式视频编解码方法 | |
CN101513072B (zh) | 用于分析和经验混合编码失真建模的方法和装置 | |
CN106534855A (zh) | 一种面向satd的拉格朗日因子计算方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150107 Termination date: 20170507 |