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.
