实验二:算术编码及MATLAB实现.docxVIP

  • 60
  • 0
  • 约2.06千字
  • 约 6页
  • 2020-11-09 发布于天津
  • 举报
2 2 武夷学院实验报告 课程名称: 多媒体通信技术 项目名称: 算术编码及 MATLAB实现 姓名: 专业: 通信工程 班级: 学号: 同组成员 无 、实验准备 1: 1. 实验目的 1) 掌握算术编码基本原理及其实现步骤。 2) 通过 MATLAB 实现算术编码。 2. 实验环境 机房 、实验过程记录 2: 1、实验原理 算术编码的编码对象是一则消息或一个字符序列, 其编码思路是将消息或字符序列表示 成 0 和 1 之间的一个间隔上的一个浮点小数。 在进行算术编码之前, 需要对字符序列中每个字符的出现概率进行统计, 根据各字符出 现概率的大小,将每个字符映射到 [0 ,1]区间上的某个子区间中。然后,在利用递归算法, 将整个字符序列映射到 [0,1 ] 区间上的某个间隔中。在进行编码时,只需从该间隔中任选一 个小数,将其转化为二进制数。 符号序列越长,编码表示他的间隔就越小,表示这个间隔所需的二进制位数就越多,编 码输出的码字就越长。 算术编码规则 在进行编码过程中,随着信息的不断出现,子区间按下列规律减小。 ·新子区间左端 =前子区间左端 +当前子区间左端×前子区间长度。 ·新子区间长度 =前子区间长度×当前子区间长度 2、实验代码 (附上相应的程序代码) function arithmeticcoding S = input(请输入信源符号 =); P = input(请输入信源概率向量 P=); str = input(输入编码的字符串 =); 注: 1、实验准备部分包括实验环境准备和实验所需知识点准备。 2、若是单人单组实验,同组成员填无。 注:实验过程记录要包含实验目的、实验原理、实验步骤,页码不够可自行添加 l = 0; r = 1; d = 1; n = length(str); n_S = length(P); %********** for i=1:n 处理第一个字符 ***********% flag = 0; for k = 1:n_S if str(i)==S(k) m=k; flag =1; break; end end if flag ==0 error(非信源字符 ); end %********* 当前单个字符的左、右端以及长度处理 **************% pl = 0; pr = 0; for j = 1:m-1 pl = pl + P(j); %左端 end pr = pl+P(m); %右端 pd = pr-pl; %子区间长度 %********* 新子区间的左、右边界以及长度处理 **************% if i == 1 %首字符 l = pl; r = pr; d = pd; else % 算术编码规则 l = l+d*pl; d = d*pd; r = l+d; end strl = strcat(第,int2str(i),个符号的间隔左右边界: ); disp(strl); format long; disp(l);disp(r); end strl = strcat(符号的间隔左右边界: ); disp(strl); format long; disp(l);disp(r); end 3、实验记录 (1) 输入多组信源数据进行测试分析; 2) 记录输入各符号时,产生的新子区间,并与理论结果比较分析 2 2、分组实验需包含同组讨论内容。 诸?ft入信源苻W QCiouK i斉榆入信源稠率向≡P-[0. 1 0. 3 0. 2 0.2 0. 1 0. 1] 愉入仮码的宁符串=eauiΓ 第1个符号的间隔左右边界; 0.IOOOOOooooOooo 0.400COOOOOOOOOO 第2个?(MlQiua左右血畀: 0.IoOOOOoOoOoOOU 0.13000000000000 第3个苻号的间隔左右边畀: U? 1240OoOOoOOOOo 0? 127COOOOoOoOoo 弟q个苻号的同隔左右边畀^ 0?Oc)OoO 0.12580000000000 第5个符号的问隔左右边界: 0.12MCoOoOoOOoO 0.12680000000000 符号的间RiS左右边界: 0.12574000000000 U? 12bbUUUUUUUUUU 三、实验小结: 注:本次的实验内容比较简单,在实验的过程中,老师要求我们要掌握每一步编码的由来 ,还要使程序能够显示每一个子区间范围,这就增加了实验的难度,但是在实验的过程 中会发现只要认真的研究程序,按照老师教的步骤验证每一步得到的结果,还是能够教 容易的完成实验的。所以在实验的过程中我们一定要认真听讲,不懂的及时和老师沟通 ,才能学到更多的东西。 注: 1、实验小结应包含实验所需知识点和实验方

文档评论(0)

1亿VIP精品文档

相关文档