Low-contrast segmentation: white objects on white background

3 views (last 30 days)
Hello,
My images are white bacteria colonies growing on white filtration membranes. I'm wondering how they can be segmented to obtain location and size of the colonies. The images are attached:
I also have the background membrane before the growth started.
Right now I can identify the middle colonies but the outer colonies are more difficult due to lower contrast and uneven illumination.
Any ideas are highly welcome!

Accepted Answer

Image Analyst
Image Analyst on 24 Aug 2021
Take a blank shot with no colonies in there. Then divide the test image by the blank image to flatten the background. Then you should be able to threshold. If it doesn't work, try a tophat filter, imtophat().
See my Image Segmentation Tutorial
  4 Comments
Yantao Xia
Yantao Xia on 12 Sep 2021
Thanks! I've implemented what you said and the results look very promising. For future reference I attach the image of the circles fitted to two line segments.
Image Analyst
Image Analyst on 12 Sep 2021
You might look at the residuals for the circles fitted to each side and take only the one that has the lowest residuals because it looks like the smoothest one is the legitimate boundary and the rough border is the one that cuts through the middle of the circle. Or try an edge filter with a very large window.

Sign in to comment.

More Answers (0)

Categories

Find more on Image Processing Toolbox in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!