Proximity Computations between Noisy Point Clouds using Robust Classification 1 Jia Pan, 2 Sachin Chitta, 1 Dinesh Manocha 1 UNC Chapel Hill 2 Willow Garage.

Slides:



Advertisements
Similar presentations
Reactive and Potential Field Planners
Advertisements

A Robust Super Resolution Method for Images of 3D Scenes Pablo L. Sala Department of Computer Science University of Toronto.
Christian Lauterbach COMP 770, 2/16/2009. Overview  Acceleration structures  Spatial hierarchies  Object hierarchies  Interactive Ray Tracing techniques.
Complete Motion Planning
Probabilistic Roadmaps. The complexity of the robot’s free space is overwhelming.
Motion Planning for Point Robots CS 659 Kris Hauser.
Linear Classifiers (perceptrons)
Collision Detection CSCE /60 What is Collision Detection?  Given two geometric objects, determine if they overlap.  Typically, at least one of.
KinectFusion: Real-Time Dense Surface Mapping and Tracking
A vision-based system for grasping novel objects in cluttered environments Ashutosh Saxena, Lawson Wong, Morgan Quigley, Andrew Y. Ng 2007 Learning to.
By Lydia E. Kavraki, Petr Svestka, Jean-Claude Latombe, Mark H. Overmars Emre Dirican
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Reciprocal Velocity Obstacles for Real-Time Multi-Agent Navigation Jur van den Berg Ming Lin Dinesh Manocha.
Motion planning, control and obstacle avoidance D. Calisi.
DESIGN OF A GENERIC PATH PATH PLANNING SYSTEM AILAB Path Planning Workgroup.
Iterative Relaxation of Constraints (IRC) Can’t solve originalCan solve relaxed PRMs sample randomly but… start goal C-obst difficult to sample points.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Fast C-obstacle Query Computation for Motion Planning Liang-Jun Zhang 12/13/2005 Liang-Jun Zhang 1 Young.
Robotic Mapping: A Survey Sebastian Thrun, 2002 Presentation by David Black-Schaffer and Kristof Richmond.
1 Single Robot Motion Planning - II Liang-Jun Zhang COMP Sep 24, 2008.
Planning Paths for Elastic Objects Under Manipulation Constraints Florent Lamiraux Lydia E. Kavraki Rice University Presented by: Michael Adams.
Adapted from: CULLIDE: Interactive Collision Detection Between Complex Models in Large Environments using Graphics Hardware Naga K. Govindaraju, Stephane.
CS 326 A: Motion Planning robotics.stanford.edu/~latombe/cs326/2004/index.htm Collision Detection and Distance Computation.
UNC Chapel Hill M. C. Lin Overview of Last Lecture About Final Course Project –presentation, demo, write-up More geometric data structures –Binary Space.
Robot Motion Planning Bug 2 Probabilistic Roadmaps Bug 2 Probabilistic Roadmaps.
Chapter 5: Path Planning Hadi Moradi. Motivation Need to choose a path for the end effector that avoids collisions and singularities Collisions are easy.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Constraint-Based Motion Planning using Voronoi Diagrams Maxim Garber and Ming C. Lin Department of Computer.
The University of North Carolina at CHAPEL HILL A Simple Path Non-Existence Algorithm using C-obstacle Query Liang-Jun Zhang.
CS 326A: Motion Planning ai.stanford.edu/~latombe/cs326/2007/index.htm Collision Detection and Distance Computation.
Providing Haptic ‘Hints’ to Automatic Motion Planners Providing Haptic ‘Hints’ to Automatic Motion Planners by Burchan Bayazit Department of Computer Science.
Review Rong Jin. Comparison of Different Classification Models  The goal of all classifiers Predicating class label y for an input x Estimate p(y|x)
Geometric Probing with Light Beacons on Multiple Mobile Robots Sarah Bergbreiter CS287 Project Presentation May 1, 2002.
A Randomized Approach to Robot Path Planning Based on Lazy Evaluation Robert Bohlin, Lydia E. Kavraki (2001) Presented by: Robbie Paolini.
Multi-Layered Navigation Meshes Wouter G. van Toll, Atlas F. Cook IV, Roland Geraerts ICT.OPEN 2011.
A Navigation Mesh for Dynamic Environments Wouter G. van Toll, Atlas F. Cook IV, Roland Geraerts CASA 2012.
Using Incomplete Online Metric Maps for Topological Exploration with the Gap Navigation Tree Liz Murphy and Paul Newman Mobile Robotics Research Group,
1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.
Constraints-based Motion Planning for an Automatic, Flexible Laser Scanning Robotized Platform Th. Borangiu, A. Dogar, A. Dumitrache University Politehnica.
World space = physical space, contains robots and obstacles Configuration = set of independent parameters that characterizes the position of every point.
Simultaneous Localization and Mapping Presented by Lihan He Apr. 21, 2006.
Mapping and Localization with RFID Technology Matthai Philipose, Kenneth P Fishkin, Dieter Fox, Dirk Hahnel, Wolfram Burgard Presenter: Aniket Shah.
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars.
NUS CS5247 Deadlock-Free and Collision-Free Coordination of Two Robot Manipulators By Patrick A. O’Donnell and Tomás Lozano-Pérez MIT Artificial Intelligence.
Quick-CULLIDE: Efficient Inter- and Intra- Object Collision Culling using Graphics Hardware Naga K. Govindaraju, Ming C. Lin, Dinesh Manocha University.
Collision and Proximity Queries Dinesh Manocha Department of Computer Science University of North Carolina
Heterogeneous Porosity Modeling Craig Schroeder May 13, 2004.
1 Distributed and Optimal Motion Planning for Multiple Mobile Robots Yi Guo and Lynne Parker Center for Engineering Science Advanced Research Computer.
Controlling a Virtual Camera Ross Ptacek University of Alabama Birmingham.
Peter Henry1, Michael Krainin1, Evan Herbst1,
Learning to Navigate Through Crowded Environments Peter Henry 1, Christian Vollmer 2, Brian Ferris 1, Dieter Fox 1 Tuesday, May 4, University of.
UNC Chapel Hill M. C. Lin Introduction to Motion Planning Applications Overview of the Problem Basics – Planning for Point Robot –Visibility Graphs –Roadmap.
Robotics Club: 5:30 this evening
Real-time motion planning for Manipulator based on Configuration Space Chen Keming Cis Peking University.
Stable 6-DOF Haptic Rendering with Inner Sphere Trees René Weller, Gabriel Zachmann Clausthal University, Germany IDETC/CIE.
Fast SLAM Simultaneous Localization And Mapping using Particle Filter A geometric approach (as opposed to discretization approach)‏ Subhrajit Bhattacharya.
CULLIDE: Interactive Collision Detection Between Complex Models in Large Environments using Graphics Hardware Presented by Marcus Parker By Naga K. Govindaraju,
Planning Tracking Motions for an Intelligent Virtual Camera Tsai-Yen Li & Tzong-Hann Yu Presented by Chris Varma May 22, 2002.
DISCRIMINATIVELY TRAINED DENSE SURFACE NORMAL ESTIMATION ANDREW SHARP.
Interactive Continuous Collision Detection for Polygon Soups Xin Huang 11/20/2007.
UNC Chapel Hill David A. O’Brien Automatic Simplification of Particle System Dynamics David O’Brien Susan Fisher Ming C. Lin Department of Computer Science.
On the Optimality of the Simple Bayesian Classifier under Zero-One Loss Pedro Domingos, Michael Pazzani Presented by Lu Ren Oct. 1, 2007.
Shape2Pose: Human Centric Shape Analysis CMPT888 Vladimir G. Kim Siddhartha Chaudhuri Leonidas Guibas Thomas Funkhouser Stanford University Princeton University.
The Chinese University of Hong Kong Learning Larger Margin Machine Locally and Globally Dept. of Computer Science and Engineering The Chinese University.
Fast Collision Detection for Deformable Models using Representative-Triangles Presented by Marcus Parker By Sean Curtis, Rasmus Tamstorf and Dinesh Manocha.
CS b659: Intelligent Robotics
Schedule for next 2 weeks
Faster Sample-based Motion Planning using Instance-based Learning
Image Segmentation.
Configuration Space of an Articulated Robot
MIRA, SVM, k-NN Lirong Xia. MIRA, SVM, k-NN Lirong Xia.
open research problems
Presentation transcript:

