[vtkusers] InverseTransformPoint: no convergence in Thin-Plate Spline

David Gobbi david.gobbi at gmail.com
Tue May 22 15:00:36 EDT 2018


Hi Hengda,

The thin-plate spline is not inverse-consistent, so switching the source
points with the target points will not give the inverse transform.  There
are
probably modified algorithms based on the thin-plate spline that actually
are inverse consistent, but vtkThinPlateSplineTransform only provides
the basic algorithm as described by Bookstein in 1989.

Inversion of the vtkThinPlateSplineTransform is done with an iterative
solver based on Newton's method, which uses the derivative of the
transform. Like all derivative-based solvers, it only works well if the
function is smooth.  If the thin-plate spline is given densely-packed
landmarks, then perturbations in the landmark measurements can result
in a non-smooth transformation that is not invertible. The usual solution
to this is to use an approximating spline, but unfortunately this is not
provided by vtkThinPlateSplineTransform.

 - David


On Tue, May 22, 2018 at 11:09 AM, Hengda He <hh2699 at columbia.edu> wrote:

> Hi David
>
> Thank you very much for the reply!
> Now I am wondering what's the difference between these two ways of using
> vtkThinPlateSplineTransform:
> (1) Getting vtkThinPlateSplineTransform and then inverse
> transform->SetSourceLandmarks( sourcepoints );
> transform->SetTargetLandmarks( targetpoints );
> transform->Inverse();
> And apply the transform to source image using vtkImageReslice
>
> (2) Getting inverse vtkThinPlateSplineTransform directly
> transform->SetSourceLandmarks( targetpoints );
> transform->SetTargetLandmarks( sourcepoints );
> And apply the transform to source image using vtkImageReslice
>
> When I tried the first one, "InverseTransformPoint: no convergence" happens
> and its very likely because that we have too many landmarks. And when I
> tried the second one, there are many voxels clearly outside the boundary in
> the deformed volume which is wrong. I am using vtkThinPlateSplineTransform
> in 3D on binary images. Any help would be appreciated!
>
> Best,
> Hengda
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://vtk.org/pipermail/vtkusers/attachments/20180522/cbec0ac8/attachment.html>


More information about the vtkusers mailing list