ArtificialGuyBR

Home / Blog / ComfyUI

Fluxos de trabalho de inpainting no ComfyUI: Guia prático

Guia prático sobre fluxos de inpainting no ComfyUI: edição de máscara, preservação com ControlNet e amostragem de área mascarada.

6 sources cited ComfyUI

<!-- -->

  • Use o workflow XL V2 do PotatCat para edição guiada de máscara com controle de opacidade e correspondência de cor
  • Aplique ControlNet OpenPose do DjAfk para preservar posição e formato do personagem ao substituir regiões mascaradas
  • Instale os nós Inpaint-CropAndStitch para reduzir tempo de amostragem e forçar resolução alvo

Fluxos de trabalho de inpainting no ComfyUI: Guia prático

TL;DR

  • Use o editor de máscara XL V2 do PotatCat com opacidade e colormatching para inpainting guiado e visível
  • Preserve a posição do personagem durante a substituição com o workflow ControlNet OpenPose do DjAfk
  • Acelere a geração amostrando apenas regiões mascaradas usando os nós Inpaint-CropAndStitch

Os fluxos de trabalho de inpainting no ComfyUI abrangem um espectro que vai da edição manual de máscara com feedback em tempo real até pipelines de nós automatizados que restringem a geração apenas a regiões mascaradas. Este guia cobre três abordagens nativas do ComfyUI, além de um método de imagem-para-imagem contrastante de uma plataforma separada, com configurações práticas e armadilhas comuns extraídas de workflows publicados pela comunidade.

Workflows reportados pela comunidade foram verificados contra as fontes publicadas listadas no final deste artigo. Onde o material fonte exigia correção, essa correção é anotada explicitamente. Quem é novo no ComfyUI deve primeiro revisar nosso guia de primeiros passos no ComfyUI para instalação e conceitos básicos de nós.

Como estes workflows se comparam

Workflow | Melhor para | Vantagem principal | Limitação | Source

|----------|----------|---------------|------------|--------

PotatCat's XL V2 inpaint | Edição manual de máscara com feedback visual | Controles de opacidade e colormatching da máscara | Exige proporção de corte 1:1 | civitai.com/articles/9971 DjAfk's ControlNet OpenPose | Preservar pose do personagem durante substituição | Usa dados de pose para guiar colocação da substituição | Exige modelo controlnet OpenPose e checkpoint | civitai.com/articles/4586 EL's Inpaint-CropAndStitch | Amostragem rápida e precisa apenas de área mascarada | Amostra apenas a área mascarada, evitando passes de imagem completa | Instalação de nó personalizado necessária | civitai.com/articles/5333 MimicPC img2img | Transformação completa de imagem | Recriação criativa baseada em DALL·E 3 | Não é um workflow ComfyUI; opera em plataforma separada | civitai.com/articles/6782

Inpainting baseado em máscara com workflow do PotatCat

O workflow XL V2 inpaint do PotatCat recria a experiência de inpainting do A1111 dentro do ComfyUI, onde uma região mascarada é cortada, regenerada e colada de volta na imagem original sem costuras visíveis (civitai.com/articles/9971).

O workflow carrega uma imagem via nó de arrastar-e-soltar, então abre um editor de máscara acessível clicando com o botão direito na imagem e selecionando a opção de editor de máscara. O usuário desenha formas fechadas na máscara; o workflow preenche estes circuitos fechados para definir a região de inpainting. Após desenhar, salve a máscara antes de prosseguir.

Novos recursos

Dois recursos adicionados em dezembro de 2025 expandem as capacidades do workflow:

  • Opacidade da máscara permite ajustar a transparência da máscara, que funciona com difusão diferencial para usar o intervalo completo da máscara para controle mais fino do que ajustar apenas o denoise.
  • Colormatching aborda mudanças de cor que ocorrem quando o VAE codifica e decodifica a imagem, ajudando a região inpainted a se mesclar com o perfil de cor do original.

Configurações de geração

Use o mesmo sampler e scheduler da imagem original para reduzir artefatos de mesclagem. Valores de denoise mais altos produzem mais mudança na região mascarada. O workflow expõe vários parâmetros ajustáveis:

  • Pixel size define a resolução de geração (1024 produz 1024x1024).
  • Expand mask controla até onde a máscara cresce a partir de sua fronteira original.
  • Padding define a área não processada ao redor da máscara que ainda participa da geração.
  • Raio de desfoque da máscara ajusta a suavidade da borda da máscara.
  • Preencher buracos na máscara habilita o preenchimento automático de regiões de máscara totalmente fechadas.

O workflow produz várias visualizações: a sobreposição da máscara cortada, uma comparação antes-e-depois da área mascarada e o composto inpainted completo.

Edição iterativa

Para continuar o inpainting a partir de uma saída, copie a imagem inpainted para o espaço de clip via clique com o botão direito, depois cole-a em um nó Load Image. Após colar, limpe o editor de máscara antes de desenhar uma nova máscara; falhar em fazer isso deixa remanescentes da máscara anterior no editor.

ControlNet OpenPose para preservação de personagem

O DjAfk publicou um método que usa ControlNet para manter a posição, o tamanho e o formato de um personagem durante o inpainting (civitai.com/articles/4586). Esta abordagem aborda um modo de falha comum onde a IA redesenha uma pessoa mascarada em uma localização ou pose inesperada.

O workflow processa a região mascarada para extrair dados esqueléticos OpenPose, então alimenta essa informação de pose em um modelo ControlNet junto com o prompt de substituição. O resultado restringe a figura gerada para corresponder à pose e proporções originais. Isso funciona com Loras e IPAdapter como entradas de condicionamento adicionais. Para uma visão completa dos modelos ControlNet e suas configurações, veja nosso guia ControlNet no ComfyUI.

Para rodar o workflow, carregue o checkpoint, VAE e controlnet OpenPose no ComfyUI. O Ksampler usa um valor de seed fixo, que pode precisar ajuste dependendo do nível de variação desejado. A fonte inclui um arquivo JSON de workflow para download e importação direta.

Inpaint-CropAndStitch: Amostragem apenas da área mascarada

Os nós Inpaint-CropAndStitch do EL automatizam o inpainting restringindo a amostragem à região mascarada em vez de processar a imagem inteira (civitai.com/articles/5333, github.com/lquesada/ComfyUI-Inpaint-CropAndStitch).

Os dois nós principais são o nó "✂️ Inpaint Crop" e o nó "✂️ Inpaint Stitch". O nó Crop extrai a área mascarada com contexto opcional, redimensiona a imagem previamente, estende para outpainting, preenche buracos na máscara, cresce ou desfoca a máscara, e redimensiona a região cortada para uma resolução alvo. O nó Stitch reintegra o resultado inpainted na imagem original sem alterar áreas não mascaradas, lidando com a mesclagem automaticamente.

Vantagens sobre inpainting padrão

Os nós fornecem vários benefícios sobre amostragem de imagem completa:

  1. Velocidade: Amostrar apenas a área mascarada é significativamente mais rápido que processar a imagem inteira, particularmente para imagens grandes com regiões mascaradas pequenas.
  2. Controle de contexto: Usuários podem especificar a quantidade de contexto de imagem circundante incluído na geração para interpretação mais precisa do prompt.
  3. Gerenciamento de resolução: Upscaling antes da amostragem gera mais detalhe, depois o resultado é costurado de volta no original. Downscaling antes da amostragem evita artefatos como cabeças ou corpos duplicados quando a área mascarada é grande relativa à imagem.
  4. Resolução forçada: Usuários podem forçar um tamanho de saída específico (por exemplo, 1024x1024 para modelos SDXL).
  5. Edição não destrutiva: A porção não mascarada da imagem não passa por codificação e decodificação VAE, preservando sua qualidade original.
  6. Mesclagem automática: O nó stitch lida com a mesclagem de bordas sem intervenção manual.

A instalação está disponível através do ComfyUI-Manager buscando por "Inpaint-CropAndStitch", ou via git clone do repositório. O pacote é licenciado sob GNU General Public License Version 3 e usa código do comfy_extras, KJNodes e Efficiency Nodes.

O changelog do repositório documenta desenvolvimento ativo até 2026, incluindo aceleração GPU para processamento 30-100x mais rápido, precisão de costura melhorada que elimina deslocamentos de um pixel, e uma opção de modo de dispositivo que padrão para GPU com fallback CPU para compatibilidade. Princípios similares de otimização GPU se aplicam aos workflows de upscaling no ComfyUI discutidos em outra parte desta série.

Transformação imagem-para-imagem

O img2img AI do MimicPC usa tecnologia DALL·E 3 para transformar imagens carregadas em novas criações (civitai.com/articles/6782). Ao contrário dos workflows ComfyUI acima, esta é uma plataforma baseada na nuvem em vez de um grafo de nós local. O sistema analisa imagens carregadas quanto a formato, estilo, esquemas de cores, texturas e texto embutido, então recria a imagem com esses elementos preservados.

Esta abordagem é distinta do inpainting tradicional: em vez de modificar uma região mascarada específica, o img2img transforma a imagem inteira baseada em requisitos especificados pelo usuário como mudanças de estilo, adições ou remoções de objetos e ajustes composicionais.

Referência de configuração

Setting | Valor recomendado | Propósito | Source

