Presentation is loading. Please wait.

Presentation is loading. Please wait.

Fast Marching on Triangulated Domains Ron Kimmel Computer Science Department Geometric Image Processing Lab Technion-Israel.

Similar presentations

Presentation on theme: "Fast Marching on Triangulated Domains Ron Kimmel Computer Science Department Geometric Image Processing Lab Technion-Israel."— Presentation transcript:

1 Fast Marching on Triangulated Domains Ron Kimmel Computer Science Department Geometric Image Processing Lab Technion-Israel Institute of Technology

2 Brief Historical Review qUpwind schemes: Godunov 59 qLevel sets: Osher & Sethian 88 qViscosity SFS: Rouy & Tourin 92, (Osher & Rudin) qLevel sets SFS: Kimmel & Bruckstein 92 qContinuous morphology: Brockett & Maragos 92,Sapiro et al. 93 qMinimal geodesics: Kimmel, Amir & Bruckstein 93 qFast marching method: Sethian 95 qFast optimal path: Tsitsiklis 95 qLevel sets on triangulated domains:Barth & Sethian 98 qFast marching on triangulated domains: Kimmel & Sethian 98 qApplications based on joint works with: Elad, Kiryati, Zigelman

3 1D Distance: Example 1 qFind distance T(x), given T(x0)=0. qSolution: T(x)=|x-x0|. q except at x0. x x0 T(x)

4 1D Distance: Example 2 qFind the distance T(x), given T(x0)=T(x1)=0 qSolution: T(x) = min{|x-x0|,|x-x1|}, qAgain,, except x0,x1 and (x0+x1)/2. x T(x) x0 x1

5 1D Eikonal Equation with boundary conditions T(x0)=T(x1)=0. qGoal: Compute T that satisfies the equation `the best'. x T(x) x1 x0

6 Numerical Approximation qRestrict, where h= grid spacing. q qPossible solutions for are x T(x) x1 x0

7 Approximation II q qUpdated i has always q`upwind' from where the `wind blows' x T(x) x1 x0

8 Update Procedure Set, and T(x0)=T(x1)=0. REPEAT UNTIL convergence, nFOR each i ® T i-1 i i+1 T T i-1 i h

