ITK/Release Schedule: Difference between revisions

From KitwarePublic
< ITK
Jump to navigationJump to search
Line 45: Line 45:




== Release 3.14 Schedule ==
{| border="1"
|- bgcolor="#abcdef"
! 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 ====
* These two papers provide similar functionalities:
** [http://www.insight-journal.org/browse/publication/90 A Generalized Squared Euclidean Distance Transform with Voronoi Maps]
** [http://www.insight-journal.org/browse/publication/228 Morphology with parabolic structuring elements]
* [http://www.insight-journal.org/browse/publication/304 A Novel Information-Theoretic Point-Set Measure Based on the Jensen-Havrda-Charvat-Tsallis Divergence](related to paper [http://www.insight-journal.org/browse/publication/317 317])
* [http://www.insight-journal.org/browse/publication/324 Automatic Junction Detection for Tubular Structures]
* [http://www.insight-journal.org/browse/publication/149 Combining labeled images with ITK]
** Lorensen has started on this one.
* [http://www.insight-journal.org/browse/publication/94 Computational Geometry Computation and KNN Segmentation in ITK]
* [http://www.insight-journal.org/browse/publication/120 Digital Topology]
** Lots of comments from Gaetan. He has already addressed many issues with the code. Be sure to use his updated code.
** Sadely, I found some quite important problems while working on this code, like some non thread safe methods. Richard has started some similar work which may be less problematic. [[User:Glehmann|Glehmann]] 20:09, 25 April 2009 (UTC)
* [http://www.insight-journal.org/browse/publication/177 Direct Fourier Tomographic Reconstruction Image-To-Image Filter]
** Wes Turner has downloaded this and is preparing it for addition to review.
* [http://www.insight-journal.org/browse/publication/316 Exporting Contours to DICOM-RT Structure Set]
* [http://www.insight-journal.org/browse/publication/135 Fast BlockMatching Registration with Entropy-based Similarity]
* [http://www.insight-journal.org/browse/publication/213 Fast Marching Minimal Path Extraction in ITK]
* [http://www.insight-journal.org/browse/publication/165 Flux driven medial curve extraction]
* [http://www.insight-journal.org/browse/publication/240 Generating a Deformation Field from a Transform]
** Needs copyright clarification
** This class has already been moved to review in July 2008 ([http://www.itk.org/cgi-bin/viewcvs.cgi/Code/Review/itkTransformToDeformationFieldSource.h?root=Insight&sortby=date&view=log cvs log])
* [http://www.insight-journal.org/browse/publication/150 Go-Go Gabor Gadgetry]
** Lorensen has already downloaded this and is preparing for addition to Review
* [http://www.insight-journal.org/browse/publication/306 Graph Cuts, Caveat Utilitor, and Euler's Bridges of Konigsberg](Verify Patent Status)(Siemens Patent)
* [http://www.insight-journal.org/browse/publication/140 Gridding Graphic Graticules]
** Lorensen has already downloaded this and is preparing for addition to Review
* Add a combination of these two helper classes:
** [http://www.insight-journal.org/browse/publication/216 Helper class for initializing the grid parameters of a BSpline,Helper class for initializing the grid parameters of a BSpline deformable transform by using an image as reference]
** [http://www.insight-journal.org/browse/publication/272 Helper classes for the BSplineDeformableTransform]
* [http://www.insight-journal.org/browse/publication/308 ITK Implementation Of The Minimum Error Image Thresholding Algorithm]
* [http://www.insight-journal.org/browse/publication/86 ITK Order K Distance Transform]
* [http://www.insight-journal.org/browse/publication/320 Image registration using the Morphon algorithm: an ITK implementation]
==== Part B ====
* [http://www.insight-journal.org/browse/publication/307 ImageNetworkReader: an ITK Class for Loading Images Across a Network]
* [http://www.insight-journal.org/browse/publication/181 Implementation of a 3D thinning algorithm]
* [http://www.insight-journal.org/browse/publication/315 Implementation of weighted Dijkstra’s shortest-path algorithm for n-D images]
* [http://www.insight-journal.org/browse/publication/111 Implementing the Automatic Generation of 3D Statistical Shape Models with ITK]
* [http://www.insight-journal.org/browse/publication/145 Improvements to the itk::KernelTransform and Subclasses](almost a bug fix)
* [http://www.insight-journal.org/browse/publication/83 Incorporating Metric Flows and Sparse Jacobian Transformations in ITK]
* [http://www.insight-journal.org/browse/publication/317 Information-Theoretic Directly Manipulated Free-Form Deformation Labeled Point-Set Registration](Postpone for next release to allow for modification).(related to paper [http://www.insight-journal.org/browse/publication/304 304])
* [http://www.insight-journal.org/browse/publication/176 Label object representation and manipulation with ITK] (65 classes). Provides most of the features of [http://insight-journal.org/browse/publication/301 A Label Geometry Image Filter for Multiple Object Measurement], but there are still a few ones not covered.
* [http://www.insight-journal.org/browse/publication/322 Level Set Segmentation: Active Contours without edge] (10~20 classes)(combine with paper 323) (Karthik)(Alex & Arnaud have newer code)
* [http://www.insight-journal.org/browse/publication/230 Live-Wire-ing the Insight Toolkit with Intelligent Scissors] (1~2 classes)
* [http://www.insight-journal.org/browse/publication/168 LookAt Transform Initializer and Oblique Section Image Filter] (1 class)
* [http://www.insight-journal.org/browse/publication/285 Meeting Andy Warhol Somewhere Over the Rainbow: RGB Colormapping and ITK] (1~2)(**)(Michel Audette)
* [http://www.insight-journal.org/browse/publication/321 Microscopy Image Analysis: Blob Segmentation using Geodesic Active Contours] (Check if it can be merged with the Lesion Sizing Toolkit).(Wes Turner)
* [http://www.insight-journal.org/browse/publication/152 Non-negative matrix factorization framework for dimensionality reduction and unsupervised clustering](3 classes) (Wes Turner)
* [http://www.insight-journal.org/browse/publication/173 Non-rigid Groupwise Registration using B-Spline Deformation Model]
* [http://www.insight-journal.org/browse/publication/138 Phase Correlation Method for ITK](~10 classes) (Wes Turner)
* [http://www.insight-journal.org/browse/publication/130 Polar Transforms for ITK](1 class)
* [http://www.insight-journal.org/browse/publication/178 Reader/Writer for Analyze Object Maps for ITK](4 classes)
* [http://www.insight-journal.org/browse/publication/231 Run-Length Matrices For Texture Analysis]
* [http://www.insight-journal.org/browse/publication/318 Stochastic Fractal Dimension Image](~2 classes) (Michel Audette/Luis Ibanez)(DONE)
* [http://www.insight-journal.org/browse/publication/114 itkEllipseBoundaryToImageFilter](1 class)(Michel Audette)
* [http://www.insight-journal.org/browse/publication/323 level set segmentation using coupled active surfaces](Relates to paper 322) (Karthik)(Alex and Arnaud have newer code)
* [http://insight-journal.org/browse/publication/142 Some extra image logical operations]





Revision as of 14:09, 8 October 2009

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.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