Problem with imhist after modify image

4 visualizzazioni (ultimi 30 giorni)
Dani D
Dani D il 11 Mar 2016
Commentato: Zahra Saman il 12 Apr 2018
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');

Risposte (2)

Ahmet Cecen
Ahmet Cecen il 11 Mar 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 Commenti
rjvyas
rjvyas il 6 Ott 2017
I had the same problem and using imhist(uint8(I)) worked! Thank you
Image Analyst
Image Analyst il 6 Ott 2017
You can also use histogram:
histogram(I);
which doesn't require conversion to integer.

Accedi per commentare.


Julie
Julie il 11 Mar 2016
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 Commenti
Zahra Saman
Zahra Saman il 12 Apr 2018
please help me in this problem
Zahra Saman
Zahra Saman il 12 Apr 2018
please help me in this problem

Accedi per commentare.

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by