9 Update Order What is the optimal order of updates? Solution I: Scan the line successively left to right. N scans, i.e. O(N ) Solution II: Left to right followed by right to left. Two scans are sufficient. (Danielson`s distance map 1980) Solution III: Start from x0, update its neighboring points, accept updated values, and update their neighbors, etc

10 Weighted Domains qLocal weight, Arclength qGoal: distance function characterized by: qBy the chain rule: qThe Eikonal equation is x T(x) x1 x0 F(x)

11 2D Rectangular Grids Isotropic inhomogeneous domains Weighted arclength: the weight is Goal: Compute the distance T(x,y) from p0 where

12 Upwind Approximation in 2D T i,j-1 i,j+1 i-1,j ij i+1,j T T T T i-1,j i,j-1 ij

13 2D Approximation Initialization: q given initial value or Update: q Fitting a tilted plane with gradient, and two values anchored at the relevant neighboring grid points. T T 1 2 i,j-1 i,j+1 i-1,j ij i+1,j

14 Computational Complexity qT is systematically constructed from smaller to larger T values. qUpdate of a heap element is O(log N). qThus, upper bound of the total is O(N log N).

15 Shortest Path on Flat Domains Why do graph search based algorithms (like Dijkstra's) fail?

16 Edge Integration Cohen-Kimmel, IJCV, Solve the 2D Eikonal equation given T(p)=0 Minimal geodesic w.r.t.

17 Shape from Shading Rouy-Tourin SIAM-NU 1992, Kimmel-Bruckstein CVIU 1994, Kimmel-Sethian JMIV Solve the 2D Eikonal equation where Minimal geodesic w.r.t.

18 Path Planning 3 DOF Solve the Eikonal Eq. in 3D {x,y,  }-CS given T(x0,y0,  0)=0, Minimal geodesic w.r.t.

19 Path Planning 3 DOF

20 Path Planning 4 DOF Solve the Eikonal Eq. in 4D Minimal geodesic w.r.t.

21 Update Acute Angle Given ABC, update C. Consistency and monotonicity: Update only `from within the triangle' h in ABC Find t=EC that satisfies the gradient approximation (t-u)/h= F. c c

22 We end up with: t must satisfy u { "@context": "", "@type": "ImageObject", "contentUrl": "", "name": "We end up with: t must satisfy u

23 Obtuse Problems This front first meets B, next A, and only then C. A is `supported’ by a single point. The supported section of incoming fronts is a limited section.

24 Solution by splitting Extend this section and link the vertex to one within the extended section. Recursive unfolding: Unfold until a new vertex Q is found. Initialization step!

25 Recursive Unfolding: Complexity e = length of longest edge The extended section maximal area is bounded by a<= e /(2  ). The minimal area of any unfolded triangle is bounded below a >= (h  )  /2, The number of unfolded triangles before Q is found is bounded by m<= a /a = e /(  h . max min 2 2 max 2 min 2 3

26 1st Order Accuracy The accuracy for acute triangles is O(e ) Accuracy for the obtuse case O(e /(  -  )) max

27 Minimal Geodesics


29 Linear Interpolation ODE ‘back tracking’

30 Quadratic Interpolation

31 Voronoi Diagrams and Offsets uGiven n points, { p D, j 0,..,n-1} uVoronoi region: uG = {p D| d(p,p ) < d(p,p ), V j = i}. j ji i

32 Geodesic Voronoi Diagrams and Geodesic Offsets


34 Marching Triangles uThe intersection set of two functions is linearly interpolated via `marching triangle'

35 Voronoi Diagrams and Offsets on Weighted Curved Domains


37 Cheap and Fast 3D Scanner qPC + video frame grabber. qVideo camera. qLaser line pointer. Joint with G. Zigelman motivated by simple shape from structure light methods, like Bouguet-Perona 99, Klette et al. 98 A frame grabber built at the Technion by Y Grinberg Lego Mindstorms rotates the laser (E. Gordon)

38 Cheap and Fast 3D Scanner

39 Detection and Reconstruction

40 Examples of Decimation Decimation - 3% of vertices Sub-grid sampling

41 Results


43 Texture Mapping qEnvironment mapping: Blinn, Newell (76). qEnvironment mapping: Greene, Bier and Sloan (86). qFree-form surfaces: Arad and Elber (97). qPolyhedral surfaces: Floater (96, 98), Levy and Mallet (98). qMulti-dimensional scaling: Schwartz, Shaw and Wolfson (89).

44 Difficulties qNeed for user intervention. qLocal and global distortions. qRestrictive boundary conditions. qHigh computational complexity.

45 Flattening via MDS qCompute geodesic distances between pairs of points. qConstruct a square distance matrix of geodesic distances^2. qFind the coordinates in the plane via multi- dimensional scaling. The simplest is `classical scaling’. qUse the flattened coordinates for texturing the surface, while preserving the texture features. Zigelman, Kimmel, Kiryati, IEEE T. on Visualization and Computer Graphics (in press)

46 Flattening


48 Distances - comparison

49 Texture Mapping


51 Bending Invariant Signatures

52 Elad, Kimmel, CVPR’2001 ?

53 Bending Invariant Signatures ? Elad, Kimmel, CVPR’2001

54 Bending Invariant Signatures ? Elad, Kimmel, CVPR’2001

55 Bending Invariant Signatures Elad, Kimmel, CVPR’2001

56 Bending Invariant Signatures Elad, Kimmel, CVPR’2001

57 Bending Invariant Signatures 3 Original surfaces Canonical surfaces in R Elad, Kimmel, CVPR’2001

58 CC C C A A A A D DD D B B B B E E E E F F F F C E C C B A D E E E B C A B D B F D A D F A F F Bending Invariant Clustering q2 nd moments based MDS for clustering Original surfaces Canonical forms *A=human body *B=hand *C=paper *D=hat *E=dog *F=giraffe Elad, Kimmel, CVPR’2001

59 More Applications re-triangulation semi-manual segmentation halftoning in 3D Adi, Kimmel 2002

60 Conclusions uApplications of Fast Marching Method on rectangular grids: Path planning, edge integration, shape from shading. uO(N) consistent method for weighted geodesic distance: ‘Fast marching on triangulated domains’. uApplications: Minimal geodesics, geodesic offsets, geodesic Voronoi diagrams, surface flattening, texture mapping, bending invariant signatures and clustering of surfaces, triangulation, and semi- manual segmentation.

Download ppt "Fast Marching on Triangulated Domains Ron Kimmel Computer Science Department Geometric Image Processing Lab Technion-Israel."

Similar presentations

Ads by Google