Blenderproc

Latest version: v2.8.0

Safety actively analyzes 715032 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 5 of 6

1.6.0

- added an `TextureLoader`, which can load images and store them as blender textures
- added a provider to access these loaded textures
- removed the `MaterialRandomizer`
- moved the whole functionality from the `MaterialRandomizer` to the `EntityManipulator`
- fixed a bug in the SUNCG material loading, where for a few objects the diffuse material was confused with an alpha material
- add set_properties for `Front3DLoader`
- fixed the `min_interest_score` that it works with more than just SUNCG
- fix a bug in the visHdf5 scripts with distance maps which had several channels
- improved documentation for `min_interest_score` and `check_pose_novelty_translation`

1.5.1

- adding support for 3D-Front: https://tianchi.aliyun.com/specials/promotion/alibaba-3d-scene-dataset
- added to example on how to use 3D-Front
- fixed visualization of newly generated SegMapRenderer results
- fixed combining several coco annotations
- added option for the "class" key for default values in the SegMapRenderer
- fixed a bug in the SegMapRenderer when used in debug mode

1.5.0

- rename depth to distance (this is the difference between taking at each pixel the Z coordinate (in the camera coordinate system) or the distance from the optical center, as sensors usually produce depth and not distance, we changed this)
- create postprocessing module to calculate the depth out of the distance image
- rewriting of the SegMapRenderer, it now supports the mapping of any attribute or custom property of an object to an image or a csv file
- reworking of the used coco examples to better work with this new SegMapRenderer
- adapting CocoAnnotationsWriter to write category_ids which must be defined in a Loader or in a .blend file
- adding support for a supercategory inside of the coco annotations tool (useful for bop dataset names)
- add texture provider, which can generate random textures, which can be used in a displacement modifier
- added to the EntityManipulator:
- option to automatically generate a UV mapping for an object
- added option for displacement modifier adding to objects
- added an example for the entity_displacement_modifier usage
- the sampler.Value now supports gaussian sampling
- reworked some parts of the Hdf5Writer, to better work with depth and distance
- added a check to the CocoUtility to avoid that the bounding box has a area of zero
- remove the provider.ContentGetter as it was confusing, now it works directly without it
- add an Interface in the naming of some modules, if they are not supposed to be run by the pipeline directly
- change the sample amount for the FlowRenderer to 1 as a higher sampling density integrates over several objects in one pixel
- added a step function in the alpha mode of the renderer to avoid artifacts, when rendering semantic segmentations
- support for setting different fx/fy values in the camera module
- remove the pixel_aspect_x/pixel_aspect_y/resolution_x/resolution_y from the renderer is now in Camera
- fixed a bug when the unknown texture folder in the scenenet dataset was not created before
- improved the loading of camera parameters from files
- added a feature for supporting changes of the "category_id" for the WorldManipulator
- improved the visHdf5/saveHdf5/generate_nice_vis scripts
- switches to blender 2.83.2

1.4.1

- switches to blender 2.83
- adds support for adaptive sampling (Renderer/use_adaptive_sampling) -> can decrease rendering time for complex scenes if used
- add random_samples option for entity getter
- add friction/damping for physics positioning
- add JPG save option for RgbRenderer
- add uniform elevation sampling in Shell Sampler
- add in plane rotation option for look_at/direction camera rotations
- add postprocessing.Dist2Depth to convert Blender distance images to depth images
- UpperRegionSamlper can sample in relative area on selected face
- improve physics by using convex hull and box collision shapes
- obj.rigid_body.use_margin = True, to actually use margin
- add a Smooth Shader cf to entityManipulator
- BopWriter improvements, outputs chunks of 1000 images
- exclude objects like planes from proximity checks
- fix transparency bounces
- add custom property cp_bop_dataset_name
- add bop_challenge example with all configs used to render the provided synthetic data
- add bop_object_on_surface_sampling for sampling upright objects
- docu improvements and step by step explanations of config files

1.4.0

