Las imágenes de IA suelen salir con manos rotas y rostros raros, sobre todo en planos de cuerpo entero. Arreglarlas una a una no funciona cuando tienes cientos. Este flujo lo hace en lote: recorre una carpeta, encuentra las manos (y los rostros) por descripción, vuelve a renderizar solo esas zonas con Flux a mayor resolución y guarda la imagen corregida.
Necesita Flux, así que al menos 12 GB de VRAM. Si solo necesitas arreglar alguna imagen suelta a mano, mi flujo de inpainting para manos, más sencillo, también funciona en la nube.
En resumen
- Encontrar: Florence 2 enmascara «hands» o «face» a partir de una descripción de texto.
- Arreglar: el detailer SEGS del Impact Pack recorta esa zona, la renderiza a 512 px y la vuelve a pegar.
- Ajustes: 20 steps, denoise 0,65–0,7.
- Cuenta con repetir: muchos intentos no son buenos; quédate con el mejor.
- Cascada: arregla las manos y pasa esa imagen a un segundo detailer para el rostro.
Por qué fallan las manos, y cómo lo arregla esto
Las manos suelen fallar por la resolución, no porque el modelo no sepa dibujarlas. Renderiza un retrato en primer plano con una mano junto al rostro y la mano ocupa muchos píxeles y sale bien. En una imagen de figura completa, esa misma mano recibe solo unos pocos píxeles, y de ahí salen los dedos de más. En mi imagen de prueba el rostro estaba bien y las manos no.
Así que el flujo hace lo que haría un retocador: recorta la zona problemática, la amplía, la vuelve a dibujar con detalle y la pone de nuevo en su sitio.
Flujo 1: arreglar un elemento en toda una carpeta
Carga la carpeta
Load Image Batch con la ruta de la carpeta pegada y el modo en incremental image, para que cada ejecución tome la siguiente imagen. Un nodo de vista previa muestra en qué imagen va.
Encuentra las manos con Florence 2
El paquete ComfyUI-Florence2 aporta el cargador del modelo; el modelo se descarga automáticamente la primera vez que lo ejecutas. Yo usé large (fine-tuned); base es más rápido y también dio buenos resultados, así que probaría ese la próxima vez.
En el nodo de Florence 2, fija la tarea en caption to phrase grounding y escribe lo que hay que encontrar, aquí «hands». Florence 2 puede hacer mucho más (describir una imagen, leer texto), pero esta tarea es la que encuentra una zona a partir de una frase y devuelve su máscara. Lo explico con más detalle en enmascarar cualquier cosa con Florence 2.
Suaviza la máscara y conviértela en un segmento
- Gaussian Blur Mask suaviza los bordes, porque una máscara de borde duro puede dejar una costura visible.
- Mask to SEGS convierte la máscara en un segmento, el formato con el que trabaja el detailer.
Vuelve a renderizar con el detailer SEGS
El nodo Detailer (SEGS) del Impact Pack recorta cada segmento y lo escala de modo que su tamaño guía sea de 512 px, en proporción. Eso da a la mano muchos más píxeles con los que trabajar, y de ahí viene la mejora.
Recibe las mismas entradas que una generación normal:
- Modelo: Flux dev, VAE y el DualCLIPLoader con los dos codificadores de texto de Flux.
- Prompt positivo con Flux Guidance. Escribí algo como «two hands, five fingers»; funciona incluso cuando solo se ve una mano. El negativo se queda vacío.
Solo dos ajustes importan de verdad:
- Steps: 20. Funciona cualquier valor entre 20 y 30, y 20 es sinceramente suficiente.
- Denoise: 0,65–0,7. Es cuánto de la zona original se vuelve a dibujar. Por debajo de 0,5, el modelo crea algo aleatorio ahí (un vehículo en lugar de una mano, u otro rostro). Con 0,9 conserva la misma mano rota.
Compara y guarda
Un comparador de imágenes de rgthree muestra el antes y el después, y el resultado se guarda. Las manos corregidas a veces salen un poco más pequeñas, aunque no se nota mucho.
Cuenta con ejecutarlo varias veces
Esta es la parte importante: a menudo entre el 60 y el 80 % de los intentos no serán buenos. Ejecútalo repetidamente y elige lo mejor.
A veces el resultado te sorprende. En una imagen la máscara falló y cubrió toda la figura, así que el detailer volvió a dibujar todo: arregló la mano escondiéndola, mejoró el rostro y los pies, y cambió bastante el diseño del traje. Eso es lo que obtendrías con un prompt como «person». En otra imagen, las manos salieron peor que antes. Sigue ejecutando.
Flujo 2: manos y luego rostro
Para arreglar también el rostro, pon en cascada un segundo detailer:
- El primer grupo enmascara las manos y las arregla, como arriba.
- Su imagen de salida entra en una segunda extracción de máscara, que busca «face», y en un segundo detailer SEGS.
En mi prueba el rostro pasó de no ser del todo humano a ser convincente, y una mano salió estupenda (la otra necesitó un par de ejecuciones más).
No dupliques los nodos de modelo. Cada nodo que carga un modelo lo mantiene en la memoria de la GPU. Carga Florence 2, Flux, los codificadores de texto y el VAE una sola vez y conéctalos a todos los detailers. Los duplicados llenan tu VRAM muy rápido sin ningún beneficio.
Puedes seguir poniendo en cascada (botas, luego el fondo), pero se vuelve poco práctico enseguida. Las manos y los rostros son donde importa.
Opcional: varias carpetas a la vez
También construí una versión que pasa tres carpetas por la misma corrección, todas compartiendo los mismos nodos de Florence 2, Flux, codificador de texto y VAE. Sinceramente, es más una prueba que algo que necesites. Pero si tienes conjuntos distintos (medieval, fantasía, ciencia ficción) con correcciones distintas para cada uno, duplica los grupos, dale a cada uno su propio Load Image Batch y conéctalos a los modelos compartidos.
Todos los flujos están en mi Patreon, y el flujo de inpainting de una sola corrección está en RunComfy con minutos de prueba gratuitos. Si no tienes 12 GB de VRAM, una GPU alquilada también sirve; mira mi introducción a RunPod.
El enlace de RunComfy es un enlace de referido, igual que mi enlace de referido de RunPod: las cuentas nuevas de RunPod que se registran con Google reciben entre 5 y 500 $ de crédito después de su primer gasto de 10 $, y yo recibo una pequeña comisión.
Ver la versión en vídeo (10:11)
Todo lo anterior también está en el vídeo, si prefieres seguirlo en pantalla. El vídeo está en inglés.
Preguntas frecuentes
¿Por qué la IA se equivoca con las manos y los rostros en imágenes de cuerpo entero?
Por la resolución. En una imagen de figura completa, una mano o un rostro reciben pocos píxeles. El mismo modelo renderiza bien las manos en un primer plano. La solución es recortar esa zona, renderizarla a mayor resolución y volver a pegarla.
¿Qué denoise debo usar para arreglar manos?
Entre 0,65 y 0,7, más o menos. Por debajo de 0,5 el modelo se inventa algo aleatorio ahí; con 0,9 conserva la mano rota.
¿Con qué frecuencia funciona la corrección?
No siempre: en mis ejecuciones, a menudo entre el 60 y el 80 % de los intentos no eran buenos. Ejecútalo varias veces y quédate con el mejor resultado.
¿Cuánta VRAM necesito?
Al menos 12 GB para Flux. Carga cada modelo una vez y conéctalo a todos los detailers, porque los nodos de modelo duplicados ocupan cada uno memoria.
