Skip to main content

Referencia de la API de borrado y completado de imágenes

Este documento detalla los parámetros para el modelo de borrado y completado de imágenes. Este modelo elimina uno o más elementos de una imagen, como personas, mascotas, objetos, texto o marcas de agua, mientras conserva el fondo. Puede especificar las áreas a eliminar utilizando una imagen de máscara.

Guía relacionada: Borrado y completado de imágenes
  • Este documento se aplica únicamente a la región China (Pekín). Para utilizar el modelo, debe usar una clave de API de la región China (Pekín).
  • El modelo image-erase-completion actualmente solo está disponible como prueba gratuita. Una vez que agote su cuota gratuita, ya no podrá invocar el modelo, ya que no se admiten opciones de pago. Como alternativas, recomendamos utilizar Edición de imágenes - Qwen o Edición de imágenes - Wan2.1.

Requisitos previos

Obtener una clave de API y exportar la clave de API como una variable de entorno.

Llamada HTTP

Para reducir los tiempos de espera y evitar tiempos de espera agotados en las solicitudes, el servicio procesa las solicitudes de forma asíncrona. Necesita realizar dos solicitudes:
  • Crear una tarea: Envíe una solicitud para crear una tarea de generación de imágenes. Esta solicitud devuelve un ID de tarea.
  • Consultar el resultado por ID de tarea: Utilice el ID de tarea devuelto para consultar el resultado.

Paso 1: Crear una tarea

POST https://dashscope.aliyuncs.com/api/v1/services/aigc/image2image/image-synthesis

Encabezados de solicitud

Content-TypestringRequeridoEl tipo de contenido de la solicitud. El valor debe ser application/json.AuthorizationstringRequiredRecomendamos utilizar su clave de API de Model Studio. También puede utilizar su clave de API de DashScope. Ejemplo: Bearer d1xxx2a.X-DashScope-AsyncstringRequeridoEspecifica si se habilita el procesamiento asíncrono. Debe establecer este parámetro en enable.

Cuerpo de la solicitud

modelstringRequeridoEl modelo a invocar.inputobjectRequeridoDetalles de la imagen de entrada, como la URL de la imagen.

Propiedades

image_urlstringRequeridoLa URL o los datos codificados en Base64 de la imagen de entrada.La URL debe ser de acceso público y utilizar HTTP o HTTPS.Requisitos de imagen:
  • Formatos: JPEG, PNG, JPG, BMP, WEBP.
  • Resolución: Debe ser de al menos 512×512 píxeles y no más de 4096×4096 píxeles.
  • Rango de longitud lateral: [512, 4096] píxeles.
  • Tamaño del archivo: No debe exceder 10 MB.
  • La URL no debe contener caracteres chinos.
mask_urlstringRequeridoLa URL o los datos codificados en Base64 de la imagen de máscara que especifica el área a borrar.La URL debe ser de acceso público y utilizar HTTP o HTTPS.Requisitos de imagen:
  • Formatos: JPG, JPEG, PNG, HEIF, WEBP.
  • Resolución: Debe ser de al menos 512×512 píxeles y no más de 4096×4096 píxeles.
  • Rango de longitud lateral: [512, 4096] píxeles.
  • Tamaño del archivo: No debe exceder 10 MB.
Para crear una máscara, pinte sobre un lienzo en blanco del mismo tamaño que la imagen de entrada. Las áreas con valores de píxel distintos de cero sirven como máscara de borrado. Alternativamente, utilice segmentación de instancias humanas para generar directamente un resultado de segmentación como máscara de borrado.foreground_urlstring OpcionalLa URL o los datos codificados en Base64 de la imagen de máscara que especifica el área a conservar.La URL debe ser de acceso público y utilizar HTTP o HTTPS.Requisitos de imagen:
  • Formatos: JPG, JPEG, PNG, HEIF, WEBP.
  • Resolución: Debe ser de al menos 512×512 píxeles y no más de 4096×4096 píxeles.
  • Rango de longitud lateral: [512, 4096] píxeles.
  • Tamaño del archivo: No debe exceder 10 MB.
Para crear una máscara de conservación, pinte sobre un lienzo en blanco del mismo tamaño que la imagen de entrada. Las áreas con valores de píxel distintos de cero sirven como máscara de conservación. Alternativamente, utilice segmentación de instancias humanas para especificar un ID de persona, lo que aísla el área de máscara de esa persona para evitar que sea borrada.
parametersobject OpcionalParámetros para el procesamiento de imágenes.

Propiedades

fast_modeboolOpcionalEspecifica si se habilita el modo rápido. El valor predeterminado es false. En el modo rápido, la inferencia toma aproximadamente una cuarta parte del tiempo del modo estándar. Este modo es adecuado para escenarios que no requieren alto nivel de detalle.dilate_flagboolOpcionalEl valor predeterminado es true. Recomendamos establecer esto en true si un algoritmo genera la máscara de borrado, y en false si usted pinta manualmente la máscara de borrado.add_watermark booleanOpcionalAñade una marca de agua Generated by AI. El valor predeterminado es true, lo que añade la marca de agua en la esquina inferior izquierda de la imagen de salida.
  • Borrado y completado de imágenes
