Linear Spline Approximation

In several applications, one is concerned with the representation of complex geometries or complex physical phenomena at multiple levels of resolution. In the context of computer graphics and scientific visualization, so-called multi-resolution methods are crucial for the analysis of very large numerical data sets. Examples include high-resolution terrain data (digital elevation maps), laser scans of mechanical models, and high-resolution, three-dimensional imaging data (e.g., X-ray computed tomography or magnetic resonance imaging data).

We approached the construction of multi-resolution representations of very large scattered data sets using the principle of simulated annealing. Our goal is the computation of several optimal linear spline approximations to a given scattered data set. This approach is a generalization of data-dependent triangulation algorithms.

When representing high-resolution data sets with low-resolution linear spline approximations, one has to be careful where to place the spline's control points and how to connect them in order to achieve a faithful representation of the data set. To find the optimal linear spline approximation with a given number of control points, we employ an iterative optimization algorithm that attempts to improve the quality, measured by an appropriate error norm, of an initial approximation by moving the spline's control points. This iteration is governed by the simulated annealing algorithm, an optimization technique well fit for high-dimensional problems where the desired global minimum is hidden among many, poorer, local minima.
Figure 1: Photograph of Golden Gate bridge, approximated by a vector-valued bivariate linear spline containing 3,200 control points.

Project Goals

The main project goals were to design data structures and algorithms to represent and manipulate linear spline approximations to scattered data, and to implement a suite of approximation programs for uni- and bivariate, scalar- or vector-valued scattered data. In detail, these goals included:

Project Status

In October 1998, the project reached the level of functionality listed above; and a thesis describing it and the approximation results achieved by it was submitted to the Universität Karlsruhe (TH), Karlsruhe, Germany, to fulfill the requirements for the degree "Diplom-Informatiker" (Master of Science degree in computer science). The Diploma Thesis (in German) is available for download (PDF format, 7,009K). The project has not been maintained since, and all related source code has just recently been released under the GNU General Public License (see download page).

Related Publications

Pages In This Section

Approximation Examples
Examples of multi-resolution approximations of different data sets, including a laser scan and several RGB images.
Download
Download page for all source code necessary to compile and use the Linear Spline Approximation Package.