• No results found

Multiresolution curve

The multiresolution techniques and the use of hierarchy have a long history in CG. In particular, the multiresolution plays a fundamental role for CAD curves representation as B-spline.

This technique is a certain way of handling cubic B-splines, which allows to do many things, that are not possible or very complicated with spline techniques. Some of the key-features of multiresolution curves are:

• smoothing through changing the level of resolution

• editing the overall sweep of the curve without changing its character

• editing the character of the curve without changing its overall sweep The key idea of multiresolution curves is to take cubic B-spline control points and apply filter bank decomposition from multiresolution analysis. This means defining a filter-bank: a set of matrices presenting averaging scheme for each level of resolution. By applying decomposition matrices to the initial control polygon we get the control polygon on the lowest level and a set of detail coefficients for every successful level. By applying reconstruction matrices on the latter you can get the control points of the curve at any level.

In order to understand better the working mechanism underlying this tech-nique, in the following section we provide an overview of the multiresolution analysis applied to curves.

A function or a signal can be viewed as composed by a smooth background and some fluctuations or details on top of it. The distinction between the smooth part and the details is determined by the resolution, that is, by the level below which the details of a signal cannot be discerned. At a given resolution, a function is approximated by ignoring all fluctuations below the resolution scale. We can imagine to progressively increase the resolution: at each stage of the increase in the resolution, finer details are added to the coarser description, providing successively better approximations to the origi-nal function. In our case, given a B-spline curve f (u) with m control points, a multiresolution framework constructs the approximating curve with the least squared error using m’ control points with m < m. We consider that these

are endpoint-interpolating uniform B-spline curves. We summarize the multi-resolution framework considering the general case.

Let Cnbe a discrete signal expressed as a column vector of samples cn1, cn2, .., cnm Cn= [cn1, cn2, .., cnm]T,

that in our application are the control points of the curve. We want to con-struct a low-resolution version Cn−1of Cnwith a number of samples m < m.

The process for creating the m samples of Cn−1 uses some form of filtering and down-sampling that can be expressed by the following matrix equation:

Cn−1= AnCn, (1.3.1)

where An is an m× m matrix.

The detail Dn−1lost in this filtering process can be captured by the following equation:

Dn−1= BnCn, (1.3.2)

where Bn is a (m − m) × m matrix which is related to the matrix An. This process, that splits Cn into a low-resolution version Cn−1 and detail Dn−1, is called decomposition.

If An and Bn are correctly chosen, we can reconstruct the initial signal Cn using another pair of matrices Pn and Qn called synthesis filters, as follows:

Cn= PnCn−1+ QnDn−1. (1.3.3) The process is called reconstruction.

If we recursively apply the same splitting procedure to the signal Cn−1, we obtain a hierarchy of lower-resolution signals C0, C1, . . . , Cn−1 and details D0, D1, . . . , Dn−1. This recursive process is known as a filter bank (Figure 1.4). So, Cn can be recovered from the sequence C0, D0, D1, . . . , Dn−1. This transformation is known as a wavelet transform.

All that is needed for a wavelet transform is an appropriate set of analysis and synthesis filters Aj, Bj, Pj and Qj. To calculate these filters, we associate with each signal Cn (for the B-spline curves these are the vectors of control points), a functions fn(u), with u ∈ [0, 1] given by:

fn(u) = φnCn,

Figure 1.4: The filter bank

where φnis a row matrix of basis functions called scaling function that are the endpoint-interpolating B-splines basis functions for the curves. These func-tions posses an important property: they have to be refinable; that is, for all j ∈ [0, n] :

φj−1= φjPj. (1.3.4)

In other words, each scaling function at level j − 1 must be expressible as a linear combination of “finer” scaling functions at level j. Next, let Vj be the linear space spanned by the set of scaling functions j. The refinement condition on j implies that these linear spaces are nested. If we choose an proper inner product for the basis functions in Vj we are able to define Wj as the orthogonal complement of Vj in Vj+1. The basis functions j of the space Wj, called wavelets, are such that φj and ψj together form a basis for Vj+1. We can now construct the synthesis filter Qjas the matrix that satisfies:

ψj−1= φjQj. (1.3.5)

The equations 1.3.4 and 1.3.5 can be expressed as a single equation by con-catenating the matrices together:

j−1| Ψj−1] = Φj[Pj | Qj]

The analysis filters Aj and Bj instead, are formed by the matrices satisfying the inverse relation:

j−1| Ψj−1] Aj Bj



= Φj

By this two matrix equations we can write the following relation:

 Aj Bj



= [Pj | Qj]−1

where



Aj Bj



and [Pj | Qj]−1 are both square matrices.

We have seen an overview on wavelet and multiresolution analysis that we will use in the second part of this thesis when we analyze the smoothing and segmentation phase in the sketch curve phases.

To construct multiresolution curve procedure we need that the work space have particular property as for example that the spaces of the basis functions are nested.

As we have seen in the section 1.1, the basis functions of the B-spline curve are defined recursively and hence they have this property. Furthermore the fact that the B-spline basis functions are locally supported, influence the sparsity of the refinement matrix Pj. These and other property make B-spline curve representation suitable for wavelet and multiresolution analysis.

Now, we can see in more detail how, all these mathematical entity, are used in the two research fields presented in this thesis.

Related documents