Dear image.sc community,
I really need your expertise!
- We have a plugin to run ilastik which has two parameters of type
DataSet(the auto-generated goi shows dropdown lists).
- Macro recording works , however
- Running the macro again with the same recorded Parameters will still pop up the Gui and effectively make it impossible to run in batch mode.
- A “minimal” running example of this plugin can be found here: https://github.com/k-dominik/minimal-fiji-plugin-issue. I’ve also pre-build the plugin here so you can just install it by placing it into your plugins folder
So, how to make this work in batch?
we, at the ilastik team have an (imagej2) plugin to bridge the gap from ilastik to ImageJ/Fiji: ilastik4ij. It allows users to run ilastik workflows from within fiji. In the simple case, the user supplies a few parameters and a dataset and gets back an image. This already works beautifully using using the scijava magic to gather user input. Macro recording/playback also works nicely in the simple case.
But for more complex things, we don’t use one, but two input images of type
net.imagej.Dataset. In this case, when the macro is recorded, the parameters are resolved correctly. When running the plugin, however, there will be a popup asking for the parameters again. This effectively renders batch processing in this case impossible.
I have boiled down our plugin to the most simple thing that still reproduces the error in this repository. This thing is so simple I’m almost inclined to post the source code here (the only code can be found in …/DemoCommand.java). It has two parameters of type
net.imagej.Dataset, and when run, it does nothing but print a debug message. It shows the same behavior with respect to macro recording/playback as our original plugin.
You can try it our yourself, a binary can be found here.
There is even an example folder in the repository that contains a recorded macro along with two images.
So it would be really great if someone has an idea how to get this running, how to debug this better, or point me to someone who might know something.
Thanks a lot!
I am not a java developer, leave alone familiar with all the fanciness of the scijava plugin auto-magic that is at play here. A lot of great people have contributed to our Fiji plugin in the past that allows ilastik to be run from within Fiji. So it would be great to resolve this remaining issue and make our plugin fly
There is an original thread that is concerned with this behavior: Object Classification using the ilastik plugin for Fiji, but it was very specific to the ilastik plugin, and I believe that this thread has greater chances of finding the cause.