curl --location --request POST 'https://dashscope.aliyuncs.com/api/v1/services/aigc/image2image/image-synthesis' \
--header 'X-DashScope-Async: enable' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data-raw '{
    "model": "image-erase-completion",
    "input": {
            "image_url": "http://xxx/input.png",
            "mask_url": "http://xxx/mask.png",
            "foreground_url": "http://xxx/foreground.png"
        },
    "parameters":{
        "dilate_flag":true
    }
}'

Respuesta

outputobjectDetalles de salida de la tarea.

Propiedades

task_idstringEl identificador único de la tarea.task_statusstringEl estado de la tarea.
  • PENDING: La tarea está en la cola.
  • RUNNING: La tarea está en progreso.
  • SUSPENDED: La tarea está suspendida.
  • SUCCEEDED: La tarea se completó correctamente.
  • FAILED: La tarea falló.
codestringEl código de error. Este parámetro no se devuelve si la solicitud es exitosa.messagestringEl mensaje de error. Este parámetro no se devuelve si la solicitud es exitosa.request_idstringEl ID único de la solicitud. Utilice este ID para rastrear y solucionar problemas.
{
    "output": {
        "task_status": "PENDING",
        "task_id": "53950fb7-281a-4e60-b543-xxxxxxxxxxxx"
    },
    "request_id": "1027557e-8c3f-9db5-8cd2-xxxxxxxxxxxx"
}

Paso 2: Consultar el resultado

GET https://dashscope.aliyuncs.com/api/v1/tasks/{task_id}

Encabezados de solicitud

AuthorizationstringRequiredSu clave de API. Ejemplo: Bearer d1**2a.

Parámetros de ruta

task_idstringRequeridoEl ID de la tarea.
  • Resultado de la tarea
curl -X GET \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
https://dashscope.aliyuncs.com/api/v1/tasks/53950fb7-281a-4e60-b543-xxxxxxxxxxxx

Respuesta

outputobjectDetalles de salida de la tarea.

Propiedades

task_id stringEl ID de la tarea.task_status stringEl estado de la tarea.
  • PENDING: La tarea está en la cola.
  • RUNNING: La tarea está en progreso.
  • SUSPENDED: La tarea está suspendida.
  • SUCCEEDED: La tarea se completó correctamente.
  • FAILED: La tarea falló.
task_metrics objectEstadísticas de la tarea.

Propiedades

TOTAL integerEl número total de tareas.SUCCEEDED integerEl número de tareas exitosas.FAILED integerEl número de tareas fallidas.
submit_time stringLa hora en que se envió la tarea.scheduled_time stringLa hora en que la tarea comenzó a ejecutarse.end_time stringLa hora en que se completó la tarea.output_image_url stringLa URL de la imagen de salida.codestringEl código de error. Este parámetro no se devuelve si la solicitud es exitosa.messagestringEl mensaje de error. Este parámetro no se devuelve si la solicitud es exitosa.
usageobjectEstadísticas de uso.

Propiedades

image_countintegerEl número de imágenes generadas.
request_idstringEl ID único de la solicitud. Utilice este ID para rastrear y solucionar problemas.
  • Tarea completada
  • Tarea en progreso
  • Tarea fallida
Los resultados de las tareas completadas están disponibles durante 24 horas. Después de este período, el sistema elimina la tarea y sus resultados. La URL de la imagen generada también caduca después de 24 horas, por lo que debe guardar la imagen después de recuperar el resultado de la tarea.
{
    "request_id": "b67df059-ca6a-9d51-afcd-9b3c4456b1e2",
    "output": {
        "task_id": "53950fb7-281a-4e60-b543-xxxxxxxxxxxx",
        "task_status": "SUCCEEDED",
        "submit_time": "2024-05-16 13:50:01.247",
        "scheduled_time": "2024-05-16 13:50:01.354",
        "end_time": "2024-05-16 13:50:27.795",
        "output_image_url": "http://xxx/result.png"
    },
    "usage": {
        "image_count": 1
    }
}

Códigos de estado

Para los códigos de estado comunes de los servicios de Model Studio, consulte Mensajes de error. Esta API también devuelve los siguientes códigos de estado específicos:

Código de estado HTTP

Código de error

Mensaje de error

Descripción

400

InvalidParameter.JsonPhrase

error de json de entrada

JSON no válido en la solicitud.

400

InvalidParameter.FileDownload

error de descarga de oss

Error al descargar la imagen de entrada.

400

InvalidParameter.ImageFormat

error de lectura de imagen

Error al leer la imagen.

400

InvalidParameter.ImageContent

El contenido de la imagen no cumple con las normativas.

El contenido de la imagen no cumple con las normativas.

400

InvalidParameter

Un valor de parámetro de entrada está fuera de rango: xxx

Un valor de parámetro de entrada está fuera de rango.

400

InvalidParameter.ImageResolution

El tamaño de la imagen de entrada es demasiado pequeño o demasiado grande.

El tamaño de la imagen de entrada es demasiado pequeño o demasiado grande.

500

InternalError.Algo

error de procesamiento del algoritmo

Error de algoritmo.

500

InternalError.FileUpload

error de carga oss

Error al subir el archivo.