BlenderProc icon indicating copy to clipboard operation
BlenderProc copied to clipboard

feat(writer): Allow to write additional data to coco_annotations.json

Open hummat opened this issue 9 months ago • 4 comments

Additional custom properties from map_by keys other then, e.g. category_id or instances, in blenderproc.renderer.enable_segmentation_output are included in the annotation info.

hummat avatar Jul 29 '25 07:07 hummat

For contributing to BlenderProc you need to sign our Contributor License Agreement. As an individual please sign CLA_individuals.pdf, as a company please sign CLA_entities.pdf and send it to [email protected]

cla-bot[bot] avatar Jul 29 '25 07:07 cla-bot[bot]

For contributing to BlenderProc you need to sign our Contributor License Agreement. As an individual please sign CLA_individuals.pdf, as a company please sign CLA_entities.pdf and send it to [email protected]

cla-bot[bot] avatar Aug 13 '25 10:08 cla-bot[bot]

BlenderProcHelper result for run 656:

Done with: [amass_human_poses_bpy_python 29s, amass_human_poses_python 32s, auto_shading_bpy_python 9s, auto_shading_python 9s, basic_bpy_python 44s, basic_python 14s, blenderkit_bpy_python 21s, blenderkit_python 19s, bop_object_on_surface_sampling_bpy_python 155s, bop_object_on_surface_sampling_python 79s, bop_object_physics_positioning_bpy_python 212s, bop_object_physics_positioning_python 107s, bop_object_pose_sampling_bpy_python 37s, bop_object_pose_sampling_python 37s, bop_scene_replication_bpy_python 164s, bop_scene_replication_python 168s, camera_depth_of_field_bpy_python 21s, camera_depth_of_field_python 19s, camera_object_pose_bpy_python 29s, camera_object_pose_python 10s, camera_random_trajectories_bpy_python 58s, camera_random_trajectories_python 59s, camera_sampling_bpy_python 20s, camera_sampling_python 19s, coco_annotations_bpy_python 13s, coco_annotations_python 13s, diffuse_color_image_bpy_python 20s, diffuse_color_image_python 20s, dust_bpy_python 19s, dust_python 19s, entity_displacement_modifier_bpy_python 14s, entity_displacement_modifier_python 13s, entity_manipulation_bpy_python 10s, entity_manipulation_python 10s, front_3d_bpy_python 93s, front_3d_object_sampling_bpy_python 88s, front_3d_object_sampling_python 86s, front_3d_python 90s, front_3d_with_improved_mat_bpy_python 109s, front_3d_with_improved_mat_python 105s, haven_bpy_python 23s, haven_python 23s, ikea_bpy_python 18s, ikea_python 18s, kinect_azure_noise_bpy_python 12s, kinect_azure_noise_python 13s, lens_distortion_bpy_python 25s, lens_distortion_bpy_python 12s, lens_distortion_python 17s, lens_distortion_python 12s, light_sampling_bpy_python 11s, light_sampling_python 13s, material_manipulation_bpy_python 18s, material_manipulation_python 10s, material_randomizer_bpy_python 12s, material_randomizer_python 15s, matterport3d_bpy_python 67s, matterport3d_python 64s, motion_blur_rolling_shutter_bpy_python 31s, motion_blur_rolling_shutter_bpy_python 22s, motion_blur_rolling_shutter_python 30s, motion_blur_rolling_shutter_python 26s, multi_render_bpy_python 306s, multi_render_python 219s, nocs_bpy_python 19s, nocs_python 19s, object_pose_sampling_bpy_python 10s, object_pose_sampling_python 10s, on_surface_object_sampling_bpy_python 11s, on_surface_object_sampling_python 10s, optical_flow_bpy_python 22s, optical_flow_python 26s, physics_convex_decomposition_bpy_python 138s, physics_convex_decomposition_python 125s, physics_positioning_bpy_python 23s, physics_positioning_python 24s, pix3d_bpy_python 17s, pix3d_python 17s, point_clouds_bpy_python 26s, point_clouds_python 16s, random_backgrounds_bpy_python 18s, random_backgrounds_python 19s, random_room_constructor_bpy_python 117s, random_room_constructor_python 73s, replica_bpy_python 210s, replica_python 219s, scenenet_bpy_python 51s, scenenet_python 48s, scenenet_with_cctextures_bpy_python 63s, scenenet_with_cctextures_python 63s, semantic_segmentation_bpy_python 13s, semantic_segmentation_python 15s, shapenet_bpy_python 19s, shapenet_python 19s, shapenet_with_scenenet_bpy_python 55s, shapenet_with_scenenet_python 56s, shapenet_with_suncg_bpy_python 65s, shapenet_with_suncg_python 53s, spotlight_bpy_python 20s, spotlight_python 17s, stereo_matching_bpy_python 53s, stereo_matching_python 47s, stereo_matching_with_projector_bpy_python 148s, stereo_matching_with_projector_python 145s, suncg_basic_bpy_python 43s, suncg_basic_python 33s, suncg_with_cam_sampling_bpy_python 61s, suncg_with_cam_sampling_python 56s, suncg_with_improved_mat_bpy_python 67s, suncg_with_improved_mat_python 67s, suncg_with_object_replacer_bpy_python 58s, suncg_with_object_replacer_python 58s, tests_bpy_python 126s, tests_python 25s, urdf_loading_and_manipulation_bpy_python 46s, urdf_loading_and_manipulation_python 48s] Done with 116 of 116 tests. There were errors: :x:
Unit tests output:

................
----------------------------------------------------------------------
Ran 16 tests in 97.153s

OK

Unit tests output:

................
----------------------------------------------------------------------
Ran 16 tests in 20.750s

OK

camera_object_pose

The output of camera_object_pose:main_python:000000_scene_gt_coco_json has changed:

Expand
+ root['info']['year']: 2025
- root['info']['year']: 2024


coco_annotations

The output of coco_annotations:main_python:coco_data_coco_annotations_json has changed:

Expand
+ root['annotations'][0]['idx']
+ root['annotations'][0]['name']
+ root['annotations'][1]['idx']
+ root['annotations'][1]['name']
+ root['annotations'][2]['idx']
+ root['annotations'][2]['name']
+ root['annotations'][3]['idx']
+ root['annotations'][3]['name']
+ root['annotations'][4]['idx']
+ root['annotations'][4]['name']
+ root['annotations'][5]['idx']
+ root['annotations'][5]['name']
+ root['annotations'][6]['idx']
+ root['annotations'][6]['name']
+ root['annotations'][7]['idx']
+ root['annotations'][7]['name']
+ root['annotations'][8]['idx']
+ root['annotations'][8]['name']
+ root['annotations'][9]['idx']
+ root['annotations'][9]['name']
+ root['annotations'][10]['idx']
+ root['annotations'][10]['name']
+ root['annotations'][11]['idx']
+ root['annotations'][11]['name']
+ root['annotations'][12]['idx']
+ root['annotations'][12]['name']
+ root['annotations'][13]['idx']
+ root['annotations'][13]['name']
+ root['annotations'][14]['idx']
+ root['annotations'][14]['name']
+ root['annotations'][15]['idx']
+ root['annotations'][15]['name']


random_backgrounds

The output of random_backgrounds:main_python:coco_data_coco_annotations_json has changed:

Expand
+ root['annotations'][0]['idx']
+ root['annotations'][0]['name']
+ root['annotations'][1]['idx']
+ root['annotations'][1]['name']
+ root['annotations'][2]['idx']
+ root['annotations'][2]['name']
+ root['annotations'][3]['idx']
+ root['annotations'][3]['name']
+ root['annotations'][4]['idx']
+ root['annotations'][4]['name']


urdf_loading_and_manipulation

The output of urdf_loading_and_manipulation:main_python:000000_scene_gt_info_json has changed:

Expand
+ root['0'][2]['bbox_visib'][3]: 25
- root['0'][2]['bbox_visib'][3]: 23
+ root['1'][4]['bbox_visib'][0]: 254
- root['1'][4]['bbox_visib'][0]: 253
+ root['1'][4]['bbox_visib'][2]: 34
- root['1'][4]['bbox_visib'][2]: 35
+ root['2'][2]['bbox_visib'][0]: 309
- root['2'][2]['bbox_visib'][0]: 308
+ root['2'][2]['bbox_visib'][2]: 25
- root['2'][2]['bbox_visib'][2]: 26


