1 / 55

3D Euler Spirals for 3D Curve Completion

zoey
Download Presentation

3D Euler Spirals for 3D Curve Completion

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. 3D Euler Spirals for 3D Curve Completion Gur Harary Ayellet Tal Presented at the ACM Symposium on Computational Geometry (SoCG), 2010

    2. Keypoints Introduction Related work Mathematical background 3D Euler spirals definition Properties of 3D Euler spirals Curve construction algorithm Results and applications Conclusion Paper analysis

    3. Introduction A practical solution to the problem of completing curves in three dimensions Shape completion is an important tast in computational geometry. Most work has focused on completing or repairing polyhedra and CAD models. The paper presents a practical solution to the problem of completing curves in three dimensions This is shown with 2 applications, backed by real life data Shape completion is an important tast in computational geometry. Most work has focused on completing or repairing polyhedra and CAD models. The paper presents a practical solution to the problem of completing curves in three dimensions This is shown with 2 applications, backed by real life data

    4. Introduction – Paper Contribution 3D Euler spiral definition Algorithm for its computation Use of the spiral in two curve completion applications First the paper defines 3d euler spiral and proves that it satisfies desirable properties that have been claimed to produce eye-pleasing curves In particular we prove that our curves are invariant to similary transformation Are symetric Extensible (refinable) Smooth Round (if boundary conditions lie on a circle, then the curve is a circle (see next slide) Second: an algorithm without a need for parameters Third: as aboveFirst the paper defines 3d euler spiral and proves that it satisfies desirable properties that have been claimed to produce eye-pleasing curves In particular we prove that our curves are invariant to similary transformation Are symetric Extensible (refinable) Smooth Round (if boundary conditions lie on a circle, then the curve is a circle (see next slide) Second: an algorithm without a need for parameters Third: as above

    5. Given two point-tangent pairs, one way to complete is using Hermite splines [7,10] Introduction (cont’d) Given two point-tangent pairs, one way to complete is with splines. Not always good results! This is supported by psychological studies [30] Our curves are not only appealingGiven two point-tangent pairs, one way to complete is with splines. Not always good results! This is supported by psychological studies [30] Our curves are not only appealing

    6. Introduction (cont’d) Euler spirals are aesthetic curves: their curvature varies linearly with arc-length [16, 20, 21] Proposed curve: curvature and torsion changing linearly Curve fairness: shown to be closely related to how little and how smoothly a curve bends [25]Moreton and Sequin. Functional optimization for fair surface design Our Proposed curve is an extension of the planar Euler spirals, with both curvature and torsion changing linearlyCurve fairness: shown to be closely related to how little and how smoothly a curve bends [25]Moreton and Sequin. Functional optimization for fair surface design Our Proposed curve is an extension of the planar Euler spirals, with both curvature and torsion changing linearly

    7. Introduction - Applications Complete missing curves from edge detection algorithm Completion of broken archeological artifacts Completion of broken archeological artifacts (currently done manually and in 2D) Completion of broken archeological artifacts (currently done manually and in 2D)

    8. Related work Curve completion, using cubic Hermite spline: + Fast and easy to compute - Not always aesthetic

    9. Related work (cont’d) 2D Curve properties Invariance to rigid transformations Smoothness Minimization of total curvature Extensibility Ullman suggested properties that 2D curves should satisfy to be pleasing to the human eye Smoothness – tangent defined at every point Minimization of curvature – kame she pajot shinuim – slower rate of change Extensibility – for every point Xm between Xo and Xf on curve C, the curve C1 (Xo, Xm) and C2 (Xm, Xf) coincide with C, each in their own section This led to biarc solution (next slide)Ullman suggested properties that 2D curves should satisfy to be pleasing to the human eye Smoothness – tangent defined at every point Minimization of curvature – kame she pajot shinuim – slower rate of change Extensibility – for every point Xm between Xo and Xf on curve C, the curve C1 (Xo, Xm) and C2 (Xm, Xf) coincide with C, each in their own section This led to biarc solution (next slide)

    10. Biarc curves (two circular arcs) + Smooth and invariant to rigid transformations - Minimal total curvature not guaranteed - Not extensible [5] Related work (cont’d) Rigid transforms: scaling, rotating, translating Biarcs are generalized to 3D in [6, 29] Rigid transforms: scaling, rotating, translating Biarcs are generalized to 3D in [6, 29]

    11. Elastica: a curve that minimizes the total square curvature of the curve [14, 19, 24, 26] + Smoothest 2D curve, according to Horn + Extensible - Not round, nor scale-variant Related work (cont’d) S is arc length parameter and Kappa(s) is the curvature Defined for 3D in [24] In 2D this curve is the 2D euler spiral, discussed next, which has linear curvature. In 3D, the curvature of this curve is an hyperbola (already discussed in 1906!) by [4] Born. Untersuchungen uber die Stabilitat der elastichen S is arc length parameter and Kappa(s) is the curvature Defined for 3D in [24] In 2D this curve is the 2D euler spiral, discussed next, which has linear curvature. In 3D, the curvature of this curve is an hyperbola (already discussed in 1906!) by [4] Born. Untersuchungen uber die Stabilitat der elastichen

    12. Related work (cont’d) 2D Euler spirals: Discovered by Bernoulli (1694), Euler (1744) and Talbot (1890) independently Talbot used them to design railroad tracks. They found that it’s more comfy for the passengers when the acceleration changes linearly Also known as Cornu spirals (after cornu who plotted them) and Clothoid (after clothoid who wove the thread of humanity)Talbot used them to design railroad tracks. They found that it’s more comfy for the passengers when the acceleration changes linearly Also known as Cornu spirals (after cornu who plotted them) and Clothoid (after clothoid who wove the thread of humanity)

    13. 2D Euler spirals Defined as the curves that penalize curvature variation Closer to how the human eye interpolates, according to [30] Ks is derivative of Kappa (curvature) Outperforms parabolic and circular curvesKs is derivative of Kappa (curvature) Outperforms parabolic and circular curves

    15. 3D Euler spirals [13] presents an attempt to generalize Euler spirals to 3D Uses polygon refinement (result is discrete) Ignores torsion A given polygon is refined, such that the polygon satisfies both arc-length parameterization and linear distribution of the discrete curvature binormal vector. The algorithm ignores the torsion, despite being an important characteristic of 3D curves.A given polygon is refined, such that the polygon satisfies both arc-length parameterization and linear distribution of the discrete curvature binormal vector. The algorithm ignores the torsion, despite being an important characteristic of 3D curves.

    16. Proposed 3D Euler spiral Continous rather than discrete Takes both curvature and torsion into account Does not require an initial polygon Satisfies properties of fairness Reduces to 2D Euler in planar case Conforms to 2D spiral (when torsion is 0) Properties: invariance to transformations Symetry (exchange of endpoints gives same curve) Extensibility (C = C1 + C2) x0 -> xm -> xf Smoothness (C-infinity smooth) RoundnessConforms to 2D spiral (when torsion is 0) Properties: invariance to transformations Symetry (exchange of endpoints gives same curve) Extensibility (C = C1 + C2) x0 -> xm -> xf Smoothness (C-infinity smooth) Roundness

    17. Keypoints Introduction Related work Mathematical background 3D Euler spirals definition Properties of 3D Euler spirals Curve construction algorithm Results and applications Conclusion Paper analysis

    18. Mathematical Background Frenet-Serret Equations A spatial curve C(s) is determined by its curvature K(s) and torsion tau(s). Intuitively, a curve can be obtained from a straight line by bending (curvature) and twisting (torsion) These equations will be needed to derive the 3D Euler spirals Given a curvature Kappa(s) > 0 and a torsion Tau(s), according to the fundamental theorem of the local theory of curves [9], there exists a unique (up to rigid motion) spatial curve, parameterized by the arc-length s, defined by its Frenet-Serret equationsA spatial curve C(s) is determined by its curvature K(s) and torsion tau(s). Intuitively, a curve can be obtained from a straight line by bending (curvature) and twisting (torsion) These equations will be needed to derive the 3D Euler spirals Given a curvature Kappa(s) > 0 and a torsion Tau(s), according to the fundamental theorem of the local theory of curves [9], there exists a unique (up to rigid motion) spatial curve, parameterized by the arc-length s, defined by its Frenet-Serret equations

    19. Mathematical Background Frenet-Serret Equations The curve is defined by: Given a curvature Kappa(s) > 0 and a torsion Tau(s), according to the fundamental theorem of the local theory of curves [9], there exists a unique (up to rigid motion) spatial curve, parameterized by the arc-length s, defined by its Frenet-Serret equationsGiven a curvature Kappa(s) > 0 and a torsion Tau(s), according to the fundamental theorem of the local theory of curves [9], there exists a unique (up to rigid motion) spatial curve, parameterized by the arc-length s, defined by its Frenet-Serret equations

    20. Math Background Euler-Lagrange Equation Useful for solving optimization problems Given some functional, one seeks the function that optimizes it. q satisfies the Euler-Lagrange equations: The function q that optimizes this functional given above, satisfies the Euler-Lagrange equations:The function q that optimizes this functional given above, satisfies the Euler-Lagrange equations:

    21. 3D Euler spiral definition Intuition: a functional that penalizes change in curvature and torsion along the curve. Minimize the following integral: L is curve length, Ks derivate of curvature, Ts derivative of torsion. In planar case T = 0, conforming to 2D spiralL is curve length, Ks derivate of curvature, Ts derivative of torsion. In planar case T = 0, conforming to 2D spiral

    22. 3D Euler spiral definition (cont’d) L is curve length, Ks derivate of curvature, Ts derivative of torsion. In planar case T = 0, conforming to 2D spiralL is curve length, Ks derivate of curvature, Ts derivative of torsion. In planar case T = 0, conforming to 2D spiral

    23. The corresponding equations are: Integrating twice: 3D Euler spiral definition (cont’d) we have shown that the curve that minimizes our functional (Equation (5)) is a curve whose curvature and torsion change linearly along the curve Because of this it is a special case of Bertrand curves [12] Graustein. Differential Geometry. But this doesn’t help deriving the properties nor provides a method for constructing them we have shown that the curve that minimizes our functional (Equation (5)) is a curve whose curvature and torsion change linearly along the curve Because of this it is a special case of Bertrand curves [12] Graustein. Differential Geometry. But this doesn’t help deriving the properties nor provides a method for constructing them

    24. Curve and conditions that satisfy equation 6 3D Euler spiral definition (cont’d) Given initial conditions: a point xo, a tangent To at xo and a normal No the curve is defined by: 1 is definition of tangent 2-4 Frenet serret equations 5 Initial conditionsGiven initial conditions: a point xo, a tangent To at xo and a normal No the curve is defined by: 1 is definition of tangent 2-4 Frenet serret equations 5 Initial conditions

    25. This proves the existence of the curve and uniqueness up to a rigid transformation By definition of the curvature of curves in R3, K(S) = abs(d2C/ds2) >= 0 According to fundamental theorem of local theory of curves, for every diff function with K(s)>0 and tau(s0 Exists a regular parametrized curve, where k(s) is curvature and t(s) is torsion, and s is the arc length parameter [9] Any other curve satisfying the same condtions differs by a rigid motion If k(s) = 0, the curve is a straight line, which is unique up to transfrom This proves the existence of the curve and uniqueness up to a rigid transformation By definition of the curvature of curves in R3, K(S) = abs(d2C/ds2) >= 0 According to fundamental theorem of local theory of curves, for every diff function with K(s)>0 and tau(s0 Exists a regular parametrized curve, where k(s) is curvature and t(s) is torsion, and s is the arc length parameter [9] Any other curve satisfying the same condtions differs by a rigid motion If k(s) = 0, the curve is a straight line, which is unique up to transfrom

    26. Keypoints Introduction Related work Mathematical background 3D Euler spirals definition Properties of 3D Euler spirals Curve construction algorithm Results and applications Conclusion Paper analysis

    27. Properties of 3D Euler spirals Invariance to similarity transformations Symmetry Extensibility Smoothness Roundness Symmetry: The curve leaving the point x0 with tangent ~ T0 and reaching the point xf with tangent ~ Tf , coincides with the curve leaving the point xf with tangent ~ Tf and reaching the point x0 with tangent ~ T0. Extensibility: For every point xm E C between points x0 and xf , the curves C1 between x0 and xm and C2 between xm and xf coincide with C, each in its own section Smoothness: The tangent is defined at every point, i.e., @C/@s is finite. (In fact, our curves are C-inf smooth.) Roundness: If C interpolates two point-tangent pairs lying on a circle, then C is a circle. The importance of this property is demonstrated in Figures 1,6{7, where our spirals are both appealing and correct, since the boundary conditions indicate completion by a circular arc. The paper then proceeds to prove each of this point. I’ll show one of these proofs (first one, invariance to scaling)Symmetry: The curve leaving the point x0 with tangent ~ T0 and reaching the point xf with tangent ~ Tf , coincides with the curve leaving the point xf with tangent ~ Tf and reaching the point x0 with tangent ~ T0. Extensibility: For every point xm E C between points x0 and xf , the curves C1 between x0 and xm and C2 between xm and xf coincide with C, each in its own section Smoothness: The tangent is defined at every point, i.e., @C/@s is finite. (In fact, our curves are C-inf smooth.) Roundness: If C interpolates two point-tangent pairs lying on a circle, then C is a circle. The importance of this property is demonstrated in Figures 1,6{7, where our spirals are both appealing and correct, since the boundary conditions indicate completion by a circular arc. The paper then proceeds to prove each of this point. I’ll show one of these proofs (first one, invariance to scaling)

    28. Properties of 3D Euler spirals 1) Invariance to similarity transformations (translation, rotation and scaling) Translation/rotation results from Proposition 4.1 Scale is proven in paper (need to show that C_lambda(s)=lambda*C(s) -> meaning same curve just multiplied by factor)Translation/rotation results from Proposition 4.1 Scale is proven in paper (need to show that C_lambda(s)=lambda*C(s) -> meaning same curve just multiplied by factor)

    29. Properties of 3D Euler spirals 2) Symmetry The curve leaving the point x0 with tangent T0 and reaching the point xf with tangent Tf , coincides with the curve leaving the point xf with tangent -Tf and reaching the point x0 with tangent -T0. Symmetry: The curve leaving the point x0 with tangent ~ T0 and reaching the point xf with tangent ~ Tf , coincides with the curve leaving the point xf with tangent ~ Tf and reaching the point x0 with tangent ~ T0. Proof in appendixSymmetry: The curve leaving the point x0 with tangent ~ T0 and reaching the point xf with tangent ~ Tf , coincides with the curve leaving the point xf with tangent ~ Tf and reaching the point x0 with tangent ~ T0. Proof in appendix

    30. Properties of 3D Euler spirals 3) Extensibility For every point xm E C between points x0 and xf , the curves C1 between x0 and xm and C2 between xm and xf coincide with C, each in its own section Extensibility: For every point xm E C between points x0 and xf , the curves C1 between x0 and xm and C2 between xm and xf coincide with C, each in its own section Proof in appendixExtensibility: For every point xm E C between points x0 and xf , the curves C1 between x0 and xm and C2 between xm and xf coincide with C, each in its own section Proof in appendix

    31. Properties of 3D Euler spirals 4) Smoothness The tangent is defined at every point, i.e., is finite. (In fact, our curves are smooth.) Smoothness: The tangent is defined at every point, i.e., @C/@s is finite. (In fact, our curves are C-inf smooth.) According to proposition 4.1, there is a solution for the Frenet Serret equations. Therefore dC/ds = T(s) is defined for every s (0,L)Smoothness: The tangent is defined at every point, i.e., @C/@s is finite. (In fact, our curves are C-inf smooth.) According to proposition 4.1, there is a solution for the Frenet Serret equations. Therefore dC/ds = T(s) is defined for every s (0,L)

    32. Properties of 3D Euler spirals 5) Roundness If C interpolates two point-tangent pairs lying on a circle, then C is a circle Roundness: If C interpolates two point-tangent pairs lying on a circle, then C is a circle. The importance of this property is demonstrated in Figures 1,6{7, where our spirals are both appealing and correct, since the boundary conditions indicate completion by a circular arc. Proof: given two point tangent pairs lying on a circle, the circle defined by K(s) = const, Tau(s)=0 is solution for the Frenet Serret equationRoundness: If C interpolates two point-tangent pairs lying on a circle, then C is a circle. The importance of this property is demonstrated in Figures 1,6{7, where our spirals are both appealing and correct, since the boundary conditions indicate completion by a circular arc. Proof: given two point tangent pairs lying on a circle, the circle defined by K(s) = const, Tau(s)=0 is solution for the Frenet Serret equation

    33. Curve construction algorithm In practice we are given a start and end point and their tangents (xo, To) (xf, Tf) We must find the parameters that define the 3D spiral that starts at xo, To, and minimizes the difference between C(s=L) and xf Attemp to minimize this error Other weights of Ex and Et were experimented, but were not proven benificial Attemp to minimize this error Other weights of Ex and Et were experimented, but were not proven benificial

    34. Algorithm (using Gradient-descent approach) Guarantees convergence to a local minimum:Guarantees convergence to a local minimum:

    35. Algorithm (using Gradient-descent approach) Initialized with planar Euler spiral Torsion parameters are zero Define the plane with xo, xf and To (2 vectors, To and xo-xf) Since it lies on a plane, torsion (tau_0 and lambda) are 0 Our Experiments show this is good approx to kappa_0 and gamma, they hardly change afterwards Other init methods (3d biarc, hermite) proved less succesfulDefine the plane with xo, xf and To (2 vectors, To and xo-xf) Since it lies on a plane, torsion (tau_0 and lambda) are 0 Our Experiments show this is good approx to kappa_0 and gamma, they hardly change afterwards Other init methods (3d biarc, hermite) proved less succesful

    36. Algorithm (using Gradient-descent approach) Curve is set of diff equation, cannot find gradient explicitly Instead the parameters are modified by +-Delta, comparing the spirals that result from changing one parameter And all parameters, and choose the one with minimum error E. Each candidate is solved numerically with Frenet Serret equations, by taking uniform values of s of the curve and solving the equations at these points, Using the euler method (only needs the preceding point)Curve is set of diff equation, cannot find gradient explicitly Instead the parameters are modified by +-Delta, comparing the spirals that result from changing one parameter And all parameters, and choose the one with minimum error E. Each candidate is solved numerically with Frenet Serret equations, by taking uniform values of s of the curve and solving the equations at these points, Using the euler method (only needs the preceding point)

    37. Algorithm (using Gradient-descent approach) Step size is modified. If the error E is smaller than before, it’s unchanged, otherwise it’s decreased to ľ delta Then parameters are updated. If delta didn’t change, the parameters that determined the gradient direction are updated according to the chosen direction Bound on L: since curve is spiral can have multiple revolutions. At most should need one for the input we have Aproximate the max length with with the length of spiral whose tangent angle is Theta(s)=…+theta_0Step size is modified. If the error E is smaller than before, it’s unchanged, otherwise it’s decreased to ľ delta Then parameters are updated. If delta didn’t change, the parameters that determined the gradient direction are updated according to the chosen direction Bound on L: since curve is spiral can have multiple revolutions. At most should need one for the input we have Aproximate the max length with with the length of spiral whose tangent angle is Theta(s)=…+theta_0

    38. Algorithm (using Gradient-descent approach) In our experiments, delta starts at 0.1 until delta < 1e-5 or error < 1e-6 Smaller values don’t give much of a differenceIn our experiments, delta starts at 0.1 until delta < 1e-5 or error < 1e-6 Smaller values don’t give much of a difference

    39. Implementation issues Candidate curves are calculated numerically solving F-S equations and can be expensive Too many samples ? Long computation time Too few ? Accuracy problems To accelerate computation, the region of interest is scaled to the box (-1, -1, -1), (1,1,1) prior to algorithm, then scaled back Proposition 5.1 allows us to scale back and forth In practice problem is translated by –x0 Then scaled by D = max(deltax, deltay, deltaz) Deltax=xf-xo Then 100 samples are used along the curveProposition 5.1 allows us to scale back and forth In practice problem is translated by –x0 Then scaled by D = max(deltax, deltay, deltaz) Deltax=xf-xo Then 100 samples are used along the curve

    40. Keypoints Introduction Related work Mathematical background 3D Euler spirals definition Properties of 3D Euler spirals Curve construction algorithm Results and applications Conclusion Paper analysis

    41. Results and Applications Complete missing curves from edge detection algorithm Completion of broken archeological artifacts (currently done manually and in 2D)

    42. Results and applications Incomplete curves from edge detection Entire model is given, but edge detection generates incomplete curves. The user only chooses endpoints, since the tangent can be automatically computed from the existing lines at the endpoints. Red is ours, Green is Hermite splines Remark on S shapesEntire model is given, but edge detection generates incomplete curves. The user only chooses endpoints, since the tangent can be automatically computed from the existing lines at the endpoints. Red is ours, Green is Hermite splines Remark on S shapes

    43. Results and applications (cont’d) Incomplete curves from edge detection Red is ours, Green is Hermite splines Remark on circular arcsRed is ours, Green is Hermite splines Remark on circular arcs

    44. Results and applications (cont’d) Incomplete curves from edge detection Red is ours, Green is Hermite splines Remark on S shapes Hermite splines depend on magnitude of tangent, so automatic scaling is used Curves should lie on the surface here, so the produced 3D curves are projected to the surface This is done by projecting each point on the curve to its closest point on the mesh Though straightforward, it yields good results Red is ours, Green is Hermite splines Remark on S shapes Hermite splines depend on magnitude of tangent, so automatic scaling is used Curves should lie on the surface here, so the produced 3D curves are projected to the surface This is done by projecting each point on the curve to its closest point on the mesh Though straightforward, it yields good results

    45. Results and applications (cont’d) Shape illustration in archeology

    46. Results and applications (cont’d) Shape illustration in archeology

    47. Results and applications (cont’d) Shape illustration in archeology

    48. Running time Implemented in Matlab and C Tested on a 2 Ghz Intel Core 2 Duo processor with 2 Gb RAM Running time, depending on the complexity, is 0.01-0.5 second for the curves in the paper The further the curve from being planar, the longer the time required Probably due to initializing torsion to 0 Size of model has little to do The projection is quick and straightforwardProbably due to initializing torsion to 0 Size of model has little to do The projection is quick and straightforward

    49. Conclusion Extension of 2D Euler spiral to 3D Satisfies aesthetic properties Presents a novel technique for generating the curves, based on gradient-descent approach The utility is shown in two applications: edge completion and for incomplete artifact illustration Propertis: invariance to transform Symettry Extensibility Smoothness Roundness Gradient descent: given boundary conditionsPropertis: invariance to transform Symettry Extensibility Smoothness Roundness Gradient descent: given boundary conditions

    50. Future work Prove the existence of the curves given point-tangent boundary conditions An algorithm in 2D was established in [16] and proven in [34]

    51. Paper analysis Is the paper clearly written? The paper is well written: every point is explained and referenced

    52. Paper analysis Is it self-contained? It is self-contained: none of the references were necessary to understand the paper.

    53. Paper analysis How novel is the solution? The novel part is the consideration of torsion as an important factor. The rest is very much inspired by the previous work The novel part is considering torsion for the 3d case. The rest is very much inspired by the previous work (using euler curves for completion, The novel part is considering torsion for the 3d case. The rest is very much inspired by the previous work (using euler curves for completion,

    54. Paper analysis Is the solution technically sound? The solution is technically sound and should be reproducible: the algorithm is well explained, up to the parameters the author found that yield better results

    55. Paper analysis How well is the solution evaluated? The correctness of the solution is more in the eye of the observer No cases where Hermite splines give similar results to 3D Euler spirals are shown… are there any? The correctness of the solution is more in the eye of the observer, since this is a problem in aesthetics, but then again so are most of the problems in shape analysis Even though a study was already done for 2D euler curves, this is an extension to the definition, and a comparative study to other methods could be doneThe correctness of the solution is more in the eye of the observer, since this is a problem in aesthetics, but then again so are most of the problems in shape analysis Even though a study was already done for 2D euler curves, this is an extension to the definition, and a comparative study to other methods could be done

More Related