Notes |
|
(0009365)
|
Luis Ibanez
|
2007-10-03 08:30
|
|
We have discussed this problem at various tcons and we have converged to the following solution
1) Add to itk::Image a method for converting IndexGradients to PhysicalSpaceGradients. These method will apply the rotation indicated by the direction cosines
2) Add boolean flags to the classes that compute Gradients
(e.g. CentralDifferences, GradientRecursiveGaussian, GradientFilter)
to enable the use (or not) of the image direction in the gradient
computation. The flags will be off by default (for backwards-compatibility).
When enabled the flags will invoke the method in the image class (1) for
converting index gradients to physical space gradients. In this way we will
prevent users of normal images to have to pay for computations that they dont
need.
3) In the ImageMetrics, turn on the use of the boolean flags in the helper
classes (2) used for computing gradients. In this way, registration will
be computed consistently.
4) Add a CMake variable to enable the use of all the above, and in that
manner preserve backward-compatibility by offering by default the
wrong behaviour.
|
|
|
(0009366)
|
Luis Ibanez
|
2007-10-03 08:55
|
|
|
|
(0010366)
|
Luis Ibanez
|
2008-02-01 13:36
|
|
The reason for not moving the TransformIndexToPhysicalPoint family of methods to the ImageBase class is that it will require them to be virtual and templated methods simultaneously. |
|
|
(0022966)
|
Luis Ibanez
|
2010-11-07 00:47
|
|
This has now been fixed.
The Metrics now instruct the derivative calculator helper classes to take the orientation of the image into account. |
|