Choose a Mode
BoxMOT has two main usage styles:
- direct source tracking for videos, cameras, image folders, and streams
- config-driven benchmark modes for repeatable experiments
Mode Guide
| Mode | Use it when | Main command | Install notes | Guide |
|---|---|---|---|---|
| Track | You want detector + tracker output on a live or saved source | boxmot track |
Core install is enough if detector backends are already available. Install yolo upfront for common YOLO workflows. |
Track |
| Generate | You want reusable detections and embeddings | boxmot generate |
Same detector-backend requirement as track. yolo is the common extra to preinstall. |
Generate |
| Evaluate | You want TrackEval metrics on a benchmark | boxmot eval |
Usually the same detector-backend setup as generate, because benchmark evaluation reuses generated detections and embeddings. |
Evaluate |
| Tune | You want to search tracker hyperparameters | boxmot tune |
Add the evolve extra. |
Tune |
| Research | You want GEPA to propose tracker code changes | boxmot research |
Add the research extra. |
Research |
| Export | You want to convert a ReID model to deployment formats | boxmot export |
Add format-specific extras such as onnx, openvino, or tflite. |
Export |
See Installation for exact commands.
Two common paths
Direct source path
Use this when you already have a source and want outputs quickly:
boxmot track --detector yolov8n --reid osnet_x0_25_msmt17 --tracker botsort --source video.mp4 --save
Benchmark path
Use this when you want repeatable experiments on MOT-style datasets:
boxmot generate --benchmark mot17-ablation
boxmot eval --benchmark mot17-ablation --tracker boosttrack
boxmot tune --benchmark mot17-ablation --tracker bytetrack
In this path, the benchmark config resolves the dataset, detector profile, and ReID profile automatically.
Python API path
If you want the same modes in Python, start with Python API Overview. The public facade is boxmot.Boxmot.