Double counting nuclei & edges in IdentifyPrimaryObjects

Hello all!

I’ve been having some trouble counting nuclei with IdentifyPrimaryObjects.

So, I’m looking at neural nuclei. There are a variety of sizes and intensities, as well as some layering, so counting them has been tough. However, I’m getting pretty good counts from Identify Primary Objects.

I’ve tried all of the possible combinations of ways to distinguish between clumped cells and draw lines between them and I’ve found two combinations that work rather well-- Laplacian of Gaussian with both Propagate line drawing and Intensity-based line drawing (the two pipelines are attached). I’m using the Otsu PerObject threshold.

However, both of these methods are double/triple counting the larger, dimmer nuclei. It’s doing well with small, layered cells, but the large dim ones, even when totally isolated, are getting counted a lot.

Both of these methods are also counting nuclei that are clearly touching the edge of the image, discarding some but not all nuclei touching the edge. (I do have the ‘Discard objects touching the border of the image’ checked).

I’ve tried using Shape methods of dividing clumped cells and it’s giving me the same problem. I’ve also tried using just Watershed and I’ve found it to be less accurate with what I’m working with.

I attached two sample images. Is anybody else having this problem?

DAPIcounter_LoG_Prop_pipeline.cp (4.94 KB)
DAPIcounter_LoG_Intens_pipeline.cp (4.94 KB)


I think part of the problem with objects getting carved up is that rather than using the automatically calculated values for the smoothing filter size and maxima separation distances, one or the other should be manually set, so you should uncheck at least one of these boxes and adjust them accordingly. I played around with them and a value of 20 for the maxima separation distance seems to work well. I’ve attached the adjusted pipeline.

Also, it seems that adjusting the smoothing filter size with Laplacian of Gaussian and Intensity as the dividing line method doesn’t seem to do anything so it may be a bug. I think you may need to use Shape as the dividing line method in order to obtain reasonable results.

Overall, though, it seems that your image is over-saturated; a fair number of pixels are at the maximum intensity, which is undesirable in microscopy in general. If you dial down your exposure, I think you will remove some of the bight halos around the cells which seem to be obscuring detection. In the meantime, I added an illumination correction step which I think helps a lot.

The issue of edge objects not being excluded has been reported previously. It’s been fixed in our source code but not released as yet. However, if you’re daring, you can get the fix with our latest public build from source code here. The trunk build is not as heavily vetted as our releases, so you should take that into account; please note the caveats mentioned on the page linked.

DAPIcounter_LoG_Intens_pipeline_MAB.cp (6.45 KB)