Automated Measurement of diameter and protuberance in a cell

Large protuberance thresholded.tif (17.0 KB) Small protuberance thresholded.tif (17.0 KB) SUM_Large protuberance.tif (RGB)-2.tif (46.0 KB) SUM_Small protuberance.tif (RGB)-2.tif (46.0 KB)

Background

Hi all!
First message in the forum, I am a bit stuck trying to automatize a relatively simple calculation in my images and wonder if you could help with it.

So, here is my problem: Dataset with some hundreds of images with single cells, they have a spherical body and most of them have a protuberance. Target is to measure the radius of the main body, plus the length and diameter of the protuberance. I can do this one by one and not very accurately y hand, but I would like to ask if there is some script/plugin out there that can do this automatically, so I can run a macro on my dataset later.

My scripting skill is very limited, but I could manage to put pieces together if you know something that should work with the problem.

Analysis goals

Goals: automated selection of body and protuberance, automated measurement of body diameter, protuberance length and protuberance diameter (perhaps measurement of diameter at several parts of protuberance, to better calculate area later)

Challenges

I can put all my files in a single stack, and segment them so there is a single object in each image (see example). But I do not know how to automate identification of body and protuberance, and then automate the measurements. I am initially exploring fiji, but other open source softwares are welcome if you know adequate scripts in them.

Thank you very much in advance!

Best

Pablo

This could be potentially easy to solve. Depending on how different the objects are, particularly how good the main body can be differentiated from the protrusion.

For protrusion size one could potentially just take the ferets diamter since the protrusion is just ferets diamter - 2X radius of the main body.

run("Set Measurements...", "feret's redirect=None decimal=3");
run("Analyze Particles...", "display");

For getting the radius of the cell body one could then use the maximum inscribed circle plugin: https://imagej.net/Max_Inscribed_Circles
From the BIOP Update size

run("Max. Inscribed Circle", "label=[Large protuberance thresholded.tif] distances=[Chessknight (5,7,11)] show image=[Large protuberance thresholded.tif]");

This gives you a radius of the cell body.

circle

One can then relatively easily create a script for that. But the question would be: are the results of the maximum inscribed circle good enough most of the time, because that is what the measurement hinges on.

As for diameter of the protrusion, one would need to see. If the maximum inscribed circle is good enough one could use this as a entry point to define cell body from the protrusion and further measure the protrusion.

2 Likes

Thanks a lot for your suggestion, Christopher!

I think your solution solves the part of the main body nicely (the shape is quite consistent along the data set, the “small protuberance” example is as far as they get from “full spherical”).

As for the protuberance, using Feret would work for some of the cells (I think in the example of “large protuberance” it works fine) but for others might give a biased measure by artificially enlarging the length of the protuberance. In the example of “short protuberance”, my selection of main body by hand would shift the inscribed circle to be as close as possible to the protuberance, as shown
below:

Would there be a way to “weight” the maximum inscribed circle to favor selection of circles closer to the protuberance? I guess it could be put as “find several inscribed circles, select the one which is best at both being big and being closer to the protuberance”. A proto-protuberance could be defined initially following your Feret suggestion. But what I would be lacking is a way to find and select “same size or slightly smaller inscribed circles which are closer to the protuberance”.

If there is a suggestion for how to do that, it would be great.

Thanks again for the prompt and very helpful reply, I will work on implementing it and post the resulting script and outcome.

Pablo

The result I showed above is from a different plugin. The MorpholibJ plugin: Largest inscribed circle (https://imagej.net/MorphoLibJ).

I wanted to use the Max Inscribed Circles https://imagej.net/Max_Inscribed_Circles from the BIOP Update site.
Sorry. The Max Inscribed Circles here seems to perform a bit better for your application and shifts the circle more towards the protuberance. Different algorithms I guess:
circle

As for creating a different algorithm or modifying an existing one. Sure one can in principle do that. You would need to find a way to define and detect the protuberance and factor that into the selection of the circle. Maybe someone here has another idea? I would also ask here how have other people in your field or having similar problems addressed that in the past? Maybe there is an existing solution out there?

I would also factor in that one does not need a 100% perfect analysis for most applications. As long as it is reproducible and follows a stringent measurement rational. One always has biological variation and measurement errors.