expansão de imagem #2mandrade/tvd/2006/trabalhos1-2004/td-trab1... · algoritmo linear), diferindo...

17
Faculdade de Engenharia da Universidade do Porto Engenharia Electrotécnica e de Computadores Expansão de Imagem #2 Televisão Digital António Alberto da Silva Marques Pedro Ricardo dos Reis Porto, 2004

Upload: others

Post on 28-Jan-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Expansão de Imagem #2mandrade/tvd/2006/trabalhos1-2004/TD-trab1... · algoritmo Linear), diferindo a forma de preenchimento dos zeros, como iremos descrever posteriormente. • DCT,

Faculdade de Engenharia da Universidade do Porto

Engenharia Electrotécnica e de Computadores

Expansão de Imagem #2

Televisão Digital

António Alberto da Silva Marques

Pedro Ricardo dos Reis

Porto, 2004

Page 2: Expansão de Imagem #2mandrade/tvd/2006/trabalhos1-2004/TD-trab1... · algoritmo Linear), diferindo a forma de preenchimento dos zeros, como iremos descrever posteriormente. • DCT,

Índice

1. Introdução e Objectivos 2. Algoritmos implementados

2.1. Princípios gerais sobre o qual assentam os algoritmos 3. Interface Gráfica 4. Apresentação dos resultados obtidos

4.1. Imagem “einstein.tif” (256x256) 4.1.1. Método da Frequências

4.1.1.1. FFT 4.1.1.1.1. Algoritmo linear, Factor de expansão = 2 4.1.1.1.2. Algoritmo recursivo, Factor de expansão = 2

4.1.1.2. DCT 4.1.1.2.1. Algoritmo linear, Factor de expansão = 2 4.1.1.2.2. Algoritmo recursivo, Factor de expansão = 2

4.1.2. Método Espacial 4.1.2.1. Algoritmo “Linear” 4.1.2.2. Algoritmo “Vizinho”

4.2. Imagem “movie20.bmp” (320x180) 4.2.1. Método da Frequências

4.2.1.1. FFT 4.2.1.1.1. Algoritmo linear, Factor de expansão = 1.5 4.2.1.1.2. Algoritmo recursivo, Factor de expansão = 1.5

4.2.1.2. DCT 4.2.1.2.1. Algoritmo linear, Factor de expansão = 1.5 4.2.1.2.2. Algoritmo recursivo, Factor de expansão = 1.5

4.2.2. Método Espacial 4.2.2.1. Algoritmo “Linear” 4.2.2.2. Algoritmo “Vizinho”

5. Análise dos resultados obtidos 6. Conclusões

Page 3: Expansão de Imagem #2mandrade/tvd/2006/trabalhos1-2004/TD-trab1... · algoritmo Linear), diferindo a forma de preenchimento dos zeros, como iremos descrever posteriormente. • DCT,

1. Introdução e Objectivos

Com este documento pretende-se descrever de forma sumária e objectiva o

