I'm trying to understand how transformations computed from images can be applied to a point located in the image space but not on the image grid itself. With an affine transform it's simple matrix multiplication with the point but what happens when there is also an inverse warp vector field?
I guess I don't understand how the transformation itself is applied to floating points in the CSV file that are not in a discrete grid like an image/volume.
Any help is appreciated!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Displacement fields are stored as ITK images where each voxel stores the displacement (dx, dy, dz) at that physically defined location (per the image header). Linear interpolation is used to define the displacement field at any non-voxel location within the image domain.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi,
I'm trying to understand how transformations computed from images can be applied to a point located in the image space but not on the image grid itself. With an affine transform it's simple matrix multiplication with the point but what happens when there is also an inverse warp vector field?
I guess I don't understand how the transformation itself is applied to floating points in the CSV file that are not in a discrete grid like an image/volume.
Any help is appreciated!
Displacement fields are stored as ITK images where each voxel stores the displacement (dx, dy, dz) at that physically defined location (per the image header). Linear interpolation is used to define the displacement field at any non-voxel location within the image domain.
Makes sense now, Thanks!