《信息论和编码课程设计汇本.docx》由会员分享,可在线阅读,更多相关《信息论和编码课程设计汇本.docx(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、电气工程与自动化学院School of Electrical Engineering and Automation信息论与编码课程设计报告设计题目:统计信源炳、香农编码与费诺编码专业班级:XXXXXXXXXXXX姓 名:XXXXXXXXXXXX学号:XXXXXXXXXXXX指导老师:XXXXXXXXXXXX成绩:时间:2015年3月31日目录一、设计任务与要求2二、设计思路2三、设计流程图5四、程序及结果7五、心得体会11六、参考文献12附录13一、设计任务与要求1 .统计信源炳 要求:统计任意文本文件中各字符(不区分大小写)数量, 计算字符概率,并计算信源炳。2 .香农编码要求:任意输入消息
2、概率,利用香农编码方法进行编码,并 计算信源炳和编码效率。3 .费诺编码要求:任意输入消息概率,利用费诺编码方法进行编码,并 计算信源煽和编码效率。二、设计思路1、统计信源崎:统计信源焰就是对一篇英文文章中的i种字符(包括标 点符 号及空格,英文字母不区分大小写)统计其出现的次数 coun (t) i , 然后计算其出现的概率P(i),最后由信源炳计算公式:H(x) P(Xi)log P(Xi)n1算出信源炳H(x)o所以整体步骤就是先统计出文章中总的字符数,然后统计每种字符的数目,直到算出所有种类的字符的个数,进而 算出每种字符的概率,再由信源熠计算公式计算出信源烯。在这里我选择用Matla
3、b来计算信源烯,因为Matlab中系统自带了许多文件操作和字符串操作函数,其计算功能强大,所以计算信源炳很是简单。2、香农编码信源编码模型:信源编码就是从信源符号到码符号的一种映射f,它把信源输出的符号a变换成码元序列人f: ai Xi,i 1,25.,qNS S ai,,q 信源Xi信源编码器码兀1,2,aX . X Xi,,Xr 石.、N次扩展信源无失真编码器凡是能载荷一定的信息量,且码字的平均长度最短,可分离的变长码的码字集合都可以称为最佳码。为此必须将概率大的信 息符号编以短的码字,概率小的符号编以长的码字,使得平均码字长度最短。能获得最佳码的编码方法主要有:香农(Shannon )、
4、费诺(Fano)、哈夫曼(Huffman )编码等。香农第一定理:离散无记忆信源为S S P(S) S2 SqRP6)p(Sq)炳H(S),其N次扩展为SNR12P(l)P(2)qP( q)烯为H(SN),码符号集为x凶,,,。先对信源SN进行编码,总可以找到一种编码方法,构成唯可译码,使S中每个信源符号所需的平均码长满足H(S) 1 Ln H(S)log r N Nlog r且当n时有Im蓉 H(s:og Hr(s)l是平均码长l q i 1是对应的码字长度。香农编码方法:将信源消息符号按其出现的概率大小依次排列:P-P2 .P(2 )确定满足下列不等式整数码长Ki为lb(p) Ki lb(
5、pj 1(3)为了编成唯一可译码,计算第i个消息的累加概率为i 1R P(aQk 1(4)将累加概率R变成二进制数。(5)取R二进制数小数点后K位即为该消息符号的二进制码字3、费诺编码方法Pi p2.Pn将信源消息符号按其出现的概率大小依次排列:(2 )将依次排列的信源符号按概率值分为两大组,使两个组的概率之 和近似相同,并对各组赋予一个二进制码元“0”和“1 55o(3)将每一大组的信源符号再分为两组,使划分后的两个组的概率之和 近似相同,并对各组赋予一个二进制符号“0 ”和“1 ”。(4)如此重复,直至每个组只剩下一个信源符号为止。(5 )信源符号所对应的码字即为费诺码。三、设计流程图1、统计信源嫡用Mat I ab读入一段英文计算这段文字的字符总数unm统计每种字符的个数n (i)算出每种字符的概率p(i)n由信源炳计算公式H(x) p(Xi)log p(X)计算出信源烯n 12、香农编码开始