how to get the compressed image from huffman

1 view (last 30 days)
i am using huffman dictioanry to encode n decode
how do i get the compressed image entropy, average length
this is my code
clc
clear all
inputImage=imread('cameraman.bmp');
[row col] =size(inputImage);
quantizedValue=10;
QuantizedImage= inputImage/quantizedValue;
QuantizedImage=round(QuantizedImage);
%QuantizedImage=uint8(QuantizedImage);
%ImageArray=reshape(QuantizedImage,[1 row*col]);
GrayValueDict=(1:256);
ProbDict=zeros(1,256);
%{
for(i=0:255)
GrayValueDict(i+1)=i;
end
%}
for(i=0:255)
for(r=1:row)
for(c=1:col)
if(i==QuantizedImage(r,c))
ProbDict(i)=ProbDict(i)+1;
end
end
end
end
ProbDict= ProbDict/(row*col) ;
%ProbDict= round(ProbDict,3);
dict = huffmandict(GrayValueDict,ProbDict,5);
sig=reshape(QuantizedImage,[1 row*col]);
hcode = huffmanenco(sig,dict);
dhsig = huffmandeco(hcode,dict);
out= reshape(dhsig, [256 256]);
out=out*10;
subplot(1,2,1);
imshow(inputImage,[]);
subplot(1,2,2);
imshow(out,[]);
isequal(sig,dhsig);

Answers (0)

Categories

Find more on Denoising and Compression in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!