lempel ziv matlab,1.9 Lempel-Ziv算法

1.9   Lempel-Ziv算法

霍夫曼编码需要符号的概率。但许多日常生活现象并不预先提供符号的概率(如信源的统计特性未知)。原则上通过对信源的输出进行长时间观察,可以估计出符号的概率。但在实用中这是不现实的。另外,霍夫曼编码对DMS,也就是当一个符号的出现不会影响到后续符号的出现概率时是***的,但对有记忆信源这就不是***的选择。例如考虑书写文字的压缩问题。我们知道许多字母成对或成组出现,如“q-u”、“t-h”、“i-n-g”等。用字母间的统计互相关性连同字母各自的出现概率应该会更有效。这就是Lempel和Ziv在1977年提出的方案。他们的信源编码算法不需要信源的统计特性。这是一种变长到定长信源编码算法,属于广义信源编码算法类。

Lempel-Ziv广义编码隐含的逻辑如下:通过对由一连串的0和1组成的预先串(前缀串),另加一个新的比特进行编码,对任意比特序列的压缩是可能的。然后,由原来的前缀串添加一个新的比特所形成的新串又作为未来串的前缀串。这些变长的组叫做短语。这些短语列在一个字典里,其中记录了已存在的短语和它们的位置。当对一个新的短语编码时,我们指明已有的短语在字典中的位置并附加新字母。我们可以通过下面的例子来更好地理解Lempel-Ziv算法是怎么工作的。

例1.18 假定我们想对串101011011010101011编码。我们首先做语法分析,将它变成一些用逗号分开的短语,它们代表的字符串可以用原来的一个字符串作前缀另加一个比特表示。

***个比特是1,它前面没东西,因此它有一个***缀串而且另外的1比特就是它自己:

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值