Table of Contents
Fetching ...

BlenderProc

Maximilian Denninger, Martin Sundermeyer, Dominik Winkelbauer, Youssef Zidan, Dmitry Olefir, Mohamad Elbadrawy, Ahsan Lodhi, Harinandan Katam

TL;DR

BlenderProc tackles the need for high-quality, labeled synthetic data for CNN training by offering a modular, open-source pipeline built on Blender and Cycles. The YAML-configured workflow encompasses loaders, renderers (color, depth, normals, segmentation), and samplers to generate synchronized RGB, depth, normal, and segmentation outputs, packaged in an efficient HDF5 format. Its core contributions are providing an easy-to-extend starting point for multiple datasets (e.g., SUNCG, Replica) and a realistic rendering approach that balances quality and practicality, achieving about $3,000$ images per hour on a single GPU for complex scenes. This framework enables scalable, photorealistic data generation for diverse computer vision tasks without licensing constraints, facilitating broader adoption and customization across datasets and research questions.

Abstract

BlenderProc is a modular procedural pipeline, which helps in generating real looking images for the training of convolutional neural networks. These can be used in a variety of use cases including segmentation, depth, normal and pose estimation and many others. A key feature of our extension of blender is the simple to use modular pipeline, which was designed to be easily extendable. By offering standard modules, which cover a variety of scenarios, we provide a starting point on which new modules can be created.

BlenderProc

TL;DR

BlenderProc tackles the need for high-quality, labeled synthetic data for CNN training by offering a modular, open-source pipeline built on Blender and Cycles. The YAML-configured workflow encompasses loaders, renderers (color, depth, normals, segmentation), and samplers to generate synchronized RGB, depth, normal, and segmentation outputs, packaged in an efficient HDF5 format. Its core contributions are providing an easy-to-extend starting point for multiple datasets (e.g., SUNCG, Replica) and a realistic rendering approach that balances quality and practicality, achieving about images per hour on a single GPU for complex scenes. This framework enables scalable, photorealistic data generation for diverse computer vision tasks without licensing constraints, facilitating broader adoption and customization across datasets and research questions.

Abstract

BlenderProc is a modular procedural pipeline, which helps in generating real looking images for the training of convolutional neural networks. These can be used in a variety of use cases including segmentation, depth, normal and pose estimation and many others. A key feature of our extension of blender is the simple to use modular pipeline, which was designed to be easily extendable. By offering standard modules, which cover a variety of scenarios, we provide a starting point on which new modules can be created.

Paper Structure

This paper contains 14 sections, 7 figures.

Figures (7)

  • Figure 1: The BlenderProc can generate color, normal and depth images and also class segmentation and instance segmentation masks, which can be used for the training of convolutional neural networks.
  • Figure 2: Rendered color image of a suncg scenesuncg
  • Figure 3: Depth image of a suncg scenesuncg
  • Figure 4: Normal image of a suncg scenesuncg
  • Figure 5: Segmentation mask of a suncg scenesuncg
  • ...and 2 more figures