overview overview
play

Overview Overview Motivation Motivation Collision detection - PDF document

Overview Overview Motivation Motivation Collision detection Collision detection Classification Classification Query type Query type Alan Liu Alan Liu Algorithms Algorithms aliu@simcen.usuhs.mil


  1. Overview Overview � Motivation Motivation Collision detection Collision detection � � Classification Classification � � Query type Query type � Alan Liu Alan Liu � Algorithms Algorithms � aliu@simcen.usuhs.mil aliu@simcen.usuhs.mil � Examples Examples � � Research directions Research directions � Surgical Simulation Laboratory Surgical Simulation Laboratory National Capital Area Medical Simulation Center National Capital Area Medical Simulation Center Uniformed Services University of the Health Sciences Uniformed Services University of the Health Sciences http://simcen.usuhs.mil/m http://simcen.usuhs.mil/mmvr2002 mvr2002 A Tutorial on Surgical Simulation: Past, Present, and Future – MMVR 2002 Motivation Brute force collision detection Motivation Brute force collision detection � Surgical simulation Surgical simulation � Check for collisions Check for collisions � � involves a complex involves a complex between everything and between everything and interaction between everything else! interaction between everything else! – Tool and tissue – Tool and tissue � Includes Includes � – Tissue and tissue Tissue and tissue – – Self collision Self collision – – Tool and tool Tool and tool – – – Tool Tool- -tissue collision tissue collision � Interactions can mean Interactions can mean � – – tissue tissue- -tissue collision tissue collision – Physical contact – Physical contact � Too much, need to prune Too much, need to prune � – Penetration (piercing, – Penetration (piercing, list of objects/polygons to list of objects/polygons to Image by Daigo Tanaka cutting) cutting) test test – Proximity (thermal tool too – Proximity (thermal tool too close to sensitive tissue) close to sensitive tissue) A Tutorial on Surgical Simulation: Past, Present, and Future – MMVR 2002 A Tutorial on Surgical Simulation: Past, Present, and Future – MMVR 2002 Brute force collision detection Brute force collision detection Collision detection Collision detection � Check for collisions Check for collisions � Must be performed Must be performed � � between everything and between everything and rapidly rapidly everything else! everything else! – – For realistic visual and For realistic visual and � Includes Includes � haptic responses haptic responses – – Self collision Self collision � Types of collisions Types of collisions � – Tool Tool- -tissue collision tissue collision – – Tool/tool Tool/tool – – tissue tissue- -tissue collision tissue collision – – – Tool/tissue Tool/tissue � Too much, need to prune Too much, need to prune � list of objects/polygons to list of objects/polygons to Image by Daigo Tanaka – – Tissue/tissue Tissue/tissue Image by Daigo Tanaka test test � Tissues can deform! Tissues can deform! � A Tutorial on Surgical Simulation: Past, Present, and Future – MMVR 2002 A Tutorial on Surgical Simulation: Past, Present, and Future – MMVR 2002 1

  2. Detecting collision between Detecting collision between Bounding volumes Bounding volumes polyhedra polyhedra � Feature Feature- -based algorithms based algorithms � Distant objects don’t intersect Distant objects don’t intersect � � – – Ignore Ignore – Features can be vertices, lines, or faces. – Features can be vertices, lines, or faces. � Need fast way to determine if objects are distant Need fast way to determine if objects are distant � – – Examples Examples � Use two level approach Use two level approach � » Lin » Lin- -Canny algorithm Canny algorithm – – Prune uninteresting objects Prune uninteresting objects » » V V- -Clip Clip » Too far away Too far away » � Linear programming methods Linear programming methods � » No colliding for next “n” time steps » No colliding for next “n” time steps – – Gilbert, Johnson and Kerrthi Algorithm Gilbert, Johnson and Kerrthi Algorithm – Check for collision between likely objects only Check for collision between likely objects only – » GJK and enhanced GJK » GJK and enhanced GJK » » Check between polytopes Check between polytopes » » Check specific polygons between objects. Check specific polygons between objects. A Tutorial on Surgical Simulation: Past, Present, and Future – MMVR 2002 A Tutorial on Surgical Simulation: Past, Present, and Future – MMVR 2002 Popular pruning methods Spheres Popular pruning methods Spheres � Bound objects by Bound objects by � Bounding volumes Bounding volumes � � spheres spheres – – Spheres Spheres r 2 � Fast, easy to compute Fast, easy to compute – Boxes Boxes � – � Can be too Can be too » » Static partition Static partition � conservative conservative » Axis aligned bounding boxes » Axis aligned bounding boxes d » Separating Axis Theorem Separating Axis Theorem » – – Too many false Too many false � Hierarchy of volumes Hierarchy of volumes positives if object is positives if object is � r long and thin/flat long and thin/flat 1 – Octrees – Octrees – But see But see Intersect if – – Sphere trees – Sphere trees [HUBBARD93] and [HUBBARD93] and < + d r r – OBBTrees OBBTrees [HUBBARD96] [HUBBARD96] 1 2 – A Tutorial on Surgical Simulation: Past, Present, and Future – MMVR 2002 A Tutorial on Surgical Simulation: Past, Present, and Future – MMVR 2002 Axis Aligned Bounding Boxes Axis Aligned Bounding Boxes Axis Aligned Bounding Boxes Axis Aligned Bounding Boxes (AABB) (AABB) (AABB) (AABB) � I I- -Collide algorithm Collide algorithm � Inefficient for long Inefficient for long � � [COHEN95] [COHEN95] thin objects at thin objects at – – Boxes intersect if and Boxes intersect if and arbitrary orientations arbitrary orientations only if projections to only if projections to � Need to keep Need to keep � coordinate axes coordinate axes recomputing bounding recomputing bounding intersect intersect boxes for boxes for – Uses temporal Uses temporal – – – rotating objects rotating objects coherence coherence » Detects all possible Detects all possible – – deforming objects deforming objects » intersections in intersections in expected linear time expected linear time A Tutorial on Surgical Simulation: Past, Present, and Future – MMVR 2002 A Tutorial on Surgical Simulation: Past, Present, and Future – MMVR 2002 2

Recommend


More recommend