All Projects → skumra → robotic-grasping

skumra / robotic-grasping

Licence: other
Antipodal Robotic Grasping using GR-ConvNet. IROS 2020.

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to robotic-grasping

grasp multiObject
Robotic grasp dataset for multi-object multi-grasp evaluation with RGB-D data. This dataset is annotated using the same protocal as Cornell Dataset, and can be used as multi-object extension of Cornell Dataset.
Stars: ✭ 59 (-54.96%)
Mutual labels:  robotics, grasping
graspnet-baseline
Baseline model for "GraspNet-1Billion: A Large-Scale Benchmark for General Object Grasping" (CVPR 2020)
Stars: ✭ 146 (+11.45%)
Mutual labels:  robotics, grasping
good robot
"Good Robot! Now Watch This!": Repurposing Reinforcement Learning for Task-to-Task Transfer; and “Good Robot!”: Efficient Reinforcement Learning for Multi-Step Visual Tasks with Sim to Real Transfer
Stars: ✭ 84 (-35.88%)
Mutual labels:  grasping, robotic-manipulation
ROS-GPS
GPS Localization with ROS, OSM and rviz
Stars: ✭ 19 (-85.5%)
Mutual labels:  robotics
MeshCatMechanisms.jl
3D Visualization of mechanisms and URDFs using MeshCat.jl and RigidBodyDynamics.jl
Stars: ✭ 36 (-72.52%)
Mutual labels:  robotics
braccio-ik-unity
Braccio robotic arm simulator with IK (inverse kinematics) and controller via Serial in Unity.
Stars: ✭ 50 (-61.83%)
Mutual labels:  robotics
bio ik
MoveIt kinematics_base plugin based on particle optimization & GA
Stars: ✭ 104 (-20.61%)
Mutual labels:  robotics
Tinymovr
Compact brushless motor controller with integrated absolute encoder and CAN Bus.
Stars: ✭ 90 (-31.3%)
Mutual labels:  robotics
EL6483 EmbeddedSystems
All course materials, build systems, etc. for the graduate Real-Time Embedded Systems Course, Spring 2017
Stars: ✭ 14 (-89.31%)
Mutual labels:  robotics
rapcores
Robotic Application Processor
Stars: ✭ 14 (-89.31%)
Mutual labels:  robotics
FusionAD
An open source autonomous driving stack by San Jose State University Autonomous Driving Team
Stars: ✭ 30 (-77.1%)
Mutual labels:  robotics
trajopt
Trajectory optimization algorithms for robotic control.
Stars: ✭ 74 (-43.51%)
Mutual labels:  robotics
brax
Massively parallel rigidbody physics simulation on accelerator hardware.
Stars: ✭ 1,208 (+822.14%)
Mutual labels:  robotics
ndt localizer
This robot lcoalisation package for lidar-map based localisation using multi-sensor state estimation.
Stars: ✭ 32 (-75.57%)
Mutual labels:  robotics
MuJoCo RL UR5
A MuJoCo/Gym environment for robot control using Reinforcement Learning. The task of agents in this environment is pixel-wise prediction of grasp success chances.
Stars: ✭ 108 (-17.56%)
Mutual labels:  robotics
robotic-warehouse
Multi-Robot Warehouse (RWARE): A multi-agent reinforcement learning environment
Stars: ✭ 62 (-52.67%)
Mutual labels:  robotics
trac ik
ROS 2 port of `trac_ik`, an alternative Inverse Kinematics solver to the popular inverse Jacobian methods in KDL.
Stars: ✭ 14 (-89.31%)
Mutual labels:  robotics
TORA.jl
Trajectory Optimization for Robot Arms
Stars: ✭ 27 (-79.39%)
Mutual labels:  robotics
Drona
Drona is a programming framework for building safe robotics systems
Stars: ✭ 26 (-80.15%)
Mutual labels:  robotics
nn robustness analysis
Python tools for analyzing the robustness properties of neural networks (NNs) from MIT ACL
Stars: ✭ 36 (-72.52%)
Mutual labels:  robotics

Antipodal Robotic Grasping

We present a novel generative residual convolutional neural network based model architecture which detects objects in the camera’s field of view and predicts a suitable antipodal grasp configuration for the objects in the image.

This repository contains the implementation of the Generative Residual Convolutional Neural Network (GR-ConvNet) from the paper:

Antipodal Robotic Grasping using Generative Residual Convolutional Neural Network

Sulabh Kumra, Shirin Joshi, Ferat Sahin

arxiv | video

PWC

If you use this project in your research or wish to refer to the baseline results published in the paper, please use the following BibTeX entry:

@inproceedings{kumra2020antipodal,
  author={Kumra, Sulabh and Joshi, Shirin and Sahin, Ferat},
  booktitle={2020 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)}, 
  title={Antipodal Robotic Grasping using Generative Residual Convolutional Neural Network}, 
  year={2020},
  pages={9626-9633},
  doi={10.1109/IROS45743.2020.9340777}}
}

Requirements

  • numpy
  • opencv-python
  • matplotlib
  • scikit-image
  • imageio
  • torch
  • torchvision
  • torchsummary
  • tensorboardX
  • pyrealsense2
  • Pillow

Installation

  • Checkout the robotic grasping package
$ git clone https://github.com/skumra/robotic-grasping.git
  • Create a virtual environment
$ python3.6 -m venv --system-site-packages venv
  • Source the virtual environment
$ source venv/bin/activate
  • Install the requirements
$ cd robotic-grasping
$ pip install -r requirements.txt

Datasets

This repository supports both the Cornell Grasping Dataset and Jacquard Dataset.

Cornell Grasping Dataset

  1. Download the and extract Cornell Grasping Dataset.
  2. Convert the PCD files to depth images by running python -m utils.dataset_processing.generate_cornell_depth <Path To Dataset>

Jacquard Dataset

  1. Download and extract the Jacquard Dataset.

Model Training

A model can be trained using the train_network.py script. Run train_network.py --help to see a full list of options.

Example for Cornell dataset:

python train_network.py --dataset cornell --dataset-path <Path To Dataset> --description training_cornell

Example for Jacquard dataset:

python train_network.py --dataset jacquard --dataset-path <Path To Dataset> --description training_jacquard --use-dropout 0 --input-size 300

Model Evaluation

The trained network can be evaluated using the evaluate.py script. Run evaluate.py --help for a full set of options.

Example for Cornell dataset:

python evaluate.py --network <Path to Trained Network> --dataset cornell --dataset-path <Path to Dataset> --iou-eval

Example for Jacquard dataset:

python evaluate.py --network <Path to Trained Network> --dataset jacquard --dataset-path <Path to Dataset> --iou-eval --use-dropout 0 --input-size 300

Run Tasks

A task can be executed using the relevant run script. All task scripts are named as run_<task name>.py. For example, to run the grasp generator run:

python run_grasp_generator.py

Run on a Robot

To run the grasp generator with a robot, please use our ROS implementation for Baxter robot. It is available at: https://github.com/skumra/baxter-pnp

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].