Formatos Imagem Apontamentos CG + Edward Angel, Sec. 8.2 Instituto Superior Técnico Computação Gráfica 2009/2010 1
Na última aula Ray-Tracing Ferramentas Utilizadas: POV-Ray 3.6 (modelling, texturing, rendering); Megapov 0.7 (cloth mesh generation) Wings3D (mesh modeling); VIM (text editing); GEdit (text editing); The gimp (map painting, cropping views, conversion to jpg). Office By Jaime Vives Piqueres
Sumário Formatos de Imagem Generalidades Formatos PBM DIB (BMP) GIF PNG JFIF (JPEG) Considerações sobre uso
Computação Gráfica Formatos de Imagem Conceitos Genéricos
Representação Directa Para cada pixel Representar valor do canal correspondente Triplos <R,G,B> Máxima Fiabilidade Depende apenas da profundidade da cor Requisitos de memória elevados 211 0 70 0 147 190 Representação Imagem
Mapa de Cores Pixéis representados por índice de cor em vez de 3 componentes de cor Ficheiros de menor dimensão Bom até 256 cores Inviável para mais do que 256 cores 0 0 255 0 1 1 255 0 0 2 0 255. 0 47 46 255 255 0 47 0 255 255 48 255 0 255 2010, CG&M/IST e Figuras Representação Addison Wesley Mapa de cores Imagem
Compressão de Imagem Reduz o tamanho da imagem Dois tipos Com perda JPEG: Joint Photographic Experts Group (ISO 10918-1) Transformada do co-seno aplicada a grupos de pixéis (8x8 ou 16x16) Sem perda RLE: Run Length Encoding Sequências de pixéis da mesma cor LZW (e LZ77) Lempel-Ziv Welch Sequências iguais de pixéis (podem ser de cores diferentes)
Entrelaçamento (1/3) Codificação permite visualização mais rápida Também conhecido como Codificação progressiva Pode ser usado em diversos formatos GIF Armazena as linhas intercaladas 0, 8, 16,... / 4,12,... / 2, 6, 10, 14,... / 1, 3, 5, 7, 9,... 1 6 4 6 2 6 4 6 PNG Algoritmo Adam7 Imagem dividida em 7 sub-imagens Usa padrão 8x8 para armazenar a imagem JPEG Algoritmo Progressivo Usa os coeficientes da Transformada do Co-seno Complexo, mas eficiente 7 7 7 7 7 7 7 7 5 6 5 6 5 6 5 6 7 7 7 7 7 7 7 7 3 6 4 6 3 6 4 6 7 7 7 7 7 7 7 7 5 6 5 6 5 6 5 6 7 7 7 7 7 7 7 7
Entrelaçamento (2/3) ADAM7 GIF
1/32 1/64 1/2 1/4 Completa! 1/8 1/16 PNG GIF
Computação Gráfica Formatos de Imagem Formatos
Siglas PBM: Portable Bitmap PPM: Portable Pixmap PGM: Portable Graymap DIB: Device Independent Bitmap windows BMP: Windows Bitmap GIF: Graphics Interchange Format PNG: Portable Network Graphics JFIF: JPEG File Interchange Format
Número Mágico (Magic Number) Usado para identificar formatos de ficheiros Apareceu pela 1ª vez na versão 7 do UNIX (1979) Para identificar executáveis Um conjunto de bits no início do ficheiro Exemplos: PDF: 25 50 44 46 (%PDF) MS-OFFICE DOC: D0 CF 11 E0 ( docfile0 ) Classes JAVA compiladas: CA FE BA BE ( cafe babe ) 13
Número Mágico (Magic Number) No caso dos ficheiros de imagem PBM: P4 [em ASCII] BPM: 42 4D (BM) GIF: 47 49 46 38 (GIF8) PNG: 89 50 4E 47 ( PNG) JPEG/JFIF: FF D8 FF E0 TIFF Big endian (motorola): 4D 4D 00 2A (MM *) Little endian (intel): 49 49 2A 00 (II* ) 14
Formatos PBM (1/2) Cores: 2 (PPM), 256 cinzentos (PGM) 16.777.216 (PBM) Modelo de cor: RGB Compressão: não suporta Mapa de cores: não suporta Entrelaçamento: não suporta Transparência: não suporta
Formatos PBM (2/2) Vantagens Fácil de gerar Três subtipos para diferentes tipos de imagem Desvantagens Ficheiros de grande tamanho Não permite compressão
Formato DIB (BMP) (1/2) Cores: 2, 16, 256 e 16.777.216 Modelo de cor: RGB Compressão: RLE 4 e RLE 8 Mapa de cores: só com 2, 16 e 256 cores 800 600, 81232 cores, 1,37 Mb Entrelaçamento: não suporta Transparência: não suporta RLE - 800 600, 251 cores, 530 kb
Formato DIB (BMP) (2/2) Vantagens Cores reais Múltiplos subtipos para diferentes tipos de imagem Desvantagens Ficheiros de grande tamanho Compressão limitada a subtipos Compressão inadequada Para imagens de qualidade fotográfica Porquê? 18
Formato GIF (1/3) Cores: 2, 4, 8, 16, 32, 64, 128 e 256 Modelo de cor: RGB Compressão: LZW sem perda (sempre) Mapa de cores: Obrigatório 638 422, 144 cores, 94 kb Entrelaçamento: Opcional, por linhas Transparência: uma cor 320 200, 255 cores, 57 kb
Formato GIF (2/3) Vantagens Canal de dados GIFs animados Ficheiros de pequeno tamanho Desvantagens Limite de 256 cores Formato e algoritmo de compressão proprietários Impróprio para imagens de qualidade fotográfica Transparência de uma única cor
Formato GIF (3/3) Limite de 256 cores
Formato PNG (1/2) Cores: 2, 4, 16, 256, 16.777.216 e 2 48 Modelo de cor: RGB Compressão: LZ77 sem perda Mapa de cores: só com 2, 4, 16 e 256 cores Entrelaçamento: opcional, por pixéis Transparência: por canal alfa
Formato PNG (2/2) Vantagens Suporta todos os tipos de imagem Algoritmo de compressão do domínio público Transparência por canal alfa Permite sequências de imagens Guarda a correcção gama (opcional) Desvantagens Algoritmo de compressão impróprio para imagens com qualidade fotográfica
Formato JFIF (JPEG) (1/2) Cores: 16.777.216 Modelo de cor YCbCr Compressão: JPEG (com perda) Mapa de cores: não suporta 800 600, 59847 cores, 68,9 kb Entrelaçamento: não suporta Transparência: não suporta 800 600, 81232 cores, 60,9 kb
Formato JFIF (JPEG) (2/2) Vantagens Recomendado para imagens de qualidade fotográfica Algoritmos de compressão normalizados Desvantagens Há sempre perda (mas a visão não detecta) Impróprio para imagens com variações súbitas de cor Original JPEG
Artefactos JFIF (JPEG) JPEG Original
Degradação Progressiva em JFIF Escala de qualidade 1 (mín.) 100 (máx.) 90 80 70 60 50 40 20 10
Computação Gráfica Formatos de Imagem Considerações sobre o uso
Imagem de Qualidade Fotográfica Exemplo de Imagem 512 x 512 pixéis 230.426 cores
Imagem Fotográfica Dimensão de Imagem MS Photo Editor Paint Shop Pro Adobe Photoshop DIB/BMP 786.486 GIF normal entrelaçado 169.369 (136) 261.332 (256) 266.523 (256) 248.878 (256) 254.103 (256) PNG normal entrelaçado 755.065 636.923 667.648 781.799 788.863 JFIF máx. méd. mín. 342.808 (159.067) 50.717 (149.903) 31.768 (111.645) 313.125 (161.704) 51.151 (151.270) 32.300 (113.683) 491.285 (176.062) 87.798 (156.760) 53.248 (133.424) PPM binário ASCII 786.475 2.893.594 Comprimento em bytes (número de cores)
Imagem de um Gráfico Simples Exemplo de Imagem 717 x 494 10 cores
Gráfico Simples Dimensão de Imagem MS Photo Editor Paint Shop Pro Adobe Photoshop DIB/BMP 1.063.142 GIF normal entrelaçado 19.271 (18) 17.581 17.904 16.268 16.667 PNG normal 18.951 19.097 29.861 entrelaçado 28.482 39.103 red. 256 cores 14.795 (18) 12.899 14.975 (18) JFIF máx. méd. mín. 174.285 (111) 44.330 (27.550) 31.768 (29.756) 161.770 (2.764) 44.262 (28.097) 31.495 (30.223) 226.607 (444) 73.789 (21.443) 54.583 (26.423) PPM binário ASCII 1.062.637 4.161.878 Comprimento em bytes (número de cores)
Formatos de Imagem Considerações Usar GIF se número de cores for pequeno (<256) Considerar o formato PNG para estes casos e para outros se a imagem não for de qualidade fotográfica Usar JPEG/JFIF sempre que a imagem seja de qualidade fotográfica apresente tons contínuos Imagens JPEG/JFIF Guardar imagem original sem perda ou com pouca perda Reduzir tamanho antes de comprimir com perda