trabalho realizado (Expansão de Imagem #2), no âmbito da disciplina de Televisão Digital.

O objectivo do trabalho consiste em expandir uma imagem no domínio das

frequências, recorrendo à utilização da transformada Fast Fourier Transform (FFT) ou da transformada Discrete Cousine Transform (DCT), acrescentando zeros em torno da matriz original de dimensões N x M. No entanto, também decidimos implementar a

expansão de imagem no domínio espacial, recorrendo à utilização do script para

MatLab para expandir uma imagem, “expansao.m”, fornecido na página da disciplina,

para deste modo, podermos tirar melhores conclusões sobre a expansão de imagem nos

dois domínios, utilizando diferentes algoritmos de processamento de imagem.

Como ponto de partida tivemos em consideração o trabalho desenvolvido pelos

colegas do ano anterior, 2003/2004, exploramo-lo e verificamos os resultados obtidos,

analisando-o com diferentes tipos de imagens.

Propusemo-nos então, a complementar o trabalho realizado pelos nossos colegas

do ano anterior. Para tal, implementamos uma nova interface gráfica e desenvolvemos

novas funcionalidades, mais concretamente propusemo-nos a:

� Desenvolver uma nova interface gráfica;

� Implementar novos algoritmos de expansão de imagem;

� Adaptar os algoritmos desenvolvidos no trabalho realizado anteriormente,

que manipulam a imagem no domínio das frequências, e, os novos

algoritmos implementados neste trabalho (existentes no ficheiro

“expansao.m”), que manipulam a imagem no domínio espacial, a

expandirem imagens de todos os tipos de cor;

� Testar com diferentes tipos de imagens, os diferentes tipos de algoritmos;

� Avaliar os resultados entre a imagem original e a imagem expandida,

efectuando uma análise crítica (e comparativa) de acordo com o tipo de

imagem utilizada (e.g. imagem com muito detalhe/ pouco detalhe) e os

diferentes métodos e algoritmos utilizados.

Desenvolvemos todo o trabalho utilizando a ferramenta Matlab.

2. Algoritmos implementados

Foram implementados diferentes tipos de algoritmos que trabalham em domínios

diferentes, i.e., domínio das frequências e domínio espacial.

• Domínio das frequências

o FFT (Fast Fourier Transform) � Linear

� Recursivo o DCT (Discrete Cousine Transform)

� Linear

� Recursivo

• Domínio espacial

o Bilinear interpolation (“Linear”) o Nearest-neighbour interpolation (“Vizinho”)

Page 4: Expansão de Imagem #2mandrade/tvd/2006/trabalhos1-2004/TD-trab1... · algoritmo Linear), diferindo a forma de preenchimento dos zeros, como iremos descrever posteriormente. • DCT,

2.1. Princípios gerais sobre o qual assentam os algoritmos

Nesta secção iremos descrever os algoritmos implementados, dando uma noção

geral sobre estes.

• FFT, utilizando o algoritmo Linear

o Após a imagem ser lida para uma variável (matriz), esta é convertida

para o domínio das frequências;

o Determina-se o tamanho da matriz;

o Calculam-se as dimensões da nova matriz (imagem expandida), esta

resulta da multiplicação do factor de expansão pelo respectivo

tamanho da altura e largura da matriz original (imagem lida);

o Calcula-se o n.º de linhas e colunas a preencher com zeros;

o Acrescenta-se à matriz original os zeros calculados anteriormente,

onde esta nova matriz equivale à imagem expandida;

o Converte-se a matriz novamente para o domínio espacial.

• FFT, utilizando o algoritmo Recursivo

o O princípio de funcionamento é semelhante ao anterior (Linear);

o A matriz expandida resulta da expansão interactivamente por factores

múltiplos de 2.

• DCT, utilizando o algoritmo Linear

o O princípio de funcionamento é equivalente ao da FFT (utilizando o

algoritmo Linear), diferindo a forma de preenchimento dos zeros,

como iremos descrever posteriormente.

• DCT, utilizando o algoritmo Recursivo

o O princípio de funcionamento é semelhante ao anterior (Linear);

o A matriz expandida resulta da expansão interactivamente por factores

múltiplos de 2.

• Bilinear interpolation

o A imagem expandida resulta da aproximação de uma média pesada

dos 4 pixels mais próximos. Começa-se por ir buscar os valores dos 4

pixels mais próximos e calcula-se a média pesada de acordo com a

distância.

• Nearest-neighbour interpolation

o A imagem expandida resulta da aproximação do valor do pixel mais

próximo

Page 5: Expansão de Imagem #2mandrade/tvd/2006/trabalhos1-2004/TD-trab1... · algoritmo Linear), diferindo a forma de preenchimento dos zeros, como iremos descrever posteriormente. • DCT,

3. Interface Gráfica

A interface gráfica que realizamos é apresentada na figura 1.

Figura 1: Interface Gráfica

Esta interface gráfica foi construída com o intuito de a tornar de fácil

manuseamento, dando a possibilidade de:

• abrir um browser que permite ao utilizado abrir e guardar qualquer tipo de

imagem;

• visualizar as propriedades da imagem selecciona;

• seleccionar o método e algoritmo pretendido

• inserir o factor de expansão pretendido;

• visualizar o espectro da imagem seleccionada e da imagem expandia (no

caso da imagem ser a cores o espectro da imagem expandida é visualizado

em cada um dos seus componente, i.e., R,G e B;

• visualizar a imagem seleccionada e a imagem expandida, no programa e/ou

em janela diferente (carregando os respectivos botões), para facilitar a

comparação das imagem

Page 6: Expansão de Imagem #2mandrade/tvd/2006/trabalhos1-2004/TD-trab1... · algoritmo Linear), diferindo a forma de preenchimento dos zeros, como iremos descrever posteriormente. • DCT,

4. Apresentação dos resultados obtidos Experimentámos o programa com diferentes tipos de imagens. Em seguida,

serão apresentados (em tamanho real, excepto os espectros) os resultados obtidos,

recorrendo a dois tipos de imagens diferentes e aos diferentes tipos de algoritmos.

4.1. Imagem “einstein.tif” (256x256)

4.1.1. Método da Frequências

4.1.1.1. FFT

Imagem Original

Espectro da Imagem Original

Page 7: Expansão de Imagem #2mandrade/tvd/2006/trabalhos1-2004/TD-trab1... · algoritmo Linear), diferindo a forma de preenchimento dos zeros, como iremos descrever posteriormente. • DCT,

4.1.1.1.1. Algoritmo linear, Factor de expansão = 2

Espectro da Imagem Expandida

Imagem Expandida

Page 8: Expansão de Imagem #2mandrade/tvd/2006/trabalhos1-2004/TD-trab1... · algoritmo Linear), diferindo a forma de preenchimento dos zeros, como iremos descrever posteriormente. • DCT,

4.1.1.1.2. Algoritmo recursivo, Factor de expansão = 2

Imagem Expandida

4.1.1.2. DCT

Imagem Expandida Espectro da Imagem Expandia

Page 9: Expansão de Imagem #2mandrade/tvd/2006/trabalhos1-2004/TD-trab1... · algoritmo Linear), diferindo a forma de preenchimento dos zeros, como iremos descrever posteriormente. • DCT,

4.1.1.2.1. Algoritmo linear, Factor de expansão = 2

Espectro da Imagem Expandida

Imagem Expandida

Page 10: Expansão de Imagem #2mandrade/tvd/2006/trabalhos1-2004/TD-trab1... · algoritmo Linear), diferindo a forma de preenchimento dos zeros, como iremos descrever posteriormente. • DCT,

4.1.1.2.2. Algoritmo recursivo, Factor de expansão = 2

Imagem Expandida

Page 11: Expansão de Imagem #2mandrade/tvd/2006/trabalhos1-2004/TD-trab1... · algoritmo Linear), diferindo a forma de preenchimento dos zeros, como iremos descrever posteriormente. • DCT,

4.1.2. Método Espacial

4.1.2.1. Algoritmo “Linear”

Imagem Expandida

Page 12: Expansão de Imagem #2mandrade/tvd/2006/trabalhos1-2004/TD-trab1... · algoritmo Linear), diferindo a forma de preenchimento dos zeros, como iremos descrever posteriormente. • DCT,

4.1.2.2. Algoritmo “Vizinho”

Imagem Expandida

4.2. Imagem “movie.jpg” (320x180)

4.2.1. Método da Frequências 4.2.1.1. FFT

Imagem Original Espectro da Imagem Original

Page 13: Expansão de Imagem #2mandrade/tvd/2006/trabalhos1-2004/TD-trab1... · algoritmo Linear), diferindo a forma de preenchimento dos zeros, como iremos descrever posteriormente. • DCT,

4.2.1.1.1. Algoritmo linear, Factor de expansão = 2

Espectro da R,G e B da Imagem Expandida

Imagem Expandida

4.2.1.1.2. Algoritmo recursivo, Factor de expansão = 2

Imagem Expandida

Page 14: Expansão de Imagem #2mandrade/tvd/2006/trabalhos1-2004/TD-trab1... · algoritmo Linear), diferindo a forma de preenchimento dos zeros, como iremos descrever posteriormente. • DCT,

4.2.1.2. DCT

Imagem Expandida Espectro da Imagem Expandia

4.2.1.2.1. Algoritmo linear, Factor de expansão = 2

Espectro da R,G e B da Imagem Expandida

Imagem Expandida

Page 15: Expansão de Imagem #2mandrade/tvd/2006/trabalhos1-2004/TD-trab1... · algoritmo Linear), diferindo a forma de preenchimento dos zeros, como iremos descrever posteriormente. • DCT,

4.2.1.2.2. Algoritmo recursivo, Factor de expansão = 2

Imagem Expandida

4.2.2. Método Espacial

4.2.2.1. Algoritmo “Linear”

Imagem Expandida

Page 16: Expansão de Imagem #2mandrade/tvd/2006/trabalhos1-2004/TD-trab1... · algoritmo Linear), diferindo a forma de preenchimento dos zeros, como iremos descrever posteriormente. • DCT,

4.2.2.2. Algoritmo “Vizinho”

Imagem Expandida

5. Análise dos resultados obtidos

Quanto à imagem “einstein.tif” podemos concluir:

• no domínio das frequências obtivemos melhores resultados com a transformada

DCT do que a transformada FFT;

• existem pequenas alterações na imagem, e.g. tonalidade da imagem, isto deve-

se ao facto de que quando utilizamos a transformada (DCT/FFT) esta produz

alterações nos coeficientes da imagem;

• o algoritmo recursivo e o algoritmo linear, nas duas transformadas, produzem

resultados semelhantes, no entanto o algoritmo recursivo produz melhor

eficiência espectral;

• no domínio espacial, utilizando o algoritmo “vizinho” obtivemos uma melhor

imagem, mas mais “pixelizada” do que utilizando o algoritmo linear;

• em comparação com os dois domínios, verifica-se que o domínio espacial

produz uma imagem mais parecida com a imagem original.

Quanto à imagem “movie20.bmp” podemos concluir:

• no domínio das frequências obtivemos melhores resultados com a transformada

DCT do que a transformada FFT;

• existem pequenas alterações na imagem, e.g. tonalidade da imagem, isto deve-se

ao facto de que quando utilizamos a transformada (DCT/FFT) esta produz

alterações nos coeficientes da imagem;

• o algoritmo recursivo e o algoritmo linear, nas duas transformadas, produzem

resultados semelhantes, no entanto nesta imagem consegue-se verificar que o

algoritmo recursivo produz uma imagem com melhor tonalidade;

• no domínio espacial, utilizando o algoritmo “vizinho” obtemos uma melhor

imagem mas mais “pixelizada” do que utilizando o algoritmo linear;

• o domínio espacial pouco altera as tonalidades da imagem original;

• em comparação com os dois domínios, verifica-se que o domínio espacial

produz uma imagem mais parecida com a imagem original.

Page 17: Expansão de Imagem #2mandrade/tvd/2006/trabalhos1-2004/TD-trab1... · algoritmo Linear), diferindo a forma de preenchimento dos zeros, como iremos descrever posteriormente. • DCT,

6. Conclusões

Com a realização deste trabalho tornou-se possível colocar e verificar na prática os

conceitos adquiridos teoricamente.

Defrontamo-nos com algumas dificuldades, as quais encaramos como um desafio

que permitiu um maior empenho para a concretização dos objectivos a que nos

propusemos. A expansão de imagens a cores e colocar as imagens expandidas a serem

guardadas para um ficheiro representaram as nossas maiores dificuldades. Quanto à

expansão de imagens a cores o objectivo foi concluído com sucesso, contudo, no que

respeita à gravação de imagens expandidas para um ficheiro, conseguimos guardar com

sucesso as imagens a cores, no entanto, as imagens de escala cinza quando aplicado os

métodos das frequências, algumas das imagens escurecem e apenas se torna possível a

sua visualização correcta abrindo o programa e aplicando algum dos métodos com

factor de expansão igual a 1.

No que concerne ao problema mencionado, este está associado com a manipulação

de uint8 e double, no Matlab, na gravação da imagem expandida para o ficheiro.

Concluindo, podemos considerar que os objectivos a que no propusemos foram

atingidos e este trabalho foi realizado com sucesso.