terça-feira, 18 de outubro de 2011

Formatos de imagem


Introdução

No início, os computadores eram capazes de exibir apenas linhas de textos. Com o aperfeiçoamento constante de recursos gráficos, tanto de hardware quanto de software, formas e cores variadas passaram a fazer parte da rotina de quem utiliza essas máquinas, situação que, aos poucos, resultou no surgimento de formatos variados de imagens. Muito destes se popularizaram com a internet. É o caso dos padrões JPEG,GIF e PNG, cujas principais características o InfoWester apresenta a seguir. De quebra, o texto também mostrará brevemente outros formatos conhecidos: BitmapTIFFRAW, SVG e JPEG 2000


Formato JPEG (JPG), JPEG 2000 

O formato JPEG, cuja sigla significa Joint Pictures Expert Group, teve sua primeira especificação disponibilizada em 1983 por um grupo que leva o mesmo nome. É um dos padrões mais populares da internet por aliar duas características importantes: oferece níveis razoáveis de qualidade de imagem e gera arquivos de tamanho pequeno quando comparado a outros formatos, facilitando o seu armazenamento e a sua distribuição.
O JPEG possibilita isso porque é um formato que utiliza compressão de imagens. Mas, o que é isso? Em poucas palavras, compressão consiste na eliminação de dados redundantes nos arquivos. No caso de imagens, é possível fazer a compressão de forma que a retirada de informações não prejudique a qualidade (lossless - sem perda), assim como é possível utilizar níveis maiores de compressão que causam perdas visíveis (lossy - com perda).
Este último é o que acontece no JPEG: neste formato, quanto maior o nível de compressão, menor será o tamanho do arquivo, porém pior será a qualidade da imagem. O nível de compressão pode ser determinado em programas de tratamentos de imagens. Cada vez que uma mesma imagem JPEG é salva, costuma-se perder qualidade, já que, geralmente, o software utilizado para tratá-la aplica compressão, mesmo que mínima, toda vez que esta ação é realizada.
JPEG com menor taxa de compressão 
JPEG com menor taxa de compressão
A mesma imagem, mas com maior compressão 
A mesma imagem, mas com maior compressão
O JPEG é capaz de trabalhar com quase 16,8 milhões de cores (24 bits). Essa característica, aliada à capacidade de compressão que reduz o tamanho dos arquivos, faz do formato uma excelente opção para a distribuição de imagens fotográficas, tanto que o formato é muito utilizado para a geração de imagens em câmeras digitais. Isso porque, mesmo havendo perda de qualidade, esta ocorre de maneira pouco ou nada perceptiva, desde que, é claro, não haja "abuso" do uso de compressão nem salvamentos frequentes. No caso de atividades profissionais, é recomendável o uso de formatos que preservam a qualidade.
Arquivos em JPEG geralmente são utilizados com as extensões .jpg (mais frequente) e .jpeg, podendo haver outras de acordo com os algoritmos utilizados. Saiba mais em www.jpeg.org.

Formato JPEG 2000 

JPEG 2000 é um padrão de compressão de imagens de alta definição criado em 1999. Este tipo de compressão utiliza métodos de lógica difusa para criar os dados de origem (que são os dados em que as imagens provêm e não são descartados). Pode compactar até 90% do arquivo original sem perder a qualidade de imagem, pois os pixels não são gerados aleatoriamente na tela, e sim com um cálculo geométrico em que as cores primárias e o RGB ficam paralelos ao eixo central do arquivo.

Performance de compressão superior: A altas taxas de bit, quando artefatos se tornam quase imperceptíveis, JPEG2000 tem uma vantagem de fidelidade medida a nível de máquina sobre o JPEG. Em baixas taxas de bit (por exemplo menor que 0.25 bits/pixel para imagens em escala de cinza), JPEG2000 tem muito mais vantagens significantes sobre certos modos de JPEG: artefatos são menos visíveis e quase não há “bloqueamento”. Os ganhos de compressão sobre JPEG são atribuídos ao uso do DWT(Discrete Wavelet Transform) e um tema mais sofisticado de codificação por entropia.

