Matlab 用于jpeg压缩的哈夫曼编码
我正在研究jpeg压缩,在这里我使用哈夫曼编码和解码,我不想使用内置函数(哈夫曼,哈夫曼,哈夫曼)来代替我可以使用的内置函数。这里编码的是超长编码Matlab 用于jpeg压缩的哈夫曼编码,matlab,image-processing,huffman-code,Matlab,Image Processing,Huffman Code,我正在研究jpeg压缩,在这里我使用哈夫曼编码和解码,我不想使用内置函数(哈夫曼,哈夫曼,哈夫曼)来代替我可以使用的内置函数。这里编码的是超长编码 HEAD=0; POS=0; S_=size(encoded); for i=1:S_(2) if (POS~=0) S=size(HEAD); F=0; k=1; while (F==0 && k<=S(2)) if (encoded(i)==HE
HEAD=0;
POS=0;
S_=size(encoded);
for i=1:S_(2)
if (POS~=0)
S=size(HEAD); F=0;
k=1;
while (F==0 && k<=S(2))
if (encoded(i)==HEAD(k)) F=1; end;
k=k+1;
end;
else F=0;
end;
if (F==0)
POS=POS+1;
HEAD(POS)=encoded(i);
end;
end;
%Compute probability for symbols%
S_H=size(HEAD);
Count(1:S_H(2))=0;
for i=1:S_H(2)
for j=1:S_(2)
if (encoded(j)==HEAD(i))
Count(i)=Count(i)+1;
end;
end;
end;
Count=Count./S_(2);
%Sort accordng to maximum number%
for i=1:S_H(2)-1
for j=i+1:S_H(2)
if (Count(j)>Count(i))
T1=Count(i); Count(i)=Count(j); Count(j)=T1;
T1=HEAD(i); HEAD(i)=HEAD(j); HEAD(j)=T1;
end;
end;
end;
[dict,avglen] = huffmandict(HEAD,Count); % Create dictionary.
comp = huffmanenco(encoded,dict); % Encode the data.
end
end
decode=huffmandeco(comp,dict);
HEAD=0;
POS=0;
S=大小(编码);
对于i=1:S(2)
if(POS~=0)
S=尺寸(头部);F=0;
k=1;
而(F==0&&kCount(i))
T1=计数(i);计数(i)=计数(j);计数(j)=T1;
T1=水头(i);水头(i)=水头(j);水头(j)=T1;
结束;
结束;
结束;
[dict,avglen]=huffmandict(人头,计数);%创建字典。
comp=huffmanenco(编码,dict);%对数据进行编码。
结束
结束
解码=赫夫曼德科(comp,dict);
闻起来像家庭作业你的具体问题是什么?