Mit der Aufgabe „MediaPipe Pose Landmarker“ können Sie Sehenswürdigkeiten menschlicher Körper in einem Bild oder Video erkennen. Sie können diese Aufgabe verwenden, um wichtige Körperstellen zu identifizieren, die Körperhaltung zu analysieren und Bewegungen zu kategorisieren. Bei dieser Aufgabe werden Modelle für maschinelles Lernen (ML) verwendet, die mit einzelnen Bildern oder Videos arbeiten. Die Aufgabe gibt Körperpositionsmarkierungen in Bildkoordinaten und in dreidimensionalen Weltkoordinaten aus.
Jetzt starten
Beginnen Sie mit dieser Aufgabe, indem Sie dem Implementierungsleitfaden für Ihre Zielplattform folgen. Diese plattformspezifischen Leitfäden führen Sie durch eine grundlegende Implementierung dieser Aufgabe, einschließlich eines empfohlenen Modells und eines Codebeispiels mit empfohlenen Konfigurationsoptionen:
- Android – Codebeispiel – Leitfaden
- Python – Codebeispiel – Anleitung
- Web – Codebeispiel – Leitfaden
Taskdetails
In diesem Abschnitt werden die Funktionen, Eingaben, Ausgaben und Konfigurationsoptionen dieser Aufgabe beschrieben.
Funktionen
- Eingabebildverarbeitung: Die Verarbeitung umfasst Bilddrehung, Größenanpassung, Normalisierung und Farbraumkonvertierung.
- Punktzahl-Schwellenwert: Filtern Sie Ergebnisse basierend auf den Vorhersagewerten.
Aufgabeneingaben | Aufgabenausgaben |
---|---|
Der Pose Landmarker akzeptiert Eingaben mit einem der folgenden Datentypen:
|
Der Pose-Meilensteiner gibt die folgenden Ergebnisse aus:
|
Konfigurationsoptionen
Diese Aufgabe hat die folgenden Konfigurationsoptionen:
Option | Beschreibung | Wertebereich | Standardwert |
---|---|---|---|
running_mode |
Legt den Ausführungsmodus für die Task fest. Es gibt drei Modi: IMAGE: Der Modus für Einzelbildeingaben. VIDEO: Der Modus für decodierte Frames eines Videos. LIVE_STREAM: Der Modus für einen Livestream der Eingabedaten, z. B. von einer Kamera. In diesem Modus muss resultListener aufgerufen werden, um einen Listener einzurichten, der die Ergebnisse asynchron empfängt. |
{IMAGE, VIDEO, LIVE_STREAM } |
IMAGE |
num_poses |
Die maximale Anzahl von Posen, die vom Pose-Markierungspunkt erkannt werden können. | Integer > 0 |
1 |
min_pose_detection_confidence |
Der minimale Konfidenzwert, damit die Posenerkennung als erfolgreich gilt. | Float [0.0,1.0] |
0.5 |
min_pose_presence_confidence |
Der minimale Konfidenzwert der Posenpräsenz bei der Erkennung von Posen-Markierungen. | Float [0.0,1.0] |
0.5 |
min_tracking_confidence |
Der minimale Konfidenzwert, damit das Posen-Tracking als erfolgreich gilt. | Float [0.0,1.0] |
0.5 |
output_segmentation_masks |
Gibt an, ob der Pose Landmarker eine Segmentierungsmaske für die erkannte Pose ausgibt. | Boolean |
False |
result_callback |
Legt den Ergebnis-Listener so fest, dass er die Landmarker-Ergebnisse asynchron empfängt, wenn sich Pose Landmarker im Livestreammodus befindet.
Kann nur verwendet werden, wenn der Laufmodus auf LIVE_STREAM festgelegt ist |
ResultListener |
N/A |
Modelle
Der Pose Landmarker verwendet eine Reihe von Modellen, um die Position von Orientierungspunkten vorherzusagen. Das erste Modell erkennt menschliche Körper in einem Bildframe und das zweite Modell ermittelt Orientierungspunkte auf den Körpern.
Die folgenden Modelle sind in einem herunterladbaren Modell-Bundle verpackt:
- Poseerkennungsmodell: Erkennt das Vorhandensein von Körpern mit einigen wichtigen Sehenswürdigkeiten.
- Pose Landmarker-Modell: Damit wird eine vollständige Zuordnung der Pose hinzugefügt. Das Modell gibt eine Schätzung von 33 dreidimensionalen Orientierungspunkten aus.
Dieses Bundle verwendet ein Convolutional Neural Network, ähnlich wie MobileNetV2, und ist für On-Device-Echtzeit-Fitnessanwendungen optimiert. Diese Variante des BlazePose-Modells verwendet GHUM, eine Pipeline zur 3D-Modellierung für menschliche Formen, um die vollständige 3D-Körperhaltung einer Person auf Bildern oder Videos zu schätzen.
Modell-Bundle | Form eingeben | Datentyp | Modellkarten | Versionen |
---|---|---|---|---|
Positions-Markierung (Lite) | Posen-Erkennung: 224 × 224 × 3 Posen-Markierungen: 256 × 256 × 3 |
Gleitkommazahl 16 | Informationen | Neueste |
Pose Landmarker (Voll) | Posen-Erkennung: 224 × 224 × 3 Posen-Markierungen: 256 × 256 × 3 |
Gleitkommazahl 16 | Informationen | Neueste |
Positionsmarkierung (schwer) | Posen-Erkennung: 224 × 224 × 3 Posen-Markierungen: 256 × 256 × 3 |
Gleitkommazahl 16 | Informationen | Neueste |
Pose-Landmark-Modell
Das Posen-Landmark-Modell verfolgt 33 Sehenswürdigkeiten, die den ungefähren Standort der folgenden Körperteile darstellen:
0 - nose
1 - left eye (inner)
2 - left eye
3 - left eye (outer)
4 - right eye (inner)
5 - right eye
6 - right eye (outer)
7 - left ear
8 - right ear
9 - mouth (left)
10 - mouth (right)
11 - left shoulder
12 - right shoulder
13 - left elbow
14 - right elbow
15 - left wrist
16 - right wrist
17 - left pinky
18 - right pinky
19 - left index
20 - right index
21 - left thumb
22 - right thumb
23 - left hip
24 - right hip
25 - left knee
26 - right knee
27 - left ankle
28 - right ankle
29 - left heel
30 - right heel
31 - left foot index
32 - right foot index
Die Modellausgabe enthält sowohl normalisierte Koordinaten (Landmarks
) als auch Weltkoordinaten (WorldLandmarks
) für jede Sehenswürdigkeit.