Representação Múltipla de resolução: JPEG2000 decompõe a imagem em uma representação múltipla de resolução no percurso de seu processo de compressão. Essa representação pode ser usada para outro propósito de apresentação de imagem além da compressão.

Transmissão progressiva com precisão em pixel e resolução, comumente referida como decodificação progressiva e taxa de escalabilidade sinal-ruído (SNR): JPEG2000 provê uma organização de stream de código eficiente a qual é progressiva por precisão de pixel e resolução de imagem (ou tamanho de imagem). Desse jeito, após uma pequena parte do arquivo inteiro ser recebido, o visualizador pode ver uma versão de baixa qualidade da imagem final. A qualidade então melhora progressivamente através do download de mais bits de dados da fonte. O padrão JPEG de 1991 também tem uma função de transmissão progressiva mas é raramente usada.

Compressão com e sem perdas: como o JPEG de 1991, o padrão JPEG2000 provê compressão com e sem perdas em uma única arquitetura de compressão. A compressão sem perda é feita com o uso de uma transformada de integral de wavelet reversível no JPEG2000.

Acesso e processamento de stream de código aleatório, também referido como Região de interesse (ROI): os sterams de código JPEG2000 oferecem alguns mecanismos para suportar acesso espacial aleatório ou acesso à região de interesse a vários graus de granularidade. Desse jeito é possível armazenar diferentes partes da mesma imagem usando diferentes qualidades.

Resistência a erro: Como o JPEG 1991, JPEG2000 é robusto a erros de bit introduzidos por canais de comunicações com ruído, devido à codificação de dados em relativamente pequenos blocos independentes.

Formato de arquivo flexível: Os formatos JP2 e JPX permitem manusear a informação de cor-espaço, metadata, e interatividade em aplicações em rede como foi desenvolvido no protocolo JPEG Part 9 JPIP.

Informação espacial de Side channel: suporta totalmente transparência e planos alpha.




Formato GIF

Sigla para Graphics Interchange Format, o GIF é outro formato bastante popular na internet. Foi criado pela CompuServe em 1987 e, assim como o JPEG, gera arquivos de tamanho reduzido, no entanto, seu uso não é muito comum em fotografias, já que é capaz de trabalhar com apenas 256 cores (8 bits). Assim, sua utilização é muito comum em ícones, ilustrações ou qualquer tipo de imagem que não necessita de muitas cores.
Há, no entanto, uma característica que faz o formato GIF ser conhecido até os dias de hoje: graças a uma revisão realizada em 1989, o padrão passou a ter a capacidade de suportar animações. Em outras palavras, o GIF passou a permitir a inserção de uma sequência de imagens em um único arquivo. Assim, quando um GIF nesta condição é exibido, cada uma das imagens inseridas é mostrada seguindo uma ordem, dando ao usuário a sensação de movimento.
Exemplo de GIF animado 
Exemplo de GIF animado
O formato GIF ainda tem outro diferencial: é capaz de permitir um efeito conhecido como fundo transparente. Isso significa que um arquivo GIF pode ter áreas da imagem que assimilam a cor do local onde está sendo exibido, como se fosse, de fato, uma transparência. Por exemplo: se uma imagem GIF estiver sendo mostrada em uma página Web com fundo verde, as áreas “transparentes” do arquivo serão mostrados na mesma cor.
O GIF também utiliza compressão, mas esta não causa perda de qualidade, mesmo se a imagem for guardada várias vezes. Aqui, há uma curiosidade: o algoritmo de compressão mais comum do GIF é o Lempel-Ziv-Welch (LZW), cuja patente pertencia à Unisys. Aparentemente, a CompuServe não sabia disso. Como consequência, em 1995, a Unisys passou a cobrar empresas responsáveis por programas de edição de imagens pelo uso do algoritmo em questão. A patente expirou em 2003, fazendo com que a cobrança não fosse mais permitida.
A extensão dos arquivos no formato GIF é .gif. Por exemplo: infowester.gif.


