andvg3 / Grasp-Anything

Dataset and Code for ICRA 2024 paper "Grasp-Anything: Large-scale Grasp Dataset from Foundation Models."

Home Page:https://grasp-anything-2023.github.io/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Grasp-Anything

This is the repository of the paper "Grasp-Anything: Large-scale Grasp Dataset from Foundation Models"

Table of contents

  1. Installation
  2. Datasets
  3. Training
  4. Testing

Installation

  • Create a virtual environment
$ conda create -n granything python=3.9
$ conda activate granything
  • Install pytorch
$ conda install pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cudatoolkit=11.3 -c pytorch
$ pip install -r requirements.txt

Datasets

  • Please obtain Grasp-Anything via this website.
  • For other datasets, please obtain following their instructions: Cornell, Jacquard, OCID-grasp, and VMRD.
  • All datasets should be include in the following hierarchy:
|- data/
    |- cornell
    |- grasp-anything
    |- jacquard
    |- OCID_grasp
    |- VMRD

Training

We use GR-ConvNet as our default deep network. To train GR-ConvNet on different datasets, you can use the following command:

$ python train_network.py --dataset <dataset> --dataset-path <dataset> --description <your_description> --use-depth 0

For example, if you want to train a GR-ConvNet on Cornell, use the following command:

$ python train_network.py --dataset cornell --dataset-path data/cornell --description training_cornell --use-depth 0

We also provide training for other baselines, you can use the following command:

$ python train_network.py --dataset <dataset> --dataset-path <dataset> --description <your_description> --use-depth 0 --network <baseline_name>

For instance, if you want to train GG-CNN on Cornell, use the following command:

python train_network.py --dataset cornell --dataset-path data/cornell/ --description training_ggcnn_on_cornell --use-depth 0 --network ggcnn

Testing

For testing procedure, we can apply the similar commands to test different baselines on different datasets:

python evaluate.py --network <path_to_pretrained_network> --dataset <dataset> --dataset-path data/<dataset> --iou-eval

Important note: <path_to_pretrained_network> is the path to the pretrained model obtained by training procedure. Usually, the pretrained models obtained by training are stored at logs/<timstamp>_<training_description>. You can select the desired pretrained model to evaluate. We do not have to specify neural architecture as the codebase will automatically detect the neural architecture. Pretrained weights are available at this link.

Acknowledgement

Our codebase is developed based on Kumra et al..

About

Dataset and Code for ICRA 2024 paper "Grasp-Anything: Large-scale Grasp Dataset from Foundation Models."

https://grasp-anything-2023.github.io/

License:MIT License


Languages

Language:Python 98.8%Language:Shell 1.2%