Hi Ignacio,
I have a question/feature request for your Trainable Weka Segmentation plugin again :) Currently, the probability map you get upon clicking the "Get probability" button is not calibrated/scaled. I think adding a simple result.setCalibration(trainingImage.getCalibration()) to WekaSegmentation.java in line #4489 [1] would do the trick. I would have filed a pull request, but couldn't test it quickly because of maven-javadoc-plugin failing when trying to run maven (I have to sort that out later). In addition, I noticed that a NullPointerException is thrown (now displayed in the new ImageJ Console [2]) upon starting Trainable Weka Segmentation, related to the GenericObjectEditor class of weka when you try to insert classifiers [3]. I pasted the stack trace below [4]. Don't know if that's something important to fix, but it might annoy users now that the Console is there. Best regards, Jan [1]: https://github.com/fiji/Trainable_Segmentation/blob/master/src/main/java/trainableSegmentation/WekaSegmentation.java#L4489 [2]: http://imagej.net/2015-03-26_-_ImageJ_2.0.0-rc-28_released [3]: https://github.com/fiji/Trainable_Segmentation/blob/master/src/main/java/trainableSegmentation/Weka_Segmentation.java#L2350-2371 [4]: Console output: Refreshing GOE props... java.lang.NullPointerException at weka.core.ClassCache.initFromManifest(ClassCache.java:248) at weka.core.ClassCache.initFromJar(ClassCache.java:293) at weka.core.ClassCache.initFromClasspathPart(ClassCache.java:351) at weka.core.ClassCache.initialize(ClassCache.java:373) at weka.core.ClassCache.<init>(ClassCache.java:111) at weka.core.ClassDiscovery.initCache(ClassDiscovery.java:447) at weka.core.ClassDiscovery.clearCache(ClassDiscovery.java:481) at weka.core.ClassDiscovery.clearClassCache(ClassDiscovery.java:490) at weka.core.WekaPackageManager.refreshGOEProperties(WekaPackageManager.java:1143) at weka.core.WekaPackageManager.loadPackages(WekaPackageManager.java:1134) at weka.core.WekaPackageManager.loadPackages(WekaPackageManager.java:1047) at weka.gui.GenericObjectEditor.determineClasses(GenericObjectEditor.java:177) at weka.gui.GenericObjectEditor.<clinit>(GenericObjectEditor.java:247) at sun.misc.Unsafe.ensureClassInitialized(Native Method) at sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(UnsafeFieldAccessorFactory.java:25) at sun.reflect.ReflectionFactory.newFieldAccessor(ReflectionFactory.java:122) at java.lang.reflect.Field.acquireFieldAccessor(Field.java:918) at java.lang.reflect.Field.getFieldAccessor(Field.java:899) at java.lang.reflect.Field.get(Field.java:358) at trainableSegmentation.Weka_Segmentation.<clinit>(Weka_Segmentation.java:2358) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at java.lang.Class.newInstance0(Class.java:355) at java.lang.Class.newInstance(Class.java:308) at ij.IJ.runUserPlugIn(IJ.java:197) at ij.IJ.runPlugIn(IJ.java:163) at ij.Executer.runCommand(Executer.java:131) at ij.Executer.run(Executer.java:64) at java.lang.Thread.run(Thread.java:619) -- ImageJ mailing list: http://imagej.nih.gov/ij/list.html |
Hello Jan,
Thanks for reporting all of this. I will have a look and try to fix it as soon as i can! Best, ignacio On Tue, Mar 31, 2015 at 12:15 PM, Jan Eglinger <[hidden email]> wrote: > Hi Ignacio, > > I have a question/feature request for your Trainable Weka Segmentation > plugin again :) > Currently, the probability map you get upon clicking the "Get probability" > button is not calibrated/scaled. I think adding a simple > > result.setCalibration(trainingImage.getCalibration()) > > to WekaSegmentation.java in line #4489 [1] would do the trick. > I would have filed a pull request, but couldn't test it quickly because of > maven-javadoc-plugin failing when trying to run maven (I have to sort that > out later). > > In addition, I noticed that a NullPointerException is thrown (now > displayed in the new ImageJ Console [2]) upon starting Trainable Weka > Segmentation, related to the GenericObjectEditor class of weka when you try > to insert classifiers [3]. I pasted the stack trace below [4]. Don't know > if that's something important to fix, but it might annoy users now that the > Console is there. > > Best regards, > Jan > > > [1]: https://github.com/fiji/Trainable_Segmentation/blob/ > master/src/main/java/trainableSegmentation/WekaSegmentation.java#L4489 > > [2]: http://imagej.net/2015-03-26_-_ImageJ_2.0.0-rc-28_released > > [3]: https://github.com/fiji/Trainable_Segmentation/blob/ > master/src/main/java/trainableSegmentation/Weka_ > Segmentation.java#L2350-2371 > > [4]: Console output: > > Refreshing GOE props... > java.lang.NullPointerException > at weka.core.ClassCache.initFromManifest(ClassCache.java:248) > at weka.core.ClassCache.initFromJar(ClassCache.java:293) > at weka.core.ClassCache.initFromClasspathPart(ClassCache.java:351) > at weka.core.ClassCache.initialize(ClassCache.java:373) > at weka.core.ClassCache.<init>(ClassCache.java:111) > at weka.core.ClassDiscovery.initCache(ClassDiscovery.java:447) > at weka.core.ClassDiscovery.clearCache(ClassDiscovery.java:481) > at weka.core.ClassDiscovery.clearClassCache( > ClassDiscovery.java:490) > at weka.core.WekaPackageManager.refreshGOEProperties( > WekaPackageManager.java:1143) > at weka.core.WekaPackageManager.loadPackages( > WekaPackageManager.java:1134) > at weka.core.WekaPackageManager.loadPackages( > WekaPackageManager.java:1047) > at weka.gui.GenericObjectEditor.determineClasses( > GenericObjectEditor.java:177) > at weka.gui.GenericObjectEditor.<clinit>(GenericObjectEditor. > java:247) > at sun.misc.Unsafe.ensureClassInitialized(Native Method) > at sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor( > UnsafeFieldAccessorFactory.java:25) > at sun.reflect.ReflectionFactory.newFieldAccessor( > ReflectionFactory.java:122) > at java.lang.reflect.Field.acquireFieldAccessor(Field.java:918) > at java.lang.reflect.Field.getFieldAccessor(Field.java:899) > at java.lang.reflect.Field.get(Field.java:358) > at trainableSegmentation.Weka_Segmentation.<clinit>(Weka_ > Segmentation.java:2358) > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at sun.reflect.NativeConstructorAccessorImpl.newInstance( > NativeConstructorAccessorImpl.java:39) > at sun.reflect.DelegatingConstructorAccessorImpl.newInstance( > DelegatingConstructorAccessorImpl.java:27) > at java.lang.reflect.Constructor.newInstance(Constructor.java:513) > at java.lang.Class.newInstance0(Class.java:355) > at java.lang.Class.newInstance(Class.java:308) > at ij.IJ.runUserPlugIn(IJ.java:197) > at ij.IJ.runPlugIn(IJ.java:163) > at ij.Executer.runCommand(Executer.java:131) > at ij.Executer.run(Executer.java:64) > at java.lang.Thread.run(Thread.java:619) > -- Ignacio Arganda-Carreras, Ph.D. Institut Jean-Pierre Bourgin, UMR1318 INRA-AgroParisTech Bâtiment 2 INRA Centre de Versailles-Grignon Route de St-Cyr (RD10) 78026 Versailles Cedex France Tel : +33 (0)1 30 83 30 00 - fax : +33 (0)1 30 83 33 19 Website: http://sites.google.com/site/iargandacarreras/ <http://biocomp.cnb.csic.es/~iarganda/index_EN.html> -- ImageJ mailing list: http://imagej.nih.gov/ij/list.html |
Hello Jan,
Regarding the exceptions you mentioned, I had a look and it seems they are originated in the weka library reading Fiji jars without manifest. Therefore it's not related to the plugin. I hope this will be fixed with the updates of those external jars. I cannot even reproduce the error with the debugger in Eclipse... Cheers! ignacio On Tue, Mar 31, 2015 at 12:53 PM, Ignacio Arganda-Carreras < [hidden email]> wrote: > Hello Jan, > > Thanks for reporting all of this. I will have a look and try to fix it as > soon as i can! > > Best, > > ignacio > > On Tue, Mar 31, 2015 at 12:15 PM, Jan Eglinger <[hidden email]> > wrote: > >> Hi Ignacio, >> >> I have a question/feature request for your Trainable Weka Segmentation >> plugin again :) >> Currently, the probability map you get upon clicking the "Get >> probability" button is not calibrated/scaled. I think adding a simple >> >> result.setCalibration(trainingImage.getCalibration()) >> >> to WekaSegmentation.java in line #4489 [1] would do the trick. >> I would have filed a pull request, but couldn't test it quickly because >> of maven-javadoc-plugin failing when trying to run maven (I have to sort >> that out later). >> >> In addition, I noticed that a NullPointerException is thrown (now >> displayed in the new ImageJ Console [2]) upon starting Trainable Weka >> Segmentation, related to the GenericObjectEditor class of weka when you try >> to insert classifiers [3]. I pasted the stack trace below [4]. Don't know >> if that's something important to fix, but it might annoy users now that the >> Console is there. >> >> Best regards, >> Jan >> >> >> [1]: https://github.com/fiji/Trainable_Segmentation/blob/ >> master/src/main/java/trainableSegmentation/WekaSegmentation.java#L4489 >> >> [2]: http://imagej.net/2015-03-26_-_ImageJ_2.0.0-rc-28_released >> >> [3]: https://github.com/fiji/Trainable_Segmentation/blob/ >> master/src/main/java/trainableSegmentation/Weka_ >> Segmentation.java#L2350-2371 >> >> [4]: Console output: >> >> Refreshing GOE props... >> java.lang.NullPointerException >> at weka.core.ClassCache.initFromManifest(ClassCache.java:248) >> at weka.core.ClassCache.initFromJar(ClassCache.java:293) >> at weka.core.ClassCache.initFromClasspathPart( >> ClassCache.java:351) >> at weka.core.ClassCache.initialize(ClassCache.java:373) >> at weka.core.ClassCache.<init>(ClassCache.java:111) >> at weka.core.ClassDiscovery.initCache(ClassDiscovery.java:447) >> at weka.core.ClassDiscovery.clearCache(ClassDiscovery.java:481) >> at weka.core.ClassDiscovery.clearClassCache( >> ClassDiscovery.java:490) >> at weka.core.WekaPackageManager.refreshGOEProperties( >> WekaPackageManager.java:1143) >> at weka.core.WekaPackageManager.loadPackages( >> WekaPackageManager.java:1134) >> at weka.core.WekaPackageManager.loadPackages( >> WekaPackageManager.java:1047) >> at weka.gui.GenericObjectEditor.determineClasses( >> GenericObjectEditor.java:177) >> at weka.gui.GenericObjectEditor.<clinit>(GenericObjectEditor. >> java:247) >> at sun.misc.Unsafe.ensureClassInitialized(Native Method) >> at sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor( >> UnsafeFieldAccessorFactory.java:25) >> at sun.reflect.ReflectionFactory.newFieldAccessor( >> ReflectionFactory.java:122) >> at java.lang.reflect.Field.acquireFieldAccessor(Field.java:918) >> at java.lang.reflect.Field.getFieldAccessor(Field.java:899) >> at java.lang.reflect.Field.get(Field.java:358) >> at trainableSegmentation.Weka_Segmentation.<clinit>(Weka_ >> Segmentation.java:2358) >> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native >> Method) >> at sun.reflect.NativeConstructorAccessorImpl.newInstance( >> NativeConstructorAccessorImpl.java:39) >> at sun.reflect.DelegatingConstructorAccessorImpl.newInstance( >> DelegatingConstructorAccessorImpl.java:27) >> at java.lang.reflect.Constructor.newInstance(Constructor.java: >> 513) >> at java.lang.Class.newInstance0(Class.java:355) >> at java.lang.Class.newInstance(Class.java:308) >> at ij.IJ.runUserPlugIn(IJ.java:197) >> at ij.IJ.runPlugIn(IJ.java:163) >> at ij.Executer.runCommand(Executer.java:131) >> at ij.Executer.run(Executer.java:64) >> at java.lang.Thread.run(Thread.java:619) >> > > > > -- > Ignacio Arganda-Carreras, Ph.D. > Institut Jean-Pierre Bourgin, UMR1318 INRA-AgroParisTech > Bâtiment 2 > INRA Centre de Versailles-Grignon > Route de St-Cyr (RD10) > 78026 Versailles Cedex France > > Tel : +33 (0)1 30 83 30 00 - fax : +33 (0)1 30 83 33 19 > Website: http://sites.google.com/site/iargandacarreras/ > <http://biocomp.cnb.csic.es/~iarganda/index_EN.html> > -- Ignacio Arganda-Carreras, Ph.D. Institut Jean-Pierre Bourgin, UMR1318 INRA-AgroParisTech Bâtiment 2 INRA Centre de Versailles-Grignon Route de St-Cyr (RD10) 78026 Versailles Cedex France Tel : +33 (0)1 30 83 30 00 - fax : +33 (0)1 30 83 33 19 Website: http://sites.google.com/site/iargandacarreras/ <http://biocomp.cnb.csic.es/~iarganda/index_EN.html> -- ImageJ mailing list: http://imagej.nih.gov/ij/list.html |
Hi Ignacio,
> I had a look and it seems they are originated in the weka library > reading Fiji jars without manifest. Therefore it's not related to the > plugin. I hope this will be fixed with the updates of those external > jars. I filed an issue so we will not forget: https://github.com/fiji/fiji/issues/120 Regards, Curtis On Tue, Apr 14, 2015 at 5:47 AM, Ignacio Arganda-Carreras < [hidden email]> wrote: > Hello Jan, > > Regarding the exceptions you mentioned, I had a look and it seems they are > originated in the weka library reading Fiji jars without manifest. > Therefore it's not related to the plugin. I hope this will be fixed with > the updates of those external jars. I cannot even reproduce the error with > the debugger in Eclipse... > > Cheers! > > ignacio > > On Tue, Mar 31, 2015 at 12:53 PM, Ignacio Arganda-Carreras < > [hidden email]> wrote: > > > Hello Jan, > > > > Thanks for reporting all of this. I will have a look and try to fix it as > > soon as i can! > > > > Best, > > > > ignacio > > > > On Tue, Mar 31, 2015 at 12:15 PM, Jan Eglinger <[hidden email]> > > wrote: > > > >> Hi Ignacio, > >> > >> I have a question/feature request for your Trainable Weka Segmentation > >> plugin again :) > >> Currently, the probability map you get upon clicking the "Get > >> probability" button is not calibrated/scaled. I think adding a simple > >> > >> result.setCalibration(trainingImage.getCalibration()) > >> > >> to WekaSegmentation.java in line #4489 [1] would do the trick. > >> I would have filed a pull request, but couldn't test it quickly because > >> of maven-javadoc-plugin failing when trying to run maven (I have to sort > >> that out later). > >> > >> In addition, I noticed that a NullPointerException is thrown (now > >> displayed in the new ImageJ Console [2]) upon starting Trainable Weka > >> Segmentation, related to the GenericObjectEditor class of weka when you > try > >> to insert classifiers [3]. I pasted the stack trace below [4]. Don't > know > >> if that's something important to fix, but it might annoy users now that > the > >> Console is there. > >> > >> Best regards, > >> Jan > >> > >> > >> [1]: https://github.com/fiji/Trainable_Segmentation/blob/ > >> master/src/main/java/trainableSegmentation/WekaSegmentation.java#L4489 > >> > >> [2]: http://imagej.net/2015-03-26_-_ImageJ_2.0.0-rc-28_released > >> > >> [3]: https://github.com/fiji/Trainable_Segmentation/blob/ > >> master/src/main/java/trainableSegmentation/Weka_ > >> Segmentation.java#L2350-2371 > >> > >> [4]: Console output: > >> > >> Refreshing GOE props... > >> java.lang.NullPointerException > >> at weka.core.ClassCache.initFromManifest(ClassCache.java:248) > >> at weka.core.ClassCache.initFromJar(ClassCache.java:293) > >> at weka.core.ClassCache.initFromClasspathPart( > >> ClassCache.java:351) > >> at weka.core.ClassCache.initialize(ClassCache.java:373) > >> at weka.core.ClassCache.<init>(ClassCache.java:111) > >> at weka.core.ClassDiscovery.initCache(ClassDiscovery.java:447) > >> at weka.core.ClassDiscovery.clearCache(ClassDiscovery.java:481) > >> at weka.core.ClassDiscovery.clearClassCache( > >> ClassDiscovery.java:490) > >> at weka.core.WekaPackageManager.refreshGOEProperties( > >> WekaPackageManager.java:1143) > >> at weka.core.WekaPackageManager.loadPackages( > >> WekaPackageManager.java:1134) > >> at weka.core.WekaPackageManager.loadPackages( > >> WekaPackageManager.java:1047) > >> at weka.gui.GenericObjectEditor.determineClasses( > >> GenericObjectEditor.java:177) > >> at weka.gui.GenericObjectEditor.<clinit>(GenericObjectEditor. > >> java:247) > >> at sun.misc.Unsafe.ensureClassInitialized(Native Method) > >> at sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor( > >> UnsafeFieldAccessorFactory.java:25) > >> at sun.reflect.ReflectionFactory.newFieldAccessor( > >> ReflectionFactory.java:122) > >> at java.lang.reflect.Field.acquireFieldAccessor(Field.java:918) > >> at java.lang.reflect.Field.getFieldAccessor(Field.java:899) > >> at java.lang.reflect.Field.get(Field.java:358) > >> at trainableSegmentation.Weka_Segmentation.<clinit>(Weka_ > >> Segmentation.java:2358) > >> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > >> Method) > >> at sun.reflect.NativeConstructorAccessorImpl.newInstance( > >> NativeConstructorAccessorImpl.java:39) > >> at sun.reflect.DelegatingConstructorAccessorImpl.newInstance( > >> DelegatingConstructorAccessorImpl.java:27) > >> at java.lang.reflect.Constructor.newInstance(Constructor.java: > >> 513) > >> at java.lang.Class.newInstance0(Class.java:355) > >> at java.lang.Class.newInstance(Class.java:308) > >> at ij.IJ.runUserPlugIn(IJ.java:197) > >> at ij.IJ.runPlugIn(IJ.java:163) > >> at ij.Executer.runCommand(Executer.java:131) > >> at ij.Executer.run(Executer.java:64) > >> at java.lang.Thread.run(Thread.java:619) > >> > > > > > > > > -- > > Ignacio Arganda-Carreras, Ph.D. > > Institut Jean-Pierre Bourgin, UMR1318 INRA-AgroParisTech > > Bâtiment 2 > > INRA Centre de Versailles-Grignon > > Route de St-Cyr (RD10) > > 78026 Versailles Cedex France > > > > Tel : +33 (0)1 30 83 30 00 - fax : +33 (0)1 30 83 33 19 > > Website: http://sites.google.com/site/iargandacarreras/ > > <http://biocomp.cnb.csic.es/~iarganda/index_EN.html> > > > > > > -- > Ignacio Arganda-Carreras, Ph.D. > Institut Jean-Pierre Bourgin, UMR1318 INRA-AgroParisTech > Bâtiment 2 > INRA Centre de Versailles-Grignon > Route de St-Cyr (RD10) > 78026 Versailles Cedex France > > Tel : +33 (0)1 30 83 30 00 - fax : +33 (0)1 30 83 33 19 > Website: http://sites.google.com/site/iargandacarreras/ > <http://biocomp.cnb.csic.es/~iarganda/index_EN.html> > > -- > ImageJ mailing list: http://imagej.nih.gov/ij/list.html > -- ImageJ mailing list: http://imagej.nih.gov/ij/list.html |
Free forum by Nabble | Edit this page |