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. |