Inverse the displacement field

In my project, I need to invert the displacement field, which is from fixed space to moving space. The inverted displacement field should be from moving space to fixed space. I tried the methods in ITK, such as itkInvertDisplacementFieldImageFilter, itkInverseDisplacementFieldImageFilter, itkIterativeInverseDisplacementFieldImageFilter, itkFixedPointInverseDisplacementFieldImageFilter. But the result is still not good. I want to know why can’t I get an accurate result. In theory, if we know the displacement from fixed space to moving space, the inversed displacement in moving space can be directly known. For some null values in the moving space, we can interpolate them. However, I don’t know why they are not accurate.

If you provide your source code and images/fields used, someone might be able to help.

Displacement fields are not always invertible. A simple example is when different points are transformed to the same position (the transform folds the space onto itself). Computing the inverse may be also impossible near areas where the displacement field has discontinuity.

1 Like

Thanks, sir. The reason is in the displacement field, not the inversed displacement field method.