Embed
Email

documento

Document Sample

Categories
Tags
Stats
views:
23
posted:
11/2/2011
language:
pages:
23
UNIVERSIDADE FEDERAL DE PERNAMBUCO

CENTRO DE INFORMÁTICA – CIn

INTRODUÇÃO À MULTIMÍDIA – IF687









JPEG, GIF ANIMADO E EDITORES









ALEXANDRE BARZA (ab@cin.ufpe.br)

CASSIO DE ALBUQUERQUE MELO (cam2@cin.ufpe.br)

EDMAR CASSIANO PRISCO (ecp@cin.ufpe.br)

THIAGO JOSÉ MOREIRA LINS (tjml@cin.ufpe.br)









21 DE AGOSTO DE 2006.

JPEG, GIF animado e editores



Sumário





1. Introdução JPEG - Motivação

2. Objetivos

3. História (e curiosidades)

4. Funcionamento

5. Aplicações

6. Ferramentas









1. Introdução GIF - Motivação

2. Objetivos

3. História (e curiosidades)

4. Funcionamento

5. Aplicações

6. Ferramentas





Conclusão









2

JPEG



1. Introdução





O uso de imagens no computador é cada vez mais comum e essencial para as diversas

atividades. O uso das figuras pode representar uma maneira de transmitir ideias, como uma

forma de esclarecer determinados assuntos que até então seria incompreensíveis se não

houvesse o mesmo. As figuras são dados que podem assumir uma característica peculiar a

determinado contexto. Na construção de um site, por exemplo, o seu uso pode ser meramente

decorativa, ou então um meio de comunicação ou qualquer outra caracteristica que possa

representar. A presença da tecnologia para o formato de imagens vem contribuindo para a sua

diferenciação nos diversos tipos de arquivos. Uma imagem é formada por uma série de pontos

(pixels) na horizontal e na vertical. Para poder transmitir eletronicamente ou arquivar uma

imagem, é preciso gravá-la num ficheiro, segundo um certo padrão, de modo a poder restaurá-

la posteriormente. Ao longo dos anos, foram desenvolvidos muitos padrões, de acordo com as

necessidades ou interesses comerciais de empresas ou instituições. Muitos destes formatos,

tais como: GIF, BMP, TIFF e JPEG, estão disponíveis na maioria dos programas gráficos.





O formato JPEG (Joint Photographers Expert Group) é um tipo de arquivo para

armazenamento de imagens que pode trabalhar com esquema de cores de 24 bits, ou seja,

esse formato aceita 16,8 milhões de cores. Ele foi criado em por um comitê para projetar a

compressão de imagens de sujeitos reais, tais como fotos, tanto coloridas quanto em escala de

cinza. O JPEG tem como característica intrínseca a perda de qualidade da imagem, ou seja,

uma imagem descomprimida não é exatamente igual à original.





2. Objetivos





O JPEG surgiu com o propósito de comprimir imagens. Ele utiliza um algoritmo de

compactação que se baseia na capacidade do olho humano. No entanto, mesmo sabendo-se

que arquivos em JPEG podem trabalhar com até 16,8 milhões de cores, o olho humano não é

capaz de enxergar todas elas de uma vez. Assim, é possível tirar uma série de informações

que representam cores em imagens e manter apenas aquelas visíveis ao olho humano. Em

outras palavras, o formato JPEG exclui da imagem aquilo que os humanos não conseguem

ver. Esse processo é conhecido como compressão. Isso faz com que imagens bastante

realistas sejam criadas, ao mesmo tempo em que esses arquivos não ficam pesados. Algo

interessante no JPEG, é que os arquivos podem ter diferentes níveis de compressão.Quanto

mais compressão, menor o tamanho do arquivo. Porém, quanto maior a compressão, maior

será a perda de informação. O JPEG é muito eficiente em imagem de tons contínuos, tais

como fotografias, e menos eficiente em gráficos ou line art, onde a quantidade de tons

diferentes é menor. O formato JPEG é adequado para distribuir imagens que tenham variações





3

de cor suaves. É quase sempre a escolha acertada para distribuir fotografias na Internet. Ele

não funciona bem com imagens que tenham transições rápidas de cor, como linhas muito bem

definidas e áreas de cor uniforme. Ele tende sempre a suavizar as variações de cor.





O JPEG permite graus de compressão de 10:1 a 20:1 sem perdas visíveis na qualidade da

imagem. Graus de compressão de 30:1 a 50:1 podem ser atingidos com perda moderada de

qualidade, enquanto imagem com qualidade baixa podem ser geradas permitindo uma

compressão de 100:1.Uma desvantagem do JPEG é que a imagem normalmente perde

qualidade a cada vez que o arquivo é salvo. Os arquivos em JPEG têm a extensão .jpg.





3. História





O Joint Photoghaphic Experts Group foi criado por um grupo de especialistas que resolveu

reunir-se para estabelecer um método de compressão de imagens adequado à representação

de fotografias, que gerasse ficheiros de tamanho reduzido. Surgiu então o JPEG ou

simplesmente JPG. Deve-se salientar que não existe o formato JPEG,pois este é um método

de compressão, apesar que no decorrer do documento, nos referimos JPEG também como um

