|<< Go back to: Microsphere Projection|
Microsphere projection is based on the physical model of an infinitesimally small sphere located at the point of interpolation. This tiny sphere is then ‘illuminated’ by the surrounding sample points. Based on the degree of illumination on various parts of the sphere by various sample points, a series of weights for all the sample points are assigned. These weights, when applied, yield the interpolated value for the location.
The surface of the Microsphere is divided into
a large number of equally-spaced regions. Each region records for
itself which sample point has illuminated it the most, and what
illumination that sample point has provided. Each surface region
is represented by a single unit vector pointing out from the center
of the sphere to the center of that region. “S[i].Vector” will
be used to represent the unit vector for surface region i. The
more regions used, the greater the precision of the interpolation.
Net illumination is applied to the microsphere
by iterating through each of the sample points, and applying illumination
to the sphere one-by-one. It should be noted that illumination
on various parts of the sphere decreases proportionally
to the acuteness
of the angle between the surface of the sphere and the direction
of the sample point. Illumination also decreases
as the distance between the microsphere and the sample point increase. Much like Shepard’s
Method, this inverse
relationship between distance and ‘brightness’ is governed
by a power value ‘p’ specified by the user where p>0,
p=1 and p=2 are typical values. p=1 yields an interpolation that
is C0 (non-differentiable),
p > 1 is C1 (first-derivative is continuous). Similar
Method, as p→∞, the closest points dominate the interpolation
and the algorithm becomes the equivalent of Nearest
Once all the calculations are complete regarding
the maximum illuminations on the various sections of the sphere,
we must make use of this data to produce a single interpolated
value. To do this, we assign a weight to each sample point equal
to the total illumination that point provided to the sections of
the sphere. Note that each section of the sphere only records data
regarding the point which provided the most illumination; sample
points which did not out-shine any other points on any section
of the sphere are assigned a weight of 0. If you are having problems
understanding this, please visit the walkthrough.
Example 1, Top-Left: Illumination of a 2D
Microsphere with a single sample point known.
Click HERE to go to the algorithm walkthrough.