Support for Batch Processing

From NAMIC Wiki
Jump to: navigation, search
Home < Support for Batch Processing

Back to NA-MIC Brains Collaboration


Objective:

To develop a command liner interface for the BRAINS3 project that will support batch processing with no graphical user interface. We have decided to use TCL because it integrates fully with our existing infrastructure. Present BRAINS3 consists of linking together three extensions of the TCL scripting language: ITK, VTK, and BRAINS2. For VTK, the TCL scripting is turned on using CMake. The VTK command line can be invoked from the BRAINS3 wish shell using the command

% package require VTK


ITK TCL command line is generated using WrapITK. This results in a very large package because all of the filters are created in both 2D and 3D for multiple data types. We will need to investigate how to reduce this memory footprint either by using fewer data types or loading and unloading various filters as they are used. This will require a better understanding of the dependency that filters have. This can be obtained from the Doxygen documentation generated for ITK.

 % package require Insight


Presently, the entire BRAINS2 command line interface is exposed in the TCL scripting layer. This is presently being used only for ROIs and Talairach parameters. This portion of the code should be updated and then all of the old infrastructure can be eliminated from this layer. This layer is always exposed by running the BRAINS3 program.


Progress:

  • TCL Command Language exists
  • Converters from BRAINS to ITK, and vice-versa exist
  • Converters from VTK to ITK, and vice-versa exist
  • Several scripts exist for the automated BRAINS analysis pipeline


To Do:

  • Optimize the memory requirements for the TCL command line
  • Verify that memory is being freed correctly


Key Investigators:

  • University of Iowa: Vincent Magnotta, Hans Johnson, Greg Harris, Nancy Andreasen
  • The MIND Institute: Jeremy Bockholt


Links:

Papers: