Referenz fĂŒr ultralytics/trackers/bot_sort.py
Hinweis
Diese Datei ist verfĂŒgbar unter https://github.com/ultralytics/ ultralytics/blob/main/ ultralytics/trackers/bot_sort .py. Wenn du ein Problem entdeckst, hilf bitte mit, es zu beheben, indem du einen Pull Request đ ïž einreichst. Vielen Dank đ!
ultralytics.trackers.bot_sort.BOTrack
Basen: STrack
Eine erweiterte Version der STrack-Klasse fĂŒr YOLOv8, die Funktionen zur Objektverfolgung bietet.
Attribute:
Name | Typ | Beschreibung |
---|---|---|
shared_kalman |
KalmanFilterXYWH
|
Ein gemeinsamer Kalman-Filter fĂŒr alle Instanzen von BOTrack. |
smooth_feat |
ndarray
|
GeglÀtteter Merkmalsvektor. |
curr_feat |
ndarray
|
Aktueller Merkmalsvektor. |
features |
deque
|
Ein Deque zum Speichern von Feature-Vektoren mit einer maximalen LĂ€nge, die durch |
alpha |
float
|
GlĂ€ttungsfaktor fĂŒr den exponentiellen gleitenden Durchschnitt der Merkmale. |
mean |
ndarray
|
Der mittlere Zustand des Kalman-Filters. |
covariance |
ndarray
|
Die Kovarianzmatrix des Kalman-Filters. |
Methoden:
Name | Beschreibung |
---|---|
update_features |
Aktualisiere den Merkmalsvektor und glÀtte ihn mit dem exponentiellen gleitenden Durchschnitt. |
predict |
Sagt den Mittelwert und die Kovarianz mithilfe des Kalman-Filters voraus. |
re_activate |
Reaktiviert einen Track mit aktualisierten Funktionen und optional neuer ID. |
update |
Aktualisiere die Instanz YOLOv8 mit der neuen Track- und Frame-ID. |
tlwh |
Eigenschaft, die die aktuelle Position im tlwh-Format liefert |
multi_predict |
Sagt den Mittelwert und die Kovarianz mehrerer Objektspuren mithilfe eines gemeinsamen Kalman-Filters voraus. |
convert_coords |
Konvertiert tlwh Bounding Box Koordinaten in das xywh Format. |
tlwh_to_xywh |
Bounding Box ins xywh-Format konvertieren |
Verwendung
bo_track = BOTrack(tlwh, score, cls, feat) bo_track.predict() bo_track.update(new_track, frame_id)
Quellcode in ultralytics/trackers/bot_sort.py
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 |
|
tlwh
property
Aktuelle Position im Bounding-Box-Format abrufen (top left x, top left y, width, height)
.
__init__(tlwh, score, cls, feat=None, feat_history=50)
Initialisiere das YOLOv8 Objekt mit zeitlichen Parametern, wie z.B. Merkmalsverlauf, Alpha und aktuelle Merkmale.
Quellcode in ultralytics/trackers/bot_sort.py
convert_coords(tlwh)
Konvertiert die Koordinaten des Begrenzungsrahmens "Oben-Links-Breite-Höhe" in das Format "X-Y-Breite-Höhe".
multi_predict(stracks)
staticmethod
Sagt den Mittelwert und die Kovarianz mehrerer Objektspuren mithilfe eines gemeinsamen Kalman-Filters voraus.
Quellcode in ultralytics/trackers/bot_sort.py
predict()
Sagt den Mittelwert und die Kovarianz mithilfe des Kalman-Filters voraus.
Quellcode in ultralytics/trackers/bot_sort.py
re_activate(new_track, frame_id, new_id=False)
Reaktiviert einen Track mit aktualisierten Merkmalen und weist ihm optional eine neue ID zu.
Quellcode in ultralytics/trackers/bot_sort.py
tlwh_to_xywh(tlwh)
staticmethod
Bounding Box in Format umwandeln (center x, center y, width, height)
.
update(new_track, frame_id)
Aktualisiere die Instanz YOLOv8 mit der neuen Track- und Frame-ID.
update_features(feat)
Aktualisiere den Merkmalsvektor und glÀtte ihn mit dem exponentiellen gleitenden Durchschnitt.
Quellcode in ultralytics/trackers/bot_sort.py
ultralytics.trackers.bot_sort.BOTSORT
Basen: BYTETracker
Eine erweiterte Version der BYTETracker-Klasse fĂŒr YOLOv8, die fĂŒr die Objektverfolgung mit ReID und GMC-Algorithmus entwickelt wurde.
Attribute:
Name | Typ | Beschreibung |
---|---|---|
proximity_thresh |
float
|
Schwellenwert fĂŒr die rĂ€umliche NĂ€he (IoU) zwischen Spuren und Erkennungen. |
appearance_thresh |
float
|
Schwellenwert fĂŒr die Ăhnlichkeit des Aussehens (ReID-Embeddings) zwischen Spuren und Erkennungen. |
encoder |
object
|
Objekt zur Handhabung von ReID-Einbettungen, gesetzt auf None, wenn ReID nicht aktiviert ist. |
gmc |
GMC
|
Eine Instanz des GMC-Algorithmus fĂŒr Datenassoziation. |
args |
object
|
Analysierte Befehlszeilenargumente, die Tracking-Parameter enthalten. |
Methoden:
Name | Beschreibung |
---|---|
get_kalmanfilter |
Gibt eine Instanz von KalmanFilterXYWH fĂŒr die Objektverfolgung zurĂŒck. |
init_track |
Initialisiere den Track mit Erkennungen, Bewertungen und Klassen. |
get_dists |
Erhalte Entfernungen zwischen Spuren und Erkennungen mit IoU und (optional) ReID. |
multi_predict |
Mit dem Modell YOLOv8 kannst du mehrere Objekte vorhersagen und verfolgen. |
Verwendung
bot_sort = BOTSORT(args, frame_rate) bot_sort.init_track(dets, scores, cls, img) bot_sort.multi_predict(tracks)
Hinweis
Die Klasse ist fĂŒr das YOLOv8 Objekterkennungsmodell konzipiert und unterstĂŒtzt ReID nur, wenn es ĂŒber args aktiviert wird.
Quellcode in ultralytics/trackers/bot_sort.py
125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 |
|
__init__(args, frame_rate=30)
Initialisiere das YOLOv8 Objekt mit dem ReID-Modul und dem GMC-Algorithmus.
Quellcode in ultralytics/trackers/bot_sort.py
get_dists(tracks, detections)
Ermittelt Entfernungen zwischen Spuren und Erkennungen mithilfe von IoU- und (optional) ReID-Einbettungen.
Quellcode in ultralytics/trackers/bot_sort.py
get_kalmanfilter()
init_track(dets, scores, cls, img=None)
Initialisiere den Track mit Erkennungen, Bewertungen und Klassen.
Quellcode in ultralytics/trackers/bot_sort.py
multi_predict(tracks)
Erstellt am 2023-11-12, Aktualisiert am 2024-05-08
Autoren: Burhan-Q (1), glenn-jocher (3), Laughing-q (1)