摘要
信源编码为了减少信源输出符号序列中的剩余度、提高符号的平均信息量,对信源输出的符号序列所施行的变换。最原始的信源编码就是莫尔斯电码,另外还有ASCII码和电报码都是信源编码。但现代通信应用中常见的信源编码方式有:Huffman编码、算术编码、游程编码等。信源编码的目标就是使信源减少冗余,更加有效、经济地传输,最常见的应用形式就是压缩。
在计算机信息处理中,“哈弗曼编码”是一种一致性编码法,用于数据的无损耗压缩。它在很多领域有着广泛应用,是一种带权路径长度最短的树,利用哈弗曼算法建立一棵哈弗曼树,同时将数据出现的频率作为权值赋给哈弗曼树中的结点。
该设计是对输入的一串电文字符实现哈弗曼编码,再对哈弗曼编码生成的代码串进行译码。此程序中建立了哈夫曼树,并利用建好的哈夫曼树对文件中的正文进行编码,从根节点出发在左子树则标为0,右则标为1.直到到指定的叶子结点,然后将遍历过程中标记的0,1代码存在一个数组中.以此实现将使用频率高的字符的编码尽可能的少,也就使得总的长度减少。在哈弗曼编码的基础上进行解码,就可以还原压缩的数据。对文件中的代码进行译码,显示输出等功能。
关键词:,哈弗曼编码,哈弗曼树. Matlab,仿真。
目录
前言 2
一、设计目的和意义 3
二、 信源编码的基本概念 4
2.1 通信系统的模块仿真 4
2.2 信息的度量与编码 4
2.3 无失真编码算法 6
三、 霍夫曼编码特点及应用 8
哈夫曼编码树的带权路径长度四、Huffman 编码及其实现 9
五、设计原理 10
六、详细设计步骤 12
七、设计结果及分析 18
八、体会 19
九、参考文献 20
附录: 21
前言
在通信的数字化过程中,对于时间连续和取值连续的原始语音和图像等模拟信号来说,如果要以数字方式进行传输,在发送端必须首先进行模/数(A/D)变换,将原始信号转换为时间离散和取值离散的数字信号。
模拟信号数字化之后一般会导致传输信号的带宽明显增加,这样就会占用更多的信道资源,使得传输效率降低,或者无法实现实时传输。为了提高传输效率,一方面需要采用压缩编码技术,在保证一定信号质量的前提下,尽可能地去除信号中的冗余信息,从而减少信号速率和传输所用带宽。另一方面,即使是原本就以数字形式存在的数据和文字信息,也同样存在一个需要通过压缩编码降低信息冗余提高传输效率的问题。由于这些处理都是针对信源发送信息所进行的,因此一般将其称为信源编码。
信源编码的基本目的是提高码字序列中码元的平均信息量,那么,一切旨在减少剩余度而对信源输出符号序列所施行的变换或处理,都可以在这种意义下归入信源编码的范畴,例如过滤、预测、域变换和数据压缩等。作为现代数据无损压缩的灵魂算法,霍夫曼编码正广泛应用于各种图像、音频、视频及各种多媒体信息的压缩环境中。
一、 信源编码的基本概念
1.1 通信系统的模块仿真
噪声
图1.1 通信系统的模块仿真
1.2 信息的度量与编码
信息是指消息中包含的有效内容,度量信息量的原则首先是能度量任何消息并与消息的种类无关,其次度量方法应该与消息的重要程度无关,最后消息中所含信息量和消息内容的不确定性有关。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论