MATLAB Answers

1

How to convert a noisy picture to a black and white one

Asked by Carine on 12 Mar 2014
Latest activity Answered by Carine on 13 Mar 2014
Dear all,
For further processing (detecting circle for example), I need to convert this kind of pictures (see below) to black and white ones. I have tried to use im2bw playing with the level but I cannot make it work properly. I have also tried to adjust contrast and brightness beforehand in imtool without success. Moreover, I would need to do this step in a (semi-)automatic way. Any hint would be warmly welcome.
I am sure I am missing something as it must be a classical problem but I am a newbie in image processing and can't find my way through...
Cheers!

  0 Comments

Sign in to comment.

2 Answers

Answer by Dishant Arora on 12 Mar 2014

Decide threshold from histogram manually, you'll be able to differentiate between background and foreground pixels looking at the histogram
[count , grayLevels] = imhist(imageArray)
bar(grayLevles , count) % Plots histogram , decide threshold intensity from it
grid on
bw = imageArray > threshIntesity;

  0 Comments

Sign in to comment.


Answer by Carine on 13 Mar 2014

Thanks for your answer but this doesn't work as for example the black of the circle on the RHS of the picture is whiter than the white of the LHS of the picture. I am now working using adpathisteq which helps a lot, working locally.

  0 Comments

Sign in to comment.