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