Segmentation for morphometric analysis of mitochondria in TEM images

Hello everyone,
I have been asked to analyze the morphology of mitochondria in hundreds of TEM images of different leukocytes (neutrophils, basophils, etc). I have experience in image analysis with fluorescent microscopy but none with electron microscopy, so I have no idea how to go about segmenting the mitochondria in the first step. So I have two questions:

  1. Is there a tool out there that would automatically perform the segmentation?
  2. In case there isn’t, are the images of good enough quality to train a model using ilastik or weka ?

Here is a link to some sample images: sample_images - Google Drive

Thank you in advance!

1 Like

Hi Carlos,
if you have just few hundreds images and there are only few mitochondria per image, I would probably suggest to do such analysis manually. For example, you can measure length of the longest and the shortest profiles and it is rather quick to do. We were doing that in few projects.
The alternative is to indeed segment the actual profiles for each mitochondria and that can be done manually or with automatization. The automated tools may not give you good models (i.e. not pixel precise and with fused mitochondria), which will compromise your following measurement.
In addition, the standard shape descriptors are not really the best in my understanding to describe shapes of mitochondria.

For automatic approach you can try indeed classifiers as ilastik or Weka but it is hard to predict how good you will be able to get the models. Even on your examples, the figure 3 looks very different from 3 others. And as I mentioned above, you will have to find a way to split fused mitochondria later.
As an alternative, you can try DeepMIB for training of CNNs. However, in this case you still have to segment quite some amount of mitochondria (probably in a manner as shown in Fig.2) and also crop-out these segmented from the dataset to make training more efficient.

The approach depends on your task, i.e. metrics that you would like to use to describe phenotypes and amount of data that you have to process.

I hope these helps.

Best regards,
Ilya

Thank you so much Ilya, it definitely helped. I think I will start manually segmenting the profiles and maybe later use them to train a model. Is there any specific program better suited for this task?

I have also taken a look at the DeepMIB post and it looks interesting, I will download it and have a try. How many pictures more or less do you think it will take for training?

And just out of curiosity, what did you mean by “the standard shape descriptors are not really the best in my understanding to describe shapes of mitochondria”? Are you referring to morphological binning/clustering?

Hi Carlos,

And just out of curiosity, what did you mean by “the standard shape descriptors are not really the best in my understanding to describe shapes of mitochondria”? Are you referring to morphological binning/clustering?

If you segment profiles of mitochondria (as filled shapes) and make sure individual profiles are not touching each other you can use “standard” object detection and object description features. Depending on a program you will use for that you get various options. For example in MIB (parent of DeepMIB) you can calculate the following features either in pixels or in physical untis (if your images taken with the same magnification, it really helps a lot!)
image
As you can guess from the list, the most usable metrics are: Area, eccentricity, First/Second axis length and perimeter. These are useful but still quite limited. For example First/Second axis length sounds very nice, but as mitochondria may be bended you will bump into something like shown on the left panel, where both first (longest) and second (shortest) axis lengths are not correct:


The slides on the right, shows a way how I address this problem to calculate the second axes length with the good confidence.

So, my point is that, you can get all kinds of metrics, but they may not be good enough to describe your phenotypes. And because of that I suggested to do measurements manually, this way you skip the step of rechecking the automatic segmentation.

Is there any specific program better suited for this task?

I guess the best one is the one you can handle :wink: We do all that kind of stuff in MIB, but I guess you can also do that in Fiji if you wish, but I can’t really suggest anything there as I am not using that myself.

How many pictures more or less do you think it will take for training?

that is quite hard to guess, but the good thing with u-nets, that you can actually get quite good results with relatively small amount of data for training.
But here the notes:

  1. you will need a computer with modern GPU, otherwise it will be quite slow
  2. it would be better to beta version of MIB/DeepMIB from here: Release MIB 2.712 BETA · Ajaxels/MIB2 · GitHub as it has way more extensive system for data augmentation
  3. you have to manually (semi-automatically) segment some mitochondria (as variable as possible) from your images and crop those out as they are not as frequently seen on images (it is possible to do that in MIB in some extent)

Ilya

Hi Ilya, thank you so much again for the insights. I will play around and use it as an opportunity to get more comfortable with DeepMIB and learn more about U-Nets in general. But, from what you’ve said, I will probably end up doing the main analysis manually.

The manual way sounds boring, but that way you will be 100% sure in the collected values.
Few other points that I typically recommend:

  1. make sure that your measurements stay with images, i.e. so that later you can always reopen them to check or modify. In other words do not use a system that just measures lengths and reports values.
  2. Shuffle the images - if the images are coming from various treatments it may be a good idea to shuffle and anonymize them. At least for me it makes peace in mind as I do not care to get biased :slight_smile: (In MIB we have a tool for that Menu->File->Rename and Shuffle