1 / 43

Bounded-distortion Piecewise Mesh Parameterization

Bounded-distortion Piecewise Mesh Parameterization O. Sorkine, D. Cohen-Or, R. Goldenthal, D. Lischinski IEEE Visualization 2002. July 2002. Existing methods – main ideas. Partition/cut the mesh in preprocess Interactive user input Normals bucketing Region growing from feature curves

mroyalty
Download Presentation

Bounded-distortion Piecewise Mesh Parameterization

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Bounded-distortion Piecewise Mesh Parameterization O. Sorkine, D. Cohen-Or, R. Goldenthal, D. Lischinski IEEE Visualization 2002 July 2002

  2. Existing methods – main ideas • Partition/cut the mesh in preprocess • Interactive user input • Normals bucketing • Region growing from feature curves • Flatten each patch by energy minimization • Convex mapping • Harmonic mapping • Conformal mapping

  3. Normal partition • Doesn’t detect developable structures • Prone to self-intersection problems

  4. Various flattening methods • Floater 97, Lévy and Mallet 98 • Maillot et al. 93, Eck et al. 95, Lee et al. 98 • Sander et al. 01, Gu et al. 02 • Haker et al. 00, Sheffer 02, Lévy et al. 02 • Zigelman et al. 02 • Bennis et al. 91

  5. Disadvantages • A-priori partition sets lower bound on the distortion  cannot comply with preset upper bound on the distortion. • If the distortion is too high, need to subdivide the partition and recompute the parameterization. • Most of the methods cannot prevent triangle flips and global self-intersections (overlaps). • High computational cost (for non-linear optimizations).

  6. Our contribution • Parameterization with bounded distortion • Simultaneous partition and parameterization • Valid parameterization – no self-intersections

  7. Algorithm overview • Greedy algorithm: grow one patch at a time, until no more vertices can be added. • At each step, attempts to flatten the “best” vertex adjacent to the current patch. • The distortion of each mesh triangle is guaranteed to be below specified threshold.

  8. Algorithm overview • Select random seed triangle, flatten it. • Maintain a priority queue of the vertices adjacent to the current patch. • Flatten triangles adjacent to current patch: • At each step, take the best vertex off the queue • Check for self-intersections • Stop when no triangles can be added to the patch, and start a new one.

  9. The 3D surface

  10. The 3D surface The planar patch

  11. The 3D surface The planar patch

  12. The 3D surface The planar patch

  13. The 3D surface The planar patch

  14. The 3D surface The planar patch

  15. The 3D surface The planar patch

  16. The 3D surface The planar patch

  17. The 3D surface The planar patch

  18. The 3D surface The planar patch

  19. The 3D surface The planar patch

  20. The 3D surface The planar patch

  21. The 3D surface The planar patch

  22. The 3D surface The planar patch

  23. The distortion metric p3 q3 S T T’ p1 q1 q2 p2 In2D In3D

  24. The distortion metric • The Jacobi matrix of S is 3x2 real matrix: • The singular values of J are:

  25. The distortion metric

  26. The distortion metric • The values max and min are the maximal stretching and shrinking caused to a unit-length vector by the mapping S. • We want to equally “punish” stretch and shrink, therefore we define: D(T, T’) = max{max, 1/ min} • Any other reasonable metric can be used!

  27. Flattening a single vertex

  28. Flattening a single vertex • The obtained position v can be used as initial guess for a relaxation procedure that finds better position v’ (for example, minimizes the average distortion of triangles incident to the vertex). • However, it is slower, and the initial guess performs well in practice.

  29. Vertex grade components • Maximal distortion caused to the triangles flattened with the vertex. If it’s greater than the threshold, the grade is set to zero and the vertex can’t be flattened in the current patch! • The ratio between patch area and squared perimeter (to create round patches with small boundary length). • Crease angles or other segmentation information. • More criteria…

  30. Checking self-intersections • Local self-intersection – triangle flipping

  31. Checking self-intersections • Global self-intersections: maintain space partition data structure, check the new triangles with the existing boundary triangles.

  32. Adding seams • After the patch is finished, we may add seams as a post-process, to benefit from cylinder-like structure.

  33. Adding seams • After the patch is finished, we may add seams as a post-process, to benefit from cylinder-like structure.

  34. Results

  35. 3.0 3.0 3.0 2.0 2.0 2.0 1.5 1.5 1.5 1.0 1.0 1.0 Results

  36. Results Bounding the area/perimeter2 ratio...

  37. Results

  38. Results

  39. Comparison with relaxation technique, normal bucketing partition • Conclusions about our method: • Much faster. • Lower average distortion. • Boundary length – sometimes the same, sometimes longer…

  40. Texture mapping with our parameterization

  41. Texture mapping with our parameterization

  42. 3D painting with our parameterization

  43. Thank you!

More Related