一种针对高效视频编码hevc熵编码的上下文简化方法

文档序号:7978864阅读:381来源:国知局
专利名称:一种针对高效视频编码hevc熵编码的上下文简化方法
技术领域
本发明属于视频编码的技术领域,具体地涉及一种针对高效视频编码HEVC(High efficiency video coding)熵编码的上下文简化方法。
背景技术
基于上下文的自适应算数编码(Context-based Adaptive Binary Arithmetic Coding,简称CABAC)是广泛应用于视频编码领域的熵编码方法,相比于另一广泛应用的 CAVLC(Context adaptive variable length coding,易于上下文的自适应变长编码)熵编码方法而言,编码效率更高,但是消耗更大。在新一代视频编码标准HEVC的编订中,CABAC 被用作高效模块(High Efficiency Module)的熵编码方法。现阶段的HEVC测试程序包(最新版本是HM4. 0)中,研究人员设定了大量相互独立的上下文模型来进行CABAC编码。HEVC的CABAC上下文模型储存于三维上下文模型容器中,容器维度分别为x、y、z。调用时使用3个参数,如a、b、c(a彡x,b彡y,c彡ζ),则调用到的上下文模型在容器中的线性位置为a*0Z+MZ+C。在对于变换后的NxN(N为正整数) 图像块参数进行熵编码时,需要应用CABAC方法对用来标记参数值的COeff_abS_level_ greaterl_flag(用来标记变换后的图像块里面参数值大于1的位置,需要占用60个相互独立的上下文模型,其中30个用来进行亮度的编码,另外30个用来进行色度的编码,两者相互独立并通过b的取值来选择,c取值为W,29])和coeff_abs_level_greater2_flag (用来标记变换后的图像块里面参数值大于2的位置,需要占用60个相互独立的上下文模型, 其中30个用来进行亮度的编码,另外30个用来进行色度的编码,两者相互独立并通过b的取值来选择,a = 0,c取值为W,29])进行编码,两者共需要占用120个相互独立的上下文模型。

发明内容
本发明的技术解决问题是克服现有技术的不足,提供一种在维持编码效率总体不变的条件下,减少应用的上下文模型个数,删除冗余模型,节省系统资源的针对HEVC熵编码的上下文简化方法。本发明的技术解决方案是这种针对HEVC熵编码的上下文简化方法,HEVC的 CABAC上下文模型储存于三维上下文模型容器中,容器维度分别为χ、y、z,调用时使用 3个参数a、b、c(a彡X,b彡y,c彡ζ),则调用到的上下文模型在容器中的线性位置为 a*0Z+Mz+c,在对于变换后的NxN图像块参数进行熵编码时,N为正整数,应用于一个指定上下文模型的待编码元素取值只能是0或1,而编码的效率取决于0和1出现的概率,其特征在于对于两个不同的上下文模型,如果它们的对应的编码元素概率相等,那么将这两个上下文模型合并。由于将这两个编码元素概率相等的上下文模型合并,并不影响总体的编码效率, 而通过上下文合并,减少应用的上下文模型个数,删除冗余模型,就可以节约编码时占用的系统资源。


图1示出了在coeff_abs_level_greaterl_flag帧内亮度编码模式下,30个不同上下文模型对应概率的概率柱状图;图2示出了在COeff_abS_level_greaterl_flag帧内亮度编码模式下,根据本发明对30个不同上下文模型对应概率进行步长为5%的量化后得到的概率柱状图;图3示出了根据本发明的coeff_abs_level_greaterl_flag的帧内亮度部分的具体合并方案表;图4示出了根据本发明的coeff_abs_level_greaterl_flag的帧内色度部分的具体合并方案表;图5示出了根据本发明的COeff_abS_level_greaterl_flag的帧间亮度部分的具体合并方案表;图6示出了根据本发明的coeff_abs_level_greaterl_flag的帧间色度部分的具体合并方案表;图7示出了根据本发明的coeff_abs_level_greater2_flag的帧内亮度部分的具体合并方案表;图8示出了根据本发明的coeff_abs_level_greater2_flag的帧内色度部分的具体合并方案表;图9示出了根据本发明的c0eff_abS_level_greater2_flag的帧间亮度部分的具体合并方案表;图10示出了根据本发明的coeff_abs_level_greater2_flag的帧间色度部分的具体合并方案表;图11是对上下文模型简化前后的对比明细表;图12是基于HM4. 0的实验结果。
具体实施例方式该针对HEVC参数编码的上下文简化方法,HEVC的CABAC上下文模型储存于三维上下文模型容器中,容器维度分别为X、1、Z,调用时使用3个参数a、b、c(a < X,b彡y, c ( ζ),则调用到的上下文模型在容器中的线性位置为a*0Z+MZ+C,在对于变换后的NxN 图像块参数进行熵编码时,N为正整数,应用于一个指定上下文模型的待编码元素取值只能是0或1,而编码的效率取决于0和1出现的概率,其特征在于对于两个不同的上下文模型,如果它们的对应的编码元素概率相等,那么将这两个上下文模型合并。优选地,当对用来标记变换后的图像块里面参数值大于1的位置的COeff_abS_ level_greaterl_flag元素的上下文模型进行合并时,其中b表示对亮度或色度进行编码, c取值为
,将所有概率在量化之后相同的上下文模型合并,合并后的模型采用同概率一组模型中位置最靠前的一个模型的初值,然后对合并后的模型重排序。优选地,当对用来标记变换后的图像块里面参数值大于2的位置的COeff_abS_ level_greater2_flag元素的上下文模型进行合并时,其中a = 0,b表示对亮度或色度进行编码,c取值为
,将所有概率在量化之后相同的上下文模型合并,合并后的模型采用同概率一组模型中位置最靠前的一个模型的初值,然后对合并后的模型重排序。下面对本发明的技术方案做进一步的详细描述。本发明提供的上下文简化方法, 具体分为以下部分1.关于 coeff_abs_level_greaterl_f lag原始的HM4. 0当中应用于coeff_abs_level_greaterlflag编码的上下文模型总共有60个,其中30个用来进行亮度(Luma)的编码工作,另外30个用来进行色度(Chroma) 的编码,两者相互独立,通过上下文模型调用参数组(a,b,c)中b的取值来进行选择,而c 的有效取值为W,29]共30个。由于编码中会遇到帧内编码帧(I帧)和帧间编码帧(B帧或P帧),需要载入不同的上下文初值,加之亮度与色度在编码时应用上下文的独立性,需要对于帧内亮度、帧内色度、帧间亮度、帧间色度四种不同的编码环境进行数据统计。以帧内亮度的统计为例,样本为HEVC官方测试序列,共5组20个,如图1所示(图中横坐标为上下文模型的序列号,也就是(a,b,c)中c的取值;图中纵坐标为该特定上下文模型对应待编码元素在整个编码过程中出现“1”的百分比概率)。对这个统计结果进行量化步长为5%的均勻量化,可以得到如图2所示的结果(坐标意义同图1)。上下文简化的基本方法就是将概率近似的上下文模型予以合并,在图2所示的量化结果就是合并方案的基础。应用于c0eff_abS_level_greaterl_flag编码的上下文模型还有两条特点一是30个上下文模型在具体编码是分为6个组,每组5个上下文模型,对于一个确定的图像块,仅应用一个特定的上下文组进行编码;二是各个组出现的次数差距很大,涵盖编号靠后上下文模型的组,其应用次数明显少于前面的组。综合上下文合并的基本原则和coeff_abs_level_greaterl_flag的具体特点,本发明中提出如下表所示的上下文简化方案,将所有概率在量化之后相同的上下文模型合并,合并后的模型采用同概率一组模型中位置最靠前的一个模型的初值,然后对合并后的模型重排序。帧内亮度部分的具体合并方案如图3。同样的,可以获得帧内色度、帧间亮度、帧间色度的合并方案,分别如图4、5、6所
7J\ ο当删除闲置的上下文模型后,关于COeff_abS_level_greaterl_flag所应用的上下文总数由60个减少为M个。2.关于 coeff_abs_level_greater2_flagHM4. 0 中关于 coeff_abs_level_greater2_flag 的上下文模型组织结构与 coeff_ abs_level_greaterl_flag十分类似,其调用参数组(a,b,c)中a的取值只有a = 0 —种, 而c的取值为W,29]共30个,根据其特点,合并具体方案针对帧内亮度、帧内色度、帧间亮度、帧间色度的合并具体方案分别如图7、8、9、10所示。当删除闲置的上下文模型后,关于COeff_abS_level_greater2_flag所应用的上下文个数由60个减少为M个。关于coeff_abs_level_greaterl_flag,根据帧内亮度、帧内色度、帧间亮度、帧间色度四种情况下的合并方案,在HM4. 0中添加一张4*30的映射表,用于将原调用参数映射到现调用参数上,在将上下文模型进行删减和重排序即可,coeff_abs_level_greater2_
5flag的处理方式与此相同。基于HM4.0,可以得到如图12的实验结果。综上所述,本发明针对变换后的NxN图像块的熵编码进行了一系列上下文简化, 总共减少上下文模型个数72个,占总比例的60%,具体明细如图11所示。图3-图6的映射表只是较优的一种实现。改变这些映射表的大小和映射关系也可以得到类似的结果。我{门对于 coeff_abs_level_greaterl_flag 禾口 coeff—abs_level_greater2_flag 的编码上下文釆用了上述方法进行简化。同样对于所有HEVC中用到的编码符号,我们均可以釆用上述方案进行上下文简化。可以简化的编码符号例如下表
权利要求
1.一种针对高效视频编码HEVC熵编码的上下文简化方法,HEVC的基于上下文的自适应算数编码CABAC上下文模型储存于三维上下文模型容器中,容器维度分别为x、y、z,调用时使用3个参数a、b、c(a彡x,b彡y,c彡ζ),则调用到的上下文模型在容器中的线性位置为a*0Z+MZ+C,在对于变换后的NxN图像块参数进行熵编码时,N为正整数,应用于一个指定上下文模型的待编码元素取值只能是0或1,而编码的效率取决于0和1出现的概率,其特征在于对于两个不同的上下文模型,如果它们的对应的编码元素概率相等,那么将这两个上下文模型合并。
2.根据权利要求1所述的方法,其特征在于当对用来标记变换后的图像块里面参数值大于1的位置的c0eff_abS_level_greaterl_flag元素的上下文模型进行合并时,其中 b表示对亮度或色度进行编码,c取值为
,将所有概率在量化之后相同的上下文模型合并,合并后的模型采用同概率一组模型中位置最靠前的一个模型的初值,然后对合并后的模型重排序。
3.根据权利要求1所述的方法,其特征在于当对用来标记变换后的图像块里面参数值大于2的位置的COeff_abS_level_greater2_flag元素的上下文模型进行合并时,其中 a = 0,b表示对亮度或色度进行编码,c取值为
,将所有概率在量化之后相同的上下文模型合并,合并后的模型采用同概率一组模型中位置最靠前的一个模型的初值,然后对合并后的模型重排序。
全文摘要
公开了一种在维持编码效率总体不变的条件下,减少应用的上下文模型个数,删除冗余模型,节省系统资源的针对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出现的概率,其特征在于对于两个不同的上下文模型,如果它们的对应的编码元素概率相等,那么将这两个上下文模型合并。
文档编号H04N7/50GK102420983SQ20111036970
公开日2012年4月18日 申请日期2011年11月18日 优先权日2011年11月18日
发明者丁文鹏, 尹宝才, 施云慧, 车效音 申请人:北京工业大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1