Installation

May 30, 2026 ยท View on GitHub

Requirements

BoxMOT supports Python 3.10 through 3.13.

Basic install

pip install boxmot
boxmot --help

This installs the core package. It is enough for simple tracking and Python API usage when your detector and ReID backends are already available in the environment.

Mode-specific extras

BoxMOT keeps heavier workflow dependencies optional. Install the extras that match the modes and export targets you plan to use.

WorkflowPyPI installSource checkout with uvNotes
track, generate, eval with common YOLO backendspip install "boxmot[yolo]"uv sync --extra yoloPreinstalls Ultralytics and YOLOX. If you skip this, BoxMOT can install some detector packages on first use.
train and eval-reidpip install boxmotuv syncUses the built-in ReID training and evaluation stack. You still need to place the chosen ReID dataset under your --data-dir.
tunepip install "boxmot[evolve]"uv sync --extra evolveInstalls Ray Tune, Optuna, Plotly, and related tuning dependencies.
researchpip install "boxmot[research]"uv sync --extra researchInstalls GEPA for the code-evolution loop.
export --include onnxpip install "boxmot[onnx]"uv sync --extra onnxThe default export path uses ONNX.
export --include openvinopip install "boxmot[openvino]"uv sync --extra openvinoUsually paired with --include onnx.
export --include tflitepip install "boxmot[tflite]"uv sync --extra tflitePython 3.12 on Linux or Windows only.

You can combine extras when needed:

uv sync --extra yolo --extra evolve --extra research
pip install "boxmot[yolo,evolve,research]"

boxmot export --include engine requires NVIDIA TensorRT to be available in the environment. It is not provided as a BoxMOT extra.

Native C++ backends

Native C++ tracker backends are built lazily the first time you select --tracker-backend cpp. They are currently available for botsort, bytetrack, ocsort, occluboost, and sfsort.

Install the native build tools before using them:

  • C++17 compiler
  • CMake 3.16+
  • OpenCV 4.x
  • Eigen3 3.3+

Example:

boxmot track --detector yolov8n --tracker bytetrack --tracker-backend cpp --source video.mp4
boxmot eval --benchmark mot17 --split ablation --tracker bytetrack --tracker-backend cpp

The generated build files are kept under build/native/<tracker>/.

Verify the install

!!! example "Verify"

=== "CLI"

    Check the CLI:

    ```bash
    boxmot --help
    boxmot track --help
    ```

=== "Python"

    Smoke-test the Python API:

    ```python
    from boxmot import Boxmot

    boxmot = Boxmot(detector="yolov8n", reid="osnet_x0_25_msmt17", tracker="bytetrack")
    print(boxmot)
    ```

Next steps

  • Use Quickstart for a minimal path.
  • Use Modes Overview to decide between track, generate, eval, tune, research, train, eval-reid, and export.
  • Use the workflow table above to add the extras your workflow needs.