Remover os metadados sem perder qualidade: por que recomprimir não é limpar
Há duas maneiras de remover os metadados de uma foto. Uma é tirar os blocos de dados e deixar a imagem como estava. A outra é abrir a foto, desenhá-la de novo e salvá-la outra vez: os metadados se perdem pelo caminho, mas a imagem também muda. E, às vezes, eles nem se perdem.
O que é recomprimir
Um JPEG ou um HEIC guardam a imagem comprimida com perda: ao salvá-los, descarta-se informação que o olho quase não nota. Se alguém abre a foto e a salva de novo, essa compressão é aplicada outra vez sobre a anterior, e a imagem perde um pouco mais. Uma vez mal se nota; com várias, aparecem blocos, bordas sujas e cores que desbotam.
Muitas ferramentas removem os metadados justamente assim, porque é o mais fácil de programar: desenham a foto em uma tela e a exportam de novo. Funciona, mas não sai de graça.
O que medimos
Pegamos uma foto de teste de 3024 × 4032 pixels com GPS e a processamos de três maneiras. As porcentagens dependem de cada foto —uma com muito detalhe perde mais que a nossa, que é suave—, então o importante é o que muda e o que não muda:
- Desenhá-la de novo no navegador, como fazem muitos sites simples: 1,8% dos pixels mudaram e o arquivo passou de 925 para 742 kB. Removeu o GPS, mas recomprimiu.
- Salvá-la de novo com a ferramenta de imagens do macOS (
sips) com qualidade 85: 16,8% dos pixels mudaram e o GPS continuou lá. Recomprimir não é limpar. - Com o KillEXIF: nem um pixel mudou. Os dados da imagem são os mesmos, byte a byte, e o GPS foi embora.
- Dez salvamentos seguidos com qualidade 90: a diferença em relação ao original cresceu a cada um. Por isso importa não recomprimir: cada vez que uma foto passa por uma ferramenta assim, perde um pouco mais.
Como saber se uma ferramenta recomprime
Há pistas que não exigem medir nada:
- O tamanho muda muito. Remover os metadados economiza poucos kilobytes, às vezes um pouco mais se havia uma miniatura. Se uma foto de 3 MB sai com 2 MB, ela foi recomprimida.
- Deixa você escolher uma «qualidade» ao salvar. Se há qualidade, há compressão.
- O formato muda: se você coloca um HEIC e sai um JPEG, a imagem foi codificada de novo inteira.
- Demora como se processasse a imagem: remover um bloco de metadados é quase instantâneo; comprimir de novo uma foto grande, não.
O que o KillEXIF faz
O KillEXIF remove os metadados sem tocar na imagem: localiza os blocos de dados dentro do arquivo, tira esses blocos e copia o resto como está. Depois lê de novo o arquivo limpo para verificar que o que tinha de sair saiu, e diz isso: «Verificado: não sobrou nada sensível». E se algo não pode ser removido sem estragar o arquivo, ele explica em vez de recomprimir.
Por isso a foto limpa tem quase o mesmo tamanho que a original, e por isso você pode limpá-la quantas vezes quiser sem que ela perca nada. O mesmo com os vídeos: os metadados são removidos e o vídeo não é codificado de novo.