The output of urdf_loading_and_manipulation:main_python:000000_scene_gt_coco_json has changed:

Expand
+ root['info']['year']: 2025
- root['info']['year']: 2024


bop_object_pose_sampling

The output of bop_object_pose_sampling:main_python:coco_data_coco_annotations_json has changed:

Expand
+ root['annotations'][0]['idx']
+ root['annotations'][0]['name']
+ root['annotations'][0]['bop_dataset_name']
+ root['annotations'][1]['idx']
+ root['annotations'][1]['name']
+ root['annotations'][1]['bop_dataset_name']
+ root['annotations'][2]['idx']
+ root['annotations'][2]['name']
+ root['annotations'][2]['bop_dataset_name']
+ root['annotations'][3]['idx']
+ root['annotations'][3]['name']
+ root['annotations'][3]['bop_dataset_name']
+ root['annotations'][4]['idx']
+ root['annotations'][4]['name']
+ root['annotations'][4]['bop_dataset_name']
+ root['annotations'][5]['idx']
+ root['annotations'][5]['name']
+ root['annotations'][5]['bop_dataset_name']
+ root['annotations'][6]['idx']
+ root['annotations'][6]['name']
+ root['annotations'][6]['bop_dataset_name']
+ root['annotations'][7]['idx']
+ root['annotations'][7]['name']
+ root['annotations'][7]['bop_dataset_name']
+ root['annotations'][8]['idx']
+ root['annotations'][8]['name']
+ root['annotations'][8]['bop_dataset_name']
+ root['annotations'][9]['idx']
+ root['annotations'][9]['name']
+ root['annotations'][9]['bop_dataset_name']
+ root['annotations'][10]['idx']
+ root['annotations'][10]['name']
+ root['annotations'][10]['bop_dataset_name']
+ root['annotations'][11]['idx']
+ root['annotations'][11]['name']
+ root['annotations'][11]['bop_dataset_name']
+ root['annotations'][12]['idx']
+ root['annotations'][12]['name']
+ root['annotations'][12]['bop_dataset_name']
+ root['annotations'][13]['idx']
+ root['annotations'][13]['name']
+ root['annotations'][13]['bop_dataset_name']
+ root['annotations'][14]['idx']
+ root['annotations'][14]['name']
+ root['annotations'][14]['bop_dataset_name']
+ root['annotations'][15]['idx']
+ root['annotations'][15]['name']
+ root['annotations'][15]['bop_dataset_name']
+ root['annotations'][16]['idx']
+ root['annotations'][16]['name']
+ root['annotations'][16]['bop_dataset_name']
+ root['annotations'][17]['idx']
+ root['annotations'][17]['name']
+ root['annotations'][17]['bop_dataset_name']
+ root['annotations'][18]['idx']
+ root['annotations'][18]['name']
+ root['annotations'][18]['bop_dataset_name']
+ root['annotations'][19]['idx']
+ root['annotations'][19]['name']
+ root['annotations'][19]['bop_dataset_name']
+ root['annotations'][20]['idx']
+ root['annotations'][20]['name']
+ root['annotations'][20]['bop_dataset_name']
+ root['annotations'][21]['idx']
+ root['annotations'][21]['name']
+ root['annotations'][21]['bop_dataset_name']
+ root['annotations'][22]['idx']
+ root['annotations'][22]['name']
+ root['annotations'][22]['bop_dataset_name']
+ root['annotations'][23]['idx']
+ root['annotations'][23]['name']
+ root['annotations'][23]['bop_dataset_name']
+ root['annotations'][24]['idx']
+ root['annotations'][24]['name']
+ root['annotations'][24]['bop_dataset_name']
+ root['annotations'][25]['idx']
+ root['annotations'][25]['name']
+ root['annotations'][25]['bop_dataset_name']
+ root['annotations'][26]['idx']
+ root['annotations'][26]['name']
+ root['annotations'][26]['bop_dataset_name']
+ root['annotations'][27]['idx']
+ root['annotations'][27]['name']
+ root['annotations'][27]['bop_dataset_name']
+ root['annotations'][28]['idx']
+ root['annotations'][28]['name']
+ root['annotations'][28]['bop_dataset_name']
+ root['annotations'][29]['idx']
+ root['annotations'][29]['name']
+ root['annotations'][29]['bop_dataset_name']


The output of bop_object_pose_sampling:main_python:000000_scene_gt_coco_json has changed:

Expand
+ root['info']['year']: 2025
- root['info']['year']: 2024


bop_object_physics_positioning

The output of bop_object_physics_positioning:main_python:000000_scene_gt_coco_json has changed:

Expand
+ root['info']['year']: 2025
- root['info']['year']: 2024


bop_object_on_surface_sampling

The output of bop_object_on_surface_sampling:main_python:000000_scene_gt_coco_json has changed:

Expand
+ root['info']['year']: 2025
- root['info']['year']: 2024


bop_scene_replication

The output of bop_scene_replication:main_python:000000_scene_gt_coco_json has changed:

Expand
+ root['info']['year']: 2025
- root['info']['year']: 2024


stereo_matching

The output of stereo_matching:disparity has changed: Diff: 0.0397, Pixel diff: 0.0033



Compare image Newly generated image

The output of stereo_matching:disparity has changed: Diff: 0.0109, Pixel diff: 0.0041



Compare image Newly generated image

stereo_matching_with_projector

The output of stereo_matching_with_projector:disparity has changed: Diff: 0.0103, Pixel diff: 0.0051



Compare image Newly generated image

The output of stereo_matching_with_projector:disparity has changed: Diff: 0.0118, Pixel diff: 0.0085



Compare image Newly generated image

Pylint output

Expand

Messages

Module blenderproc (blenderproc/__init__.py)

Line Col. Type Symbol ID Obj Message
1 0 fatal astroid-error F0002
blenderproc/__init__.py: Fatal error while checking 'blenderproc/__init__.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '${INTERNAL_HOME_FOLDER}/Dominik_Winkelbauer/blender_proc_helper_runs_external/DLR-RM/BlenderProc/1209/pylint_home_folder/pylint-crash-2025-08-13-15-23-44.txt'.
13 0 convention line-too-long C0301
Line too long (169/120)
16 0 convention line-too-long C0301
Line too long (130/120)
19 0 convention line-too-long C0301
Line too long (223/120)
19 8 warning raise-missing-from W0707
Consider explicitly re-raising using 'except ImportError as exc' and 'raise RuntimeError('\n###############\nUSE_EXTERNAL_BPY_MODULE is set, but bpy module could not be imported. Make sure bpy module is present in your python environment.\n\tpip install bpy==4.2.0\n###############\n') from exc'
27 44 convention trailing-whitespace C0303
Trailing whitespace
37 0 convention trailing-whitespace C0303
Trailing whitespace
40 0 convention trailing-whitespace C0303
Trailing whitespace

Module blenderproc.__main__ (blenderproc/__main__.py)

Line Col. Type Symbol ID Obj Message
3 0 convention wrong-import-position C0413
Import "import os" should be placed at the top of the module
3 0 convention wrong-import-order C0411
standard import "os" should be placed before local imports "version.__version__", "python.utility.SetupUtility.SetupUtility"
3 0 convention ungrouped-imports C0412
Imports from package os are not grouped
8 0 convention wrong-import-order C0411
third party import "blenderproc.command_line.cli" should be placed before local imports "version.__version__", "python.utility.SetupUtility.SetupUtility"

Module blenderproc.command_line (blenderproc/command_line.py)

Line Col. Type Symbol ID Obj Message
134 111 convention trailing-whitespace C0303
Trailing whitespace
147 0 convention trailing-whitespace C0303
Trailing whitespace

Module blenderproc.debug_startup (blenderproc/debug_startup.py)

