信息论与编码课程大作业香农编码

信息论与编码课程大作业香农编码
信息论与编码课程大作业香农编码

信息论与编码课程大作业

题目:香农编码

学生姓名:

学号:2010110100

专业班级:电子信息工程班

2013年5月17日

香农编码

一、实验目的

(1) 进一步熟悉Shannon 编码过程。 (2) 掌握高级语言程序的设计和调试技术。

二、实验要求

输入:信源符号个数n 、信源的概率分布P={p(s i )},i=1,…..,n 。 输出:每个信源符号对应的香农编码的码字。

三、实验原理

香农第一定理指出了平均码长与信源之间的关系,同时也指出了可以通过编码使平均码长达到极限值,这是一个很重要的极限定理。如何构造这种码?香农第一定理指出,选择每个码字的长度K i 满足下式

I(x i )≤K ﹤I(x i )+1, 就可以得到这种码。这种编码方法就是香农编码。 编码步骤

香农编码法冗余度稍大,实用性不大,但有重要的理论意义。编码步骤如下: (1) 将信源消息符号按其出现的概率大小依次排列 p (x 1)≥p (x 2)≥…≥p (x n ) (2) 确定满足下列不等式整数码长K i :

-log 2p(x i )≤K i <-log 2p(x i )+1 (3) 为了编成唯一可译码,计算第i 个消息的累加概率 P i =∑-+1

1i k p(x k )

(4) 将累加概率P i 变成二进制数。

(5) 取P i 二进制数的小数点后K i 位即为该消息符号的二进制码字

四、用Matlab实现

1、编码主程序

n=input('输入单符号信源个数n=')

p=zeros(1,n);

for i=1:n

p(1,i)=input('输入单符号信源的概率:');

end

if sum(p)<1||sum(p)>1

error('不符合概率分布无效')

end

y=fliplr(sort(p));%大到小排序

D=zeros(n,4);%生成n*4的零矩阵

D(:,1)=y';%把y赋给零矩阵的第一列

for i=2:n

D(1,2)=0;%令第一行第二列的元素为0

D(i,2)=D(i-1,1)+D(i-1,2);%求累加概率

end

for i=1:n

D(i,3)=-log2(D(i,1));%求第三列的元素

D(i,4)=ceil(D(i,3));%求第四列的元素,对D(i,3)向无穷方向取最小正整数

end

D

A=D(:,2)';%取出D中第二列元素

B=D(:,4)';%取出D中第四列元素

for j=1:n

C=binary(A(j),B(j))%生成码字

end 2、含有的子函数binary

function [C]=binary(A,B)%对累加概率求二进制的函数

C=zeros(1,B);%生成零矩阵用于存储生成的二进制数,对二进制的每一位进行操作

temp=A;%temp赋初值

for i=1:B%累加概率转化为二进制,循环求二进制的每一位,A控制生成二进制的位数

temp=temp*2;

if temp>1

temp=temp-1;

C(1,i)=1;

else

C(1,i)=0;

end

end

五、运行结果及分析(宋体四号,加粗)

输入信源符号个数n=5

输入信源符号概率:0.21

输入信源符号概率:0.19

输入信源符号概率:0.18

输入信源符号概率:0.17

输入信源符号概率:0.25

得到结果为:

六、心得体会(宋体四号,加粗)

本次大作业之前我对信息论香农编码的理解还只是停留在以前通信课本和信息论课本理论知识,这两周时间主要是通过看课本和通过网络资源完成了本次大作业,运行程序只对于正确输入情况下可以出来结果,若输入信号概率之和不为1也能运行,出来的编码是错误的,这点没有考虑到。通过运用香农编码方法进行计算和对香农编码Matlab的运行,可知,香农编码方法多余度稍大,相较于其他编码方法实用性不大,例如:后面课本上所学的费诺编码,但香农编码法有重要的理论意义。

信息论与编码理论习题答案

信息论与编码理论习题 答案 LG GROUP system office room 【LGA16H-LGYY-LGUA8Q8-LGA162】