tipo de formato. Em muitas fontes de pesquisa sobre JPEG, alguns autores referem a ele tanto

como formato, como um método de compressão. Tecnicamente, a imagem que chamamos de

JPEG deveria ser chamada de JFIF (JPEG File Interchange Format), ou seja, imagem JFIF

comprimida em JPEG. A compressão em JPEG utiliza sempre um processo destrutivo (à

exceção do JPEG2000), no qual as cores dos pixels são trocadas por outras, de forma a

simplificar a imagem e obter um ficheiro reduzido. Por ser destrutivo, raramente é utilizado em

aplicações em que a qualidade máxima é esperada.





4. Funcionamento





4.1 Transformação do espaço de cores (color space transformation)





Primeiramente, a imagem é convertida do padrão RGB, para um espaço de cores diferente,

chamado de YCbCr. Este padrão é similar, por exemplo, aos padrões de cores NTSC e PAL-M,

que são usados para transmissão em sinais de televisão, mas tem um comportamento

parecido com o sistema de transmissão MAC.





 O componente Y representa o brilho (brightness) de um pixel;

 Os componentes Cb e Cr juntos representam a variação de cores (chrominance) de

cada pixel.









4

Este sistema de codificação é útil porque o olho humano pode ver mais detalhes no

componente Y do que nos componentes Cb e Cr. Partindo deste princípo, os codificadores

podem realizar a compressão de imagens de uma forma mais eficiente.





4.2 Downsampling





O olho humando pode ver mais detalhes no componente Y do que nos componentes Cb e Cr.

Usando este conhecimento, os codificadores podem ser projetados para comprimir imagens de

uma maneira mais eficiente. A transformação acima habilita o próximo passo, que é o de

"reduzir" os componentes (esta operação é chamada de "downsampling"). As razões de

compressão que podem ser usadas com o "downsampling" são 4:4:4 (sem downsampling),

4:2:2 (a redução a um fator de 2 na direção horizontal), e a mais comum que é a razão 4:2:0

(redução a um fator de 2 nas direções horizontal e vertical). Para o resto do processo de

compressão, Y, Cb e Cr são processados separadamente e de uma maneira bastante similar.





4.3 Discrete cosine transformation (ou "transformação discreta de cosseno")





A seguir, cada componente (Y, Cb, Cr) da imagem é "cortado" em seções de oito por oito pixels

cada, então cada pedaço é convertido para o espaço de frequência usando uma transformação

discreta de cosseno bi-dimensional (DCT, tipo II). O exemplo a seguir ilustra melhor este

processo:









5

A matriz é transformada por 128 resultados em:









E então, recebe a transformação, e tem seus valores arredondados para o inteiro mais

próximo, em:









Observe o maior valor da matriz, localizado no canto esquerdo, ao topo. Este valor é chamado

de coeficiente de transformação.





4.4 A operação de quantização





O olho humano é muito bom para captar pequenas diferenças quanto ao brilho sobre uma

determinada área de uma imagem, mas não é tão bom para distinguir a força exata de uma

variação de brilho de alta freqüência. Este fato permite a redução de informação dos

componentes. Isto é feito simplesmente dividindo cada componente no domínio de freqüência,

por uma constante para aquele componente, e então realizando aproximações para o inteiro

mais próximo. Esta é a operação que sofre mais perdas em todo o processo. Como resultado

da operação, é tipicamente o caso em que muitos dos componentes de alta freqüência sofrem

aproximação para zero, e muitos do resto se tornam números positivos ou negativos de valor

pequeno.







6

Uma matriz de quantização bastante comum é:









Usando essa matriz de quantização com o coeficiente da transformação apresentada no item

anterior, teremos como resultado a seguinte matriz:









Por exemplo, usando -415 como o coeficiente de transformação, e arredondando para o inteiro

mais próximo:









4.5 Codificação entrópica





A codificação entrópica é uma forma de compressão de dados sem perdas. Esta operação

envolve o arranjo dos componentes da matriz numa ordem alternada (em "zigue-zague"),

obedecendo a especificação do algoritmo RLE, que envolve o agrupamento de freqüências

similares, inserindo zeros na codificação, e depois é aplicada a codificação de Huffman nos

componentes restantes. O padrão JPEG também permite, mas não requer, o uso de

codificação aritmética, que é matematicamente superior à codificação de Huffman. Entretanto,

esta característica é raramente usada pelo fato de ser protegida por patentes, e também





7

porque seu desempenho deixa a desejar quanto à codificação e decodificação, comparada

com a codificação de Huffman. A codificação aritmética também torna os arquivos cerca de 5%

menores.





Como exemplo, vamos tomar a matriz obtida como resultado na operação de quantização. A

seqüência de zigue-zague dos seus elementos, será algo igual a:





-26, -3, 0, -3, -2, -6, 2, -4, 1, -4, 1, 1, 5, 1, 2, -1, 1, -1, 2, 0, 0, 0, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.





JPEG tem uma codificação especial de palavras de Huffman para finalizar a seqüência

prematuramente quando os coeficientes restantes são iguais a zero. Usando a seguinte

palavra, EOB, a seqüência fica dessa forma:





-26, -3, 0, -3, -2, -6, 2, -4, 1, -4, 1, 1, 5, 1, 2, -1, 1, -1, 2, 0, 0, 0, 0, 0, -1, -1, EOB.





As outras palavras-código de JPEG representam as combinações de (a) o número de bits

significantes de um coeficiente, incluindo sinais, e (b) o número de coeficientes consecutivos de

valor igual a zero subseqüentes. (Uma vez que você sabe o número de bits esperados, é gasto

apenas um bit para representar as escolhas {-1, +1}, dois bits para representar as escolhas {-3,

-2, +2, +3}, e assim por diante.) No nosso exemplo, a maioria dos coeficientes quantizados são

números pequenos, que não são seguidos imediatamente por um coeficiente de valor igual a

zero. Estes casos mais frequentes serão representados por pequenas palavras-código. O

padrão JPEG fornece tabelas de Huffman de propósito-geral; e os codificadores também

podem escolher por gerar tabelas de Huffman otimizadas para as distribuições reais de

frequência nas imagens que estão sendo codificadas.





4.6 Artefatos e taxas de compressão





A taxa resultante de compressão pode ser variável de acordo com a necessidade de ser mais

ou menos agressivo nos divisores usado na fase de quantização. A taxa de compressão de dez

para um normalmente resulta numa imagem que não pode ser distinguida da original pelo olho

humano. A compressão de 100 pra um também é possível, mas parecerá distintamente

"artificial" comparada com a original. O nível apropriado de compressão depende do uso a que

a imagem se submeterá.





O usuários da internet podem estar familiarizados com as irregularidades conhecidas como

"artefatos de compressão" que aparecem nas imagens digitalizadas JPEG. Estas

irregularidades são devido à operação de quantização no algoritmo de JPEG. São notadas

especialmente na região dos olhos, em fotografias de rostos. Elas podem ser reduzidas









8

escolhendo um nível baixo de compressão; elas podem ser eliminadas salvando uma imagem

num formato de arquivo sem perdas, embora, para imagens fotográficas, isso resulte num

arquivo de grande tamanho. Os artefatos de compressão fazem dos JPEGs de baixa qualidade

inapropriados para armazenar mapeamentos de relevo. As imagens criadas com programas de

ray-tracing apresentam formas irregulares no terreno.





Alguns programas permitem ao usuário variar a taxa de compressão de cada bloco de imagem.

Compressão mais poderosa é aplicado à áreas da imagem que mostram menos artefatos.

Desta forma, é possível fazer um arquivo de tamanho pequeno, porém com boa qualidade.





4.7 Decodificação





A decodificação para a exibição da imagem consiste em fazer todos os passos acima na ordem

inversa.





 Tomando o coeficiente de transformação da matriz (após adicionar a diferença do

coeficiente de transformação de volta):









 Multiplicando a matriz anterior pela matriz de quantização, teremos como resultado:









9

 Isto lembra a matrix do coeficiente de transformação. Tomando o inverso do coeficiente

de transformação, teremos como resultado uma imagem com os valores a seguir:









 Feito isso, adicionamos 128 a cada entrada da matriz:









 Esta é a representação da sub-imagem descomprimida e pode ser comparada com a

representação da sub-imagem original tomando a diferença dos resultados (original -

descomprimida) nos valores dos erros.









10

 O "erro" na sub-imagem se torna mais visível na parte mais à esquerda da imagem,

onde os pixels se tornam mais escuros do que o pixel que vem imediatamente à direita.





5. Aplicações





5.1 Uso de JPEG





JPEG desempenha melhor suas funções, em fotografias, e pinturas de cenas realísticas, com

variações suaves, de tonalidade e cor. Neste caso, normalmente tem resultados muito

melhores do que os métodos de compressão sem perdas, enquanto continua fornecendo uma

imagem de boa qualidade. Na verdade, acabará produzindo resultados muito melhores para

imagens do tipo GIF, que pode ser sem perdas enquanto a imagem contenha 256 cores ou

menos, mas requer severa quantização para imagens com um grande número de cores.





Algumas operações em imagens JPEG, tais como rotações por múltiplos de 90º, podem ser

feitas sem perdas, contanto que a imagem seja um múltiplo de oito pixels em ambas as

direções. Um programa que é capaz de fazer isso, é o utilitário jpegtran que vem na

implementação de JPEG.





JPEG tem um campo de atuação bastante abrangente, como mostra a lista a seguir:





 Na internet, é o formato padrão para a exibição de imagens. Atualmente, tem

começado a perder espaço para formatos como o PNG, que realiza compressões sem

grandes perdas e mantêm arquivos com um tamanho similar ao JPEG.





 Quase todos os equipamentos de fotografia digital vendidos nos últimos 10 anos

suportam o formato JPEG (DCT). O padrão atual continuará a ter uma grande parte no

mercado de fotografia digital. É esperado que o padrão JPEG continue contribuindo

para o mercado, enquanto que as câmeras fotográficas digitais continuam a se

aperfeiçoar.





 JPEG possui muitas características que são bastante utéis para outro de seus muitos

mercados alvo, o da medicina. Um aspecto principal que frequentemente preocupa a

área médica é a necessidade de assegurar que as imagens são geradas sem perdas,

