Escolar Documentos
Profissional Documentos
Cultura Documentos
C O M PR E S S Ã O D E IM A G E N S
amlucena@cruzeirodosul.edu.br
Prof.: Alexandre M. Lucena 2023
Compressão de Imagens
A compressão de imagem é um tipo de compressão de dados aplicada a imagens digitais,
para reduzir seu custo de armazenamento ou transmissão.
http://paulbourke.net/dataformats/bitmaps/index_pt.html
Bitmap
A ilustração a seguir mostra um bitmap que armazena as cores diretamente (24 bits por pixel). A ilustração
também mostra uma exibição ampliada da imagem correspondente.
No bitmap, FFFFFF representa branco, FF0000 representa vermelho, 00FF00 representa verde e 0000FF
representa azul.
https://learn.microsoft.com/pt-br/dotnet/desktop/winforms/advanced/types-of-bitmaps
Bitmap
A quantidade de armazenamento em disco necessária para qualquer bitmap é fácil de calcular, dado as
dimensões do bitmap (N x M) e a profundidade de cor nos bits (b).
N x M x b = tamanho em bits
N x M x b = tamanho em bits
Dado que 1 Byte são 8 bits, e 1kB são 1024 Bytes são A fórmula para o tamanho do arquivo em kB é portanto
https://learn.microsoft.com/pt-br/dotnet/desktop/winforms/advanced/types-of-bitmaps
Sem Perdas
Bitmap (Indexado)
Um bitmap que armazena os índices em uma tabela de cores é chamado um bitmap indexado por paleta. A
ilustração a seguir mostra uma imagem ampliada juntamente com sua tabela de cores e bitmap.
https://learn.microsoft.com/pt-br/dotnet/desktop/winforms/advanced/types-of-bitmaps
GIF - Graphics Interchange Format
GIF é uma criação da Compuserve Inc., e é projetado para
a codificação de imagens RGB (e a paleta apropriada com
profundidades de pixel entre 1 e 8 bits.
https://www.youtube.com/watch?v=lPM5hLchrFI
Lempel–Ziv–Welch (LZW)
https://www.youtube.com/watch?v=lPM5hLchrFI
Como o GIF utiliza o LZW?
Como o GIF utiliza o LZW?
PNG - Portable Network Graphics
PNG (Portable Network Graphics) é um formato de dados
utilizado para imagens, que surgiu em 1996 como
substituto para o formato GIF, devido ao formato GIF
incluir algoritmos patenteados.
https://www.w3.org/TR/2003/REC-PNG-20031110/#4Concepts.PNGImageTransformation
PNG - Portable Network Graphics
Com Perdas
JPEG - Joint Photographic Express Group
Adotado como padrão internacional ISSO/IEC 10918 em
1994.
Diferentemente do GIF e PNG, o padrão JPEG especifica o
codec (codificador/decodificador), e não um formato de
arquivo.
Como todo padrão de compressão com perdas, o JPEG
precisa jogar "parte" da informação original fora com
base em características de como a visão humana percebe
imagens.
A resolução dos dados de cores é reduzida, usualmente, pela metade. Isto reflete o fato de que o olho é
menos sensível a detalhes finos de cor do que de brilho.
YCbCr
https://en.wikipedia.org/wiki/YCbCr
YCbCr
https://en.wikipedia.org/wiki/YCbCr
YCbCr - subamostragem
JPEG – Etapa 2
A imagem é dividida em blocos de 8×8 pixels, e a cada bloco é aplicada a Transformada Discreta de
Cosseno com sigla DCT, do inglês.
Preenchimento dos
blocos na lateral
Blocos de direita
8x8 pixels
Preenchimento dos
blocos de fronteira
JPEG – Etapa 3
O que é DCT? - Discrete Cosine Transformation
Ela é semelhante à transformada de Fourier (para funções periódicas) no sentido de que ela produz um tipo de espectro
de espaço-frequência:
https://sites.icmc.usp.br/frasson/jpeg/jpeg.html
JPEG – Etapa 3 (cont.)
A visão humana é muito mais sensível a pequenas variações de cor e brilho em áreas maiores do que à variações de
brilho em altas frequências. Assim, as amplitudes dos componentes de frequência são “quantizadas”, isto é, reescaladas
usando um sistema de pesos, onde pesos maiores são aplicados a frequências menores.
JPEG – Etapa 3 (cont.)
Aqui entra a qualidade da compactação. A configuração de qualidade do codificador (por exemplo 50% ou
95% numa escala de 0 a 100%) afeta a extensão com a qual cada componente de frequência é reduzida. Se
uma configuração de baixa qualidade é usada, os componentes de alta frequência são todos descartados.
•Os dados resultantes para todos os blocos 8×8, que tipicamente são matrizes onde os números significativos estão no
canto superior esquerdo, e com aspecto de matriz esparsa, são novamente compactados com um algoritmo sem perdas,
uma variante da codificação de Huffman e armazenados no arquivo JPEG.
Alguns Exemplos
Alguns Exemplos
Alguns Exemplos
Alguns Exemplos
Alguns Exemplos
JPEG Compressed
Images at Different
Quality Levels. Blocking
artifacts can be
observed with increasing
compression rate:
a) 23 dB PSNR
b) 25 dB PSNR
c) 28 dB PSNR
d) 31 dB PSNR
https://www.researchgate.net/publication/324077874_The_Effects_of_JPEG_and_JPEG2000_Compression_on_Attacks_using_Adversarial_Examples
Exercícios
Acesse o link: https://www.hlevkin.com/hlevkin/06testimages.htm
1. Quais as dimensões da imagem?
2. Qual a profundidade de bits utilizada? Quantos níveis são possíveis por pixel?
3. Faça o cálculo do tamanho da imagem e compare com o que é mostrado em
"Propriedades".
4. Abra a imagem no Paint. Selecione "Salvar Como" e salve no formato PNG.
a) Qual o novo tamanho da imagem?
b) Qual foi a taxa de compressão obtida?
c) Houve alterações perceptíveis no resultado final?
9) Ainda no Paint, salve a imagem escolhida como BMP de 256 cores. O que
aconteceu com o tamanho da imagem? Quantos bits são utilizados por pixel?
Você consegue justificar o cálculo do tamanho (kB) para esta imagem?