Characterisation of megakaryocytes

Dear CellProfiler Team,

I am currently trying to establish a pipeline that recognises and characterises megakaryocytes (progenitors of blood platelets) according to their morphology. These cells are cool but quite annoying, because they can be nicely round, or spread like a fried-egg, or irregularily formed with pseudopodia like structures, or fragmentated and finally they can also extend long thin branching processes (proplatelets). Of course they also flow into each other to be even more annoying^^
I would like to differentiate them into:

undifferentiated, round cells

spread, relatively round cells with a surface:nucleus ratio of more than 10:1

proplatelet forming cells (long, thin and branching processes)

cells that are between spread and proplatelet forming cells

fragmented cells

As fully differentiated cells lose their nucleus I cannot use nuclei aone as primary objects, therefore I pre-processed my images with ImageJ and merged the dapi and tubulin images. Tubulin nicely outlines the CD41 stained complex cell body. Furthermore I separated critical cell cell junctions manually with a black line.

Now I am struggling with FilterObjects though, and I have no clue how to solve this problem^^ I would like to exclude objects that have a surface:nucleus ratio greater or equal than 10:1 AND that are in my upstream classified AreaShape_FormFactor from Bin 1 to Bin 5. The first parameter works well, I don’t get how to set up the second condition though…
And do you have any suggestions how I could define fragmentated cells?

Thank you very much in advance for your help and I hope that I explained my problem well enough^^


cell profiler project.cpproj (103 KB)

The bins in ClassifyObjects contain the # of objects that fall into that bin range. Since you’ve divded up the form factor measure into 6 bins, and the form factor measurement spans 0 to 1, you are best served by using the form factor range that describes the phenotype of interest (perhaps by using DisplayDataOnImage as you have for the ratio?) rather than the bin values themselves. It appears that bins 1 through 5 capture form factor values from 0 to 0.83 or so.

Without knowing more about what a fragmented cell looks like, I’m not sure I can help here. But if you have a fair number of samples of each phenotype, have you considered using the machine learning tool in CellProfiler Analyst (CPA)? You can get sense of how it works in this example from our webpage: A utility of this approach is that you use the classifier derived in CPA back in FilterObjects in CellProfiler to extract the individual phenotypes in the pipeline itself.


Hello Mark,

thank you for the CPA input! In the meanwhile I have modified my pipeline quite a bit and solved my FilterObject problem the way you suggested^^
I attached my new pipeline and 3 more image pairs, where you can see proplatelet forming cells and a fragmented cell, that resembles a proplatelet forming cells in terms of the form factor. It would be therefore nice to somehow include an additional cirteria where cellprofiler recognises a long, thin (maybe even defined by pixel length) extension extending from the object.
Is that somehow possible? The form factor alone as a criteria for proplatelet forming cells is sometimes misleading if there is a highly irregular cell (like this fragmented) or a round but “folded” cell that are lacking a thin extension though… But most of the times it works fine^^

The images “complex PP” also point to this problem. The 3rd cell from the top forms a proplatelet, but its surface is apparently too smooth for my classification (FormFactor max 0.115). I could increase it to 0.119 but then I fear that I will include more falsly positive cells. Or am I thinking too perfectionistic? Because in this case the exclusion of this cell is neutralised by the inclusion of a falso positive cell^^

I am however greatly thrilled by CellProfiler! It is really a great image analysis software :wink:
Thank you in advance for your help!

Manuel (851 KB)

Hi Manuel,

The decision as to whether a slight adjustment to the measurement cuttoff in the end lies with you, as you are best suited to know how many false positives/negatives are acceptable.

I would say that if you are committed to using 1 or 2 measurements to discern these phenotype, then using DisplayDataOnImage is probably your best bet to examine the various morphological parameters and see which is best. For example, compactness (which is the variance of the radial distance of the object’s pixels from the centroid divided by the area) might be useful for teasing out different degrees of irregularity. But again, I would recommend using CPA as it was designed for precisely these sorts of applications: automatic detection of phenotypes when the measurements needed to discriminate them are not readily clear.