Line Col. Type Symbol ID Obj Message
41 11 refactor consider-using-assignment-expr R6103 RunBlenderProcOperator.execute
Use 'if (import_path := os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))) not in sys.path:' instead
82 11 refactor consider-using-assignment-expr R6103 draw
Use 'if (is_osl := context_text.name.endswith(('.osl', '.osl'))):' instead

Module blenderproc.external.vhacd.decompose (blenderproc/external/vhacd/decompose.py)

Line Col. Type Symbol ID Obj Message
36 0 refactor too-many-positional-arguments R0917 convex_decomposition
Too many positional arguments (11/5)
162 11 refactor consider-using-assignment-expr R6103 convex_decomposition
Use 'if (name := name.replace('#', str(index + 1), 1)) == name_template:' instead

Module blenderproc.python.camera.CameraProjection (blenderproc/python/camera/CameraProjection.py)

Line Col. Type Symbol ID Obj Message
4 0 warning unused-import W0611
Unused create_primitive imported from blenderproc.python.types.MeshObjectUtility
10 0 convention ungrouped-imports C0412
Imports from package blenderproc are not grouped
29 31 convention trailing-whitespace C0303
Trailing whitespace
35 0 convention trailing-whitespace C0303
Trailing whitespace
41 0 convention line-too-long C0301
Line too long (147/120)
85 8 refactor no-else-return R1705 depth_at_points_via_raytracing
Unnecessary "else" after "return", remove the "else" and de-indent the code inside it
89 0 convention trailing-whitespace C0303
Trailing whitespace
90 0 convention line-too-long C0301
Line too long (134/120)
141 0 convention trailing-whitespace C0303
Trailing whitespace
160 7 convention trailing-whitespace C0303
Trailing whitespace
162 33 convention trailing-whitespace C0303
Trailing whitespace
166 0 convention line-too-long C0301
Line too long (132/120)
168 0 convention trailing-newlines C0305
Trailing newlines

Module blenderproc.python.camera.CameraUtility (blenderproc/python/camera/CameraUtility.py)

Line Col. Type Symbol ID Obj Message
1 0 fatal astroid-error F0002
blenderproc/python/camera/CameraUtility.py: Fatal error while checking 'blenderproc/python/camera/CameraUtility.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '${INTERNAL_HOME_FOLDER}/Dominik_Winkelbauer/blender_proc_helper_runs_external/DLR-RM/BlenderProc/1209/pylint_home_folder/pylint-crash-2025-08-13-15-23-41.txt'.

Module blenderproc.python.camera.CameraValidation (blenderproc/python/camera/CameraValidation.py)

Line Col. Type Symbol ID Obj Message
234 23 refactor consider-using-assignment-expr R6103 scene_coverage_score
Use 'if (object_class := hit_object['category_id']) in special_objects:' instead
266 0 refactor too-many-positional-arguments R0917 check_novel_pose
Too many positional arguments (6/5)
287 11 refactor consider-using-assignment-expr R6103 check_novel_pose._variance_constraint
Use 'if (var := np.var(array)) < old_var:' instead

Module blenderproc.python.camera.LensDistortionUtility (blenderproc/python/camera/LensDistortionUtility.py)

Line Col. Type Symbol ID Obj Message
24 0 refactor too-many-positional-arguments R0917 set_lens_distortion
Too many positional arguments (6/5)
318 19 refactor consider-using-assignment-expr R6103 set_camera_parameters_from_config_file
Use 'if (elements := line.split(' ')):' instead
346 15 refactor consider-using-assignment-expr R6103 set_camera_parameters_from_config_file
Use 'if (line := line.replace('=', ':')):' instead

Module blenderproc.python.constructor.RandomRoomConstructor (blenderproc/python/constructor/RandomRoomConstructor.py)

Line Col. Type Symbol ID Obj Message
23 0 refactor too-many-positional-arguments R0917 construct_random_room
Too many positional arguments (13/5)
163 0 refactor too-many-positional-arguments R0917 _construct_random_room
Too many positional arguments (8/5)
407 15 refactor consider-using-assignment-expr R6103 _construct_random_room.extract_plane_from_room
Use 'if (cur_selected_objects := bpy.context.selected_objects):' instead
466 11 refactor consider-using-assignment-expr R6103 _construct_random_room
Use 'if (selected_objects := bpy.context.selected_objects):' instead

Module blenderproc.python.lighting.IntersectingSpotLight (blenderproc/python/lighting/IntersectingSpotLight.py)

Line Col. Type Symbol ID Obj Message
43 0 refactor too-many-positional-arguments R0917 add_intersecting_spot_lights_to_camera_poses
Too many positional arguments (7/5)

Module blenderproc.python.lighting.SuncgLighting (blenderproc/python/lighting/SuncgLighting.py)

Line Col. Type Symbol ID Obj Message
67 19 refactor consider-using-assignment-expr R6103 _SuncgLighting.make_lamp_emissive
Use 'if (old_mat_name := m.get_name()) in collection_of_mats['lamp']:' instead
79 23 refactor consider-using-assignment-expr R6103 _SuncgLighting.make_lamp_emissive
Use 'if not (emission := m.get_nodes_with_type('Emission')):' instead
109 15 refactor consider-using-assignment-expr R6103 _SuncgLighting.make_window_emissive
Use 'if (alpha := principled_node.inputs['Alpha'].default_value) < 1:' instead
111 19 refactor consider-using-assignment-expr R6103 _SuncgLighting.make_window_emissive
Use 'if (mat_name := m.get_name()) in collection_of_mats['window']:' instead
143 15 refactor consider-using-assignment-expr R6103 _SuncgLighting.make_ceiling_emissive
Use 'if (mat_name := material.get_name()) in collection_of_mats['ceiling']:' instead

Module blenderproc.python.loader.AMASSLoader (blenderproc/python/loader/AMASSLoader.py)

Line Col. Type Symbol ID Obj Message
20 0 refactor too-many-positional-arguments R0917 load_AMASS
Too many positional arguments (9/5)
111 4 refactor too-many-positional-arguments R0917 _AMASSLoader.get_pose_parameters
Too many positional arguments (6/5)

Module blenderproc.python.loader.BlendLoader (blenderproc/python/loader/BlendLoader.py)

Line Col. Type Symbol ID Obj Message
27 0 convention line-too-long C0301
Line too long (130/120)
100 0 convention trailing-whitespace C0303
Trailing whitespace

Module blenderproc.python.loader.BopLoader (blenderproc/python/loader/BopLoader.py)

Line Col. Type Symbol ID Obj Message
18 0 refactor too-many-positional-arguments R0917 load_bop_objs
Too many positional arguments (9/5)
73 15 refactor consider-using-assignment-expr R6103 load_bop_objs
Use 'if (random_id := choice(obj_ids)) not in loaded_ids:' instead
98 0 refactor too-many-positional-arguments R0917 load_bop_scene
Too many positional arguments (8/5)
164 61 error possibly-used-before-assignment E0606 load_bop_scene
Possibly using variable 'cam_H_m2w_ref' before assignment
353 0 convention trailing-whitespace C0303
Trailing whitespace

Module blenderproc.python.loader.CCMaterialLoader (blenderproc/python/loader/CCMaterialLoader.py)

Line Col. Type Symbol ID Obj Message
13 0 refactor too-many-positional-arguments R0917 load_ccmaterials
Too many positional arguments (7/5)
73 0 convention line-too-long C0301
Line too long (152/120)
128 4 refactor too-many-positional-arguments R0917 _CCMaterialLoader.create_material
Too many positional arguments (8/5)

Module blenderproc.python.loader.Front3DLoader (blenderproc/python/loader/Front3DLoader.py)

Line Col. Type Symbol ID Obj Message
22 0 refactor too-many-positional-arguments R0917 load_front3d
Too many positional arguments (6/5)
158 15 refactor consider-using-assignment-expr R6103 _Front3DLoader.create_mesh_objects_from_file
Use 'if (used_obj_name := mesh_data['type'].strip()) == '':' instead
282 15 refactor consider-using-assignment-expr R6103 _Front3DLoader.create_mesh_objects_from_file
Use 'if (uv_mesh_data := [float(ele) for ele in mesh_data['uv'] if ele is not None]):' instead

