Cambiar tema

Ampliar y reparar imágenes en ComfyUI: Hires Fix, FaceDetailer e inpainting

Easton editorial illustration: large rounded image-editing canvas with a pixel-soft left region and a clean detailed right region, orange translucent inpaint mask over one small facial area, magnifier revealing restored pixels

"El tutorial oficial de upscaling de ComfyUI explica Load Upscale Model, Upscale Image (Using Model) y el directorio upscale_models."

Generaste un personaje de 768×1024. La composición y la luz funcionan, pero el rostro lejano está borroso. Una ampliación directa 4x endurece los detalles; FaceDetailer cambia la persona; y un inpaint sobre un defecto pequeño modifica el color de todo el fondo.

El upscaling de píxeles, el remuestreo latente, FaceDetailer y el inpainting manual resuelven problemas distintos. A continuación verás conexiones, significado de parámetros, una primera tarea para cada ruta y cómo diagnosticar borrosidad, cambios fuera de la máscara y deriva del rostro.


Cuatro rutas de posprocesado con límites diferentes

Después de conseguir una imagen satisfactoria suelen quedar tres problemas: poca resolución, detalles blandos o un defecto local. ComfyUI ofrece cuatro rutas principales y cada una tiene un alcance distinto.

El upscaling de píxeles usa ESRGAN u otro modelo para aumentar dimensiones. Normalmente no vuelve a samplear el prompt ni cambia deliberadamente la composición, aunque el modelo de superresolución puede reconstruir o inventar textura. Es la opción adecuada si la imagen ya está bien y solo debe ser más grande.

El remuestreo latente amplía el latent y vuelve a samplearlo. Permite cambios de estructura y sirve para regenerar material o detalle.

FaceDetailer detecta un rostro y lo repara localmente. Funciona con caras pequeñas y borrosas. Las manos y otros objetos necesitan el Detector y Detailer adecuados o una máscara manual; FaceDetailer no es una reparación universal.

El inpainting manual usa Mask Editor para marcar la zona prioritaria. Es útil para el borde de un logo, un defecto de fondo o un objeto concreto, pero sampling y compositing pueden alterar el aspecto fuera de la máscara.

Estas rutas no son equivalentes. El upscaling no garantiza identidad, FaceDetailer no es face swap y el inpainting no asegura que cada píxel externo quede idéntico. Primero clasifica el problema: tamaño, detalle nuevo, zona detectada o cambio local.


Upscaling de píxeles: UpscaleModelLoader + Upscale Image using Model

Es la ruta de posprocesado más simple. Si la imagen ya es correcta y solo necesita mayor salida, suele ser el punto de partida menos destructivo.

Primera tarea de ampliación

Partimos de una imagen de 768×1024 que debe salir más grande.

Descarga un modelo adecuado desde Real-ESRGAN u otra fuente fiable, como RealESRGAN_x4plus.pth o RealESRGAN_x4plus_anime_6B.pth.

Coloca el archivo en ComfyUI/models/upscale_models/.

Actualiza la interfaz o reinicia ComfyUI para volver a escanear la lista. Si no aparece, revisa ruta, extensión y extra_model_paths.yaml.

Conecta los nodos. UpscaleModelLoader selecciona el modelo. Upscale Image (Using Model) recibe upscale_model e image; conecta la imagen generada a la entrada image.

Ejecuta y comprueba las dimensiones. Un modelo 4x suele producir cuatro veces el ancho y el alto, pero la salida real del nodo manda sobre tamaño y recursos.

Elegir un modelo de upscaling

ModeloBuen punto de partidaCaracterísticas
4x-ESRGANUso generalEjemplo del tutorial oficial y referencia útil
RealESRGAN_x4plusFotos y escenas realistasRestauración general para probar texturas naturales
RealESRGAN_x4plus_anime_6BAnime e ilustraciónOrientado a anime, útil para líneas y colores planos
realesr-general-x4v3Uso general ligeroAlternativa ligera para comparar varias imágenes

No hay un mejor modelo universal. El resultado depende del tipo de imagen, estilo del modelo base, artefactos y escala. Prueba un modelo anime con ilustraciones y uno general con fotos, y compara bordes, piel, cabello y texturas finas.

Recordatorio del directorio

Los modelos suelen ir en upscale_models, no en upscale_model. UpscaleModelLoader también puede leer directorios de extra_model_paths.yaml. Si la lista no cambia, revisa archivo y ruta antes de actualizar o reiniciar.


Ampliar el latent y volver a samplear: LatentUpscale + KSampler

