Difference between revisions of "ITK Registration Optimization/Testing And Backward Forward Compatibility"

From NAMIC Wiki
Jump to: navigation, search
 
Line 1: Line 1:
Backward Forward Compatibility
+
'''Backward Forward Compatibility'''
  
 
This page describes the testing framework used for verifying the backward/forward compatibility of the optimized classes developed in this project with the standard classes currently in ITK.
 
This page describes the testing framework used for verifying the backward/forward compatibility of the optimized classes developed in this project with the standard classes currently in ITK.
Line 7: Line 7:
 
;Backward Compatibility: A modified class is backward compatible with a given version "V", when applications that used the version "V" of the class, can adopt the new modified version of the class without having to change their source code to compile it, and by arriving to identical results when using the class at run-time.
 
;Backward Compatibility: A modified class is backward compatible with a given version "V", when applications that used the version "V" of the class, can adopt the new modified version of the class without having to change their source code to compile it, and by arriving to identical results when using the class at run-time.
  
;Forward Compatibility: A modified class is forward compatible,
+
;Forward Compatibility: A modified class is forward compatible with a given version "V", when interactions based on the old API of the class are safely translated to the new API of the class.
 +
 
 +
== Testing ==
 +
 
 +
The '''ONLY''' way to tell for sure if a class is backward/forward compatible is to have a test for it.
 +
 
 +
In order to verify the backward/forward compatibility of the optimized classes a testing framework was put in place. This framework generates tests based on combinations of the following components
 +
 
 +
* '''Transforms'''
 +
** Translation
 +
** Rigid (2D/3D)
 +
** Affine
 +
** BSplineDeformable
 +
* '''Metrics'''
 +
** MeanSquares
 +
** MutualInformation
 +
** MattesMutualInformation
 +
* '''Interpolators'''
 +
** NearestNeighbor
 +
** Linear
 +
** BSpline

Revision as of 23:43, 30 July 2007

Home < ITK Registration Optimization < Testing And Backward Forward Compatibility

Backward Forward Compatibility

This page describes the testing framework used for verifying the backward/forward compatibility of the optimized classes developed in this project with the standard classes currently in ITK.

Compatibility

Backward Compatibility
A modified class is backward compatible with a given version "V", when applications that used the version "V" of the class, can adopt the new modified version of the class without having to change their source code to compile it, and by arriving to identical results when using the class at run-time.
Forward Compatibility
A modified class is forward compatible with a given version "V", when interactions based on the old API of the class are safely translated to the new API of the class.

Testing

The ONLY way to tell for sure if a class is backward/forward compatible is to have a test for it.

In order to verify the backward/forward compatibility of the optimized classes a testing framework was put in place. This framework generates tests based on combinations of the following components

  • Transforms
    • Translation
    • Rigid (2D/3D)
    • Affine
    • BSplineDeformable
  • Metrics
    • MeanSquares
    • MutualInformation
    • MattesMutualInformation
  • Interpolators
    • NearestNeighbor
    • Linear
    • BSpline