Module blenderproc.python.loader.HavenMaterialLoader (blenderproc/python/loader/HavenMaterialLoader.py)

Line Col. Type Symbol ID Obj Message
60 15 refactor consider-using-assignment-expr R6103 identify_base_color_image_path
Use 'if (search_start := texture_map_path.lower().find(search_string)) != -1:' instead
99 0 refactor too-many-positional-arguments R0917 load_haven_mat
Too many positional arguments (6/5)
165 11 refactor consider-using-assignment-expr R6103 load_haven_mat
Use 'if (texture_map_paths_by_type := identify_texture_maps(str(texture_folder_path))) is None:' instead
213 4 refactor too-many-positional-arguments R0917 HavenMaterialLoader.create_material
Too many positional arguments (9/5)

Module blenderproc.python.loader.IKEALoader (blenderproc/python/loader/IKEALoader.py)

Line Col. Type Symbol ID Obj Message
82 19 refactor consider-using-assignment-expr R6103 load_ikea
Use 'if (file_unit := line.strip().split(' ')[-1]) not in ['inches', 'meters', 'centimeters', 'millimeters']:' instead
181 15 refactor consider-using-assignment-expr R6103 _IKEALoader.get_object_by_type
Use 'if not (object_lst := [obj[0] for (key, obj) in obj_dict.items() if obj_type in key]):' instead
195 15 refactor consider-using-assignment-expr R6103 _IKEALoader.get_object_by_style
Use 'if not (object_lst := [obj[0] for (key, obj) in obj_dict.items() if obj_style in key.lower()]):' instead

Module blenderproc.python.loader.Pix3DLoader (blenderproc/python/loader/Pix3DLoader.py)

Line Col. Type Symbol ID Obj Message
79 31 refactor consider-using-assignment-expr R6103 _Pix3DLoader.get_files_with_category
Use 'if (category := block['category']) == used_category:' instead

Module blenderproc.python.loader.RockEssentialsRockLoader (blenderproc/python/loader/RockEssentialsRockLoader.py)

Line Col. Type Symbol ID Obj Message
75 4 refactor too-many-positional-arguments R0917 RockEssentialsRockLoader.set_rocks_properties
Too many positional arguments (8/5)

Module blenderproc.python.loader.SceneNetLoader (blenderproc/python/loader/SceneNetLoader.py)

Line Col. Type Symbol ID Obj Message
87 27 refactor consider-using-assignment-expr R6103 _SceneNetLoader.random_sample_materials_for_each_obj
Use 'if not (image_paths := glob.glob(os.path.join(texture_folder, mat_name, '*'))):' instead
93 31 refactor consider-using-assignment-expr R6103 _SceneNetLoader.random_sample_materials_for_each_obj
Use 'if not (image_paths := glob.glob(os.path.join(unknown_texture_folder, '*'))):' instead

Module blenderproc.python.loader.SuncgLoader (blenderproc/python/loader/SuncgLoader.py)

Line Col. Type Symbol ID Obj Message
141 4 refactor too-many-positional-arguments R0917 _SuncgLoader.load_room
Too many positional arguments (8/5)
196 4 refactor too-many-positional-arguments R0917 _SuncgLoader.load_ground
Too many positional arguments (7/5)

Module blenderproc.python.loader.URDFLoader (blenderproc/python/loader/URDFLoader.py)

Line Col. Type Symbol ID Obj Message
124 0 refactor too-many-positional-arguments R0917 create_bone
Too many positional arguments (8/5)
387 15 refactor consider-using-assignment-expr R6103 load_visual_collision_obj
Use 'if (color := viscol_tree.material.color) is None:' instead
419 7 refactor consider-using-assignment-expr R6103 load_visual_collision_obj
Use 'if (scale := get_size_from_geometry(viscol_tree.geometry)) is not None:' instead

Module blenderproc.python.material.MaterialLoaderUtility (blenderproc/python/material/MaterialLoaderUtility.py)

Line Col. Type Symbol ID Obj Message
397 15 refactor consider-using-assignment-expr R6103 add_alpha_channel_to_textures
Use 'if (material := slot.material) is None:' instead
521 11 refactor consider-using-assignment-expr R6103 create_procedural_texture
Use 'if (pattern_name := pattern_name.upper()) not in possible_patterns:' instead

Module blenderproc.python.object.FaceSlicer (blenderproc/python/object/FaceSlicer.py)

Line Col. Type Symbol ID Obj Message
71 7 refactor consider-using-assignment-expr R6103 slice_faces_with_normals
Use 'if (selected_objects := bpy.context.selected_objects):' instead
87 0 refactor too-many-positional-arguments R0917 extract_floor
Too many positional arguments (7/5)
207 15 refactor consider-using-assignment-expr R6103 extract_floor
Use 'if (selected_objects := bpy.context.selected_objects):' instead
229 4 refactor too-many-positional-arguments R0917 FaceSlicer.select_at_height_value
Too many positional arguments (6/5)
291 11 refactor consider-using-assignment-expr R6103 FaceSlicer.check_face_angle
Use 'if (normal_face_length := np.linalg.norm(normal_face)) < 1e-07:' instead
298 4 refactor too-many-positional-arguments R0917 FaceSlicer.check_face_with
Too many positional arguments (6/5)

Module blenderproc.python.object.ObjectReplacer (blenderproc/python/object/ObjectReplacer.py)

Line Col. Type Symbol ID Obj Message
12 0 refactor too-many-positional-arguments R0917 replace_objects
Too many positional arguments (7/5)

Module blenderproc.python.object.OnSurfaceSampler (blenderproc/python/object/OnSurfaceSampler.py)

Line Col. Type Symbol ID Obj Message
12 0 refactor too-many-positional-arguments R0917 sample_poses_on_surface
Too many positional arguments (8/5)

Module blenderproc.python.object.PhysicsSimulation (blenderproc/python/object/PhysicsSimulation.py)

Line Col. Type Symbol ID Obj Message
12 0 refactor too-many-positional-arguments R0917 simulate_physics_and_fix_final_poses
Too many positional arguments (9/5)
79 0 refactor too-many-positional-arguments R0917 simulate_physics_and_persist_all_frames
Too many positional arguments (9/5)
84 0 convention line-too-long C0301
Line too long (125/120)
121 59 convention trailing-whitespace C0303
Trailing whitespace
152 0 refactor too-many-positional-arguments R0917 simulate_physics
Too many positional arguments (9/5)
227 4 refactor too-many-positional-arguments R0917 _PhysicsSimulation.do_simulation
Too many positional arguments (6/5)

Module blenderproc.python.postprocessing.PostProcessingUtility (blenderproc/python/postprocessing/PostProcessingUtility.py)

Line Col. Type Symbol ID Obj Message
15 0 convention line-too-long C0301
Line too long (137/120)

Module blenderproc.python.postprocessing.StereoGlobalMatching (blenderproc/python/postprocessing/StereoGlobalMatching.py)

Line Col. Type Symbol ID Obj Message
12 0 refactor too-many-positional-arguments R0917 stereo_global_matching
Too many positional arguments (7/5)
35 11 refactor consider-using-assignment-expr R6103 stereo_global_matching
Use 'if not (baseline := cam.stereo.interocular_distance):' instead
42 11 refactor consider-using-assignment-expr R6103 stereo_global_matching
Use 'if not (baseline := cam.stereo.interocular_distance):' instead
64 4 refactor too-many-positional-arguments R0917 _StereoGlobalMatching.stereo_global_matching
Too many positional arguments (10/5)

Module blenderproc.python.renderer.FlowRendererUtility (blenderproc/python/renderer/FlowRendererUtility.py)

Line Col. Type Symbol ID Obj Message
15 0 refactor too-many-positional-arguments R0917 render_optical_flow
Too many positional arguments (11/5)

Module blenderproc.python.renderer.RendererUtility (blenderproc/python/renderer/RendererUtility.py)

