Skip to content

Batch processing

HannahSHeil edited this page Jun 10, 2024 · 3 revisions

A straight forward way to eSRRF batch processing is ImageJ macro scripting. To run eSRRF processing on an image stack the following command is used:

`run("eSRRF - Analysis", "magnification=5 radius=1.50 sensitivity=3 #=100 vibration avg wide-field #_0=25 axial=400");´

The arguments of the command specify the magnification, radius and sensitivity parameters, the frame window ("#= "), the vibration correction (activate by "vibration"), the reconstruction modes (acitvate by "avg", "var", "tac2", "wide-field"), the rolling window overlap (activate by "perform" and specify by "#_0= ") and 3DSRRF processing (activate by "3Dsrrf" and specify axial distance in nm "axial= ").

This is an example script to run eSRRF processing on all .nd2 files in a folder:

// Get path to temp directory
dir = "D:\!!!ADD PATH!!!";
print("\Clear");
savedir = "D:\!!!ADD Path!!!";

list = getFileList(dir);
setBatchMode(true);
for (i = 0; i < lengthOf(list); i++) {
   if (endsWith(list[i], ".nd2")){
      print("---------------------");
      print(list[i]);
      print("---------------------");
      run("Bio-Formats Windowless Importer", "open=["+dir+"\"+list[i]+"]");
      run("eSRRF - Analysis", "magnification=5 radius=1.50 sensitivity=3 #=100 vibration avg wide-field #_0=25 axial=400");

      selectWindow(list[i]+" - eSRRF (AVG)");
      saveAs("Tiff", savedir+"//"+list[i]+" - eSRRF (AVG)"+".tif");
      //selectWindow(list[i]+" - eSRRF (STD)");
      //saveAs("Tiff", savedir+"//"+list[i]+" - eSRRF (STD)"+".tif");
      selectWindow(list[i]+" - interpolated image");
      saveAs("Tiff", savedir+"//"+list[i]+" - interpolated image"+".tif");
      run("Close All");
   }
}

setBatchMode(false);
print("-----------------");
print("All done.");