API de Imagen Upscale

Versiones de modelos compatibles

La mejora de resolución de Imagen admite los siguientes modelos:

  • imagen-4.0-upscale-preview

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://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/publishers/google/models/MODEL_ID:predict \

-d '{
  "instances": [
    {
      "prompt": string,
      "image": {
        // Union field can be only one of the following:
        "bytesBase64Encoded": string,
        "gcsUri": string,
        // End of list of possible types for union field.
      },
    }
  ],
  "parameters": {
    "mode": "upscale",
    "storageUri": string,
    "outputOptions": {
      "mimeType": string,
      "compressionQuality": integer
    },
    "upscaleConfig": {
      "upscaleFactor": string
    }
  }
}'

Instancias

Instancias

Campo de unión image.

Es la imagen a la que le mejorarás la resolución. Puedes proporcionar una cadena bytesBase64Encoded que codifica una imagen o un URI de cadena gcsUri a una ubicación del bucket de Cloud Storage.

bytesBase64Encoded

string

Es una cadena codificada en base64 de bytes de un archivo de imagen o video.

gcsUri

string

Es un URI de cadena a la ubicación de un bucket de Cloud Storage.

Parámetros

Parámetros
mode

string

Obligatorio. Para las solicitudes de mejora de resolución, pasa la cadena "upscale".

storageUri

string

Es opcional. Es un URI de cadena a la ubicación de un bucket de Cloud Storage que se usa para almacenar las imágenes generadas. Si no se proporciona un bucket de Cloud Storage, se devuelven los bytes de imagen codificados en base64 en la respuesta.

outputOptions

outputOptions

Es opcional. Describe el formato de imagen de salida en un objeto outputOptions.

upscaleConfig.upscaleFactor

string

Es el factor de escala de la imagen mejorada. Se aceptan los siguientes valores:

  • "x2"
  • "x3"
  • "x4"

Objeto de opciones de salida

El objeto outputOptions describe el resultado de la imagen.

Parámetros
outputOptions.mimeType

Opcional: string

Es el formato de salida de la imagen. Se admiten los siguientes valores:

  • "image/png": Guardar como imagen PNG
  • "image/jpeg": Guarda como imagen JPEG.

El valor predeterminado es "image/png".

outputOptions.compressionQuality

Opcional: int

El nivel de compresión si el tipo de salida es "image/jpeg". Los valores aceptados son 0 a 100. El valor predeterminado es 75.

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 IA generativa en ubicaciones de Vertex AI.
  • PROJECT_ID: Es el ID de tu proyecto de Google Cloud .
  • BASE64_SUBJECT_IMAGE: Es una imagen del sujeto codificada en Base64.
  • ADD_WATERMARK: Es un valor booleano opcional. Establece el valor en true para habilitar las imágenes con marcas de agua o en false para inhabilitarlas. El valor predeterminado es true.
  • GCS_IMAGE_PATH: Es la ruta de acceso de Cloud Storage a un archivo de imagen.
  • GCS_OUTPUT_PATH: Es la ruta de acceso de Cloud Storage en la que se almacenará el resultado generado.
  • OUTPUT_MIMETYPE: Es una cadena opcional que define el tipo de archivo de salida de la imagen. Se aceptan los siguientes valores: "image/png" o "image/jpeg". El valor predeterminado es "image/png".
  • COMPRESSION_QUALITY: Es un valor entero opcional que especifica el nivel de detalle que conserva el modelo para las imágenes JPEG. Se acepta el siguiente rango de valores: 0 a 100. El valor más alto especifica un nivel de compresión más alto. El valor predeterminado es 75.
  • UPSCALE_FACTOR: Es el factor de escala de la imagen mejorada. La resolución de salida final de la imagen después de aplicar el factor de aumento no debe superar los 17 megapíxeles. Se aceptan los siguientes valores:
    • "x2"
    • "x3"
    • "x4"

Método HTTP y URL:

POST https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/publishers/google/models/imagen-4.0-upscale-preview:predict

Cuerpo JSON de la solicitud:

{
  "instances": [
    {
      "prompt": "Upscale the image",
      "image": {
        // use one of the following to specify the image to upscale
        "bytesBase64Encoded": "BASE64_SUBJECT_IMAGE"
        "gcsUri": "GCS_IMAGE_PATH"
        // end of base image input options
      },
    }
  ],
  "parameters": {
    "mode": "upscale",
    "storageUri": "GCS_OUTPUT_PATH",
    "outputOptions": {
      "mimeType": "OUTPUT_MIMETYPE",
      "compressionQuality": COMPRESSION_QUALITY
    },
    "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 \
"https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/publishers/google/models/imagen-4.0-upscale-preview: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/imagen-4.0-upscale-preview:predict" | Select-Object -Expand Content
La solicitud devuelve un objeto de imagen. En este ejemplo, se devuelve un objeto de imagen como un objeto de predicción con una imagen codificada en base64.
{
  "predictions": [
    {
      "mimeType": "image/png",
      "bytesBase64Encoded": "BASE64_IMG_BYTES"
    }
  ]
}