首页| JavaScript| HTML/CSS| Matlab| PHP| Python| Java| C/C++/VC++| C#| ASP| 其他|
购买积分 购买会员 激活码充值

您现在的位置是:虫虫源码 > Matlab > 使用蒸汽吞吐男人编码的图像压缩

使用蒸汽吞吐男人编码的图像压缩

资 源 简 介

函数代码 = huffman(p) 哈夫曼 %生成符号源变量长度的哈夫曼代码。 代码 %= HUFFMAN(P) 返回一个哈夫曼代码作为二进制字符串的单元格 %数组的代码输入的符号概率矢量体育在代码中的每个单词 %对应于其概率是在相应的指数符号 %的体育 % %检查输入的参数的合理性。 error(nargchk(1,1,nargin)) ; 如果 (ndims(p) ~ = 2) | |(min(size(p)) > 1) | |~isreal(p) | |~isnumeric(p) 错误 ("P 必须是一个实数值向量") ; 结束 %全局变量生存所有递归函数 "makecode" 的 全局代码 CODE=cell(length(p),1) ;%Init 全球太阳能电池阵列 如果 length(p) > 1%时多个符号...... p = p/sum(p) ;%规范化输入的概率 s = reduce(p) ;%做哈夫曼源符号削减 makecode (s,[]) ;%以递归方式生成的代码 其他 代码 = {"1"};%其他、 微不足道的一个符号案例 ! 结束 %……………………………………………………………….% 函数 s = reduce(p) ; %在 MATLAB 的单元格结构中通过创建一个哈夫曼源减少树 减少 %执行源符号减少,直到只有两个 剩余的 %符号。 s = cell(length(p),1) ; %生成符号节点 1 2、 3,开始树...到引用 %符号的概率。 为我 = 1:length(p) s {i} = i ; 结束 同时 numel(s) > 2 [p,我] = sort(p);%排序符号概率 p(2) = p(1) + p(2) ;%合并

文 件 列 表

huf test
huff.m
huffman.m
VIP VIP
0.176210s