bbox-utils¶
Utilities to easily convert between different bounding box formats (YOLO, XYWH, XYXY, etc.).
Description¶
You can find documentation for the project at here.
List of points [top left, top right, bottom right, bottom left]
XYWH: top left, width, height
XYXY: top left, bottom right
YOLO
You can create a 3D bounding box with either:
A center point, width, height, depth, and rotation
The back-bottom-left point, width, height, depth, and rotation
You can convert between the two forms and also get a triangular polygon to use for plotting triangular meshes.
The majority of the 3D Bounding Box implementation comes from the bbox PyPI package.
Visualizations You can use bbox-utils to visualize annotations within point clouds or images.
To use point clouds, you will need to install open3d and plotly with either:
pip3 install open3d plotly==4.14.3
pip install
# or
conda install -c open3d-admin open3d
conda install -c plotly plotly=4.14.3
At the time of writing this, open3d requires Python < 3.9
To use images, you will need to install OpenCV:
pip3 install opencv-python
# or
conda install opencv -c conda-forge
Making Changes & Contributing¶
This project uses pre-commit, please make sure to install it before making any changes:
pip install pre-commit
cd bbox-utils
pre-commit install
It is a good idea to update the hooks to the latest version:
pre-commit autoupdate
Note¶
This project has been set up using PyScaffold 4.0rc1. For details and usage information on PyScaffold see https://pyscaffold.org/.