| genre | SpatialTransformation |
| status | stable |
| author | Matthias Koenig |
| package | MeVisLab/Standard |
| dll | MLTransformation |
| definition | MLTransformation.def |
| keywords | transformation, affine, 3d, rotation, translation, shearing, scaling |
This module warps an input volume according to a three-dimensional affine coordinate transformation, using trilinear interpolation.
Translation, rotation, shearing and scaling can be entered and reset. The field for the transformation matrix is read-only.
The module uses the well-known backward mapping technique (see e.g. the excellent monography by George Wolberg: Digital image warping). From the given parameters the module constructs a transformation matrix for the backward mapping. This transformation matrix B maps a point y in the output volume onto the corresponding point x in the input volume:
The idea of backwarp mapping graphically:
To achieve sub-voxel resolution, trilinear interpolation is applied in the input volume. The origin of the coordinate system is in the center of the output volume.
The order for constructing the matrix is shearing, rotation, scaling, translation (the translation is applied after the other transformations).
| Is World Transformation: Bool | Scaling Y: Double | Translation Z: Double |
| Matrix: Matrix | Scaling Z: Double | World Voxel Transformation: Matrix |
| Opt Parameters: String | Shearing X: Double | |
| Reset: Trigger | Shearing Y: Double | |
| Rotation X: Double | Shearing Z: Double | |
| Rotation Y: Double | Transformation Mode: Enum | |
| Rotation Z: Double | Translation X: Double | |
| Scaling X: Double | Translation Y: Double |
If pressed, all transformation parameters are set back to their default value.
Set optionally all values in one string.
The order is translations, rotations, shearings and scalings. This is used e.g. for coupling to an Optimizer module.
Equivalent to Translation X.
Equivalent to Translation X.
Equivalent to Rotation X.
Equivalent to Rotation X.
Scaling behaves reciprocally to the value (e.g. 0.5 zooms in the image by 2).
This is the backward mapping matrix B as a 4x4 matrix.
Note
The matrix is according to ML convention, not OpenInventor convention. One may use the "DecomposeMatrix" macro to format this field in a 4x4 matrix.
The matrix B is constructed by the module from the parameters according to the following formula:
with
Translation:
Scaling:
Shearing:
Rotation in X:
and Rotation in Z and Y accordingly. The entries for the displacement vector in B are in voxels.
Defines the transformation mode.
Values:
| Title | Name |
|---|---|
| Translation | Translation |
| Rigid | Rigid |
| Similarity | Similarity |
| Rigid + Scale | Rigid + Scale |
| Affine | Affine |