ITK Release 4/Image Class Hierarchy Refactoring: Difference between revisions

From KitwarePublic
Jump to navigationJump to search
Line 20: Line 20:
In particular, this proposal aims to provide several new kinds of image classes:
In particular, this proposal aims to provide several new kinds of image classes:


* Digital Image
* Digital Image - no physical embedding; raw lattice of voxel values


* Regular Image
* Physical Image - an image with a physical embedding; only the origin of the image and an orientation are specified; no image spacing information is provided


* Rectilinear Image
** Regular Image - analog of ITK's current Image with regular spacing
 
** Rectilinear Image - a physical image with support for irregular spacing in x, y, and z


= Goals =
= Goals =

Revision as of 14:43, 23 September 2010

Image Class Hierarchy Refactoring

Motivation

The goal of this proposal is to add support for additional image types in ITK.

ITK currently supports several types of image:

With the exception of the PhasedArray3DSpecialCoordinatesImage, all the image types assume that the image topology is an n-dimensional lattice and that voxels have regular spacing in each dimension. While it makes sense to preserve the topology assumption in this refactoring, the assumption of regular spacing should be relaxed wherever possible. The regular spacing assumption covers many cases in biomedical imaging, but it hinders ITK's use in certain applications such as microscopy and remote sensing images. For example, certain motorized stages used in confocal microscopes fail to achieve regular spacing in z when acquiring a 3D image (often called a stack of 2D images at different focal depths). Helpfully, these stages report the positions of z-planes acquired during image stack collection. Assuming a regular z-spacing in place of the actual z-plane positions may result in significant errors in image analysis algorithms run on the image.

In particular, this proposal aims to provide several new kinds of image classes:

  • Digital Image - no physical embedding; raw lattice of voxel values
  • Physical Image - an image with a physical embedding; only the origin of the image and an orientation are specified; no image spacing information is provided
    • Regular Image - analog of ITK's current Image with regular spacing
    • Rectilinear Image - a physical image with support for irregular spacing in x, y, and z

Goals

Secondary Goals

Design

Implementation Plan