sem nenhuma distorção por parte dos algoritmos de compressão, o que poderia levar a

um erro na análise do paciente. Isso acaba resultando em arquivos grandes, os quais

se tornam difíceis de armazenar, e editar. JPEG pode ser usado para codificar

totalmente (ou parcialmente) sem perdas, e fornece uma boa performance de

compressão para este propósito.









11

 Os sistemas de comunicação sem fio (wireless), possuem seu próprio conjunto de

problemas. Mais especificamente, os protocolos de comunicação sem fio são

caracterizados pela frequente ocorrência de erros ao longo de sua rede de banda

estreita. Sendo assim, é posta uma grande compressão na transmissão de imagens.

Uma vez que JPEG fornece alta qualidade na compressão de dados, é um bom

candidato para aplicações multimídia em redes sem fio. Mais à frente, graças a sua alta

escalabilidade, JPEG habilita uma grande variedade de estratégias de serviços para os

operadores de redes sem-fio.





 A questão de imagens para documentos sempre foi um meio-termo entre qualidade e

compressão. Com o aperfeiçoamento das tecnologias, e a transformação das cores,

em normas para a publicação de inúmeros formatos, então as expectativas de

qualidade também aumentaram. Embora haja freqüentemente um requisito para

visualizações de documentos na tela com maior eficácia, assim como a habilidade de

imprimir cópias de alta qualidade do original de um documento, os requerimentos de

compressão, são por vezes, conflitantes. Muitos documentos possuem áreas que são

melhor comunicáveis em formatos de codificação de textos (para assim, permitir uma

otimização na compressão e na indexação), junto com imagens de qualidade

fotográfica, gráficos e outros tipos de imagens.





 Pre-press é o processo usado para imagens que estão sendo preparadas para

impressão. Dois requerimentos chave desse processo são a fidelidade e a

consistência. No passado, a indústria de pre-press era dependente da compressão

sem perdas de imagens (por exemplo, usando formatos como EPS ou TIFF) e da

calibração de cores de todos os componentes no processo, usando luminosidade pré-

definida e condições de visualização para atingir melhores resultados. JPEG oferece

grandes oportunidades para a indústria de pre-press, para a substituição de seus

formatos atuais por aspectos mais avançados encontrados no JPEG, e para propôr que

seu conteúdo possa ser usado para publicações na Internet ou em qualquer outro

contexto. A mesma imagem em JPEG pode gerar miniaturas (thumbnails),

visualizações na tela e a impressão de material pronto, simplesmente truncando um

fluxo preparado de dados em diferentes pontos.





 Os sistemas de informação geográfica, também conhecidos pela sigla GIS, permitem a

análise e a visualização de múltiplas camadas de informação disposta espacialmente

associadas a uma locação ou região geográfica. O GIS permite que companhias e

entidades governamentais analisem facilmente o desenvolvimento, a manutenção e o

impacto imposto nas estradas, na vegetação, bem como nos recursos fornecidos pela

região (água, eletricidade, comunicação, sistema de tratamento de esgoto). GIS

também inclui mapas, informações sobre vetores, e um grande banco de dados de









12

imagens. A coleção de imagens é comumente alcançada através de sensores remotos

espalhados pela região. O monitoramento por sensores começou com a fotografia

aérea em meados do século 19 através do uso de balões. Aviões começaram a ser

usados para coletar informações a partir do século 20, e a primeira imagem tirada do

espaço foi a bordo da espaçonave Apolo em 1969. No começo dos anos 70, o primeiro

satélite de captura de imagens, o ERTS-1 coletou imagens do planeta Terra. As

imagens continuam a ser coletadas seja do espaço, ou por aviões, e estão disponíveis

para uso comercial e pessoal na Internet. O desafio para os sensores de

monitoramento e outras aplicações é principalmente o tamanho de cada imagem.

Atualmente, é comum ter imagens que são maiores que 10000 por 10000 pixels,

bandas múltiplas e maiores do que 8 bits por pixel por banda. Enquanto o JPEG está

atualmente sendo usado para a coleta, armazenamento e entrega de diversas

aplicações e sistemas de sensores de monitoramento remoto, outras técnicas de

compressão se tornaram populares graças à grande eficiência de armazenamento e

acesso de arquivos com um tamanho grande. Os requerimentos originais para o JPEG

incluem requerimentos dos sensores de monitoramento que foram satisfeitos. Grandes

profundidades de cor, resoluções, qualidade e acesso rápido a localizações espaciais

contribuem para a capabilidade e a funcionalidade do JPEG, que o torna uma

tecnologia ideal para sistemas de monitoramento e aplicações GIS. Como um padrão

aberto, é esperado que o JPEG prevaleça nas aplicações e nos sistemas de

monitoramento remoto.





 Muitas instituições de patrimônio cultural, tais como museus e galerias de arte

possuem coleções bastante extensas que não são abertas para a apreciação do

grande público, graças a capacidade de exibição dentre outras razões. Projetos, como

o "NOF-Digitise" no Reino Unido com um orçamento que ultrapassa os $80 milhões,

estão sendo criados para fornecer recursos para aprendizado on-line, e outras