Line Col. Type Symbol ID Obj Message
70 0 refactor too-many-positional-arguments R0917 set_light_bounces
Too many positional arguments (7/5)
179 0 refactor too-many-positional-arguments R0917 enable_distance_output
Too many positional arguments (6/5)
246 0 convention trailing-whitespace C0303
Trailing whitespace
260 0 refactor too-many-positional-arguments R0917 enable_depth_output
Too many positional arguments (6/5)
314 0 convention trailing-whitespace C0303
Trailing whitespace
440 0 refactor too-many-positional-arguments R0917 enable_segmentation_output
Too many positional arguments (6/5)
504 0 convention trailing-whitespace C0303
Trailing whitespace
587 19 refactor consider-using-assignment-expr R6103 _progress_bar_thread
Use 'if not (char := os.read(pipe_out, 1)):' instead
654 0 refactor too-many-positional-arguments R0917 render
Too many positional arguments (7/5)
732 0 refactor too-many-positional-arguments R0917 set_output_format
Too many positional arguments (8/5)
907 15 refactor consider-using-assignment-expr R6103 set_render_devices
Use 'if (devices := preferences.get_devices_for_type(device_type)):' instead

Module blenderproc.python.renderer.SegMapRendererUtility (blenderproc/python/renderer/SegMapRendererUtility.py)

Line Col. Type Symbol ID Obj Message
17 0 refactor too-many-positional-arguments R0917 render_segmap
Too many positional arguments (10/5)
124 19 refactor consider-using-assignment-expr R6103 render_segmap
Use 'if (max_id := np.max(object_ids)) >= len(objects):' instead
178 40 error used-before-assignment E0601 render_segmap
Using variable 'default_value' before assignment

Module blenderproc.python.sampler.Disk (blenderproc/python/sampler/Disk.py)

Line Col. Type Symbol ID Obj Message
10 0 refactor too-many-positional-arguments R0917 disk
Too many positional arguments (6/5)

Module blenderproc.python.sampler.Front3DPointInRoomSampler (blenderproc/python/sampler/Front3DPointInRoomSampler.py)

Line Col. Type Symbol ID Obj Message
38 19 refactor consider-using-assignment-expr R6103 Front3DPointInRoomSampler.__init__
Use 'if (is_above := floor_obj.position_is_above_object(obj.get_location())):' instead

Module blenderproc.python.sampler.PartSphere (blenderproc/python/sampler/PartSphere.py)

Line Col. Type Symbol ID Obj Message
55 11 refactor consider-using-assignment-expr R6103 part_sphere
Use 'if (length := loc_in_sphere.dot(part_sphere_dir_vector)) > dist_above_center:' instead

Module blenderproc.python.sampler.RandomWalk (blenderproc/python/sampler/RandomWalk.py)

Line Col. Type Symbol ID Obj Message
8 0 refactor too-many-positional-arguments R0917 random_walk
Too many positional arguments (7/5)

Module blenderproc.python.sampler.Shell (blenderproc/python/sampler/Shell.py)

Line Col. Type Symbol ID Obj Message
9 0 refactor too-many-positional-arguments R0917 shell
Too many positional arguments (8/5)

Module blenderproc.python.sampler.SuncgPointInRoomSampler (blenderproc/python/sampler/SuncgPointInRoomSampler.py)

Line Col. Type Symbol ID Obj Message
26 19 refactor consider-using-assignment-expr R6103 SuncgPointInRoomSampler.__init__
Use 'if (floor_obj := self._find_floor(suncg_objects, room_obj)) is not None:' instead

Module blenderproc.python.sampler.UpperRegionSampler (blenderproc/python/sampler/UpperRegionSampler.py)

Line Col. Type Symbol ID Obj Message
13 0 refactor too-many-positional-arguments R0917 upper_region
Too many positional arguments (7/5)
93 15 refactor consider-using-assignment-expr R6103 upper_region
Use 'if (diff_angle := math.acos(normal.dot(upper_dir))) < min_diff_angle:' instead

Module blenderproc.python.types.ArmatureUtility (blenderproc/python/types/ArmatureUtility.py)

Line Col. Type Symbol ID Obj Message
109 11 refactor consider-using-assignment-expr R6103 Armature._clip_value_from_constraint
Use 'if (c := self.get_constraint(constraint_name=constraint_name)) is not None:' instead

Module blenderproc.python.types.BoneUtility (blenderproc/python/types/BoneUtility.py)

Line Col. Type Symbol ID Obj Message
128 0 refactor too-many-positional-arguments R0917 set_ik_constraint
Too many positional arguments (6/5)
165 0 refactor too-many-positional-arguments R0917 set_copy_location_constraint
Too many positional arguments (7/5)

Module blenderproc.python.types.EntityUtility (blenderproc/python/types/EntityUtility.py)

Line Col. Type Symbol ID Obj Message
170 11 convention unidiomatic-typecheck C0123 Entity.duplicate
Use isinstance() rather than type() for a typecheck.

Module blenderproc.python.types.LightUtility (blenderproc/python/types/LightUtility.py)

Line Col. Type Symbol ID Obj Message
126 12 refactor consider-using-augmented-assign R6104 Light.setup_as_projector
Use '/=' to do an augmented assign directly
217 0 convention trailing-whitespace C0303
Trailing whitespace

Module blenderproc.python.types.LinkUtility (blenderproc/python/types/LinkUtility.py)

Line Col. Type Symbol ID Obj Message
116 19 refactor consider-using-assignment-expr R6103 Link._set_rotation_euler
Use 'if (axis := self._determine_rotation_axis(bone=bone)) is not None:' instead
181 11 refactor consider-using-assignment-expr R6103 Link._determine_rotation_axis
Use 'if (c := get_constraint(bone=bone, constraint_name='Limit Rotation')) is None:' instead
212 11 refactor consider-using-assignment-expr R6103 Link._clip_value_from_constraint
Use 'if (c := get_constraint(bone=bone, constraint_name=constraint_name)) is not None:' instead

Module blenderproc.python.types.MaterialUtility (blenderproc/python/types/MaterialUtility.py)

Line Col. Type Symbol ID Obj Message
282 4 refactor too-many-positional-arguments R0917 Material.infuse_texture
Too many positional arguments (7/5)
302 11 refactor consider-using-assignment-expr R6103 Material.infuse_texture
Use 'if (used_mode := mode.lower()) not in ['overlay', 'mix', 'set']:' instead
362 11 refactor consider-using-assignment-expr R6103 Material.infuse_material
Use 'if (used_mode := mode.lower()) not in ['add', 'mix']:' instead

Module blenderproc.python.types.MeshObjectUtility (blenderproc/python/types/MeshObjectUtility.py)

