Presentation and Analysis of a MultiDimensional Interpolation Function





































- Slides: 37
Presentation and Analysis of a Multi-Dimensional Interpolation Function for Non-Uniform Data: Microsphere Projection Presented By: Will Dudziak
What We Will Cover… • • Introduce Interpolation Overview of Existing Techniques Introduce Microsphere Projection Analysis of Results – 1 D – 2 D – 3 D • Conclusion and Final Remarks • Q&A Hand with Reflecting Sphere M. C. Escher, 1935
Introduction – What is Interpolation? • “the process of determining the value of a function between two points at which it has prescribed values. ” • The hill behind me is low, the mountain in front of me is high… therefore I must be somewhere in between low and high.
Introduction – Some Terminology • • • “Control Points” or “Sample Points” Differentiable C 0, C 1, C 2, etc. Functional Interpolation Inverse-Distance p-value Monotonic Behavior
Introduction – Local vs. Global Interpolation • Local Interpolation – Makes use of information from small set of ‘local’ points. • Global Interpolation – Makes use of information from all points • Key Difference: – Local interpolation applies different set of rules to close sample points than to far ones. vs.
Introduction – Exact vs. Inexact Interpolation • Exact interpolations intersect ALL control points. • Inexact interpolations follow general trends. • Usages: – Exact: Largest problem with data is in scarcity of control points. – Inexact: Largest problem with data is in error margin of sampled value.
Popular Existing Interpolation Methods • 1 D – Polynomial Function Approximation – Piecewise Cubic Spline • 2 D – Thin-Plate Spline (TPS) • 3 D – Volume Spline – Multiquadric • 1 D, 2 D, 3 D – Nearest Neighbor – Shepard’s Method (inverse-distance weighting)
Popular Existing Interpolation Methods (1 -D) Polynomial Function Interpolation Cubic Spline Interpolation
Radial Basis Function • Premise: – Interpolation in N-dimensional space can be approximated by a function of form: • A*f(d 1) + B*f(d 2) + C*f(d 3) + … + Z*f(d. N) • ABC…Z are constants • di is the distance from interpolation location to control point i. • Time Complexity: O(N 2) • TPS, Volume Spline, and Multiquadric use RBF.
Shepard‘s Method • Shepard’s Method, aka Inversedistance Weighting. – Assign weights to each control point based on distance to interpolation location. – Based on weight distribution, interpolate value of point. Fundamental Problem with Shepard’s Method is the non-consideration of locality.
Microsphere Projection - Objectives • Obeys Maximum Principle • Differentiable (smooth) • Non-consideration of redundant control points. (problem with Shepard’s method) • Reasonable extrapolation ability
Microsphere Projection - Premise • infinitesimally small sphere located at the point of interpolation. • sphere is ‘illuminated’ by the surrounding sampled points. • Based on the degree of illumination, a weight for all the control points assigned.
MS – Data Structure • 1 x Microsphere – 2000 x Sphere Segment • 1 x Index of control point with largest influence (int) • 1 x Projection influence (double) “Data Structure” not to be confused with “Data’s Structure”.
MS – Creating the Sphere • Sphere needs lots of sections to be ‘spherical’. • 2000 sections were used. • Section unit vectors were created by: do x : = rand(-1, 1) y : = rand(-1, 1) z : = rand(-1, 1) vector. Size : = sqrt (x*x + y*y + z*z) while ( vector. Size > 1 ) normalize ( Vector(x, y, z) )
MS – Control Point Projection • Points are ‘projected’ on to the sphere. – Projection intensity varies: • Inversely as the distance. • Inversely as the angle of incidence. (governed by the cosine function) – Each section of the sphere only retains the information for the ONE POINT with largest projection value.
MS – Control Point Projection
MS – Control Point Projection Intensity Projection Function: for i : = 0 to Number of Samples vector 1 : = sample[i]. XYZLocation - interpolant. XYZLocation weight : = pow(vector 1. Size, -p) for j : = 0 to Precision cos. Value : = Cos. Value. Between. Vectors(vector 1, S[j]. Vector) if (cos. Value * weight > S[j]. Max_Illumination) S[j]. Max_Illumination : = cos. Value * weight S[j]. Brightest_Sample : = i endif endfor
MS – Determining Final Interpolation Value • Weight for each control point is assigned based on total sum of illumination on all the sections of the sphere. • Weights are normalized such that Sum(weights) = 1. • Final interpolation is: Σ(weight*control_point_value)
MS – Walkthrough 10 d. B 40 d. B Dist = 1 5 d. B [cos(θ) / dist 2] 0. 19 0. 55 0. 83 0. 98 0. 83 0. 55 0. 24 0. 55 0. 83 0. 98 0. 83 0. 55 0. 19 Dist = 2 0. 48 * 10 d. B 0. 04 * 40 d. B 0. 48 * 5 d. B 8. 8 d. B 0. 48 0. 04 0. 48 1. 00 4. 91 0. 48 4. 91 10. 30
1 -D Results – Case Study 1
1 -D Results – Case Study 2
1 -D Results – Source of Data
1 -D Results – Numeric RMS Error using Strict Interpolation on 1 D Data Percentage of Data Sampled Method of Interpolation 2. 5% 5% 10% 25% 50% 90% Microsphere Projection, p=2 0. 1731 0. 1429 0. 1135 0. 0828 0. 0651 0. 0541 Microsphere Projection, p=1 (piecewise linear) 0. 1688 0. 1392 0. 1105 0. 0806 0. 0635 0. 0531 Piecewise Cubic Spline 0. 1744 0. 1438 0. 1137 0. 0825 0. 0644 0. 0533 Shepard's Method, p=2 (inverse distance) 0. 1698 0. 1410 0. 1136 0. 0848 0. 0689 0. 0601 Nearest Neighbor 0. 1906 0. 1592 0. 1281 0. 0951 0. 0769 0. 0668 Average Value 0. 2186 0. 2155 0. 2134 0. 2120 0. 2117 0. 2111 N (number of samples) 3. 642 e 6 1. 821 e 6 7. 284 e 5 3. 642 e 5
1 -D Results – Numeric RMS Error using General Interpolation on 1 D Data Percentage of Data Sampled Method of Interpolation 2. 5% 5% 10% 25% 50% 90% Microsphere Projection, p=2 0. 1913 0. 1503 0. 1167 0. 0838 0. 0660 0. 0545 Microsphere Projection, p=1 (piecewise linear) 0. 1882 0. 1472 0. 1139 0. 0817 0. 0645 0. 0535 3733 696. 1 70. 33 2. 830 0. 3406 0. 0584 Shepard's Method, p=2 (inverse distance) 0. 1827 0. 1464 0. 1161 0. 0857 0. 0697 0. 0606 Nearest Neighbor 0. 2038 0. 1640 0. 1299 0. 0957 0. 0777 0. 0675 Average Value 0. 2240 0. 2175 0. 2142 0. 2124 0. 2118 0. 2114 N (number of samples) 3. 642 e 6 1. 821 e 6 7. 284 e 5 3. 642 e 5 Piecewise Cubic Spline
1 -D Results – PCS Explanation In some cases, even asking for a small amount of extrapolation can be too much to ask.
2 -D Results – Case Study 1 Original TPS Nearest Neighbor MS, p=1 Shepard’s Method MS, p=2
2 -D Results – Case Study 1 TPS, Values truncated to 0 -255 TPS, Areas interpolated beyond data range in red.
2 -D Results – Case Study 2 (Area of Interest) NN MS, p=1 TPS MS, p=2
2 -D Results – Strict vs. General Interpolation
2 -D Results – Numeric Number of Points Sampled Method of Interpolation ( STRICT) 10 20 50 100 500 1000 Microsphere Projection, p=2 0. 251 0. 231 0. 201 0. 178 0. 133 0. 116 Microsphere Projection, p=1 (2 d version of piecewise linear) 0. 242 0. 222 0. 193 0. 172 0. 128 0. 112 Thin-Plate Spline 0. 269 0. 248 0. 214 0. 189 0. 138 0. 121 Shepard's Method, p=2 (inverse distance) 0. 241 0. 222 0. 197 0. 180 0. 150 0. 140 Nearest Neighbor 0. 289 0. 268 0. 234 0. 210 0. 159 0. 140 Average Value 0. 265 0. 259 0. 255 0. 251 0. 250 0. 249 N (number of samples) 1. 0 e 5 Number of Points Sampled Method of Interpolation ( GENERAL) 10 20 50 100 500 1000 Microsphere Projection, p=2 0. 258 0. 234 0. 204 0. 180 0. 133 0. 116 Microsphere Projection, p=1 (2 d version of piecewise linear) 0. 247 0. 225 0. 196 0. 173 0. 129 0. 112 Thin-Plate Spline 0. 320 0. 273 0. 226 0. 195 0. 140 0. 122 Shepard’s Method, p=2 (inverse distance) 0. 242 0. 221 0. 197 0. 181 0. 151 0. 139 Nearest Neighbor 0. 292 0. 268 0. 237 0. 211 0. 160 0. 141 Average Value 0. 260 0. 254 0. 250 0. 249 0. 248 N (number of samples) 1. 0 e 5 Convex Hull Coverage 43. 6% 62. 3% 80. 0% 88. 2% 96. 6% 98. 1%
3 -D Results – Case Study Nearest Neighbor Shepard’s Method
3 -D Results – Case Study Multiquadric Volume Spline
3 -D Results – Case Study Microsphere Interpolation, p=2
3 -D Results – Numeric Method of Interpolation Relative RMS Error Microsphere Projection, p=2 0. 080 Microsphere Projection, p=1 (piecewise linear) 0. 081 Volume Spline 0. 093 Multiquadric, r=1 0. 077 Shepard's Method, p=2 (inverse distance) 0. 100 Nearest Neighbor 0. 110 Average Value 0. 168 N (Number of samples) 145
Hyper-Dimensional Interpolation • Microsphere Projection will work in any Cartesian coordinate system. Rotating Hypersphere. Oooooh, Aaaaah.
Hyper-Dimensional Interpolation • As dimensionality increases, bounding box becomes much larger than convex hull. bbd is the d-dimensional bounding box chd is the d-dimensional convex hull ║x║ is the volume of space enclosed by x • Greater need for algorithms which can both interpolate and extrapolate. Convex Hull Bounding Box
Conclusion • • • Great interpolation ability Pretty good (and stable) extrapolation ability. Differentiable Preserves monotonic behavior Works well in any dimension Based on a simple physical model Buckminsterfullerene. Perhaps the smallest real-world microsphere possible, measuring around 0. 00001 meters.