El upscaling de píxeles no reinterpreta el prompt. Para regenerar material o detalle después de ampliar, agranda el latent y ejecuta otro sampling. denoise controla cuánto se conserva y cuánto se redibuja.

Parámetros de LatentUpscale

ParámetroFunciónNotas
upscale_methodAlgoritmo de ampliaciónOpciones comunes: nearest-exact, bilinear, bislerp
width / heightDimensiones objetivoUn lado en 0 conserva la proporción a partir del otro
cropRecorteOpciones comunes: disabled y center

LatentUpscale produce un latent mayor que pasa a KSampler. Un denoise cercano a 1,0 regenera más: pueden aumentar los detalles, pero composición, rostro y ropa cambian con facilidad. Cerca de 0,0 conserva más del origen y añade menos información.

No existe una receta para todos los modelos. Si solo buscas un poco de detalle, empieza bajo. Mantén seed, sampler, steps, CFG, checkpoint y pesos LoRA, y cambia una variable. Si el rostro o la ropa empiezan a desviarse, vuelve al último valor estable.

Diferencia frente al upscaling de píxeles

Ruta¿Cambia la estructura?¿Añade detalle?Cuándo usarla
Upscaling de píxelesNormalmente no cambia la composición de forma intencionalReconstruye detalle de píxelesEl origen es correcto y solo necesita resolución
Remuestreo latenteSí, según denoiseRegenera detallesSe acepta cierta variación y se quiere redibujar material o estructura local

El remuestreo latente no es un resize simple. Si el workflow ya usa ControlNet, IPAdapter o regional prompting, una segunda pasada puede debilitar esas condiciones. Guarda origen y workflow antes de probar una rama aparte.


Reparar rostros con FaceDetailer de Impact Pack

Un rostro pequeño y borroso es un fallo habitual. FaceDetailer combina detección facial y Detailer en Impact Pack: detecta una zona y aplica detail o inpaint al recorte. Mejora caras pequeñas, pero no controla identidad ni hace face swap.

Instalar Impact Pack

Impact Pack es un paquete externo de custom nodes. El maintainer recomienda ComfyUI Manager. Busca ComfyUI-Impact-Pack, instala y reinicia ComfyUI.

Impact Pack cambia con frecuencia, incluida su estructura y requisitos. El README actual también indica que algunos Ultralytics Detector Provider necesitan Impact Subpack por separado. Si un workflow antiguo muestra nodos rojos, detector ausente o parámetros diferentes, revisa README, Subpack y Manager actuales en lugar de copiar una captura vieja.

Primera reparación facial

Supongamos que la imagen tiene un rostro lejano blando.

Añade FaceDetailer desde el menú de Impact Pack.

Conecta image, model, clip, vae, detector y demás entradas requeridas. Pueden variar según la versión; usa el nodo instalado y el README actual.

Revisa primero la zona detectada, guide_size, max_size, noise_mask, inpaint_model y cycle. guide_size fija el tamaño de referencia para detallar una zona pequeña; max_size limita su lado largo y el uso de VRAM.

Empieza con denoise conservador. 0,3–0,5 es un rango práctico inicial, no un valor oficial. Cuanto menor sea el rostro y mayor el recuadro, más prudente debe ser el ajuste.

Compara origen y resultado. El rostro debe verse más claro sin modificar de forma innecesaria identidad, expresión, cabello o fondo.

Parámetros de FaceDetailer

ParámetroFunciónAjuste recomendado
guide_sizeTamaño de referencia de la zonaEmpezar moderado; valores altos aumentan redibujo y VRAM
max_sizeTamaño máximo procesadoLimitar recuadros grandes y consumo de VRAM
noise_maskActiva o desactiva noise mask en la zonaTratarlo como interruptor y verificar la versión instalada
inpaint_modelUsa la ruta de un modelo inpaintConfigurarlo con un checkpoint inpaint dedicado
cycleNúmero de pasadas de DetailerEmpezar con 1; repetir puede alejarse del rostro original

El detector decide la zona. Si FaceDetailer empeora el rostro, confirma la detección y reduce zona, denoise o guide size. Una mano deformada necesita detector de manos y Detailer o inpainting manual; FaceDetailer no la arregla automáticamente.

Límites de FaceDetailer

FaceDetailer mejora detalles faciales, pero no promete conservar la identidad. Para eso usa FaceID, InstantID, ReActor o LoRA. Con una persona real, utiliza únicamente material propio o autorizado.


Inpainting manual: cambiar una zona sin reconstruir todo

Para el borde de un logo, un defecto de fondo o una mano, el inpainting manual suele ofrecer más control. La máscara fija la prioridad, pero la zona afectada depende de encoding, conditioning, denoise y compositing.