Line Col. Type Symbol ID Obj Message
20 0 warning unused-import W0611
Unused SetupUtility imported from blenderproc.python.utility.SetupUtility
187 4 refactor too-many-positional-arguments R0917 MeshObject.enable_rigidbody
Too many positional arguments (10/5)
245 16 error possibly-used-before-assignment E0606 MeshObject.build_convex_decomposition_collision_shape
Possibly using variable 'convex_decomposition' before assignment
289 15 refactor consider-using-assignment-expr R6103 MeshObject.get_bound_box_volume
Use 'if (dist := np.linalg.norm(point - min_point)) > max_dist:' instead
475 4 refactor too-many-positional-arguments R0917 MeshObject.add_displace_modifier
Too many positional arguments (6/5)
549 87 convention trailing-whitespace C0303
Trailing whitespace
554 0 convention line-too-long C0301
Line too long (123/120)
557 0 convention trailing-whitespace C0303
Trailing whitespace
562 11 refactor consider-using-assignment-expr R6103 MeshObject.add_auto_smooth_modifier
Use 'if (existing_node_group := bpy.data.node_groups.get(smooth_by_angle_node_group_name, None)) is None:' instead
563 68 warning unused-variable W0612 MeshObject.add_auto_smooth_modifier
Unused variable 'data_from'
571 16 warning self-assigning-variable W0127 MeshObject.add_auto_smooth_modifier
Assigning the same variable 'modifier' to itself
573 0 convention trailing-whitespace C0303
Trailing whitespace
584 0 warning bad-indentation W0311
Bad indentation. Found 9 spaces, expected 8
588 0 convention trailing-whitespace C0303
Trailing whitespace
590 0 warning bad-indentation W0311
Bad indentation. Found 9 spaces, expected 8
591 0 convention trailing-whitespace C0303
Trailing whitespace
593 0 warning bad-indentation W0311
Bad indentation. Found 9 spaces, expected 8
595 0 warning bad-indentation W0311
Bad indentation. Found 13 spaces, expected 12
596 0 warning bad-indentation W0311
Bad indentation. Found 13 spaces, expected 12
597 0 warning bad-indentation W0311
Bad indentation. Found 13 spaces, expected 12
598 90 convention trailing-whitespace C0303
Trailing whitespace
598 0 warning bad-indentation W0311
Bad indentation. Found 13 spaces, expected 12
599 0 warning bad-indentation W0311
Bad indentation. Found 13 spaces, expected 12
600 0 warning bad-indentation W0311
Bad indentation. Found 13 spaces, expected 12
601 0 convention trailing-whitespace C0303
Trailing whitespace
602 23 convention trailing-whitespace C0303
Trailing whitespace
603 0 warning bad-indentation W0311
Bad indentation. Found 9 spaces, expected 8
605 0 warning bad-indentation W0311
Bad indentation. Found 9 spaces, expected 8
606 20 convention trailing-whitespace C0303
Trailing whitespace
607 0 warning bad-indentation W0311
Bad indentation. Found 9 spaces, expected 8
608 0 convention trailing-whitespace C0303
Trailing whitespace
609 0 warning bad-indentation W0311
Bad indentation. Found 9 spaces, expected 8
760 28 convention trailing-whitespace C0303
Trailing whitespace

Module blenderproc.python.utility.CollisionUtility (blenderproc/python/utility/CollisionUtility.py)

Line Col. Type Symbol ID Obj Message
47 15 refactor consider-using-assignment-expr R6103 CollisionUtility.check_intersections
Use 'if (intersection := CollisionUtility.check_bb_intersection(obj, collision_obj)):' instead

Module blenderproc.python.utility.Initializer (blenderproc/python/utility/Initializer.py)

Line Col. Type Symbol ID Obj Message
10 0 convention wrong-import-order C0411
standard import "typing.Optional" should be placed before third party import "numpy.random"
21 0 convention missing-function-docstring C0116 clean_temp_dir
Missing function or method docstring
31 0 convention missing-function-docstring C0116 handle_sigterm
Missing function or method docstring
43 0 convention line-too-long C0301
Line too long (130/120)
53 25 convention trailing-whitespace C0303
Trailing whitespace
76 7 refactor consider-using-assignment-expr R6103 init
Use 'if (random_seed := os.getenv('BLENDER_PROC_RANDOM_SEED')):' instead
108 0 convention trailing-whitespace C0303
Trailing whitespace

Module blenderproc.python.utility.InstallUtility (blenderproc/python/utility/InstallUtility.py)

Line Col. Type Symbol ID Obj Message
41 0 convention line-too-long C0301
Line too long (140/120)
42 0 convention trailing-whitespace C0303
Trailing whitespace
47 11 refactor consider-using-assignment-expr R6103 InstallUtility.determine_blender_install_path
Use 'if (blender_install_path := used_args.blender_install_path) is None:' instead
66 12 convention import-outside-toplevel C0415 InstallUtility.make_sure_blender_is_installed
Import outside toplevel (bpy)
68 0 convention trailing-whitespace C0303
Trailing whitespace
136 0 convention trailing-whitespace C0303
Trailing whitespace
159 35 refactor consider-using-assignment-expr R6103 InstallUtility.make_sure_blender_is_installed.DownloadProgressBar.__call__
Use 'if (downloaded := block_num * block_size) < total_size:' instead
170 23 error possibly-used-before-assignment E0606 InstallUtility.make_sure_blender_is_installed
Possibly using variable 'URLError' before assignment
186 48 error possibly-used-before-assignment E0606 InstallUtility.make_sure_blender_is_installed
Possibly using variable 'lzma' before assignment

Module blenderproc.python.utility.SetupUtility (blenderproc/python/utility/SetupUtility.py)

Line Col. Type Symbol ID Obj Message
7 0 warning unused-import W0611
Unused import shutil
64 0 convention line-too-long C0301
Line too long (122/120)
65 0 convention trailing-whitespace C0303
Trailing whitespace
73 15 refactor consider-using-assignment-expr R6103 SetupUtility.setup
Use 'if (is_debug_mode := '--background' not in sys.argv):' instead
114 0 convention line-too-long C0301
Line too long (122/120)
115 0 convention trailing-whitespace C0303
Trailing whitespace
150 4 refactor too-many-positional-arguments R0917 SetupUtility.setup_pip
Too many positional arguments (6/5)
150 4 refactor inconsistent-return-statements R1710 SetupUtility.setup_pip
Either all return statements in a function should return an expression, or none of them should.
184 0 convention trailing-whitespace C0303
Trailing whitespace
217 4 refactor too-many-positional-arguments R0917 SetupUtility._pip_install_packages
Too many positional arguments (6/5)
386 0 convention trailing-whitespace C0303
Trailing whitespace

Module blenderproc.python.utility.Utility (blenderproc/python/utility/Utility.py)

Line Col. Type Symbol ID Obj Message
5 0 warning unused-import W0611
Unused import shutil
371 4 refactor too-many-positional-arguments R0917 Utility.register_output
Too many positional arguments (6/5)

Module blenderproc.python.writer.BopWriterUtility (blenderproc/python/writer/BopWriterUtility.py)

Line Col. Type Symbol ID Obj Message
9 0 convention wrong-import-order C0411
standard import "typing.List" should be placed before third party import "trimesh"
10 0 convention wrong-import-order C0411
standard import "warnings" should be placed before third party import "trimesh"
11 0 convention wrong-import-order C0411
standard import "datetime" should be placed before third party import "trimesh"
18 0 convention wrong-import-order C0411
standard import "sys" should be placed before third party imports "trimesh", "numpy", "png", "cv2", "bpy", "mathutils.Matrix"
31 0 refactor too-many-positional-arguments R0917 write_bop
Too many positional arguments (17/5)
62 0 convention line-too-long C0301
Line too long (131/120)
80 8 warning redefined-outer-name W0621 write_bop
Redefining name 'dataset_objects' from outer scope (line 544)
175 12 warning protected-access W0212 write_bop
Access to a protected member _pyrender_init of a client class
177 0 convention line-too-long C0301
Line too long (124/120)
177 48 warning protected-access W0212 write_bop
Access to a protected member _pyrender_init of a client class
177 19 refactor consider-using-with R1732 write_bop
Consider using 'with' for resource-allocating operations
181 0 convention trailing-whitespace C0303
Trailing whitespace
187 0 convention trailing-whitespace C0303
Trailing whitespace
193 12 warning protected-access W0212 write_bop
Access to a protected member _pyrender_cleanup of a client class
313 21 warning redefined-outer-name W0621 _BopWriterUtility.get_frame_gt
Redefining name 'dataset_objects' from outer scope (line 544)
400 4 refactor too-many-positional-arguments R0917 _BopWriterUtility.write_frames
Too many positional arguments (11/5)
400 38 warning redefined-outer-name W0621 _BopWriterUtility.write_frames
Redefining name 'dataset_objects' from outer scope (line 544)
526 0 convention trailing-whitespace C0303
Trailing whitespace
538 78 convention trailing-whitespace C0303
Trailing whitespace
542 8 warning global-variable-undefined W0601 _BopWriterUtility._pyrender_init
Global variable 'renderer' undefined at the module level
542 8 warning global-variable-undefined W0601 _BopWriterUtility._pyrender_init
Global variable 'renderer_large' undefined at the module level
542 8 warning global-variable-undefined W0601 _BopWriterUtility._pyrender_init
Global variable 'dataset_objects' undefined at the module level
564 8 warning global-variable-undefined W0601 _BopWriterUtility._pyrender_cleanup
Global variable 'renderer' undefined at the module level
564 8 warning global-variable-undefined W0601 _BopWriterUtility._pyrender_cleanup
Global variable 'renderer_large' undefined at the module level
564 8 warning global-variable-undefined W0601 _BopWriterUtility._pyrender_cleanup
Global variable 'dataset_objects' undefined at the module level
570 0 convention line-too-long C0301
Line too long (173/120)
570 4 refactor too-many-positional-arguments R0917 _BopWriterUtility._calc_gt_masks_iteration
Too many positional arguments (7/5)
585 78 convention trailing-whitespace C0303
Trailing whitespace
591 8 warning global-variable-not-assigned W0602 _BopWriterUtility._calc_gt_masks_iteration
Using global for 'renderer' but no assignment is done
591 8 warning global-variable-not-assigned W0602 _BopWriterUtility._calc_gt_masks_iteration
Using global for 'dataset_objects' but no assignment is done
598 0 convention trailing-whitespace C0303
Trailing whitespace
689 0 convention line-too-long C0301
Line too long (165/120)
690 0 convention trailing-whitespace C0303
Trailing whitespace
693 0 convention line-too-long C0301
Line too long (196/120)
693 4 refactor too-many-positional-arguments R0917 _BopWriterUtility._calc_gt_info_iteration
Too many positional arguments (9/5)
706 11 convention trailing-whitespace C0303
Trailing whitespace
708 78 convention trailing-whitespace C0303
Trailing whitespace
714 8 warning global-variable-not-assigned W0602 _BopWriterUtility._calc_gt_info_iteration
Using global for 'renderer_large' but no assignment is done
714 8 warning global-variable-not-assigned W0602 _BopWriterUtility._calc_gt_info_iteration
Using global for 'dataset_objects' but no assignment is done
714 8 warning global-variable-not-assigned W0602 _BopWriterUtility._calc_gt_info_iteration
Using global for 'renderer' but no assignment is done
718 11 warning protected-access W0212 _BopWriterUtility._calc_gt_info_iteration
Access to a protected member _renderer of a client class
719 12 warning protected-access W0212 _BopWriterUtility._calc_gt_info_iteration
Access to a protected member _renderer of a client class
720 12 warning protected-access W0212 _BopWriterUtility._calc_gt_info_iteration
Access to a protected member _renderer of a client class
727 0 convention trailing-whitespace C0303
Trailing whitespace
856 0 convention line-too-long C0301
Line too long (207/120)
857 0 convention trailing-whitespace C0303
Trailing whitespace
865 44 warning redefined-outer-name W0621 _BopWriterUtility.calc_gt_coco
Redefining name 'dataset_objects' from outer scope (line 544)

