[Math] How to fit a spline curve through points in the plane with constraints on the curvature

curvatureinterpolationspline

If I have a number of points in the plane (say I have some points $(x_n, y_n),\ n = 0,1,\ldots, N$) and I would like to fit a parametrised curve through them: $(x(t), y(t))$ where $t$ is some parameter I can vary in an interval to "travel" along the curve.

I suppose I could take standard procedures to fit for example a cubic spline function through each of the $x$ and $y$ coordinates, respectively. But is there a way to compute these with constraints on the curvature of the spline curve? That is, I do not want the curve to bend too sharply anywhere.

Best Answer

There was a paper written by Deddi et al (2000) on interpolation with curvature constraints using quadratic Bezier curves. When doing curvature constraints, you also need to include some form of curve length minimization to avoid smooth but completely unusable cases.

There is also the curvature minimizing Clough-Tocher scheme in 2D, though it is non parametric.

It is a tricky problem, and although the goal sound appealing, the fact that it is not widely used could suggest that it is not very reliable/practical in real applications. If you can accept that in order to smooth your curve, the interpolation may not pass through all the points (which is acceptable for noisy data), the splprep routine adapted from FITPACK might still be the simplest choice.

Related Question