http://imagej.273.s1.nabble.com/issue-works-with-Fiji-graphical-interface-but-not-on-the-command-line-tp5024747p5024752.html
macro commands.
Watershed). It does segmentation all the way into the background, so one
from the background.
Analyze Particles with show "count masks" output after the segmentation.
> Dear fellow developers/users,
>
> I was recently recommended to use Fiji and find it very nice, indeed.
> Also it looks easy to automatize image analysis but I hit the wall here.
>
> I installed the Interactive Watershed plugin
> (I guess my issue is not specific to it, though)
> from "
https://imagej.net/plugins/interactive-watershed"
> and run it from a simple javascript macro (attached):
>
> ImageJ-linux64 -macro attempt.js
>
> It loads an image --> grayscale --> Watershed (not actually interactively).
> The issue is that it cannot find the result image, instead it saves the
> grayscale image (its log is attached as CLI.txt).
>
>
> Interestingly, running the same script from the Plugins/Macros/Run menu
> (after File/Close All) I got the real results saved.
> Its log is attached as GUI.txt to let you compare to CLI.txt.
>
>
> I tried whatever I found at
>
https://imagej.nih.gov/ij/developer/api/ij/module-summary.html> to no avail.
>
> Can you please give me a hint on how to hunt down the results?
>
> Thank you in advance,
> Tamas
>
>
> My script is listed here as the mailer assumes it is insecure:
>
> // Example script to load a raster image and do the Interactive Watershed.
> //
> // NOTE: While it runs when loaded via Plugins/Macros/Run,
> // running from the command line it fails:
> //
> // $ ImageJ-linux64 -macro attempt.js
> //
> // (probably due to grabbing the wrong window, ie. taking the
> // grayscale image instead of the watershedded one; it is seen
> // from that the wrong window is renamed to "apple").
> //
> // NOTE-2: I do not think it is related to Interactive Watershed at all.
>
>
> importClass(Packages.ij.IJ);
> importClass(Packages.ij.WindowManager);
>
>
>
> function listAllWindowsAndImages( ) {
> IJ.log("\n Window IDs ("+WindowManager.getWindowCount()+"):");
> var IDlist = WindowManager.getIDList();
> for (var i in IDlist) {
> IJ.log(" "+IDlist[i]);
> if (i == IDlist.length)
> IJ.log(" <-- the last one");
> }
> IJ.log(" Images ("+WindowManager.getImageCount()+"):");
> var IMlist = WindowManager.getImageTitles();
> for (var i in IMlist)
> IJ.log(" "+IMlist[i]+" ID: "+WindowManager.getNthImageID(i));
> IJ.log(" Non-images:");
> IMlist = WindowManager.getNonImageTitles();
> for (var i in IMlist)
> IJ.log(" "+IMlist[i]);
> IJ.log("\n");
> }
>
>
>
> IJ.log("Loading an image...");
> // from "
https://imagej.net/plugins/interactive-watershed":
> var imGray = IJ.openImage("figure-hmax-hwatershed-v3.png");
> IJ.log("imGray: "+imGray+"\n"); // not now but soon it will be gray
> listAllWindowsAndImages();
>
>
> IJ.log("Showing it...");
> imGray.show(); // if missing: the plugin cannot process `imGray'
> listAllWindowsAndImages();
>
>
> var titleGray = "gray"
> IJ.log("Turning it to gray and renaming to \""+titleGray+"\"...");
> IJ.run("32-bit");
> imGray.setTitle(titleGray);
> listAllWindowsAndImages();
>
>
> IJ.log("Performing the main activity (takes a few seconds)...");
> IJ.run("H_Watershed","impin=["+titleGray+"] hmin="
> +20+" thresh="+100+" peakflooding="+90
> +" outputmask=true allowsplitting=false");
> listAllWindowsAndImages();
>
>
> //
> // look for the result image (the point that fails):
> //
>
>
> // via GUI it retrieves the latest (ie. results) image, but
> // via the command line it takes the grayscale (ie. previous) image/window
> var imWS = IJ.getImage();
> var titleWS = "apple";
> imWS.setTitle(titleWS);
> IJ.log("imWS: "+imWS+"\n");
> listAllWindowsAndImages();
>
>
> IJ.log("\n###");
> if (imWS == imGray) {
> IJ.log("It is probable that THE WRONG IMAGE will be saved!");
> } else {
> IJ.log("It is probable that the CORRECT image will be saved.");
> }
> IJ.log("###\n");
>
>
> IJ.save(imWS,titleWS+".png");
> IJ.log("saved \""+titleWS+".png\".\n");
>
> --
> ImageJ mailing list:
http://imagej.nih.gov/ij/list.html>