StandardsInterfaces

From NAMIC Wiki
Revision as of 14:50, 24 June 2010 by Megason (talk | contribs)
Jump to: navigation, search
Home < StandardsInterfaces


We are intreated in getting feedback on creating standards and interfaces for microscopy image analysis in ITK

Key Investigators

  • Harvard - Sean Megason

Objective

There are now several groups using ITK to develop filters for microscopy image analysis. However there are a number of possibilities for the input and output formats for these filters. For filters from different groups to be interchangeable, it is important that these filters use a defined interface. The goal of this project is to solicit opinions from both groups working on microscopy image analysis as well as those with experience designing interfaces for image processing in other domains.

Approach, Plan

If you have opinions, suggestions, or interfaces you are already using please talk to Sean and come to the Microscopy Image Analysis breakout session on Wed afternoon.

Issues

Specifically we would like to define functional groups of filters (e.g. denoising, seeding, segmentation, tracking, lineaging, post-processing, quantitation, classification) to allow for filter swapping within a group and then to define input/output types between these groups. ImageToImage filters are a sufficient interface for some filter groups but are problematic for others due to changes in dimension (tracking, lineaging), excess size (seeding), and differences with the "natural" output of an algorithm (e.g. a segmentation algorithm may output a mesh rather than image).

Progress

I met with Luis Ibanez and Jim Miller to discuss how related issues have been handled in ITK previously. They suggested itk::SpatialObject and itk::LabelObject. LabelObject seems like a good intermediate between an image based representation and an object(cell) based representation, and allows for either perspective depending on which is more convenient. LabelObject uses run-length enconding of objects in an image which results in a lot of compression. LabelObject also allows for objects to be attributed with values (e.g. cell size, intensity, velocity). One downside is that there are not currently many filters in ITK that use LabelObjects. We (Kishore) have already been working with LabelObjects as the output to segmentation filters

We also discussed standards for image format (file type readers, metadata standards, and "meta" file types) at the Microscopy Breakout session.