Difference between revisions of "NA-MIC/Projects/Non-Medical Collaborations/Astronomical Medicine"

From NAMIC Wiki
Jump to: navigation, search
(New page: {| |thumb|320px|Return to [[2008_Summer_Project_Week|Project Week Main Page ]] |[[Image:Future-astromed-slicer-mockup.png|thumb|320px|Mockup of a future vers...)
 
 
(3 intermediate revisions by the same user not shown)
Line 24: Line 24:
 
Our approach is summarized on the [http://astromed.iic.harvard.edu Astronomical Medicine web site].  The main challenge to this approach at the moment, is the impedance mismatch between celestial coordinates and medical imaging coordinates, and a lack of infrastructure within ITK and Slicer to allow for alternative coordinate systems.
 
Our approach is summarized on the [http://astromed.iic.harvard.edu Astronomical Medicine web site].  The main challenge to this approach at the moment, is the impedance mismatch between celestial coordinates and medical imaging coordinates, and a lack of infrastructure within ITK and Slicer to allow for alternative coordinate systems.
  
Our plan for the project week is to make further progress in integrating our ITK FITS reader into Slicer as a plug-in, and to begin work on Slicer GUI enhancements to support our FITS plug-in and to allow the display of astronomical coordinates in slice viewers.
+
Our plan for the project week is to see if we can add support for World Coordinate System grid images to Slicer3 in order to allow astronomical coordinate readout from slice planes.
 
</div>
 
</div>
  
Line 30: Line 30:
  
 
<h1>Progress</h1>
 
<h1>Progress</h1>
====January 2008 Project Week====
+
We have implemented software that has allowed Slicer to be used as a platform for doing cutting-edge radio astronomy.  Peer-reviewed publications are pending, including one in <i>Nature</i>.
  
* Created vtkCoordinateSpaceManager, a container that manages multiple named coordinate spaces and the transforms between them. A reader can populate a coordinate space manager with all the coordinate spaces it knows about.  Registration tools can link otherwise unrelated coordinate spaces, and the manager can hand back a (possibly composite) transform between any two related spaces. This module hasn't been incorporated into Slicer3 yet.
+
<h3>At 2008 Summer Project Week</h3>
* With Wendy Plesniak's help, we now have the ability to recenter on data not located at the origin in Slicer. She's incorporating similar changes into the "look from" Slicer control. We'll need to look at autozooming as well for very small volumes.
+
<ul>
* Slicer3 volume rendering works reasonably well with astronomical data, but the world size of model seems to influence rendering appearance. Solved some performance issues on the Mac.
+
  <li>Learned how we can use the new Loadable Modules feature to help solve our problem.</li>
* Experimental linearized celestial coordinate system implementation being tested now.
+
  <li>Worked with Luis to make itk::Transform<>::GetInverse() virtual.
* Prototyped Slicer3 plugin module adapter for fits2itk.
+
  <li>Learned that another group is working on adding support for grid transform MRML storage and transform nodes. Assuming that this pans out, we only need to add support for using these from the SliceSWidget.</li>
** Debugged performance issues with the Slicer3 implementation of plugin modules for OS X and submitted bug report.
+
  <li>Devised with Steve and Jim several different plans for getting the coordinate transforms into SliceSWidget.</li>
* Prototyped ITK-based NaN masking filter.
+
  <li>Learned from Luca how to make Loadable Modules in Python.</li>
** Still need standard way to deal with NaNs in ITK/VTK/Slicer3.
+
</ul>
 
 
====June 2007 Project Week====
 
 
 
Worked with Jim Miller to implement preservation of the ITK metadata dictionary through the Slicer pipeline, worked with Luis Ibanez to help implement ITK streaming file I/O, set up more robust dependency rules in our CMake config, and debugged a problem with our use of ITK filters.
 
 
 
====Jan 2007 Project Half Week====
 
 
 
Solved problem of itk::ImageIOBase being incompatible with CFITSIO's "extended filename syntax", identified compatibility issues present in the most recent version of Slicer 3, and devised a plan for passing FITS WCS transforms around in Slicer by encapsulating them in itk::Transform objects held in an image's metadata dictionary.
 
 
 
====June 2006 Project Week====
 
 
 
Implemented a prototype FITS reader for ITK. We later released a subsequent version as an open-source FITS-to-NRRD file converter, which is available [http://astromed.iic.harvard.edu/FITS-reader here].
 
  
 
</div><br style="clear: both;" /></div>
 
</div><br style="clear: both;" /></div>
Line 59: Line 47:
 
* The [http://am.iic.harvard.edu Astronomical Medicine web site]
 
* The [http://am.iic.harvard.edu Astronomical Medicine web site]
 
* [http://am.iic.harvard.edu/FITS-reader Open-source release] of our ITK-based FITS file reader/converter.
 
* [http://am.iic.harvard.edu/FITS-reader Open-source release] of our ITK-based FITS file reader/converter.
 +
* [http://astromed.iic.harvard.edu/DendroStar DendroStar] applet for visualization of dendrogram representations of spectral line data cubes.
  
 
* Michelle Borkin, Alyssa Goodman, Michael Halle, Douglas Alan, Jens Kauffmann, [http://adsabs.harvard.edu/cgi-bin/nph-bib_query?bibcode=2006AAS...209.5706B&amp;db_key=AST&amp;data_type=HTML&amp;format=&amp;high=438a74bfef26079 "Application of Medical Imaging Software to the 3D Visualization of Astronomical Data"], 1/2007, 2007 AAS/AAPT Joint Meeting, American Astronomical Society Meeting 209, #57.06.  Presentation:  [http://www.cfa.harvard.edu/COMPLETE/astromed/aas209/057.06_borkin.ppt PPT] [http://www.cfa.harvard.edu/COMPLETE/astromed/aas209/057.06_borkin.pdf PDF].
 
* Michelle Borkin, Alyssa Goodman, Michael Halle, Douglas Alan, Jens Kauffmann, [http://adsabs.harvard.edu/cgi-bin/nph-bib_query?bibcode=2006AAS...209.5706B&amp;db_key=AST&amp;data_type=HTML&amp;format=&amp;high=438a74bfef26079 "Application of Medical Imaging Software to the 3D Visualization of Astronomical Data"], 1/2007, 2007 AAS/AAPT Joint Meeting, American Astronomical Society Meeting 209, #57.06.  Presentation:  [http://www.cfa.harvard.edu/COMPLETE/astromed/aas209/057.06_borkin.ppt PPT] [http://www.cfa.harvard.edu/COMPLETE/astromed/aas209/057.06_borkin.pdf PDF].

Latest revision as of 17:58, 26 June 2008

Home < NA-MIC < Projects < Non-Medical Collaborations < Astronomical Medicine
Mockup of a future version of Slicer with features desired by the Astronomical Medicine project.


Key Investigators

  • Havard IIC: Douglas Alan
  • BWH/Harvard IIC: Mike Halle

Objective

We are developing tools and enhancements to ITK and Slicer in order to adapt Slicer to be a tool that is useful for the visualization of astronomical data, specifically spectral line data cubes for now.

Approach, Plan

Our approach is summarized on the Astronomical Medicine web site. The main challenge to this approach at the moment, is the impedance mismatch between celestial coordinates and medical imaging coordinates, and a lack of infrastructure within ITK and Slicer to allow for alternative coordinate systems.

Our plan for the project week is to see if we can add support for World Coordinate System grid images to Slicer3 in order to allow astronomical coordinate readout from slice planes.

Progress

We have implemented software that has allowed Slicer to be used as a platform for doing cutting-edge radio astronomy. Peer-reviewed publications are pending, including one in Nature.

At 2008 Summer Project Week

  • Learned how we can use the new Loadable Modules feature to help solve our problem.
  • Worked with Luis to make itk::Transform<>::GetInverse() virtual.
  • Learned that another group is working on adding support for grid transform MRML storage and transform nodes. Assuming that this pans out, we only need to add support for using these from the SliceSWidget.
  • Devised with Steve and Jim several different plans for getting the coordinate transforms into SliceSWidget.
  • Learned from Luca how to make Loadable Modules in Python.


References