Hintergrund eines Bilds ersetzen

Auf dieser Seite wird beschrieben, wie Sie den Hintergrund eines Bildes ersetzen. Mit Imagen on Vertex AI können Sie die automatische Objektsegmentierung verwenden, um diese Inhalte beizubehalten, während andere Bildinhalte geändert werden. Mit Imagen 3 können Sie auch einen eigenen Maskenbereich angeben, um mehr Kontrolle bei der Bearbeitung zu haben.

Modellkarte für Imagen for Editing and Customization ansehen

Beispiel für die Bearbeitung eines Produktbilds

Im folgenden Anwendungsfall wird ein Produktbild optimiert, indem der Hintergrund eines Bildes geändert wird, das Aussehen des Produkts im Bild jedoch beibehalten wird.

Beispielgeneriertes Bild in der Console
Bild, das mit der Imagen-Produktbildbearbeitungsfunktion über den Prompt generiert wurde: auf einem Tisch in einem Boutique-Geschäft sein. Originalbildquelle: Irene Kredenets auf Unsplash.

Hinweise

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Vertex AI API.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Vertex AI API.

    Enable the API

  8. Richten Sie die Authentifizierung für Ihre Umgebung ein.

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    Python

    Wenn Sie die Python Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung verwenden möchten, installieren und initialisieren Sie die gcloud CLI und richten dann die Standardanmeldedaten für Anwendungen mit Ihren Nutzeranmeldedaten ein.

    1. Install the Google Cloud CLI.

    2. If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

    3. To initialize the gcloud CLI, run the following command:

      gcloud init
    4. If you're using a local shell, then create local authentication credentials for your user account:

      gcloud auth application-default login

      You don't need to do this if you're using Cloud Shell.

      If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.

    Weitere Informationen finden Sie in der Dokumentation zur Google Cloud -Authentifizierung unter ADC für eine lokale Entwicklungsumgebung einrichten.

    REST

    Verwenden Sie die von der gcloud CLI bereitgestellten Anmeldedaten, um die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung zu verwenden.

      After installing the Google Cloud CLI, initialize it by running the following command:

      gcloud init

      If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

    Weitere Informationen finden Sie in der Dokumentation zur Google Cloud -Authentifizierung unter Für die Verwendung von REST authentifizieren.

    Mit einer automatisch erkannten Hintergrundmaske bearbeiten

    Mit Imagen können Sie Produktbilder bearbeiten und den Hintergrund automatisch erkennen lassen. Das kann hilfreich sein, wenn Sie den Hintergrund eines Produktbilds ändern, aber das Produktdesign beibehalten möchten. Für die Bearbeitung von Produktbildern wird Google Product Studio (GPS) genutzt. Sie können das GPS-Feature als Teil von Imagen über die Console oder die API verwenden.

    Beispielgeneriertes Bild in der Console
    Bild, das mit der Imagen-Produktbildbearbeitungsfunktion über den Prompt generiert wurde: auf einem Tisch in einem Boutique-Geschäft sein. Originalbildquelle: Irene Kredenets auf Unsplash.

    Folgen Sie der Anleitung unten, um die Bearbeitung von Produktbildern mit automatischer Hintergrunderkennung zu aktivieren und zu verwenden.

    Imagen 3

    Verwenden Sie die folgenden Beispiele, um eine Anfrage zur Bearbeitung von Produktbildern mit dem Imagen 3-Modell zu senden.

    Console

    1. Rufen Sie in der Google Cloud Console die Seite Vertex AI> Media Studio auf.

      Zu Media Studio

    2. Klicken Sie auf Hochladen. Wählen Sie im angezeigten Dateidialogfeld eine Datei zum Hochladen aus.
    3. Klicken Sie auf Inpaint (Bereich füllen).
    4. Klicken Sie im Bereich Parameter auf Produkthintergrund.
    5. Klicken Sie in der Bearbeitungssymbolleiste auf background_replaceExtraktion.
    6. Wählen Sie eine der Optionen zum Extrahieren von Masken aus:

      • Hintergrundelemente: Erkennt die Hintergrundelemente und erstellt eine Maske um diese Elemente.
      • Vordergrundelemente: Erkennt die Objekte im Vordergrund und erstellt eine Maske um diese herum.
      • background_replacePersonen: Erkennt Personen und erstellt eine Maske um sie herum.
    7. Optional: Passen Sie in der Seitenleiste Parameter die folgenden Optionen an:
      • Modell: Das Imagen-Modell, das verwendet werden soll
      • Anzahl der Ergebnisse: Die Anzahl der zu generierenden Ergebnisse
      • Negativer Prompt: Elemente, die nicht generiert werden sollen
    8. Geben Sie im Prompt-Feld einen Prompt zum Ändern des Bildes ein.
    9. Klicken Sie auf SendenGenerieren.

    Python

    Installieren

    pip install --upgrade google-genai

    Weitere Informationen finden Sie in der SDK-Referenzdokumentation.

    Umgebungsvariablen für die Verwendung des Gen AI SDK mit Vertex AI festlegen:

    # Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values
    # with appropriate values for your project.
    export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT
    export GOOGLE_CLOUD_LOCATION=us-central1
    export GOOGLE_GENAI_USE_VERTEXAI=True

    from google import genai
    from google.genai.types import RawReferenceImage, MaskReferenceImage, MaskReferenceConfig, EditImageConfig
    
    client = genai.Client()
    
    # TODO(developer): Update and un-comment below line
    # output_file = "output-image.png"
    
    raw_ref = RawReferenceImage(
        reference_image=Image.from_file(location='test_resources/suitcase.png'), reference_id=0)
    mask_ref = MaskReferenceImage(
        reference_id=1,
        reference_image=None,
        config=MaskReferenceConfig(
            mask_mode="MASK_MODE_BACKGROUND",
        ),
    )
    
    image = client.models.edit_image(
        model="imagen-3.0-capability-001",
        prompt="A light blue suitcase in front of a window in an airport",
        reference_images=[raw_ref, mask_ref],
        config=EditImageConfig(
            edit_mode="EDIT_MODE_BGSWAP",
        ),
    )
    
    image.generated_images[0].image.save(output_file)
    
    print(f"Created output image using {len(image.generated_images[0].image.image_bytes)} bytes")
    # Example response:
    # Created output image using 1234567 bytes
    

    REST

    Weitere Informationen finden Sie in der API-Referenz unter Bilder bearbeiten.

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • PROJECT_ID: Ihre Google Cloud Projekt-ID.
    • LOCATION: Die Region Ihres Projekts. Beispiel: us-central1, europe-west2 oder asia-northeast3. Eine Liste der verfügbaren Regionen finden Sie unter Generative AI an Vertex AI-Standorten.
    • TEXT_PROMPT: Der Text-Prompt, der bestimmt, welche Bilder das Modell generiert. Dieses Feld ist sowohl zum Erstellen als auch zum Bearbeiten erforderlich.
    • referenceType: Ein ReferenceImage ist ein Bild, das zusätzlichen Kontext für die Bildbearbeitung liefert. Für Bearbeitungsanwendungsfälle ist ein normales RGB-Rohbild als Referenz (REFERENCE_TYPE_RAW) erforderlich. Eine Anfrage darf höchstens ein Rohreferenzbild enthalten. Das Ausgabebild hat dieselbe Höhe und Breite wie das RAW-Referenzbild. Für Anwendungsfälle mit maskierter Bearbeitung ist ein Maskenreferenzbild (REFERENCE_TYPE_MASK) erforderlich.
    • referenceId: Die Ganzzahl-ID des Referenzbilds. In diesem Beispiel haben die beiden Referenzbildobjekte unterschiedliche Typen und daher unterschiedliche referenceId-Werte (1 und 2).
    • B64_BASE_IMAGE: Das Basisbild, das bearbeitet oder hochskaliert werden soll. Das Bild muss als base64-codierter Bytestring angegeben werden. Größenbeschränkung: 10 MB.
    • maskImageConfig.maskMode: Der Maskenmodus für die Maskenbearbeitung. MASK_MODE_BACKGROUND wird verwendet, um den Hintergrund automatisch zu maskieren, ohne dass eine vom Nutzer bereitgestellte Maske erforderlich ist.
    • MASK_DILATION – Gleitkommazahl. Der Prozentsatz der Bildbreite, um die diese Maske erweitert werden soll. Ein Wert von 0.00 wird empfohlen, um eine Verlängerung des Vordergrundprodukts zu vermeiden. Minimum: 0, Maximum: 1. Standardwert: 0,03.
    • EDIT_STEPS – Ganzzahl. Die Anzahl der Stichprobenschritte für das Basismodell. Wenn Sie Produktbilder bearbeiten möchten, beginnen Sie mit den Schritten unter 75.
    • EDIT_IMAGE_COUNT: Die Anzahl der bearbeiteten 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_RAW",
              "referenceId": 1,
              "referenceImage": {
                "bytesBase64Encoded": "B64_BASE_IMAGE"
              }
            },
            {
              "referenceType": "REFERENCE_TYPE_MASK",
              "referenceId": 2,
              "maskImageConfig": {
                "maskMode": "MASK_MODE_BACKGROUND",
                "dilation": MASK_DILATION
              }
            }
          ]
        }
      ],
      "parameters": {
        "editConfig": {
          "baseSteps": EDIT_STEPS
        },
        "editMode": "EDIT_MODE_BGSWAP",
        "sampleCount": EDIT_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
    Die folgende Beispielantwort bezieht sich auf eine Anfrage zur Bearbeitung des Produkthintergrunds. Die Antwort gibt vier 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"
        },
        {
          "bytesBase64Encoded": "BASE64_IMG_BYTES",
          "mimeType": "image/png"
        },
        {
          "bytesBase64Encoded": "BASE64_IMG_BYTES",
          "mimeType": "image/png"
        }
      ]
    }
    

    Imagen 2

    Verwenden Sie die folgenden Beispiele, um eine Anfrage zur Bearbeitung von Produktbildern mit dem Imagen 2- oder Imagen-Modell zu senden.

    Console

    1. Rufen Sie in der Google Cloud Console die Seite Vertex AI> Media Studio auf.

      Zu Media Studio

    2. Klicken Sie im unteren Textbereich auf Bearbeiten.

    3. Klicken Sie auf Hochladen, um Ihr lokal gespeichertes Produktbild zum Bearbeiten auszuwählen.

    4. Wählen Sie im Bereich Parameter die Option Bildbearbeitung im Produktstil aktivieren aus.

    5. Geben Sie in das Feld Prompt (Prompt hier eingeben) ein.

    6. Klicken Sie auf Erstellen.

    Python

    Informationen zur Installation des Vertex AI SDK for Python finden Sie unter Vertex AI SDK for Python installieren. Weitere Informationen finden Sie in der Python-API-Referenzdokumentation.

    
    import vertexai
    from vertexai.preview.vision_models import Image, ImageGenerationModel
    
    # TODO(developer): Update and un-comment below lines
    # PROJECT_ID = "your-project-id"
    # input_file = "input-image.png"
    # output_file = "output-image.png"
    # prompt = "" # The text prompt describing what you want to see in the background.
    
    vertexai.init(project=PROJECT_ID, location="us-central1")
    
    model = ImageGenerationModel.from_pretrained("imagegeneration@006")
    base_img = Image.load_from_file(location=input_file)
    
    images = model.edit_image(
        base_image=base_img,
        prompt=prompt,
        edit_mode="product-image",
    )
    
    images[0].save(location=output_file, include_generation_parameters=False)
    
    # Optional. View the edited image in a notebook.
    # images[0].show()
    
    print(f"Created output image using {len(images[0]._image_bytes)} bytes")
    # Example response:
    # Created output image using 1234567 bytes
    

    REST

    Weitere Informationen zu imagegeneration-Modellanfragen finden Sie in der API-Referenz des imagegeneration-Modells.

    Um die Bearbeitung von Produktbildern mit dem Modell Imagen 2 Version 006 (imagegeneration@006) zu aktivieren, fügen Sie das folgende Feld im Objekt "editConfig": {} ein: "editMode": "product-image". Diese Anfrage liefert immer 4  Bilder.

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • PROJECT_ID: Ihre Google Cloud Projekt-ID.
    • LOCATION: Die Region Ihres Projekts. Beispiel: us-central1, europe-west2 oder asia-northeast3. Eine Liste der verfügbaren Regionen finden Sie unter Generative AI an Vertex AI-Standorten.
    • TEXT_PROMPT: Der Text-Prompt, der bestimmt, welche Bilder das Modell generiert. Dieses Feld ist sowohl zum Erstellen als auch zum Bearbeiten erforderlich.
    • B64_BASE_IMAGE: Das Basisbild, das bearbeitet oder hochskaliert werden soll. Das Bild muss als base64-codierter Bytestring angegeben werden. Größenbeschränkung: 10 MB.
    • PRODUCT_POSITION: Optional. Eine Einstellung, um die ursprüngliche Positionierung des erkannten Produkts oder Objekts beizubehalten oder dem Modell zu ermöglichen, es neu zu positionieren. Verfügbare Werte: reposition (Standardwert), der eine Neupositionierung ermöglicht, oder fixed, wodurch die Produktposition beibehalten wird. Bei nicht quadratischen Eingabebildern ist das Verhalten der Produktposition immer „neu positionieren“, auch wenn „fest“ eingestellt ist.

    HTTP-Methode und URL:

    POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagegeneration@006:predict

    JSON-Text der Anfrage:

    {
      "instances": [
        {
          "prompt": "TEXT_PROMPT",
          "image": {
              "bytesBase64Encoded": "B64_BASE_IMAGE"
          },
        }
      ],
      "parameters": {
        "editConfig": {
          "editMode": "product-image",
          "productPosition": "PRODUCT_POSITION",
        }
      }
    }
    
    

    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/imagegeneration@006: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/imagegeneration@006:predict" | Select-Object -Expand Content
    Die folgende Beispielantwort bezieht sich auf eine Anfrage zur Bearbeitung des Produkthintergrunds. Die Antwort gibt vier 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"
        },
        {
          "bytesBase64Encoded": "BASE64_IMG_BYTES",
          "mimeType": "image/png"
        },
        {
          "bytesBase64Encoded": "BASE64_IMG_BYTES",
          "mimeType": "image/png"
        }
      ]
    }
    

    Mit einem definierten Maskenbereich bearbeiten

    Sie können den Bereich, der ersetzt wird, maskieren, anstatt die Maske automatisch von Imagen erkennen zu lassen.

    Console

    1. Rufen Sie in der Google Cloud Console die Seite Vertex AI> Media Studio auf.

      Zu Media Studio

    2. Klicken Sie auf Hochladen. Wählen Sie im angezeigten Dateidialogfeld eine Datei zum Hochladen aus.
    3. Klicken Sie auf Inpaint (Bereich füllen).
    4. Klicken Sie im Bereich Parameter auf Produkthintergrund.
    5. Führen Sie einen der folgenden Schritte aus:

      • Eigene Maske hochladen:
        1. Erstellen Sie eine Maske auf Ihrem Computer.
        2. Klicken Sie auf Maske hochladen. Wählen Sie im angezeigten Dialogfeld eine Maske zum Hochladen aus.
      • Eigene Maske definieren:Verwenden Sie in der Bearbeitungssymbolleiste die Maskentools (Feld, Pinsel oder masked_transitions-Invertierungstool), um den Bereich oder die Bereiche anzugeben, in denen Inhalte hinzugefügt werden sollen.
    6. Optional: Passen Sie im Bereich Parameter die folgenden Optionen an:
      • Modell: Das Imagen-Modell, das verwendet werden soll
      • Anzahl der Ergebnisse: Die Anzahl der zu generierenden Ergebnisse
      • Negativer Prompt: Elemente, die nicht generiert werden sollen
    7. Geben Sie im Prompt-Feld einen Prompt zum Ändern des Bildes ein.
    8. Klicken Sie auf Erstellen.

    Python

    Installieren

    pip install --upgrade google-genai

    Weitere Informationen finden Sie in der SDK-Referenzdokumentation.

    Umgebungsvariablen für die Verwendung des Gen AI SDK mit Vertex AI festlegen:

    # Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values
    # with appropriate values for your project.
    export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT
    export GOOGLE_CLOUD_LOCATION=us-central1
    export GOOGLE_GENAI_USE_VERTEXAI=True

    from google import genai
    from google.genai.types import RawReferenceImage, MaskReferenceImage, MaskReferenceConfig, EditImageConfig
    
    client = genai.Client()
    
    # TODO(developer): Update and un-comment below line
    # output_file = "output-image.png"
    
    raw_ref = RawReferenceImage(
        reference_image=Image.from_file(location='test_resources/suitcase.png'), reference_id=0)
    mask_ref = MaskReferenceImage(
        reference_id=1,
        reference_image=Image.from_file(location='test_resources/suitcase_mask.png'),
        config=MaskReferenceConfig(
            mask_mode="MASK_MODE_USER_PROVIDED",
            mask_dilation=0.0,
        ),
    )
    
    image = client.models.edit_image(
        model="imagen-3.0-capability-001",
        prompt="A light blue suitcase in an airport",
        reference_images=[raw_ref, mask_ref],
        config=EditImageConfig(
            edit_mode="EDIT_MODE_BGSWAP",
        ),
    )
    
    image.generated_images[0].image.save(output_file)
    
    print(f"Created output image using {len(image.generated_images[0].image.image_bytes)} bytes")
    # Example response:
    # Created output image using 1234567 bytes
    

    REST

    Weitere Informationen finden Sie in der API-Referenz unter Bilder bearbeiten.

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • PROJECT_ID: Ihre Google Cloud Projekt-ID.
    • LOCATION: Die Region Ihres Projekts. Beispiel: us-central1, europe-west2 oder asia-northeast3. Eine Liste der verfügbaren Regionen finden Sie unter Generative AI an Vertex AI-Standorten.
    • TEXT_PROMPT: Der Text-Prompt, der bestimmt, welche Bilder das Modell generiert. Dieses Feld ist sowohl zum Erstellen als auch zum Bearbeiten erforderlich.
    • referenceId: Die Ganzzahl-ID des Referenzbilds. In diesem Beispiel haben die beiden Referenzbildobjekte unterschiedliche Typen und daher unterschiedliche referenceId-Werte (1 und 2).
    • B64_BASE_IMAGE: Das Basisbild, das bearbeitet oder hochskaliert werden soll. Das Bild muss als base64-codierter Bytestring angegeben werden. Größenbeschränkung: 10 MB.
    • B64_MASK_IMAGE: Das Schwarz-Weiß-Bild, das Sie als Maskenebene zum Bearbeiten des Originalbilds verwenden möchten. Das Bild muss als base64-codierter Bytestring angegeben werden. Größenbeschränkung: 10 MB.
    • MASK_DILATION – Gleitkommazahl. Der Prozentsatz der Bildbreite, um die diese Maske erweitert werden soll. Ein Wert von 0.00 wird empfohlen, um eine Verlängerung des Vordergrundprodukts zu vermeiden. Minimum: 0, Maximum: 1. Standardwert: 0,03.
    • EDIT_STEPS – Ganzzahl. Die Anzahl der Stichprobenschritte für das Basismodell. Wenn Sie Produktbilder bearbeiten möchten, beginnen Sie mit den Schritten unter 75.
    • EDIT_IMAGE_COUNT: Die Anzahl der bearbeiteten 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": [
            {
              "referenceType": "REFERENCE_TYPE_RAW",
              "referenceId": 1,
              "referenceImage": {
                "bytesBase64Encoded": "B64_BASE_IMAGE"
              }
            },
            {
              "referenceType": "REFERENCE_TYPE_MASK",
              "referenceId": 2,
              "referenceImage": {
                "bytesBase64Encoded": "B64_MASK_IMAGE"
              },
              "maskImageConfig": {
                "maskMode": "MASK_MODE_USER_PROVIDED",
                "dilation": MASK_DILATION
              }
            }
          ]
        }
      ],
      "parameters": {
        "editConfig": {
          "baseSteps": EDIT_STEPS
        },
        "editMode": "EDIT_MODE_BGSWAP",
        "sampleCount": EDIT_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
    Die folgende Beispielantwort bezieht sich auf eine Anfrage zur Bearbeitung des Produkthintergrunds.
    {
      "predictions": [
        {
          "bytesBase64Encoded": "BASE64_IMG_BYTES",
          "mimeType": "image/png"
        },
        {
          "mimeType": "image/png",
          "bytesBase64Encoded": "BASE64_IMG_BYTES"
        },
        {
          "bytesBase64Encoded": "BASE64_IMG_BYTES",
          "mimeType": "image/png"
        },
        {
          "bytesBase64Encoded": "BASE64_IMG_BYTES",
          "mimeType": "image/png"
        }
      ]
    }
    

    Beschränkungen

    Da Masken manchmal unvollständig sind, versucht das Modell möglicherweise, das Vordergrundobjekt zu vervollständigen, wenn an der Grenze extrem kleine Teile fehlen. In seltenen Fällen kann es vorkommen, dass das Modell das Vordergrundobjekt leicht erweitert, wenn es bereits vollständig ist.

    Als Workaround können Sie die Modellausgabe segmentieren und dann zusammenführen. Das folgende Python-Snippet zeigt ein Beispiel für eine Problemumgehung:

    blended = Image.composite(out_images[0].resize(image_expanded.size), image_expanded, mask_expanded)
    

    Nächste Schritte

    Artikel zu Imagen und anderen Produkten für generative KI in Vertex AI: