54
UNIVERSIDADE FEDERAL DE MATO GROSSO INSTITUTO DE COMPUTAÇÃO CURSO DE CIÊNCIA DA COMPUTAÇAO DISCIPLINA: PROCESSAMENTO DE IMAGENS PROFESSOR: JOÃO PAULO RIBAS Relatório do Trabalho Alunos: Lauro César Renato Gonçalves Túlio Rondon de Albuquerque

Compressão de Imagens

  • Upload
    xamais

  • View
    1.867

  • Download
    5

Embed Size (px)

DESCRIPTION

Trabalho de Processamento de Imagens sobre compressão de imagens

Citation preview

Page 1: Compressão de Imagens

UNIVERSIDADE FEDERAL DE MATO GROSSOINSTITUTO DE COMPUTAÇÃO

CURSO DE CIÊNCIA DA COMPUTAÇAODISCIPLINA: PROCESSAMENTO DE IMAGENS

PROFESSOR: JOÃO PAULO RIBAS

Relatório do Trabalho

Alunos: Lauro César Renato Gonçalves Túlio Rondon de Albuquerque

Cuiabá, 28 de junho de 2009.

Page 2: Compressão de Imagens

Sumário

Lista de Figuras --------------------------------------------------------------------------------- 3

Introdução --------------------------------------------------------------------------------------- 7

Caracterização do Problema ------------------------------------------------------------------ 18

Resultados -------------------------------------------------------------------------------------- 19

Análise dos Resultados ------------------------------------------------------------------------ 38

Conclusão --------------------------------------------------------------------------------------- 38

Referências Bibliográficas -------------------------------------------------------------------- 39

Anexos ------------------------------------------------------------------------------------------- 40

2

Page 3: Compressão de Imagens

1. Lista de Figuras

Fig. 1 ------------------------------------------------------------------------------------------------------------------------ 6

Fig. 2 ------------------------------------------------------------------------------------------------------------------------ 7

Fig. 3 ------------------------------------------------------------------------------------------------------------------------ 8

Fig. 4 ------------------------------------------------------------------------------------------------------------------------ 9

Fig. 5 ------------------------------------------------------------------------------------------------------------------------ 9

Fig. 6 ------------------------------------------------------------------------------------------------------------------------10

Fig. 7 ------------------------------------------------------------------------------------------------------------------------11

Fig. 8 ------------------------------------------------------------------------------------------------------------------------11

Fig. 9 ------------------------------------------------------------------------------------------------------------------------12

Fig. 10 ------------------------------------------------------------------------------------------------------------------------13

Fig. 11 ------------------------------------------------------------------------------------------------------------------------14

Fig. 12 ------------------------------------------------------------------------------------------------------------------------15

Fig. 13 ------------------------------------------------------------------------------------------------------------------------19

Fig. 14 ------------------------------------------------------------------------------------------------------------------------19

Fig. 15 ------------------------------------------------------------------------------------------------------------------------19

Fig. 16 ------------------------------------------------------------------------------------------------------------------------19

Fig. 17 ------------------------------------------------------------------------------------------------------------------------20

Fig. 18 ------------------------------------------------------------------------------------------------------------------------20

Fig. 19 ------------------------------------------------------------------------------------------------------------------------20

Fig. 20 ------------------------------------------------------------------------------------------------------------------------20

Fig. 21 ------------------------------------------------------------------------------------------------------------------------21

Fig. 22 ------------------------------------------------------------------------------------------------------------------------21

Fig. 23 ------------------------------------------------------------------------------------------------------------------------21

Fig. 24 ------------------------------------------------------------------------------------------------------------------------21

Fig. 25 ------------------------------------------------------------------------------------------------------------------------21

Fig. 26 ------------------------------------------------------------------------------------------------------------------------21

Fig. 27 ------------------------------------------------------------------------------------------------------------------------22

3

Page 4: Compressão de Imagens

Fig. 28 ------------------------------------------------------------------------------------------------------------------------22

Fig. 29 ------------------------------------------------------------------------------------------------------------------------22

Fig. 30 ---------------------------------------------------------------------------------------------------------------------- 22

Fig. 31 ------------------------------------------------------------------------------------------------------------------------22

Fig. 32 ------------------------------------------------------------------------------------------------------------------------23

Fig. 33 ----------------------------------------------------------------------------------------------------------------------- 23

Fig. 34 ------------------------------------------------------------------------------------------------------------------------23

Fig. 35 ------------------------------------------------------------------------------------------------------------------------23

Fig. 36 ------------------------------------------------------------------------------------------------------------------------23

Fig. 37 ------------------------------------------------------------------------------------------------------------------------23

Fig. 38 ------------------------------------------------------------------------------------------------------------------------24

Fig. 39 ------------------------------------------------------------------------------------------------------------------------24

Fig. 40 ------------------------------------------------------------------------------------------------------------------------24

Fig. 41 ------------------------------------------------------------------------------------------------------------------------24

Fig. 42 ------------------------------------------------------------------------------------------------------------------------24

Fig. 43 ------------------------------------------------------------------------------------------------------------------------24

Fig. 44 ------------------------------------------------------------------------------------------------------------------------25

Fig. 45 ------------------------------------------------------------------------------------------------------------------------25

Fig. 46 ------------------------------------------------------------------------------------------------------------------------25

Fig. 47 ------------------------------------------------------------------------------------------------------------------------25

Fig. 48 ------------------------------------------------------------------------------------------------------------------------25

Fig. 49 ------------------------------------------------------------------------------------------------------------------------25

Fig. 50 ------------------------------------------------------------------------------------------------------------------------26

Fig. 51 ------------------------------------------------------------------------------------------------------------------------26

Fig. 52 ------------------------------------------------------------------------------------------------------------------------26

Fig. 53 ------------------------------------------------------------------------------------------------------------------------26

Fig. 54 ------------------------------------------------------------------------------------------------------------------------26

Fig. 55-------------------------------------------------------------------------------------------------------------------------26

Fig. 56 ----------------------------------------------------------------------------------------------------------------------- 27

Fig. 57 ------------------------------------------------------------------------------------------------------------------------27

Fig. 58 ------------------------------------------------------------------------------------------------------------------------27

Fig. 59 ------------------------------------------------------------------------------------------------------------------------27

Fig. 60------------------------------------------------------------------------------------------------------------------------ 27

4

Page 5: Compressão de Imagens

Fig. 61 ------------------------------------------------------------------------------------------------------------------------27

Fig. 62 ------------------------------------------------------------------------------------------------------------------------28

Fig. 63 ----------------------------------------------------------------------------------------------------------------------28

Fig. 64 ------------------------------------------------------------------------------------------------------------------------28

Fig. 65 ------------------------------------------------------------------------------------------------------------------------28

Fig. 66 ------------------------------------------------------------------------------------------------------------------------28

Fig. 67 ------------------------------------------------------------------------------------------------------------------------28

Fig. 68 ------------------------------------------------------------------------------------------------------------------------29

Fig. 69 ------------------------------------------------------------------------------------------------------------------------29

Fig. 70 ------------------------------------------------------------------------------------------------------------------------29

Fig. 71 ------------------------------------------------------------------------------------------------------------------------29

Fig. 72 ------------------------------------------------------------------------------------------------------------------------29

Fig. 73 ------------------------------------------------------------------------------------------------------------------------29

Fig. 74 ------------------------------------------------------------------------------------------------------------------------30

Fig. 75 ------------------------------------------------------------------------------------------------------------------------30

Fig. 76 ------------------------------------------------------------------------------------------------------------------------30

Fig. 77 ------------------------------------------------------------------------------------------------------------------------30

Fig. 78 ------------------------------------------------------------------------------------------------------------------------30

Fig. 79 ------------------------------------------------------------------------------------------------------------------------30

Fig. 80 ------------------------------------------------------------------------------------------------------------------------30

Fig. 81 ------------------------------------------------------------------------------------------------------------------------31

Fig. 82 ------------------------------------------------------------------------------------------------------------------------31

Fig. 83 ------------------------------------------------------------------------------------------------------------------------31

Fig. 84 ------------------------------------------------------------------------------------------------------------------------31

Fig. 85 ------------------------------------------------------------------------------------------------------------------------31

Fig. 86 ------------------------------------------------------------------------------------------------------------------------31

Fig. 87 ------------------------------------------------------------------------------------------------------------------------32

Fig. 88 ------------------------------------------------------------------------------------------------------------------------32

Fig. 89 ------------------------------------------------------------------------------------------------------------------------32

Fig. 90 ------------------------------------------------------------------------------------------------------------------------32

Fig. 91 ------------------------------------------------------------------------------------------------------------------------32

Fig. 92 ------------------------------------------------------------------------------------------------------------------------32

Fig. 93 ------------------------------------------------------------------------------------------------------------------------33

5

Page 6: Compressão de Imagens

Fig. 94 ------------------------------------------------------------------------------------------------------------------------33

Fig. 95 ------------------------------------------------------------------------------------------------------------------------33

Fig. 96 ----------------------------------------------------------------------------------------------------------------------33

Fig. 97 ------------------------------------------------------------------------------------------------------------------------33

Fig. 98 ------------------------------------------------------------------------------------------------------------------------34

Fig. 99 ------------------------------------------------------------------------------------------------------------------------34

Fig. 100 ----------------------------------------------------------------------------------------------------------------------34

Fig. 101 ----------------------------------------------------------------------------------------------------------------------34

Fig. 102-----------------------------------------------------------------------------------------------------------------------34

Fig. 103 ----------------------------------------------------------------------------------------------------------------------34

Fig. 104 ----------------------------------------------------------------------------------------------------------------------34

Fig. 105 ----------------------------------------------------------------------------------------------------------------------35

Fig. 106 ----------------------------------------------------------------------------------------------------------------------35

6

Page 7: Compressão de Imagens

2. Introdução

O Processamento Digital de Imagens é utilizado com muita freqüência nos dias atuais em

diversas áreas tais como imageamento médico para diagnóstico, astronomia, sensoriamento

remoto, entretenimento etc.

Imagens digitais ocupam grande espaço para a sua representação e armazenamento, além

disso o uso crescente da internet fez com que houvesse um aumento da demanda de transporte de

imagens pela rede, o que de certa forma é custoso, devido ao grande volume de dados e pelo alto

tempo de transmissão.

Portanto é necessário diminuir o volume de dados transmitidos e ou armazenados. Essa

diminuição é realizada através de técnicas de compressão de imagens. A compressão de imagem

tem como objetivo reduzir a quantidade exigida de dados (número de bits) para representar uma

imagem digital.

Compressão de imagens visa representar uma imagem, com algum nível de qualidade

exigido, numa forma mais compacta. Operações de compressão de imagens buscam preservar as

informações essenciais de uma imagem de forma que a mesma possa ser reconstruída com

precisão. As informações não essenciais podem ser descartadas.

Três fatores são importantes na medida de eficiência dos algoritmos de compressão de

imagens:

Diminuição da quantidade de armazenamento requerido pela imagem;

Distorção resultante provocado pela eliminação dos dados não necessários da

imagem;

Grau de complexidade computacional.

Se a quantidade de dados necessários para representar uma imagem pode ser reduzida,

então a quantidade de tempo para transporte também é reduzida. Igualmente, o total de espaço de

armazenamento exigido é reduzido. Deste modo, a compressão de imagens pode proporcionar

economias significantes.

7

Page 8: Compressão de Imagens

Esquemas de compressão de imagem ainda podem ser divididos em dois grupos gerais:

compressão sem perda e compressão com perda.

1. Técnicas de compressão de imagens sem perda.

A tecnica de compressao de imagens sem perdas tem como objetivo reduzir o numero de

bits representativos de um sinal de imagem digital sem a perda de informacoes importantes, ou

seja, sem prejudicar a qualidade da imagem quando esta for descomprimida. Na compressao sem

perdas, a imagem reconstruida sera identica a imagem original.

O uso dessa tecnica permite eliminar redundancia com percentual de informacoes

irrelevantes, e com isso, tenta-se obter uma imagem nao necessariamente identica numericamente,

mas, a forma visual identica a imagem original. Por essa razao e considerada compressao de alta

qualidade.

Existem alguns tipos de algoritmos para efetuar a compressão de imagens sem perdas.

• Huffman – Esquema de codificação com códigos de comprimento variável que obtém o

menor número médio de bits por símbolo quando não existe redundância inter-pixels

Fase 1 – Os vários símbolos são ordenados por probabilidade decrescente, sendo

sucessivamente somados os símbolos com menor probabilidade, até restarem apenas duas

somas:

Fig. 1 – Fase 1 – Algoritmo de Huffman para compressão sem perdas

8

Page 9: Compressão de Imagens

Fase 2 – São codificados os vários símbolos, adicionando um bit ao código de cada

símbolo, para cada soma efectuada, por ordem inversa:

Fig. 2 – Fase 2 – Algoritmo de Huffman para compressão sem perdas

A codificação de Huffman atribui um código único a cada símbolo, o que permite

posteriormente efectuar a descodificação, sem perda de informação A codificação de Huffman é

pouco adequada quando existem muitos símbolos, uma vez que é necessário somar as

probabilidades. Existem um esquema modificado que permite truncar os códigos com mais do que

determinado número de bits.

• LZW (Lempel-ZivWelch) :

– Associa códigos de comprimento fixo a palavras de comprimento variável, permitindo

também reduzir dependências inter-pixels;

- Esquema patenteado, actualmente utilizado em GIF, TIFF e PDF;

- Pode ser utilizado para a compressão de informação a qual não se conhece a priori (i.é.,

não é possível determinar a probabilidade de cada símbolo);

- As palavras reconhecidas são mantidas num dicionário, construído dinamicamente;

- Exemplo – codificar a seguinte imagem (9 bits por símbolo):

39 39 126 126

39 39 126 126

39 39 126 126

39 39 126 126

9

Page 10: Compressão de Imagens

Resultado da codificação:

Fig. 3 – Resultado da codificação usando compressão sem perda

• Codificação de planos de bits:

– A imagem é decomposta em planos de bits, sendo cada plano comprimido

individualmente;

- Uma decomposição alternativa utiliza gray codes, onde dois tons com valores adjacentes

apenas diferem num bit;

- Os planos de bits podem ser codificados através de tom-duração ou através da codificação

de regiões de tom constante (divisão da imagem em blocos);

• Codificação com previsão (sem perda):

10

Page 11: Compressão de Imagens

– É utilizada uma função para prever o tom dos pixels seguintes, em função dos anteriores,

sendo apenas armazenada a diferença entre o valor previsto e o tom efectivo do pixel: n n n e = f −

fˆ;

- A função de previsão é na maior parte dos casos uma função linear dos pixels existentes

nessa linha da imagem:

Fig. 4 – Equação da codificação com previsão

- Exemplo: fˆ (x, y) = round [f (x, y −1)]:

Fig. 5 – Gráfico de compressão sem perda

11

Page 12: Compressão de Imagens

2. Técnicas de compressão de imagens com perda.

A compressão de imagem com perda não preserva as informações originais em sua

totalidade, mantendo alguns níveis específicos de qualidade da imagem, desprezando as

informações redundantes e garantindo uma certa qualidade para a mesma. O objetivo é eliminar o

máximo de redundância com o mínimo de perda visual.

Os métodos mais comuns nesse grupo são baseados em transformações da imagem para o

domínio da freqüência, que representa a imagem em outras bases, diferentes do plano no qual a

imagem é visualizada.

Na maioria desses casos, faz-se a transformação por blocos menores, pois isto reduz o

custo computacional. A imagem original é dividida em sub-imagens (blocos), as quais são então

transformadas.

A transformada que se mostrou mais adequada à compressão de imagens digitais é a

Transformada Discreta do Cosseno (TDC), que transforma a imagem do domínio espacial para o

domínio da freqüência, decompondo-a em ondas cossenoidais. A imagem comprimida é obtida,

depois da transformação, por meio da quantização e codificação.

• Codificação através de transformadas:

– A imagem é transformada numa nova representação (ex. FFT) sendo a quantificação

efectuada na nova representação:

12

Page 13: Compressão de Imagens

Fig. 6 – Esquema compressão com perda

- Geralmente a imagem é dividida em blocos, sendo a codificação efectuada isoladamente a

cada bloco da imagem. A divisão em blocos pode ser um processo irregular (i.é., a divisão é

adaptativa);

- O quantizer geralmente elimina valores da transformada (coeficientes) com um impacto

visual reduzido (i.é. com menor amplitude) o que reduz o espaço necessário para representar a

imagem;

- O symbol encoder codifica os coeficientes que não foram eliminados;

- As transformadas de imagem podem ser interpretadas como um processo em cada

imagem é representada por uma soma de imagens base, em que cada coeficiente da transformada

determina a contribuição de cada uma das imagens base para a imagem original:

Fig. 7 – Exemplo Walsh-Hadamard Fig. 8 – Exemplo Transformada Discreta do Cosseno

- Os erros rms, para cada uma das transformadas são, respectivamente, 1,28, 0,86 e 0,68

níveis de cinzento;

- As transformadas que concentram mais informação num menor número de coeficientes

são as mais indicadas para efectuar compressão de imagem (DCT é geralmente superior às outras

transformadas);

- A DCT tem a vantagem adicional de minimizar o efeito de blocos que aparece nas imagens

após a compressão;

13

Page 14: Compressão de Imagens

- A imagens são subdivididas em blocos por forma a reduzir a redundância entre blocos

adjacentes. Os blocos geralmente possuem uma dimensão que seja potência de 2 para reduzir a

quantidade de cálculos. Dimensões frequentemente utilizadas são 8x8 e 16x16;

- O grau de compressão e a complexidade dos cálculos aumentam com a dimensão dos

blocos.

14

Page 15: Compressão de Imagens

Fig. 9 – Exemplo comparação de 3 transformadas (FFT, WHT e DCT) com 50% de coeficientes

descartados e subdividida em blocos de 8x8 pixels

- Variação do erro em função da dimensão dos blocos (truncando 75% dos coeficientes):

Fig. 10 – Verificação de erro

A compressão de imagens é muito utilizada com a Transformada de Fourier, diga-se que a

Transformada é a chave para o processo de compressão ela toma um conjunto de pontos no

domínio espacial e os transforma em uma representação equivalente no domínio da freqüência.

Um dos objetivos da transformada é diminuir a correlação, eliminando-se portanto as redundâncias

estatísticas.

Outro aspecto relevante é que os novos dados devem exigir menos espaço ao mesmo

tempo em que o algoritmo para obtê-los seja o mais eficiente possível. A transformada utilizada no

15

Page 16: Compressão de Imagens

processo de compressão é a Transformada Discreta do Cosseno (TDC), que converte um bloco de

pixels em uma matriz de coeficientes, descorrelacionando a informação da imagem.

Os coeficientes (transformados) iniciais do bloco, contêm as informações mais importantes

da imagem, assim, deve-se garantir o armazenamento de certo número de coeficientes com baixos

índices de posição. Por outro lado, como a transformada fornece uma série de cossenos (que no

limite é convergente), os coeficientes diminuem em amplitude conforme os índices crescem. Pode-

se, portanto, quantizar os coeficientes por zona, diminuindo-os e mesmo eliminando os menos

significantes, obtendo o principal ganho na taxa de compressão.

A Transformada Discreta do Cosseno (TDC) é definida por :

Fig. 11 – Equação TDC com compressão de imagens

para i, j = 0, 1... , N-1, e

onde :

C : Transformada Discreta do Cosseno

f : Valores da imagem original (nível de cinza)

N : Dimensão da imagem (ou bloco).

Para aplicar a TDC em uma imagem, é necessário, para efeito de rapidez nos cálculos e

para uma melhor taxa de compressão, dividir a imagem original em blocos, 4 x 4, 8 x 8 ou 16 x 16,

podendo usar até blocos de 32 x 32 ou 64 x 64.

16

Page 17: Compressão de Imagens

Em geral, usam-se blocos 8 x 8. Verificar com resultados obtidos aplicando compressão com

diferentes tamanhos de blocos e fator de qualidade 2 a uma imagem de 384 x 288 com 1 byte por

pixel, ocupando um espaço de armazenamento de 100.592 bytes.

Fig. 12 – Resultado da compressão com diferentes tamanhos de blocos

17

Page 18: Compressão de Imagens

3. Caracterização do Problema

Este trabalho propõem o estudo de compressão de imagens digitais, utilizando o MATLAB

(Matrix Laboratory), programa próprio para se trabalhar com processamento de imagens, utilizando

cálculo numérico.

Compressão de imagens utiliza várias técnicas especiais de processamento de imagens, e

necessita de alguns valores e parâmetro definidos para que seja executada com perfeição. Isso

torna o assunto de fundamental importância no estudo de processamento de imagens; no

desenvolvimento do trabalho foram executadas as seguintes etapas:

Implementação de uma função utilizando o MATLAB que recebe como entrada 4

parâmetros:

Uma imagem de entrada (Im_Or);

Tamanho do bloco (n);

Tipo de transformada usada (Transf);

O percentual de coeficientes a ser descartado para cada bloco (pca).

A função criada deve proceder da seguinte maneira:

1. Divisão da imagem de entrada (Im_Or) em blocos quadrados sobrepostos com

tamanho n;

2. Aplicação da transformada Transf (FFT ou DCT) em cada bloco;

3. Seleção dos ncd coeficientes com maiores magnitudes de cada bloco;

18

Page 19: Compressão de Imagens

4. Aplicação da transformada inversa em cada bloco, obtendo a imagem

reconstruída;

5. Calculo da PSNR entre a imagem original e a imagem reconstruída;

6. Exibição na tela da imagem original, da imagem reconstruída e o valor da PSNR

entre as duas.

Apresentação dos resultados da execução da função considerando os parâmetros de

entrada listados a seguir:

Imagem de entrada;

Tamanho dos blocos definidos em: 8, 16, 32, 256;

Transformadas de Fourier: DFT e DCT;

Percentual de coeficientes descartados, definidos em: 75%, 87.5% e 98.44%.

4. Resultados

A seguir apresentaremos as tabelas das imagens resultantes através da aplicação da

compressão desenvolvido no MATLAB.

A seguir apresentaremos os resultados quando aplicamos as imagens: Lenna, Boat, quando

aplicadas as transformadas DCT e FFT com tamanhos de blocos e percentuais de coeficientes

descartados variados.

As tabelas de resultados apresentam a seguinte ordem: primeiro a imagem original e depois

a imagem resultante.

As imagens a seguir usam tamanho de bloco igual a 8 e percentagem de coeficientes

descartados iguais a 75%, aplicados a DCT.

19

Page 20: Compressão de Imagens

Fig. 13 – Imagem original Fig. 14 – Imagem resultante

Fig. 15 – Imagem original Fig. 16 – Imagem resultanteAs imagens a seguir usam tamanho de bloco igual a 8 e percentagem de coeficientes

descartados iguais a 87,5%, aplicados a DCT.

Fig. 17 – Imagem original Fig. 18 – Imagem resultante

Fig. 19 – Imagem original Fig. 20 – Imagem resultante

20

Page 21: Compressão de Imagens

As imagens a seguir usam tamanho de bloco igual a 8 e percentagem de coeficientes

descartados iguais a 98,44%, aplicados a DCT.

Fig. 21 – Imagem original Fig. 22 – Imagem resultante

Fig. 23 – Imagem original Fig. 24 – Imagem resultante

As imagens a seguir usam tamanho de bloco igual a 8 e percentagem de coeficientes

descartados iguais a 75%, aplicados a FFT.

Fig. 25 – Imagem original Fig. 26 – Imagem resultante

21

Page 22: Compressão de Imagens

Fig. 27 – Imagem original Fig. 28 – Imagem resultante

As imagens a seguir usam tamanho de bloco igual a 8 e percentagem de coeficientes

descartados iguais a 87,5%, aplicados a FFT.

Fig. 29 – Imagem original Fig. 30 – Imagem resultante

Fig. 31 – Imagem original Fig. 32 – Imagem resultante

22

Page 23: Compressão de Imagens

As imagens a seguir usam tamanho de bloco igual a 8 e percentagem de coeficientes

descartados iguais a 98,44%, aplicados a FFT.

Fig. 33 – Imagem original Fig. 34 – Imagem resultante

Fig. 35 – Imagem original Fig. 36 – Imagem resultante

As imagens a seguir usam tamanho de bloco igual a 16 e percentagem de coeficientes

descartados iguais a 75%, aplicados a DCT.

Fig. 37 – Imagem original Fig. 38 – Imagem resultante

23

Page 24: Compressão de Imagens

Fig. 39 – Imagem original Fig. 40– Imagem resultante

As imagens a seguir usam tamanho de bloco igual a 16 e percentagem de coeficientes

descartados iguais a 87,5%, aplicados a DCT.

Fig. 41 – Imagem original Fig. 42– Imagem resultante

Fig. 43 – Imagem original Fig. 44– Imagem resultante

24

Page 25: Compressão de Imagens

As imagens a seguir usam tamanho de bloco igual a 16 e percentagem de coeficientes

descartados iguais a 98,44%, aplicados a DCT.

Fig. 45 – Imagem original Fig. 46– Imagem resultante

Fig. 47 – Imagem original Fig. 48 – Imagem resultante

As imagens a seguir usam tamanho de bloco igual a 16 e percentagem de coeficientes

descartados iguais a 75%, aplicados a FFT.

Fig. 49 – Imagem original Fig. 50 – Imagem resultante

25

Page 26: Compressão de Imagens

Fig. 51 – Imagem original Fig. 52 – Imagem resultante

As imagens a seguir usam tamanho de bloco igual a 16 e percentagem de coeficientes

descartados iguais a 87,5%, aplicados a FFT.

Fig. 53 – Imagem original Fig. 54 – Imagem resultante

Fig. 55 – Imagem original Fig. 56 – Imagem resultante

26

Page 27: Compressão de Imagens

As imagens a seguir usam tamanho de bloco igual a 16 e percentagem de coeficientes

descartados iguais a 98,44%, aplicados a FFT.

Fig. 57 – Imagem original Fig. 58 – Imagem resultante

Fig. 59 – Imagem original Fig. 60 – Imagem resultante

As imagens a seguir usam tamanho de bloco igual a 32 e percentagem de coeficientes

descartados iguais a 75%, aplicados a DCT.

Fig. 61 – Imagem original Fig. 62 – Imagem resultante

27

Page 28: Compressão de Imagens

Fig. 62 – Imagem original Fig. 63 – Imagem resultante

As imagens a seguir usam tamanho de bloco igual a 32 e percentagem de coeficientes

descartados iguais a 87,5%, aplicados a DCT.

Fig. 64 – Imagem original Fig. 65 – Imagem resultante

Fig. 66 – Imagem original Fig. 67 – Imagem resultante

28

Page 29: Compressão de Imagens

As imagens a seguir usam tamanho de bloco igual a 32 e percentagem de coeficientes

descartados iguais a 98,44%, aplicados a DCT.

Fig. 68 – Imagem original Fig. 69 – Imagem resultante

Fig. 70 – Imagem original Fig. 71 – Imagem resultante

As imagens a seguir usam tamanho de bloco igual a 32 e percentagem de coeficientes

descartados iguais a 75%, aplicados a FFT.

29

Page 30: Compressão de Imagens

Fig. 72 – Imagem original Fig. 73 – Imagem resultante

Fig. 74 – Imagem original Fig. 75 – Imagem resultante

As imagens a seguir usam tamanho de bloco igual a 32 e percentagem de coeficientes

descartados iguais a 87,5%, aplicados a FFT.

Fig. 76 – Imagem original Fig. 77 – Imagem resultante

Fig. 78 – Imagem original Fig. 79 – Imagem resultante

30

Page 31: Compressão de Imagens

As imagens a seguir usam tamanho de bloco igual a 32 e percentagem de coeficientes

descartados iguais a 98,44%, aplicados a FFT.

Fig. 80 – Imagem original Fig. 81 – Imagem resultante

Fig. 82 – Imagem original Fig. 83 – Imagem resultante

As imagens a seguir usam tamanho de bloco igual a 256 e percentagem de coeficientes

descartados iguais a 75%, aplicados a DCT.

31

Page 32: Compressão de Imagens

Fig. 83 – Imagem original Fig. 84 – Imagem resultante

Fig. 85 – Imagem original Fig. 86 – Imagem resultante

As imagens a seguir usam tamanho de bloco igual a 256 e percentagem de coeficientes

descartados iguais a 87,5%, aplicados a DCT.

Fig. 87 – Imagem original Fig. 88 – Imagem resultante

Fig. 89 – Imagem original Fig. 90 – Imagem resultante

32

Page 33: Compressão de Imagens

As imagens a seguir usam tamanho de bloco igual a 256 e percentagem de coeficientes

descartados iguais a 98,44%, aplicados a DCT.

Fig. 91 – Imagem original Fig. 92 – Imagem resultante

Fig. 93 – Imagem original Fig. 94 – Imagem resultante

As imagens a seguir usam tamanho de bloco igual a 256 e percentagem de coeficientes

descartados iguais a 75%, aplicados a FFT.

Fig. 95 – Imagem original Fig. 96 – Imagem resultante

33

Page 34: Compressão de Imagens

Fig. 97 – Imagem original Fig. 98 – Imagem resultante

As imagens a seguir usam tamanho de bloco igual a 256 e percentagem de coeficientes

descartados iguais a 87,5%, aplicados a FFT.

Fig. 99 – Imagem original Fig. 100 – Imagem resultante

Fig. 101 – Imagem original Fig. 102 – Imagem resultante

34

Page 35: Compressão de Imagens

As imagens a seguir usam tamanho de bloco igual a 256 e percentagem de coeficientes

descartados iguais a 98,44%, aplicados a FFT.

Fig. 103 – Imagem original Fig. 104 – Imagem resultante

Fig. 105 – Imagem original Fig. 106 – Imagem resultante

Resultados dos calculos na função.

35

Page 36: Compressão de Imagens

36

Page 37: Compressão de Imagens

37

Page 38: Compressão de Imagens

5. Análise dos Resultados

Observando os resultados, descobrimos que em todas as imagens, o algoritmo da

compressão implementado pelos membros do grupo no MATLAB atuou de maneira prevista, cada

imagem aplicada a compressão com um tipo de bloco e uma porcentagem de coeficientes

descartados, resultou em uma imagem diferente, com uma propriedade impar.

A função permitiu observar como a compressão atua sobre imagens quando utilizam a

transformada para melhorar os resultados. Os resultados são perceptivos nos detalhes de cada

imagem.

Os resultados foram possiveis de se conseguir através dos algortimos descritos no Anexo.

6. Conclusão

O trabalho descrito neste relatório apresentou exemplos com imagens da aplicação da

compressão de imagens utilizando as transformadas de Fourier (DCT e FFT), em duas imagens de

dimensões 256x256 utilizando o MATLAB, que é uma ferramenta específica e muito boa para

trabalhar com processamento de imagens, em especial compressão de imagens.

38

Page 39: Compressão de Imagens

Pode-se observar que quanto mais aumentamos a porcentagem de coeficientes a imagens

fica mais distorcida, chegando a ficar escura.

7. Referência Bibliográfica

Imagens Hibridas, disponível em

<http://www.inf.ufrgs.br/~dsmoura/inf01046/imagenshibridas>, acessado em 27/06/2009;

Introdução ao Processamento da Imagem Digital, disponível em

<http://www.ic.unicamp.br/~afalcao/mo443/aula13.pdf>, acessado em 27/06/2009;

Processamento de Imagens: Métodos e Análises, disponível em

<http://www.cbpf.br/cat/pdsi/pdf/ProcessamentoImagens.PDF>, acessado em 27/06/2009;

Processamento Digital de Imagens, disponível em

