Problem with imhist after modify image
Mostrar comentarios más antiguos
Hello, Why After histogram in 0 to 1 range?

I=imread('cameraman.tif');
figure
subplot(2,2,1);
imshow(I);
title('Original');
subplot(2,2,2);
imhist(I);
title('Original Histogram');
I=double(I);
fis=readfis('FIS4');
[m n]=size(I);
for i=1:m
for j=1:n
I(i,j)=evalfis(I(i,j),fis);
end
end
subplot(2,2,3);
imshow(uint8(I));
title('After');
subplot(2,2,4);
imhist(I);
title('After Histogram');
1 comentario
Zahra Saman
el 12 de Abr. de 2018
Plz help me to remove this error pleasw
Respuestas (2)
Ahmet Cecen
el 11 de Mzo. de 2016
For now use:
imhist(uint8(I))
That will get your work done, although it puzzles me why that is necessary, because imhist normally accepts double.
4 comentarios
Dani D
el 11 de Mzo. de 2016
Ahmet Cecen
el 11 de Mzo. de 2016
... and I am telling you to use it for imhist as well, it will make it work...
rjvyas
el 6 de Oct. de 2017
I had the same problem and using imhist(uint8(I)) worked! Thank you
Image Analyst
el 6 de Oct. de 2017
You can also use histogram:
histogram(I);
which doesn't require conversion to integer.
Julie
el 11 de Mzo. de 2016
0 votos
It changed the range, sometimes it does grayscale in 0-255, and sometimes it does it in 0-1. It won't make a difference to your image. To fix your histogram use
imhist(I.*255);
3 comentarios
Dani D
el 11 de Mzo. de 2016
Zahra Saman
el 12 de Abr. de 2018
please help me in this problem
Zahra Saman
el 12 de Abr. de 2018
Categorías
Más información sobre Contrast Adjustment en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!