文档介绍:实验3 率失真函数计算的程序设计
一、实验问题
假定一个离散无记忆信源(DMS)的信源符号集为Au={1,2,.。。,r},其概率分布为p(u);信宿符号集为Av={1,2,....,s}。而失真侧度矩阵为一个r´s维矩阵D=[dij].利用Matlab画出率失真函数R(d)的曲线图。
二、实验环境
计算机、Windows 2000 或以上、Matlab
三、实验目的
了解率失真函数性质、意义。
掌握简单的率失真函数计算方法;
掌握使用Matlab实现一般率失真函数的计算方法;
掌握Matlab求解非线性方程组的方法。
四、实验内容
从理论上计算r=s=2。p(u=1)=p,p (u=2)=1—p;d=[0,1;1,0]的率失真函数R(d)。
对一般性的DMS信源,计算率失真函数R(d)的理论公式进行推导。
找出比较合适的方程求解方法.
使用编制Matlab编制程序求解一般的率失真函数R(d)。
给定r=s=2.p(u=1)=,p=(u=2)=0。6;d=[0,1;1,0],测试程序,即比较程序运行结果与理论计算结果,
改变参数,画出函数图。
显示在计算精度为0。000001以及运行计算的配置(CPU型号、CPU的频率、内存的)的条件下,系统循环次数、累计计算时间、平均每次循环所用时间等。
五、实验要求
提前预****实验,认真阅读实验原理。
认真高效的完成实验,实验过程中服从实验室管理人员以及实验指导老师的管理.
将实验报告写成论文的形式。要求有:
问题的提出:包括R(d)的物理意义、用途(可以举出具体的用途)、计算的困难性等。
解决问题的原理方法:包括所有的公式推导的细节.
解决问题的具体方法:包括程序框图及Matlab源程序.
实验结果:利用你的程序给出不同参数得到的实验结果,包括实验曲线图、程序循环次数、累计计算时间、平均每次循环所用时间等.
结果分析:包括R(d)的性质、程序收敛情况、程序改进的方向等。
每个同学必须独立完成实验(不能抄袭,否则两人均为零分),实验成绩是该门课程成绩的主要依据.
六、实验原理
ﻩ1。R(d(S))的表示方法
计算dmin和dmax是很容易的。
; .当d³dmax时,R(d)=0.
当dmin £d£dmax时,R(d)=min{I(U;V):E(d)= d}。
在数学上,就是在约束条件:
(1)
(2)
的约束下求平均信息量
的条件极小值。为此引入待定常数S和mu(u=1,2,.。.,r),并作辅助函数
(3)
其中
由得,
为方便引入参数,则有
(4)
显然(4)提供r´s个方程,(2)提供r个方程,而(1)提供1各方程,共rs+r+1个方程;而有r´s个未知数p(v|u)、r个未知数lu 及未知数S,共rs+r+1未知数,,我们保留S作为参数。这样得到: