Nearest-exact, bilinear, area, bicubic ou Lanczos? Métodos de upscale comparados
Medimos o efeito dos métodos de resize do ComfyUI e do FFmpeg em bordas e detalhes: nitidez, halos e a armadilha de reduzir com bilinear e bicubic.
O essencial
- Para ampliar fotos e quadros de vídeo, o Lanczos e o bicubic são os que preservam mais detalhes. No nosso teste em 4×, eles ficaram cerca de 5 dB acima do nearest-exact e 2,5 dB acima do bilinear.
- O Lanczos e o bicubic deixam as bordas mais nítidas ultrapassando o valor delas. É daí que vem o halo discreto em volta de linhas de alto contraste.
- No ComfyUI, o “area” dá o mesmo resultado que o nearest-exact quando você amplia por um número inteiro. No FFmpeg, o “area” amplia como o bilinear.
- Para reduzir imagens no ComfyUI, escolha lanczos ou area. Ali, o bilinear e o bicubic pulam o anti-aliasing e deixam um moiré forte.
- Nenhum desses métodos acrescenta detalhes. Para isso, você precisa de um upscaler com IA, que é outro tipo de ferramenta.
Para ampliar, escolha Lanczos ou bicubic: eles preservam mais detalhes nas bordas, ao custo de halos leves. Use nearest-exact só para pixel art ou máscaras. O bilinear é mais suave, mas não gera halos. Reduzir é outra história: no ComfyUI, o bilinear e o bicubic criam moiré, então use lanczos ou area.
Esses nomes aparecem no nó Upscale Image do ComfyUI, no filtro scale do FFmpeg e na maioria dos editores de imagem. Neste guia, você vai ver o que cada método faz, o que as nossas medições mostraram, qual escolher para cada tarefa e onde termina a reamostragem clássica e começa o upscaling com IA.
Conteúdo
- O que é um método de upscale?
- Os cinco métodos em termos simples
- Nosso teste: uma foto, cinco métodos, duas ferramentas
- Halos: o preço de uma borda mais nítida
- A armadilha da redução no ComfyUI
- Qual método escolher?
- FFmpeg: as flags equivalentes
- Quando um método de reamostragem não basta
- Como comparar os dois no KwaFlux
- Solução de problemas
- Perguntas frequentes
O que é um método de upscale?
Um método de upscale, ou filtro de reamostragem, é a regra que um programa usa para calcular pixels novos a partir dos existentes quando muda o tamanho de uma imagem. Ele decide quantos pixels vizinhos considerar e quanto peso cada um tem. Ele não inventa detalhes que não foram captados; só decide se os pixels intermediários vão parecer mais suaves ou mais nítidos.
O nó Upscale Image do ComfyUI oferece cinco: nearest-exact, bilinear, area, bicubic e lanczos. A versão latente do nó troca o lanczos pelo bislerp, um método para latentes, e não para imagens finais.
Os cinco métodos em termos simples
| Método | Como preenche os pixels novos | Resultado visual |
|---|---|---|
| nearest-exact | Copia o pixel original mais próximo | Quadrados em blocos, sem desfoque, sem halos |
| bilinear | Faz a média dos 2 × 2 pixels mais próximos | Suave e uniforme, sem halos |
| area | Faz a média de todos os pixels de origem que caem dentro do pixel novo | Ao reduzir: limpo. Ao ampliar: depende da ferramenta |
| bicubic | Pondera os 4 × 4 pixels mais próximos com uma curva | Mais nítido que o bilinear, halos leves |
| lanczos | Pondera uma janela maior (6 × 6 no Pillow e no FFmpeg) com uma curva baseada em sinc | As bordas mais nítidas e os halos mais fortes do grupo |
Observação: no ComfyUI, quatro métodos passam pela função interpolate do PyTorch com as configurações padrão. A opção lanczos segue outro caminho: converte cada imagem para 8 bits e a redimensiona com a biblioteca Pillow na CPU. Em lotes longos de quadros, esse caminho pode ser mais lento, e ele arredonda a imagem para 8 bits.
Nosso teste: uma foto, cinco métodos, duas ferramentas
Pegamos uma foto detalhada de uma cidade à noite em 1920 × 1080, reduzimos a largura e a altura para um quarto (480 × 270) e ampliamos de volta com cada método. Depois comparamos cada resultado com o original usando o PSNR, uma medida de fidelidade de pixels em que um valor mais alto significa mais próximo do original.
| Método | ComfyUI, 4× | FFmpeg, 4× | ComfyUI, 2× |
|---|---|---|---|
| nearest-exact (FFmpeg: neighbor) | 30,40 dB | 30,40 dB | 36,55 dB |
| bilinear | 33,04 dB | 33,04 dB | 40,35 dB |
| area | 30,40 dB | 33,04 dB | 36,55 dB |
| bicubic | 35,39 dB | 35,14 dB | 43,62 dB |
| lanczos | 35,56 dB | 35,58 dB | 44,46 dB |
Outras três fotos de amostra deram a mesma ordem, exceto que, na mais suave delas, o bicubic ficou 0,07 dB à frente do Lanczos em 4×. Dois resultados chamam a atenção:
- O “area” não é o mesmo método nas duas ferramentas quando você amplia. No ComfyUI, ele gerou uma imagem idêntica à do nearest-exact. No FFmpeg, gerou uma imagem idêntica à do bilinear. A média por área só faz diferença quando vários pixels de origem caem em um único pixel de saída, o que acontece quando você reduz.
- O Lanczos e o bicubic ficam próximos. A diferença de 0,2 a 0,4 dB em 4× é difícil de ver. O salto maior é do bilinear para qualquer um dos dois.

Halos: o preço de uma borda mais nítida
O bicubic e o Lanczos parecem mais nítidos porque as curvas de ponderação deles assumem valores negativos. Ao lado de uma borda forte, isso deixa o lado escuro mais escuro e o lado claro mais claro do que qualquer um dos valores originais. O nosso teste usou um degrau do nível de cinza 40 para 215, ampliado 4×:
| Método | Valor mais escuro junto à borda | Valor mais claro junto à borda |
|---|---|---|
| nearest-exact, bilinear | 40 (sem ultrapassagem) | 215 (sem ultrapassagem) |
| FFmpeg bicubic | 25 | 230 |
| ComfyUI bicubic | 20,8 | 234,2 |
| Lanczos (Pillow e FFmpeg) | 19 | 236 |
Em uma foto, isso raramente se nota. Em texto, desenhos de linha, capturas de interface e luzes fortes contra um céu escuro, aparece como um contorno fino claro ou escuro.
No ComfyUI, o bicubic também pode levar valores além do branco puro ou do preto puro. Na nossa foto noturna, o resultado em 4× foi de -4,6% a 113% da faixa normal antes do corte. O corte esconde isso, mas as áreas muito claras perdem um pouco de gradação.
A armadilha da redução no ComfyUI
Muita gente usa o mesmo nó Upscale Image para reduzir imagens, por exemplo para caber no tamanho de entrada de um modelo. É aí que o método mais importa.
Quando você reduz uma imagem, os padrões finos que são pequenos demais para o novo tamanho precisam ser desfocados antes. Caso contrário, eles viram padrões falsos, o chamado aliasing ou moiré. A função interpolate do PyTorch só faz esse pré-desfoque quando você pede, e o ComfyUI não pede. Por isso, no ComfyUI, a redução com bilinear e bicubic considera pixels de menos.
Reduzimos um padrão de teste com anéis finos de 1024 para 256 pixels e medimos quanto padrão falso sobrou, sendo 0 o ideal e cerca de 90 a intensidade máxima:
| Método | Padrão falso restante |
|---|---|
| ComfyUI bicubic | 93,3 |
| ComfyUI nearest-exact | 90,1 |
| ComfyUI bilinear | 73,4 |
| ComfyUI area | 29,3 |
| ComfyUI lanczos (Pillow) | 11,8 |
| FFmpeg bicubic | 13,0 |
| FFmpeg lanczos | 11,8 |
| FFmpeg bilinear | 10,3 |

O FFmpeg e o Pillow fazem o pré-desfoque automaticamente, então todos os métodos suaves deles se saem bem. No ComfyUI, use lanczos ou area para reduzir.
Qual método escolher?
| Tarefa | Escolha | Por quê |
|---|---|---|
| Ampliar uma foto ou um quadro de vídeo | lanczos ou bicubic | Mais detalhes; em imagens naturais, o halo costuma ser invisível |
| Ampliar texto, interface ou desenho de linha | bilinear, ou bicubic se ficar suave demais | Evita contornos em volta das bordas nítidas |
| Ampliar pixel art ou uma máscara | nearest-exact | Mantém as bordas duras dos pixels e os valores exatos |
| Reduzir uma imagem no ComfyUI | lanczos ou area | As únicas opções ali que reduzem o moiré |
| Reduzir no FFmpeg ou em um editor | bicubic, lanczos ou bilinear | Todos fazem pré-desfoque; escolha a seu gosto |
| Ampliar um latente no ComfyUI | bislerp ou bilinear | O Lanczos não está disponível para latentes |
Dica: se você amplia e depois aplica uma etapa de nitidez ou um modelo de IA, o método importa menos, porque a etapa seguinte remodela as bordas de qualquer jeito. Use o bicubic como padrão seguro e dedique o seu tempo à etapa seguinte.
FFmpeg: as flags equivalentes
O filtro scale do FFmpeg usa bicubic se você não definir flags. No nosso teste, omitir a opção gerou um arquivo idêntico ao de flags=bicubic.
# Upscale to 1080p with Lanczos
ffmpeg -i input.mp4 -vf "scale=1920:1080:flags=lanczos" -c:v libx264 -crf 18 -c:a copy output.mp4
# Keep the aspect ratio: set the height, let FFmpeg pick an even width
ffmpeg -i input.mp4 -vf "scale=-2:2160:flags=lanczos" -c:v libx264 -crf 18 -c:a copy output_2160p.mp4
# Pixel art: nearest neighbor, exact 4x
ffmpeg -i sprite.png -vf "scale=iw*4:ih*4:flags=neighbor" sprite_4x.pngO FFmpeg também oferece o spline, que no nosso teste ficou entre o bicubic e o Lanczos (35,39 dB), com halos um pouco menores que os do Lanczos. Para mais detalhes sobre redimensionamento, veja como ampliar 720p para 1080p.
Quando um método de reamostragem não basta
Todos os métodos acima calculam pixels novos a partir dos antigos com uma fórmula fixa. Nenhum deles distingue um rosto de uma parede nem recupera uma textura que a câmera não gravou. Se um resultado em 4× fica sem nitidez seja qual for o método, esse é o limite da reamostragem, e não uma configuração errada.
Os upscalers com IA funcionam de outro jeito. Um modelo treinado prevê detalhes plausíveis com base no que aprendeu sobre imagens reais e, no caminho, também pode remover blocos de compressão e ruído. A contrapartida é que o detalhe acrescentado é uma previsão. Upscaling com IA vs bicubic e Lanczos compara as duas abordagens lado a lado, e de 480p para 4K: o que a IA consegue recuperar mostra onde até a IA chega ao limite.
Como comparar os dois no KwaFlux
A visualização de comparação do KwaFlux mostra uma versão reamostrada ao lado do resultado com IA, para você avaliar a diferença no seu próprio material:
- Importe um clipe ou uma imagem e abra o Reparo de qualidade.
- Defina a Resolução de saída no tamanho de que você precisa, por exemplo 2× ou 4K.
- Renderize uma prévia de 1, 3 ou 5 segundos. Você não precisa de conta.
- Abra a Comparação com controle deslizante (Slider compare). O lado “Antes” é a sua origem redimensionada para o tamanho de saída; o lado “Depois” vem identificado com a resolução ampliada por IA.

Para fotos, os mesmos passos funcionam no Aprimorador de imagem IA. Uma licença cobre 23 módulos de vídeo, 15 módulos de foto, 4 ferramentas de áudio e ferramentas de legendas e de arquivos, sem créditos nem tarifas por minuto; a Licença Perpétua custa US$ 199,99 pelo preço de tabela, paga uma única vez.
Solução de problemas
| Sintoma | Causa provável | Solução |
|---|---|---|
| Contorno claro e fino em volta de textos ou luzes | Ultrapassagem do Lanczos ou do bicubic | Mude para bilinear, ou para bicubic no FFmpeg (ultrapassagem menor) |
| Ondulações ou anéis falsos depois de reduzir no ComfyUI | Bilinear ou bicubic sem anti-aliasing | Use lanczos ou area para reduzir |
| Upscale com “area” fica em blocos no ComfyUI | Em ampliações por número inteiro, area equivale a nearest-exact | Use bicubic ou lanczos para ampliar |
| O Lanczos fica lento em um lote longo de quadros | O ComfyUI redimensiona cada quadro na CPU pelo Pillow | Use bicubic em lotes longos, ou redimensione fora do ComfyUI |
| Tudo fica sem nitidez em 4× | O detalhe não existe na origem | Use um upscaler com IA, ou amplie menos |
Conclusão
Escolha Lanczos ou bicubic para ampliar, nearest-exact para pixels que precisam continuar duros e, no ComfyUI, lanczos ou area para reduzir. O método muda a aparência das bordas, mas não cria detalhes. Quando você precisa de detalhes que a origem não tem, o trabalho é do upscaling com IA.
Veja o upscaling com IA ao lado de um redimensionamento clássico
O KwaFlux executa o Aprimorador de vídeo IA e o aprimorador de imagem na sua própria GPU. O processamento de IA roda na sua própria GPU e os seus arquivos de mídia não são enviados para processamento. Roda no Windows 10 (64 bits, versão 1809 ou mais recente), no Windows 11 e no macOS 12 ou mais recente em Apple Silicon. As prévias não exigem conta: 1, 3 ou 5 segundos em vídeo e a imagem inteira em fotos. O login com um plano pago só é necessário para exportar, converter, reparar um arquivo ou baixar um arquivo de um link.
Teste no seu próprio material
Baixe o KwaFlux e veja os efeitos de graça no seu próprio material antes de pagar — sem conta, processado na sua GPU, sem enviar sua mídia para processamento. As prévias de vídeo duram 1, 3 ou 5 segundos; as de estabilização, 5, 15 ou 30 segundos.
Perguntas frequentes
Lanczos é melhor que bicubic?
Em geral, por pouco. O Lanczos ficou à frente em sete das nossas oito comparações, por até 0,9 dB, o que é difícil de ver. Ele também ultrapassa um pouco mais as bordas. Para a maior parte do material, qualquer um dos dois serve; escolha o bicubic se notar halos em textos.
O que significa nearest-exact no ComfyUI?
É o redimensionamento por vizinho mais próximo com o arredondamento do centro do pixel corrigido. Cada pixel novo copia o original mais próximo, então as bordas continuam duras e as cores continuam exatas. Serve para pixel art e máscaras, não para fotos.
Devo usar area para ampliar?
Não. No ComfyUI, ampliar com area por um número inteiro dá o mesmo resultado que o nearest-exact. O area foi feito para reduzir, quando ele faz a média dos pixels que se juntam.
Qual método de upscale usar em anime?
Não existe um único melhor método. O bicubic é um ponto de partida comum para anime com cores chapadas; o Lanczos deixa as linhas mais nítidas, mas com halos mais fortes em volta dos contornos escuros.
O método de upscale muda o tamanho do arquivo?
Só um pouco. O tamanho é definido pela resolução de saída e pelas configurações do encoder. Métodos mais nítidos deixam mais bordas finas, o que pode custar um pouco mais de bitrate com a mesma configuração de qualidade.
O que é bislerp?
É um método do ComfyUI para ampliar latentes, a representação comprimida com que um modelo de difusão trabalha. Ele mistura os valores latentes ao longo de curvas, em vez de linhas retas. Só está disponível nos nós de upscale de latentes.
Fontes
- ComfyUI source, `nodes.py` (ImageScale, LatentUpscale) and `comfy/utils.py` (common_upscale, lanczos, bislerp) (acessado em 2026-10-29)
- PyTorch documentation, `torch.nn.functional.interpolate` (acessado em 2026-10-29)
- Pillow documentation, "Filters" (resampling filters) (acessado em 2026-10-29)
- FFmpeg documentation, "Scaler Options" (sws_flags) (acessado em 2026-10-29)


