Project Half Week January 10/12, 2007 Held in Conjunction with AHM 2007 AHM Participants: 96 NA-MIC (56), Collaborators (32), EAB/NIH (8) – 56 NA-MIC: Algorithms Core (24), Engineering Core (13), DBP Core (15), Service Core (1), Training Core (1), Dissemination Core (1), Leadership Core (1) – 32 Collaborators: Acoustic Med (1), BWH (12), Caltech (1), Duke (1), Harvard IIC (1), Knowledge Vis (1), Mario Negri (1), MIT (2), NWU (3), Stanford (1), MIND (1), UIowa(6), Virginia Tech (1). Projects: 38 – – – – Structural Analysis (9) Diffusion Image Analysis (7) NA-MIC Kit (10) External Collaborations (11) National Alliance for Medical Image Computing http://na-mic.org Project Half Week January 10/12, 2007 Structural Analysis 1. 2. 3. 4. 5. 6. 7. 8. 9. ITK Spherical Wavelet Transform Filter UNC shape analysis with Spherical Wavelet Features EMSegmenter Software Development Data assimilation for NAMIC Parallelization of ITK for deformable registration Integrating KWMeshVisu into Slicer Group-wise Registration of Medical Images Genus Zero Slicer3 Module Thickness Slicer3 Module External Collaborations: 1. Slicer3 Module for HPC deformable registration 2. Slicer3: IGT, Trackers 3. IGT Workflow for Slicer3: Interventional Imaging 4. Radiology Workstation Module for Slicer3 5. vmtk module for Slicer Diffusion Image Analysis 1. 2. 3. 4. 5. 6. 7. Finsler Tractography Finsler Levelsets Tensor estimation and Monte-Carlo simulation Rician Noise Removal in Diffusion Tensor MRI ITK implementation of POIStat, and Integration into Slicer3 Image Format issues in application of POIStats to Dartmouth data ITK Stochastic Tractography Filter NA-MIC Kit 1. Slicer3:Architecture/Features 2. Slicer3: Data Model / libMRML 3. Slicer3: Interface Design and Usability 4. Slicer3: Modules for DTMRI,Tractography,Editor, Colors, Fiducials, FreeSurfer, ModelMaker 5. Build/Test/Deploy System 6. Slicer3 launch and deployment issues 7. Slicer3: LONI Pipeline Integration 8. LONI Pipeline for UNC Shape Analysis 9. Slicer3: Grid Integration 10. Slicer3:Performance Analysis 11. Matlab-Slicer3 pipeline enhancement National Alliance for Medical Image Computing http://na-mic.org NCBC Collaboration: Hexahedral Voxel Meshing Slicer3 1. Voxel meshing as an execuation module in Slicer3 2. Mesh Quality Visualization Development 3. Bounding Box Projection Meshing 4. Tetrahedral Mesh Generation Tools in VTK 5. Mapped Meshing Using ITK NCBC Collaboration in Preparation 1. Nonhuman Primate slicer Module (Alcohol Exposure) Non-Medical Collaboration 1. Slicer Enhancements for Astronomical Data Cubes Structural Analysis Structural Analysis 1. 2. 3. 4. 5. 6. 7. 8. 9. ITK Spherical Wavelet Transform Filter UNC shape analysis with Spherical Wavelet Features EMSegmenter Software Development Data assimilation for NAMIC Parallelization of ITK for deformable registration Integrating KWMeshVisu into Slicer Group-wise Registration of Medical Images Genus Zero Slicer3 Module Thickness Slicer3 Module National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week ITK Spherical Wavelet Transform Filter: Develop algorithm and ITK software module for Spherical Wavelet computation Theme: Structural Analysis Plan/Expected Challenges/Publication Team Delphine Nain, GT (algorithms) Yi Gao, GT (algorithms) Algorithms: decomposition of a scalar signal defined on a spherical mesh into spherical wavelet coefficients and vice-versa in order to represent shapes in a multi-scale framework. Luis Ibanez, Kitware (software) Jim Miller, GE (software) Software: Completed: ITK filter class to fulfill the above algorithm. • To code: visualization of spherical wavelet functions as colormaps Paper: •To write: ITK Insight journal to be completed by the end of the week. Accomplished by end of the Week -produce figures to show the spherical wavelet function on the sphere, at any resolution and location -completion of the paper for Insight Journal . SWF Signal to Coeffs Filter Coeffs to Signal Filter National Alliance for Medical Image Computing http://na-mic.org SWF 2007 Project Half Week Scripts to combine UNC Shape Analysis with Spherical Wavelet Features Theme: Structural Analysis Plan/Expected Challenges/Publication Team Yi Gao, GT (algorithms) Delphine Nain, GT (algorithms) Martin Styner, UNC (algorithms) Software: tcsh scripts PIPELINE 1: (after UNC preprocessing, before UNC statistical scripts) INPUT: Read UNC preprocessed META surfaces • Re-interpolate the spherical meshes to use a recursive icosahedron structure. The output are remeshed META surfaces. • Run the itkSWavelet filter on re-interpolated meshes to obtain spherical wavelet coefficients OUTPUT: Write spherical wavelet coefficients (SWC) to a text file that will be read by the UNC statistics scripts PIPELINE 2: (after UNC stats scripts) INPUT: raw and corrected p-values for the SWC features • Write visualization scripts to visualize the SWC p-value map on the mean shape OUTPUT: Colormap that can be visualized KWVisu To be Accomplished by end of Programming Week -Write and test scripts on the female caudate structure -Submit code to NA-MIC repository -Write ITK Insight journal National Alliance for Medical Image Computing http://na-mic.org EMSegmenter Software Development: Integrate EMSegmenter from Slicer 2 to Slicer 3 2007 Project Half Week Theme: Structural Analysis Plan/Expected Challenges/Publication Team Kilian Pohl, BWH-MIT (algorithms) (contact) Brad Davis, Kitware (software) (contact) Sebastien Bare, Kitware (software) Yumin Yuan, Kitware (software) Marc Niethammer , BWH (clinical) Algorithm: Work on user interface of EMSegmenter in Slicer3 including bug fixes and new functionality. Software: Integrate new class overview and graph window. Clinical: Validate results with Slicer 2 version. Accomplished by end of Programming Week Provided tutorial and got feedback Establish priorities for future directions Began integrating rules into wizard Added panel-specific help Intinsity distribution widget: nearly completed Bug fixes http://www.na-mic.org/Wiki/index.php/Slicer3:EM National Alliance for Medical Image Computing http://na-mic.org NA-MIC Data Assimilation: 2007 Project Half Week Centralize the archival, analysis, and access of NA-MIC tutorial data and select project data. Theme: Structural Analysis Plan/Expected Challenges/Publication Team Stephen Aylward, Kitware (Data/Software) (contact) Steve Pieper, Isomics (Data) Julien Jomier, Kitware (software) Data: Identify tutorial/demonstration data for Slicer 3.0; define data assimilation requirements; provide feedback on MIDAS and its tools; and publish available, related, NA-MIC resources. Software: Upload data to MIDAS; extend BatchMake for new experimental methods; refine MIDAS and its tools based on feedback; refine validation dashboard look-and-feel, provide template Batchmake scripts; and define script submission process Related NA-MIC Resources: BIRN anonymous ftp, LONI Pipeline, Imagine2 pipeline. Accomplished by end of Programming Week • Initial data to be hosted has been identified and downloaded • EM Segment Module Tutorial Data • MGH Atlas • Killian Pohl’s MR/MR head registration data • Killian Pohl’s CT/CT abdominal registration data • Steve Pieper’s fMRI/MR registration data • Held discussions with BIRN-Grid representative Niel Jones and Steve Pieper. Identified means of launching Grid tasks from within Slicer for parameter space evaluation and batch processing (using BatchMake). National Alliance for Medical Image Computing http://na-mic.org MIDAS ITK Registration Parallelization: 2007 Project Half Week Develop implementations of ITK registration methods to take advantage of multi-core and multi-processor systems. Theme: Structural Analysis Team Plan/Expected Challenges/Publication Stephen Aylward, Kitware (Algorithms/Software) (contact) Algorithms: Identify ITK registration methods, specify component Jim Miller, GE (Algorithms) tests, collect test data. Challenge: Test speed and maintain accuracy Ross Whitaker, Utah (Algorithms) Software: Identify/develop cross-platform timing system, implement Luis Ibanez, Kitware (Algorithms/Software) component tests, centralize data and results, identify bottlenecks, Driving problems: parallelize and re-test. Challenge: Cross-platform multi-threaded timing Kilian Pohl, BWH-MIT (Inter-subject mapping) Driving Problem: Validation of results. Steve Pieper, Isomics (fMRI to high-res MRI) Sandy Wells, MIT (EPI/MRI) Expected Date for Insight Journal Publication: August, 2007 Sylvain Bouix, BWH (DTI component registration) Accomplished by end of Programming Week • • • • • Driving problem will be Killian Pohl’s head MRI/MRI registration task B-Spline registration is the technology Speeding image resample will be initial component test Data has been centralized on MIDAS Intel dual-core platform chosen for optimization since an open-source, cross-platform, profiling tool with multi-core support could not be found • Secondary problems for DTI and fMRI also identified, and their data has been centralized • Optimized code will be delivered using the Slicer B-Spline Module National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week Integrating KWMeshVisu into Slicer: Theme: Structural Analysis Plan/Expected Challenges/Publication Team Ipek Oguz, UNC (algorithms) (contact) Martin Styner, UNC (algorithms) Sebastien Barre, Kitware (software) Jim Miller, GE (software) Previously on KWMeshVisu: This is a mesh visualization tool for viewing various attributes (scalar maps, vector fields, ellipsoid fields, space curves) on object surfaces. We also used this as an experiment to use KWWidgets, and have had very satisfactory results. Insight Journal Publication: We have presented KWMeshVisu in the MICCAI’06 issue. Software: Integration of our tool into Slicer 3. Accomplished by end of Programming Week We have successfully integrated KWMeshVisu into Slicer3 as a command line tool. National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week Group-wise Registration of Medical Images: Develop algorithm for group-wise non-rigid registration of medical images. Theme: Structural Analysis Plan/Expected Challenges/Publication Team Serdar K Balci, MIT (algorithms) Polina Golland, MIT (algorithms) Mert R Sabuncu, MIT (algorithms) Lilla Zollei, MIT (collaborator) Sandy Wells, MIT (algorithms) Luis Ibanez, Kitware (software) Algorithms: Apply non-rigid and multi-resolution registration currently available in ITK to group-wise registration framework. Software: computational speed, parallel programming. Clinical: Validation of results. Expected Date for Insight Journal Publication: Accomplished by end of Programming Week -Incorporated B-Splines into the registration framework -Implemented multiresolution registration National Alliance for Medical Image Computing http://na-mic.org Mean Images before: after: Genus 0 Slicer3 Module: Develop Slicer3 Module for the topological correction of labelmaps. 2007 Project Half Week Theme: Structural Analysis Plan/Expected Challenges/Publication Team Marc Niethammer, BWH (contact) Sylvain Bouix, BWH Steve Pieper, Isomics Algorithms: finish Slicer3 topology correction module. Fix orientation issues for model output. based on work by Steve Haker, BWH Michael Rabes, BWH Accomplished by end of Programming Week Implemented command line module and fixed various orientation issues. National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week Thickness Measurement Slicer3 Module: Develop simple Slicer3 Module for thickness measurement of label maps. Theme: Structural Analysis Plan/Expected Challenges/Publication Team Marc Niethammer, BWH (contact) Sylvain Bouix, BWH Steve Pieper, Isomics Algorithms: Finish a simple module for thickness measurement based on boundary conditions given by a labelmap. Improve user interface. Accomplished by end of Programming Week Created command line module for slicer 3. National Alliance for Medical Image Computing http://na-mic.org Diffusion Image Analysis Diffusion Image Analysis 1. 2. 3. 4. 5. 6. 7. Finsler Tractography Finsler Levelsets Tensor estimation and Monte-Carlo simulation Rician Noise Removal in Diffusion Tensor MRI ITK implementation of POIStat, and Integration into Slicer3 Image Format issues in application of POIStats to Dartmouth data ITK Stochastic Tractography Filter National Alliance for Medical Image Computing http://na-mic.org Finsler Tractography: Develop ITK filter for Finsler Tractography. 2007 Project Half Week Theme: Diffusion Image Analysis Plan/Expected Challenges/Publication Team Luis Ibanez, Kitware (software) Algorithms: Dynamical programming formulation of directional open curve segmentation using a Finsler metric. Software: Incorporation into an ITK filter. Addition of itkImageDirectionalIteratorWithIndex to ITK. Clinical: Validation of neural tract segmentation. Marc Niethammer, PNL (clinical) Marek Kubicki, PNL (clinical) Is this a continuation of a previous programming week project? If so, please include that slide as well. - NO - John Melonakos, GT (algorithms) (contact) Expected Date for Insight Journal Publication: April 2007 Accomplished by end of Programming Week -Created the itkImageDirectionalIteratorWithIndex -Created the itkFastSweepingImageFilter ... -Created the itkFinslerTractographyImageFilter -This project is still under development... National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week Finsler Levelsets: Develop ITK software module for levelset-based directional segmentation framework in arbitrary dimension. Theme: Diffusion Image Analysis Plan/Expected Challenges/Publication Team Vandana Mohan, GT (algorithms) (contact) John Melonakos, GT (algorithms) Algorithms: Directional levelset segmentation of DWI datasets using a surface evolution. Software: Incorporation into ITK for arbitrary dimensions. Luis Ibanez, Kitware (software) Clinical: Validation of neural tract segmentation. Marc Niethammer, PNL (clinical) Marek Kubicki, PNL (clinical) Is this a continuation of a previous programming week project? If so, please include that slide as well. - NO Expected Date for Insight Journal Publication: April 2007 Accomplished by end of Programming Week •Image functions created for computing shape operator and surface derivatives. •Formalized implementation approach for the image filter. (Development in progress) National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week DTI monte-carlo simulation and tensor estimation: Develop algorithm and software for monte-carlo simulation of noise effect on tensor estimation Theme: Diffusion Image Analysis Plan/Expected Challenges/Publication Team Casey Goodlett, UNC (algorithms) (contact) Ran Tao, Utah (algorithms) Tom Fletcher, Utah (algorithms) (software) Algorithms: Compare existing existing algorithms for tensor estimation. Software: MATLAB simulation. ITK filters for non-linear least squares, weighted least, maximum likelihood estimation. (clinical) Clinical: Validation of results in real scans Accomplished by end of Programming Week • ITK filters for tensor estimation routines • Simulated/Experimental comparison of estimation methods National Alliance for Medical Image Computing http://na-mic.org Linear Non-linear Weighted 2007 Project Half Week Rician Noise Removal in DTI: Develop ITK and Slicer module for Rician noise removal in DTI. Theme: Diffusion Image Analysis Plan/Expected Challenges/Publication Team Tom Fletcher, Utah (algorithms) (contact) McKay Davis, Utah (algorithms) Algorithm: DTI Rician noise removal as described in Basu, et al MICCAI 2006. Add method to compute noise sigma from data. Software: Integration into Slicer. Jim Miller (software) Clinical: Validation of results. Accomplished by end of Programming Week Added method for automatic threshold of air voxels to find the Rician noise sigma. Created Slicer plug-in module to run the filter. Noisy data National Alliance for Medical Image Computing http://na-mic.org Filtered data 2007 Project Half Week Poistats, Slicer, and ITK Integration: Further develop algorithm for integration into ITK and Slicer. Theme: Diffusion Image Analysis Plan/Expected Challenges/Publication Team Algorithms: Continue c++ development and adjust API as needed for integration. Software: Compatibility with Slicer and ITK. Clinical: Validation of results. Expected Date for Insight Journal Publication: 3/1/2007 Dennis Jen, MGH (algorithms) (contact) Steve Pieper, Isomics (software) Accomplished by end of Programming We - wrote xml for command line interface - set Slicer path to look for poistats filter and load Poistats GUI - Slicer runs poistats! ROIs Path National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week Applying Poistats to Dartmouth Data: Generalize poistats for applying to Dartmouth data. Theme: Diffusion Image Analysis Plan/Expected Challenges/Publication Team Dennis Jen, MGH (algorithms) (contact) Algorithms: Develop current version of poistats so Darthmouth data can be run successfully. Steve Pieper, Isomics (software) Luis Ibanez, Kitware (software) Software: Image format incompatibility with current version of poistats. John West, Dartmouth (clinical) Andy Saykin, Dartmouth (clinical) Clinical: Validation of results. Expected Date for Insight Journal Publication: 3/1/2006 Accomplished by end of Programming Week - Poistats reads in tensors stored symmetrically, as team/tend outputs them - John trained on poistats usage, expected input, output, etc. National Alliance for Medical Image Computing http://na-mic.org Stochastic Tractography: Develop an ITK filter to generate region connectivity probabilities. 2007 Project Half Week Theme: Diffusion Image Analysis Plan/Expected Challenges/Publication Team Tri Ngo, MIT (contact) C-F Westin, LMI Polina Golland, MIT Based on work by: Ola Friman and Raul San Jose Algorithms: Calculate the probability that two brain regions are connected via a fiber tract given the measurements in a DWI dataset. Software: Incorporation into ITK and the creation of a command line module for Slicer 3. Clinical: Provide measures of confidence about tractography results and enable detection of tracts which pass through regions of low anisotropy. Expected Date for Insight Journal Publication: February 2007 Accomplished by end of Programming Week •Finished first Implementation of Filter (results shown in left image) •Finished Slicer3 Command Line Module with GUI interface (right image) National Alliance for Medical Image Computing http://na-mic.org NA-MIC Kit NA-MIC Kit 1. Slicer3:Architecture/Features 2. Slicer3: Data Model / libMRML 3. Slicer3: Interface Design and Usability 4. Slicer3: Modules for DTMRI,Tractography,Editor, Colors, Fiducials, FreeSurfer, ModelMaker 5. Build/Test/Deploy System 6. Slicer3 launch and deployment issues 7. Slicer3: LONI Pipeline Integration 8. LONI Pipeline for UNC Shape Analysis 9. Slicer3: Grid Integration 10. Slicer3:Performance Analysis 11. Matlab-Slicer3 pipeline enhancement National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week Slicer 3 Architecture: Allow components of Slicer 3 project to work well together. Theme: NA-MIC Kit Plan/Expected Challenges/Publication Team Steve Pieper Bill Lorensen Ron Kikinis Mike Halle Noby Hata With Slicer 3 Team •Plan for 3.0 Release •Improving the Stability and Performance •Completing Remaining Features •Fixing Bugs Accomplished by end of Programming Week •Aim for Base in March timeframe (3.0), and DTI enabled release •Much debugging was done as part of programming week •The program is proving to be pretty stable National Alliance for Medical Image Computing http://na-mic.org in June (3.1) 2007 Project Half Week Data Model / libMRML: Theme: NA-MIC Kit Plan/Expected Challenges/Publication Team Alex Yarmarkovich Steve Pieper With Slicer 3 Team •Collect Feedback from Developers •Identify Outstanding Bugs/Issues Accomplished by end of Programming Week • Feedback sessions were very helpful • Next focus will be on supporting DTI module with its requirements diffusion volumes and tract bundles National Alliance for Medical Image Computing http://na-mic.org for 2007 Project Half Week MRML Hierarchies Theme: NA-MIC Kit Plan/Expected Challenges/Publication Team Alex Yarmarkovich (Isomics), Lauren O’Donnell (BWH), Brad Davis (Kitware), Mike Halle (BWH) Generalize concepts from DTI and EM group nodes to support atlas hierarchies like in slicer2. Accomplished by end of Programming Week Discussed requirements for Anatomy Atlas (Mike Halle) and DTI (Lauren O’Donnell). Here are some suggestions: • Need Hierarchy nodes separate from Models, referencing Model and Display nodes. • Branch nodes can reference an “aggregate” Model Node. • Multiple hierarchies, Models can belong to different hierarchies. • Model Hierarchy Widget controls visibility and open/collapsed state of branch nodes. • If Model is a descendent of a collapsed node use collapsed node Display Node. • Display “aggregate” model if present instead of closed branches. National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week Interface Design and Usability for Slicer3 Theme: NA-MIC Kit Plan/Expected Challenges/Publication Team Wendy Plesniak, BWH Sebastien Barre, Kitware Yumin Yuan, Kitware GUI: Present and describe user interface for Slicer; Work toward completing View Control GUI functionality; Refine features according to feedback; Usability: Solicit feedback from application users, and users of Development infrastructure for interactive and plug-in modules; Organize and deliver user feedback into the development effort. Accomplished by end of Programming Week • Disseminated information about interface and GUI development infrastructure. • Collected feedback from users. • Prototyped View Control GUI elements (shown right) and worked on stabilizing code. National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week Tractography in Slicer3: Develop Slicer software module for tractography. Theme: NA-MIC Kit Plan/Expected Challenges/Publication Team Lauren O’Donnell, BWH/LMI/MIT (algorithms/software) (contact) Steve Pieper, Isomics (software) Alex Yarmarkovitch, BWH (software) Wendy Plesniak, BWH (software) Alex Golby, Marek Kubicki, BWH (clinical) Algorithms: Tractography module in future can provide a base for algorithmic experimentation. Software: Develop MRML infrastructure for tractography, loading and saving of files, and display of tracts with tensor attributes. Clinical: Tractography module will in future support surgical planning, quantitative analysis, and interactive tractography editing needs. Expected Date for Insight Journal Publication: May 2007 Accomplished by end of Programming Week •MRML infrastructure for tractography. •Load/Save framework for tractography. •Initial display capabilities. •Increased understanding of slicer3 platform. National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week DTI in Slicer3: Develop core functionality to support DTI processing and display. Theme: NA-MIC Kit Plan/Expected Challenges/Publication Team Raul San Jose, BWH/LMI Steve Pieper, Alex Yarmarkovik, Isomics Wendy Plesniak, BWH Sebastien Barre, Kitware Software: Currently supported: DTI and DWI can be I/O and MRML nodes can be created. Redesign Volumes GUI classes to support different volume types with different display needs. Develop Geometry Layer infrastructure to allow the representation of glyphs, and in general models, in the resliced view. Expected Date for Insight Journal Publication: May 2007 Accomplished by end of Programming Week Goals are: Display and interact with DWI and DTI images. Estimate DTI from DWI. Design of the Geometry Layer. DWI Volume loaded in the Slicer National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week Slicer3 Editor: Theme: NA-MIC Kit Plan/Expected Challenges/Publication Team Steve Pieper Sylvain Bouix John West •Experiment with current implementation •Identify and characterize bugs •Define needed improvements Accomplished by end of Programming Week • Got Core3 feedback from Dartmouth • Found some bugs that seem to depend on what dataset is loaded • Goal is to get the Editor working for a March release of the Base National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week Transition of Slicer2.x Modules to Slicer3: Colors Theme: NA-MIC Kit Plan/Expected Challenges/Publication Team Nicole Aucoin, BWH (contact) Sebastien Barre, Kitware Yumin Yuan, Kitware Plan: Subclass the vtkMRMLColorNode to create Procedural and PieceWise colour nodes, subclass the Procedural node to create a FreeSurfer node. Update the ColorsGUI to handle all subclasses. Expected Challenges: Generalising the colour nodes for easy extensibility Accomplished by end of Programming Week Got some feedback from application users, sped up display of colour tables. Got feedback from application developers, drafted a plan to integrate tractography needs into the MRML color hierarchy. National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week Transition of Slicer2.x Modules to Slicer3: Fiducials Theme: NA-MIC Kit Plan/Expected Challenges/Publication Team Nicole Aucoin, BWH (contact) Steve Pieper, Isomics Software: Implement placing Fiducials in 3D. Discuss how to integrate display styles. Accomplished by end of Programming Week Various picking strategies were explored for placing fiducials in 3D, but a final selection is reliant on some architecture reorganisation to integrate event handling. Completion is projected to occur by mid-February. National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week Transition of Slicer2.x Modules to Slicer3: FreeSurfer Integration of FreeSurfer scalar overlays and colour lookup tables into Slicer3. Theme: NA-MIC Kit Plan/Expected Challenges/Publication Team Nicole Aucoin, BWH (contact) Software: Extend MRML color nodes to include FreeSurfer colours. Support scalar overlays on models. Accomplished by end of Programming Week This project didn't get time devoted to it during programming week, it's been rescheduled to February/07. National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week Transition of Slicer2.x Modules to Slicer3: ModelMaker Extend ModelMaker to use MRML Color nodes. Theme: NA-MIC Kit Plan/Expected Challenges/Publication Team Nicole Aucoin, BWH (contact) Bill Lorensen, GE (consultation) Software: Pass in a colour node to the ModelMaker command line program, name models and colour them according to the look up table. This is a continuation of a previous programming week project, see next slide. Accomplished by end of Programming Week This project didn't get time devoted to it during programming week. Reloading a directory of models requires modification of the CLI architecture. National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week Packaging and deployment of NA-MIC Kit Theme: NA-MIC Kit Plan/Expected Challenges/Publication Team Andy Cedilnik, Kitware Katie Hayes, BWH Packaging: Improve current packaging of Slicer and NA-MIC kit to better support the target platforms, which are Linux, Windows, and Mac OSX. Deployment: Improve Slicer download web-site to better support downloading appropriate packages. Accomplished by end of Programming Week Packaging on Mac improved to facilitate easy uninstallation Decided on a directory hierarchy to support Slicer2 and Slicer3 downloads Graphical upload tool to easily put files on the server for download National Alliance for Medical Image Computing http://na-mic.org Slicer3 Launch and Pack: Setting up an efficient and workable deployment solution for Slicer3 2007 Project Half Week Theme: NA-MIC Kit Plan/Expected Challenges/Publication Team Steve Pieper, Will Schroeder, Sebastien Barre, Jim Miller, Bill Lorensen, Andy Cedilnik Define details of slicer3’s launcher (order from the current chaos). Issues: quick startup, cross-platform maintainability, finding modules, error detection/feedback… Options: static builds, C++ launcher, Tcl Launcher, BAT/Shell Scripts… Accomplished by end of Programming Week Meeting took place on Friday – everyone was in attendance. Consensus: • cannot build static since plugins may require any/all of vtk/itk/slicer • dynamic builds require launcher to find shared libraries • launcher has other benefits: • quick splash screen • catch errors/crashes National Alliance for Medical Image Computing http://na-mic.org Plan: • a starpack solution like slicer2 uses will be put in place (Steve) • this is a fully-static executable that can be programmed in tcl/tk to set up the environment and launch/monitor the Slicer3-real process 2007 Project Half Week Slicer3 and LONI Pipeline Integration Theme: NA-MIC Kit Plan/Expected Challenges/Publication Team Jagadeeswaran Rajendiran, UCLA (Core 2) (r.jagadeeswaran@loni.ucla.edu) Martin Styner, UNC (Algorithms) Steve Pieper, Isomics (Core 2) Algorithms, Software Development: Create a workflow in LONI pipeline that wraps around a new set of UNC shape analysis executables. Develop, provide interface for executing the workflow on the LONI grid. Continuation of last programming week. Discuss Slicer3 integration, eg: Pipeline v4 batch mode operation . Software: computational speed. Intuitive user interface. Accomplished by end of Programming Week Clinical: Validation of results. • Pipeline batch mode completed, workflows can be executed without GUI • Capability to execute both locally (on your laptop) and on the grid completed • Worked on client-server, testing for scalability in progress • Worked with Martin, discussed possible enhancements to the data model • Pipeline available for alpha-testing National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week LONI pipeline for UNC shape analysis: Developing LONI pipelines for UNC shape analysis ready for clinicians Theme: NA-MIC Kit Plan/Expected Challenges/Publication Team Algorithms: create LONI pipeline modules and network for new set of shape analysis executables, as well as interface for running UNC shape analysis in LONI as simple as possible. Continuation of last programming week. Martin Styner, UNC Michael Pan, LONI Jagadeeswaran Rajendiran, LONI Software: Training, Extension of LONI software if needed. Clinical: Validation of results. Accomplished by end of Programming Week LONI pipeline for full processing created Bug fixing and considerable feature request issued Top-level view encapsulating details from users Nearly ready for Core 3 and training core Open Issues: Full encapsulation, job distribution, Visualization of Quality Control data and results, Validation of Results National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week Grid Interface for Slicer3: Make Slicer 3 work on a set of clusters. Theme: NA-MIC Kit Plan/Expected Challenges/Publication Team Algorithms: (algorithms) Neil Jones, UCSD (software) (contact) Jeff Grethe, UCSD (software) Steve Pieper, Isomics (Slicer) Bill Lorenson, GE (CLI) Jim Miller, GE (CLI) Define Slicer/Gwiz interface, calling protocol, polling interface Identify necessary changes to Slicer3 (e.g., password collection?) Work on existing code-level issues (e.g., code redesign) Identify minimum protocol set (e.g., GSI, ssh keys, condor, sge) Agree on delivery schedule Deliverables: UML for SPI, XML schemas, project plan with milestones Clinical: (clinical) Accomplished by end of Programming Week Discussed using BatchMake as an underlying grid execution technology Agreed on an overall workflow for running tasks on a grid Code improvements to GridWizard XML work descriptor Slicer + Execution model National Alliance for Medical Image Computing http://na-mic.org Grid 2007 Project Half Week Slicer3 Performance Analysis: Theme: NA-MIC Kit Team Plan/Expected Challenges/Publication •Collect feedback about which areas are a priority for optimization •Use profiling tools to locate inefficient areas of Slicer •Collect feature requests Katie Hayes With Slicer 3 Team Accomplished as a result of Programming Week •Defined immediate goals for optimization with Steve, including file I/O •Collect feedback from developers about which areas are a priority for optimization •Compiled feature requests in Mantis for tracking performance issues •Work continues on code profiling <= Mantis KCachegrind => National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week Matlab-Slicer3 pipeline enhancement: Generalize data type handling and extend to DWI and tensor data Theme: NA-MIC Kit Plan/Expected Challenges/Publication Team Katharina Quintus, BWH (contact) Sylvain Bouix, BWH Steve Pieper, Isomics Marc Niethammer, BWH Mahnaz Maddah, MIT Software: Extend the existing pipeline to handle more data types. Modify pipeline to handle DWI and tensor data. Accomplished by 01/31/2007 The involved scripts have been extended to handle data types char, unsigned char, unsigned short, signed int32, unsigned int32, float, and double. Working on extending to tensor data. National Alliance for Medical Image Computing http://na-mic.org External Collaborations External Collaborations: 1. Slicer3 Module for HPC deformable registration 2. Slicer3: IGT, Trackers 3. IGT Workflow for Slicer3: Interventional Imaging 4. Radiology Workstation Module for Slicer3 5. vmtk module for Slicer NCBC Collaboration: Hexahedral Voxel Meshing Slicer3 1. Voxel meshing as an execuation module in Slicer3 2. Mesh Quality Visualization Development 3. Bounding Box Projection Meshing 4. Tetrahedral Mesh Generation Tools in VTK 5. Mapped Meshing Using ITK NCBC Collaboration in Preparation 1. Nonhuman Primate slicer Module (Alcohol Exposure) Non-Medical Collaboration 1. Slicer Enhancements for Astronomical Data Cubes National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week Slicer3 Module for HPC deformable registration Theme: External Collaboration Plan/Expected Challenges/Publication Team Daniel Goldberg-Zimring, BWH Jim Miller, GE Bill Lorensen, GE Algorithms: Implementation/development of ITK based rigid and nonrigid registration algorithms for surgery planning in neurosurgery brain tumor resections cases. Software: Computational speed, need for real time non-rigid registration. Clinical: Validation of results. Expected Date for Insight Journal Publication: Accomplished by end of Programming Week Identification and testing of the parts of the pipeline already implemented in slicer 3: rigid registration and b-splines non-rigid registration. These parts worked fine with the test case. Identification of the parts of the pipleline not yet implemented in slicer 3: geometry distortion correction and a more robust deformable registration algorithm, perhaps “ADMIRA” which is already implemented in ITK (from J. Gee’s Lab at UPENN). National Alliance for Medical Image Computing http://na-mic.org Preop Intraop Registered Preop Interventional Imaging: Develop a demonstration of real-time image display for IGT applications. Team 2007 Project Half Week Theme: External Collaboration Plan/Expected Challenges/Publication Raimundo Sierra, BWH Simon DiMaio, BWH Haiying Liu, BWH Noby Hata, BWH Stephen Aylward, Kitware Base: Design and develop IGTBaseLogic (MRML logging...) Lib: design classes for sensor (image, tracker, robot), patient-to-image registration, tool calibration Module: finalize MRAblation module for MRI-guided ablation therapy, and Neurosurgery to connect to GE- and Brainlabbased navigation system Challenge: Design sustainable design for Lib, Strategy to link external libraries (opentracker, IGSTK) Accomplished by end of Programming Week Created IGT library (Slicer3/Libs/IGT), which is shared by IGT modules MRAblation module is back on the module list in Slicer3 NeuroNav module is working with opentracker NeuroNav gets tracking data from GENav NeuroNav gets linked with IGSTK National Alliance for Medical Image Computing http://na-mic.org Interventional Imaging: Develop a demonstration of real-time image display for IGT applications. 2007 Project Half Week Theme: External Collaboration Plan/Expected Challenges/Publication Team Raimundo Sierra, BWH Simon DiMaio, BWH Haiying Liu, BWH Noby Hata, BWH Stephen Aylward, Kitware Algorithms: spatio-temporal compression of a stream of image frames for efficient communication and display of real-time interventional images in Slicer3 for IGT applications. Software: gain understanding of Slicer3 architecture, develop demo module for real-time imaging, drive MRML image node from incoming image stream, source image streams via opentracker protocol, codec transforms to implement compression algorithms. Clinical: extend for use in Neurosugery demo module [Liu, Hata]. Expected Date for Insight Journal Publication: n/a Accomplished by end of Programming Week • Learned how to develop a Slicer3 module, • • • • • Learned how to manipulate pixel data in a volume, Constructed module to demonstrate continuous image update from an OpenTracker source, Identified update latencies between GUI image frames that need to be investigated further, The screen snapshot on the right shows a real-time MRI image of a fiducial frame that was streamed using the OpenTracker library. To be integrated with the IGT Library. National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week A Translation Workstation: Integrate 3D Slicer within a radiology clinical workstation. Team Theme: External Collaboration Plan/Expected Challenges/Publication Pat Mongkolwat, Northwestern University Skip Talbot, Northwestern University Alex Kogan, Northwestern University Software: •Integration of Slicer 3 functionality into clinical workstation •Modification of Slicer 3 GUI for clinical efficiency Expected Date for RSNA: November 2007 Accomplished by end of Programming Week Better understanding of Slicer 3 GUI components and integration techniques National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week vmtk Slicer module: Integrate vmtk (Vascular Modeling Toolkit) functionality within Slicer. Team Theme: External Collaboration Plan/Expected Challenges/Publication Luca Antiga, Mario Negri Institute Jim Miller, GE Software: •automatic generation of Slicers modules from vmtk pipes using Slicer’s execution model •potential inclusion of selected vmtk classes into Slicer Expected Date for Insight Journal Publication: July 2007 Accomplished by end of Programming Week Any vmtk command line can now be converted to a Slicer3 CLI module automatically. Interactive vmtk scripts have been extended to use command-line specified fiducials. A collection of vmtk Slicer3 modules will be included in the main vmtk distributions as soon as Slicer3 is released National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week Bone Meshing: Integrate voxel based meshing tool into Slicer3 as an execution model. Theme: External Collaboration Plan/Expected Challenges/Publication Team Vincent Magnotta, Iowa Ritesh Bafna, Iowa Nicole Grosland, Iowa Algorithms: Convert a standard command line voxel mesh tool into a Slicer3 module using the execution model. Steve Pieper, Isomics (software) Curt Lisle, Isomics (software) Accomplished by end of Programming Week Basic voxel meshing can now be run in the Slicer3 execution model framework. Remaining issues: 1. Verify Anatomical Position of Mesh 2. Need to modify temporary directory used by Slicer3 3. Unstructured grids that result do not load into Slicer3, currently extracting exterior faces using vtkGeometryFilter() National Alliance for Medical Image Computing http://na-mic.org Mesh Quality Visualization: Discuss additional features required for mesh and mesh quality visualization. 2007 Project Half Week Theme: External Collaboration Plan/Expected Challenges/Publication Team Nicole Grosland, Univ of Iowa Vincent Magnotta, Univ of Iowa Kiran Shivanna, Univ of Iowa Steve Pieper, Isomics Inc (software) Curtis Lisle, Isomics Inc (software) Algorithms: Mesh quality measures that could be implemented are edge angles, volume etc., Software: Discussion of the Implementation of mesh visualization capabilities available in Abaqus Viewer into Slicer3. Adding a new Hex element quality test and evaluating it against the sample meshes available. Accomplished by end of Programming Week • Initial FE Mesh Quality viewer using KWWidgets was developed • Tested viewer with new vtkMeshQuality filter to implement multiple tests for Hex element meshes (see colored meshes representing different quality tests) • Tested integration between Mesh Quality class and Univ. of Iowa Mesh Editor application National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week Mapped Hexahedral Mesh Generation: Discuss the manipulation of bounding box structure and the implementation of the same in Slicer3. Theme: External Collaboration a Plan/Expected Challenges/Publication Team Nicole Grosland, Univ of Iowa Vincent Magnotta, Univ of Iowa Kiran Shivanna, Univ of Iowa b Steve Pieper, Isomics Inc (software) Curtis Lisle, Isomics Inc (software) Algorithms: Algorithms to manipulate the bounding box structure used in mapped mesh generation have already been developed. All the code has been done in VTK compatible C++ classes. Software: Discussion of the implementation of the above mentioned C++ classes in Slicer3. c Accomplished by end of Programming Week d Discussed the implementation of the above mentioned algorithms in Slicer3. Diagrams illustrate the steps involved in mapped meshing. e National Alliance for Medical Image Computing http://na-mic.org 2007 Project Half Week Tetrahedral Mesh Generation Methods in VTK Discuss the various methods available in vtk and implementation of same in IaFeMesh Theme: External Collaboration Plan/Expected Challenges/Publication Team Nicole Grosland, Univ of Iowa (contact) Vincent Magnotta, Univ of Iowa (algorithms) Srinivas Tadepalli, Univ of Iowa (algorithms) Algorithms: Algorithms available in vtk for tetrahedral mesh generation Delaunay 3D, Ordered Triangulator , Sliver removal and Mesh optimization methods. Software: Discuss methods to Modify/Extend existing classes necessary for Tetrahedral mesh generation. Accomplished by end of Programming Week Discussed methods available in VTK for tetrahedral mesh generation. Delaunay 3D works for some cases but cannot avoid slivers on the surface. Ordered triangulator is not useful in tet mesh generation. National Alliance for Medical Image Computing http://na-mic.org Mapped Hexahedral Meshing: Evaluate the use of multi-resolution itk::fem registration for mapped meshing 2007 Project Half Week Theme: External Collaboration Plan/Expected Challenges/Publication Team Ritesh Bafna, Iowa Nicole Grosland, Iowa Vincent Magnotta, Iowa Implement a multi-resolution mapped mesh algorithm using the ITK fem framework. The driving force will be the distance from the template mesh to the subject surface following the normal direction. Bill Lorensen, GE (software) Accomplished by end of Programming Week Multi-resolution was implemented using a thin-plate spline to initialize the next level of registration. Initial working implementation supported two levels and has been generalized to support N levels of refinement. Work is continuing to develop this into a Slicer3 execution module Before Registration National Alliance for Medical Image Computing http://na-mic.org After Registration 2007 Project Half Week Nonhuman Primate slicer Module: Adapt EM Segmentation algorithm and ITK/Slicer software module for analysis of nonhuman primate structural MRI. Theme: External Collaboration Plan/Expected Challenges/Publication Team Kilian Pohl, MIT (algorithms) (contact) Chris Wyatt, VT (algorithms) Sandy Wells, BWH (algorithms consultant) Algorithms: start with the EM Segmentation algorithm currently available in slicer3, and refine as necessary. Software: Clinical: Apply to images from longitudinal alcohol exposure study Expected Date for Insight Journal Publication: Accomplished by end of Programming Week Image to the left shows skull-stripping with current technology available to Chris Wyatt. Our goal is to generate segmentations with greater anatomical detail. Accomplishments: - discussed general framework for primate segmentation - conference call with PIs from Wake Forrest National Alliance for Medical Image Computing http://na-mic.org Place your picture/movie here. 2007 Project Half Week Slicer Enhancements for Astronomical Data Cubes Theme: External Collaboration Plan/Expected Challenges/Publication Team Douglas Alan, Harvard IIC (software) (contact) Mike Halle, BWH/IIC (software) Bill Lorensen, GE (software) Jim Miller, GE (software) Wendy Plesniak, BWH (software) Software: Address some of the outstanding issues with the planned software enhancements required to make Slicer a good quantitative tool for visualization of astronomical data cubes. This is a continuation of a project from the June 2006 Project Week. Expected Date for Insight Journal Publication: TBD. Accomplished by end of Programming Week Solved problem of itk::ImageIOBase’s incompatibility with CFITSIO’s “extended filename syntax”. Identified compatibility issues present with the alpha version of Slicer 3. Devised plan for passing a FITS WCS itk::Transform object from the FITS ITK reader to the resulting VTK image in Slicer. Planned incorporation of the ITK FITS reader into Slicer as a Slicer execution module. Planned incorporation of the ITK FITS reader into Slicer as a dynamically loading module. National Alliance for Medical Image Computing http://na-mic.org