Formato PNG

O formato PNG, sigla para Portable Network Graphics, é um dos padrões mais recentes, com a sua primeira especificação surgindo em 1996. Seu desenvolvimento foi motivado, em parte, pela restrição de patente existente no formato GIF, conforme explica o tópico anterior.
O PNG reúne, portanto, as características que tornaram o GIF tão bem aceito: animação, fundo transparente e compressão sem perda de qualidade, mesmo com salvamentos constantes do arquivo. Porém, conta com um grande diferencial: suporta milhões de cores, não apenas 256, sendo, com isso, uma ótima opção para fotos.
No aspecto da animação, o PNG, por si só, não possui tal capacidade. O que acontece é que há uma variação chamada APNG (Animated Portable Network Graphics) que permite essa característica. O esquema é o mesmo do padrão GIF: uma sequência de imagens inseridas em um único arquivo. No caso, a primeira imagem é um arquivo PNG "normal", que é exibido em situações onde, por algum motivo, a animação não pode ser executada. Há também uma variação chamada MNG (Multiple-image Network Graphics) que possui a mesma finalidade.
Imagens no formato PNG possuem extensão .png, mesmo nas variações de animação, embora, neste último caso, possa ser utilizado também nomes com .mng e .apng.
O PNG é um formato livre, criado desde o início para ser utilizado em qualquer aplicação sem necessidade de pagamentos de licenças ou afins. Sua utilização é apoiada pela W3C.


Comparativo entre JPEG, PNG e GIF

As imagens a seguir são oriundas da mesma foto e estão, respectivamente, nos formatos JPEG, PNG e GIF:
Imagem em JPEG 
Imagem em JPEG
Imagem em PNG 
Imagem em PNG
Imagem em GIF 
Imagem em GIF
Note que a imagem em JPEG tem qualidade aceitável para uma simples observação, mas se você observar bem, perceberá que a figura em PNG exibe detalhes com mais nitidez. Isso porque a primeira passou por um processo de compressão que reduziu bem o seu tamanho, mas comprometeu um pouco a sua qualidade. A segunda figura, em PNG, também passou por compressão, mas não perdeu qualidade.
Como a imagem original é rica em cores, perdeu bastante qualidade quando foi convertida para GIF, deixando claro que o formato não é adequado para fotos como essa.
Quando as três imagens são ampliadas, as diferenças ficam mais visíveis:
Comparativo entre GIF, JPEG e PNG 
Comparativo entre GIF, JPEG e PNG


Outros formatos de imagens


Os formatos JPEG, PNG e GIF são os mais utilizados, principalmente na internet, mas obviamente, não são os únicos. A seguir você confere uma breve descrição de alguns padrões conhecidos, mas menos utilizados.

Formato Bitmap

Bitmap é um dos formatos de imagens mais antigos e também um dos mais simples. Bastante utilizado nos sistemas operacionais Microsoft Windows, as imagens neste formato podem suportar milhões de cores e preservam os detalhes.
No entanto, os arquivos neste padrão costumam ser muitos grandes, já que não utilizam compressão. Isso até é possível em imagens com 256 cores ou  menos, mas não é comum.
Arquivos em Bitmap podem ter extensão .dib (Device Independent Bitmap) ou BMP (este último, padrão do Windows) e não suportam “fundo transparente”.

Formato TIFF

Sigla para Tagged Image File Format, o TIFF consiste em um formato muito utilizado em aplicações profissionais, como imagens para finalidades médicas ou industriais. Criado em 1986 pela Aldus, companhia posteriormente adquirida pela Adobe, também é muito utilizado em atividades de digitalização, como scanner e fax, o que, na verdade, motivou o seu desenvolvimento.
O formato TIFF oferece grande quantidade de cores e excelente qualidade de imagem, o que aumenta consideravelmente o tamanho dos seus arquivos, embora seja possível amenizar este aspecto com compressão sem perda de informações.
Um detalhe interessante é que o formato TIFF suporta o uso de camadas, isto é, pode-se utilizar versões diferenciadas da imagem a ser trabalhada em um único arquivo.
Imagens em TIFF geralmente utilizam extensão .tif ou .tiff e suportam "fundo transparente".

