Recontextualiser les images de produits

La recontextualisation de produits Imagen sur Vertex AI vous permet de modifier des images de produits en les insérant dans différentes scènes ou en leur ajoutant des arrière-plans. Vous fournissez des images d'un produit et un prompt facultatif. Le produit Imagen recontextualise ensuite vos images en générant des images de votre produit dans de nouvelles scènes ou avec de nouveaux arrière-plans.

Pour demander l'accès à la fonctionnalité de recontextualisation de produits Imagen, remplissez le formulaire Vertex AI – Demande d'accès à Generative Media for Marketing.

Types de produits acceptés

La recontextualisation de produits Imagen est compatible avec les types de produits suivants :

  • Appareils
  • Commerce et industrie
  • Vêtements
  • Appareils électroniques
  • Meubles
  • Jardin et cour
  • Matériel
  • Santé et beauté
  • Joaillerie
  • Animaux de compagnie
  • Chaussures
  • Articles de sport
  • Jeux et jouets
  • Véhicules

Exemple de recontextualisation de produit

Voici un exemple de cas d'utilisation pour la recontextualisation de produits :

Exemples d'entrées Exemples de résultats Requête utilisée
Un ordinateur portable noir avec un clavier rétroéclairé multicolore et une image de test colorée à l'écran, placé sur un fond blanc. Un ordinateur portable noir avec un clavier rétroéclairé multicolore et une image de test colorée à l'écran, maintenant placé sur un établi.
             Derrière l'établi se trouve une fenêtre avec des publicités multicolores à l'extérieur. Sur un établi encombré dans une ruelle cyberpunk pluvieuse et éclairée au néon, avec des publicités holographiques clignotant en arrière-plan.
Un appareil photo reflex numérique avec un grand objectif attaché, placé sur un fond blanc. Un appareil photo reflex numérique avec un grand objectif attaché, placé sur un fond blanc. La caméra est maintenant placée au bord d'une falaise, avec une grande cascade en arrière-plan. Placé sur un rocher mousseux au bord d'une falaise, surplombant une cascade massive et puissante dans un paysage islandais spectaculaire et nuageux.
Une paire de lunettes de soleil sur un fond blanc. Une paire de lunettes de soleil, maintenant posée sur une table avec une tasse de café posée sur une soucoupe au premier plan, et une vue panoramique sur le sommet d'une église et une étendue d'eau avec des collines en arrière-plan. Sur une table de café blanche à Santorin, avec une tasse de café, surplombant la mer Égée et les bâtiments emblématiques à dômes bleus.

Essayer la recontextualisation de produits Imagen dans Colab

Avant de commencer

  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.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Vertex AI API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

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

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Vertex AI API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  8. Configurez l'authentification pour votre environnement.

    Pour utiliser les exemples API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à la gcloud CLI.

      Install the Google Cloud CLI. After installation, initialize the Google Cloud CLI 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.

    Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Google Cloud .

  9. Générer des images de produits dans différentes scènes

    REST

    Avant d'utiliser les données de requête, effectuez les remplacements suivants :

    • REGION : région dans laquelle se trouve votre projet. Pour en savoir plus sur les régions compatibles, consultez Emplacements de l'IA générative sur Vertex AI.
    • PROJECT_ID : ID de votre projet Google Cloud .
    • TEXT_PROMPT : facultatif. Une requête textuelle pour guider les images générées par le modèle.
    • BASE64_SUBJECT_IMAGE : image encodée en base64 de l'image du sujet.
    • PERSON_SETTING : facultatif. Valeur de chaîne qui contrôle le type de génération de personnes ou de visages autorisé par le modèle. Vous pouvez utiliser les valeurs suivantes pour personGeneration :
      • "allow_adult" : autorise uniquement la génération d'adultes, à l'exception de la génération de célébrités. La génération de célébrités n'est autorisée pour aucun paramètre. Il s'agit du paramètre par défaut.
      • "allow_all" : autorise la génération de personnes de tous âges, à l'exception de la génération de célébrités. La génération de célébrités n'est autorisée pour aucun paramètre.
      • "dont_allow" : ne permet pas de générer des personnes ni des visages dans les résultats.
    • SAFETY_SETTING : facultatif. Valeur de chaîne qui contrôle le seuil du filtre de sécurité pour les images générées. Vous pouvez utiliser les valeurs suivantes pour sélectionner votre paramètre de sécurité :
      • "block_low_and_above" : seuil de sécurité le plus strict. "block_low_and_above" filtre le plus grand nombre d'images générées.
      • "block_medium_and_above" : seuil de sécurité moyen qui équilibre le filtrage des contenus potentiellement dangereux et sécurisés. "block_medium_and_above" est le paramètre de sécurité par défaut.
      • "block_only_high" : seuil de sécurité le plus bas, qui réduit le nombre de requêtes bloquées en raison du filtre de sécurité. L'utilisation du seuil de sécurité "block_only_high" peut augmenter le nombre d'images répréhensibles générées par le modèle.
    • WATERMARK_SETTING : Facultatif : valeur booléenne. Lorsque cette valeur est définie sur true, le modèle ajoute un filigrane numérique que vous pouvez utiliser pour vérifier l'image générée. La valeur par défaut est true.
    • IMAGE_COUNT : nombre d'images à générer. La plage de valeurs acceptée est 1-4.
    • PROMPT_SETTING : Facultatif : valeur booléenne. Lorsque cette valeur est définie sur true, le modèle utilise des prmopts améliorés. La valeur par défaut est true.

    Méthode HTTP et URL :

    POST https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/publishers/google/models/imagen-product-recontext-preview-06-30:predict

    Corps JSON de la requête :

    {
      "instances": [
        {
          "prompt": "TEXT_PROMPT",
          "productImages": [
            {
              "image": {
                "bytesBase64Encoded": "BASE64_SUBJECT_IMAGE"
              },
            }
          ]
        }
      ],
      "parameters": {
        "personGeneration": PERSON_SETTING,
        "safetySetting": SAFETY_SETTING,
        "addWatermark": WATERMARK_SETTING,
        "sampleCount": IMAGE_COUNT,
        "enhancePrompt": PROMPT_SETTING
      }
    }
    

    Pour envoyer votre requête, choisissez l'une des options suivantes :

    curl

    Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" \
    -d @request.json \
    "https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/publishers/google/models/imagen-product-recontext-preview-06-30:predict"

    PowerShell

    Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :

    $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://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/publishers/google/models/imagen-product-recontext-preview-06-30:predict" | Select-Object -Expand Content
    La requête renvoie des objets image. Dans cet exemple, deux objets image sont renvoyés, avec deux objets de prédiction sous forme d'images encodées en base64.
    {
      "predictions": [
        {
          "mimeType": "image/png",
          "bytesBase64Encoded": "BASE64_IMG_BYTES"
        },
        {
          "bytesBase64Encoded": "BASE64_IMG_BYTES",
          "mimeType": "image/png"
        }
      ]
    }