[发明专利]一种基于上下文的快速哈夫曼解码方法无效
申请号: | 200710040446.7 | 申请日: | 2007-05-09 |
公开(公告)号: | CN101051846A | 公开(公告)日: | 2007-10-10 |
发明(设计)人: | 谭建国 | 申请(专利权)人: | 上海广电(集团)有限公司中央研究院 |
主分类号: | H03M7/40 | 分类号: | H03M7/40 |
代理公司: | 上海新天专利代理有限公司 | 代理人: | 张静洁 |
地址: | 200233*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 上下文 快速 哈夫曼 解码 方法 | ||
1.一种基于上下文的快速哈夫曼解码方法,其特征在于,包含以下步骤:
步骤1、哈夫曼码表的重新构造;
步骤2、基于步骤1中所构造的新哈夫曼码表进行基于上下文的快速码字搜索方法。
2.如权利要求1所述的基于上下文的快速哈夫曼解码方法,其特征在于,所述的步骤1包含以下步骤:
步骤1.1、根据哈夫曼码表中码值的大小,按照顺序进行排序,将排序后获得的新码值表存储在表Table_val中;
步骤1.2、将从原来哈夫曼码值表映射到新码值表Table_val的映射关系存储到表Table_Index中;
步骤1.3、按照表Table_Index中映射关系,将原哈夫曼码表中的码长表映射到表Table_len中;
此时的表Table_val,Table_len和Table_Index就是步骤1构造成的新哈夫曼码表。
3.如权利要求1所述的基于上下文的快速哈夫曼解码方法,其特征在于,所述的权利要求2包含以下步骤:
步骤2.1、首先从比特流中取出1个比特位,并把读取的值赋值给val变量:
val=unpack(1);bitCnt=1;m=0;
unpack(1)函数表示从码流中提取出一个比特位;bitCnt用来存储从比特流中提取的比特位数;m用来存储前一次在码表中搜索到的位置索引;val用来存储当前读取出bitCnt个比特位数后的值;
步骤2.2、不断地从比特流中提取比特数:赋值j=1;
步骤2.3、若j<Maxbits,进行步骤2.4;若j>=Maxbits,说明Maxbits设置错误,退出解码过程,校正Maxbits值。
其中,Maxbits是从码流中最大提取比特的位数;
步骤2.4、查找val变量的当前值在哈夫曼码值表Table_val中的位置,该查找方法是基于上一次的查找结果m基础上的单调递增值,满足下面的关系:
步骤2.5、判断当前值val是否等于Table_val[m],若是,进行步骤2.6,若否,进行步骤2.8;
步骤2.6、变量赋值:n=(m+Rg);k=m;
其中,Rg表示的是哈夫曼码值表中具有相同码值最多的个数;
步骤2.7、判断当前值val和所对应的比特数bitCnt是否是要解码;
步骤2.8、将val值向左平移1位,val=val<<1;从比特流中读取一位unpack(1),并将结果累加到val值上,val=val+unpack(1);所提取的比特数增加1,bitCnt=bitCnt+1;则j++,返回进行步骤2.3。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海广电(集团)有限公司中央研究院,未经上海广电(集团)有限公司中央研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710040446.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:用以调整图像的对比度的方法及装置
- 下一篇:一种内容监控方法及装置