Protocol for Image processing and analysis of VPS13D recruitment to mitochondria
Marianna Leonzino, Andrés Guillén-Samander, Pietro De Camilli, Ni Tang
Abstract
This protocol details the image processing and analysis of VPS13D recruitment to mitochondria as it was performed in https://doi.org/10.1083/jcb.202010004. The first part details the analysis of acute optogenetic recruitment, and the second part of basal recruitment under different conditions.
Attachments
Steps
For the analysis of optogenetic experiments:
Build kymographs tracing a line ROI across the mitochondria that was illuminated with Blue Light.
Measure an intensity profile by tracing a line ROI across the center of the mitochondrial signal on the kymograph. Take a background profile using the same line ROI outside the illumination area.
Normalize the fluorescence intensities to the min and max values using the following formula:
Normalized f[t] = f[t]-fmin[t]
————————
f<sub>max</sub>[t]−f<sub>min</sub>[t]
where f[t] = Fmito[t] − Fbkgd[t].
For the analysis of VPS13D mitochondrial recruitment:
Analyze the cells coexpressing VPS13D^EGFP and mitoBFP individually. Store the each cell outline as an ROI in the ROI Manger of Fiji.
Apply the “Gaussian Blur” tool and “Enhance Local Contrast” tool to the MitoBFP channel to average the brightness of the whole image and to clarify the shape and margin of mitochondria.
Use an automated macro designed in Fiji to measure VPS13D^EGFP signal overlapping with mitochondria and that localized in the cytosol surrounding them.
Calculate the ratio between the intensity of VPS13D^EGFP on mitochondria and the intensity of VPS13D^EGFP in the cytosol surrounding mitochondria for each cell and plot a graph indicating the enrichment of VPS13D^EGFP on mitochondria.
The macro (which can be adapted to analyse recruitment of any given protein to mitochondria) is included below:
macro "ROI in batches auto measure VPS13 binding with mitochondrial " {
Dialog.create("reminder");//create an interface
Dialog.addMessage("choose saving path");//an interactive interface for user to set the
saving directory
Dialog.show();//an interactive interface for user to set the saving directory
dir_saving = getDirectory("Choose a Directory to save");//an interactive interface for user to set
the saving directory
count = roiManager("Count");//save the information from ROI manager into the term "count"
for (i = 0; i < count; i ++){
name = getTitle;
selectWindow(name);
roiManager("Select", i);//save the selected ROIs in the ROI manager in batch
Stack.getPosition(channel, slice, frame);//save the selected ROIs in the ROI manager in batch
run("Duplicate...", "duplicate slices=" + slice);//save the selected ROIs in the ROI manager in
batch
saveAs("Tiff", dir_saving + "ROIslice"+i+name); //save the selected ROIs in the ROI manager in
batch
name = replace(name, ".tif", "");//motify the name of images
C1 = "C1-ROIslice"+i+name+".tif";//motify the name of images
C2 = "C2-ROIslice"+i+name+".tif";//motify the name of images
run("Split Channels");//split the integrated image into single channel
Dialog.create("Content of the channel");//create an interface
Dialog.addMessage("Make sure the content of the channels. If same as described, click
OK. If different, click Cancel and make changes.\n");
Dialog.addMessage("Channel 1 is VPS13D channel. Channel 2 is Mitochondrial
channel.");
Dialog.show();//make sure the content of each channels
selectWindow(C1);//choose the cytosol slice
run("Duplicate...", " ");//duplicate a seperate image to process
run("Brightness/Contrast...");//preprocess the VPS13D signal in the cytosol area
//measure the intensity of VPS13D signal in mitochondria area
selectWindow(C2);//choose the mitochondria slice
run("Duplicate...", " ");//duplicate a seperate image to process
run("Gaussian Blur...", "sigma=2 slice");//balance the brightness of image
run("Enhance Local Contrast (CLAHE)", "blocksize=127 histogram=256 maximum=3
mask=None fast_(less_accurate)");//clearify the outline of mitochondria
run("Enhance Local Contrast (CLAHE)", "blocksize=127 histogram=256 maximum=3
mask=None fast_(less_accurate)");//clearify the outline of mitochondria
run("Enhance Local Contrast (CLAHE)", "blocksize=127 histogram=256 maximum=3
mask=None fast_(less_accurate)");//clearify the outline of mitochondria
run("Threshold...");//choose the mitochondria area
run("Convert to Mask");//generate an accurate mitomask
saveAs("Tiff", dir_saving + "ROI"+i+" mitomask "+name);//generate an accurate mitomask
imageCalculator("AND create", mitomask, C1);//map C1 onto the mitomask
setThreshold(1, 255);//choose the calculated area
saveAs("Tiff", dir_saving + "ROI"+i+" result of mitochondria intensity "+name);
mitointensity=getTitle;
run("Measure");//measure the intensity of VPS13D signal in mitochondria area
//measure the VPS13D intensity in the cytosol area
run("Dilate");
run("Dilate");
run("Dilate");//duplicate three times to eliminate the interference from mitochondria signal
run("Convert to Mask");
run("Invert");//invert the enlarged mitomask
saveAs("Tiff", dir_saving + "ROI"+i+" mitomask x3 "+name);//generate the enlarged inverted mitomask
mitomask3 = getTitle;
imageCalculator("AND create", mitomask, mitomask);//map the enlarged inverted mitomask
onto the original mitomask to get the enlarged outline of mitochondria in the cytosol area
saveAs("Tiff", dir_saving + "ROI"+i+" cytomask "+name);//generate outline profile of mitomask,
which refers to mask of cytosol area
cytomask = getTitle;
imageCalculator("AND create", cytomask, C1);//map the cytomask onto cytosol
setThreshold(1,255);
saveAs("Tiff", dir_saving + "ROI"+i+" result of cytosolic intensity "+name);
cytointensity=getTitle;
run("Measure");//measure the VPS13D intensity in the cytosol area
saveAs("Results", dir_saving + "ROI"+i+" measurement results of VPS13 binding to
mitochondrial.csv");
close()
}
Dialog.create("reminder");
Dialog.addMessage("Mission accomplished.Congratulations!");
Dialog.show();
}