Difference between revisions of "Collaboration/UIowa/Non Rigid Registration"

From NAMIC Wiki
Jump to: navigation, search
 
(37 intermediate revisions by 4 users not shown)
Line 2: Line 2:
 
|[[Image:ProjectWeek-2007.png|thumb|320px|Return to [[2007_Programming/Project_Week_MIT|Project Week Main Page]] ]]
 
|[[Image:ProjectWeek-2007.png|thumb|320px|Return to [[2007_Programming/Project_Week_MIT|Project Week Main Page]] ]]
 
|[[Image:nirepsoftware.jpg|thumb|320px|Initial software development stage of the Non-rigid Image Registration Evaluation Project.]]
 
|[[Image:nirepsoftware.jpg|thumb|320px|Initial software development stage of the Non-rigid Image Registration Evaluation Project.]]
 +
|[[Image:Logo2skull.jpg|thumb|320px|NIREP application splash screen]]
 +
|[[Image:NIREPCodeexample.jpg|thumb|320px|Example code of the NIREPImageGridViewer class]]
 +
|[[Image:NIREPGridClass.jpg|thumb|320px|NIREPImageGridViewer class summary]]
 
|}
 
|}
 
 
 
__NOTOC__
 
__NOTOC__
 
===Key Investigators===
 
===Key Investigators===
Line 12: Line 13:
 
*James Harris (main NIREP software developer)
 
*James Harris (main NIREP software developer)
 
*Jeff Hawley (NIREP software developer)
 
*Jeff Hawley (NIREP software developer)
*Sandy Wells, BWH
+
*Luis Ibanez, Kitware
 
*Stephen Aylward, Kitware
 
*Stephen Aylward, Kitware
 +
*Steve Pieper, Isomics
 +
*Jim Miller, GE
 +
  
  
Line 30: Line 34:
 
<h1>Approach, Plan</h1>
 
<h1>Approach, Plan</h1>
 
The goal of this project is to establish, maintain, and endorse a standardized set of relevant benchmarks and metrics for performance evaluation of nonrigid image registration algorithms. Furthermore, these standards will be incorporated into an exportable computer program to automatically evaluate the registration accuracy of nonrigid image registration algorithms.
 
The goal of this project is to establish, maintain, and endorse a standardized set of relevant benchmarks and metrics for performance evaluation of nonrigid image registration algorithms. Furthermore, these standards will be incorporated into an exportable computer program to automatically evaluate the registration accuracy of nonrigid image registration algorithms.
*Build a prototype software package that contains the following functionality
+
 
*Database manager that interfaces with the evaluation database, the database of transformations for each algorithm, stores generated results, manages loading of images, manages memory, expands transformations from coefficient files, handles requests from other NIREP components, keeps track of operations using an XML (MRML) description,
+
Our goal for this week is to build a prototype software package that contains the following functionality:
*Display manager is responsible for displaying images, landmarks, contours, surfaces, and associated semantic information.  It also displays metric information in various formats.  The display is described in an XML (MRML) description
+
*Database manager that interfaces with the evaluation database, the database of transformations for each algorithm, stores generated results, manages loading of images, manages memory, expands transformations from coefficient files, handles requests from other NIREP components, keeps track of operations using an XML (MRML) description.
*Evaluator is responsible for all the computational aspects of image manipulation and computing metrics
+
*Display manager is responsible for displaying images, landmarks, contours, surfaces, and associated semantic information.  It also displays metric information in various formats.  The display is described in an XML (MRML) description.
 +
*Evaluator is responsible for all the computational aspects of image manipulation and computing metrics.
 
*Application interface is a basic menu system for invoking and configuring the display manager and evaluator.
 
*Application interface is a basic menu system for invoking and configuring the display manager and evaluator.
  
Line 39: Line 44:
 
</div>
 
</div>
  
<div style="width: 40%; float: left;">
+
<div style="width: 40%; float: right">
  
 
<h1>Progress</h1>
 
<h1>Progress</h1>
  
 
+
* Used the ITK, VTK, KWWidgets and SLICER3 architectures for implementing NIREP software.
 +
** Replaced NIREP current visual studio project architecture with CMake cross-platform make system.
 +
** Updated the NIREP program to incorporate ITK to VTK.
 +
** Removed hardcoding in the code and replaced it with ITK and VTK commands.
 +
* Began the process of extending the functionality of ITK by implementing the AnaylzeObjectReader reader.
 +
** Learned how to use CMake
 +
** Implemented test suite and submissions to DART dashboard.
 +
** SVN commits with multiple developers sharing responsibilities
 +
** Partial implementation is submited to the NAMIC Sandbox
 +
** ITK'ize the class and learned the Object model from ITK (LightObject, Object, DataObject, ProcessObject ...)
 +
** Design of the AnalyzeOjbectReader reader is compliant with the ITK ImageIO mechanism, and will be documented in the Insight-Journal
 +
