Ch2例题与证明五 下载本文

? 定长编码定理 由L个符号组成的,每个符号的熵为H(X)的平稳无记忆符号序列 X1X2?Xl?XL,可用K个符号Y1Y2?Yk?YK(每个符号有m种可能取值)进行定长编码,对任意??0,??0,只要

Klog2m?H(X)???(1)L则当L足够大时,必可使译码差错小于?。反之当

Klog2m?H(X)?2??(2)L时,译码差错一定是有限值,当L足够大时,译码必定出错。

不等式(1)中,m代表码序列中每个符号的可能取值数,假定m个取值是等概率的,则单个符号的信息量为log2m。对于定长编码,每个码字的长度都是K,故码字的总数为m。若信源是平稳无记忆的,长度为K的码序列的总信息量为:

Klog2mK?Klog2m

Klog2m代表的是消息(长为

L的信源符号序

列)的信息量。平均每个符号的信息量即平

K均符号熵为Llog2m。显然传送一个信源符号

K所需的信息率就是Llog2m。定长编码定理中

的正定理说明,信息率略大于单符号熵时,可做到几乎无失真译码,条件是L必须足够大。可以证明,只要

?2[I(xi)]L? (3) ?2?译码差错率一定小于任意正数?。逆定理说

明,信息率比信源熵略小一点(小一个?)时,译码差错未必超过限定值?,但若比H(X)小2?,则译码失真一定大于?,L??时,必定失真。

信源熵H(X)其实就是一个界限,或者说是一个临界值,当编码器输出的信息率超过这个临界值时,就能无失真译码,否则就不行。

信源编码定理从理论上阐明了编码效率接近于1,即

H(X)?1Klog2mL的理想编码器的存在

性,代价是在实际编码时取无限长的信源符

号(L??)进行统一编码。具体来说,就是给定?和?,用式(3)规定的L计算所有可能信源消息的概率,按由大到小的次序排列,选用概率较大的消息进行编码,于是有编码的消息构成一个集合A?,直到该集合的概率p(A?)?1??,意味着译码差错率必定小于?,即完成了编码过程。只要?足够小,就可实现几乎无失真译码,所需的信息率也不会超过H(x)??;若?足够小,编码效率就接近于1。

理想编码器实际上是很难实现的。 [例2.4.1]设某单符号信源模型为

x2x3x4x5x6x7x8??X??x1?p(x)???0.40.180.100.100.070.060.050.04? ????计算得

H(X)?2.55(比特/符号) ?2[I(xi)]?1.323 若要求编码效率为90%,即

H(X)?0.90

H(X)??则 ?=0.28

设译码差错率为10?6,由式(3)可得

7L?1.6875?10

由此可见,在差错率和效率的要求都不

苛刻的情况下,就必须有1600多万个信源符号一起编码,技术实现非常困难。

不仅如此,它的编码效率也不高。对8种可能的取值编定长码,要无差错地译码,每种取值需用3个比特,其编码效率

2.55???85%

3为了解决这一问题,就出现了不等长编码,也称变长编码。

不等长编码允许把等长的消息变换成不等长的码序列。通常把经常出现的消息编成短码,不常出现的消息编成长码。这样可使平均码长最短,从而提高通信效率,代价是增加了编译码设备的复杂度。例如在不等长码字组成的序列中要正确识别每个长度不同的码字的起点就比等长码复杂得多。另外,接收到一个不等长码序列后,有时不能马上断定码字是否真正结束,因而不能立即译出该码,要等到后面的符号收到后才能正确译出。这就是所谓的译码同步和译码延时