[Insight-users] Need Help !!! Approximation of a 3D curve with Splines

Luis Ibanez luis.ibanez at kitware.com
Fri Aug 17 13:46:54 EDT 2007

```Hi Deepak,

Well...
there is an important piece of information

WHAT do you want to interpolate ?

a) The positions of the points ?
If so, are the points expected to
be located along a line ?
along a surface ?

b) Values associated with the points ?
eg. some function f(x,y,z) that you
have sampled in some locations of
3d space ?

Please share with us the entire story  :-)

Thanks

Luis

-------------------
Deepak Roy wrote:
> Hi Luis,
>
> Thanx a lot for the reply ..... i really appreciate it.
>
> **************************************************************************************
>
> You wrote:
>
> If you set a linear sequence of 3D points as the Source landmarks,
> (eg. a sequence of points regularly spaced along the X axis).
> and the 3D points that you arre trying to approximate, as the
> TargetLandmarks, then you will be able to generate the approximating
> spline by calling Transform() with points that are in the input
> space of the X axis.
>
> That is, by using a sequence of input point with components:
>
>                    p[ S, 0, 0 ]
>
> you will generate transformed points along your curve, and they
> will be parameterized by "S".
>
> **************************************************************************************
>
>
> I dont quite understand what you mean by this. All i have is a set of
> raw 3D points and i dont want to assume anything about the order of the
> points ( if that is what you meant by a linear sequence of 3D points ).
> I dont see a way to parameterize them ( for example i am afraid the data
> cannot be parameterized by arc length as the points are not properly
> ordered ).
>
> It would help me understand your idea better, if you could point me to
> some examples --- articles/code/images.
>
>
>   Regards,
>
>
>      Luis
>
>
> -----------------
> Deepak Roy wrote:
>  > Hello,
>  >
>  > I have a set of noisy/scattered 3D data points ( XYZ ) which ideally
>  > should belong to a curve in 3D space.
>  >
>  > I want to use a smoothing/approximation spline to approximate this 3D
>  > curve.
>  >
>  > All the references/books on splines that i found deal with spline
>  > approximation in 2D and i am not able to find any reference which
>  > computes an approximating spline curve in 3D space.
>  >
>  > I have done a few experiments with the 2D smoothing spline in matlab. I
>  > extended this to 3D by fitting two splines --- for ZX data and ZY data.
>  > Then i combined these two splines together to achieve a 3D approximating
>  > spline curve. But the problem with this is that it is done through
>  > projections, and consequently if there is more than one value at the
>  > same data site then the smoothing spline gives a weighted average of the
>  > values ---- and this is not what is desired.
>  >
>  > Is there a way to approximate scattered/noisy 3D data points using a
>  > spline in ITK ??? Or can anyone throw light on how this is done ???
>  >
>  > I would really appreciate the help.
>  >
>  >
>  > Regards,
>  >
>  > Deepak
>  >
>  >
>  > ------------------------------------------------------------------------
>  >
>  > _______________________________________________
>  > Insight-users mailing list
>  > Insight-users at itk.org <mailto:Insight-users at itk.org>
>  > http://www.itk.org/mailman/listinfo/insight-users
>
>
```