# bop_toolkit_challenge **Repository Path**: jackmacoder/bop_toolkit_challenge ## Basic Information - **Project Name**: bop_toolkit_challenge - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-04-02 - **Last Updated**: 2025-04-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # BOP Toolkit A Python toolkit of the BOP benchmark for 6D object pose estimation (http://bop.felk.cvut.cz). - **bop_toolkit_lib** - The core Python library for i/o operations, calculation of pose errors, Python based rendering etc. - **docs** - Documentation and conventions. - **scripts** - Scripts for evaluation, rendering of training images, visualization of 6D object poses etc. ## Installation ### Python Dependencies To install the required python libraries, run: ``` pip install -r requirements.txt ``` In the case of problems, try to first run: ```pip install --upgrade pip setuptools``` ### Python Renderer The Python based renderer is implemented using [Glumpy](https://glumpy.github.io/) which depends on [freetype](https://www.freetype.org/) and [GLFW](https://www.glfw.org/). Glumpy is installed using the pip command above. On Linux, freetype and GLFW can be installed by: ``` apt-get install freetype apt-get install libglfw3 ``` To install freetype and GLFW on Windows, follow [these instructions](https://glumpy.readthedocs.io/en/latest/installation.html#step-by-step-install-for-x64-bit-windows-7-8-and-10). GLFW serves as a backend of Glumpy. [Another backend](https://glumpy.readthedocs.io/en/latest/api/app-backends.html) can be used but were not tested with our code. ### C++ Renderer For fast CPU-based rendering on a headless server, we recommend installing [bop_renderer](https://github.com/thodan/bop_renderer), an off-screen C++ renderer with Python bindings. ## Usage ### 1. Get the BOP datasets Download the BOP datasets and make sure they are in the [expected folder structure](https://bop.felk.cvut.cz/datasets/). ### 2. Run your method Estimate poses and save them in one .csv file per dataset ([format description](https://bop.felk.cvut.cz/challenges/bop_challenge_2019/#howtoparticipate)). ### 3. Configure the BOP Toolkit In [bop_toolkit_lib/config.py](https://github.com/thodan/bop_toolkit/blob/master/bop_toolkit_lib/config.py), set paths to the BOP datasets, to a folder with results to be evaluated, and to a folder for the evaluation output. The other parameters are necessary only if you want to visualize results or run the C++ Renderer. ### 4. Evaluate the pose estimates ``` python scripts/eval_bop19.py --renderer_type=python --result_filenames=NAME_OF_CSV_WITH_RESULTS ``` --renderer_type: Either "python" or "cpp" (you need to install the C++ Renderer for the latter). --result_filenames: Comma-separated filenames with pose estimates in .csv ([examples](http://ptak.felk.cvut.cz/6DB/public/bop_sample_results)).