Problem with imhist after modify image

2 Ansichten (letzte 30 Tage)
Dani D
Dani D am 11 Mär. 2016
Kommentiert: Zahra Saman am 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');

Antworten (2)

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

Melden Sie sich an, um zu kommentieren.


Julie
Julie am 11 Mär. 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 Kommentare
Zahra Saman
Zahra Saman am 12 Apr. 2018
please help me in this problem
Zahra Saman
Zahra Saman am 12 Apr. 2018
please help me in this problem

Melden Sie sich an, um zu kommentieren.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by