soluções para o acesso global. Desastres naturais como o fogo, terremotos e

enchentes, bem como os problemas causados pela guerra, vandalismo e terrorismo

mostram a necessidade de preservar este tipo de informação da forma mais eficaz

possível, caso contrário, todo este patrimônio pode ser pedido permanentemente.

Adicionalmente, é criticalmente importante o uso de padrões amplamente adotados

que possuem alguma chance de longecidade em vista das constantes mudanças

técnologicas. O padrão original JPEG foi criado para tentar indexar muitas das áreas

que preocupam aos encarregados dos setores de Patrimônio histórico. Dentre elas,

estão, os principais:









o Compressões sem perdas de alta qualidade, e com total gerenciamento dos

componentes cromáticos do documento em questão;









13

o Extensões para a criação de imagens 3D com as mesmas vantagens

propostas pelo JPEG;





 Um dos usos para JPEG será o de formato base de arquivos para coleções de

imagens e bancos de dados. Tradicionalmente, as coleções de arquivos armazenam

cópias múltiplas de arquivos individuais em resoluções variadas e níveis de qualidade

para que elas possam suportar dados apropriados da imagem a cada pedido.

Adicionalmente, os metadados considerados são mantidos em cada imagem para

permitir uma classificação e recuperação mais fácil. Os arquivos do tipo JPEG podem

ter metadados extensivos armazenados com eles, num ambiente padrão XML.

Enquanto um metadado de um banco de dados pode ser distribuído para os seus

usuários, isto permite o intercâmbio dos arquivos de imagem com metadados entre os

bancos de dados, e exclui a necessidade de uma nova entrada de dados quando é

feita uma nova catalogação de imagens. Adicionalmente, os arquivos podem ser

armazenados em alta qualidade num ambiente facilmente gerenciável e sem perdas,

com conversão para uma resolução mais baixa.





 Um problema principal, pelo menos para o usuário de PC, em vez de um Apple

Macintosh, tem sido a dificuldade de combinar padrões apropriados do escaneamento

de imagens, das câmeras digitais, e de outros dispositivos de captura, para as telas de

monitor e as impressoras. Embora tenha havido um considerável progresso na área, e

talvez seja possível trabalhar num ambiente com a calibração correta das cores, ainda

é quase impossível lidar com muitos dos arquivos que o usuário recebe de uma

maneira eficaz e segura. Com a chegada do JPEG, a situação mudou um pouco, como

uma parte mandatória dos padrões requer que o equipamento gere arquivos JPEG

para definir com eficácia como a cor será tratada no arquivo. Enquanto as impressoras

e os scanners se tornam mais sofisticados, suas capacidades tendem a aumentar. Há

alguns anos atrás, 600 dpi era considerada uma resolução de alta qualidade para uma

impressora laser ou jato de tinta. Hoje, as impressoras capazes de imprimir fotografias

e custando menos de 100 dólares, podem ter resoluções que ultrapassam 4800x1200.

Os scanners também possuíam baixa qualidade - sendo um pouco maior do que uma

máquina de fac-símile, por exemplo - agora a maioria dos scanners usam pelo menos

36 bits para a representação de cores, ou mais. O seu formato de saída deve ser pré-

processado para 24 bits, que é o que a maioria dos monitores de PC e displays

suportam. O JPEG pode suportar esse tipo de resolução facilmente - mais importante,

graças à maneira com que o padrão foi projetado, é fácil de extrair uma versão de

baixa resolução da imagem para uma stream de dados JPEG para visualização ou

processamento iniciais, enquanto a imagem original é armazenada para impressão

subseqüente ou armazenamento. Adicionalmente, enquanto os dispositivos de









14

armazenamento vão ficando sem espaço livre, se torna apropriado começar a

comprimir as imagens de alta resolução para ganhar mais espaço, de maneira seletiva

ou automática. Um slide de 35 mm de uma câmera de qualidade, por exemplo pode ter

qualidade comparável a uma imagem de 48 bits de cor a uma resolução de 12

megapixels - isso são quase 72 megabytes. Usando qualquer forma de compressão

sem perdas (até mesmo o JPEG), isto normalmente requer cerca de 36 megabytes de

espaço para armazenamento.





6. Ferramentas





Falando-se de JPEG, tem-se uma gama infidável de aplicativos e/ou ferramentas, que lidam

com este tipo de formato de arquivo. Dentre as mais famosas estão os editores de imagens,

tais como o Adobe Photoshop, o Macromedia Fireworks, e o software aberto The GIMP, este

último disponível para diversas plataformas e sistemas operacionais, dentre eles, o Windows, o

Mac OS, e o Linux, entre outros.









15

GIF



1. Introdução





O formato GIF (Graphics Interchange Format) foi criado pela CompuServe em 1987. Ele

trabalha com uma paleta de 256 cores, o que o torna limitado para imagens reais (exceto se a

imgem for Preta e Branca com seus respectivos tons de cinza). Devido a esta característica, o

GIF é muito aplicado na produção de ícones e imagens simples.





Apesar de limitado, o GIF possui características interessantes como o fundo da imagem

transparente, ou seja, a cor de fundo da imagem será a cor de fundo de onde ela está inserida.

