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 Aufzählung:
|
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 die
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 für eine 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 | Teppichbodenmatte |
| 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.