Spaces:
Runtime error
Runtime error
from trackers.strongsort.utils.parser import get_config | |
def create_tracker(tracker_type, tracker_config, reid_weights, device, half): | |
cfg = get_config() | |
cfg.merge_from_file(tracker_config) | |
if tracker_type == 'strongsort': | |
from trackers.strongsort.strong_sort import StrongSORT | |
strongsort = StrongSORT( | |
reid_weights, | |
device, | |
half, | |
max_dist=cfg.strongsort.max_dist, | |
max_iou_dist=cfg.strongsort.max_iou_dist, | |
max_age=cfg.strongsort.max_age, | |
max_unmatched_preds=cfg.strongsort.max_unmatched_preds, | |
n_init=cfg.strongsort.n_init, | |
nn_budget=cfg.strongsort.nn_budget, | |
mc_lambda=cfg.strongsort.mc_lambda, | |
ema_alpha=cfg.strongsort.ema_alpha, | |
) | |
return strongsort | |
elif tracker_type == 'ocsort': | |
from trackers.ocsort.ocsort import OCSort | |
ocsort = OCSort( | |
det_thresh=cfg.ocsort.det_thresh, | |
max_age=cfg.ocsort.max_age, | |
min_hits=cfg.ocsort.min_hits, | |
iou_threshold=cfg.ocsort.iou_thresh, | |
delta_t=cfg.ocsort.delta_t, | |
asso_func=cfg.ocsort.asso_func, | |
inertia=cfg.ocsort.inertia, | |
use_byte=cfg.ocsort.use_byte, | |
) | |
return ocsort | |
elif tracker_type == 'bytetrack': | |
from trackers.bytetrack.byte_tracker import BYTETracker | |
bytetracker = BYTETracker( | |
track_thresh=cfg.bytetrack.track_thresh, | |
match_thresh=cfg.bytetrack.match_thresh, | |
track_buffer=cfg.bytetrack.track_buffer, | |
frame_rate=cfg.bytetrack.frame_rate | |
) | |
return bytetracker | |
else: | |
print('No such tracker') | |
exit() |