Pasos en Mask Editor

Partimos de una imagen de producto con un pequeño defecto de fondo.

Carga el origen en Load Image, haz clic derecho y elige Open in MaskEditor.

Pinta solo la zona que necesita corrección.

Usa el borrador para retirar exceso y deja una transición razonable.

Pulsa Save para devolver la máscara al nodo y usarla en la ruta de inpainting.

Dos conexiones comunes de inpainting

Los workflows nativos suelen utilizar una de dos rutas de conditioning. No hace falta encadenarlas de forma mecánica.

La primera usa VAE Encode (for Inpainting). Recibe pixels, vae, mask y grow_mask_by, y devuelve un latent con noise mask. Conecta ese latent a KSampler y decodifica con VAE Decode.

La segunda usa InpaintModelConditioning. Recibe positive, negative, vae, pixels y mask, y produce positive y negative procesados junto con un latent para KSampler. Sirve para workflows que necesitan conditioning inpaint específico.

KSampler recibe model, positive, negative, latent y demás parámetros de sampling. La VAE está en los nodos de codificación y decodificación antes y después; no se conecta directamente a KSampler.

Función de grow_mask_by

grow_mask_by expande la máscara y crea una transición en el latent. Una máscara estrecha produce un borde duro; una grande redibuja partes correctas. Empieza con poca expansión, revisa unión y fondo y aumenta gradualmente.

Corregir uniones visibles

Si hay una unión, brillo distinto o aspecto de parche, aumenta con moderación grow_mask_by, baja denoise y difumina la máscara. Nodos externos añaden Expand Mask y Blur Masked, pero verifica nombres y comportamiento en la versión instalada.


Opciones avanzadas: Ultimate SD Upscale y comfyui-inpaint-nodes

El upscaling pixel y latent cubren la base. Una pasada completa muy grande puede agotar VRAM, y las uniones difíciles requieren preparación precisa de máscara. Los custom nodes siguientes son opciones avanzadas, no requisitos iniciales.

Ultimate SD Upscale: mejorar por mosaicos

Ampliar 1024×1536 a 4096×6144 hace costosa una segunda pasada completa. Ultimate SD Upscale divide en mosaicos, ejecuta difusión image-to-image en cada uno y combina el resultado.

El mosaico mantiene cada proceso cerca del tamaño de entrenamiento y reduce la carga global. A cambio, tarda más y puede crear uniones, texturas repetidas o diferencias de estilo local.

Busca ComfyUI_UltimateSDUpscale en ComfyUI Manager. Entrada, menú y parámetros pueden cambiar; revisa README e interfaz actuales.

comfyui-inpaint-nodes: preparar máscaras

comfyui-inpaint-nodes incluye Fooocus inpaint, LaMa, MAT y herramientas para expandir, reducir, difuminar y rellenar máscaras. Los modelos Fooocus inpaint suelen ir en ComfyUI/models/inpaint; confirma compatibilidad y ruta de conditioning en el README actual.

NecesidadPreparación que conviene probar
Unión visible alrededor del cambioExpand Mask con Blur Masked
Extensión de máscara más precisaShrink Mask o Expand Mask
Mejor relleno inicial dentro de la máscaraFill Masked
Eliminar objetos o hacer outpaintingLaMa, MAT o workflow outpaint adecuado

Denoise no resuelve todo. Cerca de 1,0 redibuja más la zona; más bajo conserva más origen, pero también dependen el modelo y conditioning. Si cambia el exterior, revisa conexiones y compositing antes de ajustar máscara, denoise o transición.


Tabla de decisión: escenario y ruta de posprocesado

EscenarioRuta recomendadaMotivoAlternativa
El origen es correcto y solo necesita resoluciónUpscaling de píxelesSuele mantener composición y mejorar píxelesRemuestreo latente para regenerar detalle
Hay que regenerar material o detallesRemuestreo latenteDenoise controla conservación y redibujoUltimate SD Upscale para imágenes grandes
Un rostro lejano está borrosoFaceDetailerDetecta el rostro y lo detalla localmenteInpainting manual si la detección falla
Mano, objeto o logo tiene un fallo localInpainting manual o Detailer adecuadoMáscara o detector limita el áreaVolver a generación si la estructura está mal
La resolución objetivo supera la VRAMUltimate SD UpscaleTiled img2img reduce carga por mosaicoReducir tamaño y usar upscaling de píxeles
El cambio tiene una unión visibleExpandir y difuminar la máscaraAñade transición al redibujo localReducir fuerza y denoise

Ventajas y límites

