Você está na página 1de 43

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

Cuiabá, 28 de junho de 2009.


2

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
3

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
Fig. 28 ------------------------------------------------------------------------------------------------------------------------22
4
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
5
Fig. 60------------------------------------------------------------------------------------------------------------------------
27
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
6
Fig. 92 ------------------------------------------------------------------------------------------------------------------------
32
Fig. 93 ------------------------------------------------------------------------------------------------------------------------33
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
7

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
8
armazenamento exigido é reduzido. Deste modo, a compressão de imagens pode proporcionar
economias significantes.
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


9

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
10
39 39 126 126
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):


11
– É 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


12

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:
13
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;
14
- 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.
15

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
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.
16
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.
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.
17

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


18

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;
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;
19
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.

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


20

Fig. 15 – Imagem original Fig. 16 – Imagem resultante


As 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

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


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

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


22

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

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


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

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


24

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

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


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

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


26

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

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


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

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


28

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

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


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

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.

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


30

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

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


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

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.

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


32

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

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


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

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


34

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

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


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

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

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

Resultados dos calculos na função.


36
37
38

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.
Pode-se observar que quanto mais aumentamos a porcentagem de coeficientes a imagens
fica mais distorcida, chegando a ficar escura.
39

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;
40

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)
% 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;
41
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);
% 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
42
% 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);
% Transforma os valores para double da imagem original
A=double(original);
% Transforma os valores para double da imagem test
B=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 tamanho
if m2~=m | n2~=n
43
error('Erro -- Imagens de tamanhos diferentes');
end
% Calcula o valor de mse das matrizes
msevalue=0;
for i=1:m
for j=1:n
msevalue=msevalue+(A(i,j)-B(i,j))^2;
end
end
msevalue=msevalue/(m*n);
if msevalue==0
error('Erro -- msevalue não possui valor');
end
signal=0;
for i=1:m
for j=1:n
signal=signal+A(i,j)^2;
end
end
signal=signal/(m*n);
snrvalue=signal/msevalue;
snrvalue=10*log10(snrvalue);
psnrvalue=255^2/msevalue;
psnrvalue=10*log10(psnrvalue);
return;

Você também pode gostar