Bug Description
The scripts/auto_benchmark.sh script invokes motcpp_eval with named CLI arguments such as --tracker, --dataset, --dets, and --output.
However, the current implementation of tools/motcpp_eval.cpp expects positional arguments:
motcpp_eval <mot_root> <output_dir> [tracking_method] [det_emb_root] [model_name] [reid_name] [reid_weights]
Because of this mismatch, running the benchmark script fails when it reaches the evaluation step. There is also a tracker name mismatch: the script and documentation refer to ucmctrack, while motcpp_eval currently accepts ucmc.
Steps to Reproduce
- Build the project with tools enabled:
cmake -B build -DCMAKE_BUILD_TYPE=Release -DMOTCPP_BUILD_TOOLS=ON
cmake --build build -j$(nproc)
- Run the benchmark script:
./scripts/auto_benchmark.sh --benchmark --tracker bytetrack
- Observe that the script calls:
./tools/motcpp_eval \
--tracker bytetrack \
--dataset benchmark_data/MOT17-mini/train \
--dets yolox \
--output benchmark_results/bytetrack_yolox
motcpp_eval interprets --tracker and bytetrack as positional arguments instead of named options, causing the evaluation step to fail.
Expected Behavior
auto_benchmark.sh and motcpp_eval should use a consistent CLI contract.
Ideally, motcpp_eval should support the documented named arguments:
./build/tools/motcpp_eval \
--tracker bytetrack \
--dataset benchmark_data/MOT17-mini/train \
--dets yolox \
--output benchmark_results/bytetrack_yolox
It would also be helpful for motcpp_eval to accept ucmctrack as an alias for ucmc, since the script and documentation use ucmctrack.
Code Sample
Tracker
No response
motcpp Version
1.0.0
Operating System
Linux (Ubuntu)
Compiler & Version
No response
Additional Context
Some content was generated by Codex.
Bug Description
The
scripts/auto_benchmark.shscript invokesmotcpp_evalwith named CLI arguments such as--tracker,--dataset,--dets, and--output.However, the current implementation of
tools/motcpp_eval.cppexpects positional arguments:Because of this mismatch, running the benchmark script fails when it reaches the evaluation step. There is also a tracker name mismatch: the script and documentation refer to
ucmctrack, whilemotcpp_evalcurrently acceptsucmc.Steps to Reproduce
cmake -B build -DCMAKE_BUILD_TYPE=Release -DMOTCPP_BUILD_TOOLS=ON cmake --build build -j$(nproc)./tools/motcpp_eval \ --tracker bytetrack \ --dataset benchmark_data/MOT17-mini/train \ --dets yolox \ --output benchmark_results/bytetrack_yoloxmotcpp_evalinterprets--trackerandbytetrackas positional arguments instead of named options, causing the evaluation step to fail.Expected Behavior
auto_benchmark.shandmotcpp_evalshould use a consistent CLI contract.Ideally,
motcpp_evalshould support the documented named arguments:./build/tools/motcpp_eval \ --tracker bytetrack \ --dataset benchmark_data/MOT17-mini/train \ --dets yolox \ --output benchmark_results/bytetrack_yoloxIt would also be helpful for
motcpp_evalto acceptucmctrackas an alias forucmc, since the script and documentation useucmctrack.Code Sample
Tracker
No response
motcpp Version
1.0.0
Operating System
Linux (Ubuntu)
Compiler & Version
No response
Additional Context
Some content was generated by Codex.