RutaVentajasLímitesUso de VRAM
Upscaling de píxelesRápido, suele mantener composición y ofrece muchos modelosNo arregla estructura y puede crear textura artificialBajo a medio
Remuestreo latenteRegenera material y detalle con ajuste flexibleRequiere calibrar denoise y puede derivarMedio a alto
FaceDetailerDetecta rostros sin dibujar máscara facialNo conserva identidad y puede corregir en excesoMedio a alto
Inpainting manualZona definida y control claroRequiere máscara, unión y conditioning correctosMedio
Ultimate SD UpscaleProcesa imágenes grandes por mosaicosMás lento y con riesgo de unionesDepende de mosaico y modelo

No actives todos los nodos a la vez. Usa la ruta menos destructiva que resuelva el problema, guarda el resultado intermedio y decide después si merece otra pasada o reparación local.


Orden recomendado: ampliar, reparar rostro y después inpaint

El orden afecta el resultado. En un personaje puedes empezar por ampliación conservadora, reparar zonas detectadas y terminar con un cambio local manual. Es una base útil, no una receta fija.

Por qué funciona este orden

Guarda primero imagen y workflow. Si el único problema es el tamaño, usa upscaling de píxeles, que normalmente no vuelve a samplear el prompt.

Revisa rostro, manos y zonas pequeñas. FaceDetailer para el rostro; Detector y Detailer adecuados o máscara manual para mano u objeto. Una fuente mayor facilita detectar una corrección excesiva.

Deja el inpainting manual para logo, borde, defecto de fondo u otra zona exacta, evitando que una operación global posterior deshaga la corrección.

Riesgos de una segunda pasada

Con ControlNet, IPAdapter o regional prompting, el remuestreo latente y el sampling local de Detailer pueden debilitar condiciones previas. Pose, líneas, cabello, ropa e identidad de referencia pueden desviarse.

Si la segunda pasada es necesaria, conserva las condiciones, fija seed y parámetros y empieza con denoise bajo. Si el resultado previo importa más que el detalle nuevo, prueba primero upscaling de píxeles.

Lecturas relacionadas


Fallos frecuentes: borrosidad, deriva facial, uniones y desborde

SíntomaCausa comúnSolución
Upscaling borroso o demasiado duroModelo inadecuado o demasiadas ampliacionesComparar modelos generales, foto y anime y reducir pasadas
El rostro ya no parece la misma personaDenoise alto o zona Detailer grandeBajar denoise y reducir zona; usar método de identidad si corresponde
Aparecen texturas arbitrariasTiled upscale o denoise alto redibuja demasiadoBajar denoise, quitar información nueva del prompt y probar más pequeño
El borde de la máscara muestra uniónMáscara estrecha, sin transición o cambio de brilloAjustar grow_mask_by, difuminar y reducir fuerza
Cambia el exterior de la máscaraMask, noise mask, conditioning o compositing incorrectosRevisar conexiones, reducir máscara y denoise
FaceDetailer no encuentra el rostroRostro pequeño, ángulo extraño o detector inadecuadoAmpliar de forma conservadora o cambiar detector; no forzar con denoise alto
Falta el modelo de upscalingRuta o extensión incorrecta o lista sin actualizarColocarlo en upscale_models o añadir ruta y actualizar o reiniciar
Ultimate SD Upscale aparece rojoFalta custom node o hay versiones incompatiblesRevisar instalación y actualizaciones en Manager; aislar conflictos complejos
El workflow se queda sin VRAMResolución, mosaico, batch o zona Detailer grandeBajar tamaño y batch, limitar max_size, reducir mosaico o usar upscaling pixel

¿Seguir reparando o volver a generar?

Continúa el posprocesado si composición, identidad, pose y forma del producto son correctas y solo quedan resolución, rostro pequeño, mano o defecto local. El cambio ideal cabe en un recuadro o máscara pequeños.

Vuelve a generar si identidad, pose, ropa, cantidad de sujetos o estructura están mal. Añadir denoise e inpainting aumenta la incertidumbre sin corregir la condición. Ajusta prompt, ControlNet, imagen de referencia o modelo.

Un personaje o producto estable entre muchas salidas también necesita más que inpainting repetido. El posprocesado termina una imagen ya casi correcta; no sustituye assets de identidad, control estructural ni entrenamiento.


Conclusión

El posprocesado de ComfyUI tiene cuatro rutas: upscaling de píxeles, remuestreo latente, reparación facial con FaceDetailer e inpainting manual. Si el origen está bien, empieza por píxeles. Usa una segunda pasada latent con denoise bajo solo para regenerar detalle. FaceDetailer corrige un rostro lejano sin garantizar identidad; para un fallo preciso, usa máscara y conditioning inpaint.

