ITK/Release Schedule

From KitwarePublic
Jump to navigationJump to search

The next release is 3.18 scheduled for Jan 6 2010.

Release Life Cycle

Last period for adding classes and features

  • New classes will be selected from good reviews from the Insight Journal
  • New features and new methods can be added during this period.

Feature Freeze

  • Increase code coverage
    • address any UNTESTED files
    • address files with code coverage lower than 80%
  • Address Run-time memory issues
    • Purify reports
    • Valgrind reports

CVS Tagging

The repository is tagged by using two tags, one for the reference, and another for the branch.

Posting Tarballs

  • Tarballs are posted to SourceForge
  • Tarballs are linked from the ITK Download






Release 3.4 Schedule

Release Number Start Date End Date
Reviewing Insight Journal (IJ) - -
Selecting best IJ papers - -
Moving IJ code into ITK Review Directory - -
Feature freeze, fixing tests, code coverage Sep 1 2007 Sept 15 2007
CVS Tagging Sept 16, 2007 Sept 16, 2007
Testing tarballs Sept 16, 2007 Sept 16, 2007
Posting tarballs Sept 17 2007 Sept 17 2007


Contributions



ITK: [Welcome | Site Map]

High Priority

  1. Using a Mask to Decrease Computation Time for SpatialObject to Image Conversions [1] (Shepherd: Julien Jomier)
  2. Digital Topology [2] (Shepherd: ??)
  3. Computational Geometry Computation and KNN Segmentation in ITK [3] (Shepherd: ??)
  4. itkEllipseBoundaryToImageFilter [4] (Shepherd: Hans Johnson)
  5. Implementing the Automatic Generation of 3D Statistical Shape Models with ITK [5] (Shepherd: Vincent Magnotta)
  6. I-DO: A Deformable Organisms framework for ITK [6] (Shepherd: Luis Ibanez)
  7. Minimal Imposition Image Filter [7] (Shepherd: Julien Jomier)
  8. Binary morphological closing and opening image filter [8] (Shepherd: Luis Ibanez)
  9. Support for "cub" image format [9] (Shepherd: Luis Ibanez)


Release 3.6 Schedule

Release Number Start Date End Date
Moving code from ITK Review Directory to final destination Jan 5 2008 Jan 25 2008
Reviewing Insight Journal (IJ) Jan 5 2008 Jan 18 2008
Selecting best IJ papers Jan 18 2008 Jan 18 2008
Bug triage Jan 18 2008 Jan 18 2008
Moving IJ code into ITK Review Directory Jan 19 2008 Jan 31 2008
Feature freeze, fixing tests, code coverage Feb 1 2008 Feb 27 2008
CVS Tagging Feb 28, 2008 Feb 28, 2008
Testing tarballs Feb 28, 2008 Feb 28, 2008
Posting tarballs Feb 29 2008 Feb 29 2008

Deprecated code to be removed

  • Alpha parameter from the Kernel Transforms