Outra característica interessante é a possibilidade de armazenar diversas imagens em um

único arquivo. As imagens são dispostas em seqüência e são exibidas uma após a outra de

acordo com um tempo pré-definido. Isso permite a criação de animações.





O formato de compressão do GIF não altera a sua qualidade a cada salvamento. Seu algoritmo

de compressão aliado à sua paleta reduzida produz imagens de tamanho reduzido e esta era

uma característica desejada na época onde as conexões não passavam de 56Kbps.





2. Objetivos





Mesmo com a popularização da banda larga, o tamanho dos downloads continua sendo crítico

na internet. Páginas muito pesadas causam sensações negativas entre os internautas devido a

lentidão. Além disso, páginas grandes podem se tornar caras caso o webmaster page por

unidade de dado transmitido.





O GIF nasceu objetivando fornecer imagens de alta resolução na internet com tamanho

reduzido. Na época, 1987, a taxa de transmissão na rede era baixa (a banda ainda é estreita

para muitos usuários).





Com exceção do SWF da Adobe, o GIF é o único formato de imagem com animação usado

amplamente. É muito utilizado para produzir pequenas animações e filmes de curta duração e

baixa resolução na internet.





A maioria dos logos e imagens básicas nas páginas da Web são GIF devido seu algoritmo de

compressão funcionar bem para imagens que tenham padrões repetitivos ou grandes blocos

de mesma cor.









16

3. História





O formato GIF foi criado em 1987 pela Compuserve com o objetivo de fornecer um formato de

imagem colorido para a sua área de download de arquivos visando substituir o formato anterior,

RLE, que era preto e branco. O GIF popularizou-se devido o seu algoritmo de compressão, o

LZW, ser mais eficiente que o de outros formatos gráficos da época como o PCX. Por ser mais

eficiente na compressão da imagem, o tempo de download de imagens GIF era bem menor

que o de outros formatos, principalmente se levar em consideração que o bitrate dos modens

da época era uma fração do que é atualmente.





A versão original do GIF foi denominada 87a. Em 1989, a Compuserve liberou uma versão

melhorada chamada de 89a que adicionou suporte a múltiplas imagens num só arquivo,

intercalamento (imagem mostrada em camadas) e a possibilidade de armazenar meta-dados

no cabeçalho do arquivo. Os seis primeiros bytes do arquivo guarda qual a versão que o

arquivo foi salvo, "GIF87a" ou "GIF89a".





Quando a WWW popularizou-se, o GIF juntamente com o XBM foram os formatos de imagem

mais utilizados. O GIF era colorido e o XBM preto e branco.





A versão 89a do GIF possibilitou o armazenamento múltiplas imagens em um único arquivo.

Essa facilidade é utilizada para montar pequenas animações. O intercalamento também foi útil

pois possibilitava o usuário ver prévias da imagem de modo que ele podia abortar o download

da mesma caso visse que não era a imagem que procurava. No início da década de 1990 essa

facilidade foi muito útil devido a baixa velocidade em que os dados trafegavam na rede. Um

ponto negativo do GIF é a sua limitação de cores num único arquivo, apenas 256. A

Compuserve impôs essa limitação por que na época poucos eram os usuários que tinham

acesso a monitores e a placas de vídeo capazes de mostrar 256 cores.





O algoritmo LZW utilizado pelo GIF era patenteado pela Unisys na época em que o GIF foi

desenvolvido pela Compuserve. Ela não sabia que o algoritmo estava sob uma patente. Com a

massificação da internet, em 1994, a Unisys descobriu que o GIF, na época um dos mais

populares formatos de arquivo, utilizava o LZW e resolveu cobrar royalties de todos os

programas que permitiam salvar um arquivo em formato GIF.





Na época, o GIF estava muito difundido e as produtoras de software não tiveram alternativa,

senão pagar. Isso reforçou o desenvolvimento de formatos abertos para imagens como o PNG

(Portable Network Graphics). Em 1999 a Unisys abriu mão de royalties para licensa do

algoritmo LZW para softwares grátis, softwares proprietários não-comerciais e usuários

individuais de softwares não licenciados. Isso se deu devido a pressão exercida pela Liga para

Liberdade de Programação que emcampou uma campanha contra o GIF. A maioria das









17

patentes do LZW tem expirado nos últimos 2 anos o que pode contribuir para um acesso mais

livre a esse tipo de imagem e a todos os arquivos que usam o LZW como algoritmo de

compressão.





4. Funcionamento





4.1 Algoritmo de compressão LZW





LZW (Lempel-Ziv-Welch) é um algoritmo universal de compressão de dados sem perda criado

por Abraham Lempel, Jacob Ziv, e por Terry Welch. Foi publicado por Welch em 1984 como

uma versão melhorada do algoritmo LZ78 publicado por Lempel e por Ziv em 1978. O algoritmo

é projetado pra ser rápido de ser implementado, mas não necessariamente "ótimo" uma vez

que não executa nenhuma análise nos dados.





4.1.1 Descrição do algoritmo





O algoritmo compressor constrói uma tabela de tradução de strings do texto que está sendo

comprimido. A tabela de tradução de string mapeia os códigos de tamanho fixo (geralmente 12-

bit) das strings. A tabela de strings é inicializada com todas as strings de um único-caractere

