香农-范诺编码计算器

这个在线计算器根据一组符号及其概率生成香农-范诺编码

这个页面的存在是由于以下各位的努力:

Timur

Timur

Wanghong

创建: 2021-12-04 03:42:31, 最后更新: 2021-12-04 03:42:31
Creative Commons Attribution/Share-Alike License 3.0 (Unported)

本内容采用知识共享署名/相同方式共享许可协议3.0(未移植)进行许可。这意味着你可以在相同的许可条件下自由地重新发布或修改本内容,并且必须在你的网站上放置一个超链接到本作品https://zh.planetcalc.com/8168/,以注明原作者。此外,请不要修改本内容中对原作的任何引用(如果有的话)。

这个在线计算器为给定概率的一组符号生成香农-范诺编码。在计算器下面可以找到一些理论。

PLANETCALC, 香农-范诺编码

香农-范诺编码

符号概率表

名称
每页项目:

小数点后的数字: 2
加权路径长度
 
香农熵
 
这个文件很大。浏览器在加载和创建过程中可能会减速。

香农-范诺编码

在数据压缩领域,香农-范诺编码(Shannon - Fano coding)以克劳德香农和罗伯特范诺的名字命名,是一种基于一组符号及其概率(估计或测量)构建前缀码的技术。 它还不是最理想的,因为它没有达到霍夫曼编码这样的最低可能期望码字长度。

在香农-范诺编码中,符号按照从最可能到最不可能的顺序排列,再分成两个总概率尽可能接近相等的集合。 然后,所有符号都指定了其编码的第一个数字; 第一集合中的符号得到“0”,第二集合中的符号得到“1”。 只要有多于一个成员的集合存在,就对这些集合重复同样的过程,以确定其代码的连续位数。 当一个集合被简化为一个符号时,这意味着该符号的代码是完整的,不会构成任何其他符号的代码的前缀。

该算法产生相当有效的可变长度编码; 当分区产生的两个较小的集合实际上具有相等的概率时,用于区分它们的一位信息被最有效地使用。 不幸的是,香农-范诺编码并不总产生最佳前缀代码; 概率集合 {0.35, 0.17, 0.17, 0.16, 0.15} 就是香农-法诺编码分配非最佳代码的示例。

由于这个原因,香农-范诺编码几乎没有被使用过;霍夫曼编码在计算上几乎同样简单,在每个符号由一个整数位组成的代码表示的约束条件下,产生的前缀代码总是能达到最低的预期代码字长1

URL 复制到剪贴板
PLANETCALC, 香农-范诺编码计算器

评论