一、香农码
概念:香农编码是是采用信源符号的累计概率分布函数来分配字码的。香农编码是根据香农第一定理直接得出的,指出了平均码长与信息之间的关系,同时也指出了可以通过编码使平均码长达到极限值。香农第一定理是将原始信源符号转化为新的码符号,使码符号尽量服从等概分布,从而每个码符号所携带的信息量达到最大,进而可以用尽量少的码符号传输信源信息。香农编码属于不等长编码,通常将经常出现的消息变成短码,不经常出现的消息编成长码,从而提高通信效率。香农编码严格意义上来说不是最佳码,它是采用信源符号的累计概率分布函数来分配码字。
编码步骤:
(1)将q个信源符号按概率递减的方法进行排序:P1≥P2≥P3≥……≥Pq
(2)按照-logP(Si)≤Ki≤1-log(Si)(i=1,2,……,q),计算出每个信源符号的码长Ki。
(3)为编成唯一可译码,计算第i个信源符号的累加概率G(i)。
(4)将累加概率转化为二进制表示。
(5)取Gi对应二进制的小数点后Ki位构成该信源符号的二进制码字。
例子:离散无记忆信源P(X)={1/2,1/4,1/64,1/32,1/128,1/8,1/16},对其进行香农编码。
| 信源符号xi |
符号概率pi |
累加概率Pi |
-log(xi) |
码长Ki |
码字 |
| X1 |
1/2 |
0 |
1 |
1 |
0 |
| X2 |
1/4 |

文章介绍了香农编码、哈夫曼编码和费诺编码这三种基于信源统计特性的数据压缩编码方法。香农编码利用概率分布分配码字,但非最优;哈夫曼编码通过构建前缀树实现高效压缩,无歧义;费诺编码则在概率相近的信源符号中优化编码。三种方法各有优缺点,适用于不同场景。
最低0.47元/天 解锁文章
2万+

被折叠的 条评论
为什么被折叠?



