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

From KitwarePublic
Jump to navigationJump to search
No edit summary
No edit summary
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 functionalities.  The current list is only for prototyping discussion purposes and does not cover all the classes in ITK.
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 functionalities.  The current list is only for prototyping discussion purposes and does not cover all the classes in ITK.


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


= Numerics =
= Numerics (3-5 modules) =
* Optimizers  
* Optimizers  
* Statistics
* Statistics
Line 13: Line 13:
* FEM
* FEM


= IO =
= IO (>20 modules) =
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 30: Line 37:
* Transform
* Transform


= Filtering =
= Filtering ( > 20 modules)=
* Anisotropic  Diffusion
* Anisotropic  Diffusion
*  Isotropic  (Mean, Median, Gaussian)
*  Isotropic  (Mean, Median, Gaussian)
Line 44: Line 51:
* Gradient vector flow
* Gradient vector flow
* STAPLE
* STAPLE
* QuadEdgeMesh
* Diffusion Tensor
* Diffusion Tensor
* BSpline


= Segmentation =
= Segmentation (>15 modules) =
* Region Growing
* Region Growing
* Level Sets
* Level Sets
Line 60: Line 69:
* Lable Voting
* Lable Voting
* Fast marching
* Fast marching
* PCAShapeModel
* Triangle Mesh


 
= Registration (>7 modules) =
= 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 81:
* Point set to point set registration
* Point set to point set registration


= Others =
= Others=
(Utility modules)
(Utility modules)

Revision as of 02:25, 7 November 2010

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 functionalities. The current list is only for prototyping discussion purposes and does not cover all the classes in ITK.

Core (>4 modules)

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

Numerics (3-5 modules)

  • Optimizers
  • Statistics
  • Neural Networks
  • FEM

IO (>20 modules)

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 ( > 20 modules)

  • Anisotropic Diffusion
  • Isotropic (Mean, Median, Gaussian)
  • Thresholding (BinaryThreshold, OtsuThreshold)
  • Mathematical Morphology
  • Hole Filling
  • Anti-alias
  • Gradient
  • Thinning
  • Pruning
  • Ballon Force
  • Curvature Flow
  • Gradient vector flow
  • STAPLE
  • QuadEdgeMesh
  • Diffusion Tensor
  • BSpline

Segmentation (>15 modules)

  • Region Growing
  • Level Sets
  • Deformable Mesh
  • Watersheds
  • Voronoi
  • Kmeans
  • Classifier
  • MRF
  • GibbsPiror
  • ConnectedComponent
  • Thresholding
  • Lable Voting
  • Fast marching
  • PCAShapeModel
  • Triangle Mesh

Registration (>7 modules)

  • 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)