An Introduction and Demonstration of a New Computer Assisted Visualization and Analysis Software System ( CAVASS ). Jayaram K. Udupa + , George J. Grevera *+ , Dewey Odhner + , Ying Zhuge + , Andre Souza + , Tad Iwanaga + , Shipra Mishra +. + Medical Image Processing Group
Jayaram K. Udupa+, George J. Grevera*+, Dewey Odhner+,
Ying Zhuge+, Andre Souza+, Tad Iwanaga+, Shipra Mishra+
+Medical Image Processing Group
Department of Radiology - University of Pennsylvania
*Department of Mathematics and Computer Science
Saint Joseph’s University
To present a new cluster-based open-source software system called CAVASS (next incarnation of 3DVIEWNIX)for image analysis and visualization.
Goal of CAVASS:To achieve practical processing time on even
very large data sets.
CAVA: Computer-Aided Visualization and Analysis
CAVASS: CAVA Software System
CAVA deals withthe science underlying computerized methods of image processing, analysis, and visualization to facilitate new therapeutic strategies, basic clinical research, education, and training.
Image processing: for enhancing information about and defining object system in images.
Visualization:for viewing and comprehending object system in its full form, shape, and dynamics.
Manipulation:for altering object system (virtual surgery).
Analysis:for quantifying information about object system.
CAVA operations take object system information from one space to another typically, and eventually also to a quantitative space.
DISPLAY mini computer + frame buffer 1980
DISPLAY82 mini computer + frame buffer 1982
(distributed to > 150 sites with source.)
3D83 GE CT/T 8800 1983
3D98 GE CT/T 9800 1986
3DVIEWNIX Unix, X-Windows 1993
(distributed with source to 100s of sites.)
CAVASS platform independent, wx Widget 2008
CAVASS Target User Groups
UG1 – CAVA basic researchers/technology developers
UG2 – CAVA application developers
UG3 – Users of CAVA methods in clinical research.
Current Open Source Software Limitations that CAVASS Attempts to Address
LM1 – Lack of comprehensiveness of CAVA operations.
LM2 – Lack of coverage for user groups UG1-UG3.
LM3 – Lack of adequate speed/efficiency.
LM4 – Lack of adequate interfaces.
Key Features of CAVASS
(F1)Open-source, C/C++, wxWidgets.
(F2)Inherits most CAVA functions of 3DVIEWNIX.
(F3) Incorporates most commonly used CAVA operations, but does not go overboard on generality and inclusiveness.
(F4)Optimized implementations for efficiency.
(F5)Time intensive operations parallelized and implemented using Open MPI on a cluster of workstations (COWs).
(F6)Interfaces to popular toolkits (ITK, VTK), CAD/CAM formats, DICOM support, other popular formats.
(F7)Stereo interface for visualization.
Divide the input image into chunks and assign each chunk to a processor. A chunk represents data contained in a contiguous set of slices, either image or object structure data.
CAVA operations can be divided into the following three groups.
Type 1: Operation chunk-by-chunk, each chunk accessed only
once. Ex: slice interpolation.
Type 2:As in Type 1, but significant further operation needed
to combine results. Ex: 3D rendering.
Type 3:Operation chunk-by-chunk, but each chunk may have to
be accessed more than once. Ex: graph traversal.
CAVASS parallelizes all three groups of operations.
Test Data Sets
Sequential and parallel implementations of several Type 1 and Type 3 operations in CAVASS and ITK/VTK are compared using three data sets:
Regular:25625646 MR brain image 6 MB
Large:512512459 CT of thorax 241 MB
Super:10231023417 CT of head 873 MB
Multiprocessor system: 3.4 GHz, dual processor, 4GB RAM.
COW: 3.4 GHz single processor systems, 1GB/sec connection.
In the following tables, the number of processors used is shown in square brackets under “parallel”. The times reported are in seconds. No entries indicate that the operation was either not tested or not available.
*VTK rendering is assisted by a graphics processor. CAVASS
rendering is entirely in software.
CAVASS release date: April/May 2008.