1 / 21

Topography Compensation Algorithm For Mesh Representation HVR Lab Workshop 2010 – 8 – 04

Topography Compensation Algorithm For Mesh Representation HVR Lab Workshop 2010 – 8 – 04 Presenter : Sunghoon Yim , HVR, POSTECH. Contents. Introduction Motivation Force constancy Basic TCA and its limitations TCA for Mesh Structure Issues for TCA Mesh representation

lucas
Télécharger la présentation

Topography Compensation Algorithm For Mesh Representation HVR Lab Workshop 2010 – 8 – 04

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. Topography Compensation AlgorithmFor Mesh Representation HVR Lab Workshop 2010 – 8 – 04 Presenter : SunghoonYim, HVR, POSTECH

  2. Contents • Introduction • Motivation • Force constancy • Basic TCA and its limitations • TCA for Mesh Structure • Issues for TCA • Mesh representation • Rendering algorithm • Uniform stiffness preservation • Conclusion and Future work

  3. Motivation Multi-Modal Data Perceptualization • Scanning Probe Microscope • Surface Topography and Stiffness Simultaneous Rendering of Topography and Stiffness • Incorrect perception of surface topography observed when the surface topography and stiffness vary simultaneously Trace of penalty based algorithm

  4. Force Constancy • A user maintains a constant penetration force when s/he strokes virtual surfaces in order to perceive surface topography [Choi, ACM TAP 2005]. Actual Height Difference

  5. Topography Compensation Algorithm Overview • The basic idea of TCA is to cancel out the height distortion in every haptic update interval. • We can estimate the height distortion using force constancy theorem

  6. Limitation of Topography Compensation Algorithm • Height compensation term of TCA • The algorithm is based on the force constancy. • When the directions and magnitude of user’s applied force are arbitrary changed, TCA operates abnormally. • TCA only works with an implicit surface.

  7. TCA for Mesh Structure • Polygon mesh is a typical data structure for representing surface in computer graphics, modeling, and haptics. • “TCA Mesh” can handle popular mesh models. • Main operation of TCA Mesh: • Find a CSCP for given HIP and a mesh object. • CSCP : a compensated surface contact point, an adjusted surface contact point for topography compensation. • Calculate a rendering force using the CSCP (instead SCP), HIP, and current stiffness.

  8. Issues in Developing TCA for Mesh Structure • Integrate stiffness properties to mesh structure. • Develop new TCA to work with existing haptic rendering algorithm for mesh structure. • Extend TCA to handle arbitrary user applied force

  9. Mesh Representation • A mesh is represented by a pair (K,V) • K is a simplicial complex representing the connectivity of the vertices/edges/faces. • V = {v1, ... , vm} isa set of m vertex positions defining the shape of mesh in R3 • We added haptic properties to the mesh. The mesh M is represented by a tuple ((K,V ),P ). • P = (p1, ... , pm) is a tuple of m vectors storing the vertex normal and stiffness, pn= [nnT , knT]T • Each pi is one-to-one mapping to the vi

  10. Mesh Representation (cont’d) • If mesh is not self-intersecting, every point on the face (edge and vertex) can be represented using a barycentric coordinate • Given a point pi on the surface, we can get normal vector n(pi) and stiffness k(pi) using barycentric interpolation.

  11. Rendering Algorithm Overview • Goal of given rendering loop n : • Find a CSCP q’(n) for given HIP p(n) and mesh object M. • Calculate a rendering force using CSCP (instead SCP q(n) ), HIP p(n), and current stiffness k(n). • Important points : the compensated surface contact point an avatar of the HIP constrained on a surface for force rendering the probe-tip position of a haptic interface

  12. Find SCP in Typical Haptic Rendering Algorithm • Calculation process are determined by a collision state. • Tap, when HIP hits the surface. • To find SCP, we require collision detection. • Collision point is chosen as a seed point. The rendering algorithm searches SCP. • Stroke • We choose previous SCP as a seed point

  13. Initial Condition of TCA • collision : collision flag for algorithm collision <= false • p(0) : initial HIP • c(n) : accumulated compensation vector c(0) <= 0 • q(n), SCP : q(0) <= p(0) • q’(n) : CSCP : q’(0) <= p(0) • k(n) : current stiffness : k(0) <= undefined

  14. Find CSCP in TCA • Tap, when HIP hits the surface • TCA requires collision detection between a “compensated surface” and a trajectory of HIP. • We must define the “compensated surface” • CSCP is a local closest point between “compensated surface” and HIP. • Stroke • When stiffness is changes, we can calculate a compensation vector to fix shape distortion. • CSCP is computed from the compensation vector and a tracking history during stroke.

  15. Compensated Surface • Original surface mesh : M = ((K,V ),P ) • Compensated surface of index n : Mc(n)= ((K,Vc(n)),P ),Vc(n) = {v1+c(n), ... , vm+c(n)}c(n) : accumulated compensation vector, tracking history of shape compensation

  16. Calculate CSCP for Tap • If collision = false, the algorithm find a collision point between the compensated surface Mc(n)and trajectory of HIP p(n)-p(n-1) • If the collision point is exist, the algorithm assigns collision <= true, and sets the collision point as an initial point on the Mc(n). • The algorithm searches the local closest point on Mc(n) between HIP and Mc(n).

  17. Calculated CSCP for Stroke • Given p(n) is given, the algorithm can calculate SCP q(n) and stiffness k(n). Then CSCP q’(n) = q(n) + c(n) • Compensation vector : d(n) = 0 if k(n) = k(n-1)fe(n) ( 1 / k(n) - 1/ k(n-1) ) otherwise • Accumulated compensation vector : c(n) = d(n) + a d(n)  |c(n-1)| / |d(n)|a = sgn( c(n-1)  d(n) )

  18. Uniform Stiffness Preservation • When the algorithm maintains uniform stiffness locally, the shape distortion is prevented. • We do not need a user applied force value to calculate compensation term

  19. Uniform Stiffness Preservation 2 • Compensation vector d(n) = k(n-1)(q’im(n)-p(n)) (1/k(n)-1/k(n-1))= fe(n) ( 1/k(n)-1/k(n-1))

  20. Force Calculation and Post-hoc Collision Detection • Post-hoc collision detection • if ( q’(n) – p(n) )  n(n) > 0 then collision <= true otherwise collision <= false • Rendering force • f(n) = k(n) ( q’(n) – p(n) ) if collision = true 0 otherwise

  21. Conclusion and Future work • We designed and prepared an evaluation study for TCA Mesh • We expect that TCA Mesh shows robust performance in delivering shape of non-uniform stiffness mesh object.

More Related