How to implement the Huffman codes to voice signal?
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Hi,
I have a voice signal that I have quantized and now I have to employ Huffman coding to the quantized samples. I have tried to implement the "huffmanenco" but I keep getting the same error message, I would be glad if someone can help me out.
Here are the codes that I have written:
...
%Quantization
partition=[-0.2:0.04:0.2];
codebook=[-.24:0.04:-0.2];
[index,quants] = quantiz(myRecording,partition,codebook)
plot(quants)
%Probability distribution
prob_y = arrayfun(@(x)length(find(quants==x)), unique(quants)) / length(quants)
%Huffman Encoding
symbols = [1:17]; % Distinct symbols that data source can produce
p = prob_y; % Probability distribution
[dict,avglen] = huffmandict(symbols,p); % Create dictionary.
comp = huffmanenco(quants,dict);
Error: The Huffman dictionary provided does not have the codes for all the input signals.
Thanks in advance
0 Kommentare
Antworten (2)
Walter Roberson
am 11 Jan. 2014
quants is the floating point values, the codebook indexed by the appropriate index. If you want the symbol range to be 1:17 then you want to be passing in "index" not quants.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Source Coding finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!