Processamento de imagens na prática

JPEG – imagens para ver e enviar

O formato de arquivo .jpg é talvez o mais comum para a publicação de imagens fotográficas na web (será que esta estatística pode ser verificada de alguma forma?). Vários fatores contribuem para isso, mas o principal deles é a compactação eficiente. Apesar da perda de informação, as imagens permanecem visualmente íntegras, mesmo em altos níveis de compactação, onde o tamanho reduzido dos arquivos favorece a velocidade e a economia em espaço de armazenamento.

JPEG é a sigla para Joint Photographic Experts Group, grupo organizado nos anos 80, para unificar e melhorar tecnologias que tornassem possível a transmissão de imagens os terminais de texto usados na época. E conseguiram!


Tartaruga por Kaibara87.

Pense em computadores na década de 80… do que você lembra? Devagar (beeeem devagar), quase nada de memória e menos ainda de resolução na tela! Foi neste contexto que nasceu a primeira versão do padrão “ISO/IEC IS 10918-1 ITU-T Recommendation T.81″, que ficou conhecido pelo nome do grupo que o criou: o JPEG.

Mas vamos ao que interessa. O site oficial JPEG traz mais informações históricas e também sobre o grupo, mas não é onde se encontram as informações técnicas. Elas estão no texto do padrão que eu não pretendo ler, por isso a melhor fonte que tenho no momento é a wikipédia. O artigo em inglês está bem completo! A propósito, a página de discussão com muitas divergências resolvidas e um histórico de umas 100 edições até agora, são a imagem do verdadeiro espírito cooperativo que a wikipédia trabalha para ter…

Compressão

Como o objetivo do padrão JPEG sempre foi reduzir tamanho de arquivo mantendo a imagem aceitável para a visão humana, a compressão perde informação (em inglês, isto se chama lossy-compression). Sendo assim, estes arquivos não são adequados para medições por softwares de processamento e análise de imagens. No entanto, como algumas câmeras só produzem arquivos deste formato, conheço laboratórios que fazem a captura em JPG na maior resolução possível e, assim que carregam as imagens para o computador, convertem para TIFF. É arriscado, mas se não der para comprar outra câmera ainda, é a solução.


Esta imagem (minha) teve alto nível de compressão, e é possível ver os famosos quadradinhos.

O padrão JPEG define como deve ser a compressão, mas muitos softwares não a implementam completamente, o que significa que você pode obter arquivos diferentes em softwares diferentes com a mesma imagem e parâmetros. E esta é mais uma daquelas informações que não fica clara ao usuário do programa. A implementação completa do JPEG segue as seguintes etapas:

1. Conversão do espaço de cores, de RGB para YCbCr. Isto para tirar proveito de uma das características marcantes na nossa visão: prestamos mais atenção no nível de brilho do que nas cores.

2. Os dois canais Cb e Cr, que contém as cores, têm a sua resolução reduzida, ou seja, de 256 níveis, passam a ter, por exemplo, 128. O canal Y, que contém o brilho, fica intacto.

3. A imagem é dividida em quadrados de 8 x 8 pixels (esta é a origem do artefato mais conhecido: os quadradinhos). Os quadrados passam por uma operação chamada de Transformada Discreta de Cosseno. As transformadas são operações e evidenciam o domínio da freqüência, que é uma outra forma de analisar características de uma imagem, da qual pretendo falar aqui, em breve. Por enquanto, basta dizer que ela revela elementos de baixa freqüência (pequena e suave variação ao longo de uma grande área) e de alta freqüência (variações rápidas de brilho ou cor), e que nossos olhos são mais sensíveis ao segundo grupo.


A imagem original, da minha página do flickr.

4. Os elementos de alta frequência têm sua resolução reduzida por um fator que depende do nível de compactação selecionado pelo usuário ou pelo software. Dependendo do nível selecionado, eles podem até desaparecer por completo.

5. UFA! O resultado é, então comprimido com um algoritmo de compressão que não tem perda de dados.

Metadados!

Também é possível incluir metadados (informações textuais) em uma imagem JPG, a exemplo do que acontece com TIFF e PNG. A maioria das câmeras fotográficas faz isso, usando o padrão Exif

Este artigo (alemão, escrito em inglês) aprofunda o tema dos metadados no jpg, alertando sobre o fato de estarmos publicando estes metadados na internet, sem nem sabermos quais são eles. O artigo também ensina como se livrar desses dados.

OK, o que é importante aqui?

Primeiro. Se o seu objetivo for usar a imagem para medições ou processamento por software, esqueça o JPEG, porque ele destrói parte da informação que foi captada. O olho humano pode não notar a diferença, mas a sua medição pode ficar comprometida. Se o objetivo for só olhar ou publicar na internet, esse pode ser o melhor formato.

Segundo. Cada vez que você salvar uma imagem em jpg (mesmo que ela tenha vindo de um arquivo jpg) o processo acontece de novo. Isso, na maioria das vezes, gara mais perda de qualidade a cada versão do arquivo.

Mais informações nos links já citados… Até mais!

Comente

Você pode usar estas tags e atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>