mikel-brostrom / boxmot

BoxMOT: pluggable SOTA tracking modules for segmentation, object detection and pose estimation models
GNU Affero General Public License v3.0
6.62k stars 1.7k forks source link

can not run evolve.py #1652

Open wk565 opened 1 week ago

wk565 commented 1 week ago

Search before asking

Yolo Tracking Component

Evolution

Bug

When I run “python tracking/evolve.py --benchmark MOT17 --dets yolov8l --embs osnet_x0_25_msmt17 --n-trials 9 --tracking-method strongsort”,the error is:

Traceback (most recent call last): File "/home/xxx/CV/boxmot/tracking/evolve.py", line 137, in opt.source = Path(opt.source).resolve() File "/home/xxx/anaconda3/envs/boxmot-new/lib/python3.9/pathlib.py", line 1082, in new self = cls._from_parts(args, init=False) File "/home/xxx/anaconda3/envs/boxmot-new/lib/python3.9/pathlib.py", line 707, in _from_parts drv, root, parts = self._parse_args(args) File "/home/xxx/anaconda3/envs/boxmot-new/lib/python3.9/pathlib.py", line 691, in _parse_args a = os.fspath(a) TypeError: expected str, bytes or os.PathLike object, not NoneType

Environment

boxmot10.0.84, cuda11.3 , torch1.10, python03.9

Minimal Reproducible Example

python tracking/evolve.py --benchmark MOT17 --dets yolov8l --embs osnet_x0_25_msmt17 --n-trials 9 --tracking-method strongsort

mikel-brostrom commented 6 days ago

You need to add this arg:

--source ./path/to/MOT17/train

wk565 commented 6 days ago

The instructions for evolve in the readme are:

saves dets and embs under ./runs/dets_n_embs separately for each selected yolo and reid model

$ python tracking/generate_dets_n_embs.py --source ./assets/MOT17-mini/train --yolo-model yolov8n.pt yolov8s.pt --reid-model weights/osnet_x0_25_msmt17.pt

evolve parameters for specified tracking method using the selected detections and embeddings generated in the previous step

$ python tracking/evolve.py --benchmark MOT17-mini --dets yolov8n --embs osnet_x0_25_msmt17 --n-trials 9 --tracking-method botsort

Among them, generate_dets_n_embs.py is no longer available in the current version. Can you update the readme?