While generating synthetic data, I noticed that the 3D bounding boxes of some reconstructed assets are incorrect—the resulting bounding boxes are significantly larger than the actual objects. I’ve tried several approaches to resolve this, including:
-
Removing the extent attribute from the object mesh
-
Using bounding_box_3d instead of bounding_box_3d_fast in SDG
-
Combining both of the above methods
-
Using the compute_obb method
-
Rotate the object so that it aligns with the XY-axis. The bounding box of the original object and the rotated bounding box are as follows:
What should I do to fix this issue?
The assets is here:
box3_0.105.zip (8.7 MB)
Thanks for providing the assets to test with. I’ve opened it up, but I think I need a bit more info. What is the prim you’re labelling?
I’ve tested labelling DModel Xform. It shows as your first image is. Rotating that prim the bbox rotates with the prim. Rotating the child MModel mesh primshows the same bbox behaviour, the bbox rotates with the child prim rotation.
As for the box not aligning to the visible box orientation, it seems your mesh’s rotation is baked in. Meaning the box verts are oriented like that within its local transform space. Or put another way, in blender this would be the equivalent of applying the rotation transform.
If you can provide reproable steps I can try to replicate on my side, but with Isaac Sim 5.1 this seems I can’t replicate your second image, and the cardboard box and bbox orientation mismatch seems to be a result of the asset itself.