Module blenderproc.python.writer.CocoWriterUtility (blenderproc/python/writer/CocoWriterUtility.py)

Line Col. Type Symbol ID Obj Message
17 0 refactor too-many-positional-arguments R0917 write_coco_annotations
Too many positional arguments (12/5)
148 4 refactor too-many-positional-arguments R0917 _CocoWriterUtility.generate_coco_annotations
Too many positional arguments (7/5)
325 4 refactor too-many-positional-arguments R0917 _CocoWriterUtility.create_annotation_info
Too many positional arguments (7/5)
344 11 refactor consider-using-assignment-expr R6103 _CocoWriterUtility.create_annotation_info
Use 'if (area := _CocoWriterUtility.calc_binary_mask_area(binary_mask)) < 1:' instead
353 19 refactor consider-using-assignment-expr R6103 _CocoWriterUtility.create_annotation_info
Use 'if not (segmentation := _CocoWriterUtility.binary_mask_to_polygon(binary_mask, tolerance)):' instead

Module blenderproc.python.writer.GifWriterUtility (blenderproc/python/writer/GifWriterUtility.py)

Line Col. Type Symbol ID Obj Message
13 0 convention wrong-import-position C0413
Import "from blenderproc.scripts.visHdf5Files import vis_data" should be placed at the top of the module
14 0 convention wrong-import-position C0413
Import "from blenderproc.python.utility.Utility import Utility" should be placed at the top of the module

Module blenderproc.python.writer.WriterUtility (blenderproc/python/writer/WriterUtility.py)

Line Col. Type Symbol ID Obj Message
90 15 refactor consider-using-assignment-expr R6103 write_hdf5
Use 'if (blender_proc_version := Utility.get_current_version()) is not None:' instead
263 15 refactor consider-using-assignment-expr R6103 _WriterUtility.get_common_attribute
Use 'if (custom_property_name := attribute_name[len('customprop_'):]) in item:' instead

Module blenderproc.resources.front_3D.find_all_front_3D_labels (blenderproc/resources/front_3D/find_all_front_3D_labels.py)

Line Col. Type Symbol ID Obj Message
61 15 refactor consider-using-assignment-expr R6103
Use 'if (used_obj_name := mesh_data['type'].strip()) == '':' instead

Module blenderproc.scripts.download_haven (blenderproc/scripts/download_haven.py)

Line Col. Type Symbol ID Obj Message
66 15 refactor consider-using-assignment-expr R6103 cli.download_items
Use 'if not (missing_item_ids := list(filter(item_file_exists, map(lambda item_id: item_id, data.keys())))):' instead

Module blenderproc.scripts.download_ikea (blenderproc/scripts/download_ikea.py)

Line Col. Type Symbol ID Obj Message
54 15 refactor consider-using-assignment-expr R6103 split_object_according_to_groups
Use 'if (amount_of_faces := sum((1 for l in final_lins if l.startswith('f ')))) > 10:' instead

Module blenderproc.scripts.quickstart (blenderproc/scripts/quickstart.py)

Line Col. Type Symbol ID Obj Message
1 0 convention missing-module-docstring C0114
Missing module docstring
1 0 fatal astroid-error F0002
blenderproc/scripts/quickstart.py: Fatal error while checking 'blenderproc/scripts/quickstart.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '${INTERNAL_HOME_FOLDER}/Dominik_Winkelbauer/blender_proc_helper_runs_external/DLR-RM/BlenderProc/1209/pylint_home_folder/pylint-crash-2025-08-13-15-25-01.txt'.
2 0 warning pointless-string-statement W0105
String statement has no effect
13 0 convention wrong-import-position C0413
Import "import numpy as np" should be placed at the top of the module

Module blenderproc.scripts.saveAsImg (blenderproc/scripts/saveAsImg.py)

Line Col. Type Symbol ID Obj Message
3 0 convention wrong-import-position C0413
Import "import argparse" should be placed at the top of the module
3 0 convention wrong-import-order C0411
standard import "argparse" should be placed before third party imports "blenderproc", "numpy"
4 0 convention wrong-import-position C0413
Import "import os" should be placed at the top of the module
4 0 convention wrong-import-order C0411
standard import "os" should be placed before third party imports "blenderproc", "numpy"
5 0 convention wrong-import-position C0413
Import "from typing import Optional" should be placed at the top of the module
5 0 convention wrong-import-order C0411
standard import "typing.Optional" should be placed before third party imports "blenderproc", "numpy"
7 0 convention wrong-import-position C0413
Import "import h5py" should be placed at the top of the module
8 0 convention wrong-import-position C0413
Import "import numpy as np" should be placed at the top of the module
8 0 convention ungrouped-imports C0412
Imports from package numpy are not grouped

Module blenderproc.scripts.visHdf5Files (blenderproc/scripts/visHdf5Files.py)

Line Col. Type Symbol ID Obj Message
60 0 refactor too-many-positional-arguments R0917 vis_data
Too many positional arguments (11/5)
157 0 refactor too-many-positional-arguments R0917 vis_file
Too many positional arguments (9/5)

Module blenderproc.scripts.vis_coco_annotation (blenderproc/scripts/vis_coco_annotation.py)

Line Col. Type Symbol ID Obj Message
43 11 refactor consider-using-assignment-expr R6103 cli.get_category
Use 'if (category := [category['name'] for category in categories if category['id'] == _id]):' instead

Metrics

Count per types

Name Count
fatal 3
convention 98
warning 42
refactor 125
error 5

Count per messages

