O controle deslizante de qualidade do JPEG não é porcentagem! Qual é a real diferença entre 80 e 100?

Ao exportar uma imagem, aquele controle deslizante de qualidade do JPEG — você sempre usou como porcentagem? Arrasta até 80 e pensa: “mantive oitenta por cento da qualidade”; puxa até 100 e acha: “agora não perdi nada”.

Essa interpretação precisa ser completamente derrubada: o número no controle deslizante não tem nenhuma relação com “qual porcentagem da qualidade”, e qualidade 100 também não é sem perdas. Primeiro, as conclusões práticas: para guardar fotos com segurança, use 85–92; para publicar na web e em redes sociais, 75–82 é suficiente; não deixe 100 como padrão, ele só vai dobrar ou até triplicar o tamanho do arquivo, sem ganhar nada em qualidade. Abaixo explico em linguagem simples, destrinchando esse controle.

Em uma frase: o controle de qualidade do JPEG não controla “quanta qualidade preservar”, mas sim quão severos são os divisores na tabela de quantização — quanto maiores os divisores, mais agressivo o arredondamento, mais informação se perde. Ele não tem relação linear nem com qualidade nem com tamanho de arquivo; a mudança de 100 para 90 não é igual à de 20 para 10.

O que o controle de qualidade do JPEG realmente faz

Premissa: JPEG é um formato com perdas. A partir do momento em que você aperta salvar, já está perdendo informação. O controle só decide “quão severa é a perda”, não “se haverá perda”. O método de perda segue um fluxo fixo, e o controle é o último portão dessa linha de produção.

Ao salvar, a imagem primeiro é convertida de RGB para YCbCr, separando luminância e crominância em dois canais. Isso é feito porque o olho humano é muito mais sensível à luminância do que à cor; separar primeiro facilita preservar a luminância depois.

Em seguida, a imagem inteira é dividida em blocos de 8×8 pixels, e cada bloco passa por uma transformada discreta de cosseno (DCT), convertendo as cores dos pixels em uma série de valores de frequência. Pode-se pensar nisso como decompor um acorde em notas individuais: baixas frequências são as cores de base e gradientes da imagem; altas frequências são bordas nítidas e texturas finas. A versão completa desse fluxo está bem detalhada no verbete sobre JPEG da Wikipédia.

O golpe real está no último passo: cada valor de frequência é dividido por um número da tabela de quantização (Quantization Table) e depois arredondado para inteiro. O arredondamento é onde a informação morre permanentemente — o resto da divisão é simplesmente descartado e não volta. O controle de qualidade regula quão severos são esses divisores: valor alto no controle, divisores pequenos, arredondamento quase não danifica os dados; valor baixo, divisores grandes, o arredondamento simplesmente apaga detalhes. E os divisores das componentes de alta frequência crescem mais rápido, por isso as primeiras vítimas são sempre bordas e texturas finas.

Por isso ele não pode ser uma porcentagem. De 100 para 90 e de 20 para 10, a variação dos divisores é completamente diferente, e a diferença em qualidade e tamanho também é completamente diferente — perto de 90, você pode arrastar um nível e não sentir nada; perto de 20, arrastar um nível e a imagem está destruída. Entender isso como porcentagem é o mal-entendido mais comum e mais caro desse controle.

Por que qualidade 100 não é sem perdas

Resposta direta: 100 ainda está longe de ser sem perdas, por dois defeitos graves — um que não depende do controle, e outro que nem o controle consegue salvar.

O primeiro é a subamostragem de crominância (chroma subsampling). Após converter RGB para YCbCr, antes de a compressão realmente começar, a maioria dos codificadores já descarta cerca de 75% dos detalhes de crominância, pelo mesmo motivo: o olho humano é insensível à cor, então não se nota a perda. Esse passo não é controlado pelo controle deslizante; mesmo em 100, ele é executado.

O segundo é que a matemática em si não é limpa. Mesmo com os divisores da tabela de quantização no mínimo, o vai-e-vem de “pixel vira frequência, frequência volta a pixel” ainda tem pequenos erros de arredondamento. O arquivo salvo, ao ser aberto, já não contém os mesmos pixels de quando você apertou salvar.

Se você quer perda zero de bits, siga a rota sem perdas: PNG, TIFF ou o modo sem perdas do WebP. Com perdas é via de mão única; qualquer nível de JPEG é assim, incluindo aquele 100 aparentemente “perfeito”.

85–92 e 75–82: como escolher

Muitos testes práticos e comparações pixel a pixel convergem para uma divisão bem clara: duas faixas cobrem quase todos os cenários.

