| ![]() |
Multiresolution Surface Reconstruction For
Hierarchical B-splines
David Forsey and David Wong
The Department of Computer Science
The University of British Columbia
Abstract
This paper presents a method for automatically generating a hierarchical B-spline surface from an initial set of control points. Given an existing mesh of control points , a mesh with half the resolution , is constructed by simultaneously approximating the finer mesh while minimizing a smoothness constraint using weighted least squares. Curvature measures of are used to identify features that need only be represented in the finer mesh. The resulting hierarchical surface accurately and economically reproduces the original mesh, is free from excessive undulations in the intermediate levels and produces a multiresolution representation suitable for animation and interactive modelling.
1 Introduction
Many 3D computer graphics modelling and animation systems use a B-spline representation for curves and surfaces because of their geometric properties such as smoothness and controllable Cn parametric continuity between patches. However, the tensor product nature of the underlying parameterization makes it expensive to construct complicated, continuous surfaces where different regions have differing amounts of local detail.
For example, the surface in Figure 1, as a bicubic B-spline, requires 16524 control points to define its shape simply because the non-local property of knot insertion forces the creation of patches over the entire surface. This also increases the overhead when using splines for surface approximation, rendering, or polygonizing the surface for export to other applications such as video games. It is also the major factor limiting the complexity of spline-based facial models.
Furthermore, as the shapes become more complex, it becomes difficult to make a broad-scale change to the surface shape without distorting or deforming the small-scale details
M k 1+[ ]
M k[ ]
M k 1+[ ]
of the surface. This greatly increases the time and cost of manipulating free-form shapes for tasks such as facial animation.
A hierarchical B-spline [1] is a multi-resolution surface representation that provides:
1. Local refinement of tensor-product spline surfaces
which localizes detail where it is required.
2. Multi-resolution surface editing that retains surface
detail during broad-scale surface manipulation.
3. Economical surface representation. The surface in
Figure 1 requires only 178 data points as a hierarchical
spline.
4. Multi-resolution animation capabilities that make it
easier to animate complicated surfaces [2].
Hierarchical spline surfaces are constructed using a interactive surface modelling system. However numerous applications in medical imaging and computer animation begin with real-world data and it would be extremely useful to construct hierarchical surfaces from such information.
This problem is related to work in multiresolution analysis, particularly curve evolution [3] and wavelets. Wavelets have also been used both for curve and surface representation in an interactive setting [4], and have also been extended to B- splines [5] and subdivisions surfaces [6]. Wavelets have the
Figure 1 Spiny B-spline surface, 16524 control points