## Bsplines

There is a whole family of synthesis functions made of B-splines. By convention, their symbolic representation is ft", where " e N is not a power, but an index called the degree of the spline. These functions are piecewise polynomials of degree n; they are globally symmetric and (n — 1)-times continuously differentiable. Thus, their regularity is Cn—1. They are given by fi |x|<2

Both the support and the approximation order of these functions is one more than their degree. They enjoy many other interesting properties that fall outside the scope of this chapter, except perhaps the fact that a B-spline derivative can be computed recursively by dx ^x^-1(x + 2) — ^{x — 2) , n>O.

Then, computing the exact gradient of a signal given by a discrete sequence of interpolation coefficients {Ck} can be done as dxf (x) = E Ck lx nx—k) = E(ck — Ck—jr1^—k+1), k e Z k e Z ^ '

where the n-times continuous differentiability of B-splines ensures that the resulting function is smooth when n > 3, or at least continuous when n 2.

• Degree n = 0: The B-spline of smallest degree n = 0 is almost identical to the nearest-neighbor synthesis function. They differ from one another only at the transition values, where we ask that fi0 be symmetrical with respect to the origin is not), and where we ask that fi0 satisfies the partition of unity. Thus, contrary to the nearest-neighbor case, it happens in some exceptional cases (evaluation at half-integers) that interpolation with fi0 requires the computation of the average between two samples. Otherwise, this function is indistinguishable from nearest-neighbor.

• Degree n = 1: The B-spline function of next degree fi1 is exactly identical to the linear case.

• Degrees n> 1: No spline fin of degree n> 1 benefits from the property of being interpolating; thus, great care must be exerted never to use one in the context of Eq. (1). Equation (4) must be used instead. When this rule is not observed, severely erroneous results are obtained. To help settle this issue, we give in the Appendix an efficient routine that transforms the sequence of data samples {ft} into coefficients {q} by the way of in-place recursive filtering.

A cubic B-spline is often used in practice. Its expression is given by if -1 \x\2(2 -|x|) 0 <|x|<1 fi3(x) = 1 (2 - |x|)3 1 < |x| <2

This synthesis function is not interpolant. As explained at Eq. (8), it is nonetheless possible to exhibit an infinite-support synthesis function = fi^ard that allows one to build exactly the same interpolated function f. To give a concrete illustration

FIGURE 9 B-spline of third degree. (Left) Function shape. (Right) Equivalent interpolant.

FIGURE 10 B-spline synthesis function. Approximation kernel for several degrees.

of this fact, we show in Fig. 9 both the noninterpolating cubic B-spline ¿63 and its interpolating equivalent synthesis function. The latter is named a cubic cardinal spline S^. Graphically, the B-spline looks similar to a Gaussian; this is not by chance, since a B-spline can be shown to converge to a Gaussian of infinite variance when its degree increases. Already for a degree as small as n = 3, the match is amazingly close since the maximal relative error between a cubic B-spline and a Gaussian with identical variance is only about 3.5%. On the right side of Fig. 9, the cardinal spline displays decaying oscillations, which is reminiscent of a sinc function. This is not by chance, since a cardinal spline can be shown to converge to a sinc function when its degree increases [40,41]. We give in Fig. 10 the approximation kernel for B-splines of several degrees. Clearly, the higher the degree, the closer to a sinc is the equivalent cardinal spline, and the better is the performance.

The B-spline functions enjoy the maximal order of approximation for a given integer support; conversely, they enjoy the minimal support for a given order of approximation. Thus, they belong to the family of functions that enjoy maximal order and minimal support, or Moms. It can be shown that any of these functions can be expressed as the weighted sum of a B-spline and its derivatives [27]:

n im

B-splines are those Moms functions that are maximally differentiable. We now present two other members of this family. The o-Moms functions are such that their least-squares approximation constant C(p is minimal, while Schaum's functions are interpolating but have a suboptimal approximation constant that is worse than those of both o-Moms and B-splines.