Puedes usar la función de mejora de Imagen en Vertex AI para aumentar el tamaño de una imagen sin perder calidad.
Versiones del modelo
La disponibilidad de la función de mejora se basa en la versión del modelo:
Atributo | Imagen (v.002) | Imagen 2 (v.005) | Imagen 2 (v.006) |
---|---|---|---|
Mejora de la resolución | ✔ | No compatible | No compatible |
Mejora una imagen
Usa las siguientes muestras de código para mejorar una imagen existente, generada o editada.
Console
Sigue las instrucciones para generar una imagen con texto a fin de generar imágenes.
Selecciona la imagen que deseas mejorar.
Haz clic en
Mejorar/exportar.Selecciona Mejorar imágenes.
Elige un valor de Factor de escala (
2x
o4x
).Haz clic en Exportar
para guardar la imagen actualizada.
REST
Para obtener más información sobre las solicitudes del modelo imagegeneration
, consulta la referencia de la API del modelo imagegeneration
.
El modo de mejora de la resolución es un campo opcional en el objeto parameters
de un cuerpo de solicitud JSON. Cuando mejoras una imagen con la API, especifica "mode": "upscale"
y upscaleConfig
.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- LOCATION: La región del proyecto. Por ejemplo,
us-central1
,europe-west2
oasia-northeast3
. Para obtener una lista de las regiones disponibles, consulta IA generativa en ubicaciones de Vertex AI. - PROJECT_ID: El ID del proyecto de Google Cloud.
- B64_BASE_IMAGE: La imagen base que se editará o mejorará. La imagen debe especificarse como una cadena de bytes codificada en base64. Límite de tamaño: 10 MB.
- IMAGE_SOURCE: La ubicación de Cloud Storage de la imagen que deseas editar o mejorar. Por ejemplo:
gs://output-bucket/source-photos/photo.png
. - UPSCALE_FACTOR: Opcional El factor al que se ampliará la imagen. Si no se especifica, el factor de mejora se determinará a partir del lado más largo de la imagen de entrada y
sampleImageSize
. Valores disponibles:x2
ox4
.
HTTP method and URL:
POST http://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagegeneration@002:predict
Cuerpo JSON de la solicitud:
{ "instances": [ { "prompt": "", "image": { // use one of the following to specify the image to upscale "bytesBase64Encoded": "B64_BASE_IMAGE" "gcsUri": "IMAGE_SOURCE" // end of base image input options }, } ], "parameters": { "sampleCount": 1, "mode": "upscale", "upscaleConfig": { "upscaleFactor": "UPSCALE_FACTOR" } } }
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 \
"http://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagegeneration@002: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 "http://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagegeneration@002:predict" | Select-Object -Expand Content
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "predictions": [ { "mimeType": "image/png", "bytesBase64Encoded": "iVBOR..[base64-encoded-upscaled-image]...YII=" } ] }
¿Qué sigue?
- Mira videos que describen modelos de base de Vertex AI, incluido Imagen, el modelo de base de texto a imagen que te permite generar y editar imágenes:
- Lee las entradas de blog que describen imágenes en IA generativa y Vertex AI en Vertex AI: