ITK/Release 4/Modularization/Prototype/Partition: Difference between revisions

From KitwarePublic
Jump to navigationJump to search
No edit summary
 
(12 intermediate revisions by 2 users not shown)
Line 1: Line 1:
The following is the suggested list of modules in which  monolithic ITK will be partitioned.  Those modules are categorized into  Core, IO, Filtering Segmentation, Registration and Others, according to their functionality.  The current list is only for prototyping discussion purposes.
The following is part of the suggested list of modules in which  monolithic ITK will be partitioned.  Those modules are categorized into  Core, IO, Filtering Segmentation, Registration and Others, according to their functionalities.  The current list is only for prototyping discussion purposes and does not cover all the classes in ITK yet.


= Core =
= Core =
* common (Object, Exception,ProcessObject ...)
* common (Object, Exception,ProcessObject ...)
* io-common
* io-common (IO wrapper)
* itksys
* itksys (system tools)
* itkvnl
* itkvnl (essential numerics)


= Numerics =
= Numerics =
Line 13: Line 13:
* FEM
* FEM


= IO =
= IO =
One module per file format.
One module per file format.
This is because every file format brings in a dependency on a full third party library
This is because every file format brings in a dependency on a full third party library
Line 19: Line 19:
* JPEG  
* JPEG  
* Nrrd
* Nrrd
* BMP
* IPL
* GDCM
* BioRad
* LSM
* TIFF
* VTK
* GE
* GE
* Analyze
* Analyze
Line 34: Line 41:
*  Isotropic  (Mean, Median, Gaussian)
*  Isotropic  (Mean, Median, Gaussian)
* Thresholding (BinaryThreshold, OtsuThreshold)
* Thresholding (BinaryThreshold, OtsuThreshold)
* Mathematical Morphology  
* Mathematical Morphology (Open, Close, Thinning,Pruning)
* Hole Filling
* Hole Filling
* Anti-alias
* Anti-alias
* Gradient
* Gradient
* Thinning
* Pruning
* Ballon Force
* Ballon Force
* Curvature Flow
* Curvature Flow
* Gradient vector flow
* Gradient Vector Flow
* STAPLE
* STAPLE
* QuadEdgeMesh
* Diffusion Tensor
* Diffusion Tensor
* BSpline
* Edge Detection
* Image Statistics
* Triangle Mesh


= Segmentation =
= Segmentation =
Line 54: Line 64:
* Kmeans
* Kmeans
* Classifier
* Classifier
* MRF
* Markov Random Fields
* GibbsPiror
* GibbsPiror
* ConnectedComponent
* Connected Components
* Thresholding
* Label Voting
* Lable Voting
* Fast marching
* Fast marching
* PCAShapeModel


 
= Registration =
= Registration =
* registration-common (common classes for all image registration methods, eg. Deformation Fields, Image matching metrics)
* registration-common (common classes for all image registration methods, eg. Deformation Fields)
* Deformable Registration
* Deformable Registration
* Demons
* Demons
* BSpline
* FEM Registration
* FEM Registration
* Curvature Registration
* Curvature Registration
Line 72: Line 80:
* Point set to point set registration
* Point set to point set registration


= Others =
= Others=
(Utility modules)
(Utility modules)
* NrrdIO
* zlib
* openjpeg
* KWSyle
* Doxygen
* DICOMParser
= Applications =
= Manifesto =
* [[File:Itk-modules-manifesto.txt]]

Latest revision as of 16:00, 9 December 2011

The following is part of the suggested list of modules in which monolithic ITK will be partitioned. Those modules are categorized into Core, IO, Filtering Segmentation, Registration and Others, according to their functionalities. The current list is only for prototyping discussion purposes and does not cover all the classes in ITK yet.

Core

  • common (Object, Exception,ProcessObject ...)
  • io-common (IO wrapper)
  • itksys (system tools)
  • itkvnl (essential numerics)

Numerics

  • Optimizers
  • Statistics
  • Neural Networks
  • FEM

IO

One module per file format. This is because every file format brings in a dependency on a full third party library

  • PNG
  • JPEG
  • Nrrd
  • BMP
  • IPL
  • GDCM
  • BioRad
  • LSM
  • TIFF
  • VTK
  • GE
  • Analyze
  • BMP
  • Gipl
  • Nifti
  • DICOM
  • Meta
  • Siemens
  • XML
  • Transform

Filtering

  • Anisotropic Diffusion
  • Isotropic (Mean, Median, Gaussian)
  • Thresholding (BinaryThreshold, OtsuThreshold)
  • Mathematical Morphology (Open, Close, Thinning,Pruning)
  • Hole Filling
  • Anti-alias
  • Gradient
  • Ballon Force
  • Curvature Flow
  • Gradient Vector Flow
  • STAPLE
  • QuadEdgeMesh
  • Diffusion Tensor
  • BSpline
  • Edge Detection
  • Image Statistics
  • Triangle Mesh

Segmentation

  • Region Growing
  • Level Sets
  • Deformable Mesh
  • Watersheds
  • Voronoi
  • Kmeans
  • Classifier
  • Markov Random Fields
  • GibbsPiror
  • Connected Components
  • Label Voting
  • Fast marching
  • PCAShapeModel

Registration

  • registration-common (common classes for all image registration methods, eg. Deformation Fields, Image matching metrics)
  • Deformable Registration
  • Demons
  • FEM Registration
  • Curvature Registration
  • Image to Spatial Object registration
  • Point set to point set registration

Others

(Utility modules)

  • NrrdIO
  • zlib
  • openjpeg
  • KWSyle
  • Doxygen
  • DICOMParser

Applications

Manifesto