2016-12-20 - Fiji + KNIP hackathon
From Tuesday, December 6, 2016 through Friday, December 16, 2016, the Max Planck Institute of Molecular Cell Biology and Genetics hosted ~20 developers at their facility in Dresden, Germany for a hackathon to develop ImageJ2 and Fiji core infrastructure and plugins.
- 1 Timeline
- 2 Gallery
- 3 Hackathon progress
- 4 Technical discussions
The following chart illustrates when everyone was present:
- Participated in technical discussions about ThreeDViewer, BigDataViewer and the next generation of viewers used in KNIME Image Processing.
- Participated in discussions about ImageJ Ops based feature extraction.
- Worked on the integration of the BigDataViewer as new standard viewer in KNIME Image Processing.
- continued work on the Scenery 3D rendering backend for ThreeDViewer and ClearVolume 2.0:
- fixed some bugs in ClearVolume, together with Loic Royer
- discussed future directions for ThreeDViewer/ClearVolume/BigDataViewer with Kyle Harrington, Loic Royer, Tobias Pietzsch and Stephan Saalfeld
- Participated in discussions about Fiji release cycle and ImageJ Ops based feature extraction
- Bugfixed a tool for visualising Meshes in the good old 3D Viewer which were derived from ArrayList<RandomAccessibleInterval<BoolType>>s as an intermediate solution until the ThreeDViewer is ready.
- Built an ImageJ-Ops based particle analyser, which will in the future allow processing 3D images in a way like 2D images were processed using the good old Particle Analysis tool
- With Matthias Arzt, Florian Jug, and Curtis Rueden we launched the work on a
- Participated in technical discussions, especially those focused on the next generation ThreeDViewer
- Finished integrating imagej-ops usage into Funimage (see Funimage#26)
- Unifying Mesh data structure from ops with imagej-mesh file loading with Richard Domander
- More ThreeDViewer enhancements
- With Curtis Rueden, overhauled the SciJava Common logging mechanism (scijava/scijava-common#253).
- With Curtis Rueden,Robert Haase,Tobias Pietzsch, and Stephan Saalfeld split up the necessary work in order to cut stable releases of Fiji (biannually). This 'earned' me the status of 'Grand Poobah'. ;)
- Worked on an 'indago' parent POM for DAIS related projects and started using it for the new tracker 'Tr2d'.
- Worked on the new tracker 'Tr2d'. New features: improved leveraged editing; tracklet export; improved BDV overlays.
- With Loic Royer and Martin Weigert we have fixed some reported ClearVolume bugs and released a new version after testing on Win/Linux/MaxOS.
- With Matthias Arzt, Robert Haase, and Curtis Rueden we launched the work on a
- With Alec Neevel and Stephan Saalfeld, completed update of ImageJ web resources to support HTTPS (see separate news post).
- With Florian Jug, overhauled the SciJava Common logging mechanism (scijava/scijava-common#253).
- With Richard Domander, improved SciJava Common context injection to be recursive, to fix bugs with service population of commands (scijava/scijava-common@b0c981b2, imagej/imagej-ops@4f78eca5).
- With Richard Domander, add a validater callback for parameter validation (scijava/scijava-common@66ed844e, scijava/scijava-common@70c50f48).
- With Matthias Arzt, began work on a
PlotServicefor ImageJ2 (maarzt/imagej-ui-swing@plot-service).
- Participated in technical discussions with various people, including a "big-picture" status update for ImageJ2 covering my primary priorities; see Technical discussions section below.
- With Jean-Yves Tinevez, worked on Mastodon/TrackMate3, in particular the unified handling of adapter views onto the main tracking model.
- With Stephan Saalfeld, worked towards integration of caching mechanisms into unified scijava/imglib2 cache; generalization of BigDataViewer cache.
- Added support in ui-behaviour for triggering multiple behaviours in parallel.
- Documented ui-behaviour configuration syntax
- Assisted with various BigDataViewer-related projects.
- Improvements to KNIME SLURM integration:
- Many bugfixes (specifically for the use of image processing workflows)
- Implemented status view for more detailed information about the state of running jobs
- Got KNIME SLURM integration to run with the MPI-CBG Dresden cluster
- Achieved significant speed ups by running parts of an image processing workflow on the cluster
- With Tobias Pietzsch, worked on Mastodon/TrackMate3, in particular view colouring by numerical features calculated on a model.
- With Tobias Pietzsch,extended the MaMuT so that it can be used for 2D over time properly.
- Robert is addicted to ImageJ.
- Ulrik can only do snapshot releases.
- Florian is doing too much at once... at least he has a car! (Yes Klim, you can join...)
Stable releases of Fiji
- We agreed to cut a stable release of Fiji once every six months.
- We agreed to continue pursuing the "melting pot" builds of Fiji and/or the SciJava universe, to better detect cross-component regressions and incompatibilities.
3D viewers in ImageJ and Fiji
- We discussed how best to proceed with the ThreeDViewer, BigDataViewer et. al.
- All agree to be very grumpy if the discussion ever degrades back to a laundry list of desired features (before we actually finish the first iteration of the code)
- Kyle Harrington will continue efforts to consolidate ThreeDViewer and BigDataViewer into a unified viewer
- Tim-Oliver Buchholz and Christian Dietz will continue to develop UI components for BDV and KNIME using SciJava for use in the unified viewer
- Kyle Harrington, Tim-Oliver Buchholz, and Christian Dietz will reconvene in the Spring for component integration
- Tobias Pietzsch will continue to work his BDV magic
- Roughly the idea is (we previously discussed this at the 2016 summer Konsanz hackathon):
- 4 viewer panels (number of panels is convenience not hard coded): X-Y, Y-Z, X-Z, and 3D. Viewer panels have sliders for time and other dimensions
- Control panel with selection of attributes that can be synced between viewer panels, but can also be used for independent control of viewer panels
- BDV provides orthogonal views
- Viewer panels have overlays: minimaps, intensity, etc.
- ROI overlays can also be provided
- Panels are just JPanels
- Tobias Pietzsch says most of the backend has already been developed in BDV
- ThreeDViewer should reuse more of BigDataViewer's UI components
- GUI tools/widgets will go into scijava-ui-swing
- Ulrik Günther will continue to develop Scenery for the core 3D rendering functionality