一种用于短小自然语言的压缩算法制造技术

技术编号:4348420 阅读:628 留言:0更新日期:2012-04-11 18:40
一种用于短小自然语言的压缩算法:(1)对自然语言中每一个字出现的次数进行大量统计,并计算出每一个字出现的字频;(2)用得到的字频,将自然语言分为高频字符、低频字符和ASCII码字符,对属于累积频率总和为α的高频字符、属于其它频率总和为1-α,看作一个字符Φ的低频字符、看作一个字符Ψ的ASCII码字符组合在一起进行编码,得到初步的编码结果,α的取值范围为97%-99%;(3)调整参数α,使得初步的固定编码的结果小于16个bit,得到最后的固定编码结果表;(4)对输入的短小自然语言采用重编码的方式实现压缩,得到压缩后的二进制串;(5)对第四步已压缩的二进制串进行还原,实现解压缩,还原为自然语言。本发明专利技术对于自然语言文本的压缩比在1.5左右且和文本的长度无关,在压缩文本小于800Byte的情况下,比现在通用的LZ算法压缩比高。

【技术实现步骤摘要】

本专利技术涉及一种用于短小自然语言的压缩算法,主要用于对手机短信息(SMS),聊天 对话等的压縮。
技术介绍
在无损压縮领域,基于字典原理的LZ (Lempel-Ziv)压縮算法以其快速有效的压缩效 果成为许多通用压縮工具如AR丄RKZIP、 Gzip、 Winrar等的技术实现的核心算法。基于字典的LZ系列编码包括LZ77算法、LZSS算法、LZ78算法、LZW算法等几 种基本算法,LZ78和LZW是通用数据压縮的主流。LZ78和LZW两种算法的编译码方法 较为复杂,实现起来较为困难,不适合在单片机、手机上实现。游程编码是针对一些文本数据的特点所设计的,这种算法通过统计待压缩数据中的重 复字符、去除文本中的冗余字符或字节中的冗余位,从而达到减少数据文件所占的存储空 间的目的。压縮处理的流程类似于空白压縮,区别仅在于要在压縮指示字符之后加上一个 字符,用于表明压縮对象。随后是该字符的重复次数。由于该算法是针对文件的某些特点 所设计的,所以应用起来具有一定的局限性。哈夫曼编码也称前缀编码,它是根据每个字符出现的频率而进行编码的,要求任一字符 的编码都不是其它任一字符编码的前缀且本文档来自技高网...

【技术保护点】
一种用于短小自然语言的压缩算法,其特征在于步骤如下: 第一步,对自然语言中每一个字出现的次数进行30多万次以上统计,并计算出每一个字出现的字频,得到字频采样表; 第二步,基于第一步中获得的字频,将自然语言分为高频字符、低频字符和 ASCII码字符,对属于累积频率总和为α的高频字符、属于其它频率总和为1-α,看作一个字符Φ的低频字符、看作一个字符Ψ的ASCII码字符组合在一起进行编码,得到初步的编码结果;所述的编码采用哈夫曼编码方法,a的取值范围为95%-99%;   第三步,调整参数a,使得初步的固定编码的结果小于16个bit,得到最后的固定编码结果表,即固定编码字典;...

【技术特征摘要】
1、一种用于短小自然语言的压缩算法,其特征在于步骤如下第一步,对自然语言中每一个字出现的次数进行30多万次以上统计,并计算出每一个字出现的字频,得到字频采样表;第二步,基于第一步中获得的字频,将自然语言分为高频字符、低频字符和ASCII码字符,对属于累积频率总和为α的高频字符、属于其它频率总和为1-α,看作一个字符Φ的低频字符、看作一个字符Ψ的ASCII码字符组合在一起进行编码,得到初步的编码结果;所述的编码采用哈夫曼编码方法,a的取值范围为95%-99%;第三步,调整参数a,使得初步的固定编码的结果小于16个bit,得到最后的固定编码结果表,即固定编码字典;第四步,基于第三步得到的固定编码结果表,对输入的短小自然语言采用重编码的方式实现压缩,得到压缩后的二进制串B;第五步,根据第三步得到的固定编码结果表,对第四步已压缩的二进制串进行还原,实现解压缩,还原为自然语言。2、 根据权...

【专利技术属性】
技术研发人员:赵沁平杨硕磊魏攀郝爱民
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1