Presentation is loading. Please wait.

Presentation is loading. Please wait.

Joel Daniels II University of Utah GDC Group Visually Smooth Blending Surfaces for Fabrication of Physical Visualizations Joel Daniels II Master’s Thesis.

Similar presentations


Presentation on theme: "Joel Daniels II University of Utah GDC Group Visually Smooth Blending Surfaces for Fabrication of Physical Visualizations Joel Daniels II Master’s Thesis."— Presentation transcript:

1 Joel Daniels II University of Utah GDC Group Visually Smooth Blending Surfaces for Fabrication of Physical Visualizations Joel Daniels II Master’s Thesis Defense November 2005 Elaine Cohen

2 Joel Daniels II University of Utah GDC Group Molecular Visualization Written methodology –Portray molecular connections Stick and ball models –Physical visualization –Visualize 3D structure –Tactile feedback –Manipulate forms

3 Joel Daniels II University of Utah GDC Group Virtual environments –Multiple levels of data –Interaction between molecules –Intricate molecular models –Tactile feedback? Molecular Visualization

4 Joel Daniels II University of Utah GDC Group Molecular Visualization Aim to re-create physical visualizations

5 Joel Daniels II University of Utah GDC Group Evolution of Molecular Visualization Evolved to the use of virtual computer environments.

6 Joel Daniels II University of Utah GDC Group Evolution of Molecular Visualization Return to the physical visualizations?

7 Joel Daniels II University of Utah GDC Group Evolution of Molecular Visualization Improvement of an old technique! –These are new physical visualizations –Multiple levels of data represented within a single form

8 Joel Daniels II University of Utah GDC Group Fabrication Pipeline

9 Joel Daniels II University of Utah GDC Group Research Challenges 1.Homogeneous Inputs –Mesh to spline model conversion –Visually smooth boundaries 2.Split away mold creation –Non-planar parting surface

10 Joel Daniels II University of Utah GDC Group Mesh Conversion

11 Joel Daniels II University of Utah GDC Group 1.Homogeneous Inputs –Mesh to spline model conversion –Visually smooth boundaries 2.Mold creation –Non-planar parting surface Research Challenges

12 Joel Daniels II University of Utah GDC Group Parting Surface Generation

13 Joel Daniels II University of Utah GDC Group Outline I.Mesh Conversion i.Related efforts ii.Implementation iii.Results II.Parting Surface Generation i.Related efforts ii.Implementation iii.Results III.Conclusion IV.Questions

14 Joel Daniels II University of Utah GDC Group I. Mesh Conversion

15 Joel Daniels II University of Utah GDC Group Mesh Conversion – Related Work Smoothing surfaces: –Subdivision surfaces: Catmull-Clark, Doo-Sabin, Loop –Fit a manifold surface model to noisy CT data scans [Grimm et al. 2002] –User segmentation and approximated spline surfaces [Levoy et al. 1996] –Inter-surface continuity moving data points [Livingston 1990]

16 Joel Daniels II University of Utah GDC Group Mesh Conversion – Related Work Complete Spline Interpolation –A technique to compute splines through a grid of data points –Points are assigned parameter values Approximations of time values at which the surface will pass through the point –Constrain the extra degree of freedom defines cross boundary tangent information

17 Joel Daniels II University of Utah GDC Group Mesh Conversion – System Pipeline Data segmentation Cross boundary tangents Corner tangents and twists Complete spline interpolation

18 Joel Daniels II University of Utah GDC Group Mesh Conversion – Data Segmentation Focus on inter-surface continuity Inherent nature of input mesh Map triangles to an icosahedron Walk vertices extracting rows and columns Fill in the complete spline interpolation matrix

19 Joel Daniels II University of Utah GDC Group Mesh Conversion – Boundary Tangents Align rows and columns of adjacent surfaces Fit quadratic function to indicated points Evaluate tangent at the boundary point Both surfaces influence tangent direction equally Fill in the complete spline interpolation matrix

20 Joel Daniels II University of Utah GDC Group Mesh Conversion – Stitching Corners Two corner scenarios –3-way corners around equator –5-way corners at poles Bi-cubic surfaces –Unable to ensure parametric continuity –Instead strive for geometric continuity Discussion done in terms of the 3-way corner, but it is extendable to N-way corners

21 Joel Daniels II University of Utah GDC Group Extract the corner neighborhood

22 Joel Daniels II University of Utah GDC Group Fit a cubic surface to the neighborhood

23 Joel Daniels II University of Utah GDC Group Compute tangent control points along each boundary

24 Joel Daniels II University of Utah GDC Group Compute twist control points satisfying constraints

25 Joel Daniels II University of Utah GDC Group Compute tangent and twist values that realize the given control points

26 Joel Daniels II University of Utah GDC Group Mesh Conversion – Discontinuity Analysis (M – c 0 ) x (c 1 – c 0 ) β 0 (u) + (M – c 0 ) x (c 2 – c 1 ) β 1 (u) + (M – c 0 ) x (c 3 – c 2 ) β 2 (u) = 0 Tangent planes must be the same Algorithm ensures cross boundary control points are co-linear Equation to ensure G 1 smoothness When vectors (c 2 – c 1 ) and (c 3 – c 2 ) do not align with (c 1 – c 0 ) then the neighborhood is curved and no value of ‘M’ will satisfy the equation The algorithm aligns (M – c 0 ) with (c 1 – c 0 ) eliminating the largest contributor of the error

27 Joel Daniels II University of Utah GDC Group Mesh Conversion – Case Studies Lower Curvature Model –Worst angle = 1.74º original angle = 7.6º – 99% of the boundaries within 1º of G 1 continuity Higher Curvature Model –Worst angle = 4.48º original angle = 12.4º – 98% of boundaries within 1º of G 1 continuity

28 Joel Daniels II University of Utah GDC Group Mesh Conversion – System Results Internally bi-cubic spline surfaces are C 2 continuous Visual discontinuities confined to first and last knot intervals Algorithm guarantees G 1 continuous corner when possible, otherwise it attempts to minimize created features Successfully convert mesh into a smooth spline model

29 Joel Daniels II University of Utah GDC Group Fabrication Pipeline Recap Mesh Conversion  Surface Parameterization

30 Joel Daniels II University of Utah GDC Group II. Parting Surface Generation

31 Joel Daniels II University of Utah GDC Group Surface Generation – System Goal Define a surface between two spatial curves that is a height field from the separation direction. The curves define the object’s parting curve and the mold insert boundary.

32 Joel Daniels II University of Utah GDC Group Surface Generation – System Goal Define a surface between two spatial curves that is a height field from the separation direction. The curves define the object’s parting curve and the mold insert boundary.

33 Joel Daniels II University of Utah GDC Group Surface Generation – Parting Curve Silhouette Edge Surface normals are perpendicular to viewpoint direction Divide the object –All normals one side positively dot with the view direction –All normals other side negatively dot with the view direction Separation/View Direction

34 Joel Daniels II University of Utah GDC Group Surface Generation – System Strategy Strategy –Define an intermediate curve along the medial axis approximation –Compute two 3D curve morph solutions from the input curves to this intermediate shape –Morph solution will sweep the surface as a function of time

35 Joel Daniels II University of Utah GDC Group Surface Generation – Related Work Metamorphosis –Feature Matching Physically Based [Sederberg ‘92] Tangent Comparison [Lui ‘04][Cohen ‘96] Hierarchical Solutions [Wolfson ‘90][Al-Khaiyat ‘98] –Vertex Trajectories [Gotsman ‘01] [Sederberg ‘93]

36 Joel Daniels II University of Utah GDC Group Surface Generation – Related Work Potential Fields –Robot Path Planning [Bell ’04][Chuang ’98][Ge ’00] [Lewis ’99,’00] –Skeleton Extraction [Ahuja ‘97][Chuang ‘00]

37 Joel Daniels II University of Utah GDC Group Surface Generation – Related Work Potential Fields –Group Path Planning [Balch ’99,’00]

38 Joel Daniels II University of Utah GDC Group Surface Generation – System Pipeline D

39 Joel Daniels II University of Utah GDC Group Surface Generation – System Inputs System inputs –Two spatial curves (object parting edge, mold boundary) –Medial axis approximation: MA, skeleton, user defined Input Robustness Goals –Differing curve degrees, parameterizations, knot vectors, and control meshes Intermediate shape –Must be a polyline Guarantees continuity along the intermediate curve

40 Joel Daniels II University of Utah GDC Group A. Vertex Trajectories

41 Joel Daniels II University of Utah GDC Group Surface Generation – Vertex Paths Create a continuous vector field –Potential field Positive charge assigned to input curve control meshes Walk the potential field gradient –Local Minima!

42 Joel Daniels II University of Utah GDC Group Surface Generation – Vertex Paths Vertex trajectories –Continuous vector field without local minima –Navigate concavities Skeleton Edges Classification –Core Edges  Attraction field –Branch Edges  Flow Field –Extraneous Edges  Ignore

43 Joel Daniels II University of Utah GDC Group Surface Generation – Vertex Paths What is a Flow Field?

44 Joel Daniels II University of Utah GDC Group Surface Generation – Vertex Paths

45 Joel Daniels II University of Utah GDC Group Surface Generation – Vertex Paths Numerical integration can still result in errors! Assign repulsion forces to neighboring seed paths

46 Joel Daniels II University of Utah GDC Group Surface Generation – Vertex Paths

47 Joel Daniels II University of Utah GDC Group B. Mesh Generation

48 Joel Daniels II University of Utah GDC Group Surface Generation – Mesh Generation Mesh Generation –Can not have intersections –Greedy data reduction algorithm Extend  neighbor aware Three triggers –Neighborhood view-ability –Future path intersection –Curvature approximation error –Sliding down the columns registering global commits

49 Joel Daniels II University of Utah GDC Group Surface Generation – Mesh Generation Mesh Generation –Triggers cause each row to commit their location –Advance trailing points before leaders

50 Joel Daniels II University of Utah GDC Group C. Vertex Correspondence

51 Joel Daniels II University of Utah GDC Group Surface Generation – Vertex Correspondence Vertex Correspondence Algorithm 1.Compute an intermediate polyline to which each curve will morph 2.Perform knot insertion which adds extra columns into the meshes 3.Relax and slide columns of the mesh to match polyline vertices 4.Relax mesh to stress inter-surface continuity across the two surfaces

52 Joel Daniels II University of Utah GDC Group Surface Generation – Vertex Correspondence

53 Joel Daniels II University of Utah GDC Group D. 3D Mesh Creation

54 Joel Daniels II University of Utah GDC Group Surface Generation – 3D Surfaces Raise into 3D algorithm: 1.Height component from the input curves 2.Lift the skeleton polyline into 3D 3.Lift and relax the internal points 4.Smooth across the multi-knot columns for intra-surface continuity 5.Smooth across the common polyline for inter-surface continuity

55 Joel Daniels II University of Utah GDC Group Surface Generation – System Conclusion Two surfaces that combine to create the final result Develop a 3D curve morph solution Continuity Analysis –First dimension (with the curve) Continuity maintained from the input curve Not continuous near the skeletal polyline –Second dimension (time direction from curve to skeleton) C2 continuous from one curve to skeleton C1 continuous across the skeleton

56 Joel Daniels II University of Utah GDC Group III. Conclusions

57 Joel Daniels II University of Utah GDC Group Conclusion Developed two systems –Addressed the challenges in the fabrication pipeline of physical visualizations –Solutions maintain visually smooth results as much as possible

58 Joel Daniels II University of Utah GDC Group Conclusion Broader Applications –Mesh Conversion Smooth Surfaces Automotive design Animation and entertainment models CAD systems with spline surfaces –Surface Generation Morphing Hole filling

