From Wednesday, September 20, 2017 through Friday, September 28, 2017, Christian Dietz of KNIME hosted ~20 developers at the KNIME Konstanz Regional Office for a hackathon to develop the KNIME Image Processing extensions along with the underlying ImageJ Ops library, as well as other related and/or supporting technologies such as Ilastik, ImgLib2 and BigDataViewer.
There was a big focus this time on machine learning, particularly deep learning networks applied to biological data.
Participants
-
KNIME: dietzc , gab1one , Jon Fuller, Alexander Fillbrunn , Jonathan Hale , Martin Horn , Simon Schmid , Marcel Wiedenmann , Patrick Winter
-
MPI-CBG Dresden: fjug , maarzt , tibuch , tpietzsch , Mangal Prakash , Deborah Schmidt , Vladimír Ulman , Benjamin Wilhelm
-
Others: imagejan , chaubold , stelfrich , David Kolb , milkyklim , kmader , Julianus Pfeuffer, StephanPreibisch , Jonas Probst, René Rahn, ctrueden
Hackathon progress
Curtis Rueden
- Worked with Stefan Helfrich on automating releases of SciJava components via Travis CI ([https://github.com/scijava/scijava-scripts/compare/0235621…f5965c3 1], 2 , 3 ).
- Assisted Stefan Helfrich
in improvements to the
imagej-maven-plugin
(1 ) - Reviewed and merged maarzt ‘s initial revamp of the SciJava log framework (1 , 2 ).
- Reviewed and merged Jan Eglinger
‘s work adding a SciJava widget for
File[]
inputs (1 , 2 , 3 ). - With Jan Eglinger , began work on several related SciJava scripting enhancements (1).
- Helped Benjamin Wilhelm
and Deborah Schmidt
with ImageJ/TensorFlow integration and API improvements (PR(s) to
imagej/imagej-tensorflow
forthcoming). - With Christian Dietz
, continued work on the next-generation SciJava Struct API, including an overhauled widget framework and Swing widget implementations (as of this writing, on an unstable branch of
scijava/scijava-ops
repository; see here for a written update with illustration of progress). - Helped chaubold set up his shiny new Ilastik-ImageJ integration with Travis CI and deploy it to the ImageJ Maven repository.
Florian Jug
- Worked on a KNIME workflow that starts IsoNet-type deep nets on a image column. Works well now, but we want to move tiled executions out from python and move it into KNIME (and also Fiji). This follow-up work will be performed by Deborah Schmidt and Benjamin Wilhelm .
- Received TGMM groin truth data an started working on Tr3d demo dataset.
- Started working on min cell-cycle constraints for Tr2d. This will make the ILP explode…
- Discussions with ctrueden , Stefan Helfrich and tpietzsch about ImageJ Conference details for 2018.
Tim-Oliver Buchholz
- Worked on the Big Data Viewer GUI.
- Helped maarzt and Vladimír Ulman with KNIME Image Processing Node development.
- Fixed
DefaultDifferenceVariance
feature of the Haralick feature-set inimagej-ops
(1 ).
Benjamin Wilhelm
- Worked on CSBDeep Fiji Plugin.
- Added Overlap to TiledView PR in imglib2.
- Worked on API improvements in
imagej/imagej-tensorflow
with the help of ctrueden . - Programmed KNIME Image Processing nodes which provied a loop over tiles of an image. See branch on GitHub.
Stefan Helfrich
- Worked on improvements to the
imagej-maven-plugin
(1 , 2 , 3 ) - Got chaubold , maarzt , and Vladimír Ulman started on integrating their SciJava Commands as KNIME nodes
- Reviewed PRs of
imagej-ops
(1 , 2 , 3 , 4) - Looked into migration of algorithms from MorphoLibJ to Ops/ImgLib2
- Worked with milkyklim on migrating an ImageJ1 plugin to a SciJava Command (and possibly Ops for computations)
- Fixed some bugs with respect to
@Parameters
(1 , 2 ) - Paired with Curtis Rueden to push the cloud-based build and deploy infrastructure
Tobias Pietzsch
- Worked on imglib2 discrete regions framework (imglib2-roi branch “cleaned-up”, imglib-tests branch “roi”).
- Reviewed imglib2-roi Masks PR , and worked on revision/re-implementation of core interfaces and operators (imglib2-roi branch “troi”).
- Worked on reviewing and integrating “dynamic bookmarks” feature by Max Kleinhenz into BigDataViewer.
- Minor BigDataViewer features to help tibuch with Big Data Viewer GUI.
Matthias Arzt
- Worked on revamp of the scijava logging framework.
- Worked on LoopBuilder, as tool for writing loops on images with imglib2.
- Got an introduction on KNIME Node development by Tim Oliver and Stefan Hilfrich
- Created a KNIME image processing plugin for image segmentation based on Labkit / Trainable Segmentation.
Technical discussions
- Fiji component and application releases: today and in the future (ctrueden
, fjug
, tpietzsch
)
- Next stable release (December 2017) will still follow the ‘old’ way of doing things.
- In case the DFG grant comes in and we hired the 2 people they will start implementing the new way of cutting stable releases. This will be great!
- How to integrate ImageJ, KNIME and machine learning frameworks (particularly Keras and TensorFlow)