85–92 é a faixa de preservação. Portfólios, imagens para entregar a clientes, aquelas originais que você não quer mexer — use esta faixa. Um arquivo salvo em qualidade 90 fica cerca de 1/8 a 1/12 do tamanho não comprimido, e a diferença é invisível a olho nu — você precisa ampliar a 400% e olhar um pedacinho específico para notar mudança.

75–82 é a faixa para web. Imagens para sites, uploads em redes sociais — use esta faixa. O arquivo fica 40%–60% menor que a faixa de preservação, e o custo é principalmente uma leve suavização em texturas complexas, praticamente imperceptível em visualização normal.

Se você leu o artigo anterior «Com perdas e sem perdas», a zona ideal de 80–85 que ele indica não conflita com estas duas faixas: 80 está dentro da faixa web, e 85 já entra na faixa de preservação. Imagens já salvas em 80–85 não precisam ser reprocessadas.

Resumindo as três faixas em uma frase: o que você quer guardar, use 85–92; o que vai enviar, use 75–82; abaixo de 60 é campo minado, evite.

O mesmo recorte da mesma foto exportado em qualidade JPEG 90, 75 e 35: 90 e 75 parecem idênticas, 35 visivelmente borrada e em blocos
O mesmo recorte, três exportações reais: a qualidade 90 salva com 102 KB, a qualidade 75 com apenas 62 KB – quase 40% menor sem diferença visível. Na zona de colapso, em 35, o arquivo encolhe mais 28 KB, mas a imagem fica borrada e em blocos.

Exportar no padrão 100 é ansiedade, não estratégia. Um arquivo em qualidade 85 é 60%–75% menor que um em qualidade 100, mas visualmente não há diferença alguma; para a web, isso é simplesmente alongar o tempo de carregamento à toa — já detalhei essa conta das imagens em sites no artigo sobre otimização de velocidade de imagens na web.

Por que abaixo de 60 a qualidade despenca

Quando o controle passa de 60 para baixo, a qualidade não cai em rampa, cai em precipício.

A causa continua sendo o arredondamento. Com valores muito baixos, os divisores das componentes de alta frequência ficam absurdamente grandes; um valor de frequência, depois de dividido e arredondado, simplesmente vira zero — esse detalhe equivale a não ter sido salvo. Então categorias inteiras de informação visual desaparecem em massa: fios de cabelo, tramas de tecido, pontas de traços em fontes com serifa são os primeiros a sumir.

O que resta na imagem são os artefatos clássicos de JPEG: blocos de 8×8, faixas de cor em gradientes, halos e ruído mosquito (mosquito noise) junto a bordas nítidas. As formas grandes ainda estão lá, mas a imagem já não conta como “uma imagem para se ver”. Escrevi um artigo separado com ilustrações sobre como cada tipo de artefato se forma.

Comparação em detalhe da qualidade JPEG 90 frente à qualidade 30: o lado de menor qualidade mostra raios borrados, paredes de tijolo dissolvidas em blocos e manchas no céu
O que acontece abaixo de 60: ambas as linhas mostram a mesma posição, ampliada 3 vezes, à esquerda qualidade 90, à direita qualidade 30. Linha superior – raios e parede de tijolo: linhas finas somem primeiro, juntas se dissolvem em blocos. Linha inferior – céu e borda de parede: gradientes suaves ganham manchas e bordas ficam com halos.

Portanto, minha conclusão é: 60 é o limite prático para imagens comuns. Os poucos KB economizados abaixo disso não valem o resultado, que parece falso à primeira vista.

A mesma qualidade 90 gera resultados diferentes em softwares diferentes

“Qualidade 90” não é moeda universal. A especificação JPEG fornece um conjunto de tabelas de quantização recomendadas (Annex K), mas qual tabela cada software usa e como a escala é definida fica a critério de cada um. Mesmo em “alta qualidade”, quatro ferramentas comuns apresentam números completamente diferentes: a escala do Photoshop é 0–12, e seu 10 equivale aproximadamente ao 90 da implementação de referência libjpeg; GIMP e ImageMagick usam escala 1–100, com o GIMP adotando 85 no preset “alta qualidade” e o ImageMagick adotando 92; libjpeg, como implementação de referência, usa 90 como valor de referência.

Dois programas configurados em “qualidade 85” também não geram arquivos idênticos. Então não memorize um número em um software e aplique em outro. Para comparar entre softwares e projetos, só há dois métodos confiáveis: ver o tamanho real do arquivo de saída e ver o resultado visual real.

Uma régua mais confiável que o olho nu: SSIM

O controle deslizante não é confiável, e o olho nu é afetado pela tela e pelo estado do observador. Dá para quantificar “não consigo ver diferença”? Dá, e uma abordagem muito mais confiável é trocar de régua: o índice de similaridade estrutural (SSIM, Structural Similarity Index Measure).

