哈夫曼编码是一种可变长无损编码,应用范围广。这里介绍利用matalb实现哈夫曼编码方法。matalb中带有相关函,下面一一介绍:
ENCO = huffmanenco(SIG, DICT) : 哈夫曼编码函数,SIG为输入编码信号,DICT为编码字典,由函数huffmandict()生成;
DECO = huffmandeco(COMP, DICT) :哈夫曼解码函数,COMP为哈夫曼编码向量,即上面的ENCO;
DICT = huffmandict(SYM, PROB) : 哈夫曼字典生成函数,SYM为信源符号向量,包含信息中所有符号,PROB为相应符号出现的概率;
代码实现:
clear;
clear all;
I = imread('F:\Myfile\Matlab\Test_picture\1_1.jpg');
[M,N] = size(I);
I1 = I(:);
P = zeros(1,256);
%获取各符号的概率;
for i = 0:255
P(i+1) =

&spm=1001.2101.3001.5002&articleId=48750295&d=1&t=3&u=af97f2cc6cc7468c8a43e035878e0f6e)
2万+

被折叠的 条评论
为什么被折叠?



