在学完了信息熵、熵编码的理论概念的基础上,我们将向同学们介绍熵编码中的最佳编码方法--霍夫曼编码。霍夫曼编码方法于1952年问世,
是D.A.Huffman在他的论文"最小冗余度代码的构造方法(A Method for the Construnction of
Minimum Redundancy Codes)"中提出来的。迄今为止, 仍经久不衰, 广泛应用于各种数据压缩技术中, 且仍不失为熵编码中的最佳编码方法。
霍夫曼编码就是依据是变字长最佳编码定理。
以上已经证明了霍夫曼编码是熵编码中的最佳编码,接下来学习霍夫曼编码的具体实现步骤。其具体步骤如下:
① 概率统计(如对一幅图像,或m幅同种类型图像作灰度信号统计),得到n个不同概率的信息符号。
② 将n个信源信息符号的n个概率,按概率大小排序。
③ 将n个概率中,最后两个小概率相加,这时概率个数减为n-1个。
④ 将n-1个概率,按大小重新排序。
⑤ 重复③,将新排序后的最后两个小概率再相加,相加和与其余概率再排序。
⑥ 如此反复重复n-2次,得到只剩两个概率序列。
⑦ 以二进制码元(0.1)赋值,构成霍夫曼码字。编码结束。
霍夫曼编码的具体步骤归纳如下:
① 概率统计(如对一幅图像,或m幅同种类型图像作灰度信号统计),得到n个不同概率的信息符号。
② 将n个信源信息符号的n个概率,按概率大小排序。
③ 将n个概率中,最后两个小概率相加,这时概率个数减为n-1个。
④ 将n-1个概率,按大小重新排序。
⑤ 重复③,将新排序后的最后两个小概率再相加,相加和与其余概率再排序。
⑥ 如此反复重复n-2次,得到只剩两个概率序列。
⑦ 以二进制码元(0.1)赋值,构成霍夫曼码字。编码结束。