| HBM 2005 Abstracts: Previous | Next | Click here for a PDF of this poster. |
1Department of Neurology, University of Minnesota, USA, 2Department of Computer Science, University of Minnesota, USA |
Objective: The Registration Testbed (RTB) is a body of software supporting automation of multi-stage processing pipelines. RTB was developed within an ongoing project evaluating multiple software packages for intersubject
image registration. The project's experimental goal is a comprehensive assessment of the performance
of particular versions of these packages (currently 8) for particular choices of goodness-of-warp
metrics (GoWs >10), images (>50), and neuroanatomical regions of interest. Design requirements for
RTB grew out of the practical need to automate these experiments. This requirement is complex
because of a) the combinatorial effect of having many choices for each section of a multi-stage
processing pipeline, b) a desire to efficiently cache and re-use intermediate computational results (e.g.
pre-processed volumes and warps), c) the need for a sophisticated record system for experimental
results, supporting both programmatic access and ad hoc browsing, and d) software integration issues
involved in using a variety of third party software applications with a variety of file formats.
Methods: One novel feature of RTB is the way in which complex multi-stage processing pipelines are implicitly constructed through the i. specification of many small processing steps that work with particular data types and ii. requests to construct new objects with a given type and property set. RTB's objects are metadata representions of data files, executables, and results that are catalogued within a dynamic embedded database. They are essentially key/value pair mappings. Every object has a special key called its type, and types are arranged in a single inheritance hiearchy. Objects may represent images that are stored on the filesystem or results that are stored in relational database. Actual images and records are created as side effects of computations which create their metadata (see "Object Repository" figure). RTB's goal-oriented planning module uses backward chaining for deriving plans to produce requested objects, constructing them from the existing objects and the object creation recipes, called constructors, that are contained within its current repository (see "Goal Stack" figure). Issues related to file format translations are handled within this process. The software implementing constructors and their side effects can be regular C++ functions, plugins, or stand alone executables (implemented in any language). Results & Discussion:
Data objects and results in Neuroimaging have complex metadata descriptions and are often derived
via long processing pipelines. Scripting these pipelines explicitly is tedious, error prone, and not
conducive to reusability. Automated backward chaining of small type/pattern constructor rules can
alleviate these problems.
Backward chaining is familiar to developers working with automated reasoning systems and the
"make" build utility. RTB's usage is novel because of its more fully developed notion of an object
repository for metadata, richer featural language, configurable plugin interfaces, and application to
image analysis.
Conclusions:
RTB exemplifies a novel software design for automation of multi-stage processing and integration of
third party software.
References & Acknowledgements: |