Code to be moved from Review to final destination

  • Transform Readers Writers
    • Pick a filename extension
    • Do code reviews
  • VTKPolyData Reader Writer (Not Yet: doesn't support QMesh)
    • Check tests
  • Label filters
    • Label Overlay
    • Labet RGB
  • Morphology Filters
  • ConformalFlattening
  • ContourExtractor
  • FlatStructuringElement
  • ProjectionFilters
  • MINC ImageIO support
  • NeuralNetworks (Not Ready)
    • It can't create arbitrary Neural Networks.
    • In its current form, the user must know the structure of the Neural Network, and must instantiate it, before she/he can read it from a file.
    • (Discussed at tcon Feb 22 2008): Minutes 022208

Contributions from IJ

High Priority

  1. Digital Topology [10] (Shepherd: )
  2. vtkINRIA3D: A VTK Extension for Spatiotemporal Data Synchronization, Visualization and Management [11] (Shepherd: )
  3. Using a Mask to Decrease Computation Time for SpatialObject to Image Conversions [12] (Shepherd: )
  4. FFT Complex to Complex filters and helper classes [13] (Shepherd: )
  5. itkEllipseBoundaryToImageFilter [14] ( Shepherd: )
  6. Implementing the Automatic Generation of 3D Statistical Shape Models with ITK [15] (Shepherd: )
  7. Optimizing ITK’s Registration Methods for Multi-processor, Shared-Memory Systems [16] (Shepherd: )[Done]
  8. I-DO: A Deformable Organisms framework for ITK [17] (Shepherd: )
  9. Diffeomorphic Demons Using ITK's Finite Difference Solver Hierarchy [18] (Shepherd: )
  10. Multidimensional Arrays and the nArray Package [19] (Shepherd: )
  11. A Generalized Squared Euclidean Distance Transform with Voronoi Maps [20] (Shepherd: )
  12. A support for "cub" image format [21] (Shepherd: )[Done]
  13. Binary morphological closing and opening image filters [22] (Shepherd: )
  14. MinimaImpositionImageFilter [23] (Shepherd: )

Low Priority

  1. Non-rigid Groupwise Registration using B-Spline Deformation Model [24] (Shepherd: )
  2. Generalizing vesselness with respect to dimensionality and shape [25] (Shepherd: )
  3. Incorporating Metric Flows and Sparse Jacobian Transformations in ITK [26] (Shepherd: )
  4. Class for Serial Transformations [27] (Shepherd: )
  5. Kappa Sigma Clipping [28] (Shepherd: )
  6. Radial Thickness Calculation and Visualization for Volumetric Layers [29] (Shepherd: )
  7. Label object representation and manipulation with ITK [30] (Shepherd: )
  8. Cumulative Gaussian Curve Fitter for Boundary Parameterization [31] (Shepherd: )
  9. Optimized image iterators [32] (Shepherd: )
  10. Slice by slice filtering with ITK [33] (Shepherd: )
  11. Consolidated morphology [34] (Shepherd: )
  12. Reader/Writer for Analyze Object Maps for ITK [35] (Shepherd: )
  13. A small rework for the Gaussian Derivative Image Function [36] (Shepherd: )



ITK: [Welcome | Site Map]

Comment (Feb. 2, 2008, R Brooks)

With regard to the class for serial transformations, this is an excellent and useful idea. However, the paper linked to here does not support the registration framework, where as another paper on the same topic does. [37] That paper, however, has its own set of limitations. I think that a class for serial or combined transforms is a valuable addition. However, I worry that if done prematurely, we would be stuck with a limited interface due to ITKs backwards compatibility policies. I think some serious thought should be put into how this interface should work before committing to a particular implementation.

At the very least i think that any such class should support:

  1. The registration framework - ie - proper Jacobians
  2. An arbitrarily long chain of transformations
  3. The ability to have some fixed and some parameterized transforms - by this i mean that some transformation parameters do not appear in the GetParameters and Jacobian methods.
  4. Some sort of intelligent interaction with the transform reader and writer classes.

I suppose that I should kick myself a bit, for not having reviewed either of these papers. I'll post this to the list as well and see if it spawns discussion.


Release 3.8 Schedule

Release Number Start Date End Date
Moving code from ITK Review Directory to final destination Jun 5 2008 Jun 25 2008
Reviewing Insight Journal (IJ) Jun 5 2008 Jun 18 2008
Selecting best IJ papers Jun 18 2008 Jun 18 2008
Bug triage Jun 18 2008 Jun 18 2008
Moving IJ code into ITK Review Directory Jun 19 2008 Jun 30 2008
Feature freeze, fixing tests, code coverage Jul 1 2008 Jul 27 2008
CVS Tagging Jul 28, 2008 Jul 28, 2008
Testing tarballs Jul 28, 2008 Jul 28, 2008
Posting tarballs Jul 29 2008 Jul 29 2008

Release 3.10 Schedule

Release Number Start Date End Date
Moving code from ITK Review Directory to final destination Sep 5 2008 Sep 25 2008
Reviewing Insight Journal (IJ) Sep 5 2008 Sep 18 2008
Selecting best IJ papers Sep 18 2008 Sep 18 2008
Bug triage Sep 18 2008 Sep 18 2008
Moving IJ code into ITK Review Directory Sep 19 2008 Sep 30 2008
Feature freeze, fixing tests, code coverage Oct 1 2008 Oct 27 2008
CVS Tagging Oct 28, 2008 Oct 28, 2008
Testing tarballs Oct 28, 2008 Oct 28, 2008
Posting tarballs Oct 29 2008 Oct 29 2008

Insight Journal Papers to move to Review

Current suggested list:

Meshes (To be moved and supported by Alex Gouaillard and Arnaud Gelas @ Harvard)

Image


Release 3.12 Schedule

Release Number Start Date End Date
Moving code from ITK Review Directory to final destination Dec 5 2008 Feb 20th 2009
Reviewing Insight Journal (IJ) Nov 15 2008 Feb 15th 2009
Selecting IJ papers Nov 15 2008 Feb 15th 2009
Bug triage Nov 30 2008 Feb 22nd 2009
Moving IJ code into ITK Review Directory Nov 15 2008 Feb 22nd 2009
Feature freeze, fixing tests, code coverage Feb 23 2008 Feb 23th 2009
CVS Tagging Feb 28th, 2009 Feb 28th, 2009
Testing tarballs Feb 28th, 2009 Feb 28th, 2009
Posting tarballs Feb 28th, 2009 Feb 28th, 2009

Insight Journal Papers to move to Review

Current suggested list:


Release 3.14 Schedule

Release Number Start Date End Date
Moving code from ITK Review Directory to final destination March 15 2009 May 24 2009
Reviewing Insight Journal (IJ) March 15 2009 May 15 2009
Selecting IJ papers April 1 2009 May 15 2009
Bug triage April 1 2009 April 7 2009
Moving IJ code into ITK Review Directory April 1 2009 May 24 2009
Feature freeze, fixing tests, code coverage May 25 2009 May 29 2009
CVS Tagging May 30 2009 May 30, 2009
Testing tarballs May 30 2009 May 30 2009
Posting tarballs May 31 2009 May 31 2009

Insight Journal Papers to move to Review

Current suggested list:

Part A

Part B


Release 3.16 Schedule

Release Number Start Date End Date
Moving code from ITK Review Directory to final destination June 15 2009 Aug 7 2009
Reviewing Insight Journal (IJ) June 15 2009 July 31 2009
Selecting IJ papers June 15 2009 July 15 2009
Bug triage Aug 1 2009 Aug 15 2009
Moving IJ code into ITK Review Directory June 15 2009 Aug 7 2009
Feature freeze, fixing tests, code coverage Aug 8 2009 Sept 9 2009
CVS Tagging Sept 9 2009 Sept 9, 2009
Testing tarballs Sept 10 2009 Sept 10 2009
Posting tarballs Sept 10 2009 Sept 10 2009

Insight Journal Papers to move to Review

Review Articles to be Moved

Current suggested list:

  • itkTransformReader
    • (and associated factories)
  • Multi-threaded Registration
  • Consolidated Morphology
    • These classes need a code walk through to review Method names, especially internally used names. There are several that do not conform to ITK naming conventions. (e.g. itkBoxUtilities: setConnectivityEarlyBox
  • Binary Functor Filters
    • AddConstant, DivideByConstant, MultiplyByConstant, SubtractConstantFrom


Release 3.18 Schedule

Release Number Start Date End Date
Moving code from ITK Review Directory to final destination Oct 1 2009 Nov 15 2009
Reviewing Insight Journal (IJ) Oct 1 2009 Nov 1 2009
Selecting IJ papers Oct 15 2009 Nov 1 2009
Bug triage Oct 1 2009 Oct 15 2009
Moving IJ code into ITK Review Directory Nov 1 2009 Dec 14 2009
Feature freeze, fixing tests, code coverage Dec 15 2009 Jan 8 2010
CVS Tagging January 8 2010 January 8, 2010
Testing tarballs January 9 2010 January 9 2010
Posting tarballs January 10 2010 January 10 2010

Insight Journal papers to Move for ITK 3.18

Check-list for Moving Code from IJ to Review and from Review

For IJ Articles To Review

  • Responsible developer should add a review before moving into local copy of Review. Please provide authors with feedback regarding changes that were made to conform to ITK style/documentation etc.

For Adding Images to Input or Baseline

  • Images should be SMALL.
    • The source tree is not an image database, but a source code repository.
    • Adding an image larger than 50Kb should be justified by a discussion in the Developers list
    • Make sure that you use the "cvs add -kb" option when adding binary files to the CVS repository.
  • Regression images should not use Analyze format unless the test is for the AnalyzeImageIO and related classes.
  • Images should use non-trivial Metadata.
    • Origin should be different form zeros
    • Spacing should be different from ones, and it should be anisotropic
    • Direction should be different from Identity

For Moving Code From Review

  • At least one independent (other than contributor) should sign off on the API
  • Coverage should be as close to 100% as possible.
    • and never lower than 90%.
    • For example, itkTransformIOBase.cxx is only at 63% coverage. Should be easily fixed by adding a Print() to one of the tests.

For All

  • Check all comments for proper English
  • Should pass KWStyle. IJ articles should be checked with KWStyle before checking into repository.
  • Should pass PrintSelf. IJ articles should pass PrintSelf check before checking into repository.
  • ITK_EXPORT should appear in each class definition. This triggers the PrintSelf checker.
  • Replace itkGetMacro with itkGetConstMacro.
  • Header file should contain Insight Journal citation
    • Using the "handle" link.
  • Use vcl verions of all transcendental functions.
    • For example, itkGaborKernelFunction used sin() and cos() rather than vcl_sin() and vcl_cos().
  • Progress should be present for all filters. Use itk::SimplerFilterWatcher to exercise progress and PrintSelfs.
  • When appropriate, class should handle image directions. Tests should use non-default values for origin, spacing and dimension.
    • GaborImageSource did not provide methods to set/get directions.
  • Regression tests names should when possible have the same name as the test.
  • Exceptions should be descriptive and provide as much information as possible
  • Member data should be private with access if required through Get methods.

Release History