Name Count
astroid-error 3
line-too-long 21
trailing-whitespace 49
raise-missing-from 1
wrong-import-position 9
wrong-import-order 10
ungrouped-imports 3
consider-using-assignment-expr 62
too-many-positional-arguments 59
trailing-newlines 1
no-else-return 1
unused-import 4
possibly-used-before-assignment 4
used-before-assignment 1
unidiomatic-typecheck 1
consider-using-augmented-assign 1
bad-indentation 13
self-assigning-variable 1
unused-variable 1
missing-function-docstring 2
import-outside-toplevel 1
inconsistent-return-statements 1
redefined-outer-name 4
protected-access 6
consider-using-with 1
global-variable-undefined 6
global-variable-not-assigned 5
missing-module-docstring 1
pointless-string-statement 1

Count per modules

Name Count
blenderproc.python.camera.CameraUtility 1
blenderproc 8
blenderproc.__main__ 4
blenderproc.command_line 2
blenderproc.debug_startup 2
blenderproc.external.vhacd.decompose 2
blenderproc.python.camera.CameraProjection 13
blenderproc.python.camera.CameraValidation 3
blenderproc.python.camera.LensDistortionUtility 3
blenderproc.python.constructor.RandomRoomConstructor 4
blenderproc.python.lighting.IntersectingSpotLight 1
blenderproc.python.lighting.SuncgLighting 5
blenderproc.python.loader.AMASSLoader 2
blenderproc.python.loader.BlendLoader 2
blenderproc.python.loader.BopLoader 5
blenderproc.python.loader.CCMaterialLoader 3
blenderproc.python.loader.Front3DLoader 3
blenderproc.python.loader.HavenMaterialLoader 4
blenderproc.python.loader.IKEALoader 3
blenderproc.python.loader.Pix3DLoader 1
blenderproc.python.loader.RockEssentialsRockLoader 1
blenderproc.python.loader.SceneNetLoader 2
blenderproc.python.loader.SuncgLoader 2
blenderproc.python.loader.URDFLoader 3
blenderproc.python.material.MaterialLoaderUtility 2
blenderproc.python.object.FaceSlicer 6
blenderproc.python.object.ObjectReplacer 1
blenderproc.python.object.OnSurfaceSampler 1
blenderproc.python.object.PhysicsSimulation 6
blenderproc.python.postprocessing.PostProcessingUtility 1
blenderproc.python.postprocessing.StereoGlobalMatching 4
blenderproc.python.renderer.FlowRendererUtility 1
blenderproc.python.renderer.RendererUtility 11
blenderproc.python.renderer.SegMapRendererUtility 3
blenderproc.python.sampler.Disk 1
blenderproc.python.sampler.Front3DPointInRoomSampler 1
blenderproc.python.sampler.PartSphere 1
blenderproc.python.sampler.RandomWalk 1
blenderproc.python.sampler.Shell 1
blenderproc.python.sampler.SuncgPointInRoomSampler 1
blenderproc.python.sampler.UpperRegionSampler 2
blenderproc.python.types.ArmatureUtility 1
blenderproc.python.types.BoneUtility 2
blenderproc.python.types.EntityUtility 1
blenderproc.python.types.LightUtility 2
blenderproc.python.types.LinkUtility 3
blenderproc.python.types.MaterialUtility 3
blenderproc.python.types.MeshObjectUtility 33
blenderproc.python.utility.CollisionUtility 1
blenderproc.python.utility.Initializer 7
blenderproc.python.utility.InstallUtility 9
blenderproc.python.utility.SetupUtility 11
blenderproc.python.utility.Utility 2
blenderproc.python.writer.BopWriterUtility 47
blenderproc.python.writer.CocoWriterUtility 5
blenderproc.python.writer.GifWriterUtility 2
blenderproc.python.writer.WriterUtility 2
blenderproc.resources.front_3D.find_all_front_3D_labels 1
blenderproc.scripts.download_haven 1
blenderproc.scripts.download_ikea 1
blenderproc.scripts.quickstart 4
blenderproc.scripts.saveAsImg 9
blenderproc.scripts.visHdf5Files 2
blenderproc.scripts.vis_coco_annotation 1

Count per path

Name Count
blenderproc/python/camera/CameraUtility.py 1
blenderproc/__init__.py 8
blenderproc/__main__.py 4
blenderproc/command_line.py 2
blenderproc/debug_startup.py 2
blenderproc/external/vhacd/decompose.py 2
blenderproc/python/camera/CameraProjection.py 13
blenderproc/python/camera/CameraValidation.py 3
blenderproc/python/camera/LensDistortionUtility.py 3
blenderproc/python/constructor/RandomRoomConstructor.py 4
blenderproc/python/lighting/IntersectingSpotLight.py 1
blenderproc/python/lighting/SuncgLighting.py 5
blenderproc/python/loader/AMASSLoader.py 2
blenderproc/python/loader/BlendLoader.py 2
blenderproc/python/loader/BopLoader.py 5
blenderproc/python/loader/CCMaterialLoader.py 3
blenderproc/python/loader/Front3DLoader.py 3
blenderproc/python/loader/HavenMaterialLoader.py 4
blenderproc/python/loader/IKEALoader.py 3
blenderproc/python/loader/Pix3DLoader.py 1
blenderproc/python/loader/RockEssentialsRockLoader.py 1
blenderproc/python/loader/SceneNetLoader.py 2
blenderproc/python/loader/SuncgLoader.py 2
blenderproc/python/loader/URDFLoader.py 3
blenderproc/python/material/MaterialLoaderUtility.py 2
blenderproc/python/object/FaceSlicer.py 6
blenderproc/python/object/ObjectReplacer.py 1
blenderproc/python/object/OnSurfaceSampler.py 1
blenderproc/python/object/PhysicsSimulation.py 6
blenderproc/python/postprocessing/PostProcessingUtility.py 1
blenderproc/python/postprocessing/StereoGlobalMatching.py 4
blenderproc/python/renderer/FlowRendererUtility.py 1
blenderproc/python/renderer/RendererUtility.py 11
blenderproc/python/renderer/SegMapRendererUtility.py 3
blenderproc/python/sampler/Disk.py 1
blenderproc/python/sampler/Front3DPointInRoomSampler.py 1
blenderproc/python/sampler/PartSphere.py 1
blenderproc/python/sampler/RandomWalk.py 1
blenderproc/python/sampler/Shell.py 1
blenderproc/python/sampler/SuncgPointInRoomSampler.py 1
blenderproc/python/sampler/UpperRegionSampler.py 2
blenderproc/python/types/ArmatureUtility.py 1
blenderproc/python/types/BoneUtility.py 2
blenderproc/python/types/EntityUtility.py 1
blenderproc/python/types/LightUtility.py 2
blenderproc/python/types/LinkUtility.py 3
blenderproc/python/types/MaterialUtility.py 3
blenderproc/python/types/MeshObjectUtility.py 33
blenderproc/python/utility/CollisionUtility.py 1
blenderproc/python/utility/Initializer.py 7
blenderproc/python/utility/InstallUtility.py 9
blenderproc/python/utility/SetupUtility.py 11
blenderproc/python/utility/Utility.py 2
blenderproc/python/writer/BopWriterUtility.py 47
blenderproc/python/writer/CocoWriterUtility.py 5
blenderproc/python/writer/GifWriterUtility.py 2
blenderproc/python/writer/WriterUtility.py 2
blenderproc/resources/front_3D/find_all_front_3D_labels.py 1
blenderproc/scripts/download_haven.py 1
blenderproc/scripts/download_ikea.py 1
blenderproc/scripts/quickstart.py 4
blenderproc/scripts/saveAsImg.py 9
blenderproc/scripts/visHdf5Files.py 2
blenderproc/scripts/vis_coco_annotation.py 1
***The tests are done.*** Check the log:

Last update: 08/13/2025, 15:51:59

cornerfarmer avatar Aug 13 '25 13:08 cornerfarmer

For contributing to BlenderProc you need to sign our Contributor License Agreement. As an individual please sign CLA_individuals.pdf, as a company please sign CLA_entities.pdf and send it to [email protected]

cla-bot[bot] avatar Nov 24 '25 13:11 cla-bot[bot]