Comparing 3-D Interpolation Techniques

17
Comparing 3-D Interpolation Methods Binu Enchakalody January, 12 2010

description

Comparing 3-D Interpolation Methods - Nearest Neighbour, Cubic convolution, B-spline, Tri-linear

Transcript of Comparing 3-D Interpolation Techniques

Page 1: Comparing 3-D Interpolation Techniques

Comparing 3-D Interpolation Methods

Binu Enchakalody

January, 12 2010

Page 2: Comparing 3-D Interpolation Techniques

Interpolation Methods•Nearest Neighbor

•Tri-Linear

•Cubic-Keys

•Clamped Cubic Spline

•Catmull-Rom Spline

•Cubic B-Spline

Page 3: Comparing 3-D Interpolation Techniques

Methods

Vxyz  = V000 (1 - x) (1 - y) (1 - z) + V100 x (1 - y) (1 - z) +  V010 (1 - x) y (1 - z) +  V001 (1 - x) (1 - y) z + V101 x (1 - y) z +  V011 (1 - x) y z + V110 x y (1 - z) + V111 x y z

Tri-Linear Weights an interpolated intensity value, based on the distance from the nearest x,y and z pixels within a 2 x 2 x 2 neighborhood

Nearest NeighborPicks the intensity of the nearest x,y and z pixel within a 2 x 2 x 2 neighborhood

Page 4: Comparing 3-D Interpolation Techniques

Piecewise-Cubic Basic Algorithm

[ t0 t1 t2 t3] x Basis Matrix x [a-1 a0 a1 a2] ’, where 0 < t < 1

Cubic-Keys *Cubic Convolution Interpolation for Digital Image Processing - R.G. Keys C2 Continuity (curvature) 4 Cubic Kernel Dimension Separable

Catmull-Rom Spline Different Basis Matrix

Page 5: Comparing 3-D Interpolation Techniques

Piecewise Cubic-SplineClamped Cubic-Spline C2 Continuity (curvature) 4 Cubic Kernel Dimension Separable

General Equation

Page 6: Comparing 3-D Interpolation Techniques

Piecewise Cubic-SplineB-Spline Interpolation

*A parallel B-Spline fitting algorithm – F.Cheng, A. Gosthashby

Uses Control Points defined by the neighboring intensity pixels

Page 7: Comparing 3-D Interpolation Techniques

Calculating Control Points, C

Parallel AlgorithmA parallel B-Spline fitting algorithm – F.Cheng, A. Gosthashby

Page 8: Comparing 3-D Interpolation Techniques

Original – Volume Center slice

Page 9: Comparing 3-D Interpolation Techniques

Nearest Neighbour

Page 10: Comparing 3-D Interpolation Techniques

Tri-Linear

Page 11: Comparing 3-D Interpolation Techniques

Cubic-Keys

Page 12: Comparing 3-D Interpolation Techniques

Catmull-Rom Spline

Page 13: Comparing 3-D Interpolation Techniques

Clamped-Cubic Spline

Page 14: Comparing 3-D Interpolation Techniques

B-spline

Page 15: Comparing 3-D Interpolation Techniques

AnalysisRotated a 151 x 221 x 50 Test Matrix, 6 times in increments of 60 degrees Along the Z-axis Along the X-axis (permuted)

Recorded computation time for interpolating the data-set

Error Analysis on a 23 x 29 x 11 sub-matrix Calculated MSE, Mean, Standard Deviation

Page 16: Comparing 3-D Interpolation Techniques

Error analysis on test matrix, after 6 rotations of 60° - along Z-axis (top), along X-axis (bottom)

18.52

0

50

100

150

200

250

300

350

400

MSE

Nearest

Tri-Linear

Cubic_keys

Catmull-Rom

ClampedSpline

B-Spline 0

2

4

6

8

10

12

14

16

18

Mean Std. Dev

Nearest

Tri-Linear

Cubic_keys

Catmull-Rom

ClampedSpline

B-Spline

362.86

19.63

0

50

100

150

200

250

300

350

400

MSE

Nearest

Tri-Linear

Cubic_keys

Catmull-Rom

ClampedSpline

B-Spline 0

2

4

6

8

10

12

14

16

18

Mean Std. Dev

Nearest

Tri-Linear

Cubic_keys

Catmull-Rom

ClampedSpline

B-Spline

Page 17: Comparing 3-D Interpolation Techniques

Approx. computation time@ rotation(MATLAB profiler)

3 6

140 140

650

283

0

100

200

300

400

500

600

700

Time (s)

Nearest

Tri-Linear

Cubic_keys

Catmull-Rom

Clamped Spline

B-Spline