CN103237224A - 一种基于门限的P_skip块提前判决方法 - Google Patents
一种基于门限的P_skip块提前判决方法 Download PDFInfo
- Publication number
- CN103237224A CN103237224A CN2013101123822A CN201310112382A CN103237224A CN 103237224 A CN103237224 A CN 103237224A CN 2013101123822 A CN2013101123822 A CN 2013101123822A CN 201310112382 A CN201310112382 A CN 201310112382A CN 103237224 A CN103237224 A CN 103237224A
- Authority
- CN
- China
- Prior art keywords
- sad
- value
- row
- qstep
- matrix
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 238000013139 quantization Methods 0.000 claims abstract description 50
- 239000011159 matrix material Substances 0.000 claims description 31
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 claims description 22
- 230000002028 premature Effects 0.000 claims description 9
- 238000011002 quantification Methods 0.000 claims description 8
- 238000002474 experimental method Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 claims description 5
- 238000004422 calculation algorithm Methods 0.000 abstract description 10
- 238000004364 calculation method Methods 0.000 abstract description 4
- 230000009466 transformation Effects 0.000 abstract description 2
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000009795 derivation Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明涉及一种基于门限的P_skip块提前终止判断方法,方法如下:断当前块左边、上边、左上、右上相邻宏块是否有一个为P_skip块,若是则求当前块与重构块的SAD值,根据当前块的量化参数,通过查找预设的SAD门限值数组,获取当前块对应的提前终止的门限值,比较所述SAD值与门限值,若满足SAD值<门限值,则确定当前块即为P_skip块,不再进一步进行模式判定。本发明对于P_skip块可以省略原有算法里变换、量化、扫描与非零个数判断等运算,降低了计算复杂度,提高了编码效率,而且计算误差也较小。
Description
技术领域
本发明涉及视频压缩编码技术领域,尤其涉及一种基于门限的P_skip块提前判决方法。
背景技术
现有技术264算法中的提前P_skip模式判断算法,在进行模式判定前,一
般先进行如下判断:
if(mb_type_left==P_SKIP||mb_type_top==P_SKIP||mb_type_topleft==P_SKIP||mb_type_topright==P_SKIP),(mb_type_left为当前块左边相邻宏块类型,mb_type_top为当前块上边边相邻宏块类型,mb_type_topleft为当前块左上相邻宏块类型,mb_type_topright为当前块右上相邻宏块类型,)
{
1.根据预测mvp和参考帧得到重构的亮度宏块(这是本领域的通用技术手段:在参考帧上按运动矢量预测值mvp,搜索到当前块的预测值,然后将经过变化量化的残差块(所谓残差块就是当前块与当前块预测值的差值),再进行反量化反变换,最后将其与当前块预测值相加,获取的就是重构块;)
2.对于亮度,把当前块划分为16个4x4子块;
3.依次对每个4x4块的亮度值分别进行DCT变换、量化、zigzag扫描,并判断该4x4块扫描后非零值的个数,如果大于5则跳转的第5步;否则继续步骤3直到16个子块都计算完毕;
4.对于色度,根据预测mvp和参考帧得到重构的色度块;并对其进行类似亮度块的运算,差别在于此处4x4的块扫描后的非零个数大于6则跳转到第5步;否则,则该宏块为P_skip块,无须进行模式判定;
5.该宏块不是P_skip块,继续下面的模式判定。
}
该算法比全模式判定算法效率提高很多,图像质量也很好,但其对P_skip块提前检测的算法仍然过于繁琐,例如大量的进行了变换、量化、扫描及非零个数判断的运算,这些运算都是很耗时的。下面将介绍本发明如何在不使用这些耗时运算的情况下进行P_skip提前终止判断。
发明内容
本发明实施例要解决的技术问题在于提出一种基于门限的P_skip块提前判决方法,以省略原有算法里变换、量化、扫描与非零个数判断等运算,提高H.264标准中的压缩编码效率。
为解决上述问题,本发明实施例提出了一种基于门限的P_skip块提前判决方法,包括以下步骤:
a:断当前块左边、上边、左上、右上相邻宏块是否有一个为P_skip块,若是则继续以下步骤;
b:求当前块与重构块的SAD值;
c:根据当前块的量化参数(qp),通过查找预设的SAD门限值数组,获取当前块对应的提前终止的门限值(T[qp]);
d:比较所述SAD值与门限值(T[qp]),若满足SAD值<门限值,则确定当前块即为P_skip块,不再进一步进行模式判定。
所述预设的SAD门限值数组(T[qp])为
量化参数qp∈[0,51],以上52门限值分别对应0到51个量化参数qp,其中第一行对应0到7个量化参数,第二行对应8到15个量化参数,第三行对应16到23个量化参数,第四行对应24到31个量化参数,第五行对应32到39个量化参数,第六行对应40到47个量化参数,第七行对应48到51个量化参数。
有益效果:
本发明实施例提出了一种基于门限的P_skip块提前判决方法,省略H.264原有算法里变换、量化、扫描与非零个数判断等运算,对P_skip模块进行提前终止判定。本发明实施例不仅极大的降低了计算复杂度,提高了编码效率,而且计算误差也较小。
附图说明
图1为本发明优选实施例一种基于门限的P_skip块提前判决方法流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图和实施例,对本发明进行进一步详细说明,为了便于说明,仅示出了与本发明实施例相关的部分。应当理解,此处所描写的具体实施例,仅仅用于解释本发明,并不用以限制本发明。
实验显示相邻宏块间的rd cost函数(率失真函数)具有很高的相关性,所以可以利用这个相关性来对当前宏块的模式类型进行P_skip提前终止判断;而对P_skip宏块来说,rd cost函数与其SAD值具有线性相关性,相关系数高达0.985,所以最终可以使用SAD来代替rd cost函数进行P_skip提前终止判断。由传统的数学推导过程可知,100%全零块的阈值是与图像序列无关的,只与块的大小和量化水平有关。而且实验亦表明,不同的序列表现出相同的突变性能。
本发明实施例提出了一种基于门限的P_skip块提前判决方法,省略H.264原有算法里变换、量化、扫描与非零个数判断等运算,对P_skip模块进行提前终止判定。采用本发明实施例不仅极大的降低了计算复杂度,提高了编码效率,而且计算误差也较小。
实施例一
图1为本发明实施例一种基于门限的P_skip块提前判决方法流程图,所述方法包括以下步骤:
S101:判断当前块左边、上边、左上、右上相邻宏块是否有一个为P_skip块,若是则进入步骤S102;若否,则对当前块进行正常编码模式确定。
所述正常编码模式为,对当前块进行所有预测模式编码,然后选取使率失真代价函数值最小的编码模式,作为当前块的最佳编码模式。
S102:求当前块与重构块的SAD值(绝对差值和);
S103:根据当前块的量化参数(记为qp),通过查找预设的SAD门限值数组,获取当前块对应的提前终止的门限值T[qp];
S104:比较所述SAD值与门限值T[qp],若满足SAD<T[qp],则确定当前块即为P_skip块,不再进一步进行模式判定;若否,则对当前块进行正常编码模式确定。所述预设的SAD门限值数组的确定方法如下:
首先定义一个门限数组T[qp]来存放52个(0到51)量化参数qp的门限值。
H.264里实际的离散余弦变换DCT输出为:
Wuv表示残差块矩阵X经过离散余弦变换DCT后,所得矩阵W的第u行第v列元素值;
Cui表示离散余弦变换DCT矩阵第u行第i列的元素值;
Xij表示残差块矩阵X第i行第j列的像素值,所谓残差块就是当前块与当前块预测值的差值;
Cjv T表示离散余弦变换DCT矩阵的转置矩阵的第j行第v列的元素值;
i表示残差块矩阵X的行号;j表示残差块矩阵X的列号;
u表示矩阵W的行号;v表示矩阵W的列号。
对(1)式中的Wuv取绝对值得到:
根据矩阵C的特性,最大元素为2,则元素之间最大的乘法为4,所以有
|CuiCjv|≤4, (3)
由不等式(2)可以转化为:
而|Xij|就是表示残差块第i行第j列的像素值的绝对值,(所谓残差块就是当前块与当前块预测值的差值),因此:
SAD4×4表示:4x4残差块中所有元素绝对值和;
于是(4)式转化为
|Wuv|≤4SAD4×4, (6)
根据量化后的系数公式(公知常识,H264变换量化的设计原理),可以得出P_skip块必须满足如下条件:
Zuv表示:Wuv量化后的值;
f表示:偏移量,帧内预测块f=2qbits/3,帧间预测块f=2qbits/6;
2qbits表示:2的qbits幂;
对帧间预测,取f=2qbits/6,从式(7)可以解出P_skip块的帧间SAD阈值(SADInter4×4的门限值),得到以下公式:
SADInter4×4表示4x4残差块中所有元素绝对值和,其中当前块采用帧间预测;
SADInter4×4和SAD4×4的关系为:SADInter4×4表示4x4残差块中所有元素绝对值和,其中当前块采用帧间预测;SAD4×4则是泛指,即当前块可以是帧内预测,也可以是帧间预测;
PF表示中间变量;等价于
Qstep表示量化步长;
对于帧间预测,有不同帧间块选择模式:4x4,4x8,8x4,8x8,16x8,8x16和16x16这七种模式,通用的是用M和N来代表像素块的长和宽。所以,对帧间SAD阈值(SADInterM×N的门限值),可以表述为下式:
公式(9)是通过将公式(8)中的实数转化为整数,然后将4x4类推到mxn,(此处不是严格推导,不等式缩放,只要方向准确即可)。
另外,根据频域特性(H.264里实际的离散余弦变换DCT特性),在大多数情况下有
W00表示残差块经过离散余弦变换DCT后,第1行第1列的元素值;
C0i表示离散余弦变换DCT矩阵第0行第i列的元素值;
Cj0 T表示离散余弦变换DCT矩阵的转置矩阵的第j行第0列的元素值;
Wuv≤W00只是在概率统计上大多数情况下成立,所以并不具备普适性,
公式(11)是根据H264离散余弦变换DCT矩阵元素的特性缩放而来,公式(8)中是缩放到最小,公式(11)是缩放到最大)
公式(12)是通过将公式(11)中的实数转化为整数,然后将4x4类推到mxn,(此处不是严格推导,不等式缩放,只要方向准确即可)。
公式(9)是通过严格的数学推导而得,由此式推导出的代价函数阈值是100%的P_skip块,但不是最优的最小值,实际值应该比它大,可以看作实际值的下限(THZ_MIN);通过式(12)的数学推导又不完全满足所有像素残差,但可以看作P_skip块的上限(THZ_MAX),则帧间SAD阈值(SADInterM×N的门限值)范围为:
而在本发明里只需要使用16x16宏块的阈值,所以在此M和N都为16,因此对于帧间16x16宏块SAD阈值(SADInter16×16的门限值)范围为:
跟据上述阈值范围,通过一系列实验最终确定SAD的门限值数组(即预设的SAD门限值数组T[qp])如下:
量化参数qp∈[0,51],以上52门限值分别对应0到51个量化参数qp,其中第一行对应0到7个量化参数,第二行对应8到15个量化参数,第三行对应16到23个量化参数,第四行对应24到31个量化参数,第五行对应32到39个量化参数,第六行对应40到47个量化参数,第七行对应48到51个量化参数。
效果比较实验
实验条件:码率为384KB,foreman.cif测试流。采用本发明实施例对P_skip模块进行提前终止判定,不仅极大的降低了计算复杂度,提高了编码效率,而且本发明实施例的计算误差也较小。因此若当前宏块的左边或上边或左上或右上相邻宏块中有一个为P_skip宏块,则计算当前宏块与重构宏块的SAD值,若该SAD小于当前宏块对应qp的门限值时,就可以认为当前宏块为P_skip块。本发明实施例方法可以省略原有算法里变换、量化、扫描与非零个数判断等运算。
本领域的普通技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序指令相关硬件来完成的,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质可以为ROM、RAM、磁盘、光盘等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种基于门限的P_skip块提前判决方法,其特征在于,所述方法包括以下步骤:
a:断当前块左边、上边、左上、右上相邻宏块是否有一个为P_skip块,若是则继续以下步骤;
b:求当前块与重构块的SAD值;
c:根据当前块的量化参数(qp),通过查找预设的SAD门限值数组,获取当前块对应的提前终止的门限值(T[qp]);
d:比较所述SAD值与门限值(T[qp]),若满足SAD值<门限值,则确定当前块即为P_skip块,不再进一步进行模式判定。
3.如权利要求1所述的基于门限的P_skip块提前终止判断方法,其特征在于:对于帧间预测,所述SAD值取值范围为:
其中,M和N分别表示当前块的长和宽;
PF表示中间变量, a=12,
Qstep表示量化步长。
4.如权利要求3所述的基于门限的P_skip块提前终止判断方法,其特征在于,当前块为16×16的宏块时,SAD值的取值范围为:
其中,PF表示中间变量, a=1/2,
Qstep表示量化步长。
5.如权利要求1所述的基于门限的P_skip块提前终止判断方法,其特征在于,所述预设的SAD门限值数组的确定方法如下:
首先定义一个门限数组T[qp]来存放52个(0到51)量化参数qp的门限值。
H.264里实际的离散余弦变换DCT输出为:
Wuv表示残差块矩阵X经过离散余弦变换DCT后,所得矩阵W的第u行第v列元素值;Cui表示离散余弦变换DCT矩阵第u行第i列的元素值;Xij表示残差块矩阵X第i行第j列的像素值,所谓残差块就是当前块与当前块预测值的差值;Cjv T表示离散余弦变换DCT矩阵的转置矩阵的第j行第v列的元素值;i表示残差块矩阵X的行号;j表示残差块矩阵X的列号;u表示矩阵W的行号;v表示矩阵W的列号。
对(1)式中的Wuv取绝对值得到:
根据矩阵C的特性,最大元素为2,则元素之间最大的乘法为4,所以有
|CuiCjv|≤4, (3)
由不等式(2)可以转化为:
而|Xij|表示残差块矩阵X第i行第j列的像素值的绝对值,因此:
SAD4×4表示:4x4残差块中所有元素绝对值和;
于是(4)式转化为
|Wuv|≤4SAD4×4, (6)
根据量化后的系数公式,可以得出P_skip块必须满足如下条件:
f表示偏移量,帧内预测块f=2qbits/3,帧间预测块f=2qbits/6;
2qbits表示:2的qbits幂;
对帧间预测,取f=2qbits/6,从式(7)可以解出P_skip块的帧间SAD阈值(SADInter4×4的门限值),得到以下公式:
SADInter4×4表示4x4残差块中所有元素绝对值和,其中当前块采用帧间预测;
PF表示中间变量, Qstep表示量化步长;
对于帧间预测,用M和N来代表像素块的长和宽,对帧间SAD阈值(SADInterM×N的门限值),可以表述为下式:
公式(9)是通过将公式(8)中的实数转化为整数,然后将4x4类推到mxn, a=12,
另外,根据频域特性,有如下公式:
W00表示残差块经过离散余弦变换DCT后,第1行第1列的元素值;
C0i表示离散余弦变换DCT矩阵第0行第i列的元素值;
Cj0 T表示离散余弦变换DCT矩阵的转置矩阵的第j行第0列的元素值;
公式(11)是根据H264离散余弦变换DCT矩阵元素的特性缩放而来,公式(8)中是缩放到最小,公式(11)是缩放到最大
公式(12)是通过将公式(11)中的实数转化为整数,然后将4x4类推到mxn,
将公式(9)作为P_skip块SAD值实际值的下限(THZ_MIN);将公式(12)作为P_skip块SAD值的上限(THZ_MAX),则帧间SAD阈值(SADInterM×N的门限值)范围为:
取M和N都为16,因此对于帧间16x16宏块SAD阈值(SADInter16×16的门限值)范围为:
根据上述阈值范围,取不同的量化参数,通过实验最终确定SAD的门限值数组如下:
量化参数qp∈[0,51],以上52门限值分别对应0到51个量化参数qp,其中第一行对应0到7个量化参数,第二行对应8到15个量化参数,第三行对应16到23个量化参数,第四行对应24到31个量化参数,第五行对应32到39个量化参数,第六行对应40到47个量化参数,第七行对应48到51个量化参数。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN2013101123822A CN103237224A (zh) | 2013-04-01 | 2013-04-01 | 一种基于门限的P_skip块提前判决方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN2013101123822A CN103237224A (zh) | 2013-04-01 | 2013-04-01 | 一种基于门限的P_skip块提前判决方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN103237224A true CN103237224A (zh) | 2013-08-07 |
Family
ID=48885236
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN2013101123822A Pending CN103237224A (zh) | 2013-04-01 | 2013-04-01 | 一种基于门限的P_skip块提前判决方法 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN103237224A (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109089116A (zh) * | 2018-09-26 | 2018-12-25 | 深圳市网心科技有限公司 | 一种Skip类型宏块的判定方法、装置、设备及介质 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20080025388A1 (en) * | 2006-07-28 | 2008-01-31 | Samsung Electronics Co.; Ltd | Video encoder and method for coding video data frames |
| CN101415122A (zh) * | 2007-10-15 | 2009-04-22 | 华为技术有限公司 | 一种帧间预测编解码方法及装置 |
| CN101742332A (zh) * | 2009-12-28 | 2010-06-16 | 深圳市融创天下科技发展有限公司 | 基于门限的P_skip块提前终止判断方法 |
| CN101795404A (zh) * | 2009-10-21 | 2010-08-04 | 深圳市融创天下科技发展有限公司 | 基于量化步长的零块阈值确定方法及零块预先判断方法 |
-
2013
- 2013-04-01 CN CN2013101123822A patent/CN103237224A/zh active Pending
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20080025388A1 (en) * | 2006-07-28 | 2008-01-31 | Samsung Electronics Co.; Ltd | Video encoder and method for coding video data frames |
| CN101415122A (zh) * | 2007-10-15 | 2009-04-22 | 华为技术有限公司 | 一种帧间预测编解码方法及装置 |
| CN101795404A (zh) * | 2009-10-21 | 2010-08-04 | 深圳市融创天下科技发展有限公司 | 基于量化步长的零块阈值确定方法及零块预先判断方法 |
| CN101742332A (zh) * | 2009-12-28 | 2010-06-16 | 深圳市融创天下科技发展有限公司 | 基于门限的P_skip块提前终止判断方法 |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109089116A (zh) * | 2018-09-26 | 2018-12-25 | 深圳市网心科技有限公司 | 一种Skip类型宏块的判定方法、装置、设备及介质 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US12260599B2 (en) | Apparatus and method for coding/decoding image selectively using discrete cosine/sine transform | |
| KR100952340B1 (ko) | 시공간적 복잡도를 이용한 부호화 모드 결정 방법 및 장치 | |
| US8144770B2 (en) | Apparatus and method for encoding moving picture | |
| CN103179395B (zh) | 用于上下文自适应可变长度译码(cavlc)的速率-失真量化 | |
| CN101313587B (zh) | 用于多媒体编码的模式选择技术 | |
| CN101375606B (zh) | 视频编码 | |
| KR100728031B1 (ko) | 가변 블록 크기 움직임 예측을 위한 부호화 모드 결정 방법및 장치 | |
| CN101964906B (zh) | 基于纹理特性的快速帧内预测方法和装置 | |
| KR100739714B1 (ko) | 인트라 예측 모드 결정 방법 및 장치 | |
| CN102752596B (zh) | 一种率失真优化方法 | |
| CN102986219A (zh) | 图像滤波方法和设备以及使用其的视频编码/解码方法和设备 | |
| CN114339218A (zh) | 图像编码方法、图像编码装置、电子设备和可读存储介质 | |
| CN111373749A (zh) | 视频编码和解码中的低复杂度双向帧内预测的方法和装置 | |
| Teng et al. | Fast mode decision algorithm for residual quadtree coding in HEVC | |
| CN101888546A (zh) | 一种运动估计的方法及装置 | |
| CN107566846A (zh) | 视频编码跳过模式决策方法、装置、设备及存储介质 | |
| CN102075751B (zh) | 一种基于宏块运动状态的h264快速模式选择方法 | |
| CN100591132C (zh) | 视频编码中快速的模式确定方法和装置 | |
| CN109151467A (zh) | 基于图像块活动性的屏幕内容编码帧间模式快速选择方法 | |
| CN112106372A (zh) | 用于混合帧内预测的方法和设备 | |
| CN108322743B (zh) | 一种基于模式依赖特性的不可分二次变换模式的帧内快速选择方法 | |
| CN101193288A (zh) | 一种像素级环路滤波方法和滤波器 | |
| CN103237224A (zh) | 一种基于门限的P_skip块提前判决方法 | |
| KR100771640B1 (ko) | 고속 모드 결정 기능을 구비한 h.264 인코더 | |
| CN101742332A (zh) | 基于门限的P_skip块提前终止判断方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| C53 | Correction of patent of invention or patent application | ||
| CB02 | Change of applicant information |
Address after: The central Shenzhen city of Guangdong Province, 518057 Keyuan Road, Nanshan District science and Technology Park No. 15 Science Park Sinovac A Building 1 unit 403, No. 405 unit Applicant after: Shenzhen Yunzhou Multimedia Technology Co., Ltd. Address before: Unit B4 9 building 518057 Guangdong city of Shenzhen province Nanshan District high in the four EVOC Technology Building No. 31 Applicant before: Shenzhen Yunzhou Multimedia Technology Co., Ltd. |
|
| WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20130807 |
|
| WD01 | Invention patent application deemed withdrawn after publication |