Generación y edición de imágenes
Amazon Nova Canvas está disponible a través de la API de InvokeModel de Bedrock y admite los siguientes parámetros de inferencia y respuestas del modelo al realizar la inferencia del modelo.
Temas
Formatos de solicitud y respuesta de generación de imágenes
Cuando realice una llamada a InvokeModel con el modelo de Amazon Nova Canvas, sustituya el campo body
de la solicitud por el formato que se corresponda con su caso de uso. Todas las tareas comparten un objeto imageGenerationConfig
, pero cada tarea tiene un objeto de parámetros específico para esa tarea. Se admiten los siguientes casos de uso:
Valor del tipo de tarea | Campo de parámetros de la tarea | Categoría de la tarea | Descripción |
---|---|---|---|
TEXT_IMAGE solo con texto |
textToImageParams |
Generación | Genere una imagen mediante un petición de texto. |
TEXT_IMAGE con condicionamiento de imagen |
textToImageParams |
Generación | Proporcione una imagen de acondicionamiento de entrada junto con una petición de texto para generar una imagen que siga el diseño y la composición de la imagen de acondicionamiento. |
COLOR_GUIDED_GENERATION |
colorGuidedGenerationParams |
Generación | Proporcione una lista de valores de color en formato hexadecimal (por ejemplo, #FF9800) junto con una petición de texto y una imagen de referencia opcional para generar una imagen que siga la paleta de colores especificada. |
IMAGE_VARIATION |
imageVariationParams |
Generación | Proporcione una o más imágenes de entrada, con o sin una petición de texto, para influir en la imagen generada. Se puede usar para influir en el estilo visual de la imagen generada (cuando se usa con una petición de texto), para generar variaciones de una sola imagen (cuando se usa sin una petición de texto) y para otros efectos creativos y de control. |
INPAINTING |
inPaintingParams |
Edición | Modifique una imagen cambiando el área dentro de una región enmascarada. Se puede utilizar para añadir, eliminar o reemplazar elementos de una imagen. |
OUTPAINTING |
outPaintingParams |
Edición | Modifique una imagen cambiando el área fuera de una región enmascarada. Se puede utilizar para reemplazar el fondo detrás de un sujeto. |
BACKGROUND_REMOVAL |
backgroundRemovalParams |
Edición | Elimina automáticamente el fondo de cualquier imagen, sustituyendo el fondo por píxeles transparentes. Puede resultar útil cuando desea componer la imagen más adelante con otros elementos en una aplicación de edición de imágenes, una presentación o un sitio web. El fondo también se puede cambiar fácilmente a un color sólido mediante un código personalizado. |
VIRTUAL_TRY_ON |
virtualTryOnParams |
Edición | Proporcione una imagen de origen y una imagen de referencia, superponiendo un objeto de la imagen de referencia en la imagen de origen. Se puede usar para visualizar ropa y accesorios en diferentes modelos o en diferentes poses, alterar el estilo y la apariencia de un objeto, artículo o ropa, o transferir estilos y diseños de un objeto a otro. |
Imágenes de entrada para la generación de imágenes
Muchos tipos de tareas requieren que se incluyan una o más imágenes de entrada en la solicitud. Cualquier imagen utilizada en la solicitud debe estar codificada como una cadena Base64. Por lo general, las imágenes pueden estar en formato PNG o JPEG y deben tener 8 bits por canal de color (RGB). Las imágenes PNG pueden contener un canal alfa adicional, pero ese canal no debe contener píxeles transparentes o translúcidos. Para obtener información específica sobre las dimensiones de imagen de entrada admitidas, consulte Resoluciones de imágenes admitidas.
Una imagen de máscara es una imagen que indica el área que se va a inpaint o outpaint. Esta imagen solo puede contener píxeles blancos puros y negros puros.
Para las solicitudes de inpainting, el área que está coloreada de negro se denomina máscara y es la que se modificará. El resto de la imagen de máscara debe contener solo píxeles de color blanco puro. Los píxeles de color blanco puro indican el área fuera de la máscara.
Para las solicitudes de outpainting, el modelo modificará el área de color blanco.
Las imágenes de máscara no deben contener ningún píxel que no sea negro puro o blanco puro. Si utiliza una imagen JPEG como máscara, debe comprimirse con una calidad del 100 % para evitar que se introduzcan píxeles que no sean blancos o negros durante la compresión.
Para ver ejemplos de cómo codificar o decodificar una imagen en o desde una cadena de Base64, consulte los ejemplos de código.
Imágenes de enmascaramiento
Al editar una imagen, una máscara es una forma de definir las regiones que se deben editar. Puede definir una máscara en una de las siguientes tres maneras:
-
maskPrompt
: escriba una petición de texto en lenguaje natural para describir la parte de la imagen que se debe enmascarar. -
maskImage
: una imagen en blanco y negro en la que los píxeles negros puros indican el área dentro de la máscara y los píxeles blancos puros indican el área fuera de la máscara.Para una solicitud de inpainting, el modelo cambiará los píxeles negros. Para las solicitudes de outpainting, se modificarán los píxeles blancos.
-
garmentBasedMask
: una máscara basada en imágenes que define una región que se va a reemplazar junto con algunas opciones de estilo limitadas.
Puede utilizar una herramienta de edición de fotografías para dibujar máscaras o crearlas con su propio código personalizado. De lo contrario, utilice el campo maskPrompt para permitir que el modelo realice una inferencia de la máscara.
Resoluciones de imágenes admitidas
Puede especificar cualquier resolución de salida para una tarea de generación siempre que cumpla los siguientes requisitos:
-
Cada lado debe tener entre 320 y 4096 píxeles, inclusive.
-
Cada lado debe ser divisible por 16.
-
La relación de aspecto debe estar entre 1:4 y 4:1. Es decir, un lado no puede ser más de 4 veces más largo que el otro.
-
El número total de píxeles debe ser inferior a 4 194 304.
La mayoría de estas mismas restricciones también se aplican a las imágenes de entrada. Sin embargo, los lados de las imágenes no necesitan ser divisibles por 16.