# Hierarchical RBF

In computer graphics, hierarchical RBF is an interpolation method based on radial basis functions (RBFs). Hierarchical RBF interpolation has applications in treatment of results from a 3D scanner, terrain reconstruction, and the construction of shape models in 3D computer graphics (such as the Stanford bunny, a popular 3D model).
This problem is informally named as "large scattered data point set interpolation."

## Method

The steps of the interpolation method (in three dimensions) are as follows:
* Let the scattered points be presented as set $\mathbf {P} =\{\mathbf {c} _{i}=(\mathbf {x} _{i},\mathbf {y} _{i},\mathbf {z} _{i})\vert _{i=1}^{N}\subset \mathbb {R} ^{3}\}$
* Let there exist a set of values of some function in scattered points $\mathbf {H} =\{\mathbf {h} _{i}\vert _{i=1}^{N}\subset \mathbb {R} \}$
* Find a function $\mathbf {f} (\mathbf {x} )$ that will meet the condition $\mathbf {f} (\mathbf {x} )=1$ for points lying on the shape and $\mathbf {f} (\mathbf {x} )\neq 1$ for points not lying on the shape
As J. C. Carr et al. showed, this function takes the form $\mathbf {f} (\mathbf {x} )=\sum _{i=1}^{N}\lambda _{i}\varphi (\mathbf {x} ,\mathbf {c} _{i})$ where $\varphi$ is a radial basis function and $\lambda$ are the coefficients that are the solution of the following linear system of equations:
${\begin{bmatrix}\varphi (c_{1},c_{1})&\varphi (c_{1},c_{2})&...&\varphi (c_{1},c_{N})\\\varphi (c_{2},c_{1})&\varphi (c_{2},c_{2})&...&\varphi (c_{2},c_{N})\\...&...&...&...\\\varphi (c_{N},c_{1})&\varphi (c_{N},c_{2})&...&\varphi (c_{N},c_{N})\end{bmatrix}}*{\begin{bmatrix}\lambda _{1}\\\lambda _{2}\\...\\\lambda _{N}\end{bmatrix}}={\begin{bmatrix}h_{1}\\h_{2}\\...\\h_{N}\end{bmatrix}}$
For determination of surface, it is necessary to estimate the value of function $\mathbf {f} (\mathbf {x} )$ in specific points x. A lack of such method is a considerable complication on the order of $\mathbf {O} (\mathbf {n} ^{2})$ to calculate RBF, solve system, and determine surface.

## Other methods

* Reduce interpolation centers ($\mathbf {O} (\mathbf {n} ^{2})$ to calculate RBF and solve system, $\mathbf {O} (\mathbf {m} \mathbf {n} )$ to determine surface)
* Compactly support RBF ($\mathbf {O} (\mathbf {n} \log {\mathbf {n} })$ to calculate RBF, $\mathbf {O} (\mathbf {n} ^{1.2..1.5})$ to solve system, $\mathbf {O} (\mathbf {m} \log {\mathbf {n} })$ to determine surface)
* FMM ($\mathbf {O} (\mathbf {n} ^{2})$ to calculate RBF, $\mathbf {O} (\mathbf {n} \log {\mathbf {n} })$ to solve system, $\mathbf {O} (\mathbf {m} +\mathbf {n} \log {\mathbf {n} })$ to determine surface)

## Hierarchical algorithm

A hierarchical algorithm allows for an acceleration of calculations due to decomposition of intricate problems on the great number of simple (see picture).
In this case, hierarchical division of space contains points on elementary parts, and the system of small dimension solves for each. The calculation of surface in this case is taken to the hierarchical (on the basis of tree-structure) calculation of interpolant. A method for a 2D case is offered by Pouderoux J. et al. For a 3D case, a method is used in the tasks of 3D graphics by W. Qiang et al. and modified by Babkov V.