DLR-RM/BlenderProc ↗
Created Dec 27, 2020 · View the DLR-RM/BlenderProc repository page
A procedural Blender pipeline for photorealistic training image generation
Want this for your repo?
Render a free sample of any GitHub repo in seconds.
Contributors
36
Lines of Code
4,506
From
Jun 28, 2019
To
Dec 14, 2020
About DLR-RM/BlenderProc
BlenderProc is a procedural pipeline built on top of Blender that automates the generation of photorealistic synthetic training data for computer vision tasks. It enables users to programmatically load and manipulate 3D scenes, set camera positions, apply materials and lighting, and render multiple types of output images including RGB, depth, normal maps, and semantic segmentation masks. The tool supports loading assets from various formats and datasets such as ShapeNet, 3D-FRONT, BOP, and Haven, making it versatile for different applications in object detection, pose estimation, and 3D reconstruction.
The project runs within Blender's Python environment through a command-line interface, allowing users to write Python scripts that construct scenes and generate annotated datasets automatically. Users can process scenes multiple times to create large volumes of diverse training data, and BlenderProc provides features like physics simulation for realistic object placement, camera sampling to generate varied viewpoints, and support for both COCO and BOP annotation formats. The pipeline can be debugged both in the Blender GUI and through IDE remote debugging, making it accessible to developers of varying experience levels.
BlenderProc targets researchers and practitioners in computer vision and robotics who need large-scale synthetic datasets without manual 3D modeling. The project includes comprehensive documentation, tutorials covering core concepts like object loading, camera configuration, rendering, and file output, plus numerous examples demonstrating everything from basic scene creation to advanced tasks like semantic segmentation and pose annotation for the BOP Challenge.