|
| 1 | +#@ String(persistkey="datasetserverurl") host_port |
| 2 | +#@ String(persistkey="datasetdatasetid") dataset |
| 3 | +#@ String(description="Use single number like 0,1,2 or keywords latest or new") version = "latest" |
| 4 | + |
| 5 | +#@ int(min="0") uploadIntoThisChannel |
| 6 | +#@ int(min="0") uploadIntoThisAngle |
| 7 | +#@ int(min="0") uploadTimePoint_FROM |
| 8 | +#@ int(min="0") uploadTimePoint_TILL |
| 9 | + |
| 10 | +#@ String(description="The part of file name before the time-point running numbers", default="img") fileNameBeforeTPNumber |
| 11 | +#@ int(description="Pad running numbers with zeros up to the given width, set to 0 for no padding.", min="0", default="0") zeroPaddingWidth |
| 12 | +#@ String(description="The part of file name right after the time-point running numbers", default=".tif") fileNameAfterTPNumber = ".tif" |
| 13 | +#@ File(style="directory", description="Folder with the above defined files") inputDir |
| 14 | + |
| 15 | +#@ boolean verboseUpload = false |
| 16 | +#@ int(min="0", label="Timeout in seconds, e.g. 60") timeout |
| 17 | + |
| 18 | +//fixup boolean: 1 -> true |
| 19 | +if (verboseUpload == 1) { verboseUpload = "true"; } |
| 20 | + |
| 21 | +function padding(number, width) { |
| 22 | + if (width > 0) { |
| 23 | + numStr = "00000000000000000000"+number; |
| 24 | + return substring(numStr, numStr.length-width); |
| 25 | + } else { |
| 26 | + return number; |
| 27 | + } |
| 28 | +} |
| 29 | + |
| 30 | +function justSaveAsLevel(resLevelX,resLevelY,resLevelZ) { |
| 31 | + run("Write full image", "url="+host_port+" datasetid="+dataset+" versionasstr="+version+" timepoint="+t+" channel="+uploadIntoThisChannel+" angle="+uploadIntoThisAngle+" resolutionlevelsasstr=[["+resLevelX+", "+resLevelY+", "+resLevelZ+"]] timeout="+(timeout*1000)+" verboselog="+verboseUpload+" uploadrespyramids=true"); |
| 32 | +} |
| 33 | + |
| 34 | +function scaleAndSave(refMainImg, resLevelX,resLevelY,resLevelZ) { |
| 35 | + xFac = 1/resLevelX; |
| 36 | + yFac = 1/resLevelY; |
| 37 | + zFac = 1/resLevelZ; |
| 38 | + selectImage(refMainImg); |
| 39 | + run("Scale...", "x="+xFac+" y="+yFac+" z="+zFac+" interpolation=None process create"); |
| 40 | + justSaveAsLevel(resLevelX,resLevelY,resLevelZ); |
| 41 | + close(); |
| 42 | + //NB: close() is counterpart to "create" in the run() above |
| 43 | +} |
| 44 | + |
| 45 | +print("Uploading started...."); |
| 46 | +for (t = uploadTimePoint_FROM; t <= uploadTimePoint_TILL; t++) { |
| 47 | + filename = inputDir+"/"+fileNameBeforeTPNumber+padding(t,zeroPaddingWidth)+fileNameAfterTPNumber; |
| 48 | + print("Doing TP "+t+", that is a file: "+filename); |
| 49 | + |
| 50 | + open(filename); |
| 51 | + mainImgID = getImageID(); |
| 52 | + |
| 53 | + print("Saving resolution level 1"); |
| 54 | + justSaveAsLevel(1,1,1); |
| 55 | + |
| 56 | + print("Saving resolution level 2"); |
| 57 | + scaleAndSave(mainImgID, 2,2,1); |
| 58 | + |
| 59 | + print("Saving resolution level 3"); |
| 60 | + scaleAndSave(mainImgID, 4,4,1); |
| 61 | + |
| 62 | + selectImage(mainImgID); |
| 63 | + close(); |
| 64 | +} |
| 65 | +print("Uploading finished...."); |
0 commit comments