From 10178d94ba6fbd082243eba7ecbcfca9ae7ed862 Mon Sep 17 00:00:00 2001 From: Yadunund Date: Thu, 16 Jun 2022 17:56:47 +0800 Subject: [PATCH] Deregister outside dict iteration Signed-off-by: Yadunund --- tracker.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tracker.py b/tracker.py index 4343240..7b26d3e 100644 --- a/tracker.py +++ b/tracker.py @@ -51,10 +51,13 @@ def handle_no_detections(self): and deletes objects if their counter is expired :return (OrderedDict) dictionary containing (track_id: Track) """ + deregister_ids = [] for track_id in self.disappeared.keys(): self.disappeared[track_id] += 1 if self.disappeared[track_id] > self.max_disappeared: - self.deregister(track_id) + deregister_ids.append(track_id) + for track_id in deregister_ids: + self.deregister(track_id) return self.tracked def project(self):