News |  Sitemap |  Contact
PDF Export  | 

Advanced Programming with ImgLib2


ImgLib2 is an open-source Java library for n-dimensional image processing and representation. The core design philosophy of ImgLib2 is a clean separation of pixel-algebra, data access, and data representation in memory. This maximizes code re-usability by enabling generic algorithm implementations that are independent of specific dimensionality, pixel type, and underlying data representation. ImgLib2 illustrates that an elegant high-level programming interface can be achieved without sacrificing performance. It provides highly efficient implementations of common image types and algorithms. It is fully integrated into ImageJ/Fiji through light-weight, non-copying wrappers and serves as the data model underlying the newly developed ImageJ2.

This workshop is an introduction to ImgLib2 for experienced Java programmers. We provide a high-level overview of the interface-based architecture of the library and hands-on programming tutorials covering

  1. basic pixel types and access patterns,
  2. ImageJ/Fiji interoperability,
  3. implementing type, dimensionality, and storage format independent methods,
  4. transparent coordinate and value transforms using the “Views” and “Converters” frameworks,
  5. representation, access, and extrapolation of sparse data sets.

Finally, we will use ImgLib2 to implement a simple ImageJ plugin for n-dimensional, intensity-based image registration.

author details:

Tobias Pietzsch did his PhD in real-time computer vision and robotics at the Technische Universität Dresden, Germany. He is currently a post-doc in the group of Pavel Tomancak at the Max Planck Institute of Molecular Cell Biology and Genetics (MPI-CBG) in Dresden, Germany. He works on the reconstruction of cell lineage trees of Drosophila embryogenesis from 3D microscopic recordings. He is one of the main developers of ImgLib2.


ImgLib2, n-dimensional image processing, generic programming

Administrative data

Presenting author: Tobias Pietzsch
Organisation: Max Planck Institute of Molecular Cell Biology and Genetics (MPI-CBG), Dresden, Germany

co-authors: Stephan Preibisch, Pavel Tomancak, Stephan Saalfeld

Hardware and Software Requirements: Participants should have a computer with Fiji and Eclipse installed. We will provide on-line material prior to the workshop.

Knowledge of participant: Participants should have profound Java development skills and some experience developing for ImageJ/Fiji. They should be proficient in using Eclipse or an alternative development environment. During the workshop, we will use Eclipse and will not provide support for setting up the development environment. No prior knowledge of ImgLib2 is required.

Workshop Materials

© Luxembourg Institute of Science and Technology | Legal Notice