Formato RAW

O formato RAW (traduzindo, algo como "cru") é um pouco diferente dos demais. Trata-se de um padrão que guarda todos os dados de uma foto, tal como esta foi gerada na câmera digital, sem aplicação de efeitos ou ajustes. Por causa disso, oferece alta qualidade de imagem e maior profundidade de cores. É claro que quando uma foto RAW é comprimida pode haver perda de qualidade, mesmo que ligeira. Apesar disso, essa opção muitas vezes é considerada, já que imagens neste padrão costumam resultar em arquivos grandes.
Boa parte das câmeras permite ao usuário escolher o formato das fotografias, sendo o formato RAW uma opção. E por qual motivo escolhê-lo? Como os arquivos neste padrão são “puros”, o editor tem a liberdade de utilizar a imagem do jeito como foi capturada e aplicar seus próprios efeitos ou ajustes. O resultado final pode ser uma foto belíssima, mesmo quando esta for, posteriormente, convertida para um formato mais “usável”, como JPEG ou PNG. Isso faz com que o RAW seja apelidado de “negativo das câmeras digitais”, embora não seja necessariamente isso.
Arquivos no formato RAW admitem várias extensões. Isso porque cada fabricante de câmera digital trabalha com as suas próprias especificações.

Formato SVG

SVG é a sigla para Scalable Vector Graphics e, tal como o nome indica, trabalha com imagens vetoriais. Trata-se de um formato aberto, desenvolvido pela W3C e que surgiu oficialmente em 2001. Em vez de ser baseado em pixels, isto é, os “pontinhos” que formam as imagens, tal como nos padrões mostrados anteriormente, o SVG utiliza a linguagem XML para descrever como o arquivo deve ser.
Graças a isso, o SVG consegue trabalhar bem tanto com figuras estáticas quanto com imagens animadas. Além disso, por ser um padrão vetorial, imagens no formato podem ser ampliadas ou reduzidas sem causar perda de qualidade.
Arquivos neste formato têm extensão .svg ou .svgz e suportam efeitos de transparência. Saiba mais emwww.w3.org/Graphics/SVG.


E o formato WebP?

Talvez você ouça falar muito do WebP. Ou não. Trata-se de um formato de imagens apresentado pelo Google em outubro de 2010 que tem a proposta de permitir a geração de arquivos com tamanho reduzido e, ao mesmo, boa qualidade de imagem.
Para isso, o padrão utiliza um esquema de compressão que faz com que a perda de qualidade seja a menor possível aos olhos humanos. De acordo com o Google, esse método é capaz de gerar arquivos quase 40% menores que imagens em JPEG.
O Google decidiu desenvolver o WebP porque, de acordo com suas pesquisas, cerca de 65% dos dados que circulam na internet correspondem a imagens, sendo que, destas, 90% estão no padrão JPEG. Portanto, a adoção plena de um formato mais leve diminuiria a quantidade de dados trafegados e reduziria gastos com armazenamento e processamento, assim com deixaria o carregamento de páginas Web mais rápido.
O problema é que o JPEG é um formato tão difundido que será uma tarefa difícil substituí-lo. Saiba mais sobre WebP emcode.google.com/speed/webp.


Finalizando

Diante de tantas opções, qual formato de imagem escolher? Como você viu no decorrer do texto, cada padrão tem uma proposta, uma finalidade, sendo assim, o mais importante de tudo é saber o que cada formato pode oferecer para que você possa fazer a escolha mais apropriada à sua necessidade.
Fontes:
Emerson Alecrim - Publicado em 15/05/2011 - Atualizado em 01/08/2011
Wikipédia  de 13 de abril de 2010.
Jefferson Rodrigue
Autor: Jefferson Rodrigues Luz,  18/10/2011
jefrodluz@hotmail.com