- added the NormalRenderer functions to the RGBRenderer saves a render call, when generating normal images
- added a script to automatically download all PBR assest from [https://cc0textures.com/](https://cc0textures.com/)
- add CCMaterialLoader, which can load all downloaded materials from cc0textures, to randomly replace them later
- add support for ShapeNet
- add support for SceneNet, including the lighting, which is modeled after the SUNCG lighting module.
- massive docu improvements, added a type to all config values and a default value if one is there
- added examples for:
- bop_object_physics_positioning
- bop_object_pose_sampling
- bop_scene_replication
- on_surface_object_sampling
- scenenet
- scenenet_with_cctextures
- shapenet
- shapenet_with_scenenet
- shapenet_with_suncg
- suncg_with_improved_mat
- added object OnSurfaceSampler (similiar to the phyiscs but faster and places object only on the bb)
- added WorldManipulator (can change custom properties of the world, like the category_id)
- switched to config version 3.0
- global initialized values are now in the main.Initializer
- added a GlobalStorage to save variables over module boundaries
- add VisNormalImage for debugging mode, which visualizes a depth & normal image in blender
- material selectors now also support AND and OR conditions
- add automatic detection of optix graphics cards
- added a min interest score for the CameraSampler
- added a novelty pose checker for the CameraSampler, to avoid clustering of camera poses
- global config values are now not longer added to the modules config, only in the event that there is no module found the global config is checked
- rename SUNCG materials to the textures they load, makes selecting them easier
- SUNCG materials are now shared over objects, if they share the same properties, also true for lights
- rewrite of MaterialRandomizer to make use of the new cc0textures
- added a Bop Writer to write out the current scene config in the BOP format
- add the solidify modifier to the options of the EntityManipulator
- add a PartSphere sampler to e.g. only sample in the upper half of a sphere
- add a script to download scenenet to make the use of it even easier
- add easy option to change specular values for materials with the MaterialManipulator
- added the option to make runs deterministic by introducing a env variable: `BLENDER_PROC_RANDOM_SEED`
- added a Basic Color Sampler
- improved the capabilities of the DiscSampler
- now all custom properties should be accessed in the config via: "cp_..." for custom functions: "cf_"
- add texture support for ycbv objects in the BopLoader
- change the default results of the SegMapRenderer to NYU ids instead of the row-index in the .csv file.

1.3.0

- added Optical Flow Renderer
- added Stereo Global Matching Renderer (SGM) -> which takes two color images and produces "non-perfect" depth images
- added option for SGM to also write disparities
- added a new material manipulator
- added a material getter to select materials based on certain conditions
- combined BOP with this repo -> now the only difference is the readme
- added contribution guidelines -> which include commit message guidelines and branch name guidelines and much more
- matrices can now be read via the config file
- added a cached options to the import objects
- added request custom property for the entity getter (to ensure that a custom property is changed)
- added ReplaceObject
- added option that in debugging the RgbRenderer get executed except for the actual rendering part all others are executed and then undon
- added collision mesh source to the physics module
- added option to coco annotations to append the output to an existing coco file
- added bounding box selection to getter.Entity and also just axis aligned hyper plane checks
- added a 1D sampler for float/int/bool
- added postprocessing to the example to reduce the amount of channels in the depth image
- added visualization for stereo and optical flow
- added an oil filter for the SGM result
- added a path sampler
- added a blender collection loader
- added the RockEssentialLoader based on the RockEssential dataset
- added index to getter.Entity to request only a certain element of the selection
- fix three bugs in the physics module, where the mass_scaling was always used and the location not properly updated
- fixed a bug where color images where wrongly saved in float now back to uint8
- fixed a bug in the coco annotations writer + adapting of the example
- fixed bug in load_image, where the dimensions where switched
- fixed a bug when "home_local" is not available than "home" is used
- fixed bug where run.py can only be run from the main folder
- fixed pypng version in bop example
- fixed bug where the volume calculation for bounding boxes did not work as expected
- refactored the disc sampler
- cleaned up all readmes

Page 5 of 6

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.