(256 entradas no caso de caracteres de 8 bits). Enquanto o compressor examina o texto,

armazena cada par de caracteres originais na tabela como uma concatenação do

código/caractere, com o código que é mapeado do primeiro caractere.





Enquanto cada string de dois caracteres é armazenada, o primeiro caractere é colocado para

fora. Sempre que uma string precedente é lida da entrada, o mais longo tal string precedente-

encontrada é determinado, e o código para esta string concatenada com o caractere da

extensão (o caractere seguinte na entrada) é armazenado então na tabela. O código para esta

string precedente-encontrada a mais longa é outputted e o caractere da extensão é usado

como o começo da string seguinte.





O algoritmo do decompressor requer somente o texto comprimido como uma entrada, já que

pode construir uma tabela de string idêntica do texto comprimido enquanto está recriando o

texto original. Entretanto, um caso anormal aparece sempre que o

caractere/string/caractere/string/caractere da seqüência (com o mesmo caractere para cada

caractere e string para cada string) são encontrados na entrada e o caractere/string já estão

armazenados na tabela de string. Quando o decompressor lê o código para o

caractere/string/caractere na entrada, não pode resolvê-la porque não armazenou ainda este

código em sua tabela. Este caso especial pode ser tratado de porque o decompressor sabe

que o caractere da extensão é o caractere precedente encontrado.









18

4.1.2 Usos





O método tornou-se amplamente utilizado na compressão de programas, que tornou mais ou

menos utilidade padrão no circa 1986 dos sistemas Unix. (Tem desaparecido devido à razões

legais e técnicas). Diversas outras utilidades populares da compressão usaram também este

método, ou relacionados.





Tornou-se usado muito extensamente depois que se transformou parte do formato da imagem

do GIF em 1987. Pode (opcionalmente) seja usado também em arquivos TIFF. A compressão

de LZW forneceu uma taxa de compressão melhor, na maioria de suas aplicações, do que

outros métodos disponíveis na época. Transformou-se no primeiro método universal

extensamente usado da compressão de dados em computadores. Comprimia tipicamente

grandes textos na lígua inglesa em aproximadamente à metade dos seus tamanhos originais.





Hoje, uma implementação do algoritmo é utilizada no popular programa Adobe Acrobat.





4.1.3 A patente do algoritmo LZW





O algoritmo da compressão de LZW originalmente foi patenteado pela Unisys Corporation.

Quando a CompuServe desenvolveu primeiramente o formato do GIF, não souberam que LZW

estava coberto por uma patente. Em dezembro 1994, após Unisys descobrir que o novo

formato popular de arquivo usou a compressão LZW, eles anunciaram que estariam querendo

royalties da patente; todos os programas comerciais capazes de produzir arquivos GIF seriam

solicitados a pagar uma taxa de licença à Unisys.





Na época, o GIF já estava tão difundido que a maioria de companhias que produziam estes

programas tiveram pouca escolha para pagar. Estes problemas conduziram ao

desenvolvimento do formato do PNG, que se tornou o terceiro formato de imagem mais popular

após GIF e JPEG.





Em agosto de 1999, a Unisys encerrou suas licenças royalty-free da tecnologia LZW para o

software livre e softwares proprietários não-comerciais.





Muitos peritos legais conclíram que a patente não cobre os dispositivos que podem somente

descomprimir dados LZW e não podem a comprimir; por esta razão, o programa popular livre

do gzip pode ler arquivos .Z mas não pode escrevê-los.





Em junho de 2003, a patente americana do algoritmo LZW expirarou, o que significa que

Unisys não pode mais coletar royalties para o uso do formato GIF nesse país. As patentes

equivalentes na Europa e no Japão expiraram em junho de 2004.









19

4.2 Paletas





O formato GIF é baseado em paletas de cores: embora toda a seleção da paleta possa ser um

dos milhões das máscaras, o número máximo que pode ser usado em um frame é 256. Estes

são armazenados em um “palette”, uma tabela que associa cada número da seleção do palette

com um valor específico do RGB. A limitação a 256 máscaras pareceu razoável na época de

criação do GIF porque poucas pessoas poderiam imaginar que se teriam recursos de hardware

capazes de mostrar mais. Os gráficos simples, como desenhos em linha, os cartoons, e

fotografias em escala de cinza necessitam tipicamente de menos de 256 máscaras.

Opcionalmente, uma das seleções no palette pode ser ajustada como transparente, o que

permite a transparência binária simples.





Existem maneiras criar efeitos difuse e dither em fotografias usando pixels de 2 ou mais

diferentes HUES para aproximar a um HUE do meio, mas esta transformação perde

inevitavelmente algum detalhe. Os algoritmos usados para selecionar o palette e para executar

o efeito difuse afetam bastante a qualidade da saída. Adicionalmente, dithering

significativamente reduz a compressibilidade da imagem sendo assim contrário à finalidade

principal do GIF.





Nos primeiros cartões gráficos dos web browsers tinham buffers de 8-bit (que permitem

somente 256 hues) e era razoavelmente comum fazer imagens GIF usando o palette do

websafe que foi baseado em um subconjunto comum dos palettes padrão do Windows e do

