Cette page explique comment remplacer l'arrière-plan d'une image. Imagen sur Vertex AI vous permet d'utiliser la segmentation automatique d'objets pour conserver ce contenu tout en modifiant le reste de l'image. Avec Imagen 3, vous pouvez également fournir votre propre zone de masque pour un meilleur contrôle lors de la modification.
Afficher la fiche de modèle Imagen pour la modification et la personnalisation
Exemple de modification d'image de produit
Le cas d'utilisation suivant met en évidence l'amélioration d'une image de produit en modifiant l'arrière-plan d'une image, tout en conservant l'apparence du produit dans l'image.
Avant de commencer
- 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.
-
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 role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
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 theserviceusage.services.enablepermission. Learn how to grant roles. -
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 role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
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 theserviceusage.services.enablepermission. Learn how to grant roles. -
Configurez l'authentification pour votre environnement.
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
Pour utiliser les exemples Python de cette page dans un environnement de développement local, installez et initialisez la gcloud CLI, puis configurez le service Identifiants par défaut de l'application avec vos identifiants utilisateur.
Installez la Google Cloud CLI.
Si vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.
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.
Pour en savoir plus, consultez la section Configurer les ADC pour un environnement de développement local dans la documentation sur l'authentification Google Cloud .
REST
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.
Installez la Google Cloud CLI.
Si vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.
Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Google Cloud .
Modifier avec un masque d'arrière-plan détecté automatiquement
Suivez les instructions ci-dessous pour activer et utiliser la modification d'images de produits avec détection automatique de l'arrière-plan.
Console
Dans la console Google Cloud , accédez à la page Vertex AI>Vertex AI Studio .
Cliquez sur Générer un contenu multimédia.
Cliquez sur Image.
Dans la liste Tâche, sélectionnez Product-background-editing.
Dans la liste Modèle, sélectionnez le modèle Imagen à utiliser.
Dans Image d'entrée, cliquez sur Ajouter, puis sélectionnez l'image que vous modifiez pour l'importer.
Dans la zone Requête, saisissez une requête décrivant comment modifier l'image.
Sélectionnez l'une des options d'extraction de masque suivantes :
- Éléments d'arrière-plan : détecte les éléments d'arrière-plan et crée un masque autour de ces éléments.
- Éléments de premier plan : détecte les objets au premier plan et crée un masque autour d'eux.
- background_replace Personnes : détecte les personnes et crée un masque autour d'elles.
Cliquez sur Exécuter.
Python
Installer
pip install --upgrade google-genai
Pour en savoir plus, consultez la documentation de référence du SDK.
Définissez des variables d'environnement pour utiliser le SDK Gen AI avec Vertex AI :
# 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
REST
Pour en savoir plus, consultez la documentation de référence de l'API Modifier des images.
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet Google Cloud .
- LOCATION : région de votre projet (
us-central1,europe-west2ouasia-northeast3, par exemple). Pour obtenir la liste des régions disponibles, consultez IA générative sur les emplacements Vertex AI. - TEXT_PROMPT : prompt textuel qui guide le modèle pour la génération d'images. Ce champ est obligatoire pour la génération et la modification.
referenceType:ReferenceImagecorrespond à une image qui fournit un contexte supplémentaire pour la modification d'images. Une image de référence brute RVB normale (REFERENCE_TYPE_RAW) est requise pour les cas d'utilisation de modification. Une seule image de référence brute peut exister dans une requête. L'image de sortie a la même hauteur et la même largeur que l'image de référence brute. Une image de référence de masque (REFERENCE_TYPE_MASK) est requise pour les cas d'utilisation de modification de masque.referenceId: entier représentant l'ID de l'image de référence. Dans cet exemple, les deux objets d'image de référence sont de types différents. Ils ont donc des valeursreferenceIddistinctes (1et2).- B64_BASE_IMAGE : image de base à modifier ou à améliorer. L'image doit être spécifiée en tant que chaîne d'octets encodés en base64. Limite de taille : 10 Mo.
maskImageConfig.maskMode: mode de masque pour la modification du masque.MASK_MODE_BACKGROUNDpermet de masquer automatiquement l'arrière-plan sans que l'utilisateur fournisse de masque.- MASK_DILATION : float. Pourcentage de la largeur de l'image à utiliser pour dilater ce masque. Nous vous recommandons de définir
0.00comme valeur pour éviter d'étendre le produit au premier plan. Minimum : 0, maximum : 1. Par défaut : 0.03. - EDIT_STEPS : entier. Nombre d'étapes d'échantillonnage pour le modèle de base. Pour modifier l'image d'un produit, commencez avec
75étapes. - EDIT_IMAGE_COUNT : nombre d'images modifiées. Valeurs entières acceptées : 1 à 4. Valeur par défaut : 4.
Méthode HTTP et URL :
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagen-3.0-capability-001:predict
Corps JSON de la requête :
{ "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 } }Pour envoyer votre requête, choisissez l'une des options suivantes :
L'exemple suivant représente une réponse à une requête de modification d'arrière-plan de produit. La réponse renvoie quatre objets de prédiction, avec les octets de l'image générée encodés en base64.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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagen-3.0-capability-001: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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagen-3.0-capability-001:predict" | Select-Object -Expand Content{ "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" } ] }Modifier avec une zone de masque définie
Vous pouvez choisir de masquer la zone à remplacer au lieu de laisser Imagen détecter le masque automatiquement.
Console
Dans la console Google Cloud , accédez à la page Vertex AI>Vertex AI Studio .
Cliquez sur Générer un contenu multimédia.
Cliquez sur Image.
Dans la liste Tâche, sélectionnez Product-background-editing.
Dans la liste Modèle, sélectionnez le modèle Imagen à utiliser.
Dans Image d'entrée, cliquez sur Ajouter, puis sélectionnez l'image que vous modifiez pour l'importer.
Dans la zone Requête, saisissez une requête décrivant comment modifier l'image.
Pour spécifier un masque, procédez de l'une des manières suivantes :
- Importez votre propre masque :
- Créez un masque sur votre ordinateur.
- Cliquez sur Importer Importer un masque, puis sélectionnez un masque à importer.
- Définissez votre masque : dans la barre d'outils de modification, utilisez les outils de masque (zone, pinceau ou outil d'inversion masked_transitions) pour spécifier la ou les zones dans lesquelles vous souhaitez ajouter du contenu.
- Importez votre propre masque :
Cliquez sur Exécuter.
Python
Installer
pip install --upgrade google-genai
Pour en savoir plus, consultez la documentation de référence du SDK.
Définissez des variables d'environnement pour utiliser le SDK Gen AI avec Vertex AI :
# 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
REST
Pour en savoir plus, consultez la documentation de référence de l'API Modifier des images.
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet Google Cloud .
- LOCATION : région de votre projet (
us-central1,europe-west2ouasia-northeast3, par exemple). Pour obtenir la liste des régions disponibles, consultez IA générative sur les emplacements Vertex AI. - TEXT_PROMPT : prompt textuel qui guide le modèle pour la génération d'images. Ce champ est obligatoire pour la génération et la modification.
referenceId: entier représentant l'ID de l'image de référence. Dans cet exemple, les deux objets d'image de référence sont de types différents. Ils ont donc des valeursreferenceIddistinctes (1et2).- B64_BASE_IMAGE : image de base à modifier ou à améliorer. L'image doit être spécifiée en tant que chaîne d'octets encodés en base64. Limite de taille : 10 Mo.
- B64_MASK_IMAGE : image en noir et blanc que vous souhaitez utiliser comme calque de masque pour modifier l'image d'origine. L'image doit être spécifiée en tant que chaîne d'octets encodés en base64. Limite de taille : 10 Mo.
- MASK_DILATION : float. Pourcentage de la largeur de l'image à utiliser pour dilater ce masque. Nous vous recommandons de définir
0.00comme valeur pour éviter d'étendre le produit au premier plan. Minimum : 0, maximum : 1. Par défaut : 0.03. - EDIT_STEPS : entier. Nombre d'étapes d'échantillonnage pour le modèle de base. Pour modifier l'image d'un produit, commencez avec
75étapes. - EDIT_IMAGE_COUNT : nombre d'images modifiées. Valeurs entières acceptées : 1 à 4. Valeur par défaut : 4.
Méthode HTTP et URL :
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagen-3.0-capability-001:predict
Corps JSON de la requête :
{ "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 } }Pour envoyer votre requête, choisissez l'une des options suivantes :
L'exemple suivant représente une réponse à une requête de modification d'arrière-plan de produit.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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagen-3.0-capability-001: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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagen-3.0-capability-001:predict" | Select-Object -Expand Content{ "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" } ] }Limites
Étant donné que les masques sont parfois incomplets, le modèle peut essayer de compléter l'objet au premier plan lorsque de très petits éléments manquent à la limite. Dans de rares cas, lorsque l'objet au premier plan est déjà complet, le modèle peut créer de légères extensions.
Pour contourner ce problème, segmentez la sortie du modèle, puis effectuez un blending. Voici un exemple d'extrait de code Python illustrant une solution de contournement :
blended = Image.composite(out_images[0].resize(image_expanded.size), image_expanded, mask_expanded)Étapes suivantes
Consultez des articles concernant Imagen et d'autres produits d'IA générative sur Vertex AI :
- Guide du développeur pour bien démarrer avec Imagen 3 sur Vertex AI
- Nouveaux outils et modèles multimédias génératifs, conçus avec et pour les créateurs
- Nouveautés dans Gemini : Gems personnalisés et génération d'images améliorée avec Imagen 3
- Google DeepMind : Imagen 3 – Notre modèle texte-vers-image le plus puissant
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2026/01/06 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2026/01/06 (UTC)."],[],[]]