一种无损帧内预测熵编码算法的制作方法

文档序号:7862130阅读:161来源:国知局
专利名称:一种无损帧内预测熵编码算法的制作方法
技术领域
本发明涉及视频编码领域,特别是一种无损帧内预测熵编码算法。
背景技术
H. 264是目前最新的国际视频压缩标准,目前它已经被广泛的使用在有损压缩领 域,但是在无损压缩领域,H. 264并没有提供高性能的编码工具。因此,在最新的H. 264标 准的FRExt (高保真扩展,以下出现都记为FRExt)中加入了 DPCM(差分编码)。对于无损的 帧内编码,这种编码方式直接使用原始像素和预测像素的差值编码,而H. 264使用的熵编 码是针对DCT变换和量化后的参数编码。由于这两种数据存在比较大的差异,所以需要改 进当前使用的CAVLC(基于上下文自适应的可变长编码,以下出现都简写为CAVLC)编码系 统,适应这种变化。在H. 264标准中,CAVLC的编码流程如下第一步对非零系数的数目(TotalCoeffs)和拖尾系数(TrailingOnes)的数目进 行编码。非零系数的数目在O 16之间,拖尾系数指的是最后三个或者三个以内的绝对值 为一的系数,对非零系数的数目和拖尾系数的数目的编码通过查表得到。第二步系统使用一个比特对每个拖尾系数符号进行编码,O表示正,1表示负。第三步对拖尾系数之外的非零系数的幅值进行编码。从7个预定义的Iev-VLC 表中取出一个,按照Zig-Zag顺序反向编码,求出非零系数幅值的绝对值,符号信息按照第 二步中描述的方法编码。表的选取原则由前面已经编码的系数决定的。具体步骤如下(1)当前块的非零系数大于10同时拖尾系数个数少于3那么使用码表Iev-VLCl ; 否则使用码表Iev-VLCO。(2)对最高频的非零系数编码。(3)编码非零系数的符号。(4)如果当前编码系数的数值大于预定义的阀值,使用下一个表。第四步对最后 一个非零系数前面零的数目(TotaUeros)进行编码。第五步对每个非零系数前面零的个 数(RunBefore)进行编码。RunBefore对两种情况不需要编码(A)最后一个低频非零系数 前面零的个数;(B)没有剩余的零需要编码。

发明内容
在本发明提出一种针对无损压缩的CAVLC模式,而且该模式不改变H. 264的任何 语法元素,只改变H. 264的CAVLC编码流程中的第三步、第四步和第五步。具体为,改变了 对拖尾系数之外的非零系数的幅值进行编码部分和对每个非零系数前面零的个数进行编 码部分,同时去掉第四步。本发明对拖尾系数之外的非零系数的幅值进行编码的步骤如下1.1如果当前块是色度的DC块,选择Lev_VLC3作为初始码表;否则选择 lev-VLC4作为初始码表。
1.2按照逆序,编码幅值的绝对值。1.3编码符号信息。1. 4基于前面编码后的幅值的绝对值和当前的门限值更新每个Iev-VLC码表。其 中,Iev-VLC码表如下
权利要求
1.一种无损帧内预测熵编码算法,其特征在于,包括如下步骤1)对非零系数的数目和拖尾系数的数目进行编码。2)对每个拖尾系数符号进行编码。3)对拖尾系数之外的非零系数的幅值进行编码。4)对每个非零系数前面零的个数进行编码。
2.如权利要求1所述的无损帧内预测熵编码算法,其特征在于所述步骤幻中对每个拖 尾系数符号进行编码的方法步骤A.如果当前块是色度的DC块,选择Lev-VLC3作为初始码表;否则选择lev_VLC4作为 初始码表。B.按照逆序,编码幅值的绝对值。C.编码符号信息。D.基于前面编码后的幅值 的绝对值和当前的门限值更新每个Iev-VLC码表。
3.如权利要求1所述的无损帧内预测熵编码算法,其特征在于所述步骤3)中Iev-VLC 码表
4.如权利要求1所述的无损帧内预测熵编码算法,其特征在于所述步骤4)中对每个非 零系数前面零的个数进行编码的方法用正序的zig-zag扫描方式进行RimBefore编码,有两个例外(A)如果所有的零系数 完成编码,过程终止;(B)完成RimBef0re最后一个非零系数编码,过程终止。
全文摘要
一种无损帧内预测熵编码算法。因为H.264编码标准主要针对有损编码,所以H.264的熵编码并不适合无损压缩。本算法针对有损编码和无损编码的差异,不改变H.264的任何语法元素,只是改变了CAVLC的编码流程,提高了CAVLC的编码效率。
文档编号H04N7/24GK102148967SQ20101010649
公开日2011年8月10日 申请日期2010年2月4日 优先权日2010年2月4日
发明者杨华岚 申请人:成都市世嘉电子实业有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1