Giter Site home page Giter Site logo

umerjamil16 / 3d-perception-pr2 Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 1.0 14.14 MB

Implemented a 3D perception pipeline using ROS, PCL to identify target objects from a given “Pick-List” in a particular order and successfully complete a tabletop pick and place operation using PR2 robot.

License: MIT License

CMake 8.03% Python 43.25% C++ 48.59% Shell 0.13%

3d-perception-pr2's Introduction

3D Perception - Robotics

In this project, I implemented a 3D perception pipeline using ROS, PCL to identify target objects from a given “Pick-List” in a particular order and successfully complete a tabletop pick and place operation using PR2 robot.

The PR2 used in the project is outfitted with an RGB-D sensor.

Project Setup

For this setup, catkin_ws is the name of active ROS Workspace. To create one:

$ mkdir -p ~/catkin_ws/src
$ cd ~/catkin_ws/
$ catkin_make

Now that you have a workspace, clone or download this repo into the src directory of your workspace:

$ cd ~/catkin_ws/src
$ git clone https://github.com/umerjamil16/3D-Perception-Project.git

Now install missing dependencies using rosdep install:

$ cd ~/catkin_ws
$ rosdep install --from-paths src --ignore-src --rosdistro=kinetic -y

Build the project:

$ cd ~/catkin_ws
$ catkin_make

Also add following to the .bashrc file

export GAZEBO_MODEL_PATH=~/catkin_ws/src/Perception-Project/pr2_robot/models:$GAZEBO_MODEL_PATH

Following line can be added to your .bashrc to auto-source all new terminals

source ~/catkin_ws/devel/setup.bash

To run the demo:

$ cd ~/catkin_ws/src/RoboND-Perception-Project/pr2_robot/scripts
$ chmod u+x pr2_safe_spawner.sh
$ ./pr2_safe_spawner.sh

demo-1

In the RViz window, you should see the robot and a partial collision map displayed:

demo-2

Proceed through the demo by pressing the ‘Next’ button on the RViz window when a prompt appears in active terminal

The demo ends when the robot has successfully picked and placed all objects into respective dropboxes (though sometimes the robot gets excited and throws objects across the room!)

Close all active terminal windows using ctrl+c before restarting the demo.

You can launch the project scenario through:

$ roslaunch pr2_robot pick_place_project.launch
$ rosrun pr2_robot object-rec.py

Note: The robot is a bit moody at times and might leave objects on the table or fling them across the room :D

3d-perception-pr2's People

Contributors

headspacepk avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Forkers

trigrass2

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.