Omówienie edytowania obrazów za pomocą Imagen


Dostępne tylko wtedy, gdy jako dostawcę interfejsu API używasz Vertex AI Gemini API.


Pakiety SDK Firebase AI Logic umożliwiają dostęp do modeli Imagen (za pomocą interfejsu Imagen API) dzięki czemu możesz edytować obrazy na 2 sposoby:

  • Edytowanie na podstawie maski, np. wstawianie i usuwanie obiektów, rozszerzanie treści obrazu poza oryginalne granice oraz zastępowanie tła.

  • Opcje dostosowywania na podstawie stylu (np. wzoru, tekstury lub stylu artysty), obiektu (np. produktu, osoby lub zwierzęcia) lub kontroli (np. odręcznego szkicu).

Na tej stronie znajdziesz ogólny opis każdej opcji edycji. Każda opcja ma osobną stronę z większą ilością szczegółów i przykładami kodu.

Modele obsługujące tę funkcję

Imagen oferuje edycję obrazów za pomocą modelu capability:

  • imagen-3.0-capability-001

Pamiętaj, że w przypadku Imagen modeli lokalizacja global jest nie obsługiwana.

Edytowanie na podstawie maski

Edytowanie na podstawie maski umożliwia wprowadzanie lokalnych, precyzyjnych zmian w obrazie. Model wprowadza zmiany wyłącznie w zdefiniowanym zamaskowanym obszarze obrazu. Maska to cyfrowa nakładka określająca konkretny obszar, który chcesz edytować. Zamaskowany obszar może zostać wykryty i utworzony automatycznie przez model lub zdefiniowany na zamaskowanym obrazie, który podasz. W zależności od przypadku użycia model może wymagać prompta tekstowego, aby wiedzieć, jakie zmiany wprowadzić.

Oto typowe przypadki użycia edycji na podstawie maski:

Wstawianie obiektów (inpainting)

Do wstawiania obiektów do obrazu możesz użyć funkcji inpainting insert objects.

Jak to działa: podajesz oryginalny obraz i odpowiadający mu zamaskowany obraz – wygenerowany automatycznie lub przez Ciebie – który definiuje maskę na obszarze, w którym chcesz dodać nowe treści. Podajesz też prompta tekstowego z opisem tego, co chcesz dodać. Model generuje i dodaje nowe treści w zamaskowanym obszarze.

Możesz na przykład zamaskować stół i poprosić model o dodanie wazonu z kwiatami.

Usuwanie obiektów (inpainting)

Do usuwania obiektów z obrazu możesz użyć funkcji inpainting .

Jak to działa: podajesz oryginalny obraz i odpowiadający mu zamaskowany obraz – wygenerowany automatycznie lub przez Ciebie – który definiuje maskę na obiekcie lub temacie, który chcesz usunąć. Możesz też opcjonalnie podać prompta tekstowego z opisem tego, co chcesz usunąć, lub model może inteligentnie wykryć, który obiekt usunąć. Model usuwa obiekt i wypełnia obszar nową, odpowiednią do kontekstu treścią.

Możesz na przykład zamaskować piłkę i zastąpić ją pustą ścianą lub trawiastym polem.

Rozszerzanie obrazu poza oryginalne granice (outpainting)

Do rozszerzania obrazu poza oryginalne granice możesz użyć funkcji outpainting .

Jak to działa: podajesz oryginalny obraz i odpowiadający mu zamaskowany obraz – wygenerowany automatycznie lub przez Ciebie – który definiuje maskę nowego, rozszerzonego obszaru. Możesz też opcjonalnie podać a prompta tekstowego z opisem tego, co chcesz umieścić w rozszerzonym obszarze, lub model może inteligentnie zdecydować, co logicznie będzie kontynuować istniejącą scenę. Model generuje nowe treści i wypełnia zamaskowany obszar.

Możesz na przykład zmienić proporcje obrazu lub dodać więcej kontekstu tła.

Zastępowanie tła

Możesz zastąpić tło obrazu.

Jak to działa: podajesz oryginalny obraz i odpowiadający mu zamaskowany obraz, który definiuje maskę na tle – albo za pomocą automatycznego wykrywania tła, albo przez samodzielne podanie maski tła. Podajesz też prompta tekstowego z opisem tego, co chcesz zmienić. Model generuje i stosuje nowe tło.

Możesz na przykład zmienić otoczenie obiektu bez wpływu na pierwszy plan (np. na zdjęciu produktu).

Dostosowywanie

Dostosowywanie umożliwia edytowanie lub generowanie obrazów za pomocą promptów tekstowych i obrazów wzorcowych, które wskazują modelowi, jak wygenerować nowy obraz na podstawie określonego stylu, obiektu (np. produktu, osoby lub zwierzęcia) lub kontroli.

Dostosowywanie na podstawie stylu

Możesz edytować lub generować obrazy na podstawie określonego stylu.

Jak to działa: podajesz prompt tekstowy i co najmniej 1 obraz referencyjny, który przedstawia określony styl (np. wzór, teksturę lub styl projektowania). Model używa tych danych wejściowych do wygenerowania nowego obrazu na podstawie określonego stylu na obrazach wzorcowych.

Możesz na przykład wygenerować nowy obraz kuchni na podstawie obrazu z popularnego katalogu detalicznego.

Dostosowywanie na podstawie obiektu

Możesz edytować lub generować obrazy na podstawie określonego obiektu.

Jak to działa: podajesz prompta tekstowego i co najmniej 1 obraz referencyjny, który przedstawia określony obiekt (np. produkt, osobę lub zwierzę). Model używa tych danych wejściowych do wygenerowania nowego obrazu na podstawie określonego obiektu na obrazach wzorcowych.

Możesz na przykład poprosić model o zastosowanie stylu kreskówki do zdjęcia dziecka lub zmianę koloru roweru na zdjęciu.

Dostosowywanie na podstawie kontroli

Możesz edytować lub generować obrazy na podstawie określonej kontroli.

Jak to działa: podajesz prompt tekstowy i co najmniej 1 kontroli obraz referencyjny (np. rysunek lub obraz krawędzi Canny). Model używa tych danych wejściowych do wygenerowania nowego obrazu na podstawie obrazów kontrolnych.

Możesz na przykład podać modelowi rysunek rakiety i księżyca wraz z promptem tekstowym, aby utworzyć akwarelę na podstawie rysunku.


Prześlij opinię o korzystaniu z Firebase AI Logic