[发明专利]一种基于非完备码表解析码长的哈夫曼解码方法有效
申请号: | 200810218565.1 | 申请日: | 2008-10-22 |
公开(公告)号: | CN101729076A | 公开(公告)日: | 2010-06-09 |
发明(设计)人: | 裴少芳;苏丹;叶广明;胡胜发 | 申请(专利权)人: | 安凯(广州)软件技术有限公司 |
主分类号: | H03M7/42 | 分类号: | H03M7/42 |
代理公司: | 广州知友专利商标代理有限公司 44104 | 代理人: | 宣国华 |
地址: | 510630 广东省广州市天河*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 完备 码表 解析 哈夫曼 解码 方法 | ||
1.一种基于非完备码表解析码长的哈夫曼解码方法,其特征在于,步骤包 括:
(a)、按级别比较解析法,构建所有用于级别比较解析的码表,包括叶子检 索表和各级哈夫曼最小码字为前缀的定长码字检索表;
(b)、确定非完备码表临界码长L:从最小码长和最大码长之间选择一个值L, 作为构建非完备码表的临界码长;
(c)、基于码流中所包含的所有哈夫曼码字生成树的不超过临界码长L比特 的叶子码字,再构建一个以哈夫曼码字为前缀的L比特非完备码表;
(d)、按照当前码流中待解析部分所属的哈夫曼码字生成树,读取最大码长 长度的码流数值,以这个码流数值为索引,按照当前待解析码流所属的哈夫曼码 字生成树,在对应的以各级哈夫曼最小码字为前缀的定长码字检索表里检索级别 为L+1的码字;
(e)、比较码流数值与刚检索到的L+1级的定长码字,若码流数值小于刚检 索到的码字,以码流数值的前L比特为新的索引,在对应的非完备码长码表部分 检索,检索到的值即为当前码流待解析部分首个码字码长;若码流数值不小于刚 检索到的码字,以所述叶子检索表的码流数值作为比较对象,按照级别比较解析 法,解析刚检索到的码字对应的L级之后的首个码字长度;
(f)、根据已解析的码长,在当前码流中提取其码字,基于码字对应的符号 表,查取其对应符号值,即可完成码流中首个码字的解析;
(g)、从当前码流中剔除已经解析的码字,将剩余码流重复步骤d、e、f, 即可完成所有哈夫曼码的解码。
2.根据权利要求1所述的一种基于非完备码表解析码长的哈夫曼解码方法, 其特征在于,所述的非完备码长码表以码流包含的每个哈夫曼码字生成树为单 位,按相同的方式逐一构建;对于每棵哈夫曼码字生成树,以不超过L比特的哈 夫曼码字为前缀,其余位由全0到全1扩展到L比特长度,建立非完备码长码表 的索引;索引指向的值为哈夫曼前缀码码长。
3.根据权利要求1所述的一种基于非完备码表解析码长的哈夫曼解码方法, 其特征在于,所述的每个哈夫曼码字生成树对应的码长码表部分构建过程:首先, 按照对应的哈夫曼码字生成树,构建L比特长度的各个比特位为全0到全1的索 引,并将所有索引值初始化为0;以哈夫曼生成树的所有不超过L比特叶子码子 为前缀,将剩余码字位以全0到全1填充到L比特长度,将所有同哈夫曼码字前 缀的扩充码的码长码表值以对应哈夫曼前缀码的长度赋值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于安凯(广州)软件技术有限公司,未经安凯(广州)软件技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810218565.1/1.html,转载请声明来源钻瓜专利网。