Bildinhalte mit Outpainting mit Imagen erweitern


Auf dieser Seite wird beschrieben, wie Sie mit den Firebase AI Logic-SDKs Outpainting mit Imagen verwenden, um den Inhalt eines Bildes über seine ursprünglichen Grenzen hinaus zu erweitern.

Outpainting ist eine Art der maskenbasierten Bearbeitung. Eine Maske ist eine digitale Überlagerung, mit der Sie den Bereich definieren, den Sie bearbeiten möchten.

Funktionsweise: Sie stellen ein Originalbild und ein entsprechendes maskiertes Bild bereit, das entweder automatisch generiert oder von Ihnen bereitgestellt wird und eine Maske des neuen, erweiterten Bereichs definiert. Optional können Sie auch einen Text-Prompt eingeben, um zu beschreiben, was im maximierten Bereich generiert werden soll. Das Modell kann aber auch selbst entscheiden, was logisch zur vorhandenen Szene passt. Das Modell generiert die neuen Inhalte und füllt den maskierten Bereich aus.

Sie können beispielsweise das Seitenverhältnis eines Bildes ändern oder mehr Hintergrundkontext hinzufügen.

Zum Code springen

Hinweis

Nur verfügbar, wenn Sie Vertex AI Gemini API als API-Anbieter verwenden.

Falls noch nicht geschehen, folgen Sie dem Startleitfaden. Darin wird beschrieben, wie Sie Ihr Firebase-Projekt einrichten, Ihre App mit Firebase verbinden, das SDK hinzufügen, den Backend-Dienst für den von Ihnen ausgewählten API-Anbieter initialisieren und eine ImagenModel-Instanz erstellen.

Modelle, die diese Funktion unterstützen

Imagen bietet Bildbearbeitung über das capability-Modell:

  • imagen-3.0-capability-001

Bei Imagen-Modellen wird der Speicherort global nicht unterstützt.

Inhalte eines Bildes erweitern

Bevor Sie dieses Beispiel ausprobieren, müssen Sie die Schritte im Abschnitt Vorbereitung dieses Leitfadens ausführen, um Ihr Projekt und Ihre App einzurichten.

Im folgenden Beispiel wird gezeigt, wie ein Bild über seine ursprünglichen Grenzen hinaus erweitert wird. Dazu wird eine Maske verwendet, die in einem von Ihnen bereitgestellten Bild definiert ist. Sie stellen das Originalbild, einen Text-Prompt und das maskierte Bild bereit. Beachten Sie Folgendes zum Originalbild und zum maskierten Bild:

  • Das maskierte Bild muss die Pixelabmessungen der Zielgröße des endgültigen outpainteten Bilds haben.

  • Das Originalbild muss zusätzliche Ränder enthalten, damit es den Pixelabmessungen des maskierten Bildes entspricht.

Ein Text-Prompt ist optional, wenn das Modell selbst entscheiden soll, was logisch auf die vorhandene Szene folgt. Wenn Sie bestimmte Inhalte im erweiterten Bereich haben möchten, müssen Sie das in einem Text-Prompt angeben.

Swift

Die Bildbearbeitung mit Imagen-Modellen wird für Swift nicht unterstützt. Schauen Sie später in diesem Jahr noch einmal vorbei.

Kotlin

Verwenden Sie zum Erweitern eines Bildes editImage() und legen Sie die Bearbeitungskonfiguration auf ImagenEditMode.OUTPAINT fest.
Optional können Sie anstelle von editImage() auch outpaintImage() verwenden. In diesem Fall müssen Sie den Bearbeitungsmodus nicht angeben.

Hier finden Sie Beispielcode für Outpainting.

Java

Verwenden Sie zum Erweitern eines Bildes editImage() und legen Sie die Bearbeitungskonfiguration auf ImagenEditMode.OUTPAINT fest.
Optional können Sie anstelle von editImage() auch outpaintImage() verwenden. In diesem Fall müssen Sie den Bearbeitungsmodus nicht angeben.

Hier finden Sie Beispielcode für Outpainting.

Web

Die Bildbearbeitung mit Imagen-Modellen wird für Web-Apps nicht unterstützt. Schauen Sie später in diesem Jahr noch einmal vorbei.

Dart

Verwenden Sie editImage(), um ein Bild zu erweitern, und legen Sie die Bearbeitungskonfiguration auf ImagenEditMode.OUTPAINT fest.

Hier finden Sie Beispielcode für Outpainting.

Einheit

Die Bildbearbeitung mit Imagen-Modellen wird für Unity nicht unterstützt. Schauen Sie später in diesem Jahr noch einmal vorbei.

Best Practices und Einschränkungen

Wir empfehlen, die Maske beim Bearbeiten eines Bildes zu erweitern. So lassen sich die Ränder einer Bearbeitung glätten und sie wirkt überzeugender. Im Allgemeinen wird ein Dilation-Wert von 1% oder 2% empfohlen (0.01 oder 0.02).


Feedback zu Firebase AI Logic geben