[Insight-developers] Understanding an ITK transform file

David Doria daviddoria at gmail.com
Wed May 15 12:35:48 EDT 2013


On Wed, May 15, 2013 at 11:23 AM, Daniel Haehn <haehn at bwh.harvard.edu> wrote:
> Hi devs,
>
> I have the following ITK transform file
>
> #Insight Transform File V1.0
> #Transform 0
> Transform: MatrixOffsetTransformBase_double_3_3
> Parameters: 0.991654 0.00303429 0.0015616 -0.000274293 0.970948 0.261678
> -0.00143037 -0.263587 0.953079 -0.546243 21.4937 -28.456
> FixedParameters: -1.11311 -3.55441 16.6988
>
> How does the matrix look? I googled and only found some theoretical
> explanations but I would really benefit if someone could just show me the
> matrix resulting from this transform file.
>
> Thank you so much!
> Daniel

Daniel,

I've never played with the transform factory, but I believe what you
need to do is this:

http://www.itk.org/Wiki/ITK/Examples/IO/RegisterTransform

For your file, it outputs:

MatrixOffsetTransformBase (0x29cb170)
RTTI typeinfo: itk::MatrixOffsetTransformBase<double, 3u, 3u>
Reference Count: 2
Modified Time: 427
Debug: Off
Observers:
none
Matrix:
0.991654 0.00303429 0.0015616
-0.000274293 0.970948 0.261678
-0.00143037 -0.263587 0.953079

Offset: [-0.570825, 17.0204, -28.611]
Center: [-1.11311, -3.55441, 16.6988]
Translation: [-0.546243, 21.4937, -28.456]
Inverse:
1.00841 -0.00335021 -0.00073243
-0.000114468 0.95848 -0.263161
0.00148176 0.265076 0.976449

Singular: 0

Does that seem right to you?

Can anyone confirm that I did this correctly? I thought that I might
not be able to register a "*TransformBase" (and instead the file
should be changed to a (the only) subclass of
MatrixOffsetTransformBase, AffineTransform), but it seems to work.

David


More information about the Insight-developers mailing list