第二章 信息量和熵 八元编码系统,码长为3,第一个符号用于同步,每秒1000个码字,求它的信息速 率。 解:同步信息均相同,不含信息,因此 每个码字的信息量为 2?8log =2?3=6 bit 因此,信息速率为 6?1000=6000 bit/s 掷一对无偏骰子,告诉你得到的总的点数为:(a) 7; (b) 12。问各得到多少信息 量。 解:(1) 可能的组合为 {1,6},{2,5},{3,4},{4,3},{5,2},{6,1} )(a p =366=6 1 得到的信息量 =) (1 log a p =6log = bit (2) 可能的唯一,为 {6,6} )(b p =361 得到的信息量=) (1 log b p =36log = bit 经过充分洗牌后的一副扑克(52张),问: (a) 任何一种特定的排列所给出的信息量是多少? (b) 若从中抽取13张牌,所给出的点数都不相同时得到多少信息量? 解:(a) )(a p =! 521 信息量=) (1 log a p =!52log = bit (b) ? ??????花色任选种点数任意排列 13413!13 )(b p =13 52134!13A ?=1352 13 4C 信息量=1313 52 4log log -C = bit 随机掷3颗骰子,X 表示第一颗骰子的结果,Y 表示第一和第二颗骰子的点数之和, Z 表示3颗骰子的点数之和,试求)|(Y Z H 、)|(Y X H 、),|(Y X Z H 、 )|,(Y Z X H 、)|(X Z H 。

信息论与编码课程设计报告

目录 一:实验原理----------------------------1 二:程序源代码--------------------------1 三:实验分析-----------------------------6 四:实验结论---------------------------7

赫夫曼编码 一:实验原理 哈夫曼编码的具体步骤归纳如下: ① 概率统计(如对一幅图像,或m幅同种类型图像作灰度信号统计),得到n个不同概率的信息符号。 ② 将n个信源信息符号的n个概率,按概率大小排序。 ③ 将n个概率中,最后两个小概率相加,这时概率个数减为n-1个。 ④ 将n-1个概率,按大小重新排序。 ⑤ 重复③,将新排序后的最后两个小概率再相加,相加和与其余概率再排序。 ⑥ 如此反复重复n-2次,得到只剩两个概率序列。 ⑦ 以二进制码元赋值,构成哈夫曼码字。编码结束。 哈夫曼码字长度和信息符号出现概率大小次序正好相反,即大 概信息符号分配码字长度短,小概率信息符号分配码字长度长。 C、哈夫曼编码的特点 (1)哈夫曼编码的构造顺序明确,但码不是唯一的(因以大赋1还是小的赋1而异;

(2)哈夫曼编码的字长参差不齐,硬件实现不方便; (3)只有在概率分布很不均匀时,哈夫曼编码才有显著的效果,而在信源分布均匀时,一般不使用哈夫曼编码。 二:程序源代码: #define MAXVALUE 10000 #define MAXLEAF 30 #define MAXNODE 59 #define MAXBIT 10 #define LENTH 30 #include "" #include typedef struct{ float gailv; int flag; int parent; int lchild; int rchild; char ch; int t; }HNodeType; typedef struct{ int bit[MAXBIT]; int start; }HCodeType; typedef struct{ float gailv; char letter; }mytype; /*it's the type of data save in file*/ typedef struct filehuff{ int count; mytype mydata[MAXLEAF]; filehuff(){count=0; }; }; filehuff filedata; char code[MAXVALUE]; HNodeType HuffNode[MAXNODE]; void savetofile() { FILE *fp;

信息论与编码课程总结

信息论与编码 《信息论与编码》这门课程给我带了很深刻的感受。信息论是人类在通信工程实践之中总结发展而来的,它主要由通信技术、概率论、随机过程、数理统计等相结合而形成。它主要研究如何提高信息系统的可靠性、有效性、保密性和认证性,以使信息系统最优化。学习这门课程之后,我学到了很多知识,总结之后,主要有以下几个方面: 首先是基本概念。信息是指各个事物运动的状态及状态变化的方式。消息是指包括信息的语言、文字和图像等。信号是消息的物理体现,为了在信道上传输消息,就必须把消息加载到具有某种物理特性的信号上去。信号是信息的载荷子或载体。信息的基本概念在于它的不确定性,任何已确定的事物都不含有信息。信息的特征:(1)接收者在收到信息之前,对其内容是未知的。(2)信息是能使认识主体对某一事物的未知性或不确定性减少的有用知识。(3)信息可以产生,也可以消失,同时信息可以被携带、存储及处理。(4)信息是可以量度的,信息量有多少的差别。编码问题可分解为3类:信源编码、信道编 码、加密编码。= 理论上传输的最少信息量 编码效率实际需要的信息量。 接下来,学习信源,重点研究信源的统计特性和数学模型,以及各类离散信源的信息测度 —熵及其性质,从而引入信息理论的一些基本概念和重要结论。本章内容是香农信息论的基础。重点要掌握离散信源的自信息,信息熵(平均自信息量),条件熵,联合熵的的概念和求法及其它们之间的关系,离散无记忆的扩展信源的信息熵。另外要记住信源的数学模型。通过学习信源与信息熵的基本概念,了解了什么是无记忆信源。信源发出的序列的统计性质与时间的推移无关,是平稳的随机序列。当信源的记忆长度为m+1时,该时刻发出的符号与前m 个符号有关联性,而与更前面的符号无关,这种有记忆信源叫做m 阶马尔可夫信源。若上述条件概率与时间起点无关,则信源输出的符号序列可看成齐次马尔可夫链,这样的信源叫做齐次马尔可夫信源。之后学习了信息熵有关的计算,定义具有概率为 () i p x 的符号i x 的自信息量为:()log ()i i I x p x =-。自信息量具有下列特性:(1) ()1,()0i i p x I x ==(2)()0,()i i p x I x ==∞(3)非负性(4)单调递减性(5)可加 性。信源熵是在平均意义上来表征信源的总体特征,它是信源X 的 函数,一般写成H (X )。信源熵:()()log ()i i i H X p x p x =-∑,条件熵:(|)(,)log (|) i j i j ij H X Y p x y p x y =-∑联合 熵(|)(,)log (,)i j i j ij H X Y p x y p x y =-∑,联合熵 H(X,Y)与熵H(X)及条件熵H(Y|X)的关系: (,)()(|)()(|)H X Y H X H Y X H X H X Y =+=+。互信息: ,(|)(|)(;)(,)log ()(|)log () () j i j i i j i j i ij i j j j p y x p y x I X Y p x y p x p y x p y p y = = ∑ ∑ 。熵的性质:非负性,对称性,确定 性,极值性。 接下来接触到信道,知道了信道的分类,根据用户数可以分为,单用户和多用户;根

信息论与编码习题参考答案

bit/s 104.98310661.130)/)(()/(R bit/frame 10661.1322.3105)(H 105)(H bit/pels 322.310log )(log )()(H 76650510 10?=??=?=∴?=??=??====∑=frame bit X H s frame r x X a p a p x i i i 所需信息速率为:每帧图像的熵是:每个像素的熵是:,由熵的极值性: 由于亮度电平等概出现 . 5.2,,5.25.2477.210 log 300log )(H )(H pels /bit 300log )(log )()(H bit 3001030,10,,3001300 11倍左右比黑白电视系统高彩色电视系统信息率要图形所以传输相同的倍作用大信息量比黑白电视系统彩色电视系统每个像素每个像素的熵是:量化 所以每个像素需要用个亮度每个色彩度需要求下在满足黑白电视系统要个不同色彩度增加∴≈====∴=?∑=x x b p b p x i i i 个汉字 最少需要数描述一帧图像需要汉字每个汉字所包含信息量每个汉字所出现概率每帧图象所含信息量556 6 5 5 10322.6/10322.61 .0log 101.2)()()()(,log H(c):1.010000 1000 symble /bit 101.2128log 103)(103)(: ?∴?=-?=≥ ≤-=∴== ?=??=??=frame c H X H n c nH X H n p p x H X H ),...,,(21n p p p n m ≤≤0∑=-=m i i m p q 1 1)log(),,...,,(),...,,(2121m n q q p p p H p p p H m m m n -+≤ ∑∑+==- -=>-=<-=''-=''∴>- =''-=''>-=n m i i i m i i i n p p p p p p p H x x x x f x e x x x f x x e x x x f x x x x f 1 121log log ),...,,( )0(log )( 0log )log ()(0 log )log ()()0(log )( 又为凸函数。即又为凸函数,如下:先证明 时等式成立。 当且仅当时等式成立。当且仅当即可得: 的算术平均值的函数,函数的平均值小于变量由凸函数的性质,变量n m m m m m n m m m i i i m m m m m m i i i n m i i i m i i i n n m m m m m n m i i i m m n m i i n m i i n m i i n m i i n m i i i p p p m n q q p p p H p p p H q q p p q p p p H m n q q q p p p p p p p p p H p p p m n q q q p p m n q q m n p m n p m n m n p f m n m n p f m n p p ===-+≤--=-+--≤- -=∴===-+-≤- --=----=---≤---=- ++==+==+++=+=+=+=+=+=∑∑∑∑∑∑∑∑∑ ∑...)log(),,...,,(),...,,(log log ),,...,,() log(log log log log ),...,,(...) log(log log log log )()()() ()(log 2121211 211 1 1 21211 1111 1 X n

信息论与编码课程设计..

吉林建筑大学 电气与电子信息工程学院信息理论与编码课程设计报告 设计题目:哈夫曼编码的分析与实现专业班级:电子信息工程101 学生姓名: 学号: 指导教师:吕卅王超 设计时间:2013.11.18-2013.11.29

一、设计的作用、目的 《信息论与编码》是一门理论与实践密切结合的课程,课程设计是其实践性教学环节之一,同时也是对课堂所学理论知识的巩固和补充。其主要目的是加深对理论知识的理解,掌握查阅有关资料的技能,提高实践技能,培养独立分析问题、解决问题及实际应用的能力。 通过完成具体编码算法的程序设计和调试工作,提高编程能力,深刻理解信源编码、信道编译码的基本思想和目的,掌握编码的基本原理与编码过程,增强逻辑思维能力,培养和提高自学能力以及综合运用所学理论知识去分析解决实际问题的能力,逐步熟悉开展科学实践的程序和方法 二、设计任务及要求 通过课程设计各环节的实践,应使学生达到如下要求: 1. 理解无失真信源编码的理论基础,掌握无失真信源编码的基本方法; 2. 掌握哈夫曼编码/费诺编码方法的基本步骤及优缺点; 3. 深刻理解信道编码的基本思想与目的,理解线性分组码的基本原理与编码过程; 4. 能够使用MATLAB 或其他语言进行编程,编写的函数要有通用性。 三、设计内容 一个有8个符号的信源X ,各个符号出现的概率为: 编码方法:先将信源符号按其出现的概率大小依次排列,并取概率最小的字母分别配以0和1两个码元(先0后1或者先1后0,以后赋值固定),再将这两个概率相加作为一个新字母的概率,与未分配的二进制符号的字母重新排队。并不断重复这一过程,直到最后两个符号配以0和1为止。最后从最后一级开始,向前返回得到各个信源符号所对应的码元序列,即为对应的码字。 哈夫曼编码方式得到的码并非唯一的。在对信源缩减时,两个概率最小的符号合并后的概率与其他信源符号的概率相同时,这两者在缩减中的排序将会导致不同码字,但不同的排序将会影响码字的长度,一般讲合并的概率放在上面, 12345678,,,,, ()0.40.180.10.10.070.060.050.04X x x x x x x x x P X ????=????????

信息论与编码教学大纲

《信息论与编码》课程教学大纲、课程基本信息 二、课程内容及基本要求 第一章绪论 课程内容:

1 ?信息论之父--香农;信息论与香农信息论的形成与发展;香农信息论的中心 问题及其局限性; 2.信息、消息、信号、信息的本质、信息的广义性; 3.通信系统基本模型:信源、信宿、信道、干扰、噪声、信源编码、信道编码。基本要求:1.了解信息论之父---Shannon(香农)和香农信息论的基本思想及其局限性;了解信息论的形成与发展过程;了解香农信息论的基本思想(中心问题)及其适用范围;2.理解消息、信息与信号的含义;理解消息、信息与信号之间的联系与区别;3.熟悉通信系统的基本模型及各模块的主要功能。 本章重点香农信息论的中心问题、通信系统模型 本章难点:信息、消息与信号的联系与区别;香农信息论的局限性第二章信源、信息量和信息熵 课程内容: 1.无记忆信源与有记忆信源、离散信源与连续信源、离散序列信源、马尔可夫信源、离散无记忆信源、离散无记忆序列信源; 2.非平均信息量、信源熵、条件信息量、条件熵、噪声熵、损耗熵、联合熵、非平均互信息、平均互信息; 3.熵的性质、离散无记忆信源的序列熵、离散有记忆信源的序列熵;4.数据处理中信息的变化、连续信源熵;5.凸函数、互信息量的凸性,冗余度。 基本要求: 1.了解并掌握信源的分类与特点; 2.理解并掌握非平均信息量、信源熵、互信息量、条件熵、联合熵、非平均互信息量、平均互信息的概念,计算;理解并掌握信源熵、信宿熵、噪声熵、损耗熵、平均

互信息之间的关系; 3.理解马尔可夫信源的概念、理解离散序列信源熵的概念; 4.理解熵的性质、熵的唯一性原理;理解连续信源的熵及连续熵的性质; 5.理解凸函数的含义和性质;了解凸函数在信息论中的应用。 本章重点:非平均自信息量、条件信息量、互信息量、条件互信息量、熵、条件熵、熵的性质 本章难点:平均互信息量、熵、离散序列信源熵、马尔可夫信源、条件熵、噪声熵、损耗熵第三章信源编码 课程内容: 1.编码的定义与分类;奇异码与非奇码;唯一可译码与非唯一可译码;即时码与非即时码;克拉夫特不等式;码树;平均码长的计算;信息传输速率;2.无失真信源编码;定长码与定长编码定理;变长码与变长编码定理;最佳变长码编码定理;香农编码及其过程;费诺编码及其过程;哈夫曼编码及其过程;3.限失真信源编码;常用信源编码--- 游程编码、算术编码、预测编码、变换编码。 基本要求: 1.理解并掌握编码的分类及特点;掌握平均码长的计算;掌握码树的使用; 2.理解无失真信源编码的含义;掌握定长码的特点与编码原理;掌握不定长编 码的特点与编码原理; 3.掌握离散无记忆信源的等长编码及不等长编码;掌握香农编码原理、掌握费 诺编码原理;掌握哈夫曼编码原理; 4.了解常用限失真信源编码方法—算术编码、游程编码、预测编码及变换编码的编码原理。

信息论与编码课后习题答案

1. 有一个马尔可夫信源,已知p(x 1|x 1)=2/3,p(x 2|x 1)=1/3,p(x 1|x 2)=1,p(x 2|x 2)=0,试画出该信源的香农线图,并求出信源熵。 解:该信源的香农线图为: 1/3 ○ ○ 2/3 (x 1) 1 (x 2) 在计算信源熵之前,先用转移概率求稳定状态下二个状态x 1和 x 2 的概率)(1x p 和)(2x p 立方程:)()()(1111x p x x p x p =+)()(221x p x x p =)()(2132x p x p + )()()(1122x p x x p x p =+)()(222x p x x p =)(0)(2131x p x p + )()(21x p x p +=1 得4 3 1)(=x p 4 12)(=x p 马尔可夫信源熵H = ∑∑- I J i j i j i x x p x x p x p )(log )()( 得 H=0.689bit/符号 2.设有一个无记忆信源发出符号A 和B ,已知4 341)(.)(= =B p A p 。求: ①计算该信源熵; ②设该信源改为发出二重符号序列消息的信源,采用费诺编码方法,求其平均信息传输速率; ③又设该信源改为发三重序列消息的信源,采用霍夫曼编码方法,求其平均信息传输速率。 解:①∑- =X i i x p x p X H )(log )()( =0.812 bit/符号 ②发出二重符号序列消息的信源,发出四种消息的概率分别为 用费诺编码方法 代码组 b i BB 0 1 BA 10 2 AB 110 3 AA 111 3 无记忆信源 624.1)(2)(2 ==X H X H bit/双符号 平均代码组长度 2B =1.687 bit/双符号 B X H R )(22==0.963 bit/码元时间 ③三重符号序列消息有8个,它们的概率分别为 用霍夫曼编码方法 代码组 b i BBB 64 27 0 0 1 BBA 64 9 0 )(6419 1 110 3

信息论与编码课程设计报告书

信息论与编码课程设计报告设计题目:判断唯一可译码、香农编码 专业班级电信12-03 学号7 学生琳 指导教师成凌飞 教师评分 2015年3月21日

目录 一、设计任务与要求 (2) 二、设计思路 (2) 三、设计流程图 (3) 四、程序运行及结果 (4) 五、心得体会 (6) 参考文献 (7) 附录:源程序 (8)

一、设计任务与要求 通过本次课程设计的练习,使学生进一步巩固信源熵、信源编码的基本原理,掌握具体的编码方法,熟悉编程软件的使用,培养学生自主设计、编程调试的开发能力,同时提高学生的实践创新能力。 1、判断唯一可译码 利用尾随后缀法判断任意输入的码是否为唯一可译码,即设计一个程序实现判断输入码组是否为唯一可译码这一功能。 2、香农编码 熟悉运用香农编码,并能通过C语言进行编程,对任意输入消息概率,利用香农编码方法进行编码,并计算信源熵和编码效率。 二、设计思路 1、判断唯一可译码 在我们学习使用了克劳夫特不等式之后,知道唯一可译码必须满足克劳夫特不等式。但是克劳夫特不等式仅仅是存在性的判定定理,即该定理不能作为判断一种码是否为唯一可译码的依据。也就是说当码字长度和码符号数满足克劳夫特不等式时,则必可以构造出唯一可译码,否则不能构造出唯一可译码。因此我们必须找到一种能够判断一种码是否为唯一可译码的方法,尾随后缀法。 尾随后缀法算法描述: 设C为码字集合,按以下步骤构造此码的尾随后缀集合F: (1) 考查C中所有的码字,若Wi是Wj的前缀,则将相应的后缀作为一个尾随后缀放入集合F0中; (2) 考查C和Fi两个集合,若Wj∈C是Wi∈Fi的前缀或Wi∈Fi 是Wj

信息论与编码课程论文

《信息论与编码》课程论文 ——通过信息论对已有知识产生的新认识 马赛 1143031014 《信息论与编码》课程是通信专业的一门基础课。其讲述的理论——香农信息论是当今信息科学的基础,可以说没有信息论的理论支持,就没有当今的信息化社会。 通过对于信息论的学习,我认识到,信息论的贡献就是解释了什么是“信息”,同时使用数学工具,对信息及伴随它产生的各种事物概念进行了解析。近代科学的重大飞跃往往都是因人类对于一个事物有了强有力的分析工具而产生的。有了信息论这一近乎完备(存在一些缺陷)的解析理论,人类才得以驾驭信息,社会才有了长足的进步。 在学习时,我习惯于把正在学习的知识和自己已经掌握的知识进行联系。通过这种方法,可以增进对正在学习知识的理解,同时对已掌握的知识也有新的认识。下文中,列举了两个问题,同时使用信息论的角度去进行解释。 一、计算机的存储容量与信息量的联系 当今的计算机已经十分普及。存储容量,无论内存还是外存,都是判定一台计算机性能的重要指标。现在的个人计算机硬盘容量已经达到了TB级别,而在20年前,几百MB的硬盘都十分罕见。在追求更高的存储容量时,我们是否思考过存储的东西是什么?KB、MB、GB等单位究竟代表的含义是什么? 这是计算机科学的基本知识:“8 bit = 1 byte”。bit即“位”,这是计算机存储单元最基本的单位;而信息论中也将信息量——用于衡量信息的量的单位称为bit,这两个概念有什么联系吗? 在课程讲解时提到过这个问题,幻灯片上的答案如是解释:两者代表着不同的概念,信息论中的bit代表着信息量;而计算机中的bit代表着计算机中的二元数字1和0。 我认为两者是同一种概念,都代表信息量,而计算机中的bit是更为细化的概念,单指计算机中的信息量。信息的一种解释是:对于不确定性的消除。信息量是对信息的一种衡量手段,描述对事件不确定性消除的程度。而描述事件不确定性的量就是这个事件发生的概率,因此一个事件发生的概率与事件包含的信息量具有对应的关系。这是香农信息论对于信息量的定义。 计算机存储的依然是信息,只是信息的存储形式是01二进制数字。如果说计算机中的bit只是二元数字的话,那么这个单位就丧失了“信息”这个定义了。 用户通过互联网下载各种资料,下载的资料需要占用本地的存储空间,这是一个众所周知的例子。其实这个过程就是一个消除不确定性的过程。我们一般常识中的“空”硬盘,实际上是没有存储信息,而空间就在那里,空间中的信息有不确定,有不确定度;写入信息,实际上就是在消除不确定性,让空间中的信息确定,让其有序。这就是一种典型的信息传递过程。 计算机是2元存储结构,一个二进制符号代表1bit,根据实际计算,一个二进制符号的最大信息量即H0(X) = log22 = 1bit,这是一个将符号等同于无记忆的,每个符号之间没有联系,达到了信息量的最大值。这是最为简化的处理结果,也是最为可行的处理结果。如果严格按照信息论的角度去分析,其实每个符号之间是有联系的——各种编码、指令,如果01只是随机出现,那么只是一盘散沙。当然这是严格的理论解释,如果实际应用到存储信息的计量,那么将是不可行,计算机界的先驱是非常有远见的。 二、关于称硬币问题的思考

信息论与编码课程设计报告,统计信源熵与香农编码

信息论与编码课程设计报告设计题目:统计信源熵与香农编码 专业班级电信 12-06 学号 学生姓名 指导教师 教师评分 2015年 3 月 30日

目录 一、设计任务与要求 (2) 二、设计思路 (2) 三、设计流程图 (3) 四、程序运行及结果 (4) 五、心得体会 (6) 参考文献 (7) 附录:源程序 (8)

一、设计任务与要求 1.统计信源熵 要求:统计任意文本文件中各字符(不区分大小写)数量,计算字符概率,并计算信源熵。 2.香农编码 要求:任意输入消息概率,利用香农编码方法进行编码,并计算信源熵和编码效率。 二、设计思路 本次课程设计中主要运用C 语言编程以实现任务要求,分析所需要的统计量以及相关变量,依据具体公式和计算步骤编写语句,组成完整C 程序。 1、信源熵 定义:信源各个离散消息的自信息量的数学期望为信源的平均信息量,一般称为信源的信息熵,也叫信源熵或香农熵,有时称为无条件熵或熵函数,简称熵,记为H ()。 计算公式: ) (log )(-)x (i i i x p x p H ∑= 2、香农编码过程: (1)将信源消息符号按其出现的概率大小依次排列为 n p p ≥???≥≥21p (2)确定满足下列不等式的整数码长i K 为 1)()(+-<≤-i i i p lb K p lb (3)为了编成唯一可译码,计算第i 个消息的累加概率 ∑-==11) (i k k i a p P (4)将累计概率 i P 变换成二进制数。 (5)取i P 二进制数的小数点后i K 位即为该消息符号的二进制码字。

三、设计流程图 1、统计信源熵 开始 读取给定文件 判断文件是否打开否 并且不为空 是 统计文本字符,直关闭文件 至文本字符读完。 统计同一字符(不分 大小写)出现的次数 计算字符概率 计算信源熵 输出 结束

信息论与编码第五章答案

设信源1 234567()0.20.190.180.170.150.10.01X a a a a a a a p X ????=???? ???? (1) 求信源熵H(X); (2) 编二进制香农码; (3) 计算平均码长和编码效率. 解: (1) 7 21222222()()log () 0.2log 0.20.19log 0.19 0.18log 0.180.17log 0.170.15log 0.150.1log 0.10.01log 0.012.609/i i i H X p a p a bit symbol ==-=-?-?-?-?-?-?-?=∑ (2) (3) 7 1 ()0.230.1930.1830.1730.153 0.140.0173.141 ()()/ 2.609 3.14183.1% i i i K k p x H X H X K R η===?+?+?+?+?+?+?====÷=∑ 对习题的信源编二进制费诺码,计算编码效率. 解:

a i p(a i )编码码字k i a1 0002 a2 1 00103 a310113 a4 1 0102 a5 1 01103 a6 1 011104 a7111114 对信源编二进制和三进制哈夫 曼码,计算各自的平均码长和编码效率. 解: 二进制哈夫曼码: x i p(x i)编码码字k i s61 s50 s41 s30 s21 x10102 x21112 x300003

x410013 x500103 s11 x6001104 x7101114 三进制哈夫曼码: x i p(x i)编码码字k i s31 s20 s11 x1221 x20002 x31012 x42022 x50102 x61112 x72122

信息论与编码理论课后习题答案高等教育出版社

信息论与编码理论习题解 第二章-信息量和熵 解: 平均每个符号长为:154 4.0312.032= ?+?秒 每个符号的熵为9183.03log 3 1 23log 32=?+?比特/符号 所以信息速率为444.34 15 9183.0=?比特/秒 解: 同步信号均相同不含信息,其余认为等概, 每个码字的信息量为 3*2=6 比特; 所以信息速率为600010006=?比特/秒 解:(a)一对骰子总点数为7的概率是 36 6 所以得到的信息量为 585.2)366(log 2= 比特 (b) 一对骰子总点数为12的概率是36 1 所以得到的信息量为 17.536 1 log 2= 比特 解: (a)任一特定排列的概率为 ! 521 ,所以给出的信息量为 58.225! 521 log 2 =- 比特 (b) 从中任取13张牌,所给出的点数都不相同的概率为 1352 13 13 521344!13C A =? 所以得到的信息量为 21.134 log 1313 52 2=C 比特. 解:易证每次出现i 点的概率为 21 i ,所以

比特比特比特比特比特比特比特398.221 log 21)(807.1)6(070.2)5(392.2)4(807.2)3(392.3)2(392.4)1(6,5,4,3,2,1,21 log )(26 12=-==============-==∑ =i i X H x I x I x I x I x I x I i i i x I i 解: 可能有的排列总数为 27720! 5!4!3! 12= 没有两棵梧桐树相邻的排列数可如下图求得, Y X Y X Y X Y X Y X Y X Y X Y 图中X 表示白杨或白桦,它有???? ??37种排法,Y 表示梧桐树可以栽 种的位置,它有???? ??58种排法,所以共有???? ??58*???? ??37=1960种排法保证没有 两棵梧桐树相邻,因此若告诉你没有两棵梧桐树相邻时,得到关于树排列的信息为1960log 27720log 22-= 比特 解: X=0表示未录取,X=1表示录取; Y=0表示本市,Y=1表示外地; Z=0表示学过英语,Z=1表示未学过英语,由此得

信息论与编码课程大作业二进制哈夫曼编码

信息论与编码课程大作业 题目:二进制哈夫曼编码 学生姓名: 学号:2010020200 专业班级: 2010级电子信息班 2013年5月18日

二进制哈夫曼编码 1、二进制哈夫曼编码的原理及步骤 1、1信源编码的计算 设有N 个码元组成的离散、无记忆符号集,其中每个符号由一个二进制码字表示,信源符号个数n 、信源的概率分布P={p(s i )},i=1,…..,n 。且各符号xi 的以li 个码元编码,在变长字编码时每个符号的平均码长为∑==n i li xi p L 1)( ; 信源熵为:)(log )()(1 xi p xi p X H n i ∑=-= ; 唯一可译码的充要条件:11 ≤∑=-n i Ki m ; 其中m 为码符号个数,n 为信源符号个数,Ki 为各码字长度。 构造哈夫曼数示例如下图所示。 1、2 二元霍夫曼编码规则 (1)将信源符号依出现概率递减顺序排序。 (2)给两个概率最小的信源符号各分配一个码位“0”和“1”,将两个信源符号合并成一个新符号,并用这两个最小的概率之和作为新符号的概率,结 0.60 0.15 0.09 0.30 1.00 0.60 0.03 0.30 0.15 0.40 0.05 0.04 0.03

果得到一个只包含(n-1)个信源符号的新信源。称为信源的第一次缩减信源,用s1 表示。 (3)将缩减信源 s1 的符号仍按概率从大到小顺序排列,重复步骤(2),得到只含(n-2)个符号的缩减信源s2。 (4)重复上述步骤,直至缩减信源只剩两个符号为止,此时所剩两个符号 的概率之和必为 1,然后从最后一级缩减信源开始,依编码路径向前返回,就得到各信源符号所对应的码字。 1、3 二元哈夫曼编码流程图如下图所示。 是 是 开始 等待数据输入 判断输入的概 率是否小于零 判断概率和是 否大于1 生成一个n - 1行n 列的数组 按照哈弗曼的编码规则进行编 码 计算码长 计算编码效率 计算信源熵 显示结果 结束

信息论与编码课后答案

一个马尔可夫信源有3个符号{}1,23,u u u ,转移概率为:()11|1/2p u u =,()21|1/2p u u =, ()31|0p u u =,()12|1/3p u u =,()22|0p u u =,()32|2/3p u u =,()13|1/3p u u =,()23|2/3p u u =,()33|0p u u =,画出状态图并求出各符号稳态概率。 解:状态图如下 状态转移矩阵为: 1/21/2 01/302/31/32/30p ?? ?= ? ??? 设状态u 1,u 2,u 3稳定后的概率分别为W 1,W 2、W 3 由1231WP W W W W =??++=?得1231132231231 112331223 231W W W W W W W W W W W W ?++=???+=???=???++=? 计算可得1231025925625W W W ?=??? =?? ?=?? 由符号集{0,1}组成的二阶马尔可夫链,其转移概率为:(0|00)p =,(0|11)p =,(1|00)p =, (1|11)p =,(0|01)p =,(0|10)p =,(1|01)p =,(1|10)p =。画出状态图,并计算各状态 的稳态概率。 解:(0|00)(00|00)0.8p p == (0|01)(10|01)0.5p p == (0|11)(10|11)0.2p p == (0|10)(00|10)0.5p p == (1|00)(01|00)0.2p p == (1|01)(11|01)0.5p p == (1|11)(11|11)0.8p p == (1|10)(01|10)0.5p p ==

信息论与编码课程设计(哈夫曼编码的分析与实现)

建筑大学 电气与电子信息工程学院 信息理论与编码课程设计报告 设计题目:哈夫曼编码的分析与实现 专业班级:电子信息工程 101 学生: 学号: 指导教师:吕卅王超 设计时间: 2013.11.18-2013.11.29

一、设计的作用、目的 《信息论与编码》是一门理论与实践密切结合的课程,课程设计是其实践性教学环节之一,同时也是对课堂所学理论知识的巩固和补充。其主要目的是加深对理论知识的理解,掌握查阅有关资料的技能,提高实践技能,培养独立分析问题、解决问题及实际应用的能力。 通过完成具体编码算法的程序设计和调试工作,提高编程能力,深刻理解信源编码、信道编译码的基本思想和目的,掌握编码的基本原理与编码过程,增强逻辑思维能力,培养和提高自学能力以及综合运用所学理论知识去分析解决实际问题的能力,逐步熟悉开展科学实践的程序和方法 二、设计任务及要求 通过课程设计各环节的实践,应使学生达到如下要求: 1. 理解无失真信源编码的理论基础,掌握无失真信源编码的基本方法; 2. 掌握哈夫曼编码/费诺编码方法的基本步骤及优缺点; 3. 深刻理解信道编码的基本思想与目的,理解线性分组码的基本原理与编码过程; 4. 能够使用MATLAB 或其他语言进行编程,编写的函数要有通用性。 三、设计容 一个有8个符号的信源X ,各个符号出现的概率为: 编码方法:先将信源符号按其出现的概率大小依次排列,并取概率最小的字母分别配以0和1两个码元(先0后1或者先1后0,以后赋值固定),再将这两个概率相加作为一个新字母的概率,与未分配的二进制符号的字母重新排队。并不断重复这一过程,直到最后两个符号配以0和1为止。最后从最后一级开始,向前返回得到各个信源符号所对应的码元序列,即为对应的码字。 哈夫曼编码方式得到的码并非唯一的。在对信源缩减时,两个概率最小的符号合并后的概率与其他信源符号的概率相同时,这两者在缩减中的排序将会导12345678,,,,,()0.40.180.10.10.070.060.050.04X x x x x x x x x P X ????=????????

信息论与编码理论第二章习题答案

I (X ;Y=1)= P(x/Y 1)I(x;Y 1) x P(x/Y 1)log P(x/Y 1) P(x) = P(X 0/Y 1)log P(X 0/Y 1) P(X 0) P(X 1/Y 1)log P(X 1/Y 1) P(X 1) 部分答案,仅供参考。 信息速率是指平均每秒传输的信息量点和划出现的信息量分别为log3Jog3, 2’ 一秒钟点和划出现的次数平均为 1 15 2 1 ~4 0.20.4 - 3 3 一秒钟点和划分别出现的次数平均为巴5 4 4 那么根据两者出现的次数,可以计算一秒钟其信息量平均为10 log 3 5 竺 5 4 2 4 4 2 解: ⑻骰子A和B,掷出7点有以下6种可能: A=1,B=6; A=2,B=5; A=3,B=4; A=4,B=3; A=5,B=2; A=6,B=1 概率为6/36=1/6,所以信息量 -log(1/6)=1+log3 ~ bit (b)骰子A和B,掷出12点只有1种可能: A=6,B=6 概率为1/36,所以信息量 -log(1/36)=2+log9 ~ bit 解: 出现各点数的概率和信息量: 1 点:1/21 , log21 ?bit ; 2 点:2/21 , log21-1 ?bit ; 3 点:1/7 , log7 4 点:4/21 , log21-2 5 点:5/21 , log (21/5 )~; 6 点:2/ 7 , log(7/2)? 平均信息量: (1/21) X +(2/21) X +(1/7) X +(4/21) X +(5/21) X +(2/7) 解: X=1:考生被录取;X=0考生未被录取; Y=1:考生来自本市;Y=0考生来自外地; Z=1:考生学过英语;z=o:考生未学过英语 P(X=1)=1/4, P( X=q=3/4; P( Y=1/ X=1)=1/2 ;P( Y=1/ X=0)=1/10 ;P(Z=1/ Y=1 )=1, P( Z=1/ X=0, Y=0 )=, P( Z=1/ X=1, Y=0 )=, P(Z=1/Y=0)= (a)P(X=0,Y=1)=P(Y=1/X=0)P(X=0)=, P(X=1,Y=1)= P(Y=1/X=1)P(X=1)= P(Y=1)= P(X=0,Y=1)+ P(X=1,Y=1)= P(X=0/Y=1)=P(X=0,Y=1)/P(Y=1)=, P(X=1/Y=1)=P(X=1,Y=1)/P(Y=1)=

信息论与编码课程设计(精.选)

信息论与编码课程设计报告 设计题目:统计信源熵、香农编码与费诺编码 专业班级:XXXXXXXXXXXX 姓名:XXXXXXXXXXXX 学号:XXXXXXXXXXXX 指导老师:XXXXXXXXXXXX 成绩: 时间:2015年3月31日

目录 一、设计任务与要求 (2) 二、设计思路 (2) 三、设计流程图 (5) 四、程序及结果 (7) 五、心得体会 (11) 六、参考文献 (12) 附录 (13)

一、 设计任务与要求 1. 统计信源熵 要求:统计任意文本文件中各字符(不区分大小写)数量,计算字符概率,并计算信源熵。 2. 香农编码 要求:任意输入消息概率,利用香农编码方法进行编码,并计算信源熵和编码效率。 3. 费诺编码 要求:任意输入消息概率,利用费诺编码方法进行编码,并计算信源熵和编码效率。 二、 设计思路 1、统计信源熵: 统计信源熵就是对一篇英文文章中的i 种字符(包括标点符号及空格,英文字母不区分大小写)统计其出现的次数count i (),然后计算其出现的概率()p i ,最后由信源熵计算公式: 1()()log ()n i i n H x p x p x ==-∑ 算出信源熵()H x 。所以整体步骤就是先统计出文章中总的字符数,然后统计每种字符的数目,直到算出所有种类的字符的个数,进而算出每种字符的概率,再由信源熵计算公式计算出信源熵。在这里我选择用Matlab 来计算信源熵,因为Matlab 中系统自带了许多文件操作和字符串操作函数,其计算功能强大,所以计算

信源熵很是简单。 2、香农编码 信源编码模型: 信源编码就是从信源符号到码符号的一种映射f ,它把信源输出的符号i a 变换成码元序列i x 。 1,2,...,,i i N f a i q x =→: 1:{,...,}q S s a a ∈ 信源 1 2 {,...,}li i i i i X x x x = 码元 1{,...,} 1,2,...,i q S a a i N ∈= 1,2,...,N i q = 1:{,...,} r X x x x ∈ 码符号 N 次扩展信源无失真编码器 凡是能载荷一定的信息量,且码字的平均长度最短,可分离的变长码的码字集合都可以称为最佳码。为此必须将概率大的信息符号编以短的码字,概率小的符号编以长的码字,使得平均码字长度最短。能获得最佳码的编码方法主要有:香农(Shannon )、费诺(Fano )、哈夫曼(Huffman )编码等。 香农第一定理: 离散无记忆信源为 1 21 2......()()()...... q q s s s S p s p s p s P ????=???????? 熵()H S ,其N 次扩展为

《信息论与编码》课程小结

《信息论与编码》课程小结 《信息论与编码》课程小结信息论是应用概率论、随机过程和数理统计和近代代数等方法,来研究信息的存储、传输和处理中一般规律的学科。它的主要目的是提高通信系统的可靠性、有效性和安全性,以便达到系统的最优化。 关于信息论的基本理论体系,1948年,香农在贝尔系统技术杂志

上发表“通信的数学理论”。在文中,他用概率测度和数理统计的方法系统地讨论了通信的基本问题,得出了几个重要而带有普遍意义的结论,并由此奠定了现代信息论的基础。香农理论的核心是:揭示了在通信系统中采用适当的编码后能够实现高效率和高可靠地传输信息,并得出了信源编码定理和信道编码定理。然而,它们给出了编码的性能极限,在理论上阐明了通信系统中各种因素的相互关系,为寻找最佳通信系统提供了重要的理论依据。 对信息论的研究内容一般有以下三种理解: (1) 狭义信息论,也称经典信息论。它主要研究信息的测度、信道容量以及信源和信道编码理论等问题。这部分内容是信息论的基础理论,又称香农基本理论。 (2) 一般信息论,主要是研究信息传输和处理问题。除了香农理论以外,还包括噪声理论、信号滤波和预测、统计检测与估计理论、调制理论、信息处理理论以及保密理论等。后一部分内容以美国科学家维纳为代表,其中最有贡献的是维纳和苏联科学家柯尔莫哥洛夫。 (3) 广义信息论。广义信息论不仅包括上述两方面的内容,而且包括所有与信息有关的自然和社会领域,如模式识别、计算机翻译、心理学、遗传学、神经生理学、语言学、语义学甚至包括社会学中有关信息的问题,是新兴的信息科学理论。 信息论已经成为现代信息科学的一个重要组成部分,它是现代通信和信息技术的理论基础。现代信息论又是数学概率论下的一个分支,与遍历性理论、大偏差理论以及统计力学等都有密切关系。 关于信息论与编码课程的特点,信息论课程中运用了大量的数学知识。例如:在讨论纠错编码中生成矩阵和一致校验矩阵的关系时,需要用到矩阵的运算和性质;在讨论连续信源熵时,需要对连续信源概率密度进行积分运算;在讨论离散信源熵的最大值或信道容量的最大值时,要计算多元函数的条件极值。此外,信息论与编码中很多定理都伴随着复杂的数学证明,其中最明显的就是香农三定理(无失真信源编码定理、有

相关文档
最新文档