|---------|-------------------|---------|--------

Sampler and scheduler | Igual à imagem original | Reduz artefatos de mesclagem nas costuras | civitai.com/articles/9971 Denoise level | Maior = mais mudança | Controla o grau de regeneração na área mascarada | civitai.com/articles/9971 Pixel size / target resolution | 1024 para SDXL; 512 para SD 1.5 | Define a dimensão de geração | civitai.com/articles/5333 Mask opacity (PotatCat) | Intervalo ajustável | Controla intervalo de máscara da difusão diferencial | civitai.com/articles/9971 Device mode (Crop node) | GPU (padrão); fallback CPU | Selecione GPU para velocidade, CPU para compatibilidade | github.com/lquesada/ComfyUI-Inpaint-CropAndStitch Mask fill threshold | 255, 255, 255 (#FFFFFF) | Garante máscara totalmente opaca para processamento correto | github.com/lquesada/ComfyUI-Inpaint-CropAndStitch Controlnet model | OpenPose | Preserva pose esquelética durante substituição de personagem | civitai.com/articles/4586 Ksampler seed | Fixo (padrão) | Fornece baseline consistente com controle de variação | civitai.com/articles/4586

Erros comuns e correções

Problem | Cause | Fix

|---------|-------|-----

Inpainted region appears wider than expected | Workflow forced a non-1:1 crop ratio | Ensure the image can be cut as a 1:1 square; non-square crops produce distorted results | civitai.com/articles/9971 Old mask remnants appear after pasting an inpainted image | Mask editor was not cleared after pasting | Press clear in the mask editor before drawing a new mask | civitai.com/articles/9971 Mask appears opaque but node treats it as transparent | Mask has semi-transparent pixels, not fully white | Verify mask pixels are exactly 255, 255, 255 (RGB white); use a screenshot to check pixel values | github.com/lquesada/ComfyUI-Inpaint-CropAndStitch Double heads or bodies in inpainted output | Masked area is too large relative to the image | Downscale the cropped image before sampling using the internal_upscale_factor parameter | github.com/lquesada/ComfyUI-Inpaint-CropAndStitch Seams visible at mask boundary | Stitch mask does not blend properly | Increase the mask_blend_pixels parameter to grow and blur the stitch boundary | github.com/lquesada/ComfyUI-Inpaint-CropAndStitch

FAQ

What are the key differences between ComfyUI inpainting and traditional full-image sampling? ComfyUI inpainting workflows that use masked-area sampling, such as Inpaint-CropAndStitch, restrict the diffusion process to the masked region only. This avoids unnecessary computation on unmasked areas, reduces inference time, and prevents artifacts that occur when the full image passes through the VAE encode-decode cycle (civitai.com/articles/5333, github.com/lquesada/ComfyUI-Inpaint-CropAndStitch).

How do you continue inpainting from an already inpainted image in ComfyUI? Copy the inpainted image to clip space via right-click, then paste it into a Load Image node. After pasting, clear the mask editor before drawing a new mask; otherwise remnants of the previous mask persist (civitai.com/articles/9971).

How effective is ControlNet for maintaining character position during inpainting? The OpenPose-based ControlNet approach processes the masked region to extract skeletal pose data, then uses that data to constrain the replacement figure's position, size, and shape. This is particularly useful when masking a person or multiple people and wanting the generated figure to occupy the same position (civitai.com/articles/4586).

What are the advantages of using Inpaint-CropAndStitch nodes over standard inpainting? The nodes sample only the masked area rather than the full image, which is significantly faster. They also allow forced resolution, context window control, automatic blending, and protection of unmasked areas from VAE processing (civitai.com/articles/5333, github.com/lquesada/ComfyUI-Inpaint-CropAndStitch).

How does differential diffusion improve mask blending in ComfyUI? PotatCat's workflow leverages differential diffusion to use the full mask range with adjustable opacity rather than relying solely on denoise tweaking. This provides a direct control surface for how much of the mask transitions from inpainted to original (civitai.com/articles/9971).

What file formats does img2img AI support for input and output? Img2img AI supports a wide range of formats including JPEG, PNG, GIF, BMP, and TIFF. The MimicPC platform processes images through a browser interface, making it compatible with most modern devices (civitai.com/articles/6782).

Where can I download the Inpaint-CropAndStitch example workflows? The repository at github.com/lquesada/ComfyUI-Inpaint-CropAndStitch includes four example workflow JSON files: inpaint_sd15.json, inpaint_hires.json, inpaint_flux.json, and inpaint-cropandstitch_example_workflow_context_mask.json, each demonstrating a different configuration (github.com/lquesada/ComfyUI-Inpaint-CropAndStitch).