Ele não compara pixel a pixel, mas observa quanto mudaram três coisas: estrutura, luminância e contraste, o que se aproxima mais de como o olho humano avalia imagens do que “contar quantos pixels são diferentes”. A pontuação vai de 0 a 1; 1 significa que as duas imagens são completamente idênticas. A fórmula e toda a história por trás disso estão bem explicadas no verbete sobre SSIM da Wikipédia.

Para os níveis de qualidade comuns, o SSIM fica aproximadamente assim: arquivos em qualidade 85 geralmente alcançam pontuação acima de 0,97, visualmente indistinguíveis do original; caindo para 60, a pontuação fica entre 0,90–0,93, levemente suavizado, visível só com ampliação; em 40, resta 0,82–0,87, e os artefatos já são visíveis a olho nu.

Esses números são muito mais honestos que o controle deslizante. Para definir a qualidade sem chutar, pode-se usar o comando compare do ImageMagick para calcular diretamente o SSIM de duas imagens e encontrar o ponto que “economiza o máximo de tamanho sem cair abaixo da linha perceptual de 0,85”. Detalhei o uso dessa régua em um artigo separado, «SSIM em profundidade».

Experimente você mesmo: controle deslizante, SSIM e qualidade ótima

A pequena ferramenta abaixo funciona inteiramente no seu navegador – as imagens nunca são enviadas. Escolha uma imagem (ou clique em “Experimentar imagem de exemplo”), arraste o controle deslizante e observe como mudam o tamanho comprimido e o SSIM; você também pode buscar automaticamente o ajuste de menor tamanho com SSIM ≥ 0,85. O valor de SSIM é calculado em tempo real para a imagem recém-comprimida – exatamente a régua da seção anterior.

Original
Comprimida (qualidade atual)
Diferença (detalhes descartados)
Tamanho: —
SSIM: —
—
Zoom original/comprimida
Ampliação da diferença Branco = detalhes descartados; mais claro significa mais perda
Conversor de qualidade entre softwares (cada ferramenta significa números diferentes – não copie)

Nota: os codificadores JPEG nativos dos navegadores não expõem a subamostragem de crominância nem as tabelas de quantização. Por isso a ferramenta mostra o efeito real do controle deslizante e quantifica a diferença com SSIM, em vez de tornar modificáveis as entranhas do codificador – e confirma exatamente o que este artigo diz: qualidade 100 não é sem perdas, e o mesmo número significa coisas diferentes em softwares diferentes.

Perguntas frequentes

JPEG em qualidade 80 ou 100?

Na grande maioria dos casos, 80 já basta; 100 não deveria ser padrão. Um arquivo em qualidade 85 é 60%–75% menor que um em qualidade 100, mas a olho nu não há diferença alguma; para fotos que precisam de segurança, use 85–92; para web e redes sociais, 75–82 é suficiente; abaixo de 60 aparecem artefatos evidentes.

JPEG em qualidade 100 é sem perdas?

Não. Mesmo no máximo 100, o JPEG geralmente já perde cerca de 75% dos detalhes de cor na subamostragem de crominância, e depois passa por quantização e arredondamento causando perdas irreversíveis. Para sem perdas, use PNG, TIFF ou WebP sem perdas.

Por que não encontro qualidade 85 no Photoshop?

A escala de qualidade JPEG do Photoshop é 0–12, não 1–100; seu 10 equivale aproximadamente ao 90 da implementação de referência libjpeg. Cada software mapeia o mesmo número de forma diferente; não copie números entre softwares, use como referência o tamanho real de saída e o resultado visual.

Como saber se a qualidade de uma imagem piorou visivelmente após compressão?

Comparar ampliada com o original é o mais direto; para uma métrica objetiva, use SSIM. Um JPEG em qualidade 85 geralmente tem SSIM acima de 0,97, visualmente indistinguível do original; em torno de 40, cai para 0,82–0,87, com artefatos visíveis a olho nu. O comando compare do ImageMagick calcula essa pontuação diretamente.

Considerações finais

O número no controle deslizante é um parâmetro de divisão, não uma porcentagem de qualidade; 100 não é sem perdas, e abaixo de 60 é precipício. Se quiser uma frase de bolso: para fotos, salve em 85; para publicar na web, salve em 80; 100 não é necessário em lugar nenhum — o arquivo dobra de tamanho e a qualidade não sobe nada.

Se você quer ir da escolha de formato e redimensionamento até ajuste de qualidade e otimização de velocidade para web, veja o «Guia Completo de Compressão de Imagens»; toda a cadeia está nesse artigo.