Introducción
En el artículo anterior, aprendimos que el enmascaramiento automático es una técnica fundamental en los flujos de trabajo de edición de imágenes, especialmente al aislar sujetos en primer plano de los fondos para tareas como el inpainting o la composición. En este artículo exploraremos cómo usar el modelo Segment Anything (SAM 2) con ComfyUI para automatizar el proceso de enmascaramiento. Al aprovechar nodos y flujos de trabajo personalizados, puedes definir máscaras de forma eficiente, suavizar bordes y reemplazar fondos.
Índice
Componentes clave para el enmascaramiento automático
1. Instalar los paquetes de nodos y modelos necesarios
Para empezar con el enmascaramiento automático, tienes que instalar lo siguiente:
- Paquetes de nodos:
Usa el Administrador de ComfyUI para buscar e instalar estos paquetes de nodos. Una vez instalados, reinicia ComfyUI. - Modelo SAM 2:
- Descarga el sam2.1_hiera_base_plus-fp16 modelo desde Hugging Face.
- Coloca el modelo en el
ComfyUI/models/Sam2directorio. Si el modelo no se instala automáticamente, sigue los pasos de instalación manual indicados en la página de Hugging Face.
2. Configurar el flujo de trabajo
Una vez instaladas las herramientas necesarias, puedes crear un flujo de trabajo para el enmascaramiento automático. Aquí tienes una guía paso a paso:

Cargar imágenes
Empieza cargando las imágenes de primer plano y de fondo en ComfyUI con los Load Image nodos en ComfyUI. Asegúrate de conocer la resolución de la imagen, ya que es necesaria para la segmentación.
Obtener la resolución de la imagen
Usa el Get Image Size nodo del paquete Essentials para extraer el ancho y el alto de las imágenes cargadas. Conecta la salida del Load Image nodo al Get Image Size nodo.
Definir las coordenadas de segmentación
Para especificar los puntos de segmentación:
- Añade el
Points Editornodo del paquete KJNodes. - Conecta las salidas de imagen, ancho y alto del
Get Image Sizenodo alPoints Editor. - Haz clic con el botón derecho en el
Points Editornodo y elige:- Convertir widget en entrada para el ancho y el alto.
- Lienzo nuevo para crear un lienzo en blanco.
Cargar el modelo SAM 2
- Añade el
Download SAM 2 Modelnodo y asegúrate de que los parámetros del modelo estén configurados así:- Modelo:
sam2_hiera_base_plus - Dispositivo:
cuda - Precisión:
floating.16
- Modelo:
- Conecta la salida del nodo cargador al
SAM 2 Segmentationnodo.
Crear la máscara de segmentación
- Añade el
SAM 2 Segmentationnodo. - Conecta la imagen y las coordenadas (puntos positivos y negativos) del
Points Editornodo al nodo de segmentación. - Obtén una vista previa de la salida de la máscara con el
Mask Previewnodo del paquete Essentials.

3. Mejorar la calidad de la máscara
Suavizar los bordes con desenfoque
Para refinar la máscara, usa el Grow Mask with Blur nodo del paquete KJNodes:
- Coloca el
Grow Mask with Blurnodo entre elSAM 2 Segmentationnodo y elImage Composite Masknodo. - Ajusta los siguientes parámetros:
- Radio de desenfoque: ajústalo a
2para bordes más suaves. - Valor de expansión: ajústalo a
2 pixelspara agrandar ligeramente la máscara.
- Radio de desenfoque: ajústalo a
- Usa el
Mask Previewnodo para visualizar los cambios en tiempo real.
Componer la máscara
Conecta la salida del Grow Mask with Blur nodo al Image Composite Mask nodo. Esto te permite reemplazar el fondo manteniendo la integridad del sujeto en primer plano.

4. Guardar la imagen final
Cuando estés satisfecho con la máscara y el reemplazo del fondo:
- Añade un
Save Image Extendednodo para guardar la salida en el disco. - Asegúrate de que el
Queue Modeesté establecido enQueue. - Desactiva la omisión del nodo de guardado con
Ctrl + By pon en cola el flujo de trabajo para guardar la imagen.

Flujo de trabajo de ejemplo
A continuación, un ejemplo de la configuración del flujo de trabajo:
1. Load Image Node → Get Image Size Node → Points Editor Node
2. Download SAM 2 Model Node → SAM 2 Segmentation Node → Mask Preview Node
3. Grow Mask with Blur Node → Image Composite Mask Node → Save Image Extended Node
Mejorar la precisión de la máscara
Para garantizar una precisión óptima de la máscara:
- Usa el
Points Editornodo para definir con precisión los puntos de primer plano y de fondo. - Experimenta con los valores de desenfoque y expansión en el
Grow Mask with Blurnodo para equilibrar la suavidad de los bordes y la cobertura de la máscara.