如何正确应用霍夫曼编码?

时间:2014-12-10 20:28:52

标签: matlab

我将量化后的锯齿形函数应用于图像块,我想计算该块的霍夫曼编码。我知道输入参数必须是一个向量,并且应该计算直方图。

我编写了以下代码,但它似乎不起作用:

[M N]=size(yce);
fun1=zigzag(yce);
count1 = imhist(fun1);
p1 = count1/ numel(fun1);
[dict1,avglen1]=huffmandict(count1,p1); 
comp1= huffmanenco(fun1,dict1); 
Im1 = huffmandeco(comp1,dict1);

我使用huffmandict函数收到以下错误:

Error in project at 65
[dict1,avglen1]=huffmandict(count1,p1); 
Source symbols repeat.

zigzag.m是matlab文件中的一个函数。它将一个矩阵转换为一个向量,从而消除了长序列的零。

0 个答案:

没有答案