
Fico decepcionado, quando vejo alguns cursos por ai ensinando os alunos a voarem sem antes explicar o funcionamento da aeronave, imagine só quando esse aluno tiver que enfrentar uma turbulência, rsrsrs. Será que vai sobrar alguém vivo pra a contar a história?, principalmente com alguns cursos que envolvem o entendimento de cores, luz, etc., mas que de certa maneira não abordam esse assunto. Pensando nisso resolvi escrever esse meu artigo para falar um pouco sobre as cores e seus formatos, procurei falar de uma forma rápida e objetiva, sem entrar muito em detalhes, mas que também seja compreensível a todos.
As cores são criadas nas telas dos computadores por meio de uma mistura apropriada de intensidades de vermelho, verde e azul – RGB, ou “argy bee” (a pronúncia em inglês), se você, vou falar aqui de uma forma mais simplista para o artigo não ficar muito extenso.
Uma imagem de computador é composta por linhas e mais linhas de minúsculos pon-tos chamados pixels, sendo que cada pixel de uma imagem pode ser analisado como com-posto pela intensidade de 0 a 255 de verlmelho (Red), 0 a 255 de verde (Green) e 0 a 255 de azul (Blue). Então temos 256 x 256 x 256, isso dá um total (multiplicado) de 16.777.216 cores possíveis para um pixel – provavelmente o suficiente para o design ou a pessoa mais exigente em matéria de imagens de computador. Aliás, um pixel é o menor detalhe possível que se pode colocar em uma imagem, embora não seja necessariamente o menor detalhe que a tela do monitor pode exibir. Em outras palavras, a relação entre um pixel e um daque-les pontos RGB triangulares depende do monitor.
Qual a implicação disso tudo no armazenamento de imagens como arquivos de da-dos? Um exame superficial já permite calcular. São necessários 24 bits para armazenar um número que possa ser qualquer coisa entre 0 (zero) e 16.777.215. É por isso que uma ima-gem com milhões de cores é freqüentemente citada como uma imagem com “24 bits” (co-res de 24 bits), ou “true colors” (cores verdadeiras). Como 24 bits equivalem a 3 bytes, uma imagem de computador que tenha 600 pixels de largura por 300 pixels de altura correspon-de a um arquivo de dados com 600 x 300 x 3 bytes, ou seja, um pouco mais que meio me-gabyte. O que na época dos disquetes ou mesmo do acesso discado era uma tortura.
É igualmente fácil, evidentemente, calcular quantos arquivos desses lotariam rapida-mente o seu disco rígido e, ainda mais essencial quanto tempo demoraria a transmissão de um arquivo de imagem desses. É devido a esses fatos indigestos da vida que surgiu a neces-sidade de se reduzir às exigências de armazenamento de uma imagem de computador. Ora, como muitas pessoas brilhantes trabalharam nesse problema por muitos anos, e todas elas pensavam que haviam descoberto o melhor “algoritmo de compressão”, hoje em dia temos muitos formatos de imagens diferentes.
Relação de troca entre Compressão vs Qualidade
Uma solução para o problema é armazenar a informação com base não no valor RGB exato de cada pixel, mas na diferença de cada pixel com relação aos seus vizinhos. Alguns algoritmos como esse são “perfeitos”, significando que nenhuma informação de cor é perdida em troca de um certo grau de compressão. Outros conseguem maiores taxas de compressão, mas aceitam que alguma informação seja perdida – isso é conhecido como compressão com perda.
Outra solução, mais radical, é alguma forma de redução da paleta de cores – o que significa, literalmente: “Nós temos que trabalhar com menos do que 16 milhões de cores!”. Afinal, muitos sistemas de cores nos PCs somente podem exibir 256 cores de cada vez (embora os sistemas de “cores verdadeiras” com 24 bits sejam comuns nos MACs, e os de 32 bits de cor, sejam a última moda no mundo dos PCs). Se pegarmos a nossa imagem de 600 x 300 pixels e reduzirmos sua paleta para apenas 256 cores, iremos precisar então de 1 byte somente por pixel (isso é “cor de 8 bits”), caindo o tamanho do arquivo para 180 Kbytes, algo bem mais em conta e manejável. Em muitos casos, a redução da paleta por um fator de 65.000 vezes não é tão devastador quanto possa parecer.
GIF ou JPEG ?
Os dois formatos de arquivos de dados mais usados no design de páginas Web, o GIF e o JPEG, representam quase que os extremos daqueles dois métodos usados para fazer frente ao problema do tamanho dos arquivos gráficos. O JPEG, um formato inventado por um comitê chamado de Joint Photographic Experts Group, adota a compressão com perda. Além disso, ele permite ao usuário a escolha do nível desejado da troca de qualidade por espaço de armazenamento. Usando a compressão JPEG, a maioria das imagens pode ser comprimida até 20:1 sem uma perda de qualidade perceptível; algumas podem chegar a 50:1 e, se a “qualidade tipo previsão” for aceitável, compressões de até 100:1 são possíveis.
A filosofia do formato GIF, o formato Graphics Interchange Format inventado pela CompuServe (e conhecido como formato CompuServe em alguns programas), usa cores de 8 bits com um pouco de compressão e um truque, O truque é que, embora cada imagem use apenas 256 cores, a paleta de cores é adaptada para aquela imagem específica. Assim, ainda há 16 milhões para escolher, embora somente sejam usadas 256 delas em cada imagem. Ao se converter uma imagem para o formato GIF, o software decide quais as 256 cores que representarão melhor essa imagem, arrumando-as em um índice que é armazenado no cabe-çalho do arquivo. Assim, a cor #1 poderia ser um tom de laranja, a cor #2 um azul real etc. Reproduzir a imagem é como pintar com números – pixel #12.220 é a cor #3 e assim por diante. Esse esquema é conhecido como cores indexadas em oposição ao de “cores verda-deiras”.
A compressão adicional que é imposta nos GIFs, além do esquema de cores indexa-das, é a LZW – essa é a parte que tem causado tantas controvérsias devido às disputas de patente. Basicamente, o trabalho LZW original foi elaborado por Lempel, Zev e Welch na Sperry Corporation no início da década de 80, tendo sido patenteado legitimamente. Em 1986, Sperry uniu-se à Unisys, que herdou a patente. Um ano depois, a CompuServe de-senvolveu o processo GIF usando a compressão LZW, Tudo parecia ir bem durante muitos anos, pois a CompuServe dizia que não tinha conhecimento da patente do LZW, e a Unisys dizia que não estava ciente do formato GIF da CompuSeve. No final de 1994, porém, a Unisys anunciou repetinamente que tinha a intenção de defender a sua patente, provocando indagação geral na comunidade Web.
Com a situação agora mais resolvida, fica claro que, como usuários de tecnologia, os designers da Web não precisam temer que algum sinistro advogado da Unisys bata à sua porta no meio da noite. Agora, se você quiser desenvolver um novo visualizador de GIFs, aí é outra história. Essa confusão toda deixou muita gente com uma certa antipatia a esse for-mato, o que, somado aos especialistas que consideravam os dias do formato GIF contados por motivos técnicos, acelerou o desenvolvimento de coisas mais novas e melhores.
O Problema das Imagens In-line
Você pode pensar que o JPEG, devido à sua compressão superior, seja o formato pre-ferível para imagens in-line com muitas cores e que o formato GIF deva ser usado apenas para imagens com desenhos, certo? Bem, sem dúvida a Web está indo nessa direção, mas você ainda vê GIFs em situações em que o JPEG deveria ser a opção mais adequada, embo-ra as razões sejam complicadas.
Além disso, o formato GIF foi o primeiro a oferecer algumas técnicas muito intere-santes, como o entrelaçamento e a transparência. Nem todas essas técnicas são possíveis com o JPEG – ainda. Do jeito que as coisas vão indo, as cores de 24 bits estarão presentes na grande massa de usuários de PCs, deixando os formatos GIF87a e GIF89a para a história e transferindo a linha de batalha para um novo formato, o PNG.
Além disso, o formato GIF foi o primeiro a oferecer algumas técnicas muito intere-santes, como o entrelaçamento e a transparência. Nem todas essas técnicas são possíveis com o JPEG – ainda. Do jeito que as coisas vão indo, as cores de 24 bits estarão presentes na grande massa de usuários de PCs, deixando os formatos GIF87a e GIF89a para a história e transferindo a linha de batalha para um novo formato, o PNG.
O Formato PNG
Bom, pelo que parece os dias do formato GIFs estão contados, nem tanto por causa das controvérsias legais quanto devido à restrição de 8 bits para as cores. Por outro lado, o JPEG nunca vai preencher o espaço deixado pelo GIF, porque perde qualidade e nunca vai poder ser “transparente” (veremos isso daqui a pouco). Não seria o momento de algum gê-nio pensar em um formato de imagens destinado especificamente para a Web, com todos os recursos que os designers Web procuram?
Surpresa, surpresa – não fomos os primeiros a pensar nisso. Os desenvolvedores do formato Portable Network Graphics (PNG) brincam dizendo que a principal vantagem do seu formato sobre o GIF é que todos sabem como pronunciá-lo (é “ping”, enquanto nin-guém realmente sabe se GIF se pronuncia “giff” ou jiff”). Tecnicamente, suas vantagens são:
Surpresa, surpresa – não fomos os primeiros a pensar nisso. Os desenvolvedores do formato Portable Network Graphics (PNG) brincam dizendo que a principal vantagem do seu formato sobre o GIF é que todos sabem como pronunciá-lo (é “ping”, enquanto nin-guém realmente sabe se GIF se pronuncia “giff” ou jiff”). Tecnicamente, suas vantagens são:
30% a mais de compressão com menos perda.
Cores de até 48 bits, 16 bits para os tons de cinza.
Entrelaçamento em 7 passos bidimensional.
Declaração de transparência superior.
Verificação de erros.
O PNG foi desenvolvido por um consórcio de entusiastas da computação gráfica, in-cluindo um grupo da NASA e um grupo W3, como uma resposta direta à controvérsias sobre a patente do formato GIF.
Espero que eu tenha sido claro e breve… abraço a todos e até a próxima!!
seja o primeiro a comentar!