Skip to content

AutodeskRoboticsLab/graspfactory

Repository files navigation

GraspFactory Visualization Tools

arXiv Website License

This repository provides visualization tools for the GraspFactory dataset, a large-scale object-centric grasping dataset containing over 109 million 6-DoF grasps for robotic manipulation research.

📑 Table of Contents

📖 About GraspFactory Dataset

GraspFactory is a comprehensive dataset designed for training data-intensive robotic grasping models. The dataset includes:

  • 109+ million 6-DoF grasps across two popular gripper types
  • Franka Panda gripper: 14,690 objects with corresponding grasps
  • Robotiq 2F-85 gripper: 33,710 objects with corresponding grasps
  • Geometrically diverse objects to enable generalization to novel objects
  • Real-world validation in both simulated and physical environments

The dataset addresses the critical challenge of training robotic grasping models that can generalize to the vast diversity of objects encountered in industrial automation, warehouses, and manufacturing plants.

🚀 Features

This visualization repository provides:

  • 3D Grasp Visualization: Interactive 3D visualization of grasps on object meshes
  • Multi-Gripper Support: Visualization for both Franka Panda and Robotiq 2F-85 grippers

🔗 Dataset Download

📥 Download Instructions (macOS/Linux)

chmod +x download_data.sh
./download_data.sh

📦 Sample Data

This repository includes sample data to help you get started quickly with the visualization tools:

  • Panda gripper samples: 5 objects with corresponding grasps and meshes
  • Robotiq 2F-85 gripper samples: 5 objects with corresponding grasps and meshes

The sample data is located in the sample_data/ directory and follows the same structure as the full dataset:

sample_data/
├── panda/
│   ├── grasps/          # 5 sample .npz grasp files
│   └── meshes/          # 5 corresponding .obj mesh files
└── robotiq_2f85/
    ├── grasps/          # 5 sample .npz grasp files
    └── meshes/          # 5 corresponding .obj mesh files

You can use this sample data to:

  • Test the visualization tools without downloading the full dataset
  • Understand the data format and structure
  • Develop and debug your own grasp analysis code

🛠️ Installation

  1. Clone this repository:
git clone https://github.com/AutodeskRoboticsLab/graspfactory.git
cd graspfactory
  1. Create a conda environment
conda create -n graspfactory python=3.11 -y && conda activate graspfactory
  1. Install the required dependencies:
pip install -r requirements.txt

📊 Dataset Structure

The GraspFactory dataset follows this structure:

GraspFactory/
├── Franka Panda/
│   ├── grasps/
│   │   ├── object_001.npz
│   │   ├── object_002.npz
│   │   └── ...
│   └── meshes/
│       ├── object_001.obj
│       ├── object_002.obj
│       └── ...
└── Robotiq_2F85/
    ├── grasps/
    │   ├── object_001.npz
    │   ├── object_002.npz
    │   └── ...
    └── meshes/
        ├── object_001.obj
        ├── object_002.obj
        └── ...

Each .npz file contains:

  • grasps: 6-DoF grasp poses as 4x4 transformation matrices
  • grasp_widths: Corresponding gripper opening widths
  • success_indices: Indices of successful grasps
  • mesh_uid: Unique identifier linking to the corresponding mesh file

🎯 Usage

Batch Visualization Script

Run the provided visualization script with command line options:

# Visualize Robotiq grasps using sample data (default)
python visualize.py

# Visualize Panda grasps using sample data
python visualize.py --gripper panda

# Customize number of grasps shown
python visualize.py --gripper robotiq --num_grasps 10

# Use custom data path (for full dataset)
python visualize.py --data_path /path/to/custom/grasps --gripper panda

# Explicitly use sample data
python visualize.py --data_path sample_data/<gripper_name>/grasps --gripper robotiq

Available Arguments:

  • --gripper/-g: Choose gripper type ('panda' or 'robotiq', default: 'robotiq')
  • --num_grasps/-n: Number of grasps to show per object (default: 25)
  • --data_path/-p: Custom path to grasp data

The script will:

  1. Load grasp files from the specified dataset
  2. Display the specified number of random successful grasps per object
  3. Show interactive 3D visualization for each object

📚 BibTeX

If you use GraspFactory in your research, please cite our paper:

@article{srinivas2025graspfactory,
  title={GraspFactory: A Large Object-Centric Grasping Dataset},
  author={Srinivas, Srinidhi Kalgundi and Shukla, Yash and Arnold, Adam and Chitta, Sachin},
  journal={arXiv preprint arXiv:2509.20550},
  year={2025}
}

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published