Macintosh. Esta estratégia permitia uma visualização assegurada mas limitava severamente a

escolha dos hues. Agora que cartões de 24 bits são comuns, os palettes otimizados só fazem

sentido ao criar imagens, embora há ainda muitos sites na web que recomendam o uso do

palette do websafe.





GIF89a foi projetado baseado no princípio de renderizar as imagens (conhecidas como frames

quando usadas para animação) a uma tela lógica. Cada imagem poderia opcionalmente ter seu

próprio palette, e o formato fornece flags para especificar o delay e a espera de input do

usuário entre eles. Esta é a forma que é usada para criar GIFs animados, mas pode também

ser usada armazenar sem perda uma imagem de 24 bits em RGB (truecolour) dividindo-a em

partes suficientemente pequenas para serem codificadas em um palette de 256 cores e

ajustando o GIF para renderizá-las sem nenhum delay na tela lógica (ver tópico abaixo).

Infelizmente, a maioria de browsers da web supõem que esta estratégia da multi-imagem será

usada somente para animação e inserem automaticamente um delay mínimo entre as imagens.

Há poucas ferramentas que podem facilmente produzir estes tipos de GIFs, e é raramente um

formato apropriado a menos que não haja absolutamente nenhuma outra opção.









20

5. Aplicações





Mesmo com a adoção geral da internet em banda-larga, o tamanho dos downloads continua a

ser um fator crítico na web. Os grandes sites na web têm um efeito negativo na experiência do

usuário se forem lentos de carregar. Os grandes sites são também mais caros para seus

proprietários, que pagam baseado na quantidade de dados transferidos de seu site.

Conseqüentemente a compressão do GIF se faz desejável como um formato de imagem para o

uso em páginas da web.





O GIF é o único formato de imagem amplamente usado para suportar animação. É usado

freqüentemente fazer as animações e filmes curtos de baixa resolução para páginas da web.





A maioria logos e elementos gráficos das páginas da web são GIF ou PNG porque são

projetados para comprimir de forma eficiente as imagens que contêm blocos grandes da

mesma cor ou padrões de repetição; O JPEG não comprime bem áreas lisas, únicas com

transições às áreas adjacentes.





O JPEG é preferido para fotografias digitais porque permite que as imagens contenham mais

de 16 milhões de hues diferentes (GIF dá uma escolha de somente 256 por imagem) e

comprime fotografias melhor. Os formatos de bitmap sem compressão, como o bitmap do

Windows são recomentado às vezes para imagens no software de computador quando a

velocidade é mais importante do que o tamanho do arquivo reduzido, porque os bitmaps não

compressados podem ser processados mais rapidamente.





6. Ferramentas





Há poucas ferramentas que podem facilmente produzir tipos de GIFs, por questões de patente,

e é raramente um formato apropriado a menos que não haja absolutamente nenhuma outra

opção.









21

Conclusão



O formato GIF nasceu com um propósito específico e cumpriu bem o seu papel. De um formato

despretensioso surgiu um dos ícones da Web. Suas características (transparência, animação,

intercalamento, tamanho reduzido) contribuíram para isso. Como ponto negativo podemos

destacar o seu algoritmo de compressão. Não por ser ruim ou pouco eficiente, muito pelo

contrário, mas por ser proprietário e ninguém ter se dado conta disso até a reclamação de seus

direitos por parte do dono da patente.





Há algum tempo o formato GIF vêm sendo substituido por formatos mais completos como o

PNG, que oferece melhor qualidade e compressão, além de permitir também animações.

Entretanto, o GIF ainda é muito utilizado devido à sua grande popularização no passado e

continua, de certo modo, sendo útil para pequenas animações ou imagens de baixa resolução

na web onde é mais eficiente.





Diretamente não concorre com outro formato bastante popular, o JPEG, pois seus propósitos

são diferentes. O JPEG é destinado à imagens de maior resolução, como fotos. Imagens de

baixa resolução em JPEG são maiores que as do GIF.









22

Referências



http://en.wikipedia.org/wiki/GIF

http://phil.ipal.org/tc.html

http://en.wikipedia.org/wiki/Comparison_of_layout_engines_%28graphics%29

http://www.infowester.com/imagensnet.php

http://www.cin.ufpe.br/~if124/mult_imagem.htm

http://pt.wikipedia.org/wiki/GIF









23



Related docs
Other docs by Stariya Js @ B...
Info pack - Level 1
Views: 0  |  Downloads: 0
f1098746053
Views: 0  |  Downloads: 0
file_116
Views: 3  |  Downloads: 0
Trade
Views: 0  |  Downloads: 0
McKenzie_Law.April
Views: 0  |  Downloads: 0
110208attachmentEndingtheUseofCoalCampaign
Views: 0  |  Downloads: 0
Titration Curve _CBL_ _AP_
Views: 0  |  Downloads: 0
FSSC cover note
Views: 0  |  Downloads: 0
link_130115
Views: 0  |  Downloads: 0
Index_of_Supplementary_Tables_and_Dataset
Views: 0  |  Downloads: 0
By registering with docstoc.com you agree to our
privacy policy

You are almost ready to download!

You are almost ready to download!