En personajes, un orden práctico es ampliación conservadora, reparación de zonas detectadas y cambio manual final. Si la segunda pasada completa no cabe en VRAM, Ultimate SD Upscale procesa mosaicos, pero cada unión y transición local necesita revisión. Comparar cada etapa con el origen ayuda a localizar deriva facial, textura artificial y cambios fuera de la máscara.

Elegir y ejecutar una ruta de posprocesado en ComfyUI

Clasifica el problema como tamaño, detalle por regenerar, defecto pequeño detectado o cambio local preciso, y empieza por la ruta menos destructiva.

  1. 1

    Step 1: Guardar la salida original

    Conserva imagen, workflow, seed, checkpoint, sampler, steps y CFG para cambiar una sola variable en cada prueba.
  2. 2

    Step 2: Decidir si solo necesitas una imagen más grande

    Si composición, identidad y textura ya son correctas, empieza con UpscaleModelLoader y Upscale Image (Using Model).
  3. 3

    Step 3: Decidir si necesitas remuestreo

    Usa LatentUpscale y KSampler solo para regenerar material o detalle, comenzando con denoise bajo.
  4. 4

    Step 4: Reparar un rostro pequeño o zona detectada

    Usa FaceDetailer u otra ruta Detector-Detailer y limita guide_size, max_size y denoise para no redibujar el fondo.
  5. 5

    Step 5: Dibujar una máscara para un cambio preciso

    Cubre solo la zona objetivo en Mask Editor, deja una transición pequeña y conecta VAE Encode (for Inpainting) o InpaintModelConditioning.
  6. 6

    Step 6: Revisar uniones y cambios fuera de la máscara

    Si aparecen bordes duros, cambios de color o aspecto de parche, ajusta grow_mask_by, el difuminado y denoise, y verifica mask y noise mask.
  7. 7

    Step 7: Reducir la presión de VRAM en imágenes grandes

    Baja el tamaño objetivo o usa Ultimate SD Upscale por mosaicos y revisa cada límite y transición de textura.
  8. 8

    Step 8: Conservar el cambio mínimo que funciona

    Compara origen, upscaling de píxeles, remuestreo y reparación local, y conserva la versión que cumple el objetivo con menos deriva estructural.

FAQ

¿Cómo se construye un Hires Fix en ComfyUI?
ComfyUI suele dividir Hires Fix en generación a baja resolución, ampliación del latent o la imagen y una segunda pasada de KSampler con denoise bajo o medio. Lo importante es controlar la fuerza del remuestreo, no buscar un nodo con ese nombre.
¿Qué diferencia hay entre Latent Upscale y Upscale Image (Using Model)?
Latent Upscale amplía el latent y necesita otra pasada de sampling, por lo que puede cambiar detalles y estructura. Upscale Image (Using Model) procesa píxeles y conviene cuando el contenido ya es correcto y solo necesitas más tamaño.
¿Dónde se colocan los modelos de upscaling de ComfyUI?
El tutorial oficial y la documentación usan ComfyUI/models/upscale_models. UpscaleModelLoader también lee rutas configuradas en extra_model_paths.yaml. Actualiza la interfaz o reinicia después de añadir un modelo.
¿FaceDetailer es una herramienta de face swap?
No. FaceDetailer detecta una zona facial y aplica detail o inpaint para mejorar un rostro pequeño. La identidad estable requiere FaceID, InstantID, ReActor o LoRA, siempre con material propio o autorizado.
¿Por qué el inpainting modifica zonas fuera de la máscara?
Puede deberse a denoise alto, conexiones incorrectas de mask o noise mask, una transición demasiado grande o sampling y compositing sobre todo el latent. Reduce la máscara y el denoise y revisa el conditioning.
¿Qué ajustar si FaceDetailer empeora el rostro?
Primero confirma que el detector eligió la zona correcta. Después reduce el recuadro o guide_size y baja denoise. Si el rostro original tiene pocos píxeles, amplía toda la imagen de forma conservadora antes de una reparación fuerte.
¿Cuándo conviene Ultimate SD Upscale?
Cuando la imagen objetivo no cabe en una segunda pasada completa o el upscaling de píxeles no aporta suficiente detalle. Añade parámetros y puede producir uniones de mosaicos o estilos locales incoherentes.

14 min de lectura · Publicado el: 22 jul 2026 · Actualizado el: 21 jul 2026

Comentarios

Inicia sesión con GitHub para dejar un comentario

Easton BlogEaston Blog