• 大小: 2KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-06-11
  • 语言: Matlab
  • 标签: 哈夫曼  matlab  程序  

资源简介

可以运行的哈夫曼matlab解码程序 -------------计算信源熵---------------- Hu=-f.*log(f); %信元熵计算公式 codeinfo.Hu=sum(Hu); fprintf('信源熵:%f\n',codeinfo.Hu); %-------------计算平均码长--------------- codeinfo.avecodelen = sum(f.*codelen); fprintf('平均码长:%f\n',codeinfo.avecodelen);

资源截图

代码片段和文件信息


load codestream.txt codestream -ascii;

%-------------计算信源熵----------------
Hu=-f.*log(f);                      %信元熵计算公式
codeinfo.Hu=sum(Hu);
fprintf(‘信源熵:%f\n‘codeinfo.Hu);
%-------------计算平均码长---------------
codeinfo.avecodelen = sum(f.*codelen);
fprintf(‘平均码长:%f\n‘codeinfo.avecodelen);
%-------------计算压缩效率---------------
codeinfo.zipeff = codeinfo.Hu/codeinfo.avecodelen;
fprintf(‘压缩效率:%f\n‘codeinfo.zipeff);
%-------------计算压缩率-----------------
codeinfo.zipration = length(codestream)/(8*X*Y);
fprintf(‘压缩率:%f\n‘codeinfo.zipration);
fprintf(‘\n‘);

%-----------------------解码------------------------
decode=[];
    nodeindex=index-1;
    wb2 = waitbar(0‘解码中,请稍候...‘‘Name‘‘哈夫曼解码‘);     %进度条
    i=1;
    while i<=l

评论

共有 条评论