Skip to content
/ gpd Public
forked from atenpas/gpd

Detect 6-DOF grasp poses in point clouds

License

Notifications You must be signed in to change notification settings

wecacuee/gpd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Grasp Pose Detection (GPD)

1) Overview

This package detects 6-DOF grasp poses for a 2-finger grasp (e.g. a parallel jaw gripper) in 3D point clouds.

Grasp pose detection consists of three steps: sampling a large number of grasp candidates, classifying these candidates as viable grasps or not, and clustering viable grasps which are geometrically similar.

The reference for this package is: High precision grasp pose detection in dense clutter.

UR5 Demo

UR5 demo

2) Requirements

  1. PCL 1.7 or later
  2. Eigen 3.0 or later
  3. ROS Indigo
  4. Caffe

3) Prerequisites

The following instructions have been tested on Ubuntu 14.04. Similar instructions should work for other Linux distributions that support ROS.

  1. Install Caffe (Instructions). Follow the CMake Build instructions. Notice: Due to a conflict between the Boost version required by Caffe (1.55) and the one installed as a dependency with the Debian package for ROS Indigo (1.54), you need to checkout an older version of Caffe that worked with Boost 1.54. So, when you clone Caffe, please use the command below instead.

    git clone https://github.com/BVLC/caffe.git && cd caffe && git checkout 923e7e8b6337f610115ae28859408bc392d13136
    
  2. Install ROS Indigo (Instructions).

  3. Clone the grasp_pose_generator repository into some folder:

    $ cd <location_of_your_workspace>
    $ git clone https://github.ccs.neu.edu/atp/gpg.git
    
  4. Build and install the grasp_pose_generator:

    $ cd gpg
    $ mkdir build && cd build
    $ cmake ..
    $ make
    $ sudo make install
    

4) Compilation

  1. Clone this repository.

    $ cd <location_of_your_workspace/src>
    $ git clone https://github.ccs.neu.edu/atp/gpd.git
    
  2. Build your catkin workspace.

    $ cd <location_of_your_workspace>
    $ catkin_make
    

5) Generate Grasp Candidates for a Point Cloud File

Launch the grasp pose detection on an example point cloud:

roslaunch gpd tutorial0.launch

Within the GUI that appears, press r to center the view, and q to quit the GUI and load the next visualization. The output should look similar to the screenshot shown below.

rviz screenshot

6) Tutorials

  1. Detect Grasps With an RGBD camera
  2. Detect Grasps on a Specific Object

7) Parameters

Brief explanations of parameters are given in launch/classify_candidates_file_15_channels.launch for using PCD files. For use on a robot, see launch/ur5_15_channels.launch.

8) Citation

If you like this package and use it in your own work, please cite our paper (arXiv):

[1] Marcus Gualtieri, Andreas ten Pas, Kate Saenko, Robert Platt. High precision grasp pose detection in dense clutter. IROS 2016. 598-605.

About

Detect 6-DOF grasp poses in point clouds

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 86.0%
  • Python 11.9%
  • CMake 2.1%