Identifying ring-shaped objects


I am trying to use CellProfiler to identify objects that are ring shaped (Please see the attached image for an example). I have tried correcting illumination, rescaling, and everything I could think of with no success. If anyone has an ideas or could post and example pipeline that would get me started on identifying these objects, I would be very grateful.


Hi Pavan,

I think you were on the right track with illumination correction, because the hazy glow behind the rings may have been making identification difficult. Attached is a pipeline which uses illumination correction to get rid of this hazy glow, and then a SmoothOrEnhance module with ‘Enhance bright round speckles’ to enhance the rings even further. In IdentifyPrimAutomatic, you’ll want to make sure you keep ‘Fill Holes in Identified objects?’ checked ‘NO’, or your rings will become circles. As it is, if the rings are non-uniform in intensity, CellProfiler sometimes thinks they are two, or even three objects- since there is a big dark spot in the middle, and that is how Cellprofiler generally decides where one object ends and the next begins. If you’d like, you can try changing the ‘Distinguish Clumped objects’ settings from ‘Intensity’ and ‘Intensity’ (which they currently are set to) to ‘Do not use’. CellProfiler won’t try to break the rings up into separate objects, which may help each correctly be counted as one, but it may also unify rings that are touching/close. The automatic thresholding method that I found worked best with your images was ‘Background Global’, since the hazy glow seemed to be consistently of a lower intensity than the rings, this setting does a good job of picking only the rings out as an object and not the glow as well.

hope this helps you get started!
ringPIPE.mat (1.12 KB)


Thanks for the pipeline. I will try using it and see what I can come up with.