La Prueba virtual te permite generar imágenes de personas modelando productos de indumentaria. Proporcionas una imagen de una persona y una muestra de un producto de indumentaria, y luego usas la función de Prueba virtual para generar imágenes de la persona usando el producto.
Versiones de modelos compatibles
La función de Prueba virtual admite los siguientes modelos:
virtual-try-on-preview-08-04
Para obtener más información sobre las funciones que admite el modelo, consulta Modelos de Imagen.
Solicitud HTTP
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/MODEL_ID:predict \
-d '{
"instances": [
{
"personImage": {
"image": {
// Union field can be only one of the following:
"bytesBase64Encoded": string,
"gcsUri": string,
}
},
"productImages": [
{
"image": {
// Union field can be only one of the following:
"bytesBase64Encoded": string,
"gcsUri": string,
}
}
]
}
],
"parameters": {
"addWatermark": boolean,
"baseSteps": integer,
"personGeneration": string,
"safetySetting": string,
"sampleCount": integer,
"seed": integer,
"storageUri": string,
"outputOptions": {
"mimeType": string,
"compressionQuality": integer
}
}
}'
| Instancias | |
|---|---|
|
|
Obligatorio. Imagen de una persona para probarse el producto de indumentaria, que puede ser cualquiera de las siguientes opciones:
|
|
|
Obligatorio. Imagen de un producto para probar en una persona, que puede ser una de las siguientes opciones:
|
| Parámetros | |
|---|---|
addWatermark |
Es opcional. Agrega una marca de agua invisible a las imágenes generadas.
El valor predeterminado es |
|
|
Obligatorio. Es un número entero que controla la generación de imágenes. Cuantos más pasos se realicen, mayor será la calidad, pero también la latencia.
Valores de números enteros mayores que |
personGeneration |
Es opcional. Permite que el modelo genere personas. Se admiten los siguientes valores:
El valor predeterminado es |
safetySetting |
Es opcional. Agrega un nivel de filtro al filtrado de seguridad. Se admiten los siguientes valores:
El valor predeterminado es |
|
|
Obligatorio. Es la cantidad de imágenes que se generarán.
Es un valor entero entre |
seed |
Es opcional. La semilla aleatoria para la generación de imágenes. No está disponible
cuando |
storageUri |
Es opcional. Es un URI de cadena a la ubicación de un bucket de Cloud Storage para almacenar las imágenes generadas. |
outputOptions |
Es opcional. Describe el formato de imagen de salida en un objeto |
Objeto de opciones de salida
El objeto outputOptions describe el resultado de la imagen.
| Parámetros | |
|---|---|
outputOptions.mimeType |
Opcional: Es el formato de salida de la imagen. Se admiten los siguientes valores:
El valor predeterminado es |
outputOptions.compressionQuality |
Opcional:
El nivel de compresión si el tipo de salida es |
Solicitud de muestra
REST
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- REGION: Es la región en la que se encuentra tu proyecto. Para obtener más información sobre las regiones admitidas, consulta Ubicaciones de la IA generativa en Vertex AI.
- PROJECT_ID: Tu Google Cloud ID del proyecto.
- BASE64_PERSON_IMAGE: Es la imagen de la persona codificada en Base64.
- BASE64_PRODUCT_IMAGE: Es la imagen del producto codificada en Base64.
-
IMAGE_COUNT: Es la cantidad de imágenes que se generarán. El rango de valores aceptado es de
1a4. - GCS_OUTPUT_PATH: Es la ruta de acceso de Cloud Storage en la que se almacenará el resultado de la prueba virtual.
Método HTTP y URL:
POST https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/publishers/google/models/virtual-try-on-preview-08-04:predict
Cuerpo JSON de la solicitud:
{
"instances": [
{
"personImage": {
"image": {
"bytesBase64Encoded": "BASE64_PERSON_IMAGE"
}
},
"productImages": [
{
"image": {
"bytesBase64Encoded": "BASE64_PRODUCT_IMAGE"
}
}
]
}
],
"parameters": {
"sampleCount": IMAGE_COUNT,
"storageUri": "GCS_OUTPUT_PATH"
}
}
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente comando:
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/virtual-try-on-preview-08-04:predict"
PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
$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/virtual-try-on-preview-08-04:predict" | Select-Object -Expand Content
{
"predictions": [
{
"mimeType": "image/png",
"bytesBase64Encoded": "BASE64_IMG_BYTES"
},
{
"bytesBase64Encoded": "BASE64_IMG_BYTES",
"mimeType": "image/png"
}
]
}