Login  Register

Re: Trainable Weka segmentation: Probability map but not Classiefied image produced by macro

Posted by Ignacio Arganda-Carreras on Jan 29, 2015; 9:27am
URL: http://imagej.273.s1.nabble.com/Trainable-Weka-segmentation-Probability-map-but-not-Classiefied-image-produced-by-macro-tp5011357p5011363.html

Thanks Martin and Niko for reporting this problem!

I have just fixed it and released a new version of the plugin.

Enjoy!

On Thu, Jan 29, 2015 at 10:23 AM, Nikolay Kladt <[hidden email]> wrote:

> Hi Martin,
>
> I think there is a bug in the Weka Segmentation function public static void
> getResult(). If I compare this function to the public static void
> getProbability(), the getProbability function sets wekaSegmentation.
> applyClassifier(true) before actually getting the classified image. I did
> not delve deeper into this issue and also did not add code changes to the
> segmentation plugin for testing, but I used this to get the macro working
> with following workaround.
>
> This also seems to explain why following workaround in the macro works:
>
> call("trainableSegmentation.Weka_Segmentation.getProbability"); -> to
> ensure that a classified image was created. selectWindow("Trainable Weka
> Segmentation v2.1.7");
> call("trainableSegmentation.Weka_Segmentation.getResult");
>
> If you now close the Probability map window in choice==2, this worked on my
> machine although this makes the macro slightly longer to run as the
> probability maps are calculated anyway.
>
>
> Niko
>
>
> On Wed, Jan 28, 2015 at 6:43 PM, Martin Höhne <[hidden email]>
> wrote:
>
> > Dear all,
> >
> > I try to get a Classified image created by a macro but this does not work
> > for me. Creating a probability map works fine though.
> > I modified the example macro from this page
> >
> > http://fiji.sc/Trainable_Weka_Segmentation#Macro_language_compatibility
> >
> > to reproduce what I mean (pasted below).
> >
> > If I select [1-probability map] in the beginning, the macro does what  I
> > expect. If I select [2- classified image] nothing happens. I can manually
> > click on "Create result" and the Classified image is created. Shouldn´t
> > that
> > work from the macro as well?
> >
> > Thanks for helping
> > Martin
> >
> > I´m using
> > (Fiji Is Just) ImageJ 2.0.0-rc-23/1.49m
> >
> >
> > ***************macro to reproduce the behaviour**************
> >
> > //get home directory
> > home=getDirectory("home");
> >
> > //choice between probability maps or classified image
> > Dialog.create("Info");
> >         Dialog.addNumber("Probability map [1] or Classified image [2] ?
> > ",1);
> >         Dialog.show();
> >         choice=Dialog.getNumber();
> >
> > // Open Leaf sample
> > run("Leaf (36K)");
> >
> > // start plugin
> > run("Trainable Weka Segmentation");
> >
> > // wait for the plugin to load
> > wait(3000);
> > selectWindow("Trainable Weka Segmentation v2.1.7");
> >
> > // add one region of interest to each class
> > makeRectangle(367, 0, 26, 94);
> > call("trainableSegmentation.Weka_Segmentation.addTrace", "0", "1");
> > makeRectangle(186, 132, 23, 166);
> > call("trainableSegmentation.Weka_Segmentation.addTrace", "1", "1");
> >
> > // train current classifier
> > call("trainableSegmentation.Weka_Segmentation.trainClassifier");
> >
> > // save current classifier
> > call("trainableSegmentation.Weka_Segmentation.saveClassifier",
> > home+File.separator+"testclassifier.model");
> >
> > // close weka plugin
> > selectWindow("Trainable Weka Segmentation v2.1.7");
> > run("Close");
> > wait(3000);
> >
> > // start plugin again
> > run("Trainable Weka Segmentation");
> >
> > // wait for the plugin to load
> > wait(3000);
> > selectWindow("Trainable Weka Segmentation v2.1.7");
> >
> > //load classifier
> > call("trainableSegmentation.Weka_Segmentation.loadClassifier",
> > home+File.separator+"testclassifier.model");
> >
> > // display probability maps or Classified image
> >
> > if (choice==1)
> > call("trainableSegmentation.Weka_Segmentation.getProbability"); //this
> > works
> > fine
> > if (choice==2) call("trainableSegmentation.Weka_Segmentation.getResult");
> > //this does not work
> >
> >
> >
> > --
> > View this message in context:
> >
> http://imagej.1557.x6.nabble.com/Trainable-Weka-segmentation-Probability-map-but-not-Classiefied-image-produced-by-macro-tp5011357.html
> > Sent from the ImageJ mailing list archive at Nabble.com.
> >
> > --
> > ImageJ mailing list: http://imagej.nih.gov/ij/list.html
> >
>
>
>
> --
> Dr. Nikolay Kladt
> Image and Data Analyst, CECAD Imaging Facility
> [hidden email]
> ++49 221 478 84028
> https://www.linkedin.com/in/kladtn
>
> CECAD Cologne - Excellent in Aging Research
> Universität zu Köln
> Joseph-Stelzmann Str. 26
> 50931 Cologne
>
> --
> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>



--
Ignacio Arganda-Carreras, Ph.D.
Seung's lab, 46-5065
Department of Brain and Cognitive Sciences
Massachusetts Institute of Technology
43 Vassar St.
Cambridge, MA 02139
USA

Phone: (001) 617-324-3747
Website: http://bioweb.cnb.csic.es/~iarganda/index_EN.html

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html