a stochastic approach for collision detection in a highly deformable surface laks raghupati, vincent...

Post on 29-Jan-2016

215 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

A stochastic approach for collision detection

in a highly deformable surface

Laks Raghupati, Vincent Cantin, François Faure, Marie-Paule Cani

EVASION-GRAVIR (CNRS,INRIA,INPG,UJF)

Collaboration with IRCAD, Strasbourgand LIFL, Lille

Motivation

Minimally invasivesurgery training

One camera

Two actuators

Challenges:

(Tissue and fluid modeling)

Highly colliding bodies

Real-time simulation

Previous work

Real-time volumetric deformation● [Cotin00], [Debunne01], [James99,02],[Meseure00],

[Pincibono02],[Muller02]

Collision detection● Sphere trees [Palmer95],[Bradshaw02]● Delaunay triangulations [Cohen95]● OBB-trees [Gottschalk96]● AABB-trees [van den Bergen97]● Temporal coherency [Lin 92]

Medical context

Operate on colon

Need first to push the small intestine apart

The mesentery

Not a well-defined geometric object

A lot of self-collisions

A model of intestine and mesentery

Topology: rectangular mesh with diagonals

Initial shape

Collision-free

Intestine developedon a cylinder

Attachement = axis

Intestine

Mechanical model

Mass-spring system with edge-edge collisions

Collision detection

Typically 70-90 % CPU time

Lot of previous work (grids, space-based hierarchies, object-based hierarchies...)

We want to control the computation time

Use time coherency

Manage a set of active pairs

Closest features

Local minimaof distance(edge pairs)

Initialized randomly

Updated at each time step

Distance update

Visit the neighboring pairs• Line-line: 3*3 distance computations• Line-surface: 3*11 • Surface-surface: 11*11

Reducing the number of distance computations

Ignore mesentery-mesentery collisions

Possible in this context

Update one edge then the other

n+m computations instead of n*m

Further optimizations ?

Managing the set of active pairs

At each frame:

Pick n pairs randomly

Update each pair (local minimas)

Delete redundant pairs

Delete pairs with distance > D

Tune computation time using n and D

Tests

Stochastic vs O(n²)

Propagation

The method (hopefully) finds one colliding pair per colliding region

Collisions are recursively searched starting from the colliding pair

The propagation is expensive● Use a hash map to tag the edge pairs already

explored● Apply heuristics to reduce the search

Computation time

Stochastic vs O(n²)

Needs comparisons with other methods

Number of segmentsComputation time (ms)

O(n²) Stochastic50 30 10100 120 17200 473 27

Application

400 particles

30 fps

Nicer rendering using harware skinning and texture mapping

Demo

Conclusion

Collision detection for highly deformable objects www-imagis.imag.fr/Membres/Francois.Faure/papers/intestine

Tune the computation time

Future work● Triangle-triangle collisions (Matthieu Nesme)● Better heuristics (Matthieu Nesme)

• Search and propagation• Criteria for deleting: distance, velocity

● Comparison with other approaches• Hierarchical k-dops (Stefan Kimmerle)

● Toward a realistic surgery simulator

top related