FaceStylizer

public final class FaceStylizer

Damit wird auf Bildern Gesichter stilisiert.

Zusätzlich zur standardmäßigen Stilisierungs-API stylize(MPImage) und ERROR(/#stylizeForVideo), die ein Eingabebild aufnehmen und die Ausgaben zurückgeben, aber eine detaillierte Kopie der Rückgaben umfasst, unterstützt FaceStylizer auch die Callback-API stylizeWithResultListener(MPImage) und ERROR(/#stylizeForVideoWithResultListener), die es Ihnen ermöglichen, für die Dauer des Ergebnis-Listeners über Nullkopien auf die Ausgaben zuzugreifen.

Die Callback API ist für alle RunningMode in FaceStylizer verfügbar. Lege OutputHandler.ResultListener korrekt in FaceStylizer.FaceStylizerOptions fest, um die Callback API zu verwenden.

Die API erwartet ein TFLite-Modell mit TFLite-Modellmetadaten.

  • Eingabebild MPImage
    • Das Bild, auf dem der Gesichtsstyizer ausgeführt wird.
  • MPImage-Ausgabe MPImage
    • Ein MPImage mit einem stilisierten Gesicht.

Verschachtelte Klassen

Klasse FaceStylizer.FaceStylizerOptions Optionen zum Einrichten eines FaceStylizer-Objekts. 

Public Methods

Static FaceStylizer
createFromOptions(Kontextkontext, FaceStylizer.FaceStylizerOptions stylizerOptions)
Erstellt eine FaceStylizer-Instanz aus einer FaceStylizer.FaceStylizerOptions.
FaceStylizerResult
stilisieren(MPImage-Bild, ImageProcessingOptions imageProcessingOptions)
Es wird eine Gesichtsstilisierung für das bereitgestellte Einzelbild durchgeführt.
FaceStylizerResult
Stil festlegen(MPImage-Bild)
Führt eine Gesichtsstilisierung auf dem bereitgestellten Einzelbild mit Standardbildverarbeitungsoptionen durch, z.B.
void
stylizeWithResultListener(MPImage-Bild)
Führt eine Gesichtsstilisierung auf dem bereitgestellten Einzelbild mit Standardbildverarbeitungsoptionen durch, z.B.
void
stylizeWithResultListener(MPImage-Bild, ImageProcessingOptions imageProcessingOptions)
Führt eine Gesichtsstilisierung für das bereitgestellte Einzelbild durch und liefert Ergebnisse mit Nullkopien über OutputHandler.ResultListener in FaceStylizer.FaceStylizerOptions.

Übernommene Methoden

Public Methods

public static FaceStylizer createFromOptions (Context context, FaceStylizer.FaceStylizerOptions stylizerOptions)

Erstellt eine FaceStylizer-Instanz aus einer FaceStylizer.FaceStylizerOptions.

Parameter
context ein Android-ERROR(/Context).
stylizerOptions Eine FaceStylizer.FaceStylizerOptions-Instanz.
Löst aus
Wenn beim Erstellen von FaceStylizer ein Fehler auftritt.

public FaceStylizerResult stilisieren (MPImage-Bild, ImageProcessingOptions imageProcessingOptions)

Es wird eine Gesichtsstilisierung für das bereitgestellte Einzelbild durchgeführt. Verwenden Sie diese Methode nur, wenn das FaceStylizer mit RunningMode.IMAGE erstellt wird.

FaceStylizer unterstützt die folgenden Farbraumtypen:

Das Eingabebild kann eine beliebige Größe haben. Das Ausgabebild ist das stilisierte Bild mit dem am besten sichtbaren Gesicht. Die Größe des stilisierten Ausgabebilds entspricht der Größe der Modellausgabe. Wenn im Eingabebild kein Gesicht erkannt wird, wird Optional.empty() zurückgegeben.

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. Oder wenn FaceStylizer mit einer OutputHandler.ResultListener erstellt wird.

public FaceStylizerResult stilisieren (MPImage-Bild)

Führt eine Gesichtsstilisierung auf dem bereitgestellten Einzelbild mit Standard-Bildverarbeitungsoptionen aus, d.h. ohne Drehung. Verwenden Sie diese Methode nur, wenn das FaceStylizer mit RunningMode.IMAGE erstellt wird.

FaceStylizer unterstützt die folgenden Farbraumtypen:

Das Eingabebild kann eine beliebige Größe haben. Das Ausgabebild ist das stilisierte Bild mit dem am besten sichtbaren Gesicht. Die Größe des stilisierten Ausgabebilds entspricht der Größe der Modellausgabe. Wenn im Eingabebild kein Gesicht erkannt wird, wird Optional.empty() zurückgegeben.

Parameter
Image Ein MediaPipe-MPImage-Objekt zur Verarbeitung
Löst aus
wenn ein interner Fehler vorliegt. Oder wenn FaceStylizer mit einer OutputHandler.ResultListener erstellt wird.

public void stylizeWithResultListener (MPImage-Bild)

Führt eine Gesichtsstilisierung auf dem bereitgestellten Einzelbild mit Standard-Bildverarbeitungsoptionen (d.h. ohne Drehung) durch und liefert über OutputHandler.ResultListener in FaceStylizer.FaceStylizerOptions kopierte Ergebnisse ohne Kopie. Verwenden Sie diese Methode nur, wenn das FaceStylizer mit RunningMode.IMAGE erstellt wird.

FaceStylizer unterstützt die folgenden Farbraumtypen:

Das Eingabebild kann eine beliebige Größe haben. Das Ausgabebild ist das stilisierte Bild mit dem am besten sichtbaren Gesicht. Die Größe des stilisierten Ausgabebilds entspricht der Größe der Modellausgabe. Wenn im Eingabebild kein Gesicht erkannt wird, wird Optional.empty() zurückgegeben.

Parameter
Image Ein MediaPipe-MPImage-Objekt zur Verarbeitung
Löst aus
IllegalArgumentException wenn ImageProcessingOptions eine relevante Region angibt.
wenn ein interner Fehler vorliegt. Oder wenn FaceStylizer nicht mit OutputHandler.ResultListener in FaceStylizer.FaceStylizerOptions erstellt wurde.

public void stylizeWithResultListener (MPImage-Bild, ImageProcessingOptions imageProcessingOptions)

Führt eine Gesichtsstilisierung für das bereitgestellte Einzelbild durch und liefert Ergebnisse mit Nullkopien über OutputHandler.ResultListener in FaceStylizer.FaceStylizerOptions. Verwenden Sie diese Methode nur, wenn das FaceStylizer mit RunningMode.IMAGE erstellt wird.

FaceStylizer unterstützt die folgenden Farbraumtypen:

Das Eingabebild kann eine beliebige Größe haben. Das Ausgabebild ist das stilisierte Bild mit dem am besten sichtbaren Gesicht. Die Größe des stilisierten Ausgabebilds entspricht der Größe der Modellausgabe. Wenn im Eingabebild kein Gesicht erkannt wird, wird Optional.empty() zurückgegeben.

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. Oder wenn FaceStylizer nicht mit OutputHandler.ResultListener in FaceStylizer.FaceStylizerOptions erstellt wurde.