CN102420983B - 一种针对高效视频编码hevc熵编码的上下文简化方法 - Google Patents
一种针对高效视频编码hevc熵编码的上下文简化方法 Download PDFInfo
- Publication number
- CN102420983B CN102420983B CN 201110369707 CN201110369707A CN102420983B CN 102420983 B CN102420983 B CN 102420983B CN 201110369707 CN201110369707 CN 201110369707 CN 201110369707 A CN201110369707 A CN 201110369707A CN 102420983 B CN102420983 B CN 102420983B
- Authority
- CN
- China
- Prior art keywords
- context
- model
- coding
- probability
- context model
- 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.)
- Active
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
公开了一种在维持编码效率总体不变的条件下,减少应用的上下文模型个数,删除冗余模型,节省***资源的针对HEVC熵编码的上下文简化方法,HEVC的CABAC上下文模型储存于三维上下文模型容器中,容器维度分别为x、y、z,调用时使用3个参数a、b、c(a≤x,b≤y,c≤z),则调用到的上下文模型在容器中的线性位置为a*y*z+b*z+c,在对于变换后的NxN图像块参数进行熵编码时,N为正整数,应用于一个指定上下文模型的待编码元素取值只能是0或1,而编码的效率取决于0和1出现的概率,其特征在于:对于两个不同的上下文模型,如果它们的对应的编码元素概率相等,那么将这两个上下文模型合并。
Description
技术领域
本发明属于视频编码的技术领域,具体地涉及一种针对高效视频编码HEVC(High efficiency video coding)熵编码的上下文简化方法。
背景技术
基于上下文的自适应算数编码(Context-based Adaptive BinaryArithmetic Coding,简称CABAC)是广泛应用于视频编码领域的熵编码方法,相比于另一广泛应用的CAVLC(Context adaptive variable lengthcoding,易于上下文的自适应变长编码)熵编码方法而言,编码效率更高,但是消耗更大。在新一代视频编码标准HEVC的编订中,CABAC被用作高效模块(High Efficiency Module)的熵编码方法。
现阶段的HEVC测试程序包(最新版本是HM4.0)中,研究人员设定了大量相互独立的上下文模型来进行CABAC编码。HEVC的CABAC上下文模型储存于三维上下文模型容器中,容器维度分别为x、y、z。调用时使用3个参数,如a、b、c(a≤x,b≤y,c≤z),则调用到的上下文模型在容器中的线性位置为a*y*z+b*z+c。在对于变换后的NxN(N为正整数)图像块参数进行熵编码时,需要应用CABAC方法对用来标记参数值的coeff_abs_level_greater1_flag(用来标记变换后的图像块里面参数值大于1的位置,需要占用60个相互独立的上下文模型,其中30个用来进行亮度的编码,另外30个用来进行色度的编码,两者相互独立并通过b的取值来选择,c取值为[0,29])和coeff_abs_level_greater2_flag(用来标记变换后的图像块里面参数值大于2的位置,需要占用60个相互独立的上下文模型,其中30个用来进行亮度的编码,另外30个用来进行色度的编码,两者相互独立并通过b的取值来选择,a=0,c取值为[0,29])进行编码,两者共需要占用120个相互独立的上下文模型。
发明内容
本发明的技术解决问题是:克服现有技术的不足,提供一种在维持编码效率总体不变的条件下,减少应用的上下文模型个数,删除冗余模型,节省***资源的针对HEVC熵编码的上下文简化方法。
本发明的技术解决方案是:这种针对HEVC熵编码的上下文简化方法,HEVC的CABAC上下文模型储存于三维上下文模型容器中,容器维度分别为x、y、z,调用时使用3个参数a、b、c(a≤x,b≤y,c≤z),则调用到的上下文模型在容器中的线性位置为a*y*z+b*z+c,在对于变换后的NxN图像块参数进行熵编码时,N为正整数,应用于一个指定上下文模型的待编码元素取值只能是0或1,而编码的效率取决于0和1出现的概率,其特征在于:对于两个不同的上下文模型,如果它们的对应的编码元素概率相等,那么将这两个上下文模型合并。
由于将这两个编码元素概率相等的上下文模型合并,并不影响总体的编码效率,而通过上下文合并,减少应用的上下文模型个数,删除冗余模型,就可以节约编码时占用的***资源。
附图说明
图1示出了在coeff_abs_level_greater1_flag帧内亮度编码模式下,30个不同上下文模型对应概率的概率柱状图;
图2示出了在coeff_abs_level_greater1_flag帧内亮度编码模式下,根据本发明对30个不同上下文模型对应概率进行步长为5%的量化后得到的概率柱状图;
图3示出了根据本发明的coeff_abs_level_greater1_flag的帧内亮度部分的具体合并方案表;
图4示出了根据本发明的coeff_abs_level_greater1_flag的帧内色度部分的具体合并方案表;
图5示出了根据本发明的coeff_abs_level_greater1_flag的帧间亮度部分的具体合并方案表;
图6示出了根据本发明的coeff_abs_level_greater1_flag的帧间色度部分的具体合并方案表;
图7示出了根据本发明的coeff_abs_level_greater2_flag的帧内亮度部分的具体合并方案表;
图8示出了根据本发明的coeff_abs_level_greater2_flag的帧内色度部分的具体合并方案表;
图9示出了根据本发明的coeff_abs_level_greater2_flag的帧间亮度部分的具体合并方案表;
图10示出了根据本发明的coeff_abs_level_greater2_flag的帧间色度部分的具体合并方案表;
图11是对上下文模型简化前后的对比明细表;
图12是基于HM4.0的实验结果。
具体实施方式
该针对HEVC参数编码的上下文简化方法,HEVC的CABAC上下文模型储存于三维上下文模型容器中,容器维度分别为x、y、z,调用时使用3个参数a、b、c(a≤x,b≤y,c≤z),则调用到的上下文模型在容器中的线性位置为a*y*z+b*z+c,在对于变换后的NxN图像块参数进行熵编码时,N为正整数,应用于一个指定上下文模型的待编码元素取值只能是0或1,而编码的效率取决于0和1出现的概率,其特征在于:对于两个不同的上下文模型,如果它们的对应的编码元素概率相等,那么将这两个上下文模型合并。
优选地,当对用来标记变换后的图像块里面参数值大于1的位置的coeff_abs_level_greater1_flag元素的上下文模型进行合并时,其中b表示对亮度或色度进行编码,c取值为[0,29],将所有概率在量化之后相同的上下文模型合并,合并后的模型采用同概率一组模型中位置最靠前的一个模型的初值,然后对合并后的模型重排序。
优选地,当对用来标记变换后的图像块里面参数值大于2的位置的coeff_abs_level_greater2_flag元素的上下文模型进行合并时,其中a=0,b表示对亮度或色度进行编码,c取值为[0,29],将所有概率在量化之后相同的上下文模型合并,合并后的模型采用同概率一组模型中位置最靠前的一个模型的初值,然后对合并后的模型重排序。
下面对本发明的技术方案做进一步的详细描述。本发明提供的上下文简化方法,具体分为以下部分:
1.关于coeff_abs_level_greater1_flag
原始的HM4.0当中应用于coeff_abs_level_greater1flag编码的上下文模型总共有60个,其中30个用来进行亮度(Luma)的编码工作,另外30个用来进行色度(Chroma)的编码,两者相互独立,通过上下文模型调用参数组(a,b,c)中b的取值来进行选择,而c的有效取值为[0,29]共30个。
由于编码中会遇到帧内编码帧(I帧)和帧间编码帧(B帧或P帧),需要载入不同的上下文初值,加之亮度与色度在编码时应用上下文的独立性,需要对于帧内亮度、帧内色度、帧间亮度、帧间色度四种不同的编码环境进行数据统计。以帧内亮度的统计为例,样本为HEVC官方测试序列,共5组20个,如图1所示(图中横坐标为上下文模型的序列号,也就是(a,b,c)中c的取值;图中纵坐标为该特定上下文模型对应待编码元素在整个编码过程中出现“1”的百分比概率)。对这个统计结果进行量化步长为5%的均匀量化,可以得到如图2所示的结果(坐标意义同图1)。
上下文简化的基本方法就是将概率近似的上下文模型予以合并,在图2所示的量化结果就是合并方案的基础。应用于coeff_abs_level_greater1_flag编码的上下文模型还有两条特点:一是30个上下文模型在具体编码是分为6个组,每组5个上下文模型,对于一个确定的图像块,仅应用一个特定的上下文组进行编码;二是各个组出现的次数差距很大,涵盖编号靠后上下文模型的组,其应用次数明显少于前面的组。
综合上下文合并的基本原则和coeff_abs_level_greater1_flag的具体特点,本发明中提出如下表所示的上下文简化方案,将所有概率在量化之后相同的上下文模型合并,合并后的模型采用同概率一组模型中位置最靠前的一个模型的初值,然后对合并后的模型重排序。帧内亮度部分的具体合并方案如图3。
同样的,可以获得帧内色度、帧间亮度、帧间色度的合并方案,分别如图4、5、6所示。
当删除闲置的上下文模型后,关于coeff_abs_level_greater1_flag所应用的上下文总数由60个减少为24个。
2.关于coeff_abs_level_greater2_flag
HM4.0中关于coeff_abs_level_greater2_flag的上下文模型组织结构与coeff_abs_level_greater1_flag十分类似,其调用参数组(a,b,c)中a的取值只有a=0一种,而c的取值为[0,29]共30个,根据其特点,合并具体方案针对帧内亮度、帧内色度、帧间亮度、帧间色度的合并具体方案分别如图7、8、9、10所示。
当删除闲置的上下文模型后,关于coeff_abs_level_greater2_flag所应用的上下文个数由60个减少为24个。
关于coeff_abs_level_greater1_flag,根据帧内亮度、帧内色度、帧间亮度、帧间色度四种情况下的合并方案,在HM4.0中添加一张4*30的映射表,用于将原调用参数映射到现调用参数上,在将上下文模型进行删减和重排序即可,coeff_abs_level_greater2_flag的处理方式与此相同。基于HM4.0,可以得到如图12的实验结果。
综上所述,本发明针对变换后的NxN图像块的熵编码进行了一系列上下文简化,总共减少上下文模型个数72个,占总比例的60%,具体明细如图11所示。
图3-图6的映射表只是较优的一种实现。改变这些映射表的大小和映射关系也可以得到类似的结果。
我们对于coeff_abs_level_greater1_flag和coeff_abs_level_greater2_flag的编码上下文采用了上述方法进行简化。同样对于所有HEVC中用到的编码符号,我们均可以采用上述方案进行上下文简化。可以简化的编码符号例如下表:
split_coding_unit_flag |
end_of_slice_fag |
skip_flag |
pred_type |
merge_idx |
pcm_flag |
prev_intra_luma_pred_flag |
mpm_idx |
rem_intra_luma_pred_mode |
intra_chroma_pred_mode |
merge_flag |
merge_idx |
combined_interpred_ref_idx |
ref_idx_lc |
mvp_idx_lc |
ref_idx_l0_minusX |
ref_idx_l1 |
mvp_idx_l1 |
abs_mvd_greater0_flag |
abs_mvd_greater1_flag |
abs_mvd_minus2 |
mvd_sign_flag |
no_residual_data_flag |
split_transform_flag |
cbf_cb |
cbf_cr |
cbf_luma |
cu_qp_delta |
last_significant_coeff_x |
last_significant_coeff_y |
significant_coeff_flag |
coeff_sign_flag |
coeff_abs_level_minus3 |
以上所述,仅是本发明的较佳实施例,并非对本发明作任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属本发明技术方案的保护范围。
Claims (1)
1.一种针对高效视频编码HEVC熵编码的上下文简化方法,HEVC的基于上下文的自适应算数编码CABAC上下文模型储存于三维上下文模型容器中,容器维度分别为x、y、z,调用时使用3个参数a、b、c(a≤x,b≤y,c≤z),则调用到的上下文模型在容器中的线性位置为a*y*z+b*z+c,在对于变换后的NxN图像块参数进行熵编码时,N为正整数,应用于一个指定上下文模型的待编码元素取值只能是0或1,而编码的效率取决于0和1出现的概率,其特征在于:对于两个不同的上下文模型,如果它们的对应的编码元素概率相等,那么将这两个上下文模型合并;
当对用来标记变换后的图像块里面参数值大于1且小于等于2的位置的coeff_abs_level_greater1_flag元素的上下文模型进行合并时,其中b表示对亮度或色度进行编码,c取值为[0,29],将所有概率在量化之后相同的上下文模型合并,合并后的模型采用同概率一组模型中位置最靠前的一个模型的初值,然后对合并后的模型重排序;
当对用来标记变换后的图像块里面参数值大于2的位置的
coeff_abs_level_greater2_flag元素的上下文模型进行合并时,其中a=0,b表示对亮度或色度进行编码,c取值为[0,29],将所有概率在量化之后相同的上下文模型合并,合并后的模型采用同概率一组模型中位置最靠前的一个模型的初值,然后对合并后的模型重排序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110369707 CN102420983B (zh) | 2011-11-18 | 2011-11-18 | 一种针对高效视频编码hevc熵编码的上下文简化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110369707 CN102420983B (zh) | 2011-11-18 | 2011-11-18 | 一种针对高效视频编码hevc熵编码的上下文简化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102420983A CN102420983A (zh) | 2012-04-18 |
CN102420983B true CN102420983B (zh) | 2013-10-23 |
Family
ID=45945193
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110369707 Active CN102420983B (zh) | 2011-11-18 | 2011-11-18 | 一种针对高效视频编码hevc熵编码的上下文简化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102420983B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103379328B (zh) * | 2012-04-24 | 2017-11-03 | 邳州高新区生物医药研究院有限公司 | 运动信息处理方法及装置 |
CN102740078B (zh) * | 2012-07-12 | 2014-10-22 | 北方工业大学 | 基于hevc标准的自适应空间可伸缩编码 |
CN103051895B (zh) * | 2012-12-07 | 2016-04-13 | 浙江大学 | 一种上下文模型选择的方法和装置 |
CN110299963A (zh) * | 2019-06-05 | 2019-10-01 | 西安万像电子科技有限公司 | 数据处理方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8885714B2 (en) * | 2010-01-14 | 2014-11-11 | Texas Instruments Incorporated | Method and system for intracoding in video encoding |
US8615043B2 (en) * | 2010-03-04 | 2013-12-24 | Texas Instruments Incorporated | Fixed length coding based image data compression |
US8942282B2 (en) * | 2010-04-12 | 2015-01-27 | Qualcomm Incorporated | Variable length coding of coded block pattern (CBP) in video compression |
US9094658B2 (en) * | 2010-05-10 | 2015-07-28 | Mediatek Inc. | Method and apparatus of adaptive loop filtering |
CN101938657B (zh) * | 2010-10-07 | 2012-07-04 | 西安电子科技大学 | 高效视频编码中编码单元自适应划分方法 |
-
2011
- 2011-11-18 CN CN 201110369707 patent/CN102420983B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN102420983A (zh) | 2012-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102256125B (zh) | 面向高效视频编码hevc基于上下文的自适应算数编码方法 | |
RU2686559C2 (ru) | Инициализатор предсказателя палитры при кодировании или декодировании самостоятельных кодируемых структур | |
CN103636203B (zh) | 内部预测模式编码的方法及装置 | |
CN101164340B (zh) | Cabac解码***及方法 | |
US8446301B2 (en) | Methods and devices for coding and decoding the position of the last significant coefficient | |
US10791339B2 (en) | Coding of last significant coefficient flags | |
CN110073661A (zh) | 用于视频译码的多种类型树架构 | |
CN104469365B (zh) | 一种视频编码装置和方法 | |
CN1980395A (zh) | 一种基于上下文的熵编码方法及解码方法 | |
CN102420983B (zh) | 一种针对高效视频编码hevc熵编码的上下文简化方法 | |
US20220222861A1 (en) | Method, device, and storage medium for data encoding/decoding | |
CA2832086A1 (en) | Methods and devices for coding and decoding the position of the last significant coefficient | |
Peng et al. | A hardware CABAC encoder for HEVC | |
CN1589023A (zh) | 一种基于上下文的多码表变长编解码方法及编解码装置 | |
CN103167289B (zh) | 图像的编码、解码方法及编码、解码装置 | |
CN102186075B (zh) | 一种熵编码器及其实现方法 | |
US8041131B2 (en) | Variable length coding of coefficient clusters for image and video compression | |
CN105120276B (zh) | 自适应Motion JPEG编码方法和*** | |
CN102447908B (zh) | 一种面向hevc参数编码的上下文简化方法 | |
CN112422986B (zh) | 硬件解码器流水线优化方法及应用 | |
CN102256126A (zh) | 混合图像的编码方法 | |
CN103686176B (zh) | 一种用于视频编码的码率估计方法 | |
CN106791861B (zh) | 一种基于CUDA架构的DNxHD VLC编码方法 | |
CN113453002B (zh) | 量化与熵编码方法及装置 | |
CN105007483B (zh) | 一种与h264标准兼容的屏幕内容编码解码方法 |
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 |