ITK/Release 4/Why Switch to ITKv4

From KitwarePublic
< ITK‎ | Release 4
Jump to navigationJump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Modularization

  • Easier to find what you are looking for.
  • Easier to understand how to use the toolkit.
  • Build only the parts of the toolkit that you need.
  • Extend bridging of the toolkit to other toolkit and libraries.
  • Makes it easy to associate and build auxiliary community projects with an External module.
  • Find the quality control per module by performing code coverage tests per module.

New Finite Element Registration Framework

  • Better conformity with the rest of the toolkit
  • Improved IO of objects and results

New Registration Framework

  • New unified and fully multi-threaded optimization and registration framework
  • Unified framework supports sparse and dense metric computation
  • Unified framework supports low and high dimensional mapping
  • Improved multi-threaded metrics for rigid, affine and deformable registration
  • New metrics support sparse or dense sampling
  • Metrics for landmark or label guided registration
  • Automatic parameter scale estimation for registration
  • Automatic step-size selection for gradient-based registration optimizers
  • Composite transforms and composite transform optimization
  • Displacement field and diffeomorphic velocity field-based transforms
  • Better support for multi-threading in optimizers and metrics
  • Additional evolutionary optimizers
  • Improved B-Spline registration approach available and bug fixes to old framework
  • Accurately transform and reorient covariant tensors and vectors

New LevelSets Segmentation Framework

  • Powerful, modular architecture
    • Now you, too, can fully understand how level sets are implemented!
    • Easy to extend and customize
  • Simultaneously evolve multiple level sets on an image
  • Faster
    • Limit evolution to a domain
    • Three different sparse representations available, Whitaker, Shi, Malcolm
    • Design avoids duplication of calculations in many ways
  • Easy conversion from BinaryMask or LabelMap to a level set.

SimpleITK

Software Process

  • Fast, distributed, powerful version control: Git
  • Better support for making contributions
    • Low barrier to entry
    • Well defined contribution process
    • Use powerful tools, Git branches, Gerrit reviews
    • Get code into the toolkit quicker
    • Get higher quality code in with more reviews and platform testing
  • Forget SETI@home, give the aliens a reason to visit by improving ITK with CDash@home!
  • Know when/if your bug will be addressed with the scrum process in the JIRA issue tracker
  • Flexible management of testing data

WrapITK

  • Tight incorporation of the outstanding, formerly third party WrapITK project.
  • Numpy integration.

"You can do it!"

  • Migration Guide
  • ITKv4 Removed or renamed classes|
  • The insight-users mailing list is there for you.
  • Transition is easier with ITKV3_COMPATIBILITY configuration option.
  • Many deprecated classes are still available.
  • The list of other improvements and new features are legion, don't miss out!