KWScene/Documentation/Supported Generators/ITK/Image: Difference between revisions

From KitwarePublic
Jump to navigationJump to search
 
(8 intermediate revisions by the same user not shown)
Line 1: Line 1:
= Desired Format Support =
= Desired Format Support =


DICOM (.dcm)
** DICOM (.dcm)
Analyze (.hdr/.ima)
** Analyze (.hdr/.ima)
XML (.vti)
** XML (.vti)
** MetaImage (.mha)


= Class Diagrams =
= Class Diagrams =
Line 16: Line 17:
itkImageIOBase [URL="http://www.itk.org/Doxygen316/html/classitk_1_1ImageIOBase.html"];
itkImageIOBase [URL="http://www.itk.org/Doxygen316/html/classitk_1_1ImageIOBase.html"];
itkVTKImageIO[URL="http://www.itk.org/Doxygen316/html/classitk_1_1VTKImageIO.html"];
itkVTKImageIO[URL="http://www.itk.org/Doxygen316/html/classitk_1_1VTKImageIO.html"];
itkVTKGDCMImageIO[URL="http://www.itk.org/Doxygen316/html/classitk_1_1GDCMImageIO.html"];
itkGDCMImageIO[URL="http://www.itk.org/Doxygen316/html/classitk_1_1GDCMImageIO.html"];
itkVTKAnalyzeImageIO[URL="http://www.itk.org/Doxygen316/html/classitk_1_1AnalyzeImageIO.html"];
itkAnalyzeImageIO[URL="http://www.itk.org/Doxygen316/html/classitk_1_1AnalyzeImageIO.html"];
itkVTKMetaImageIO[URL="http://www.itk.org/Doxygen316/html/classitk_1_1MetaImageIO.html"];
itkMetaImageIO[URL="http://www.itk.org/Doxygen316/html/classitk_1_1MetaImageIO.html"];
itkProcessObject -> itkImageSource<>
itkProcessObject -> itkImageSource  
itkImageSource -> itkImageSeriesReader<>
itkImageSource -> itkImageSeriesReader
itkImageSource -> itkImageFileReader<>
itkImageSource -> itkImageFileReader
itkImageIOBase -> itkGDCMImageIO
itkImageIOBase -> itkGDCMImageIO
itkImageIOBase -> itkAnalyzeImageIO
itkImageIOBase -> itkAnalyzeImageIO
Line 33: Line 34:
== Option A ==
== Option A ==


* Create a KWScene hierarchy where every class is dedicated to a specific file format.
* Create a KWScene hierarchy where FactoryBasedImageGenerator handles all relevant file formats.
* Will have classes
* Will have classes
** Image-KWSGenerator, which can generate either an image of most single-file types via itk::ImageIOFactory  
** FactoryBasedImage-KWSGenerator, which can generate either  
** or an Image Series via itk::GDCMImageIO.  
** an image of most single-file types via itk::ImageIOFactory or
** Because of the reliability of ImageIOFactory, ImageNode is not an abstract class here, and can handle any image.  
** an Image Series via itk::GDCMImageIO.  
** because of the breadth and reliability of ImageIOFactory.
** ImageNodeGenerator is the base class here, to be consistent with nomenclature in VTK.  


=== Proposed Hierarchy ===
=== Proposed Hierarchy ===
Line 46: Line 49:
kwsITKNodeGenerator
kwsITKNodeGenerator
kwsITKImageNodeGenerator
kwsITKImageNodeGenerator
kwsVTKGenerator -> kwsVTKNodeGenerator
kwsITKFactoryBasedImageNodeGenerator
kwsVTKNodeGenerator -> kwsVTKImageNodeGenerator
kwsITKGenerator -> kwsITKNodeGenerator
kwsITKNodeGenerator -> kwsITKImageNodeGenerator
kwsITKImageNodeGenerator-> kwsITKFactoryBasedImageNodeGenerator
}
}
</graphviz>
</graphviz>

Latest revision as of 19:32, 22 April 2010

Desired Format Support

    • DICOM (.dcm)
    • Analyze (.hdr/.ima)
    • XML (.vti)
    • MetaImage (.mha)

Class Diagrams

This is a graph with borders and nodes. Maybe there is an Imagemap used so the nodes may be linking to some Pages.

Options

Option A

  • Create a KWScene hierarchy where FactoryBasedImageGenerator handles all relevant file formats.
  • Will have classes
    • FactoryBasedImage-KWSGenerator, which can generate either
    • an image of most single-file types via itk::ImageIOFactory or
    • an Image Series via itk::GDCMImageIO.
    • because of the breadth and reliability of ImageIOFactory.
    • ImageNodeGenerator is the base class here, to be consistent with nomenclature in VTK.

Proposed Hierarchy

This is a graph with borders and nodes. Maybe there is an Imagemap used so the nodes may be linking to some Pages.