Proximity Computations between Noisy Point Clouds using Robust Classification 1 Jia Pan, 2 Sachin Chitta, 1 Dinesh Manocha 1 UNC Chapel Hill 2 Willow Garage

Main Result Proximity computation and collision detection algorithm between noisy point cloud data Computes collision probability instead of simple yes-no result Important for safety and feasibility of robotics applications

Proximity and Collision Computations Geometric reasoning with noisy point cloud data vs. mesh based representations Integral part of motion planning and grasping algorithms Contact computations for dynamic simulation

Background

Motion Planning: Assumptions Motion planning has a long history (30+ years) Assumptions – Exact environment (mesh world) – Exact control – Exact localization – No joint limit and torque limit – No quality control Output: – Collision-free path

Environment Uncertainty Uncertainty can be large due to sensor error, poor sampling, physical representations, etc. Need to model order to improve the safety and robustness of motion planning Relative less work – Previous methods only consider 2D cases with specific assumptions on uncertainty

Sensors Robot uses sensors to compute a representation of the physical world But sensors are not perfect or may not be very accurate….

Robot Sensors: Data Collection Cameras: may have low resolution

Robot Sensors: Data Collection Laser Scanners: may have limited range

Point Clouds Captured by Robot

Recent Trend: Depth Cameras Primesense Pr2’s Camcube Swissranger 4000 Kinect

Kinect Reconstruction

Uncertainty From RGB-D Sensors Sensors may have low resolution  low resolution of point clouds – Kinect has relatively high resolution, but may still be not enough for objects far away Sensors may be influenced by noise, especially in outdoor environments  noise in point clouds Sensors may have limited ranges (near range and far range)  unknown areas

