ITK/Release 4 Planning: Difference between revisions

From KitwarePublic
< ITK
Jump to navigationJump to search
Line 1: Line 1:
= ITK Version 4 =
= ITK Version 4 =
This work is supported by ARRA funding from the NLM. The [http://visual.nlm.nih.gov/itk/itk2010/agenda.html kick-off meeting] for this project took place from June 28-July 2 2010 in Bethesda. A beta version of the software will be available by the end of March 2011. Bug fixes will continue to be contributed to the ITK version 3 code.  
This work is supported by ARRA funding from the NLM. The [http://visual.nlm.nih.gov/itk/itk2010/agenda.html kick-off meeting] for this project took place from June 28-July 2 2010 in Bethesda. A beta version of the software will be available by the end of March 2011. Bug fixes will continue to be contributed to the ITK version 3 code.  
== Revision Control ==


* Adopt a modern revision control system
* Adopt a modern revision control system
** Move from cvs to [[ITK/Git|git for distributed source code management]]
** Move from cvs to [[ITK/Git|git for distributed source code management]]
== Code Review ==
* Adopt a code review system
* Adopt a code review system
** [[ITK/Gerrit|Gerrit]]
** [[ITK/Gerrit|Gerrit]]
** powered by [http://code.google.com/p/gerrit/ gerrit]
** powered by [http://code.google.com/p/gerrit/ gerrit]
== Modern C++ ==
* Take advantage of advances in C++
* Take advantage of advances in C++
** Target popular compilers that are compatible with the C++98 and/or C++03 standard (http://en.wikipedia.org/wiki/C%2B%2B03#Language_standard).   
** Target popular compilers that are compatible with the C++98 and/or C++03 standard (http://en.wikipedia.org/wiki/C%2B%2B03#Language_standard).   
** Specifically remove support for Visual Studio prior to 7.1 (e.g., 6 and 7.0),  Borland version 5.5, Sun Studio compilers prior to 5.9, IRIX compilers, MWORKS compilers, and gcc prior to 3.4
** Specifically remove support for Visual Studio prior to 7.1 (e.g., 6 and 7.0),  Borland version 5.5, Sun Studio compilers prior to 5.9, IRIX compilers, MWORKS compilers, and gcc prior to 3.4
== Wrapping ==
* Improved ITK Wrapping
* Improved ITK Wrapping
** [[ITK_Release_4/Wrapping|Wrapping]]
** [[ITK_Release_4/Wrapping|Wrapping]]
** Particularly for Python
** Particularly for Python
== Simplify ==
* Addition of [[ITK_Release_4/SimpleITK|Simple ITK Layer]]
* Addition of [[ITK_Release_4/SimpleITK|Simple ITK Layer]]
** A matlab-like interface to ITK
** A matlab-like interface to ITK
== Modularize ==
* Refactor for [[ITK_Release_4/Modularization|Modularity]]
* Refactor for [[ITK_Release_4/Modularization|Modularity]]
** ITKCore, ITKRegistrationModule, and Optional Modules
** ITKCore, ITKRegistrationModule, and Optional Modules
== Improve Software Process ==
* Enhanced project management tools and software processes
* Enhanced project management tools and software processes
** Better management for [[ITK_Release_4/Testing Data|Testing Data]]
** Better management for [[ITK_Release_4/Testing Data|Testing Data]]
* [[ITK_Release_4/UnitTesting|New unit testing framework]] based on [http://code.google.com/p/googletest/ Google Test]
* [[ITK_Release_4/UnitTesting|New unit testing framework]] based on [http://code.google.com/p/googletest/ Google Test]
** Particularly to support module development, testing, and maintenance
** Particularly to support module development, testing, and maintenance
== Revise ==
=== FEM ===
* [[Refactoring itk::FEM framework - V4]]
* [[Refactoring itk::FEM framework - V4]]
=== Level Sets ===
* [[Refactoring Level-Set framework - V4]]
* [[Refactoring Level-Set framework - V4]]
=== DICOM ===
* Improved DICOM support
* Improved DICOM support
** [[ITK_Release_4/DICOM|DICOM]]
** [[ITK_Release_4/DICOM|DICOM]]
Line 29: Line 60:
** Add filter to support Siemens MOSAIC images
** Add filter to support Siemens MOSAIC images
** Information Object Definition verification
** Information Object Definition verification
=== Image Registration Framework ===
* Enhanced image registration framework
== Accelerate ==
=== GPU ===
* Add streaming for GPU-based data/methods
* Add streaming for GPU-based data/methods
** With support for distributed computing in the future
** With support for distributed computing in the future
* Enhanced image registration framework


= Wish List =
= Wish List =

Revision as of 17:51, 22 August 2010

ITK Version 4

This work is supported by ARRA funding from the NLM. The kick-off meeting for this project took place from June 28-July 2 2010 in Bethesda. A beta version of the software will be available by the end of March 2011. Bug fixes will continue to be contributed to the ITK version 3 code.

Revision Control

Code Review

Modern C++

  • Take advantage of advances in C++
    • Target popular compilers that are compatible with the C++98 and/or C++03 standard (http://en.wikipedia.org/wiki/C%2B%2B03#Language_standard).
    • Specifically remove support for Visual Studio prior to 7.1 (e.g., 6 and 7.0), Borland version 5.5, Sun Studio compilers prior to 5.9, IRIX compilers, MWORKS compilers, and gcc prior to 3.4

Wrapping

  • Improved ITK Wrapping

Simplify

Modularize

  • Refactor for Modularity
    • ITKCore, ITKRegistrationModule, and Optional Modules

Improve Software Process

Revise

FEM

Level Sets

DICOM

  • Improved DICOM support
    • DICOM
    • Including communications with PACS
    • Support Streaming interface
    • Add filter to support Siemens MOSAIC images
    • Information Object Definition verification

Image Registration Framework

  • Enhanced image registration framework


Accelerate

GPU

  • Add streaming for GPU-based data/methods
    • With support for distributed computing in the future

Wish List

Wish List

Migration Plan

Migration Plan

A2D2 Projects

A2D2 Projects

New Fields

ITKv4 will provide improved support for


Discussion Points

Discussion Points