huffman encoding for image compression

i am using the following code for huffman encoding-
img = imread('xyz.jpg');
Image = rgb2gray(img);
Image = Image(:);
[N M] = size(Image)
Count = zeros(256,1)
for i = 1:N
for j = 1:M
Count(Image(i,j)+1)=Count(Image(i,j)+1)+1;
end
end
prob = Count/(M*N)
symbols = 1:256;
[dict,avglen] = huffmandict(symbols,prob);
comp = huffmanenco(Image,dict);
but i am getting the following error-
Error using huffmanenco (line 86)
The Huffman dictionary provided does not have the codes for all the input signals.
Error in Untitled2 (line 14)
comp = huffmanenco(Image,dict);
please suggest the required changes

댓글 수: 3

Francesco Grauso
Francesco Grauso 2018년 11월 9일
Replace: symbols = 1:256;
with: symbols = 0:255;
clc;
clear all;
close all;
warning off;
x = imread('brain.jpg');
img=imresize(x,[256 256]);
Image = rgb2gray(img);
%Image = Image(:);
[M N] = size(Image)
Count = 0:255;
for i = 1:M
for j = 1:N
Count(Image(i,j)+1)=Count(Image(i,j)+1)+1;
end
end
prob = Count/(M*N);
symbols = 0:255;
[dict,avglen] = huffmandict(symbols,prob);
comp = huffmanenco(Image,dict);
figure,imshow(comp); title('encoded.JPG');
Error using huffmandict (line 107)
The sum of elements of the probability
vector must be 1
Error in huffman (line 19)
[dict,avglen] =
huffmandict(symbols,prob);
I am getting this error .How can I solve this?

댓글을 달려면 로그인하십시오.

답변 (3개)

reb rebz
reb rebz 2019년 3월 22일

0 개 추천

img = imread('xyz.jpg');
Image = rgb2gray(img);
Image = Image(:);
[N M] = size(Image)
Count = zeros(256,1)
for i = 1:N
for j = 1:M
Count(Image(i,j)+1)=Count(Image(i,j)+1)+1;
end
end
prob = Count/(M*N)
symbols = 0:255;
[dict,avglen] = huffmandict(symbols,prob);
comp = huffmanenco(Image,dict)
satyendra kumar
satyendra kumar 2019년 3월 23일

0 개 추천

i am using the following code for huffman encoding-
clear all
clc
A=imread('cameraman.tif');
A1=double(A(:));
[p,symbols]=hist(A1,unique(A1));
p=p/sum(p);
[dict,avglen] = huffmandict(symbols,p);
comp = huffmanenco(A1,dict);
SS
SS 2019년 10월 11일

0 개 추천

can i use huffman coding for both lossy and lossless image compression??

카테고리

도움말 센터File Exchange에서 Denoising and Compression에 대해 자세히 알아보기

질문:

2018년 10월 9일

댓글:

2022년 12월 30일

Community Treasure Hunt

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

Start Hunting!

Translated by