Handling Noisy Point Cloud Planning, navigation and grasping Scene reasoning Noisy data Real-time processing

Related Work Collision Detection for meshes – Fast and robust – Not designed for (noisy) point-clouds Motion planning with environment uncertainty – 2D polygons – Vehicle planning

Uncertainty Model of Point Cloud

Errors in Point Clouds Discretization (sampling) error

Errors in Point Clouds Position error

Point Cloud Collision Detection In-collision In-collision ?

Point Cloud Collision Detection In-collision In-collision ?

Point Cloud Collision Detection collision-free Collision-free ?

Point Cloud Collision Detection Collision-free Collision-free?

Handling Point Cloud Collision: Two Methods Reconstruction Mesh Collision Point Cloud Collision

Mesh Reconstruction => Collision Mesh CollisionReconstruction Reconstruction is more difficult then collision detection Solve an easier problem by conquering a more difficult one?

Mesh Reconstruction => Collision Reconstruction process is not robust, and is sensitive to noise and high order features Error in reconstructed result can be amplified by subsequent collision checking Reconstruction process is slow (few seconds) The final result is YES/NO answer, which is sensitive to noise.

Use Ideas from Classification Two methods to classify two sets (Machine Learning) – Generative model First estimate the joint distribution (more difficult!) Then compute the classifier – Discriminative function Directly compute the classifier If we only need to classify, discriminative function usually is the better choice.

Our Solution Return to the basic definition of collision-free – Two objects are collision-free if they are separable by a continuous surface and is in-collision when such surface does not exist.

Classification-based Collision Detection Find a separating surface that separates two points clouds as much as possible

Collision Detection based on Robust Classification We compute the optimal (i.e. minimize the separating error) separating surface using a SVM-like algorithm Use supervised machine learning methods for geometric classification Different from standard SVM: each training data point has noise – corresponds to robust classification in machine learning

Robust Classification Standard SVM Robust Classification: aware of noise

Compute the Separating Surface

Per-point Collision Probability Collision probability: the probability that one point is on the wrong side of separating surface. Robust classification computes collision probability for each single point sample

Probabilistic Collision between Two Objects For each object – Cluster the points and only keep one point in each cluster: compute collision probability for independent points – Overall object collision probability

Three Collision Cases Deep collision In-contactLarge distance Collision probability near 1 Collision probability near 0.5 Collision probability near 0 Difficult: small noise will bring reverse of yes/no answer Easy

Results: Small Noise Deep Collision Configurations Large Distance Configurations In Contact Configurations (Difficult) Very few configurations are in the difficult region

Results: Large Noise Deep Collision Configurations Large Distance Configurations In Contact Configurations (Difficult) More configurations are in the difficult region!

PR2 Robot Sensor Results Deep Collision Configurations In Contact Configurations (Difficult) Large Distance Configurations same distance to obstacle  collision probability with wide spread.

Range of Collision Probability Collision probability’s wide range: – It is a more complete description of collision state than distance or yes/no answer – Important for grasping or planning in constrained environment

Kinect Data Office data from Peter Henry, Dieter RSE-lab UW

Result on Kinect Data

BVH Hierarchy Acceleration Bounding volume hierarchy is widely used in mesh collision detection for acceleration Basic idea: decompose objects into many cells and cull collision test between cells that are far away.

BVH Hierarchy for Point Clouds Similar to BVH hierarchy for mesh But has important difference – Leaf nodes should contain enough points for SVM classification – Bounding box for each cell should be expanded a bit to avoid miss collision

Reason for Expansion (a) BVH without overlap (b) BVH with overlap BV-1BV-2 BV-1 BV-2

BVH: pros and cons Much Faster But the collision probability for some points may be not correct (overall collision probability is not influenced) – Reason : BVH loses global information and can not handle deep penetration points

Benefit Speed is comparable to mesh-based collision detection algorithm (50-100ms per query) --- faster than mesh reconstruction, especially on large point clouds In-contact configurations corresponds to a set with non-zero measure in C-space – more robust than mesh collision’s measure zero contact set.

Application to Motion Planning Use overall collision probability for the objects as a cost in motion planning algorithms to compute the trajectory with minimum collision probability

Other Applications The per-point collision probability is more useful – Provides finer control in terms of handling environment uncertainty – Can use work space information to guide the planning procedure in order to avoid collision

Conclusions A robust proximity computation and collision detection algorithm for noisy point cloud data Problem reduced to robust classification Initial results on point-cloud data from PR2 sensors

Future Work Currently we directly use point clouds, which can only model the space with/without obstacles Due to sensor range, part of the space is unknown So we will apply our algorithm to the data structure that can encode ‘unknown’ space, such as the octomap in ROS Also more useful for sensor with dense resolution, like kinect

Future Work Currently implementation is on static models Extend to dynamic environments – New objects added or deleted – Handle deformable objects and update sensor uncertainty SVM has incremental variations that can handle dynamic data

Acknowledge National Science Foundation Army Research Office Willow Garage

Thanks