ml.postprocessing.mediapipe — Google Mediapipe¶
Das Modul ml.postprocessing.mediapipe enthält Nachbearbeiter für Google-Mediapipe-Modelle.
class mediapipe_detection_postprocess – Generischer Mediapipe-Detektor¶
Basisklasse, die von BlazeFace und BlazePalm gemeinsam genutzt wird. Dekodiert ankerbasierte Begrenzungsrahmen und Schlüsselpunkte und führt anschließend NMS durch.
- class ml.postprocessing.mediapipe.mediapipe_detection_postprocess(threshold: float = 0.6, anchors: ndarray | None = None, anchor_grid: list[tuple[int, int]] | None = None, scores: list[int] = [], cords: list[int] = [], nms_threshold: float = 0.1, nms_sigma: float = 0.1)¶
Erstellt einen generischen Mediapipe-Nachbearbeiter zur Erkennung.
thresholdSchwellenwert für den Score, der vor dem Sigmoid auf die rohen Logits angewendet wird.anchorsOptionales vorberechnetes Anker-Array der Form(N, 2), das die auf[0, 1]normierten(cx, cy)-Zentren enthält. Ist esNone, werden die Anker ausanchor_griderzeugt.anchor_gridListe von(grid_size, scales)-Tupeln, die zur Erzeugung der Anker verwendet wird, wennanchorsgleichNoneist.scoresListe von Modellausgabeindizes, die Score-Tensoren enthalten.cordsListe von Modellausgabeindizes, die Box-/Schlüsselpunkt-Tensoren enthalten.nms_thresholdIoU-Schwellenwert für die Non-Maximum-Suppression.nms_sigmaSigma für den Score-Abfall bei Soft-NMS.- __call__(model: ml.Model, inputs: list, outputs: list) list¶
Führt die Nachbearbeitung der Modellausgaben durch und gibt eine Liste von
((x, y, w, h), score, keypoints)-Tupeln zurück. Gibt ein leeres Tupel()zurück, wenn keine Erkennung den Score-Schwellenwert überschreitet.
- detection_post_process(ih: int, iw: int, nms: ml.utils.NMS, model: ml.Model, inputs: list, outputs: list, score_idx: int, cords_idx: int, t: float, anchors: ndarray) None¶
Dekodiert Begrenzungsrahmen aus einem einzelnen
(score, cords)-Ausgabepaar und fügt sie dem bereitgestelltenNMS-Akkumulator hinzu.
class BlazeFace – Gesichtserkennung¶
Bearbeitet die Ausgabe von BlazeFace-Modellen nach.
- class ml.postprocessing.mediapipe.BlazeFace(threshold: float = 0.6, anchors: ndarray | None = None, nms_threshold: float = 0.1, nms_sigma: float = 0.1)¶
Erstellt einen BlazeFace-Nachbearbeiter. Verwendet ein Ankergitter von
[(16, 2), (8, 6)]mit Score-Ausgaben[1, 2]und Box-Ausgaben[0, 3].thresholdSchwellenwert für den Score von Erkennungen.anchorsOptionales vorberechnetes Anker-Array; wird automatisch erzeugt, fallsNone.nms_thresholdIoU-Schwellenwert für die Non-Maximum-Suppression.nms_sigmaSigma für den Score-Abfall bei Soft-NMS.Gibt aus
__call__eine Liste von((x, y, w, h), score, keypoints)-Tupeln zurück, wobeikeypointseine Liste von(x, y)-Punkten ist.
class BlazePalm – Handflächenerkennung¶
Bearbeitet die Ausgabe von BlazePalm-Modellen nach.
- class ml.postprocessing.mediapipe.BlazePalm(threshold: float = 0.6, anchors: ndarray | None = None, nms_threshold: float = 0.1, nms_sigma: float = 0.1)¶
Erstellt einen BlazePalm-Nachbearbeiter. Verwendet ein Ankergitter von
[(24, 2), (12, 6)]mit Score-Ausgaben[0]und Box-Ausgaben[1].thresholdSchwellenwert für den Score von Erkennungen.anchorsOptionales vorberechnetes Anker-Array; wird automatisch erzeugt, fallsNone.nms_thresholdIoU-Schwellenwert für die Non-Maximum-Suppression.nms_sigmaSigma für den Score-Abfall bei Soft-NMS.Gibt aus
__call__eine Liste von((x, y, w, h), score, keypoints)-Tupeln zurück, wobeikeypointseine Liste von(x, y)-Punkten ist.
class FaceLandmarks – Gesichts-Landmarken¶
Bearbeitet die Ausgabe von FaceLandmarks-Modellen nach.
- class ml.postprocessing.mediapipe.FaceLandmarks(threshold: float = 0.6, nms_threshold: float = 0.1, nms_sigma: float = 0.1)¶
Erstellt einen FaceLandmarks-Nachbearbeiter.
thresholdSchwellenwert für den Score (nach Sigmoid) zum Akzeptieren einer Erkennung.nms_thresholdIoU-Schwellenwert für die Non-Maximum-Suppression.nms_sigmaSigma für den Score-Abfall bei Soft-NMS.Gibt aus
__call__eine Liste von((x, y, w, h), score, keypoints)-Tupeln zurück, wobeikeypointseine Liste von(x, y, z)-Punkten ist.
class HandLandmarks – Hand-Landmarken¶
Bearbeitet die Ausgabe von HandLandmarks-Modellen nach.
- class ml.postprocessing.mediapipe.HandLandmarks(threshold: float = 0.6, nms_threshold: float = 0.1, nms_sigma: float = 0.1)¶
Erstellt einen HandLandmarks-Nachbearbeiter.
thresholdSchwellenwert für den Score zum Akzeptieren einer Erkennung.nms_thresholdIoU-Schwellenwert für die Non-Maximum-Suppression.nms_sigmaSigma für den Score-Abfall bei Soft-NMS.Gibt aus
__call__[[((x, y, w, h), score, keypoints)]]zurück, mit einer inneren Liste pro Händigkeitsklasse (links=0, rechts=1).keypointsist eine Liste von(x, y, z)-Punkten. Leere Klassenlisten werden beibehalten, sodass der Index jeder Liste dem Klassenindex entspricht.
class MoveNet – Posenschätzung¶
Bearbeitet die Ausgabe von MoveNet-Einzelposenmodellen nach.
- class ml.postprocessing.mediapipe.MoveNet(threshold: float = 0.6, nms_threshold: float = 0.1, nms_sigma: float = 0.1)¶
Erstellt einen MoveNet-Nachbearbeiter.
thresholdKonfidenzschwellenwert pro Schlüsselpunkt; Schlüsselpunkte unterhalb dieses Werts werden vom Begrenzungsrahmen und vom mittleren Score ausgeschlossen.nms_thresholdIoU-Schwellenwert für die Non-Maximum-Suppression.nms_sigmaSigma für den Score-Abfall bei Soft-NMS.Gibt aus
__call__eine Liste von((x, y, w, h), score, keypoints)-Tupeln zurück, wobeikeypointseine Liste von(x, y, score)-Punkten in Eingabe-Pixelkoordinaten ist.