View
213
Download
0
Category
Preview:
Citation preview
Motion Planning for Camera Movements in Virtual Environments
Authors: D. Nieuwenhuisen, M. OvermarsPresenter: David Camarillo
Introduction Manual Navigation in VE
Difficult to do efficiently Can lead to disorientation
and motion sickness Prevents operator from
focusing on higher level task Automatic Navigation
User only need specify goal position
Smooth path generated according to cinematography
Theory of Cinematography Distance to
prevent fear of collision
Horizon maintained to prevent “drunk” view
Lower speed in sharp turns
Maximize camera speed to a bound
Visual cues as to future directions
Strategy1. Create PRM based only on position (pre-
processed)2. On query, add start (s) and goal (g) as
nodes3. Find path in roadmap with minimum time4. Smooth path (continuous)5. Compute time-trajectory (continuous)6. Shorten path by randomly connecting
nodes7. Remove near nodes for fewer segments8. Smooth viewing direction
Create Roadmap (PRM)
Nodes are spheres to maintain halo
Create random nodes Check for path to n
nearest nodes Must have collision
free cylinder On query, connect s
and g as any other node
Find Path in Roadmap with Minimum Time
Shortest distance has sharp turns that will take more time
Cost function for an edge:
Use Dijkstra’s shortest path algorithm
Time O(n log(n))
)()',()( eleeped
Smooth Path Make 1st order continuous (spatial derivative
defined) Add circular arcs A collision free arc will always exist Binary search to find largest collision free arc Collision checking of arc computationally
expensive
Compute Time-Trajectory
Max position speed should depend on curvature of path
Experimentally determined smax(r)
Want continuous trajectory, s(r) Use max acceleration and
deceleration for speed graph Backtrack deceleration to
guarantee bottom corner Accelerate maximally up to
threshold or new edge
Shorten Path We now have continuous path from PRM Since coarse map, not shortest path Test shorter paths
1) Connect two random points on path2) If collision free, add default circle arcs3) Calculate speed diagram and compare4) If improved, keep and calculate arc radii
Results in too many edges (many speed changes) Remove close nodes
Smooth Viewing Direction Want viewing direction 1st
order continuous Time derivative defined
Look at W(t+td) Continuity guaranteed Distance ahead depends on
depends on speed Sharp turns look at nearer point
Implementation Movieshttp://robotics.stanford.edu/~latombe/cs326/2004/class16/class16.htm
Video 1Video 2
Recommended