* Began the process of extending ITK image streaming.
 +
** Partial implementation of the NIFTI streaming IO is submitted in NAMIC Sandbox
 +
* Due to the extremely poor performance of Vista, Gary decided to return his Vista laptop.
 
</div>
 
</div>
  
Line 52: Line 70:
  
 
===References===
 
===References===
Link to software architecture overview: http://www.nirep.org/architecture.htm
+
This work was supported in part by NIH grants EB004126, CA096679 and HL64368.
  
* [http://www.consort-statement.org/stardstatement.htm The STARD Initiative -- Towards Complete and Accurate Reporting of Studies on Diagnostic Accuracy ]  
+
* [http://www.nirep.org/architecture.htm Link to NIREP web site: ]
 +
* [http://www.consort-statement.org/Initiatives/newstard.htm The STARD Initiative -- Towards Complete and Accurate Reporting of Studies on Diagnostic Accuracy ]  
 
* [http://idm.univ-rennes1.fr/VMIP/SPIE2007_gb.html SPIE Medical Imaging: Validation in Medical Image Registration Workshop, Feb. 18, 2007]  
 
* [http://idm.univ-rennes1.fr/VMIP/SPIE2007_gb.html SPIE Medical Imaging: Validation in Medical Image Registration Workshop, Feb. 18, 2007]  
 
* [http://ieeexplore.ieee.org/xpl/tocresult.jsp?isYear=2006&isnumber=36137&Submit32=Go+To+Issues IEEE Transactions on Medical Imaging, Special Issue on Validation in Medical Image Processing 25(11), Nov. 2006 (need access to IEEE explore to view papers) ]
 
* [http://ieeexplore.ieee.org/xpl/tocresult.jsp?isYear=2006&isnumber=36137&Submit32=Go+To+Issues IEEE Transactions on Medical Imaging, Special Issue on Validation in Medical Image Processing 25(11), Nov. 2006 (need access to IEEE explore to view papers) ]
 
* [http://ieeexplore.ieee.org/iel5/42/27515/01225846.pdf P. Hellier, C. Barillot, I. Corouge, B. Gibaud, G. Le Goualher, D. L. Collins, A. Evans, G. Malandain, N. Ayache, G. E. Christensen, and H. J. Johnson, Retrospective Evaluation of Intersubject Brain Registration, IEEE Transactions on Medical Imaging, 22(9) 2003, pp. 1120-1130 (need access to IEEE explore to view paper) ]  
 
* [http://ieeexplore.ieee.org/iel5/42/27515/01225846.pdf P. Hellier, C. Barillot, I. Corouge, B. Gibaud, G. Le Goualher, D. L. Collins, A. Evans, G. Malandain, N. Ayache, G. E. Christensen, and H. J. Johnson, Retrospective Evaluation of Intersubject Brain Registration, IEEE Transactions on Medical Imaging, 22(9) 2003, pp. 1120-1130 (need access to IEEE explore to view paper) ]  
* [http://idm.univ-rennes1.fr/VMIP/ressourcesgb.html P. Jannin, C. Grova, C.R. Maurer, ?Model for defining and reporting reference-based validation protocols in medical image processing?, International Journal of Computer Assisted Radiology and Surgery, 1(2), August 2006. ]
+
* [http://idm.univ-rennes1.fr/VMIP/ressourcesgb.html P. Jannin, C. Grova, C.R. Maurer, Model for defining and reporting reference-based validation protocols in medical image processing, International Journal of Computer Assisted Radiology and Surgery, 1(2), August 2006. ]
 
* [http://idm.univ-rennes1.fr/VMIP/ressourcesgb.html P. Jannin, M. Fitzpatrick, D. Hawkes, X. Pennec, R. Shahidi, and M.W. Vannier, Editorial: Validation of Medical Image Processing in Image-Guided Therapy, IEEE Transactions on Medical Imaging, 21(11), 2002, pp. 1445-1449. ]
 
* [http://idm.univ-rennes1.fr/VMIP/ressourcesgb.html P. Jannin, M. Fitzpatrick, D. Hawkes, X. Pennec, R. Shahidi, and M.W. Vannier, Editorial: Validation of Medical Image Processing in Image-Guided Therapy, IEEE Transactions on Medical Imaging, 21(11), 2002, pp. 1445-1449. ]
 
 
http://www.na-mic.org/Wiki/index.php/NA-MIC/Projects/Theme/Template - Please cut and paste the template from this page and use it here.  This will be the replacement for the 4-block.
 
=Additional Information=
 
Objective: To explore a potential non-rigid collaboration between Gary Christensen's Group and NA-MIC.
 
 
Progress:
 
 
Next Steps:
 
 
*a discussion before project week
 
*meet as a group at project week
 
*explore collaboration grant
 
 
NIREP project web site: http://www.nirep.org
 
 
Project background:
 
 
We have started the Non-rigid Image Registration Evaluation Project (NIREP) to develop software tools and provide shared image validation databases for rigorous testing of non-rigid image registration algorithms. NIREP will extend the scope of prior validation projects by developing evaluation criteria and metrics using large image populations, using richly annotated image databases, using computer simulated data, and increasing the number and types of evaluation criteria.
 
 
The goal of this project is to establish, maintain, and endorse a standardized set of relevant benchmarks and metrics for performance evaluation of nonrigid image registration algorithms. Furthermore, these standards will be incorporated into an exportable computer program to automatically evaluate the registration accuracy of nonrigid image registration algorithms.
 
 
Link to software architecture overview: http://www.nirep.org/architecture.htm
 
 
Tasks to accomplish
 
*Build a prototype software package that contains the following functionality
 
*Database manager that interfaces with the evaluation database, the database of transformations for each algorithm, stores generated results, manages loading of images, manages memory, expands transformations from coefficient files, handles requests from other NIREP components, keeps track of operations using an XML (MRML) description,
 
*Display manager is responsible for displaying images, landmarks, contours, surfaces, and associated semantic information.  It also displays metric information in various formats.  The display is described in an XML (MRML) description
 
*Evaluator is responsible for all the computational aspects of image manipulation and computing metrics
 
*Application interface is a basic menu system for invoking and configuring the display manager and evaluator.
 
 
Key Investigators:
 
*Gary Christensen, Iowa (NIREP principal investigator)
 
*Hans Johnson, Iowa
 
*Sandy Wells, BWH
 
*?Stephen Aylward, Kitware
 
*Xiujuan Geng (main NIREP metric software developer)
 
*James Harris (main NIREP software developer)
 
*Jeff Hawley (NIREP software developer)
 
 
Publications:
 
 
 
Additional Links:
 
*4 block ppt
 

Latest revision as of 14:53, 13 July 2007

Home < Collaboration < UIowa < Non Rigid Registration
Initial software development stage of the Non-rigid Image Registration Evaluation Project.
NIREP application splash screen
Example code of the NIREPImageGridViewer class
NIREPImageGridViewer class summary

Key Investigators

  • Gary Christensen, Iowa (NIREP principal investigator)
  • Hans Johnson, Iowa
  • Xiujuan Geng (main NIREP metric software developer)
  • James Harris (main NIREP software developer)
  • Jeff Hawley (NIREP software developer)
  • Luis Ibanez, Kitware
  • Stephen Aylward, Kitware
  • Steve Pieper, Isomics
  • Jim Miller, GE


Objective

We have started the Non-rigid Image Registration Evaluation Project (NIREP) to develop software tools and provide shared image validation databases for rigorous testing of non-rigid image registration algorithms. NIREP will extend the scope of prior validation projects by developing evaluation criteria and metrics using large image populations, using richly annotated image databases, using computer simulated data, and increasing the number and types of evaluation criteria.


Approach, Plan

The goal of this project is to establish, maintain, and endorse a standardized set of relevant benchmarks and metrics for performance evaluation of nonrigid image registration algorithms. Furthermore, these standards will be incorporated into an exportable computer program to automatically evaluate the registration accuracy of nonrigid image registration algorithms.

Our goal for this week is to build a prototype software package that contains the following functionality:

  • Database manager that interfaces with the evaluation database, the database of transformations for each algorithm, stores generated results, manages loading of images, manages memory, expands transformations from coefficient files, handles requests from other NIREP components, keeps track of operations using an XML (MRML) description.
  • Display manager is responsible for displaying images, landmarks, contours, surfaces, and associated semantic information. It also displays metric information in various formats. The display is described in an XML (MRML) description.
  • Evaluator is responsible for all the computational aspects of image manipulation and computing metrics.
  • Application interface is a basic menu system for invoking and configuring the display manager and evaluator.


Progress

  • Used the ITK, VTK, KWWidgets and SLICER3 architectures for implementing NIREP software.
    • Replaced NIREP current visual studio project architecture with CMake cross-platform make system.
    • Updated the NIREP program to incorporate ITK to VTK.
    • Removed hardcoding in the code and replaced it with ITK and VTK commands.
  • Began the process of extending the functionality of ITK by implementing the AnaylzeObjectReader reader.
    • Learned how to use CMake
    • Implemented test suite and submissions to DART dashboard.
    • SVN commits with multiple developers sharing responsibilities
    • Partial implementation is submited to the NAMIC Sandbox
    • ITK'ize the class and learned the Object model from ITK (LightObject, Object, DataObject, ProcessObject ...)
    • Design of the AnalyzeOjbectReader reader is compliant with the ITK ImageIO mechanism, and will be documented in the Insight-Journal
  • Began the process of extending ITK image streaming.
    • Partial implementation of the NIFTI streaming IO is submitted in NAMIC Sandbox
  • Due to the extremely poor performance of Vista, Gary decided to return his Vista laptop.



References

This work was supported in part by NIH grants EB004126, CA096679 and HL64368.