[Insight-users] Resample an image to a higher resolution in the same space with a zero derivative edge condition

Seth Gilchrist seth at mech.ubc.ca
Thu Sep 23 17:42:56 EDT 2010


Hello,
I know what you are thinking...why are you up-sampling an image?  Here is
the situation and problem and I hope that you can help.

I have an image of vectors (3D image, 3D vectors) that is of a course
resolution (35,20,20).  These vectors represent the displacement of a
grouping of pixels in a fixed image. Each voxel in the vector image
represents the average displacement of 21x21x21 voxels in the fixed image.
What I want to do is linearly interpolate the data from the course vector
image into the grid (they occupy the same space) of the fixed image.  The
new vector image will then be used to morph the fixed image into the moving
image space, giving a deformable-like transform, and then the fixed and
moving image can be operated on in the same space.

The problem is that when interpolating the values at the edge of the vector
image the interpolator uses a single value for the out-of-bounds pixels.
This means that the vectors at the edge of my new vector image converge to
the displacement represented by the out-of-bounds value (a constant).  What
I would like, is to have the edge given a zero derivative (Neumann)
condition (or even better, be able to try a few different boundary
conditions).  I have looked through the interpolate and resample filters and
can't seem to find this already implemented.  Has this been done, or should
I just get on writing it myself?

Thanks for your time and help.

Regards,
Seth
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.itk.org/pipermail/insight-users/attachments/20100923/1104fcff/attachment.htm>


More information about the Insight-users mailing list