<http://www.visual.pro.br/cg1/pdf/tecimagem.pdf>, acessado em 27/06/2009;

Processamento de Imagens: Compressão de Imagens, disponível em

<http://gec.di.uminho.pt/lesi/vpc0405/Aula06Compress%C3%A3o.pdf>, acessado em 27/06/2009;

Introdução ao Processamento de Imagens Digitais, disponível em

<http://www.ene.unb.br/~juliana/cursos/semana/aulas/see-pi-jfc-1-2x1.pdf>, acessado em

27/06/2009;

MACHADO, Kleber Daum. Equações Diferenciais Aplicadas à Física. 2ª Edição. Local:

Editora UEPG, 2000;

39

Page 40: Compressão de Imagens

8. Anexos

Código Comprenssão

% Função Compressao(img,n,transf,pcd)

% Irá comprimir e descomprimir a imagem por meio das transfomadas

% Os parametros são:

% img = imagem que será comprimida

% n = tamanho dos blocos

% transf = tipo de transformada que será aplicada, pode ser:

% fft -- transformada de Fourier

% dct -- transformada discreta cosseno

% pcd = percentual de coeficientes a ser descartado para cada bloco

% Resulta na imagem original e resultante incluindo o valor de psnr

% PSNR -- método objetivo de avaliação de qualidade de vídeos e imagens.

function compressao(img,n,transf,pcd)

40

Page 41: Compressão de Imagens

 % Cria Matrizes com o mesmo tamanho da imagem origina

[X,Y] = size(img); % vai ser usada para reconstruir

N = n*n;

cond = abs(sqrt((X*Y)/N));

 if(strcmp(transf,'fft'))

fourier = 1;

elseif(strcmp(transf,'dct'))

fourier = 0;

end

 

% Calcula a quantidade de coeficientes serão selecionados

vz = abs((N) - ((pcd*N)/100));

 % Inicializa as variáveis

mx = 1;

my = 1;

% Começa o programa

for i=1:cond

for j=1:cond

bloco=img(mx:(mx+n-1),my:(my+n-1));

% verifica qual transformada será usada

if (fourier)

% função fix - converte para o inteiro mais proximo de zero

imgT = fft2(bloco);

else

imgT = dct2(bloco);

end

bloco2 = zeros(n,n);

 % Vai encontra os maiores coeficientes N-vezes(Nvz)

for z = 1:vz

% Seleciona o coeficiente de maior valor

maior = max(max(imgT));

% encontra posição do maior

[r,s] = find(imgT==maior);

41

Page 42: Compressão de Imagens

% No lugar dakele valor ele coloca 0

imgT(r,s) = 0;

% Atribui isso valor maior nas coordenadas encontradas acima

bloco2(r,s) = maior;

maior=0;

end

% figure(1), imshow(bloco2);

% Aplica-se a inversa

if (fourier)

imgInv(mx:(mx+n-1),my:(my+n-1)) = ifft2(bloco2);

else

imgInv(mx:(mx+n-1),my:(my+n-1)) = idct2(bloco2);

end

my=my+n;

end

% atualiza as variaveis

my = 1;

mx = mx+n;

end

 valor = abs(PSNR(img,imgInv));

disp('Valor de PSNR');

disp(valor);

 figure(1)

subplot(1,2,1),imshow(img),text(1,-50,'Imagem Original');

subplot(1,2,2),imshow(uint8(real(imgInv))),text(1,-50,'Imagem Resultante');

Código PSNR

 % Função que calcula a valor PSNR de duas imagens% original é a imagem original % test é a imagem que se quer comparar com a original% resulta o valor desse calculo function psnrvalue=PSNR(original,test);

42

Page 43: Compressão de Imagens

% Transforma os valores para double da imagem originalA=double(original);% Transforma os valores para double da imagem testB=double(test); % Pega o tamanho da imagem original[m,n]=size(A);% Pega o tamanho da imagem test[m2,n2]=size(B);% Compara para ver se as imagens tem o mesmo tamanhoif m2~=m | n2~=nerror('Erro -- Imagens de tamanhos diferentes');end% Calcula o valor de mse das matrizesmsevalue=0;for i=1:mfor j=1:nmsevalue=msevalue+(A(i,j)-B(i,j))^2;endendmsevalue=msevalue/(m*n);if msevalue==0error('Erro -- msevalue não possui valor');endsignal=0;for i=1:mfor j=1:nsignal=signal+A(i,j)^2;endendsignal=signal/(m*n);snrvalue=signal/msevalue;snrvalue=10*log10(snrvalue);psnrvalue=255^2/msevalue;psnrvalue=10*log10(psnrvalue);return; 

43