MitoGraph is a fully automated image processing method and software dedicated to calculating the three-dimensional morphology of mitochondria in live cells. MitoGraph is currently optimized and validated only for quantifying the volume and topology of tubular mitochondrial networks in budding yeast [1,2]. However, MitoGraph can also be applied to mitochondria in other cell types and possibly other intracellular (or tissue) structures, with proper validation. MitoGraph is continuously being updated. Please contact us if you have questions that go beyond those discussed in [1,2] or any request that would make MitoGraph a better tool for your research.
MitoGraph now runs on GPU in Python ✓
Matheus Viana - vianamp@gmail.com
Siddharth Nahar - siddharth.primary.dev@gmail.com
Zichen Wang - ziw056@ucsd.edu
Please follow the steps below to install MitoGraph:
-
Clone the Git repository and open the terminal in the folder
-
Create a virtual environment and install dependencies:
conda env create -n mitograph-gpu -f env.ymlUsing Python venv:
conda activate mitograph-gpuWe have provided some test .tif files under .data/
In python, first import the package:
from mitograph.gpu_pipeline import runThen, run segmentation by specifying the path and pixel sizes:
run(path='/home/zacharywang/github/MitoGraph-GPU/data/', xy=0.111, z=0.111)You can find the same code in run_mitograph_gpu.py file and adapt to your dataset.
Run mitograph in command line with:
python run_mitograph_gpu.pyscales=[a,b,c] where a, b and c are numeric values specifying the initial, final and total number of scales which should be used by MitoGraph [1].
threshold=a where a is numeric value in the range [0,1] for the post-divergence threshold.
adaptive=a where a is a numeric integer value specifying that the input image should be split into a x a blocks before the segmentation. This is useful for images with high variation of pixel intensity.
export_image_binary=True exports the segmented binary z-stack in the same dimensions as the input fluorescence image in addtion to MIP image.
binary=True if the input is a binary image.
vtk=True if the input is of VTK Imagedata type.
The output of MitoGraph will be saved in the same directory as the input images.
Config files
- mitograph.config - Stores the parameters used to run MitoGraph.
Data files
- filename.gnet - List for the edges in the graph representation of mitochondria. First line of this file gives the total number of nodes. First and second columns are the node indices for the two nodes of the edge. Third column is the edge length.
- filename.coo - Coordinates x,y,z of the nodes in the graph.
- filename.mitograph - Mitochondrial attributes: volume from voxels, average width (µm), std width (µm), total length (µm) and volume from length (µm3).
- filename.txt - Coordinates of all the nodes along each mitochondrial branch as well as the local width (µm) and original pixel intensity.
Image files
- filename.png - Max projection of mitochondria after MitoGraph thresholding. Can be used for fast assessment of MitoGraph segmentation result.
- filename_binary.tif - Full z-stack of mitochondria after MitoGraph thresholding.
Visualization files that can be opened using Paraview
- filename_skeleton.vtk - Mitochondrial skeleton. This file contains information about mitochondrial tubule width, pixel intensity, edge length and nodes position that can be viewd in Paraview by setting the coloring mode.
- filename_mitosurface.vtk - Mitochondrial surface.
[1] - Matheus P Viana, Swee Lim, Susanne M Rafelski, Quantifying Mitochondrial Content in Living Cells (2015), Biophysical Methods in Cell Biology, (125) - 77-93 (http://www.sciencedirect.com/science/article/pii/S0091679X14000041)
[2] - Viana, M.P., Brown, A.I., Mueller, I.A., Goul, C., Koslover, E.F. and Rafelski, S.M., 2020. Mitochondrial Fission and Fusion Dynamics Generate Efficient, Robust, and Evenly Distributed Network Topologies in Budding Yeast Cells. Cell Systems (https://www.cell.com/cell-systems/fulltext/S2405-4712(20)30035-1)
