Führt eine Erkennung von Handmarkierungen auf Bildern durch.
Diese API erwartet ein vortrainiertes Asset-Bundle für das Modell der Orientierungspunkte. Weitere Informationen finden Sie unter
- Eingabebild
MPImage- Das Bild, auf dem die Erkennung von Handmarkierungen ausgeführt wird.
- Ausgabe „HandLandmarkerResult
HandLandmarkerResult“- Ein HandLandmarkerResult mit Handmarkierungen.
Verschachtelte Klassen
| Klasse | HandLandmarker.HandLandmarkerOptions | Optionen zum Einrichten eines HandLandmarker-Objekts. |
|
Felder
| public static final Set<Connection> | HAND_CONNECTIONS | |
| public static final Set<Connection> | HAND_INDEX_FINGER_CONNECTIONS | |
| public static final Set<Connection> | HAND_MIDDLE_FINGER_CONNECTIONS | |
| public static final Set<Connection> | HAND_PALM_CONNECTIONS | |
| public static final Set<Connection> | HAND_PINKY_FINGER_CONNECTIONS | |
| public static final Set<Connection> | HAND_RING_FINGER_CONNECTIONS | |
| public static final Set<Connection> | HAND_THUMB_CONNECTIONS |
Public Methods
| static HandLandmarker |
createFromBuffer(Kontextkontext, ByteBuffer modelBuffer)
Erstellt eine
HandLandmarker-Instanz aus einem Modellpuffer und dem Standardwert HandLandmarker.HandLandmarkerOptions. |
| static HandLandmarker |
createFromFile(Kontextkontext, String ModelPath)
Erstellt eine
HandLandmarker-Instanz aus einer Modelldatei und der Standard-HandLandmarker.HandLandmarkerOptions. |
| static HandLandmarker |
createFromFile(Kontextkontext, File-Modelldatei)
Erstellt eine
HandLandmarker-Instanz aus einer Modelldatei und der Standard-HandLandmarker.HandLandmarkerOptions. |
| static HandLandmarker |
createFromOptions(Context context, HandLandmarker.HandLandmarkerOptions visibilityerOptions)
Erstellt eine
HandLandmarker-Instanz aus einer HandLandmarker.HandLandmarkerOptions. |
| HandLandmarkerResult | |
| HandLandmarkerResult |
detect(MPImage-Bild, ImageProcessingOptions imageProcessingOptions)
Führt eine Erkennung von Hand-Markierungen auf dem bereitgestellten Einzelbild durch.
|
| void |
detectAsync(MPImage-Bild, ImageProcessingOptions imageProcessingOptions, longtimestampMs)
Sendet Live-Bilddaten, um Handmarkierungen zu erkennen. Die Ergebnisse werden über die
OutputHandler.ResultListener in der HandLandmarker.HandLandmarkerOptions zur Verfügung gestellt. |
| void |
detectAsync(MPImage-Image, langer ZeitstempelMs)
Sendet Live-Bilddaten, um mit Standard-Bildverarbeitungsoptionen wie Handmarkierungen zu erkennen
|
| HandLandmarkerResult |
detectForVideo(MPImage-Bild, ImageProcessingOptions imageProcessingOptions, long timestampMs)
Führt eine Erkennung von Handmarkierungen im bereitgestellten Videoframe durch.
|
| HandLandmarkerResult |
detectForVideo(MPImage-Bild, langer ZeitstempelMs)
Führt eine Erkennung von Hand-Markierungen auf dem bereitgestellten Videoframe mit Standard-Bildverarbeitungsoptionen durch, z.B.
|
Übernommene Methoden
Felder
Public Methods
public static HandLandmarker createFromBuffer (Kontextkontext, ByteBuffer modelBuffer)
Erstellt eine HandLandmarker-Instanz aus einem Modellpuffer und dem Standardwert HandLandmarker.HandLandmarkerOptions.
Parameter
| context | ein Android-ERROR(/Context). |
|---|---|
| modelBuffer | ein direktes ByteBuffer oder ein ERROR(/MappedByteBuffer) des Erkennungsmodells. |
Löst aus
Wenn beim Erstellen von HandLandmarker ein Fehler auftritt.
|
public static HandLandmarker createFromFile (Context context, String modelPath)
Erstellt eine HandLandmarker-Instanz aus einer Modelldatei und der Standard-HandLandmarker.HandLandmarkerOptions.
Parameter
| context | ein Android-ERROR(/Context). |
|---|---|
| modelPath | Pfad zum Modell für Hand-Markierungen mit Metadaten in den Assets. |
Löst aus
Wenn beim Erstellen von HandLandmarker ein Fehler auftritt.
|
public static HandLandmarker createFromFile (Context context, File modelFile)
Erstellt eine HandLandmarker-Instanz aus einer Modelldatei und der Standard-HandLandmarker.HandLandmarkerOptions.
Parameter
| context | ein Android-ERROR(/Context). |
|---|---|
| modelFile | File-Instanz des Modells für Hand-Markierungen. |
Löst aus
| IOException | Wenn beim Öffnen der TFlite-Modelldatei ein E/A-Fehler auftritt. |
|---|---|
Wenn beim Erstellen von HandLandmarker ein Fehler auftritt.
|
public static HandLandmarker createFromOptions (Context context, HandLandmarker.HandLandmarkerOptions LandmarkerOptions)
Erstellt eine HandLandmarker-Instanz aus einer HandLandmarker.HandLandmarkerOptions.
Parameter
| context | ein Android-ERROR(/Context). |
|---|---|
| landmarkerOptions | Eine HandLandmarker.HandLandmarkerOptions-Instanz. |
Löst aus
Wenn beim Erstellen von HandLandmarker ein Fehler auftritt.
|
public HandLandmarkerResult detect (MPImage-Bild)
Führt eine Erkennung von Hand-Markierungen auf dem bereitgestellten Einzelbild mit Standard-Bildverarbeitungsoptionen durch, d.h. ohne Drehung. Verwenden Sie diese Methode nur, wenn das HandLandmarker mit ERROR(/RunningMode.IMAGE) erstellt wird. TODO-Update der Java-Dokumentation für das Eingabebildformat.
HandLandmarker unterstützt die folgenden Farbraumtypen:
Parameter
| Image | Ein MediaPipe-MPImage-Objekt zur Verarbeitung |
|---|
Löst aus
| wenn ein interner Fehler vorliegt. |
public HandLandmarkerResult detect (MPImage-Bild, ImageProcessingOptions imageProcessingOptions)
Führt eine Erkennung von Hand-Markierungen auf dem bereitgestellten Einzelbild durch. Verwenden Sie diese Methode nur, wenn das HandLandmarker mit ERROR(/RunningMode.IMAGE) erstellt wird. TODO-Aktualisierung der Java-Dokumentation für das Eingabebildformat.
HandLandmarker unterstützt die folgenden Farbraumtypen:
Parameter
| Image | Ein MediaPipe-MPImage-Objekt zur Verarbeitung |
|---|---|
| imageProcessingOptions | den ImageProcessingOptions, der angibt, wie das Eingabebild vor dem Ausführen der Inferenz verarbeitet wird. Beachten Sie, dass die Region von Interesse von dieser Aufgabe nicht unterstützt wird: Die Angabe von ImageProcessingOptions.regionOfInterest() führt dazu, dass diese Methode eine geschmeidige Ausnahme auslöst. |
Löst aus
| IllegalArgumentException | wenn ImageProcessingOptions eine relevante Region angibt. |
|---|---|
| wenn ein interner Fehler vorliegt. |
public void detectAsync (MPImage-Bild, ImageProcessingOptions imageProcessingOptions, long timestampMs)
Sendet Live-Bilddaten, um Handmarkierungen zu erkennen. Die Ergebnisse werden über die OutputHandler.ResultListener in der HandLandmarker.HandLandmarkerOptions zur Verfügung gestellt. Verwenden Sie diese Methode nur, wenn das HandLandmarker mit ERROR(/RunningMode.LIVE_STREAM) erstellt wird.
Es muss ein Zeitstempel (in Millisekunden) angegeben werden, um anzugeben, wann das Eingabebild an die Handmarkierer gesendet wird. Die Eingabezeitstempel müssen kontinuierlich ansteigen.
HandLandmarker unterstützt die folgenden Farbraumtypen:
Parameter
| Image | Ein MediaPipe-MPImage-Objekt zur Verarbeitung |
|---|---|
| imageProcessingOptions | den ImageProcessingOptions, der angibt, wie das Eingabebild vor dem Ausführen der Inferenz verarbeitet wird. Beachten Sie, dass die Region von Interesse von dieser Aufgabe nicht unterstützt wird: Die Angabe von ImageProcessingOptions.regionOfInterest() führt dazu, dass diese Methode eine geschmeidige Ausnahme auslöst. |
| timestampMs | den Eingabezeitstempel (in Millisekunden). |
Löst aus
| IllegalArgumentException | wenn ImageProcessingOptions eine relevante Region angibt. |
|---|---|
| wenn ein interner Fehler vorliegt. |
public void detectAsync (MPImage-Image, long timestampMs)
Sendet Live-Bilddaten, um Handmarkierungen mit Standard-Bildverarbeitungsoptionen ohne Drehung zu erkennen. Die Ergebnisse sind über die OutputHandler.ResultListener in HandLandmarker.HandLandmarkerOptions verfügbar. Verwenden Sie diese Methode nur, wenn das HandLandmarker mit ERROR(/RunningMode.LIVE_STREAM) erstellt wird.
Es muss ein Zeitstempel (in Millisekunden) angegeben werden, um anzugeben, wann das Eingabebild an die Handmarkierer gesendet wird. Die Eingabezeitstempel müssen kontinuierlich ansteigen.
HandLandmarker unterstützt die folgenden Farbraumtypen:
Parameter
| Image | Ein MediaPipe-MPImage-Objekt zur Verarbeitung |
|---|---|
| timestampMs | den Eingabezeitstempel (in Millisekunden). |
Löst aus
| wenn ein interner Fehler vorliegt. |
public HandLandmarkerResult detectForVideo (MPImage-Bild, ImageProcessingOptions imageProcessingOptions, long timestampMs)
Führt eine Erkennung von Handmarkierungen im bereitgestellten Videoframe durch. Verwenden Sie diese Methode nur, wenn das HandLandmarker mit ERROR(/RunningMode.VIDEO) erstellt wird.
Sie müssen den Zeitstempel des Videoframes (in Millisekunden) angeben. Die Eingabezeitstempel müssen kontinuierlich ansteigen.
HandLandmarker unterstützt die folgenden Farbraumtypen:
Parameter
| Image | Ein MediaPipe-MPImage-Objekt zur Verarbeitung |
|---|---|
| imageProcessingOptions | den ImageProcessingOptions, der angibt, wie das Eingabebild vor dem Ausführen der Inferenz verarbeitet wird. Beachten Sie, dass die Region von Interesse von dieser Aufgabe nicht unterstützt wird: Die Angabe von ImageProcessingOptions.regionOfInterest() führt dazu, dass diese Methode eine geschmeidige Ausnahme auslöst. |
| timestampMs | den Eingabezeitstempel (in Millisekunden). |
Löst aus
| IllegalArgumentException | wenn ImageProcessingOptions eine relevante Region angibt. |
|---|---|
| wenn ein interner Fehler vorliegt. |
public HandLandmarkerResult detectForVideo (MPImage-Bild, langer ZeitstempelMs)
Führt eine Erkennung von Handmarkierungen auf dem bereitgestellten Videoframe mit Standardoptionen für die Bildverarbeitung durch, d.h. ohne Drehung. Verwenden Sie diese Methode nur, wenn das HandLandmarker mit ERROR(/RunningMode.VIDEO) erstellt wird.
Sie müssen den Zeitstempel des Videoframes (in Millisekunden) angeben. Die Eingabezeitstempel müssen kontinuierlich ansteigen.
HandLandmarker unterstützt die folgenden Farbraumtypen:
Parameter
| Image | Ein MediaPipe-MPImage-Objekt zur Verarbeitung |
|---|---|
| timestampMs | den Eingabezeitstempel (in Millisekunden). |
Löst aus
| wenn ein interner Fehler vorliegt. |