Help finding cells in brightfield image

I’d like to request some help identifying cells in a brightfield image (CellProfiler 2.0 r10997). I thought it would not be so difficult, as we are getting good contrast between cells and background. However, it has been fairly tough to get the cells identified without splitting some apart. The main issues I have encountered are:

  • the cells are very close, often touching, and the border marking the separation between them is often missed by the segmentation algorithm even when it is clear to the eye they should be separate (failure to separate clumps).

  • the interior of the cells contains some material that is about as intense as the background. The algorithms tend to call these pixels background and often divide a cell into two objects (over-segmentation).

  • cell diameters vary

Some problems I have encountered with some attempt to address these issues are:

  • smoothing (retaining edges) helps the problem of background-intensity pixels within cells, but results in a bit of object spreading that exacerbates the problem of cells being so close together.

  • “find dark holes” does not know the difference between “real” holes inside cells and apparent holes that show up when cells are clustered around a spot of background. That is, it does not only find convex shapes. Thus, using this to try to fill in holes within cells also degrades the background within tight cell clusters.

  • enhancing circles after edge-finding seems to mark the center of many cells, but the image also has many bright spots where diffuse signals from neighboring cells overlap. Also, it does not seem to handle the variation in cell diameter very well.

If anyone has a chance to take a crack at an object identification pipeline or offer any other advice, I’d be very grateful.

I have included a few representative images.

Ben Braun MD, PhD
UCSF Pediatrics

Hi Ben,

This is indeed a challenging image, all the more so since the cells look so simple.

I’m attaching a pipeline in which I give it a shot. It doesn’t solve the identification completely, but hopefully will give you a start. Below I detail some of the settings which, when optimized, may give you what you need:

  • CorrectIlluminationCalculate/Apply
    : This was straightforward, in order to handle the illumination heterogeneities. - EnhanceOrSupress
    : Part of the difficulty in segmentation is the fact that the interior of the cells are roughly the same intensity as the background. “Supress” tries to smooth over these local minima to make segmentation easier. Too large a value, though, and the cells become unacceptably blurred. - IdentifyPrimaryObjects
    : [list]*]The main change there is using Laplacian of Gaussian for declumping; it is basically a blob finder. However, the settings often take some tweaking to get it to work well; I’ve left at the default settings. - I noticed that dialing the threshold correction factor downwards caused holes to appear in the cell interior; this was a problem since I wanted to turn off hole filing so that touching cells with spaces inbetween would not have the spaces filled.
  • “Shape” seemed to work reasonably well at dividing objects, or at least better than “Intensity”
  • I also think the amount of smoothing would use some tweaking too.

/*:m][/list:u]I hope this helps!

2012_04_22.cp (5.72 KB)