Ampliar imágenes con Imagen

Puedes usar Imagen en Vertex AI para aumentar la resolución de las imágenes, lo que incrementa su tamaño sin perder calidad.

imagen-4.0-upscale-preview admite el aumento de resolución de imágenes en la vista previa.

Antes de empezar

  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 role (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 role (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. Configura la autenticación de tu entorno.

    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.

    REST

    Para usar las muestras de la API REST de esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la CLI de gcloud.

      Instala Google Cloud CLI. Después de la instalación, inicializa la CLI de Google Cloud ejecutando el siguiente comando:

      gcloud init

      Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.

    Para obtener más información, consulta el artículo Autenticarse para usar REST de la documentación sobre Google Cloud autenticación.

    Ampliar una imagen

    Consola

    1. En la Google Cloud consola, ve a la página Vertex AI > Vertex AI Studio > Generar contenido multimedia.

      Ir a Generar contenido multimedia

    2. Haz clic en Imagen. Se muestra la página Playground multimedia.

    3. Haz clic en Subir una imagen y, a continuación, selecciona la imagen que quieras subir.

    4. Haz clic en Exportar imagen y, a continuación, en También aumentar la resolución de la imagen.

    5. Elige un factor de escala y haz clic en Exportar.

    Se añade automáticamente una marca de agua digital a las imágenes ampliadas. No puedes inhabilitar la marca de agua digital para la mejora de la resolución de imágenes con la Google Cloud consola.

    REST

    Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

    • REGION: 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 ID de proyecto. Google Cloud
    • BASE64_SUBJECT_IMAGE: A imagen codificada en Base64 de la imagen del sujeto.
    • ADD_WATERMARK: valor booleano opcional. Seleccione true para habilitar las imágenes con marca de agua o false para inhabilitarlas. El valor predeterminado es true.
    • GCS_IMAGE_PATH: Ruta de Cloud Storage a un archivo de imagen.
    • GCS_OUTPUT_PATH: la ruta de Cloud Storage donde se almacenará el resultado generado.
    • OUTPUT_MIMETYPE: cadena opcional que define el tipo de archivo de salida de la imagen. Se aceptan los siguientes valores: "image/png" y "image/jpeg". El valor predeterminado es "image/png".
    • COMPRESSION_QUALITY: valor entero opcional que especifica el nivel de detalle que conserva el modelo en las imágenes JPEG. Se acepta el siguiente intervalo de valores: 0 - 100. Cuanto mayor sea el valor, mayor será el nivel de compresión. El valor predeterminado es 75.
    • UPSCALE_FACTOR: Factor de escala de la imagen ampliada. 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 objeto de predicción con una imagen codificada en Base64.
    {
      "predictions": [
        {
          "mimeType": "image/png",
          "bytesBase64Encoded": "BASE64_IMG_BYTES"
        }
      ]
    }
    
    
    

    Siguientes pasos

    Consulta artículos sobre Imagen y otros productos de IA generativa en Vertex AI: