Skip to content

Commit 73ccaef

Browse files
authored
Merge pull request #9 from roboflow/feat/reset-tracker-state
feat(trackers): Implement `reset` function
2 parents a5ca735 + 8769c5b commit 73ccaef

File tree

3 files changed

+17
-1
lines changed

3 files changed

+17
-1
lines changed

trackers/core/base.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,16 @@ class BaseTracker(ABC):
99
def update(self, detections: sv.Detections) -> sv.Detections:
1010
pass
1111

12+
@abstractmethod
13+
def reset(self) -> None:
14+
pass
15+
1216

1317
class BaseTrackerWithFeatures(ABC):
1418
@abstractmethod
1519
def update(self, detections: sv.Detections, frame: np.ndarray) -> sv.Detections:
1620
pass
21+
22+
@abstractmethod
23+
def reset(self) -> None:
24+
pass

trackers/core/deepsort/tracker.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -405,3 +405,7 @@ def update(self, detections: sv.Detections, frame: np.ndarray) -> sv.Detections:
405405
)
406406

407407
return updated_detections
408+
409+
def reset(self) -> None:
410+
self.trackers = []
411+
DeepSORTKalmanBoxTracker.count_id = 0

trackers/core/sort/tracker.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ class SORTTracker(BaseTracker):
2222
import supervision as sv
2323
from rfdetr import RFDETRBase
2424
from rfdetr.util.coco_classes import COCO_CLASSES
25-
from trackers.sort_tracker import SORTTracker
25+
from trackers import SORTTracker
2626
2727
2828
model = RFDETRBase(device="mps")
@@ -219,3 +219,7 @@ def update(self, detections: sv.Detections) -> sv.Detections:
219219
)
220220

221221
return updated_detections
222+
223+
def reset(self) -> None:
224+
self.trackers = []
225+
SORTKalmanBoxTracker.count_id = 0

0 commit comments

Comments
 (0)