//Bob Dougherty January 16, 2011 //Process all datasets in folders using a list of image-acoustic data pairs //Intended for Beamforming Interactive version January 14, 2011 or later. requires("1.34m"); methods = newArray("[Wide Band Conventional]","[Frequency Domain BeamForming]", "[TIDY]","[CLEAN-SC]","[DAMAS2]","[Nearfield Acoustic Holography]","MUSIC","[Orthogonal Beamforming]"); outputs = newArray("[Tiff]","[AVI]","[None]"); results = newArray("[Tab delimited]","[Comma Separated Values]","[None]"); docs = newArray("[Save Preference Files]","[No Documenetaton]"); sweeps = newArray("[Frequency]","[Time]","[z]","[None]"); comm = "BF"; Dialog.create("BI Batch"); Dialog.addChoice("Method:", methods); Dialog.addString("Comment", comm); Dialog.addChoice("Sweep:", sweeps); Dialog.addChoice("Output_image_format:", outputs); Dialog.addChoice("Results_table_format:", results); Dialog.addChoice("Documentation Files:", docs); Dialog.show(); method = Dialog.getChoice(); comm = "["+Dialog.getString()+"]"; sweep = Dialog.getChoice(); image = Dialog.getChoice(); result = Dialog.getChoice(); doc = Dialog.getChoice(); dirLight = getDirectory("Choose input directory for images (.avi, .tif, etc.)"); dirSound = getDirectory("Choose input directory for acoustic data: time series or CSM (.wav, .tif, .bin, .mat, etc.)"); pathList = File.openDialog("Select a text file giving imageFile dataFile pairs"); listCases=split(File.openAsString(pathList)); if(image=="[None]"){ outputImageDirectory = "[]"; }else{ outputImageDirectory = "["+getDirectory("Choose destination directory for images")+"]"; } if(result=="[None]"){ outputResultsDirectory = "[]"; }else{ outputResultsDirectory = "["+getDirectory("Choose destination directory for Results tables")+"]"; } if(doc=="[No Documenetaton]"){ outputDocsDirectory = "[]"; }else{ outputDocsDirectory = "["+getDirectory("Choose destination directory for documentation preference files")+"]"; } listLight = getFileList(dirLight); listSound = getFileList(dirSound); numCases = listCases.length/2; for(i=0; i