Mit der Imagen API können Sie in Sekundenschnelle hochwertige Bilder erstellen, indem Sie Text-Prompts und Referenzbilder als Anleitung für die Generierung von Motiven oder Stilen verwenden.
Modellkarte für Imagen for Editing and Customization ansehen
Unterstützte Modelle
| Modell | Code |
|---|---|
| Anpassung mit Referenzbildern (Few-Shot) | imagen-3.0-capability-001 |
Weitere Informationen zu den von den einzelnen Modellen unterstützten Funktionen finden Sie unter Imagen-Modelle.
HTTP-Methode und URL
POST https://${LOCATION}-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/${LOCATION}/publishers/google/models/imagen-3.0-capability-001:predict
Beispielsyntax
Syntax zum Anpassen eines Bildes aus einem Text-Prompt und Referenzbildern.
Syntax
Syntax zum Anpassen eines Bildes.
REST
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://${LOCATION}-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/${LOCATION}/publishers/google/models/imagen-3.0-capability-001:predict \ -d '{ "instances": [ { // Use [1] to refer to the reference images with referenceId=1 // [2] to refer to the reference images with referenceId=2, // following the same format for all reference IDs that you provide. "prompt": "${TEXT_PROMPT}", "referenceImages": [ // A list of at most 4 reference image objects. [...] ] } ], "parameters": { [...] } }'
Beispiel für einen Anfragetext:
Bei dieser Anfrage geht es um die Personalisierung mit einem Kontrollbild für das Gesichts-Mesh und drei Referenzbildern.
{
"instances": [
{
"prompt": "Create an image about a man with short hair [1] in the pose of
control image [2] to match the description: A pencil style sketch of a
full-body portrait of a man with short hair [1] with hatch-cross drawing,
hatch drawing of portrait with 6B and graphite pencils, white background,
pencil drawing, high quality, pencil stroke, looking at camera, natural
human eyes",
"referenceImages": [
{
"referenceType": "REFERENCE_TYPE_CONTROL",
"referenceId": 2,
"referenceImage": {
"bytesBase64Encoded": "${IMAGE_BYTES_1}"
},
"controlImageConfig": {
"controlType": "CONTROL_TYPE_FACE_MESH",
"enableControlImageComputation": true
}
},
{
"referenceType": "REFERENCE_TYPE_SUBJECT",
"referenceId": 1,
"referenceImage": {
"bytesBase64Encoded": "${IMAGE_BYTES_2}"
},
"subjectImageConfig": {
"subjectDescription": "a man with short hair",
"subjectType": "SUBJECT_TYPE_PERSON"
}
},
{
"referenceType": "REFERENCE_TYPE_SUBJECT",
"referenceId": 1,
"referenceImage": {
"bytesBase64Encoded": "${IMAGE_BYTES_3}"
},
"subjectImageConfig": {
"subjectDescription": "a man with short hair",
"subjectType": "SUBJECT_TYPE_PERSON"
}
},
{
"referenceType": "REFERENCE_TYPE_SUBJECT",
"referenceId": 1,
"referenceImage": {
"bytesBase64Encoded": "${IMAGE_BYTES_4}"
},
"subjectImageConfig": {
"subjectDescription": "a man with short hair",
"subjectType": "SUBJECT_TYPE_PERSON"
}
}
]
}
],
"parameters": {
"negativePrompt": "wrinkles, noise, Low quality, dirty, low res, multi face,
rough texture, messy, messy background, color background, photo realistic,
photo, super realistic, signature, autograph, sign, text, characters,
alphabet, letter",
"seed": 1,
"language": "en",
"sampleCount": 4
}
}Parameterliste
Einzelheiten zur Implementierung finden Sie in den Beispielen.
Bilder anpassen
REST
| Parameter | |
|---|---|
referenceType |
Erforderliche Enumeration:
|
referenceId |
Erforderlich integerDie Referenz-ID. Verwenden Sie diese Referenz-ID im Prompt. Verwenden Sie beispielsweise [1], um auf die Referenzbilder mit referenceId=1 zu verweisen, und [2], um auf die Referenzbilder mit referenceId=2 zu verweisen.
|
referenceImage.bytesBase64Encoded |
Erforderlich stringEin Base64-String für das codierte Referenzbild. |
maskImageConfig.maskMode |
Optionale Aufzählung:
Wird angegeben, wenn referenceType auf REFERENCE_TYPE_MASK festgelegt ist.
|
maskImageConfig.dilation |
Optional float. Bereich: [0, 1]Der Prozentsatz der Bildbreite, um die diese Maske erweitert werden soll. Wird angegeben, wenn referenceType auf REFERENCE_TYPE_MASK festgelegt ist.
|
maskImageConfig.maskClasses |
Optional list[Integer].Maskenklassen für den MASK_MODE_SEMANTIC-Modus.Wird angegeben, wenn referenceType auf REFERENCE_TYPE_MASK festgelegt ist.
|
controlImageConfig.controlType |
Erforderliche Aufzählung:
Wird angegeben, wenn referenceType auf REFERENCE_TYPE_CONTROL festgelegt ist.
|
controlImageConfig.enableControlImageComputation |
Optional bool.Standard: false.
Wird angegeben, wenn referenceType auf REFERENCE_TYPE_CONTROL festgelegt ist.
|
language |
Optional: Der Sprachcode, der der Sprache Ihres Text-Prompts entspricht. Folgende Werte werden unterstützt:
en: Englisch (Standardwert, wenn nicht angegeben)
|
subjectImageConfig.subjectDescription |
Erforderlich: string.Eine kurze Beschreibung des Motivs auf dem Bild. Zum Beispiel eine Frau mit kurzen braunen Haaren. Wird angegeben, wenn referenceType auf REFERENCE_TYPE_SUBJECT festgelegt ist.
|
subjectImageConfig.subjectType |
Erforderliche Enumeration:
Wird angegeben, wenn referenceType auf REFERENCE_TYPE_SUBJECT festgelegt ist.
|
styleImageConfig.styleDescription |
Optional string.Eine kurze Beschreibung des Stils. Wird angegeben, wenn referenceType auf REFERENCE_TYPE_STYLE festgelegt ist.
|
Antwort
Der Antworttext der REST-Anfrage.
| Parameter | |
|---|---|
predictions |
Ein Array von |
Ergebnisobjekt des generativen Vision-Modells
Informationen zum Modellergebnis.
| Parameter | |
|---|---|
bytesBase64Encoded |
Das Base64-codierte, generierte Bild. Nicht vorhanden, wenn das Ausgabebild Filter der verantwortungsbewussten KI nicht bestanden hat. |
mimeType |
Der Typ des generierten Bildes. Nicht vorhanden, wenn das Ausgabebild Filter der verantwortungsbewussten KI nicht bestanden hat. |
Beispiele
In den folgenden Beispielen wird gezeigt, wie Sie das Imagen-Modell verwenden, um Bilder anzupassen.
Bilder anpassen
REST
Bevor Sie die Anfragedaten verwenden, ersetzen Sie folgende Werte:
- PROJECT_ID: Ihre Google Cloud Projekt-ID.
- LOCATION: Die Region Ihres Projekts. Beispiel:
us-central1,europe-west2oderasia-northeast3. Eine Liste der verfügbaren Regionen finden Sie unter Generative AI an Vertex AI-Standorten. - TEXT_PROMPT ist der Text-Prompt, der bestimmt, welche Bilder das Modell generiert. Wenn Sie die Imagen 3-Anpassung verwenden möchten, geben Sie den
referenceIddes Referenzbilds oder der Referenzbilder, die Sie bereitstellen, im Format [$referenceId] an. Beispiel:- Der folgende Text-Prompt bezieht sich auf eine Anfrage mit zwei Referenzbildern mit
"referenceId": 1. Beide Bilder haben eine optionale Beschreibung von"subjectDescription": "man with short hair": Erstelle ein Bild von einem Mann mit kurzen Haaren, das der Beschreibung entspricht: Eine Bleistiftskizze eines Ganzkörperporträts von man with short hair [1] mit Schraffurzeichnung, Schraffurzeichnung eines Porträts mit 6B- und Graphitstiften, weißer Hintergrund, Bleistiftzeichnung, hohe Qualität, Bleistiftstrich, Blick in die Kamera, natürliche menschliche Augen.
- Der folgende Text-Prompt bezieht sich auf eine Anfrage mit zwei Referenzbildern mit
"referenceId": Die ID des Referenzbilds oder die ID einer Reihe von Referenzbildern, die demselben Motiv oder Stil entsprechen. In diesem Beispiel zeigen die beiden Referenzbilder dieselbe Person, sodass sie dieselbereferenceId(1) haben.- BASE64_REFERENCE_IMAGE: Ein Referenzbild, das als Grundlage für die Bildgenerierung dient. Das Bild muss als base64-codierter Bytestring angegeben werden.
- SUBJECT_DESCRIPTION: Optional. Eine Textbeschreibung des Referenzbilds, die Sie dann im Feld
promptverwenden können. Beispiel:"prompt": "a full-body portrait of a man with short hair [1] with hatch-cross drawing", [...], "subjectDescription": "man with short hair" - IMAGE_COUNT ist die Anzahl der generierten Bilder. Zulässige Ganzzahlwerte: 1–4. Standardwert: 4
HTTP-Methode und URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagen-3.0-capability-001:predict
JSON-Text der Anfrage:
{
"instances": [
{
"prompt": "TEXT_PROMPT",
"referenceImages": [
{
"referenceType": "REFERENCE_TYPE_SUBJECT",
"referenceId": 1,
"referenceImage": {
"bytesBase64Encoded": "BASE64_REFERENCE_IMAGE"
},
"subjectImageConfig": {
"subjectDescription": "SUBJECT_DESCRIPTION",
"subjectType": "SUBJECT_TYPE_PERSON"
}
},
{
"referenceType": "REFERENCE_TYPE_SUBJECT",
"referenceId": 1,
"referenceImage": {
"bytesBase64Encoded": "BASE64_REFERENCE_IMAGE"
},
"subjectImageConfig": {
"subjectDescription": "SUBJECT_DESCRIPTION",
"subjectType": "SUBJECT_TYPE_PERSON"
}
}
]
}
],
"parameters": {
"sampleCount": IMAGE_COUNT
}
}
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagen-3.0-capability-001:predict"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagen-3.0-capability-001:predict" | Select-Object -Expand Content
"sampleCount": 2. Die Antwort gibt zwei Vorhersageobjekte zurück, wobei die generierten Bildbyte base64-codiert sind.
{
"predictions": [
{
"bytesBase64Encoded": "BASE64_IMG_BYTES",
"mimeType": "image/png"
},
{
"mimeType": "image/png",
"bytesBase64Encoded": "BASE64_IMG_BYTES"
}
]
}
Klassen-IDs
Verwenden Sie die folgenden Objektklassen-IDs, um automatisch eine Bildmaske basierend auf bestimmten Objekten zu erstellen.
Klassen-ID (class_) |
Objekt |
|---|---|
| 0 | Rucksack |
| 1 | Regenschirm |
| 2 | Tasche |
| 3 | Krawatte |
| 4 | Koffer |
| 5 | Etui |
| 6 | Vogel |
| 7 | Katze |
| 8 | Hund |
| 9 | Pferd |
| 10 | Schaf |
| 11 | Kuh |
| 12 | Elefant |
| 13 | Bär |
| 14 | Zebra |
| 15 | Giraffe |
| 16 | Tier: Sonstiges |
| 17 | Mikrowelle |
| 18 | Heizkörper |
| 19 | Ofen |
| 20 | Toaster |
| 21 | Speichertank |
| 22 | Förderband |
| 23 | Waschbecken |
| 24 | Kühlschrank |
| 25 | Waschmaschine mit Trockner |
| 26 | Ventilator |
| 27 | Geschirrspülmaschine |
| 28 | Toilette |
| 29 | Badewanne |
| 30 | Dusche |
| 31 | Tunnel |
| 32 | Brücke |
| 33 | Anlegeplatz |
| 34 | Zelt |
| 35 | Gebäude |
| 36 | Raumdecke |
| 37 | Laptop |
| 38 | Tastatur |
| 39 | Maus |
| 40 | Remote |
| 41 | Mobiltelefon |
| 42 | Fernseher |
| 43 | Boden |
| 44 | Bühne |
| 45 | Banane |
| 46 | Apfel |
| 47 | Sandwich |
| 48 | Orange |
| 49 | Brokkoli |
| 50 | Karotte |
| 51 | Hotdog |
| 52 | Pizza |
| 53 | Donut |
| 54 | Kuchen |
| 55 | Obst (Sonstiges) |
| 56 | Essen (Sonstiges) |
| 57 | Stuhl (Sonstiges) |
| 58 | Sessel |
| 59 | Drehstuhl |
| 60 | Hocker |
| 61 | Stuhl |
| 62 | Sofa |
| 63 | Papierkorb |
| 64 | Topfpflanze |
| 65 | Nachttisch |
| 66 | Bett |
| 67 | Tabelle |
| 68 | Billardtisch |
| 69 | Fass |
| 70 | Schreibtisch |
| 71 | Polsterhocker |
| 72 | Kleiderschrank |
| 73 | Kinderbett |
| 74 | Korb |
| 75 | Kommode |
| 76 | Bücherregal |
| 77 | Tresen (Sonstiges) |
| 78 | Waschtisch |
| 79 | Kücheninsel |
| 80 | Tür |
| 81 | Beleuchtung (Sonstiges) |
| 82 | Lampe |
| 83 | Wandleuchter |
| 84 | Kronleuchter |
| 85 | Spiegel |
| 86 | Whiteboard |
| 87 | Ablage |
| 88 | Treppe |
| 89 | Rolltreppe |
| 90 | Schrank |
| 91 | Kamin |
| 92 | Herd |
| 93 | Arcade-Automat |
| 94 | Schotter |
| 95 | Plattform |
| 96 | Spielfeld |
| 97 | Eisenbahn |
| 98 | Straße |
| 99 | Schnee |
| 100 | Gehwegpflaster |
| 101 | Startbahn |
| 102 | gelände |
| 103 | Buch |
| 104 | box |
| 105 | Uhr |
| 106 | Vase |
| 107 | Schere |
| 108 | Spielzeug (Sonstiges) |
| 109 | Teddybär |
| 110 | Haartrockner |
| 111 | Zahnbürste |
| 112 | Gemälde |
| 113 | Poster |
| 114 | Schwarzes Brett |
| 115 | Flasche |
| 116 | Tasse |
| 117 | Weinglas |
| 118 | Messer |
| 119 | Fork |
| 120 | Löffel |
| 121 | Schüssel |
| 122 | Tablett |
| 123 | Dunstabzugshaube |
| 124 | Teller |
| 125 | Person |
| 126 | Fahrer (Sonstiges) |
| 127 | Radfahrer |
| 128 | Motorradfahrer |
| 129 | Papier |
| 130 | Straßenlaterne |
| 131 | Straßensperre |
| 132 | Briefkasten |
| 133 | Videoüberwachungskamera |
| 134 | Verteilerkasten |
| 135 | Verkehrsschild |
| 136 | Ampel |
| 137 | Hydrant |
| 138 | Parkuhr |
| 139 | Sitzbank |
| 140 | Fahrradständer |
| 141 | Billboard |
| 142 | Himmel |
| 143 | Pfosten |
| 144 | Zaun |
| 145 | Geländer |
| 146 | Schutzmaßnahmen |
| 147 | Berg |
| 148 | Felsen |
| 149 | Frisbee |
| 150 | Skier |
| 151 | Snowboard |
| 152 | Sportball |
| 153 | Drachen |
| 154 | Baseballschläger |
| 155 | Baseballhandschuh |
| 156 | Skateboard |
| 157 | Surfbrett |
| 158 | Tennisschläger |
| 159 | Netz |
| 160 | Basis |
| 161 | Skulptur |
| 162 | Spalte |
| 163 | Brunnen |
| 164 | Markise |
| 165 | Bekleidung |
| 166 | Banner |
| 167 | Fahne |
| 168 | Decke |
| 169 | Vorhang (Sonstiges) |
| 170 | Duschvorhang |
| 171 | Kissen |
| 172 | Handtuch |
| 173 | Teppich |
| 174 | Vegetation |
| 175 | Fahrrad |
| 176 | Auto |
| 177 | Autorikscha |
| 178 | Motorrad |
| 179 | Flugzeug |
| 180 | Bus |
| 181 | Zug |
| 182 | Lkw |
| 183 | Trailer |
| 184 | Boot |
| 185 | Langsames Objekt mit Rädern |
| 186 | Fluss/See |
| 187 | Meer |
| 188 | Wasser (Sonstiges) |
| 189 | Schwimmbad |
| 190 | Wasserfall |
| 191 | Mauer |
| 192 | Fenster |
| 193 | Jalousie |
Nächste Schritte
- Weitere Informationen finden Sie unter Imagen in Vertex AI.