// Worm Data Processing // Written by Wilson Adams, Vanderbilt Biophotonics Center, 24 July 2019 stk = getTitle() makeRectangle(137, 49, 906, 931); waitForUser('Selefct general field of interest') roiManager("Add"); run("Enhance Contrast", "saturated=0.35"); run("Duplicate...", "duplicate"); crop = getTitle(); //roiManager("Select", 0); //run("Duplicate...", "duplicate"); roiManager("Show All"); roiManager("Show None"); //run("Crop"); //run("Subtract Background...", "rolling=30 sliding stack"); runMacro("AutomatedFlatfieldCorrection", "blur=35"); ffc_crop = getTitle(); close(crop) //roiManager("Show All"); roiManager("Show None"); run("Enhance Contrast", "saturated=0.35"); // time derivative filter //run("FeatureJ Derivatives", "x-order=0 y-order=0 z-order=1 smoothing=1"); //zdev = getTitle(); // StDev projection //run("Z Project...", "projection=[Standard Deviation]"); //zdev_std = getTitle(); // 35px FFC seems to work okay // Ext.CLIJ_blur3D("4hr_11PM_Food_Stack-3.tif_bkgdSub_bkgdSub", "CLIJ_blur3D_destination_4hr_11PM_Food_Stack-3.tif_bkgdSub_bkgdSub", 2.0, 2.0, 5.0); // Ext.CLIJ_pull("CLIJ_blur3D_destination_4hr_11PM_Food_Stack-3.tif_bkgdSub_bkgdSub"); run("Blur3D on GPU", "cl_device=[Quadro M2000] source=&ffc_crop sigmax=4 sigmay=4 sigmaz=5"); // 2X iterative FFC macro "FFC" { h = getTitle() for (i = 0; i < 2; i++) { j = getTitle(); blur = 35; run("Z Project...", "stop=5 projection=[Average Intensity]"); avgBkgd = getTitle(); run("Gaussian Blur...", "sigma=&blur"); getStatistics(area, mean, min, max, std, histogram); mean = floor(mean); run("Calculator Plus","i1=&j i2=&avgBkgd operation=[Subtract: i2 = (i1-i2) x k1 + k2] k1=1 k2=&mean create"); rename(j+"_bkgdSub"); stk_bkgd = getTitle(); close(avgBkgd); } close(h+"_bkgdSub") }