CN113382238A - 一种加快残差系数部分比特数计算速度的方法 - Google Patents
一种加快残差系数部分比特数计算速度的方法 Download PDFInfo
- Publication number
- CN113382238A CN113382238A CN202010117339.5A CN202010117339A CN113382238A CN 113382238 A CN113382238 A CN 113382238A CN 202010117339 A CN202010117339 A CN 202010117339A CN 113382238 A CN113382238 A CN 113382238A
- Authority
- CN
- China
- Prior art keywords
- sub
- coding
- coeff
- block
- residual
- 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 38
- 238000004364 calculation method Methods 0.000 title claims abstract description 8
- 230000008569 process Effects 0.000 claims abstract description 16
- 238000013139 quantization Methods 0.000 claims abstract description 11
- 230000009466 transformation Effects 0.000 claims abstract description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
- H04N19/122—Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明提供一种加快残差系数部分比特数计算速度的方法,所述方法是改变熵编码的串行顺序,令不同的N×N块的残差系数同时进行编码。所述方法进一步包括:S1,残差系数部分的熵编码,以TU为单位,每个TU被分割成NxN大小的子块sub‑block;S2,在变换量化过程中,当某一子块sub‑block的coeff值都得到后,编码该子块sub‑block中的coeff的值;S3,当一个TU的残差系数全部得到后,只需要进行最后一个非零coeff位置的编码和sub‑block是否有非零系数的编码。解决得到残差系数部分的BitCount消耗大量时间的问题。
Description
技术领域
本发明涉及电子电路领域,特别涉及一种加快残差系数部分比特数计算速度的方法。
背景技术
现有技术中,如图1所示,H265编码时,为了选择最优的模式,包括最优的CU SIZE,TU SIZE等,需要遍历各个模式,通过比较选择最优的模式。在模式选择时,常用的一种判决依据为COST。
COST=Distortion+BitCount*Lambda
其中Distortion是描述压缩后的图像与压缩前的图像的差异程度, Distortion越大说明这种模式的效果越不好。
BitCount是描述将编码需要的所有信息写到码流中需要的bit数,需要的bit数越多,则最终的码流就越大,相当于压缩比小。
Lambda是由quantisation parameter通过查表得到的一个值,例如: lambda_sse_tab[52]={
14,18,22,28,36,45,57,72,
91,115,145,182,230,290,365,460,
580,731,921,1161,1462,1843,2322,2925,
3686,4644,5851,7372,9289,11703,14745,18578,
23407,29491,37156,46814,58982,74313,93628,117964,
148626,187257,235929,297252,374514,471859,594505,749029,
943718,1189010,1498059,1887436};
总的来说,两者之和越大,则对应的模式越不好。
此外,本申请涉及的现有技术中的术语和解释包括:
H.265:HEVC(High Efficiency Video Coding,高效视频编码)H265,一种新的视频编码标准。
LCU:H.265中最大的编码单元。
CU:编码单元。LCU中可分为1个或若干个CU。
TU:变换单元。CU中可分为1个或若干个TU。
CU SIZE:CU的大小。包括64,32,16等。
SE:syntax element.语法元素。包括CU的分割信息,预测模式,残差系数等可以代表该CU特征的信息。
COEFF:残差系数。语法元素中的残差系数部分。
模式选择:H265编码过程实际上就是从H265格式支持的模式中选择出最好的模式的过程,这个选择最优模式的过程叫做模式选择。
模式选择依据:选择不同模式时,要有一个可以量化的数据,称为模式的COST。不同的模式有各自的COST,COST是由计算得到的。COST最小的模式即为最优模式。
BitCount:比特数。将语法元素进行熵编码后得到码流,码流的大小代表了压缩后的数据量。
量化参数,Quantizer Parameter,反映了空间细节压缩情况。值越小,量化越精细,图像质量越高,产生的码流也越长。如QP小,大部分的细节都会被保留;QP增大,一些细节丢失,码率降低,但图像失真加强和质量下降。
其中,coefficient编码:
HEVC以变换单元(TU)为基本单元进行变换量化,支持4×4到32×32 尺寸大小的变换单元,如图2所示,TU block的depth最大为2。不仅4 ×4块中系数按照斜角扫描方式扫描,每个4×4block块也是按照斜角扫描方式扫描,在残差系数扫描中,HEVC还采用了垂直扫描和水平扫描方式,MODE_INTER编码模式只采用斜角扫描方式,MODE_INTRA模式的扫描方式将通过预测方向信息来决定。第一个要编写的语法元素是扫描的最后一个非零残差系数坐标,包括x和y坐标,然后依次编码非零系数标志位,大于1系数标志位,大于2系数标志位,非零系数符号位,最后将大于2的残差系数绝对值去2后编码。当一个LCU中所有的CU数据信息编码完成之后要进行terminate标识位编码。
此外,系数的熵编码:
1、普通的语法参数,比如预测模式等可以直接使用CABAC(基于上下文的自适应二进制算术编码)进行处理;但是系数(即量化之后的数据)则需要进行一些预处理;
2、先把TB分成多个4x4的子块,然后扫描系数,扫描是基于4x4 的子块进行的(子块内部的扫描方式和子块的扫描方式一样);
3、扫描是从最后一个系数开始的,即倒着扫描;
4、一个4x4块的16个系数被称为一个系数组(CG);
5、一个TB的系数经过扫描之后就可以变成一维的数组了,需要对这一组系数进行编码;
6、编码最后一个非零系数的位置,然后编码其他非0系数的位置(有若干比较关键的语法参数);
7、对非零系数的幅值进行编码。
现有技术中,如图3所示,语法元素编码时,残差系数以外的部分,在变换量化开始前就可以进行熵编码从而得到BitCount,BitCount中的残差系数的部分,需要等到变化量化完成后,才能开始。由于熵编码的串行性,编码时有数据依赖,所以得到残差系数部分的BitCount会消耗大量时间。通常硬件时会希望能很快得到比特数,然后进行LCU分割判决。如果在此处消耗大量时间,会影响硬件效率,最终导致编码效率降低。
发明内容
为了解决上述问题,本发明的目的在于:本发明技术方案以牺牲少量BitCount的精度为代价,解决得到残差系数部分的BitCount消耗大量时间的问题。
具体地,本发明提供一种加快残差系数部分比特数计算速度的方法,所述方法是改变熵编码的串行顺序,令不同的N×N块的残差系数同时进行编码。
所述方法进一步包括:
S1,残差系数部分的熵编码,以TU为单位,每个TU被分割成NxN大小的子块sub-block;
S2,在变换量化过程中,当某一子块sub-block的coeff值都得到后,编码该子块sub-block中的coeff的值;
S3,当一个TU的残差系数全部得到后,只需要进行最后一个非零coeff 位置的编码和sub-block是否有非零系数的编码。
由此,本申请的优势在于:适用于H.265模式选择时,通过本发明的方法计算编码残差系数部分所占用的比特数,可以大大加速残差系数部分的BitCount的计算速度,节省时间,从而提高编码效率。而且,由此产生的残差部分的比特数的平均误差较小,对编码过程的影响较小。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。
图1是现有技术中H265编码流程的示意流程图。
图2是现有技术中TU block的划分的示意图。
图3是现有技术中的熵编码的时间示意图。
图4是采用本发明方法对现有技术改进后的时间示意图。
图5是本发明方法的流程示意图。
具体实施方式
为了能够更清楚地理解本发明的技术内容及优点,现结合附图对本发明进行进一步的详细说明。
如图5所示,本发明涉及一种加快残差系数部分比特数计算速度的方法,所述方法是改变熵编码的串行顺序,令不同的N×N块的残差系数同时进行编码。
所述方法进一步包括:
S1,残差系数部分的熵编码,以TU为单位,每个TU被分割成NxN大小的子块sub-block;
S2,在变换量化过程中,当某一子块sub-block的coeff值都得到后,编码该子块sub-block中的coeff的值;
S3,当一个TU的残差系数全部得到后,只需要进行最后一个非零coeff 位置的编码和sub-block是否有非零系数的编码。
所述的NxN为4x4,16×16,32×32,64×64。
所述的所述的NxN优选是4x4。
所述的最后一个非零coeff的位置,包括x和y两个方向的坐标。
所述的步骤S3进一步包括:
S3.1,当某一TU中的所有子块sub-block的coeff的值都得到后,再编码当前TU的最后一个非零coeff的位置;
S3.2,按照一定的扫描顺序,编码各个子块sub-block中是否有非零 coeff。
所述的一定的扫描顺序包括斜角扫描、垂直扫描、水平扫描。
具体地,现有技术中,残差系数部分熵编码过程,大致包括如下:残差系数的熵编码以TU为单位。每个TU被分割成4x4大小的sub-block。
1.编码当前TU的最后一个非零coeff的位置,包括x和y两个方向的坐标;
2.按照一定的扫描顺序,编码sub-block中是否有非零coeff;
3.编码每个sub-block中的coeff的值;
此过程的理解可参考H265官方文档《T-REC-H.265-201304-I I I PDF-E》中的7.3.8.11:残差系数编码过程的伪代码;7.4.9.11:残差系数编码相关语法元素的解释;6.5.3、6.5.4、6.5.5:TU中sub-block的scan 顺序,sub-block中coeff的scan顺序,由于是现有技术,在此不再累述。
如图4所示,本申请技术方案对上述过程进行了改动:
在变换量化过程中,当某个sub-block的coeff的值都得到后,就可以进行这个sub-block中的coeff值的编码;
当TU中的所有sub-block块的coeff值都得到后,再编码最后一个coeff 的位置,和各个sub-block块是否有非零coeff。
由于熵编码的串行依赖特性,改变编码顺序必然导致编码结果的改变,会导致BitCount有一定的误差。
按照调整后的顺序进行编码的好处也很明显:sub-block之间的编码不在有依赖关系,可以并行进行,从而提高了编码速度。同时,不需要等待一个TU的所有sub-block都得到就可以进行残差系数的编码,也提高了编码速度。
当一个TU的残差系数全部得到后,只需要进行最后一个非零coeff位置的编码和sub-block是否有非零系数的编码,整体上得到残差系数的 BitCount的速度会大大提升。
并且通过选择合适的熵编码时的上下文,可以使BitCount的误差较小,在本申请方案的实际试验中,残差部分的BitCount的平均误差在10%以内,最大误差在30%左右。并且用调整后的BitCount进行判决,判决的最终结果与原始判决结果一致的概率在95%以上。说明本方案对编码过程的影响很小。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种加快残差系数部分比特数计算速度的方法,其特征在于,所述方法是改变熵编码的串行顺序,令不同的N×N块的残差系数同时进行编码。
2.根据权利要求1所述的一种加快残差系数部分比特数计算速度的方法,其特征在于,所述方法进一步包括:
S1,残差系数部分的熵编码,以TU为单位,每个TU被分割成NxN大小的子块sub-block;
S2,在变换量化过程中,当某一子块sub-block的coeff值都得到后,编码该子块sub-block中的coeff的值;
S3,当一个TU的残差系数全部得到后,只需要进行最后一个非零coeff位置的编码和sub-block是否有非零系数的编码。
3.根据权利要求2所述的一种加快残差系数部分比特数计算速度的方法,其特征在于,所述的NxN为4x4,16×16,32×32,64×64。
4.根据权利要求3所述的一种加快残差系数部分比特数计算速度的方法,其特征在于,所述的所述的NxN优选是4x4。
5.根据权利要求2所述的一种加快残差系数部分比特数计算速度的方法,其特征在于,所述的最后一个非零coeff的位置,包括x和y两个方向的坐标。
6.根据权利要求2所述的一种加快残差系数部分比特数计算速度的方法,其特征在于,所述的步骤S3进一步包括:
S3.1,当某一TU中的所有子块sub-block的coeff的值都得到后,再编码当前TU的最后一个非零coeff的位置;
S3.2,按照一定的扫描顺序,编码各个子块sub-block中是否有非零coeff。
7.根据权利要求6所述的一种加快残差系数部分比特数计算速度的方法,其特征在于,所述的一定的扫描顺序包括斜角扫描、垂直扫描、水平扫描。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010117339.5A CN113382238A (zh) | 2020-02-25 | 2020-02-25 | 一种加快残差系数部分比特数计算速度的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010117339.5A CN113382238A (zh) | 2020-02-25 | 2020-02-25 | 一种加快残差系数部分比特数计算速度的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113382238A true CN113382238A (zh) | 2021-09-10 |
Family
ID=77569241
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010117339.5A Pending CN113382238A (zh) | 2020-02-25 | 2020-02-25 | 一种加快残差系数部分比特数计算速度的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113382238A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101355700A (zh) * | 2008-09-09 | 2009-01-28 | 北京大学软件与微电子学院 | 一种并行类熵编码方法及其装置 |
CN101785318A (zh) * | 2008-06-27 | 2010-07-21 | 索尼公司 | 图像处理装置和图像处理方法 |
US20130343667A1 (en) * | 2012-06-21 | 2013-12-26 | Canon Kabushiki Kaisha | Image coding apparatus and image coding method |
CN104067619A (zh) * | 2012-01-20 | 2014-09-24 | 富士通株式会社 | 视频解码器、视频编码器、视频解码方法以及视频编码方法 |
CN105934950A (zh) * | 2014-07-08 | 2016-09-07 | 联发科技股份有限公司 | 执行具有限制的编码模式以及/或者量化参数选择的波前并行编码程序的方法以及装置 |
WO2018207956A1 (ko) * | 2017-05-10 | 2018-11-15 | 엘지전자(주) | 비디오 신호를 엔트로피 인코딩, 디코딩하는 방법 및 장치 |
US20190327473A1 (en) * | 2018-04-20 | 2019-10-24 | Yuanzhi Zhang | Parallel table-based bit rate estimator |
-
2020
- 2020-02-25 CN CN202010117339.5A patent/CN113382238A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101785318A (zh) * | 2008-06-27 | 2010-07-21 | 索尼公司 | 图像处理装置和图像处理方法 |
CN101355700A (zh) * | 2008-09-09 | 2009-01-28 | 北京大学软件与微电子学院 | 一种并行类熵编码方法及其装置 |
CN104067619A (zh) * | 2012-01-20 | 2014-09-24 | 富士通株式会社 | 视频解码器、视频编码器、视频解码方法以及视频编码方法 |
US20130343667A1 (en) * | 2012-06-21 | 2013-12-26 | Canon Kabushiki Kaisha | Image coding apparatus and image coding method |
CN103517071A (zh) * | 2012-06-21 | 2014-01-15 | 佳能株式会社 | 图像编码设备和图像编码方法 |
CN105934950A (zh) * | 2014-07-08 | 2016-09-07 | 联发科技股份有限公司 | 执行具有限制的编码模式以及/或者量化参数选择的波前并行编码程序的方法以及装置 |
WO2018207956A1 (ko) * | 2017-05-10 | 2018-11-15 | 엘지전자(주) | 비디오 신호를 엔트로피 인코딩, 디코딩하는 방법 및 장치 |
US20190327473A1 (en) * | 2018-04-20 | 2019-10-24 | Yuanzhi Zhang | Parallel table-based bit rate estimator |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11290719B2 (en) | Method for generating intra prediction block with most probable mode | |
CN113382254B (zh) | 一种编解码方法、装置、设备及存储介质 | |
KR101622450B1 (ko) | 변환을 이용하는 비디오 인코딩 및 디코딩 | |
US9888264B2 (en) | Method and device for arithmetic coding of video, and method and device for arithmetic decoding of video | |
US8401321B2 (en) | Method and apparatus for context adaptive binary arithmetic coding and decoding | |
US8867614B2 (en) | Image coding method and image decoding method | |
US7483584B2 (en) | Extended hybrid variable length coding of transform coefficients for video compression | |
EP3523965B1 (en) | Method and device for context-adaptive binary arithmetic coding a sequence of binary symbols representing a syntax element related to picture data | |
US20070126853A1 (en) | Variable length codes for scalable video coding | |
US20070053425A1 (en) | Variable length codes for scalable video coding | |
WO2006008605A1 (en) | Method and system for entropy encoding and decoding of a scalable video bit stream | |
US20060039621A1 (en) | Two-dimensional variable length coding of runs of zero and non-zero transform coefficients for image compression | |
AU7462598A (en) | Lossless image compression with tree coding | |
CN113382238A (zh) | 一种加快残差系数部分比特数计算速度的方法 | |
CN113382239A (zh) | 一种适用于h265的快速残差码率代价计算方法 | |
GB2559912A (en) | Video encoding and decoding using transforms |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210910 |