Data approximation#
In order to build \(r\), one can either use a pre-defined sequence of control points \(\{ c[k] \}_{k=0,...,M-1}\) or of knots \(\{ n[k] \}_{k=0,...,M-1}\). Alternatively, one can also attempt to retreive the control points that best approximate a set of data points, as in the classical spline approximation setting.
The problem is framed as follows. We consider a set \(\{ p[i] \}_{i=0,...,N-1}\) of \(N\) points to be approximated with the spline model (1) of \(M\) control points. Hereafter, we will assume a periodic spline model, but a similar derivation can easily be done for the non-periodic case.
We obtain an approximation by ensuring that the samples of the spline \(r\) match the data points \(p\), which translates to
Since \(\phi\) is of finite support, we can re-write (1) as
with the basis matrix \(\mathbf{\Phi}\) (size \(N \times M\)), the control point matrix \(\mathbf{C}\) (size \(M \times 1\)), and the data points matrix \(\mathbf{P}\) (size \(N \times 1\)) given by
The control points \(\mathbf{C}\) can then be retreived by finding the least-square best solution that minimizes