From Monday, January 11, 2016 through Friday, January 22, 2016, Christian Dietz of the University of Konstanz hosted ~30 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 supporting technologies such as ImgLib2 and ClearVolume.
The following chart illustrates when everyone was present:
- Wrote a guide for developers (Automatic Update Site Uploads) on how to automatically upload to their update site via Travis
- Proof-of-concept’d restoring the Add Imports functionality to the script editor (imagej/imagej-ui-swing#67 )
- Added Renjin-flavored R scripting to ImageJ (scijava/scripting-renjin )
- Got the Fiji downloads migrated to Java 8 bundles (see Downloads)
- Furthered development of the Ops Browser (imagej/imagej-ui-swing#60
- Tailored User/Developer views
- Fuzzy filtering for Ops
- Collapsible details/javadoc pane
- Added ops to convert images between types (using map) (convert-images )
- Improved inplace and hybrid op interfaces (binary-inplace , special-lookups )
- Improved the help op to support filtering by more criteria (special-help )
- Improved ImageJ tutorials to facilitate community members learning ImageJ2 ([https://github.com/imagej/tutorials/compare/88c124b504f3f1e603fe106bbb34ff5423012f47%5E…54de6c20a6db7b69514cd7279c98683e850ce657 1])
- Improved structure of Script Editor Templates menu, thanks to discussions with kephale (templates-menu )
- Marked ImageJ Legacy as optional, thanks to feedback from kmader and others (imagej/imagej@e8fbfeee )
- Added a main class to Fiji, for easier launching from an IDE, thanks to a discussion with fjug ([https://github.com/fiji/fiji/compare/bc128e3d7ab8c9e1269d88b7e534f7025e6f41cd%5E…f45204e32105873f4cddb132740d17deeda49879 1])
- Added a View marker interface to ImgLib2, to facilitate “lightweight” ops (view-marker )
- Helped clean up tibuch ‘s Ops Views PR (views )
- Helped hinerm a bit with the Renjin script language ([https://github.com/scijava/scripting-renjin/compare/8c65d9ae8ca30ffe3c6b3e70e1dd88222e07a52c%5E…f6fffb4117bed4c37811fa64a114145ce0b5c938 1])
- Helped fjug and tpietzsch establish Jenkins jobs for MPI-CBG projects
- Fixed equals/hashCode problems with ImgLib2 integer types (imglib/imglib2#111 )
- Fixed a bug in the SJC PrefService, noticed by kephale (long-pref-keys )
- Fixed SCIFIO bug with DICOM format, noticed by kmader (dicom-file-list-npe )
- Fixed bug when executing ops as commands, noticed by kephale (ops-as-commands )
- Investigated SJC bug in class loading, noticed by Eike Heinz , but no solution yet (scijava/scijava-common#219 )
- Fixed Eclipse configuration to run enforcer only upon initial configuration (on GitHub )
- Investigated improvements to Ops generic parameter matching. The problem is complex, but a solution is in the works.
- Explored possible Ops matching performance improvements (fast-op-index )
- Improved Jenkins jobs to build SNAPSHOT javadoc for all core SciJava components (scijava, scifio, imglib2 and imagej). as requested by stelfrich (1 , 2 , 3 )
- Pair programming bug-fixes and enhancements:
- Implemented continuous (Hyper-)Ellipsoids, Rectangles and Binary operators for imglib2-roi.
- Developed prototype for “Data Explorer” window for ImageJ/Fiji
- holding various data structures like images, labelings, measurements (tables) and plots. The structure is persistent, so closing windows does not delete the items from the tree. They can be reopened.
- 2D/3D/nD? data is handled equally, so selecting/deleting labels for/from further analysis according to their properties is possible more or less independent from the labels dimensionality.
- Measurements on labels is based on imagej ops()
- org.knime.cluster the abstract implementation of the cluster integration in KNIME is now open source, enabling the community to easily implement their own cluster connector
- Wrapped metanodes (aka subnodes) can now be executed in the cluster and also support split input data (which was not the case with the previous implementation of metanodes)
- Implementation of cluster connectors got simpler since we removed the differentiation of single jobs and chunked jobs with a size of 1
- Many bugfixes in the old implementation, as well as fixes in org.knime.core (mostly concerning subnodes)
- discussed future directions and extensions for ClearVolume with Loic Royer , fjug and tpietzsch .
- moved scenegraph implementation for ClearVolume to own project for re-usability.
- moved ClearGL back to pure Java
- discussed possilibities for additional renderers (e.g. software renderer) with kephale .
- discussed implementation with Loic Royer and wrote first tests.
- reviewed, augmented and merged tinevez YAML serialization for ui-behaviour .
- moved ui-behaviour to the scijava org and set up jenkins jobs with ctrueden , and released 1.0.0.
- fixed memory leak in BigDataViewer (1).
- worked on factor graph library for tracking/segmentation formulations with fjug .
- reviewed and merged imglib2 PRs 2, 3, 4, 5, 6, 7, 8.
- unified naming of “source” and “target” in imglib2 Views and RealViews 9.
- investigated imglib2 PlanarImg bug with dietzc and kephale .
- worked on integral image-based local thresholding ops