[发明专利]数据编码装置及方法、数据解码装置及方法有效
申请号: | 201210593681.8 | 申请日: | 2012-12-31 |
公开(公告)号: | CN103051341A | 公开(公告)日: | 2013-04-17 |
发明(设计)人: | 沈慧 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | H03M7/30 | 分类号: | H03M7/30 |
代理公司: | 北京林达刘知识产权代理事务所(普通合伙) 11277 | 代理人: | 刘新宇 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据 编码 装置 方法 解码 | ||
技术领域
本发明涉及数据的编解码,特别是涉及一种能支持二个以上静态霍夫曼编码表的数据编码装置及方法和相应的数据解码装置及方法。
背景技术
GZIP(GNU Zip的缩写)是一种文件压缩程序,最早由Jean-loup Gailly和Mark Adler创建,用于UNIX系统的文件压缩。在Linux系统中经常会见到的后缀为.gz的文件,就是用GZIP格式压缩的。GZIP现今已成为在Internet上使用非常普遍的一种数据压缩格式,或者说文件格式。
GZIP在算法上通常使用霍夫曼(huffman)编码。采用霍夫曼编码压缩后的数据格式在RFC1951中有描述。霍夫曼编码是一种基于统计意义的熵编码,其以不同数据出现的概率作为编码基础。霍夫曼编码包括静态霍夫曼编码和动态霍夫曼编码两种。静态霍夫曼编码指的是数据出现的概率由事先统计的规律得出,其只有一种编码方式,具有计算量少、速度快、编码性能差等特点。动态霍夫曼编码指的是数据出现的概率由实际数据源得出,具有计算量大、处理时间长、速度慢、编码性能好等特点。
然而,现有的GZIP编码方法存在难以同时保证编码性能和编码速度的缺点。
发明内容
有鉴于此,本发明提供了一种能支持二个以上编码表的数据编码装置及方法和相应的数据解码装置及方法,以提高编码性能并保持编码速度。
第一方面,本发明实施例提供了一种数据编码方法,包括以下步骤:将待编码数据中的部分数据确定为测验数据;采用预定的二个以上编码表分别对所述测验数据进行编码,并比较所获得的二个以上编码结果的压缩率,选择获得最大压缩率的编码表作为目标编码表;采用所述目标编码表对所述待编码数据进行编码,并在所获得的编码结果中记载所述目标编码表的信息。
结合该第一方面,在第一种可能的实施方式中,所述将待编码数据中的部分数据确定为测验数据包括:随机选择所述待编码数据中的一个数据块作为所述测验数据。
结合该第一方面,在第二种可能的实施方式中,所述将待编码数据中的部分数据确定为测验数据包括:将所述待编码数据划分为二个以上数据块;将所述二个以上数据块中的N个数据块分别确定为所述测验数据,其中N为大于1的整数,所述采用预定的二个以上编码表分别对所述测验数据进行编码,并比较所获得的二个以上编码结果的压缩率,选择获得最大压缩率的编码表作为目标编码表包括:采用所述二个以上编码表对每个数据块分别进行编码,获得所述N个数据块中每个数据块的最大压缩率;将生成所述最大压缩率次数最多的编码表确定为目标编码表。
结合该第一方面以及该第一方面的第一至二种可能的实施方式中的任一种,在第三种可能的实施方式中,所述二个以上编码表由数据压缩方和数据解压缩方协商确定。
结合该第一方面以及该第一方面的第一至三种可能的实施方式中的任一种,在第四种可能的实施方式中,所述二个以上编码表为静态霍夫曼编码格式的编码表。
结合该第一方面的第四种可能的实施方式,在第五种可能的实施方式中,采用所述目标编码表对所述待编码数据进行编码所获得的数据为GZIP格式,所述目标编码表信息是通过扩展所述数据的BTYPE字段记载的。
第二方面,本发明实施例提供了一种数据编码装置,包括:测验数据确定单元,用于将待编码数据中的部分数据确定为测验数据;编码表选择单元,与所述测验数据确定单元连接,用于比较对所述测验数据采用预定的二个以上编码表分别进行编码所获得的二个以上编码结果的压缩率,并选择获得最大压缩率的编码表作为目标编码表;编码单元,与所述测验数据确定单元以及所述编码表选择单元连接,用于采用所述二个以上编码表分别对所述测验数据进行编码;在所述编码表选择单元确定所述目标编码表后,采用所述目标编码表对所述待编码数据进行编码,并在所获得的编码结果中记载所述目标编码表的信息。
结合该第二方面,在第一种可能的实施方式中,所述测验数据确定单元包括:选择模块,用以随机选择所述待编码数据中的一个数据块作为所述测验数据,所述编码表选择单元包括:压缩率比较模块,用于比较所述二个以上编码表对该数据块分别进行编码的结果,并将获得最大压缩率的编码表确定为所述目标编码表。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210593681.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种用于水下对讲机的水声语音实时传输系统
- 下一篇:一种核桃的剥壳装置
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置