Analysis of long, thin, spindle-shaped cells

I’m trying to design a pipeline to identify the spindle-shaped cells (fibrocytes) in the image included in this post. I’ve tried the worm toolbox, with some success, but I still seem to be getting inconsistent counting of these spindle shaped cells.

The image included in this post contains both fibrocytes and macrophages. Macrophages are more circular cells, and cell profiler has no problem counting these cells with a single identifyobjects module. It’s the spindle-shaped fibrocytes that are giving me trouble.

I’d like cellprofiler to recognize the spindle shaped fibrocytes, count the fibrocytes, and then measure their images intensity. **All I’m missing right now is a reliable way to get cell profiler to identify these spindle-shaped, long, thin cells. **

I’ve considered two methods of counting these cells. First, I could stick with the cell profiler worm counting pipeline I’ve been adjusting. Second, I could train cellprofiler-analyst to detect these cells.

What I’m asking is whether anyone has any advice as to which of these two methods to count these spindle-shaped cells would be the simplest. If the cellprofiler analyst option turns out to be the better choice, how would I go about setting up a properties file, object table, and training set? Is there a very beginner walkthrough for how to get started with cell-profiler analyst?

I’ve included a couple of sample pipelines I’ve been working on.

Thanks for any assistance, in advance.
unmix colors.cpproj (227 KB)
best attempt thus far.cpproj (334 KB)


For long, thin objects, we suggest to use EnhanceOrSuppressObjects > Enhance > Tubeness. This will also suppress the large round objects (macrophages here). You will also get the edges of the macrophages identified, but then you can try and filter by an MeasureObjectSizeShape measurement. See my attached pipeline. It is an improvement, imho, though maybe not perfect.
The FilterObjects threshold may be very finicky – and note the DisplayDataOnImage is only there to give you an idea about the values of the measurement for each object. (And FormFactor may not be the most discriminative measurement! Just my guess.)

Another suggestion is to also use a nuclear marker, and then use IdentifySecondaryObjects to grow out your cells. I expect this would provide much more reliable cell individuation.

A couple other notes:

  • In the LongObjects IDPrimary settings, I lowered the Threshold Correction factor, so as to connect spuriously declumped long objects. You will need to set this to your liking
  • The ImageMath > Invert was not necessary. UnmixColors produces bright foreground objects, which the Identify modules expect.
  • Not a big deal, but I changed the NamesAndTypes setting to load in the supplied sample.jpg file, since I didn’t have access to your projects TIF file.

DLpipeline.cppipe (30.1 KB)

THANK YOU DAVID, this pipeline works exceptionally. It identifies the spindle shaped cells very well from smaller undifferentiated cells, as well as rounder macrophages. My one worry is that using the “enhanceorsuppressfeatures” module may skew later color analysis. This could be a problem, but I’ll see if I can figure out a way around this. Still though, exceptional works, and thanks a ton!

Awesomely done!


Very good! Thanks for reporting back.

Here’s a couple of examples of the latest pipeline, in case anyone looking to count spindle shaped cells should visit this forum.
Final pipeline for identifying macrophages from fibrocytes, unadjusted images, 8-5-14.cpproj (542 KB)
pipeline for original m2a images.cpproj (490 KB)

Thanks for posting these!