orrb  by openai

High-performance remote rendering for synthetic data generation

Created 7 years ago
250 stars

Top 100.0% on SourcePulse

GitHubView on GitHub
Project Summary

OpenAI Remote Rendering Backend (ORRB) is a high-performance rendering tool designed to generate synthetic image data for training machine learning models. It targets ML researchers and engineers who require a scalable solution for creating diverse visual datasets, offering a robust backend for synthetic data generation.

How It Works

ORRB leverages a Unity-based rendering engine to produce high-fidelity synthetic images. It supports both interactive and batch rendering modes, allowing users to dynamically explore rendering parameters or generate large datasets efficiently. The system is designed for integration into ML pipelines, with examples provided for frameworks like Keras, facilitating the direct use of generated data for model training.

Quick Start & Requirements

  • Primary install/run command: After cloning the repository and setting up a Python 3.6.5 environment via pyenv, install prerequisites with pip install -r requirements.txt, install pre-built binaries using ./bin/install-prebuilt.sh, set the ORRB_BINARIES_DIR environment variable, and finally install the package with pip install -e ..
  • Non-default prerequisites: Requires pyenv, Python 3.6.5. Linux installations necessitate a running X11 server with OpenGL support.
  • Links: Technical details are available in the ORRB Technical Report: https://arxiv.org/abs/1906.11633.

Highlighted Details

  • Provides interactive and batch rendering demos for immediate use and exploration.
  • Includes integration with OpenAI Gym environments, specifically for robotics tasks like FetchSlide-v1.
  • Features a benchmarking script to test rendering performance across multiple GPUs and workers.
  • Offers a sample Keras application demonstrating how to train a vision predictor using ORRB-generated data.
  • Supports headless rendering on Linux using NVidia virtual frame buffers.

Maintenance & Community

This project is marked as Archived and is provided as-is, with no updates expected. No community links (e.g., Discord, Slack) or specific contributor information are detailed in the README.

Licensing & Compatibility

The project is released under the MIT License, which generally permits commercial use and integration into closed-source projects.

Limitations & Caveats

As an archived project, ORRB will not receive further updates, potentially leaving it vulnerable to unaddressed bugs or compatibility issues with modern systems. The requirement for a Python 3.6.5 environment is significantly outdated. Linux installations also depend on a running X11 server, which may require specific configurations for headless or server environments.

Health Check
Last Commit

3 years ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
0 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.