实验一:绘制信源熵函数曲线
(完整版)计算离散信源的熵matlab实现
(完整版)计算离散信源的熵matlab实现实验一:计算离散信源的熵一、实验设备:1、计算机2、软件:Matlab二、实验目的:1、熟悉离散信源的特点;2、学习仿真离散信源的方法3、学习离散信源平均信息量的计算方法4、熟悉 Matlab 编程;三、实验内容:1、写出计算自信息量的Matlab 程序2、写出计算离散信源平均信息量的Matlab 程序。
3、掌握二元离散信源的最大信息量与概率的关系。
4、将程序在计算机上仿真实现,验证程序的正确性并完成习题。
四、实验报告要求简要总结离散信源的特点及离散信源平均信息量的计算,写出习题的MATLAB 实现语句。
信息论基础:自信息的计算公式 21()log aI a p = Matlab 实现:I=log2(1/p) 或I=-log2(p) 熵(平均自信息)的计算公式22111()log log qq i i i i i i H x p p p p ====-∑∑ Matlab 实现:HX=sum(-x.*log2(x));或者h=h-x(i)*log2(x(i)); 习题:1. 甲地天气预报构成的信源空间为:1111(),,,8482X p x =?? 小雨云大雨晴乙地信源空间为:17(),88Y p y =?? 小雨晴求此两个信源的熵。
求各种天气的自信息量。
案:() 1.75;()0.5436H X H Y ==运行程序:p1=[1/2,1/4,1/8,1/8];%p1代表甲信源对应的概率p2=[7/8,1/8];%p2代表乙信源对应的概率H1=0.0;H2=0.0;I=[];J=[];for i=1:4H1=H1+p1(i)*log2(1/p1(i));I(i)=log2(1/p1(i));enddisp('自信息量分别为:');Idisp('H1信源熵为:');H1for j=1:2H2=H2+p2(j)*log2(1/p2(j));J(j)=log2(1/p2(j));enddisp('自信息量分别为:');Jdisp('H2信源熵为:');H2。
实验一-信息熵与图像熵计算-正确
实验一信息熵与图像熵计算(2 学时)一、实验目的1.复习MATLAB的基本命令,熟悉MATLAB下的基本函数;2.复习信息熵基本定义,能够自学图像熵定义和基本概念。
二、实验内容1.能够写出MATLAB源代码,求信源的信息熵;2.根据图像熵基本知识,综合设计出MATLAB程序,求出给定图像的图像熵。
三、实验仪器、设备1.计算机-系统最低配置256M内存、P4 CPU;2.MATLAB编程软件。
四实验流程图五实验数据及结果分析四、实验原理1.MATLAB中数据类型、矩阵运算、图像文件输入与输出知识复习。
2.利用信息论中信息熵概念,求出任意一个离散信源的熵(平均自信息量)。
自信息是一个随机变量,它是指某一信源发出某一消息所含有的信息量。
所发出的消息不同,它们所含有的信息量也就不同。
任何一个消息的自信息量都代表不了信源所包含的平均自信息量。
不能作为整个信源的信息测度,因此定义自信息量的数学期望为信源的平均自信息量:1( ) 1 ( ) [log ] ( ) log ( ) i n i i p a i H E p a p a X 信息熵的意义:信源的信息熵H是从整个信源的统计特性来考虑的。
它是从平均意义上来表征信源的总体特性的。
对于某特定的信源,其信息熵只有一个。
不同的信源因统计特性不同,其熵也不同。
3.学习图像熵基本概念,能够求出图像一维熵和二维熵。
图像熵是一种特征的统计形式,它反映了图像中平均信息量的多少。
图像的一维熵表示图像中灰度分布的聚集特征所包含的信息量,令Pi表示图像中灰度值为i的像素所占的比例,则定义灰度图像的一元灰度熵为:2550 log i i i p p H图像的一维熵可以表示图像灰度分布的聚集特征,却不能反映图像灰度分布的空间特征,为了表征这种空间特征,可以在一维熵的基础上引入能够反映灰度分布空间特征的特征量来组成图像的二维熵。
选择图像的邻域灰度均值作为灰度2分布的空间特征量,与图像的像素灰度组成特征二元组,记为(i,j),其中i表示像素的灰度值(0<=i<=255),j表示邻域灰度(0<=j<=255),2 ( , ) / ij p f i j N上式能反应某像素位置上的灰度值与其周围像素灰度分布的综合特征,其中f(i,j)为特征二元组(i,j)出现的频数,N为图像的尺度,定义离散的图像二维熵为:2550 log ij ij i p p H构造的图像二维熵可以在图像所包含信息量的前提下,突出反映图像中像素位置的灰度信息和像素邻域内灰度分布的综合特征。
实验1-绘制二进熵函数曲线、串联信道容量曲线
信息论与编码实验1 绘制二进熵函数曲线、串联信道容量曲线学院:物理与电子学院班级:电信1105班姓名:学号:*********一、实验内容用Excel 或Matlab 软件制作二进熵函数曲线、串联信道容量曲线。
二、实验目的1. 掌握Excel 的数据填充、公式运算和图表制作2. 掌握Matlab 绘图函数3. 掌握、理解熵函数表达式及其性质三、实验要求1. 提前预习实验,认真阅读实验原理以及相应的参考书。
2. 认真高效的完成实验,实验中服从实验室管理人员以及实验指导老师的管理。
3. 认真填写实验报告。
四、实验原理1. Excel 的图表功能(略)2. 信源熵的概念及性质()()[]()[]())(1)(1 .log )( .)( 1log 1log )(log )()(10 , 110)(21Q H P H Q P H b nX H a p H p p p p x p x p X H p p p x x X P X i i i λλλλ-+≥-+≤=--+-=-=≤≤⎩⎨⎧⎭⎬⎫-===⎥⎦⎤⎢⎣⎡∑3. 串联信道的信道容量(图 1)。
图 1 三个二元对称信道(BSC )的串联p -1 p -1pp0 1 p -1 p -1 p p 0 1 p -1 p -1 p p 0 1 1 0I II III五、实验步骤:1.信息熵函数H.m文件function y = H(p)y=-(p.*log(p)+(1-p).*log(1-p))./log(2);end2 matlab命令p=0.01:0.01:0.99;y1=H(p);y2=H(2.*p.*(1-p));y3=H(p.^3+3.*p.*(1-p).*(1-p));c1=1-y1;c2=1-y2;c3=1-y3;subplot(3,1,1);plot(p,c1);xlabel('p');ylabel('C1');subplot(3,1,2);plot(p,c2);xlabel('p');ylabel('C2');subplot(3,1,3);plot(p,c3);xlabel('p');ylabel('C3');六、实验心得通过本次信息与编码实验,了解了二进制上函数的曲线以及串联信道容量曲线,使自己对书上知识点的把握更加直观,收获很大,更深刻的了解了曲线产生的原理,比书上了解的更加具体,使自己受益匪浅,增加了学习兴趣。
一绘制二元熵函数曲线报告
实验一绘制二元熵函数曲线实验报告一、实验目的1.熟悉MATLAB工作环境及工具箱2.理解熵函数表达式及其性质二、实验内容用MATLAB软件编程绘制二元熵函数曲线三、实验过程1.复习二元熵函数,理解二元信源的熵H(w)=-wlogw-(1-w)log(1-w)表达式。
2.熟悉MATLAB软件。
1)MATLAB的操作界面MATLAB操作界面主要分为:任务栏、命令窗、命令历史窗、当前目录浏览器、工作空间浏览器及一个“启动按钮”。
任务栏:位于软件的正上方。
各个菜单分别为:文件、编辑、视窗、调试、桌面、窗体、帮助这几个窗口,点击每个窗口可以选择需要的操作。
命令窗(Command Window):位于软件操作界面的右侧。
在此窗口里,可以输入各种指令、函数、变量表达式并进行各种操作。
该窗口用于输入命令并显示除图形以外的所有执行结果。
窗口中的“>>”为命令提示符,直接在其后面输入命令并按下回车键后,会出现计算结果在命令后面。
命令历史窗(Command History):位于软件操作界面的左下方。
这个窗口记录了命令窗口已经运行过的所有命令(指令、函数等),允许用户对这些命令进行选择、复制。
2)MATLAB的函数绘制二维图形最常用的就是plot函数,调用plot函数的三种形式:plot(x)、plot(x,y)、plot(x,y,’r:x’)。
还有就是如何添加横坐标和纵坐标标题的命令语句。
3.实验程序。
w=0.000001:0.0001:0.999999999 %定义w的取值范围y=-w.*log2(w)-(1-w).*log2(1-w) %定义二元熵函数的表达式plot(w,y,'r') %画出二元熵函数的曲线图xlabel('w') %x轴的名称ylabel('H(w)') %y轴的名称grid on %给图形加上网格title('二元熵函数H(w)') %函数曲线的名称运行结果如下:四、实验结果分析从图中可以看出熵函数的一些性质,如果二元信源的输出概率是1或0(即二元信源的输出是确定的),则该信源不提供任何信息。
绘制二元单符号离散信源熵的变化曲线
绘制二元单符号离散信源熵的变化曲线二元单符号离散信源熵是信息论中的一个重要概念,用于衡量一个二元符号序列中所包含的信息量。
在信息论中,熵表示了一个信源的不确定性,即信源输出的符号的平均信息量。
为了绘制二元单符号离散信源熵的变化曲线,我们需要考虑信源的概率分布。
在二元单符号离散信源中,每个符号的概率可以用一个长度为2的概率分布向量表示。
设P = (p1, p2)为信源的概率分布向量,其中p1和p2分别代表了两个符号的概率。
根据信息论的定义,信源的熵H可以通过以下公式计算:H = -p1*log2(p1) - p2*log2(p2)在绘制曲线之前,我们可以先确定概率分布的范围。
由于概率的范围是[0, 1],我们可以选择一些典型的概率分布进行计算和绘图。
例如,我们可以选择p1从0到1变化,p2则为1-p1。
这样,我们就可以得到一个关于p1的二元单符号离散信源熵的变化曲线。
另外,我们还可以考虑其他形式的概率分布。
例如,可以选择p1从0到0.5变化,然后p2从0.5到1变化,这样可以得到一条从左上角到右下角的曲线。
通过使用计算机编程语言(如Python)和绘图库(如Matplotlib),我们可以根据上述公式和概率分布范围进行计算和绘制。
具体步骤如下:1. 导入所需的库和模块,如NumPy和Matplotlib。
2. 定义一个函数,用于计算给定概率分布的二元单符号离散信源熵。
该函数将概率分布作为输入,并返回对应的熵值。
3. 定义概率分布的范围,如p1从0到1变化,p2为1-p1。
4. 使用一个循环,遍历概率分布范围中的每个概率值。
5. 对于每个概率值,调用计算熵的函数,并将结果保存到一个列表中。
6. 使用Matplotlib库绘制概率值与熵值的变化曲线。
绘制二元单符号离散信源熵的变化曲线可以帮助我们理解不同概率分布下信源的不确定性变化情况。
这个曲线可以被应用于许多领域,如数据压缩和通信系统设计等。
用matlab绘制信源熵函数曲线,信息理论编码之实验一绘制二进制熵函数曲线.ppt...
⽤matlab绘制信源熵函数曲线,信息理论编码之实验⼀绘制⼆进制熵函数曲线.ppt...信息理论编码之实验⼀ 绘制⼆进制熵函数曲线⼀、实验⽬的 熟悉⼯作环境及⼯具箱 掌握绘图函数的运⽤ 理解熵函数表达式及其性质 ⼆、实验原理 熵 ⾃信息量是针对信源的单个符号⽽⾔的,⽽符号是随机发⽣的,因此单个符号的不确定性不⾜于代表信源的不确定性性质,为此,可对所有符号的⾃信息量进⾏统计平均,从⽽得到平均不确定性。
熵的表⽰ 注意的问题 熵是⾃信息量的统计平均,因此单位与⾃信息量的单位相同,与熵公式中所⽤对数的底有关:bit/符号、nat/符号、dit/符号、r进制单位/符号。
特殊公式 某个pk=0时,0log0=0 ( ) 在熵的定义中忽略零概率事件。
离散熵的性质 对称性 可扩展性 ⾮负性 强可加性 可加性 渐化性 凸状性 H(p1,p2,…,pk)是上凸函数。
极值性 三、实验内容 ⽤ Matlab 软件绘制⼆进熵函数曲线。
⼆元信源 ⼆元信源的熵为 Matlab程序 p=0.00001:0.001:1; h=-p.*log2(p)-(1-p).*log2(1-p); plot(p,h); title('⼆进熵函数曲线'); ylabel('H(p,1-p)') 绘制三元信源的熵 三元信源 三元信源的熵为 Matlab程序 p=linspace(eps,1-eps,100); q=linspace(eps,1-eps,100); [P,Q]=meshgrid(p,q); P_Q=P+Q; for n=1:100 for m=1:100 if P_Q(n,m)>=1 Q(n,m)=nan; end end end H=-P.*log2(P)-Q.*log2(Q)-(1-P-Q).*log2(1-P-Q); mesh(P,Q,H) title('三维熵函数的图形') 熵函数是⾮负函数、上凸函数,并且等概率时达到最⼤值。
信息理论编码之实验一 绘制二进制熵函数曲线
强可加性
H ( p1q11 ,..., p1q1 j ,..., pk qk1 ,..., pk qkj ) H ( p1 , p2 ,..., pk ) pk H (qk1 , qk 2 ,..., qkj )
k, j
Matlab程序
arr = linspace(0.001, 0.999, 100); Z = zeros(length(arr), length(arr)); for i = 1:length(arr) for j = 1:length(arr) Z(i,j) = InterInfor(arr(i), arr(j), 1 - arr(j)); end end mesh(arr, arr, Z); xlabel('P(Y|X)') ylabel('P(X)') zlabel('I(X;Y)') title('平均互信息量的函数图形')
熵的表示
1 H ( X ) H ( p1 , p2 ,..., pk ) pk I ( xk ) pk log pk k 1 k 1
K
K
注意的问题
熵是自信息量的统计平均,因此单位与自信息量的单
位相同,与熵公式中所用对数的底有关: bit/符号、nat/符号、dit/符号、r进制单位/符号。
实验一 绘制二进制熵函数曲线
一、实验目的
熟悉工作环境及工具箱 掌握绘图函数的运用 理解熵函数表达式及其性质
二、实验原理
熵
自信息量是针对信源的单个符号而言的,而符号是随
机发生的,因此单个符号的不确定性不足于代表信源 的不确定性性质,为此,可对所有符号的自信息量进
实验一_信息熵与图像熵计算_正确
实验一信息熵与图像熵计算(2 学时)一、实验目的1.复习MATLAB的基本命令,熟悉MATLAB下的基本函数;2.复习信息熵基本定义,能够自学图像熵定义和基本概念。
二、实验容1.能够写出MATLAB源代码,求信源的信息熵;2.根据图像熵基本知识,综合设计出MATLAB程序,求出给定图像的图像熵。
三、实验仪器、设备1.计算机-系统最低配置256M存、P4 CPU;2.MATLAB编程软件。
四实验流程图五实验数据及结果分析四、实验原理1.MATLAB中数据类型、矩阵运算、图像文件输入与输出知识复习。
2.利用信息论息熵概念,求出任意一个离散信源的熵(平均自信息量)。
自信息是一个随机变量,它是指某一信源发出某一消息所含有的信息量。
所发出的消息不同,它们所含有的信息量也就不同。
任何一个消息的自信息量都代表不了信源所包含的平均自信息量。
不能作为整个信源的信息测度,因此定义自信息量的数学期望为信源的平均自信息量:1( ) 1 ( ) [log ] ( ) log ( ) i n i i p a i H E p a p a X 信息熵的意义:信源的信息熵H是从整个信源的统计特性来考虑的。
它是从平均意义上来表征信源的总体特性的。
对于某特定的信源,其信息熵只有一个。
不同的信源因统计特性不同,其熵也不同。
3.学习图像熵基本概念,能够求出图像一维熵和二维熵。
图像熵是一种特征的统计形式,它反映了图像中平均信息量的多少。
图像的一维熵表示图像中灰度分布的聚集特征所包含的信息量,令Pi表示图像中灰度值为i的像素所占的比例,则定义灰度图像的一元灰度熵为:2550 log i i i p p H图像的一维熵可以表示图像灰度分布的聚集特征,却不能反映图像灰度分布的空间特征,为了表征这种空间特征,可以在一维熵的基础上引入能够反映灰度分布空间特征的特征量来组成图像的二维熵。
选择图像的邻域灰度均值作为灰度2分布的空间特征量,与图像的像素灰度组成特征二元组,记为(i,j),其中i表示像素的灰度值(0<=i<=255),j表示邻域灰度(0<=j<=255),2 ( , ) / ij p f i j N上式能反应某像素位置上的灰度值与其周围像素灰度分布的综合特征,其中f(i,j)为特征二元组(i,j)出现的频数,N为图像的尺度,定义离散的图像二维熵为:2550 log ij ij i p p H构造的图像二维熵可以在图像所包含信息量的前提下,突出反映图像中像素位置的灰度信息和像素邻域灰度分布的综合特征。
信息论实验信息熵函数的计算
H_X=0;
for(i=0;i<m;i++)
H_X=H_X-P_X[i]*log2(P_X[i]);
printf("\n\n信息熵H(X)=%f",H_X);//信息熵H(X)
//条件熵H(X|Y)
H_X_Y=0;
for(j=0;j<n;j++)//求P(Y)
{P_Y[j]=0;
for(i=0;i<m;i++)
{P_Y_X=matrix[i][j];
P_XY=P_Y_X*P_X[i];
P_Y[j]=P_Y[j]+P_XY;}
}
for(i=0;i<m;i++)//求H(X|Y)
{for(j=0;j<n;j++)
{P_Y_X=matrix[i][j];
P_XY=P_Y_X*P_X[i];
P_X_Y=P_XY/P_Y[j];
三.实验方案或步骤(程序设计说明)
实验选用C语言编程,用一维数组存储信源分布数据,二维数组存储信道转移概率矩阵。利用循环(嵌套)语句计算以下公式并输出需要的结果:
,
,
四.实验程序(经调试后正确的源程序)
#include "stdio.h"
#include "stdlib.h"
#include "math.h"
#define M 20//最大行数
#d顶的对数*/
float log2(float x)
{return log(x)/log(2);}//log2(x)
/*主函数*/
void main()
信息论与编码实验指导书
没实验一 绘制二进熵函数曲线(2个学时)一、实验目的:1. 掌握Excel 的数据填充、公式运算和图表制作2. 掌握Matlab 绘图函数3. 掌握、理解熵函数表达式及其性质 二、实验要求:1. 提前预习实验,认真阅读实验原理以及相应的参考书。
2. 在实验报告中给出二进制熵函数曲线图 三、实验原理:1. Excel 的图表功能2. 信源熵的概念及性质()()[]()[]())(1)(1 .log )( .)( 1log 1log )(log )()(10 , 110)(21Q H P H Q P H b nX H a p H p p p p x p x p X H p p p x x X P X ii i λλλλ-+≥-+≤=--+-=-=≤≤⎩⎨⎧⎭⎬⎫-===⎥⎦⎤⎢⎣⎡∑四、实验内容:用Excel 或Matlab 软件制作二进熵函数曲线。
具体步骤如下:1、启动Excel 应用程序。
2、准备一组数据p 。
在Excel 的一个工作表的A 列(或其它列)输入一组p ,取步长为0.01,从0至100产生101个p (利用Excel 填充功能)。
3、取定对数底c ,在B 列计算H(x) ,注意对p=0与p=1两处,在B 列对应位置直接输入0。
Excel 中提供了三种对数函数LN(x),LOG10(x)和LOG(x,c),其中LN(x)是求自然对数,LOG10(x)是求以10为底的对数,LOG(x,c)表示求对数。
选用c=2,则应用函数LOG(x,2)。
在单元格B2中输入公式:=-A2*LOG(A2,2)-(1-A2)*LOG(1-A2,2) 双击B2的填充柄,即可完成H(p)的计算。
4、使用Excel 的图表向导,图表类型选“XY 散点图”,子图表类型选“无数据点平滑散点图”,数据区域用计算出的H(p)数据所在列范围,即$B$1:$B$101。
在“系列”中输入X值(即p值)范围,即$A$1:$A$101。
关于信源熵的实验报告
实验报告实验名称关于信源熵的实验课程名称信息论与编码姓名xxx 成绩90班级电子信息1102学号0909112204日期2013.11.22地点综合实验楼实验一MATLAB完成离散信源熵的计算一、实验目的1. 通过信息论与编码学理论,掌握离散信源熵的原理和计算方法。
2. 熟悉matlab 软件的基本操作和基本工具以及使用,掌握利用matlab求解信息熵的原理和方法。
3. 练习使用matlab 求解信源的信息熵。
自学图像熵的相关概念,并应用所学知识,使用matlab 或其他开发工具求解图像熵。
4. 掌握Excel的绘图功能,使用Excel绘制散点图、直方图。
二、实验原理1.离散信源的基本概念、原理和信源熵相关计算公式产生离散信息的信源称为离散信源。
离散信源只能产生有限种符号,因此离散离散消息可以看成是一种有限个状态的随机序列。
随机事件的自信息量I(xi)为其对应的随机变量xi 出现概率对数的负值。
即: I (xi )= -log2p ( xi)随机事件X 的平均不确定度(信源熵)H(X)为离散随机变量 xi 出现概率的数学期望,即:2.离散二元信源的信息熵设信源符号集X={0,1} ,每个符号发生的概率分别为p(0)= p,p(1)= q,p+ q =1,即信源的概率空间为:则该二元信源的信源熵为:H(X) = - p*logp–q*logq = - p*logp –(1 - p)*log(1- p)即:H (p) = - p*logp –(1 - p)*log(1- p) 其中 0 ≤ p ≤13.MATLAB二维绘图用matlab 中的命令plot( x , y) 就可以自动绘制出二维图来。
例:在matlab 上绘制余弦曲线图,y = cos x ,其中 0 ≤ x ≤ 2 。
>>x =0:0.1:2*pi; %生成横坐标向量,使其为 0,0.1,0.2,…,6.2>>y =cos(x ); %计算余弦向量>>plot(x ,y ) %绘制图形4.MATLAB求解离散信源熵求解信息熵过程:1) 输入一个离散信源,并检查该信源是否是完备集。
熵函数实验报告
一、实验目的1.掌握MATLAB 软件的使用,以及其设计流程;2.掌握熵函数的实现方法;3.用MATLAB 语言设计熵函数的实现方法。
二、实验仪器或设备装MATLAB 软件的微机一台 三、总体设计 (一) 设计原理信源熵是信源不确定度的一个度量,其表示式如下1()()log ()ni i i H X p x p x ==-∑(二) 设计流程图1 流程图 四、实验步骤(包括主要步骤、代码分析等) (一)主要步骤1.打开MATLAB 集成调试软件2.单击“File ”-“New ”,新建一个.M 文件,命名为“h ”。
3.保存后运行。
4.在MATLAB 的主窗口输入p=[0.2 0.3 0.5]按Enter 后,输入H(p)再按Enter ,即可出现实验结果。
5.观察到实验结果为ans =1.48556.并分析实验结果 (二)主要代码分析function H=H(p)if((p>=0)&(p<=1)) %如果01p ≤≤,执行下列语句 P0=sum(p); %P0为各概率之和if (P0==1) %如果P0=1执行下列语句 H=-sum(p.*log2(p)); elsedisplay('defult') %P0为各概率之和不为1,输出defult end elsedisplay('defult') %如果不是01p ≤≤,输出defult end五、结果分析与总结通过本次实验,我进一步理解了熵函数的意义,通过MATLAB 编程,我进一步理解了熵函数的是对信源不确定度的度量。
但是,我发现自己在MATLAB 编程上还存在很大的欠缺,以后要加强在这方面的练习。
教师签名:年 月 日。
绘制二元熵函数曲线
课程设计任务书2011—2012学年第一学期专业:通信工程学号:100310012 姓名:蒲佳佳课程设计名称:信息论与编码课程设计设计题目:绘制二元熵函数曲线一.设计目的1.巩固所学的理论知识。
2.提高综合运用所学理论知识独立分析和解决问题的能力。
3.更好地将理论与实践相结合。
4.掌握、理解熵函数表达式及其性质。
5.熟练使用MATLAB语言进行编程实现。
二.设计内容1.在理解熵函数的定义基础上,准备一组数据,计算H(p)。
2.绘制与分析曲线图。
三.设计要求1.认真查阅相应资料掌握Matlab绘图方法。
2.查阅资料,理解实验原理。
3.认真编写课程设计四.设计条件计算机、MATLAB语言环境五、参考资料[1]邓家先信息论与编码课程教学改革撂讨 [期刊论文] -电气电子教学学报2007(02)[2]李正权.潘立兵.李琳《信息论与编码》研究性教学初步探讨2008(04)指导教师(签字):教研室主任(签字):批准日期:年月日摘要这次课程设计介绍了基于MATLAB的对熵函数的绘制设计,并使之实现的过程。
理解与掌握课程中的基本概念、基本原理、基本分析方法,利用Matlab 软件绘制。
自信息量是针对信源的单个符号而言的,而符号是随机发生的,因此单个符号的不确定性不足于代表信源的不确定性性质,为此,可对所有符号的自信息量进行统计平均,从而得到平均不确定性。
此外,熵是自信息量的统计平均,因此单位与自信息量的单位相同,与熵公式中所用对数的底有关: bit/符号、nat/符号、dit/符号、r进制单位/符号本课程设计介绍了在MATLAB环境中如何采集语音信号和语音信号采集后的文档处理方法绘制函数,利用MATLAB的语言进行编写,并通过实例分析了二元熵函数曲线。
关键词:MATLAB;二元熵函数曲线目录1课程描述 (1)2设计原理 (1)3设计过程 (2)3.1软件介绍 (2)3.2设计内容 (3)3.3设计步骤 (4)总结 (5)参考文献 (6)1课程描述自信息量是针对信源的单个符号而言的,而符号是随机发生的,因此单个符号的不确定性不足于代表信源的不确定性性质,为此,可对所有符号的自信息量进行统计平均,从而得到平均不确定性。
信息论与编码实验报告教材
实验一 绘制二进熵函数曲线(2个学时)一、实验目的:1. 掌握Excel 的数据填充、公式运算和图表制作2. 掌握Matlab 绘图函数3. 掌握、理解熵函数表达式及其性质二、实验要求:1. 提前预习实验,认真阅读实验原理以及相应的参考书。
2. 在实验报告中给出二进制熵函数曲线图三、实验原理:1. Excel 的图表功能2. 信源熵的概念及性质()()[]()[]())(1)(1 .log )( .)( 1log 1log )(log )()(10 , 110)(21Q H P H Q P H b nX H a p H p p p p x p x p X H p p p x x X P X i i i λλλλ-+≥-+≤=--+-=-=≤≤⎩⎨⎧⎭⎬⎫-===⎥⎦⎤⎢⎣⎡∑单位为 比特/符号 或 比特/符号序列。
当某一符号xi 的概率p(xi)为零时,p(xi)log p(xi) 在熵公式中无意义,为此规定这时的 p(xi)log p(xi) 也为零。
当信源X 中只含有一个符号x 时,必有p(x)=1,此时信源熵H (X )为零。
四、实验内容:用Excel 和Matlab 软件制作二进熵函数曲线。
根据曲线说明信源熵的物理意义。
(一) Excel具体步骤如下:1、启动Excel 应用程序。
2、准备一组数据p 。
在Excel 的一个工作表的A 列(或其它列)输入一组p ,取步长为0.01,从0至100产生101个p (利用Excel 填充功能)。
3、取定对数底c,在B列计算H(x) ,注意对p=0与p=1两处,在B列对应位置直接输入0。
Excel中提供了三种对数函数LN(x),LOG10(x)和LOG(x,c),其中LN(x)是求自然对数,LOG10(x)是求以10为底的对数,LOG(x,c)表示求对数。
选用c=2,则应用函数LOG(x,2)。
在单元格B2中输入公式:=-A2*LOG(A2,2)-(1-A2)*LOG(1-A2,2)双击B2的填充柄,即可完成H(p)的计算。
实验一:绘制信源熵函数曲线
信息与通信工程学院实验报告(软件仿真性实验)课程名称:信息论基础实验题目:绘制信源熵函数曲线指导教师:毛煜茹班级:15050541学号:19 学生姓名:王宇一、实验目的和任务掌握离散信源熵的原理和计算方法。
熟悉matlab软件的基本操作,练习应用matlab软件进行信源熵函数曲线的绘制。
理解信源熵的物理意义,并能从信源熵函数曲线图上进行解释其物理意义。
二、实验内容及原理2.1实验内容:用matlab软件绘制二源信源熵函数曲线。
根据曲线说明信源熵的物理意义。
2.2实验原理:(1)离散信源相关的基本概念、原理和计算公式产生离散信息的信源称为离散信源。
离散信源只能产生有限种符号。
假定X是一个离散随机变量,即它的取值范围R={x1,x2,x3,…}是有限或可数的。
设第i个变量xi发生的概率为p i=P{X=x i}。
则:定义一个随机事件的自信息量I(x i)为其对应的随机变量x i出现概率对数的负值。
即:I(xi )= -log2p(xi)定义随机事件X的平均不确定度H(X)为离散随机变量x i出现概率的数学期望,即:∑∑-==i ii i i i x p x p x I x p X H )(log )()()()(单位为 比特/符号 或 比特/符号序列。
平均不确定度H (X )的定义公式与热力学中熵的表示形式相同,所以又把平均不确定度H (X )称为信源X 的信源熵。
必须注意以下几点:某一信源,不管它是否输出符号,只有这些符号具有某些概率特性,必有信源的熵值;这熵值是在总体平均上才有意义,因而是个确定值,一般写成H (X ),X 是指随机变量的整体(包括概率分布)。
信息量则只有当信源输出符号而被接收者收到后,才有意义,这就是给与信息者的信息度量,这值本身也可以是随机量,也可以与接收者的情况有关。
熵是在平均意义上来表征信源的总体特征的,信源熵是表征信源的平均不确定度,平均自信息量是消除信源不确定度时所需要的信息的量度,即收到一个信源符号,全部解除了这个符号的不确定度。
信息论与编码实验报告
信息论与编码实验报告实验⼀绘制⼆进熵函数曲线(2个学时)⼀、实验⽬的:1. 掌握Excel 的数据填充、公式运算和图表制作2. 掌握Matlab 绘图函数3. 掌握、理解熵函数表达式及其性质⼆、实验要求:1. 提前预习实验,认真阅读实验原理以及相应的参考书。
2. 在实验报告中给出⼆进制熵函数曲线图三、实验原理:1. Excel 的图表功能2. 信源熵的概念及性质()()[]()[]())(1)(1 .log )( .)( 1log 1log )(log )()(10 , 110)(21Q H P H Q P H b nX H a p H p p p p x p x p X H p p p x x X P X i i i λλλλ-+≥-+≤=--+-=-=≤≤?-===?∑单位为⽐特/符号或⽐特/符号序列。
当某⼀符号xi 的概率p(xi)为零时,p(xi)log p(xi) 在熵公式中⽆意义,为此规定这时的 p(xi)log p(xi) 也为零。
当信源X 中只含有⼀个符号x 时,必有p(x)=1,此时信源熵H (X )为零。
四、实验内容:⽤Excel 和Matlab 软件制作⼆进熵函数曲线。
根据曲线说明信源熵的物理意义。
(⼀) Excel具体步骤如下:1、启动Excel 应⽤程序。
2、准备⼀组数据p 。
在Excel 的⼀个⼯作表的A 列(或其它列)输⼊⼀组p ,取步长为0.01,从0⾄100产⽣101个p (利⽤Excel 填充功能)。
3、取定对数底c,在B列计算H(x) ,注意对p=0与p=1两处,在B列对应位置直接输⼊0。
Excel中提供了三种对数函数LN(x),LOG10(x)和LOG(x,c),其中LN(x)是求⾃然对数,LOG10(x)是求以10为底的对数,LOG(x,c)表⽰求对数。
选⽤c=2,则应⽤函数LOG(x,2)。
在单元格B2中输⼊公式:=-A2*LOG(A2,2)-(1-A2)*LOG(1-A2,2)双击B2的填充柄,即可完成H(p)的计算。
一绘制二元熵函数曲线报告
实验一绘制二元熵函数曲线实验报告一、实验目的1.熟悉MATLAB工作环境及工具箱2.理解熵函数表达式及其性质二、实验内容用MATLAB软件编程绘制二元熵函数曲线三、实验过程1.复习二元熵函数,理解二元信源的熵H(w)=-wlogw-(1-w)log(1-w)表达式。
2.熟悉MATLAB软件。
1)MATLAB的操作界面MATLAB操作界面主要分为:任务栏、命令窗、命令历史窗、当前目录浏览器、工作空间浏览器及一个“启动按钮”。
任务栏:位于软件的正上方。
各个菜单分别为:文件、编辑、视窗、调试、桌面、窗体、帮助这几个窗口,点击每个窗口可以选择需要的操作。
命令窗(Command Window):位于软件操作界面的右侧。
在此窗口里,可以输入各种指令、函数、变量表达式并进行各种操作。
该窗口用于输入命令并显示除图形以外的所有执行结果。
窗口中的“>>”为命令提示符,直接在其后面输入命令并按下回车键后,会出现计算结果在命令后面。
命令历史窗(Command History):位于软件操作界面的左下方。
这个窗口记录了命令窗口已经运行过的所有命令(指令、函数等),允许用户对这些命令进行选择、复制。
2)MATLAB的函数绘制二维图形最常用的就是plot函数,调用plot函数的三种形式:plot(x)、plot(x,y)、plot(x,y,’r:x’)。
还有就是如何添加横坐标和纵坐标标题的命令语句。
3.实验程序。
w=0.000001:0.0001:0.999999999 %定义w的取值范围y=-w.*log2(w)-(1-w).*log2(1-w) %定义二元熵函数的表达式plot(w,y,'r') %画出二元熵函数的曲线图xlabel('w') %x轴的名称ylabel('H(w)') %y轴的名称grid on %给图形加上网格title('二元熵函数H(w)') %函数曲线的名称运行结果如下:四、实验结果分析从图中可以看出熵函数的一些性质,如果二元信源的输出概率是1或0(即二元信源的输出是确定的),则该信源不提供任何信息。
实验一 信息熵与图像熵计算
实验一信息熵与图像熵计算(2 学时)一、实验目的1.复习MATLAB的基本命令,熟悉MATLAB下的基本函数;2.复习信息熵基本定义,能够自学图像熵定义和基本概念。
二、实验容1.能够写出MATLAB源代码,求信源的信息熵;2.根据图像熵基本知识,综合设计出MATLAB程序,求出给定图像的图像熵。
三、实验仪器、设备1.计算机-系统最低配置256M存、P4 CPU;2.MATLAB编程软件。
四实验流程图五实验数据及结果分析四、实验原理1.MATLAB中数据类型、矩阵运算、图像文件输入与输出知识复习。
2.利用信息论息熵概念,求出任意一个离散信源的熵(平均自信息量)。
自信息是一个随机变量,它是指某一信源发出某一消息所含有的信息量。
所发出的消息不同,它们所含有的信息量也就不同。
任何一个消息的自信息量都代表不了信源所包含的平均自信息量。
不能作为整个信源的信息测度,因此定义自信息量的数学期望为信源的平均自信息量:1( ) 1 ( ) [log ] ( ) log ( ) i n i i p a i H E p a p a X信息熵的意义:信源的信息熵H是从整个信源的统计特性来考虑的。
它是从平均意义上来表征信源的总体特性的。
对于某特定的信源,其信息熵只有一个。
不同的信源因统计特性不同,其熵也不同。
3.学习图像熵基本概念,能够求出图像一维熵和二维熵。
图像熵是一种特征的统计形式,它反映了图像中平均信息量的多少。
图像的一维熵表示图像中灰度分布的聚集特征所包含的信息量,令Pi表示图像中灰度值为i的像素所占的比例,则定义灰度图像的一元灰度熵为:2550 log i i i p p H图像的一维熵可以表示图像灰度分布的聚集特征,却不能反映图像灰度分布的空间特征,为了表征这种空间特征,可以在一维熵的基础上引入能够反映灰度分布空间特征的特征量来组成图像的二维熵。
选择图像的邻域灰度均值作为灰度2分布的空间特征量,与图像的像素灰度组成特征二元组,记为(i,j),其中i表示像素的灰度值(0<=i<=255),j表示邻域灰度(0<=j<=255),2 ( , ) / ij p f i j N上式能反应某像素位置上的灰度值与其周围像素灰度分布的综合特征,其中f(i,j)为特征二元组(i,j)出现的频数,N为图像的尺度,定义离散的图像二维熵为:2550 log ij ij i p p H构造的图像二维熵可以在图像所包含信息量的前提下,突出反映图像中像素位置的灰度信息和像素邻域灰度分布的综合特征。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
成绩
信息与通信工程学院实验报告
(软件仿真性实验)
课程名称:信息论基础
实验题目:绘制信源熵函数曲线指导教师:毛煜茹班级:学号:19 学生姓名:王宇
一、实验目的和任务
掌握离散信源熵的原理和计算方法。
熟悉matlab软件的基本操作,练习应用matlab软件进行信源熵函数曲线的绘制。
理解信源熵的物理意义,并能从信源熵函数曲线图上进行解释其物理意义。
二、实验内容及原理
实验内容:
用matlab软件绘制二源信源熵函数曲线。
根据曲线说明信源熵的物理意义。
实验原理:
(1)离散信源相关的基本概念、原理和计算公式
产生离散信息的信源称为离散信源。
离散信源只能产生有限种符号。
假定X是一个离散随机变量,即它的取值范围R={x1,x2,x3,…}是有限或可数的。
设第i个变量x i发生的概率为p i=P{X=x i}。
则:
定义一个随机事件的自信息量I(x i)为其对应的随机变量x i出现概率对数的负值。
即:
I(x i)= -log2p(x i)
定义随机事件X的平均不确定度H(X)为离散随机变量x i出现概率的数学期望,即:
∑∑
-
=
=
i i
i i
i i
x
p
x
p
x
I
x
p
X
H)
(
log
)
(
)
(
)
(
)
(
单位为比特/符号或比特/符号序列。
平均不确定度H(X)的定义公式与热力学中熵的表示形式相同,所以又把平均不确定度H(X)称为信源X的信源熵。
必须注意以下几点:
某一信源,不管它是否输出符号,只有这些符号具有某些概率特性,必有信源的熵值;
这熵值是在总体平均上才有意义,因而是个确定值,一般写成H(X),X是指随机变
量的整体(包括概率分布)。
信息量则只有当信源输出符号而被接收者收到后,才有意义,这就是给与信息者的信
息度量,这值本身也可以是随机量,也可以与接收者的情况有关。
熵是在平均意义上来表征信源的总体特征的,信源熵是表征信源的平均不确定度,平
均自信息量是消除信源不确定度时所需要的信息的量度,即收到一个信源符号,全
部解除了这个符号的不确定度。
或者说获得这么大的信息量后,信源不确定度就被
消除了。
信源熵和平均自信息量两者在数值上相等,但含义不同。
当某一符号x i的概率p(x i)为零时,p(x i)log p(x i) 在熵公式中无意义,为此规定这时的
p(x i)log p(x i) 也为零。
当信源X中只含有一个符号x时,必有p(x)=1,此时信源熵H
(X)为零。
例1-1,设信源符号集X ={0,1},每个符号发生的概率分别为p (0)=p ,p (1)=q ,p+ q =1,即信源的概率空间为
⎥⎦
⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡ 1 0q p P X 则该二元信源的信源熵为:
H (X ) = - p log p – q log q = - p log p – (1- p ) log (1- p)
即:H (p) = - p log p – (1- p ) log (1- p)
其中0 ≤ p ≤1
P =0时,H (0) = 0
P =1时,H (1) = 0
(2)MATLAB 二维绘图:
例对函数y = f (x )进行绘图,则用matlab 中的命令plot(x , y )就可以自动绘制出二维图来。
如果打开过图形窗口,则在最近打开的图形窗口上绘制此图;如果未打开图形窗口,则开一个新的图形窗口绘图。
例1-2,在matlab 上绘制余弦曲线图,y = cos x ,其中0 ≤ x ≤ 2。
>>x =0::2*pi ; %生成横坐标向量,使其为0,,,…,
>>y =cos(x ); %计算余弦向量
>>plot(x ,y ) %绘制图形 三、实验数据及程序代码
程序代码 p=::1;
h=-p.*log2(p)-(1-p).*log2(1-p);
plot(p,h);
title('二元熵函数曲线');
ylabel('H(p,1-p)')
实验数据
图二元熵函数曲线
四、实验数据分析及处理
从图中可以看出:如果二元信源的输出符号是确定的,即p=1或q=1,则该信源不提供任何信息;反之,当二元信源符号0和1以等概率发生时,信源熵达到最大值,等于1bit信息量。
五、实验结论与感悟(或讨论)
这次课程设计是用学过的信息论与编码为依据,用MATLAB 代码实现,通过这次课程设计,感触特别多,也学到了很多东西。
首先,为了完成这次的课程设计,翻阅了很多有关这次设计的参考书,对这些参考书的有关内容都做了认真的分析,了解了一些函
数的用法。
其次,通过本次课程设计,学习了信息熵有关的计算。
还加强了我们的动手能力和自觉性,巩固和运用在课程中所学的理论知识和实验技能,提高了自己的发现问题,分析问题和解决问题的能力。
再次,在做课程设计的过程中会遇到很多的困难,在困难面前不要放弃,只要有细心和耐心,坚持下去会达到想要的设计结果。