发明名称 |
一种对数据进行有限穷举优化的压缩方法 |
摘要 |
本发明涉及一种对数据统计特征进行有限穷举优化的压缩方法。其技术解决方案包括以下步骤:1)判断待压缩数据的编码类型,然后进行长字节码替换或者码数据预压缩;2)判断是否为字典类数据;3)统计最大长度范围内的重复语言单位;4)利用有限穷举法搜寻最优替代重复语言单位的长度范围;5)顺次从长到短替换最优替代重复语言单位的长度范围内的重复语言单位,并对其进行编码,输出替代信息文件,同时记录重复语言单位;6)统计非替代字符的频率,根据该频率生成Huffman树;7)生成压缩数据。本发明解决了现有的压缩方法对数据量大,语言重复率高等数据压缩时,压缩适应性差强、无法实现压缩数据的优化且压缩率低的技术问题。 |
申请公布号 |
CN100349160C |
申请公布日期 |
2007.11.14 |
申请号 |
CN200510096002.6 |
申请日期 |
2005.09.08 |
申请人 |
无敌科技(西安)有限公司 |
发明人 |
陈淮琰;张;闫海红 |
分类号 |
G06F17/22(2006.01);H03M7/40(2006.01) |
主分类号 |
G06F17/22(2006.01) |
代理机构 |
西安智邦专利商标代理有限公司 |
代理人 |
商宇科 |
主权项 |
1、一种对数据进行有限穷举优化的压缩方法,其特征在于:该方法包括以下步骤:1)判断待压缩数据的编码类型是Unicode码数据,还是本地码数据,若为Unicode码数据则进行长字节码替换,对Unicode码数据进行预压缩,对码值小于0×80的编码消除高字节,其它编码按使用频率排序,使用频率较高的127个编码用码值0×80-0×FE替代,余下的编码使用0×ff标记加上两字节编码替代,然后进至步骤2),若为本地码数据,则直接进至步骤2);2)判断是否为字典类数据,若为字典类数据,则记录该字典类数据的分块标记,然后进至步骤3),若否,则直接进至步骤3);3)统计最大长度范围内的重复语言单位;首先统计数据中所有相同字符的位置,然后对所有相同字符依后续字符进行排序,最后找出最大长度范围内的所有重复语言单位并按照长度进行记录;4)利用有限穷举法搜寻最优替代重复语言单位的长度范围;4.1)确定从基准值到最大重复语言单位长度为有限穷举寻优范围;4.2)以寻优范围内的每一个重复语言单位长度为最优长度进行由长到短的逐次替代,然后记录每个替代后减小的长度;4.3)根据每个替代后减小的长度,找到一个最大减小长度,最大减小长度对应的重复语言单位的长度范围即为最优替代重复语言单位的长度范围;5)根据最优替代重复语言单位的长度范围生成重复语言单位替代信息文件,顺次从长到短替换最优替代重复语言单位的长度范围内的重复语言单位,并对其进行编码,输出替代信息文件,同时记录重复语言单位;6)根据原数据和替代信息文件,统计非替代字符的频率,根据该频率生成Huffman树;7)生成压缩数据;根据替代信息文件和Huffman树对原数据利用LZSS算法和Huffman算法进行混合编码替换,同时根据块信息进行分块,生成最终文件,最后把重复语言单位、块信息和Huffman树打入最终数据。 |
地址 |
710075陕西省西安市高新开发区光德路2号楼2楼 |