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

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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

专业班级:

学号:

学生姓名:

指导老师:

教师评分:

2015年3月24日

目录

一、设计任务与要求 (3)

二、设计思路 (3)

三、设计流程图 (4)

四、程序运行及结果 (5)

五、心得体会 (6)

参考文献 (7)

附录:源程序 (7)

一、设计任务与要求

1、统计信源熵

要求:统计任意文本文件中各字符(不区分大小写)数量 ,计算字符概率 ,并计算信源熵。 2、香农编码

要求:任意输入消息概率 ,利用香农编码方法进行编码 ,并计算信源熵和编码效率。

二、设计思路

1、统计信源熵

在VC++环境中进行编程:

(1)打开一篇文章 ,将26个英文字母作为信源。

(2)计算每个字母出现的次数(不区分大小写) ,再通过计算信源总大小来计算在本篇文章中每个字母出现的频率。 (3)通过信源熵计算公式来计算信源熵。

2、香农编码设计思路

香农编码主要是通过一系列步骤支出平均码长与信源之间的关系 ,同时是平均码长达到极限值 ,即选择的每个码字的长度k 满足下式: I (x )≤k <I(x)+1 具体步骤如下:

a 、将信源消息符号按其出现的概率大小依次排列为:p1≥p2≥…≥pn

b 、确定满足下列不等式的整数码长k 为:-lb(pi) ≤k ≤-lb(pi)+1

c 、为了编成唯一可译码 ,计算第i 个消息的累加概率:pi =∑p (ak )i−1k=1

d 、将累加概率Pi 变换成二进制。

e 、取Pi 二进制数的小数点后Ki 位即为该消息符号的二进制码字。

在香农编码中对于求解编码效率主要是依靠这个公式:R=H(X)/K,其中k =∑p (ai )ki n i=1

对于求解信源熵主要依靠公式:H (X )=−∑p (xi )logp(xi)n

i=1

三、设计流程图

1、统计信源熵:

2、香农编码:

四、程序运行及结果

1、统计信源熵:

2、香农编码:

五、心得体会

通过本次课程设计的练习,进一步巩固了信源熵、信源编码的基本原理,基本上掌握了编码方法,对编程软件的使用得到了很大的熟悉,有效增强了自主设计、编程调试的开发能力,同时也大大提高了本身的实践创新能力。

课程设计是培养学生综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。在这个过程中不仅锻炼了我们坚持不懈的毅力,更磨练了一个队伍的团结互助的精神,只有大家一起努力才能将课程设计圆满的完成,设计中遇到和解决问题的过程对我们的探索解决问题能力有了一个提高,对我们以后的学习有很大的好处。

这次我们主要做了统计信源熵和香农编码的题目,这不仅需要对年前学的信息论与编码有一个很好的回顾与掌握,还要对一年前学的C语言程序设计有一个基本的了解,这让我们又对C语言编程有了一个重新的复习,知识也得到了较好的巩固。在此过程中我们我们充分认识到了团队协作的重要性,也体验到了问题得到解决的喜悦感,成就感。在以后的学习中要坚持不懈,善于创新和发现,提高自己的思维和动手能力,成为一个高素质人才。

相关文档
最新文档