59 Joel Daniels II University of Utah GDC Group Future Work Mesh Conversion –Data segmentation Larger range of inputs –Optimized smoothing at the corners Surface Generation –Improved relaxation techniques Intra-surface continuity Parameterization and minimization of 3D undulations –Feature matching or established correspondence –Robot path planning without local minima –Larger range of input curves –Define volumes for surface to surface morphs

60 Joel Daniels II University of Utah GDC Group Special Thanks Elaine Cohen Remainder of my committee –Rich Riesenfeld and Claudio Silva Alpha1 research staff –Jim St. Germain and David Johnson Editor –Justin Polchlopek Lab mates Professor Art Olson’s Group at Scripps Family and friends

61 Joel Daniels II University of Utah GDC Group IV. Questions?

62 Joel Daniels II University of Utah GDC Group

63

64 Further Thesis Discussion Chapter 2 –Discuss related topics in higher details Show understanding of their work Chapter 4 –Prove the vector field is continuous Uniqueness Theorem is applicable –Prove the greedy neighbor aware data reduction extracts legal meshes –Additional information and clarification on inter and intra surface continuity results on the final surface

65 Joel Daniels II University of Utah GDC Group Assign a parameterization and weights

66 Joel Daniels II University of Utah GDC Group Compute twist control points satisfying constraints

67 Joel Daniels II University of Utah GDC Group Mesh Conversion – Discontinuity Analysis γ´(u) = (c 1 – c 0 ) β 0 (u) + (c 2 – c 1 ) β 1 (u) + (c 3 – c 2 ) β 2 (u) γ´(u) x L(u) = γ´(u) x R(u) γ´(u) x (L(u) – R(u)) = 0 L(u) – R(u) = [(l 0 – c 0 ) – (c 0 – r 0 )] θ 0 (u) + [(l 1 – c 1 ) – (c 1 – r 1 )] θ 1 (u) + [(l 2 – c 2 ) – (c 2 – r 2 )] θ 2 (u) + [(l 3 – c 3 ) – (c 3 – r 3 )] θ 3 (u) = 2 [(l 0 + r 0 )/2 – c 0 ] θ 0 (u) = 2 (M – c 0 ) θ 0 (u) θ 0 (u) [(M – c 0 ) x (c 1 – c 0 ) β 0 (u) + (M – c 0 ) x (c 2 – c 1 ) β 1 (u) + (M – c 0 ) x (c 3 – c 2 ) β 2 (u)] = 0 When (c 2 – c 1 ) and (c 3 – c 2 ) do not align with (c 1 – c 0 ) then the neighborhood is curved and no value of ‘M’ will satisfy the equation The algorithm aligns (M – c 0 ) with (c 1 – c 0 ) eliminating the largest contributor of the error

68 Joel Daniels II University of Utah GDC Group Surface Generation – Vertex Correspondence Vertex Correspondence Algorithm 1.Compute an intermediate shape to morph each curve towards Degree raised polyline Match independently arbitrary curve degrees 2.Insert multiple knots for matching at the vertices of the polyline 3.Relax and slide columns of the mesh to match polyline vertices 4.Relax mesh to stress inter-surface continuity across the two surfaces

69 Joel Daniels II University of Utah GDC Group Vector Field Continuity Potential Field –f = 1/d x x = 2 or 3 –Robot path planning has looked at this problem Shown that all 2 nd partial derivatives (Hessian) are continuous Flow Field and Attraction Field –Shifted cosine  g = { (s) cos( (r – d)/r ) + s, d <= r 0, otherwise –First Derivative g` = { (s/r) sin((r – d)/r)(d`), d <= r 0, otherwise –x = r  (s/r) sin( (r – r)/r ) (d`) = 0 Therefore the final field (F = ▼f + (g 1 )(v 1 ) + (g 2 )(v 2 ) + …) –First derivative continuous field as required by the uniqueness theorem


Download ppt "Joel Daniels II University of Utah GDC Group Visually Smooth Blending Surfaces for Fabrication of Physical Visualizations Joel Daniels II Master’s Thesis."

Similar presentations


Ads by Google