// calloseQuant ImageJ macro // Huang et al., 2020. Dialog.create("Analysis of PD-associated callose"); Dialog.addChoice("Analysis to perform", newArray("Method A","Method B")); Dialog.addChoice("Source Data", newArray("Active Single Image","Active Image Stack","Folder of Images")); Dialog.addDirectory("Data Folder",""); Dialog.addMessage("Method A Parameters", 10); Dialog.addNumber("Peak prominence", 100); Dialog.addNumber("Measurement radius", 4); // peak promionence was discussed here: https://forum.image.sc/t/new-maxima-finder-menu-in-fiji/25504/5 Dialog.addMessage("-or-", 10); Dialog.addMessage("Method B Parameters", 10); Dialog.addNumber("Rolling ball radius", 8); Dialog.addNumber("Mean filter radius", 2); Dialog.addNumber("Auto Local Threshold radius", 180); Dialog.addString("Analyze Particles size filter", "25-240"); Dialog.addString("Analyze Particles circularity filter", "0.5-1"); Dialog.show(); method = Dialog.getChoice(); data = Dialog.getChoice(); folder = Dialog.getString(); prominence = Dialog.getNumber(); mRadius = Dialog.getNumber(); rollingRadius = Dialog.getNumber(); meanRadius = Dialog.getNumber(); localRadius = Dialog.getNumber(); sizeFilter = Dialog.getString(); circFilter = Dialog.getString(); run("Set Measurements...", "area mean standard min integrated median display redirect=None decimal=3"); if (data=="Active Single Image") { applyMethod(); } else if (data=="Active Image Stack") { idStack = getImageID; n=nSlices; for (i=1;i<=n; i++) { setSlice(i); selectImage(idStack); run("Duplicate...","title=[Slice_"+i+"_"+getTitle()+"]"); applyMethod(); selectImage(idStack); } } else if (data=="Folder of Images") { list = getFileList(folder); for (file=0; file