UNIVERSIDADE FEDERAL DO PARÁ ITEC FACULDADE DE ENGENHARIA DA COMPUTAÇÃO E TELECOMUNICAÇÕES HAROLDO PITEIRA GONÇALVES TÉCNICAS BÁSICAS DE RESTAURAÇÃO DE IMAGENS DIGITAIS BELÉM, PARÁ 2013 HAROLDO PITEIRA GONÇALVES TÉCNICAS BÁSICAS DE RESTAURAÇÃO DE IMAGENS DIGITAIS Trabalho de Conclusão de Curso apresentado no curso de Engenharia da Computação da Universidade Federal do Pará, como requisito parcial para obtenção do grau de Engenheiro da Computação. Orientador: Ronaldo de Freitas Zampolo BELÉM, PARÁ 2013 HAROLDO PITEIRA GONÇALVES TÉCNICAS BÁSICAS DE RESTAURAÇÃO DE IMAGENS DIGITAIS Trabalho de Conclusão de Curso apresentado no curso de Engenharia da Computação da Universidade Federal do Pará, como requisito parcial para obtenção do grau de Engenheiro da Computação. Aprovada em: __/__/____ BANCA EXAMINADORA Prof. Ronaldo de Freitas Zampolo Universidade Federal do Pará - UFPA Orientador Prof. Agostinho Luiz da Silva Castro Universidade Federal do Pará - UFPA Prof. Eurípedes Pinheiro dos Santos Universidade Federal do Pará - UFPA Prof. Francisco Carlos Bentes Frey Muller Universidade Federal do Pará - UFPA Diretor da Faculdade de Engenharia da Computação e Telecomunicações AGRADECIMENTOS Agradeço aos meus pais e ao meu orientador pelo apoio fundamental. “A persistência é o menor caminho do êxito.” SUMÁRIO 1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.1 Motivação e contexto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 Objetivo do trabalho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.3 Organização do trabalho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 As imagens digitais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2.1 Conceito de imagem digital . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2.2 Representação da imagem digital . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.3 Domínio da frequência . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.3.1 Transformada discreta de Fourier bidimensional (2DDFT) . . . . . . . . . . . . . . . . . . . . 6 2.3.2 Transformada rápida de Fourier bidimensional (2DFFT) . . . . . . . . . . . . . . . . . . . . . . 7 2.3.3 Resposta em frequência . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Restauração de imagens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3.1 A restauração . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3.2 A técnica da restauração . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3.3 Definição de h[x,y] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 3.4 Embaçamento (“Blurring”) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2 3 3.4.1 Motion blur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 3.4.2 Atmospheric turbulence blur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.4.3 Uniform out-of-focus blur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.4.4 Uniform 2-D blur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 3.5 Ruído gaussiano aditivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 3.6 Estimação dos parâmetros da PSF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 3.6.1 Motion blur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.6.2 Uniform out-focus blur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.6.3 Uniform 2-D blur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.7 Argumento x Estimação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.8 Argumento x Erro Relativo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 3.9 Modelos de restauração . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 3.9.1 Conceito . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 3.10 Filtragem inversa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 3.10.1 Filtragem inversa – procedimento prático . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 3.10.2 Vantagens e desvantagens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 3.11 Filtragem de Wiener . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 3.11.1 Filtragem de Wiener – procedimento prático . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 3.11.2 Vantagens e desvantagens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 3.11.3 Motivos que levaram a escolha dos métodos de restauração . . . . . . . . . . . . . . . . . . . . 29 4 Análise de resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 4.1 4.1.1 4.2 Métodos de análise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 BSNR e ISNR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Descrição do código fonte por diagramas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 4.2.1 Inserção de embaçamento na imagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 4.2.2 Inserção de ruído na imagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 4.2.3 Filtragem inversa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.2.4 Filtragem de Wiener . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 4.3 Resultados – filtragem inversa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 4.3.1 ISNR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 4.3.2 Análise geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 4.4 Resultados – filtragem de Wiener . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 4.4.1 ISNR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 4.4.2 Análise geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 4.5 Melhores resultados obtidos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 4.5.1 Filtragem inversa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 4.5.1.1 Motion blur movimento horizontal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 4.5.1.2 Atmospheric turbulence blur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 4.5.1.3 Uniform out-of-focus blur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 4.5.1.4 Uniform 2-D blur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 4.5.2 Filtragem de Wiener . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 4.5.2.1 Motion blur movimento horizontal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 4.5.2.2 Atmospheric turbulence blur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 4.5.2.3 Uniform out-of-focus blur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 4.5.2.4 Uniform 2-D blur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 5 Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 5.1 Considerações finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 5.2 Trabalhos futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 Referências Bibliográficas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 LISTA DE FIGURAS Figura 2.1 Níveis de Cinza. Fonte:<http://pt.wikipedia.org/wiki/N>. ................. 4 Figura 2.2 Representação de um pixel em uma imagem digital bidimensional. Fonte: <http://www.dcc.unicamp.br/ cpg/material-didatico/mo815/9802/curso/node6.html>. Figura 2.3 Representação de uma imagem digital bidimensional. Fonte: [5]. .......... 4 ........ 5 ................... 6 Figura 2.4 Representação de uma imagem digital bidimensional. Fonte : [14]. Figura 2.5 Processamento no domínio de frequência usando DFT. Figura 3.1 Modelo do processo de degradação e restauração de uma imagem. Figura 3.2 Imagem original. . . . . . . . . . 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Figura 3.3 Imagem após o motion blur de 11 pixels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Figura 3.4 Imagem após o motion blur de 21 pixels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Figura 3.5 Imagem original. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Figura 3.6 Embaçamento gaussiano com α = 3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 4 Figura 3.7 Embaçamento gaussiano com α = 6. Figura 3.8 Imagem original. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Figura 3.9 Uniform out-of-focus blur com R = 5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Figura 3.10 Uniform out-of-focus blur com R = 10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 Figura 3.11 Imagem original. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Figura 3.12 Uniform 2-D blur com X e Y = 11. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Figura 3.13 Uniform 2-D blur com X e Y = 21. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Figura 3.14 Estimação motion blur com argumentos de um a noventa e nove ímpares. . . 22 Figura 3.15 Estimação uniform 2-D blur com argumentos de um a noventa e nove ímpares. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 Figura 3.16 Estimação uniform out-of-focus blur com argumentos de um a noventa e nove ímpares. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 Figura 3.17 Erro relativo motion blur com argumentos de um a noventa e nove. . . . . . . . . 24 Figura 3.18 Erro relativo uniform 2-D blur com argumentos de um a noventa e nove. . . . 25 Figura 3.19 Erro relativo uniform out-of-focus blur com argumentos de um a noventa e nove. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Figura 3.20 Modelo de restauração . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Figura 3.21 Obtenção da imagem restaurada. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Figura 4.1 Diagrama – Inserção de embaçamento na imagem. . . . . . . . . . . . . . . . . . . . . . . . 34 Figura 4.2 Diagrama – Inserção de ruído na imagem. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 Figura 4.3 Diagrama – Restauração por filtragem inversa. . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 Figura 4.4 Diagrama – Restauração por filtragem de Wiener. . . . . . . . . . . . . . . . . . . . . . . . . 38 Figura 4.5 Filtragem inversa – melhor resultado Motion Blur Movimento Horizontal. Figura 4.6 Filtragem inversa – melhor resultado Atmospheric Turbulence Blur. . . 49 . . . . . . . 50 Figura 4.7 Filtragem inversa – melhor resultado Uniform Out-of-Focus Blur. . . . . . . . . . 50 Figura 4.8 Filtragem inversa – melhor resultado Uniform Uniform 2-D Blur. . . . . . . . . . 51 Figura 4.9 Filtragem de Wiener – melhor resultado Motion Blur Movimento Horizontal. Figura 4.10 Filtragem de Wiener – melhor resultado Atmospheric Turbulence Blur. 52 . . . . 53 Figura 4.11 Filtragem de Wiener – melhor resultado Uniform Out-of-Focus Blur. . . . . . . 53 Figura 4.12 Filtragem de Wiener – melhor resultado Uniform Uniform 2-D Blur. . . . . . . . 54 LISTA DE TABELAS Tabela 4.1 Resultados: filtragem inversa (PSF Motion Blur Movimento Horizontal). Tabela 4.2 Resultados: filtragem inversa (PSF Atmospheric Turbulence Blur). Tabela 4.3 Resultados: filtragem inversa (PSF Uniform Out-of-Focus Blur). Tabela 4.4 Resultados: filtragem inversa (PSF Uniform 2-D Blur). . . . . . . . . 39 . . . . . . . . . . 39 . . . . . . . . . . . . . . . . . . . 39 Tabela 4.5 Resultados: filtragem inversa (PSF Motion Blur Movimento Horizontal). Tabela 4.6 Resultados: filtragem inversa (PSF Atmospheric Turbulence Blur). Tabela 4.7 Resultados: filtragem inversa (PSF Uniform Out-of-Focus Blur). Tabela 4.8 Resultados: filtragem inversa (PSF Uniform 2-D Blur). . . . 40 . . . . . . . . 40 . . . . . . . . . . 41 . . . . . . . . . . . . . . . . . . . 41 Tabela 4.9 Resultados: filtragem inversa (PSF Motion Blur Movimento Horizontal). Tabela 4.10 Resultados: filtragem inversa (PSF Atmospheric Turbulence Blur). Tabela 4.11 Resultados: filtragem inversa (PSF Uniform Out-of-Focus Blur). Tabela 4.12 Resultados: filtragem inversa (PSF Uniform 2-D Blur). . . . 39 . . . 41 . . . . . . . . 42 . . . . . . . . . . 42 . . . . . . . . . . . . . . . . . . . 42 Tabela 4.13 Resultados: filtragem de Wiener (PSF Motion Blur Movimento Horizontal). Tabela 4.14 Resultados: filtragem de Wiener (PSF Atmospheric Turbulence Blur). Tabela 4.15 Resultados: filtragem de Wiener (PSF Uniform Out-of-Focus Blur). Tabela 4.16 Resultados: filtragem de Wiener (PSF Uniform 2-D Blur). . . . . . 44 . . . . . . . 45 . . . . . . . . . . . . . . . . 45 Tabela 4.17 Resultados: filtragem de Wiener (PSF Motion Blur Movimento Horizontal). Tabela 4.18 Resultados: filtragem de Wiener (PSF Atmospheric Turbulence Blur). Tabela 4.19 Resultados: filtragem de Wiener (PSF Uniform Out-of-Focus Blur). Tabela 4.20 Resultados: filtragem de Wiener (PSF Uniform 2-D Blur). 45 . . . . . 46 . . . . . . . 46 . . . . . . . . . . . . . . . . 46 Tabela 4.21 Resultados: filtragem de Wiener (PSF Motion Blur Movimento Horizontal). Tabela 4.22 Resultados: filtragem de Wiener (PSF Atmospheric Turbulence Blur). Tabela 4.23 Resultados: filtragem de Wiener (PSF Uniform Out-of-Focus Blur). Tabela 4.24 Resultados: filtragem de Wiener (PSF Uniform 2-D Blur). 44 47 . . . . . 47 . . . . . . . 48 . . . . . . . . . . . . . . . . 48 LISTA DE SIGLAS BSNR DFT FFT FT ISNR MSE PDI Pixel PSF Qos RMS Razão entre sinal degradado e ruído (Blurred Signal-To-Noise Ratio) Transformada Discreta de Fourier (Discrete Fourier transform) Transformada Rápida de Fourier (Fast Fourier Transform) Transformada de Fourier Melhoramento na razão entre sinal e ruído (Improvement In Signal-To-Noise Ratio) Erro quadrático médio (mean square error) Processamento Digital de Imagens Elemento de Imagem (Picture Element) Função de Espalhamento de Ponto (Point Spread Function) Qualidade de Serviço (Quality of Service) Raiz Quadrada Média (Root Mean Square) RESUMO A restauração de imagens é subárea de grande importância do processamento digital de sinais. Seu uso se justifica quando imagens digitais sofrem degradações causadas por fatores externos, tais como: borramento introduzido pelo sistema óptico, mudança de índice de refração atmosférico, movimento da imagem, bem como o ruído eletrônico e fotométrico. As técnicas de restauração consideram um modelo de formação da imagem na sua estruturação. No presente trabalho, é apresentada uma revisão de duas técnicas de restauração de imagens digitais. Os aspectos teóricos de cada uma das técnicas estudadas são apresentados em detalhes, bem como resultados comparativos obtidos por simulação. Para implementação das técnicas estudadas foi usado o software Matlab. Palavras-Chave: Processamento digital de imagens, Degradações, Restauração de Imagens. ABSTRACT The restoration of images is very important subfield of digital signal processing. Its use is justified when digital images suffer degradations caused by external factors, such as: blurring introduced by the optical system, change of refractive index atmospheric, moving image, as well as electronic noise and photometric. The restoration techniques consider a model of image formation in its structure. In this paper, we present a review of two techniques for restoration of digital images. Theoretical aspects of each of the techniques studied are presented in detail, as well as comparative results obtained by simulation. To implement the techniques studied was used Matlab. Keywords: Digital image processing, Degradations, Image Restoration . 1 CAPÍTULO 1 INTRODUÇÃO 1.1 Motivação e contexto Dentre as aplicações do processamento digital de sinais, a área da restauração de imagens se destaca como uma das mais desafiadoras e tradicionais. Sua utilização busca recuperar a qualidade de uma imagem degradada, em geral, por filtragem e contaminação por ruído, mediante a inversão dos efeitos do sistema de aquisição a partir de um modelo teste. Entre os anos 50 e 60 do século XX, o mundo vivenciava a chamada corrida pelo espaço. Em meio à luta pela superioridade tecnológica referente à ida ao espaço entre Estados Unidos e a antiga União Soviética, foi feito um grande investimento financeiro e humano pela tecnologia espacial. Neste cenário, a restauração de imagens teve um grande desenvolvimento tecnológico e pôde ser usada em outras áreas. No entanto as formas nas quais se adquiri uma imagem espacial são desfavoráveis. Somado a questões ambientais, como gravidade zero e diferença na temperatura, existem outros fatores que colaboram para a degradação de uma imagem, como, por exemplo os movimentos de rotação e translação do equipamento fotográfico em referência ao objeto a ser fotografado, a complexidade para consertar um casual desajuste ou desgaste do equipamento de aquisição, interferência eletromagnética, etc. [3], [12]. Dessa forma, naquela situação de desbravadorismo, em função da principiante tecnologia espacial, era normal que as imagens vindas das sondas apresentassem uma qualidade abaixo do esperado. Uma vez que o investimento na aquisição e o valor científico daquelas imagens eram incalculáveis surgiu uma grande necessidade de que um processamento posterior à aquisição melhorasse a qualidade do material fotografado. É desta forma, seguida por fatores de ordem política, econômica e científica, que a restauração de imagens recebe um forte impulso da corrida espacial [3], [12]. 2 1.2 Objetivo do trabalho Neste trabalho, tem-se como finalidade obter o Melhoramento na Razão entre Sinal e Ruído ( Improvement in Signal to Noise Ratio – ISNR) das imagens restauradas utilizando o filtro inverso e o de Wiener, com o objetivo de realizar um estudo comparativo entre técnicas de restauração. No trabalho foi apresentada também a estimação do parâmetro principal de cada Função de Espalhamento de Ponto (Point Spread Function – PSF) comparando esta estimação com o valor real dos parâmetros utilizados. Através do software Matlab se executou a degradação e os filtros de restauração, obtendo o valor da métrica ISNR de acordo com o valor do parâmetro da PSF determinado e a quantidade de ruído adicionado, para poder tirar as devidas conclusões. 1.3 Organização do trabalho O presente texto encontra-se organizado conforme mostrado a seguir. No Capítulo 2, é abordado a imagem digital e suas características e o conceito da transformada discreta de Fourier bidimensional. O Capítulo 3 apresenta os modelos de degradação e de restauração da imagem, os tipos de degradação utilizados – embaçamento (motion blur movimento horizontal, atmospheric turbulence blur, uniform out-of-focus blur e uniform 2-D blur) e ruído aditivo – e suas modelagens matemáticas, bem como um método de estimação de parâmetros. No Capítulo 4, são apresentadas duas técnicas de restauração: o filtro inverso e o filtro de Wiener. Ainda neste capítulo são abordados os motivos que levaram à escolha de tais filtros. Mostra as descrições do código fonte em diagramas. Apresenta através de tabelas a simulação realizada no Matlab que contém a análise de desempenho das simulações, o ISNR, que mede o desempenho obtido pelos filtros de acordo com o tipo de degradação utilizado, descreve os filtros com suas vantagens e desvantagens. O Capítulo 5, expõe as considerações finais do trabalho e destaca idéias para projetos futuros. Ao final do texto, são relacionadas as referências bibliográficas. 3 CAPÍTULO 2 AS IMAGENS DIGITAIS 2.1 Conceito de imagem digital De maneira geral, imagem é uma representação gráfica de objetos que nos cercam. Em Processamento Digital de Imagens (PDI), a imagem digital é uma área bidimensional do espaço na qual em cada ponto, denominado pixel, verificamos uma cor ou intensidade de cinza, representada por números binários codificados de modo a possibilitar seu armazenamento, transferência, impressão ou reprodução, e seu processamento por meios eletrônicos, os pixels formam uma matriz de números, resultantes do processo de amostragem e quantização. A amostragem é o processo de discretização espacial, já a quantização é o processo de discretização em amplitude. De uma forma resumida, a amostragem transforma a imagem análogica em uma matriz de M por N pontos (2.1), que são denominados pixels. Por outro lado, a quantização atribui um valor inteiro para cada pixel, na faixa de 0 a 2n − 1 (figura 2.1) [7]. Quanto maior o valor de n, maior o número de tons presentes na imagem digitalizada. A figura 2.1 apresenta uma escala de 256 níveis de cinza, onde o valor 0 (zero) representa a cor preta e o valor 255 representa a cor branca. Entre estes valores há a variação na tonalidade de cinza, como pode ser observado. f (x, y) = f (0, 0) f (1, 0) .. . f (0, 1) f (1, 1) .. . ... ... f (0, N − 1) f (1, N − 1) .. . ... f (M − 1, 0) f (M − 1, 1) . . . f (M − 1, N − 1) M×N (2.1) 4 Figura 2.1: Níveis de Cinza. Fonte:<http://pt.wikipedia.org/wiki/N>. 2.2 Representação da imagem digital Uma imagem monocromática é representada por uma função bidimensional contínua f (x, y), na qual x e y são coordenadas espaciais e o valor de f nos pontos (x, y) tem relação direta com a intensidade luminosa (brilho ou nível de cinza) no ponto considerado [10] [1] [6]. Visto que o computador não trabalha com imagens contínuas, mas sim com imagens na forma digital, é preciso representar a imagem como uma matriz bidimensional de pontos como representado na figura 2.2. Figura 2.2: Representação de um pixel em uma imagem digital bidimensional. <http://www.dcc.unicamp.br/ cpg/material-didatico/mo815/9802/curso/node6.html>. Fonte: De forma mais genérica, a imagem digital é representada como uma função bidimensional discreta. Depois da sua discretização observa-se uma imagem no domínio discreto e sua codificação é representada por uma matriz de números [5]. A figura 2.3 ilustra a representação matricial da imagem da figura em uma região de interesse de 10 x 10 pixels (à direita) em torno de um ponto indicado sobre o olho da Lena (à esquerda). Figura 2.3: Representação de uma imagem digital bidimensional. Fonte: [5]. Na figura 2.4, exibe-se a forma matricial para a localização de um pixel numa matriz 5 de pixels de uma imagem bidimensional. O primeiro índice expressa a posição da linha, m, na qual o pixel se encontra, enquanto o segundo, n, expressa a posição da coluna. O valor existente no elemento da matriz determina o nível de cinza naquele ponto. Se a imagem digital possuir M linhas e N colunas, o índice m variará de 0 a M − 1, enquanto n variará de 0 a N − 1 [14]. Observa-se o sentido de leitura e a convenção geralmente adotada na representação espacial de uma imagem digital. Figura 2.4: Representação de uma imagem digital bidimensional. Fonte : [14]. 6 2.3 Domínio da frequência No domínio da frequência três passos são essenciais em PDI de acordo com a figura 2.5. Primeiramente a imagem é transformada do domínio espacial para o da frequência, através da transformada discreta de Fourier (DFT). O segundo passo é executar as operações na imagem. E o terceiro passo permite que a imagem seja exibida e vista por olhos humanos através da transformada inversa. Figura 2.5: Processamento no domínio de frequência usando DFT. Jean Baptiste Fourier (1768 - 1830) deduziu que uma função periódica pode ser representada através de uma soma de senos e/ou cossenos de diferentes frequências [7]. Como na equação abaixo: ∞ f (x) = a0 + ∑ [an sen(nx) + bn cos(nx)] (2.2) n=1 Fourier abordou outras situações colocando que, mesmo funções que não são periódicas podem ser representadas por uma integral de senos e/ou cossenos. Neste caso temos as transformadas de Fourier (FT). No trabalho proposto usou-se as formas discreta (DFT) e rápida transformada rápida de Fourier (FFT) e é de fundamental importância à compreenção das suas propiedades uma vez que a mudança de domínio do espaço para o domínio da frequência e vice-versa, ocorrem através dessas transformadas. Na FT não ocorre a perda de informação na mudança de domínios, a informação apenas muda de forma no domínio da frequência sendo representada de uma forma diferente. 2.3.1 Transformada discreta de Fourier bidimensional (2DDFT) A DFT bidimensional de uma função f (x, y) no domínio espacial de dimensão M x N, onde M = N (matriz quadrada ), é dada por : − j2π 1 N−1 N−1 F(u, v) = ∑ ∑ f (x, y)e N x=0 y=0 ux + vy N (2.3) 7 para u, v = 0, 1, ..., N − 1, onde f (x, y) é a imagem original, F(u, v) é a representação da imagem original no domínio da frequência, M e N representam o número de linhas e colunas da matriz respectivamente. A transformada inversa da equação (2.3) é representada por: j2π 1 N−1 N−1 f (x, y) = ∑ ∑ F(u, v)e N u=0 v=0 ux + vy N (2.4) para x, y = 0, 1, ..., N − 1. 2.3.2 Transformada rápida de Fourier bidimensional (2DFFT) A FFT é um algoritmo que tem por finalidade simplificar a complexidade computacional do cálculo de uma FT de N pontos, usando um procedimento que determina várias FTs parciais com um pequeno número de pontos, sendo o número de adições e multiplicações proporcionais a N log 2N [11]. Ou seja, a FFT tem por objetivo desagregar uma função de N pontos, em várias funções aplicadas em cada ponto, e após este processo determinar os espectros de frequência em cada ponto das funções. A partir de então juntar na ordem reversa de acordo com a amostra original os N espectros em um único espectro [16]. Substituindo o método usual de cálculo das FTs em que a quantidade de adições e multiplicações é proporcional a N 2 . 2.3.3 Resposta em frequência Na utilização da DFT em restauração de imagens digitais, a imagem de entrada que passa pelo processo de DFT pode ser representada por um grupo de ondas senos ou cossenos, cada uma com sua frequência e amplitude. A função que responde ao impulso no domínio espacial é chamada de resposta ao impulso e no trabalho proposto é representada pelas funções de embaçamento ( motion blur, atmospheric turbulence blur, uniform out-of-focus blur e uniform 2-D blur ), dadas por h(x, y). Em processamento de imagens, a resposta ao impulso é chamada de PSF. Sua FT é a resposta à frequência e é dada por H(u, v). A resposta à frequência de um sistema é a transformada de Fourier de sua resposta ao impulso [16]. No trabalho proposto o processo de restauração das imagens degradadas, realizada através dos filtros inverso e de Wiener, ocorrerá no domínio da frequência, pela facilidade de cálculos e pelas vantagens de se trabalhar com a FT. Os sistemas no domínio espacial são descritos pela convolução que é representada pelo símbolo asterisco (∗), dada por : g(x, y) = f (x, y) ∗ h(x, y) (2.5) No domínio da frequência, a operação equivalente à realizada na equação (2.5) é a multiplicação da FT da imagem original com a resposta em frequência do sistema : 8 G(u, v) = F(u, v)H(u, v) (2.6) 9 CAPÍTULO 3 RESTAURAÇÃO DE IMAGENS 3.1 A restauração A restauração de imagens tem por propósito corrigir a imagem de distorções e degradações. E tem como resultado uma aparência visualmente melhorada. É uma técnica de restauração ou recuperação de imagens degradadas e tem como característica o conhecimento anterior da função degradante, conhecida como PSF, que atua em cada ponto da imagem [7]. O trabalho proposto atenta para o nível de recuperação das imagens com a aplicação de diferentes técnicas de restauração. 3.2 A técnica da restauração Primeiramente se aplica a degradação das imagens através das funções de degradação h(x, y), juntamente com um ruído aditivo n(x, y). O ruído aditivo é um sinal somado ao processo de degradação. E a função de degradação h(x, y) age gerando o embaçamento na imagem, utilizando as PSFs (motion blur, atmospheric turbulence blur, uniform out-of-focus blur e uniform 2-D blur) que provocam diferentes tipos de embaçamento nas imagens. Uma vez que se conhece a imagem degradada, o fator degradante e o ruído aditivo, a finalidade da técnica de restauração é dessa forma adquirir fˆ(x, y) que é a imagem próxima da original. Processo este demonstrado na figura 3.1. 10 Figura 3.1: Modelo do processo de degradação e restauração de uma imagem. A imagem degradada y(x, y) é representada do domínio da frequencia como Y (u, v) = H(u, v)F(u, v)+N(u, v), onde os termos G(u, v), H(u, v), F(u, v) e N(u, v) são as representações das FT’s de g(x, y), h(x, y), f (x, y) e n(x, y), respectivamente, e a imagem restaurada fˆ(x, y) por F̂(u, v) = (Filtro) Y (u, v). 3.3 Definição de h[x,y] Neste trabalho, foi utilizada uma imagem de dimensão 512 x 512 pixels. A PSF tem como objetivo causar o embaçamento, e é definida pelo nome h que armazena uma matriz de acordo com o modelo da PSF usada (motion blur, atmospheric turbulence blur, uniform outof-focus blur e uniform 2-D blur). A partir desse momento aplica-se, então, o fator definido para a PSF nos elementos da matriz, para que possam interagir sobre a imagem provocando o embaçamento. Essa matriz tem a forma h0 hN−1 h1 h0 h= . .. ... hN−1 hN−2 3.4 . . . h1 . . . h2 .. . ... . . . h0 (3.1) Embaçamento (“Blurring”) A forma mais comum de degradação de imagem é o embaçamento, gerado pela vibração da camera, movimento do sensor ou do alvo durante a obtenção da imagem, refração ou devido a problemas de foco ou à resolução finita do dispositivo ótico usado para capturar a imagem [7]. Esta denominação ocorre devido ao fato de todo sistema ótico provocar algum 11 grau de espalhamento (embaçamento) em cada ponto de luz que o atravessa. O grau de espalhamento provocado determina a qualidade do sistema ótico utilizado [7]. No trabalho proposto, aplicou-se degradações por embaçamento na imagem original, representado pela equação (2.5). Dentre os modelos de PSF’s existentes, no trabalho utilizaremos embaçamentos: motion blur, atmospheric turbulence blur, uniform out-of-focus blur e uniform 2-D blur. 3.4.1 Motion blur Degradação comum em movimento relativo linear entre objeto e câmera. Por exemplo, quando um carro em movimento é fotografado com obturador da máquina fotográfica ajustado em baixa velocidade. Pela análise humana, o efeito é análogo a um borramento da imagem em uma única direção (a do movimento relativo) [18]. A equação (3.2) apresenta o modelo para o caso de deslocamento linear horizontal. L 1 −L , ≤x≤ h(x) = L 2 2 0, outro caso (3.2) Onde L é uma constante que representa o valor do deslocamento, em pixels, entre objeto e câmera. 12 Exemplo 3.1: Distorção do tipo motion blur horizontal com 11 (onze) pixels de comprimento. Figura 3.2: Imagem original. Figura 3.3: Imagem após o motion blur de 11 pixels. Na figura 3.3 podemos ver que o efeito de aplicar esta distorção é a aparência de ter capturado a imagem em movimento horizontal. Exemplo 3.2: Neste caso mostramos uma distorção do tipo motion blur horizontal com 21 (vinte e um) pixels. Na figura 3.4 podemos ver o efeito da PSF com 21 pixels, é evidente que a distorção é mais forte que no exemplo com 11 pixels. 13 Figura 3.4: Imagem após o motion blur de 21 pixels. 3.4.2 Atmospheric turbulence blur Este é um evento que ocorre geralmente em sensoriamento remoto e imagem aérea. O embaçamento é gerado por perturbações no ar conhecidas como turbulência devido a uma exposição a longo prazo. A turbulência provoca variações aleatórias na densidade do ar, e consequentemente em seu índice de refração da atmosfera situada entre o objeto de interesse e o equipamento de aquisição [4]. Porém, regulando de forma correta a velocidade de aquisição, a turbulência atmosférica é modelada, considerando o teorema do limite central [13], como sendo gaussiana [8] de acordo com a equação 3.3. 14 h(x, y) = K exp x2 + y2 − 2α 2 ! , (3.3) Onde K é uma constante de normalização e α é o desvio padrão que determina a gravidade da degradação. Exemplo 3.4: Neste caso mostramos uma distorção do tipo atmospheric turbulence blur com α = 3. Figura 3.5: Imagem original. Figura 3.6: Embaçamento gaussiano com α = 3. Exemplo 3.5: Neste caso mostramos uma distorção do tipo atmospheric turbulence blur com α = 6. 15 Figura 3.7: Embaçamento gaussiano com α = 6. 3.4.3 Uniform out-of-focus blur O uniform out-of-focus blur representa modelos de defocagem simples presente em vários sistemas de imagem com uma distribuição de intensidade uniforme de um disco circular. Este tipo de degradação é devidos principalmente aos seguintes fatores: o comprimento focal, o tamanho e forma da abertura da câmara, a distância entre o objeto e a câmera, o comprimento de onda da luz de entrada, e os efeitos devido à difração. É difícil para obter todos estes parâmetros depois que uma imagem foi tirada, no entanto, podemos usar o modelo uniform out-of-focus como uma aproximação da PSF [15]. 16 h(x, y) = 1 , πR2 0, Se p x2 + y2 ≤ R (3.4) outro caso Onde R indica o raio da degradação. Exemplo 3.7: Neste caso mostramos uma distorção do tipo uniform out-of-focus blur com R = 5. Figura 3.8: Imagem original. Figura 3.9: Uniform out-of-focus blur com R = 5. Exemplo 3.8: Neste caso mostramos uma distorção do tipo Uniform Out-of-Focus Blur com R = 10. 17 Figura 3.10: Uniform out-of-focus blur com R = 10. 3.4.4 Uniform 2-D blur É um tipo de degradação em que a energia concernente a um único ponto presente na imagem original é distribuido em um grupo de pontos de área retangular. Corresponde bidimensionalmente ao filtro unidimensional de resposta ao impulso referente ao pulso retangular [18]. De acordo com a equação 3.5 é apresentado o modelo de degradação bidimensional uniforme. 18 h(x, y) = 1 , XY 0, Se −X X ≤x≤ 2 2 e −Y Y ≤y≤ 2 2 (3.5) outro caso Onde X e Y são constantes que indicam a extensão da degradação nas direções vertical e horizontal, respectivamente. Exemplo 3.10 : Neste caso mostramos uma distorção do tipo uniform 2-D com X e Y = 11. Figura 3.11: Imagem original. Figura 3.12: Uniform 2-D blur com X e Y = 11. 19 Exemplo 3.11 : Neste caso mostramos uma distorção do tipo uniform 2-D com X e Y = 21. Figura 3.13: Uniform 2-D blur com X e Y = 21. Não se pode deixar de comentar sobre os limites impostos pelas funções ou PSFs reais em relação a capacidade de recuperar a imagem original usando o processo de restauração. Um exemplo dessa deficiência com exceção da turbulência atmosférica, são as PSFs (motion blur, uniform out-of-focus blur e uniform 2-D blur) possuirem zeros no domínio da frequência. Como consequência dos zeros, ocorre a perda completa de informação da imagem original, sendo necessário que se use artíficios, como a observação em relação ao comportamento da imagem original no domínio da frequência, com o objetivo de estimar a informação perdida mencionada [18]. De uma outra forma, os zeros das PSFs também podem ser úteis no reconhecimento do tipo e do valor dos parâmetros da degradação por determinada imagem, em casos em que essa informação não seja conhecida anteriormente. Portanto os zeros que antes impossibilitavam a restauração ideal da imagem original agora disponibilizam uma forma pela qual se pode identificar os tipos e paramêtros de degradações [18]. Além da PSF, os sistemas de aquisição introduzem perturbações estocásticas (ruído) na imagem gerada. 3.5 Ruído gaussiano aditivo No trabalho proposto a imagem embaçada é somada a ruído do tipo gaussiano. Os ruídos em imagens são adicionados na maioria das vezes durante a obtenção (digitalização) e/ou 20 transmissão de tais imagens comprometendo o desempenho dos sensores dos sistemas de imagens por fatores como condições climáticas, vida útil dos sensores, qualidade do equipamento, interferências nos canais de transmissão, etc. [7]. Existem duas formas de ruído em PDI, o ruído aditivo e multiplicativo, no trabalho proposto trabalharemos com o ruído aditivo. Uma das formas de ruído mais usada na prática é o ruído gaussiano, uma vez que a intervenção matemática é mais fácil, tanto no domínio espacial quanto no domínio da frequência. O ruído gaussiano também é chamado de ruído normal [7]. O ruído aditivo gaussiano tem uma boa aproximação da realidade, modela a soma de várias pequenas fontes de ruído, o que acontece na realidade [7]. A função que representa a função de densidade de probabilidade gaussiana de uma variável aleatória x é dada pela Equação 3.6 −(x − µ)2 e 2α 2 (3.6) ρ(x) = √ 2πα 2 onde x representa o nível de cinza, µ é a média dos valores de cinza e α é seu desvio padrão [7]. O símbolo α 2 é chamado variância, no caso, de x. 1 3.6 Estimação dos parâmetros da PSF No trabalho proposto fez-se a estimação de parâmetros das PSFs que são representadas por senos ou cossenos depois de se obter a DFT das funções, neste caso foi feita a estimação de parâmetros de três PSFs (motion blur, uniform out-of-focus blur e uniform 2-D blur). Já que existem zeros na função, pode-se determinar a distância entre os zeros, zeros estes que possuem a mesma distância entre si de acordo com a equação 3.7, onde K representa uma constante pertencente aos números inteiros. Xzero = Kπ, K∈Z (3.7) Para determinarmos o parâmetro estimado de cada PSF substituimos o valor de Xzero pelo argumento do seno que possui o parâmetro de interesse da respectiva PSF, como mostraremos nas PSFs abaixo. 21 3.6.1 Motion blur L+1 sen w1 1 2 w H= , 1 L sen 2 Xzero = Kπ L+1 = Kπ w1 2 2π L+1 2π L= −1 w1 K=1 w1 = (3.8) Onde w1 é a posição do primeiro zero da função, H é a DFT da PSF e L é o parâmetro da função estimado. 3.6.2 Uniform out-focus blur 2R + 1 sen w1 1 2 H= , w 1 πR2 sen 2 Xzero = Kπ 2R + 1 w1 = Kπ 2 2π 2R + 1 π 1 R= − w1 2 K=1 w1 = (3.9) Onde w1 é a posição do primeiro zero da função, H é a DFT da PSF e R é o parâmetro da função estimado. 3.6.3 Uniform 2-D blur L+1 sen w1 1 2 w H= , 1 XY sen 2 22 Xzero = Kπ L+1 ] = Kπ 2 2π w1 = L+1 2π −1 L= w1 w1 [ K=1 (3.10) Onde w1 é a posição do primeiro zero da função, H é a DFT da PSF e L é o parâmetro da função estimado. Esta estimação é implementada através de um algoritmo no Matlab onde a distância entre os zeros no algoritimo é encontrado de acordo com os parâmetro de degradação da imagem e é atribuido à fórmula da estimação. 3.7 Argumento x Estimação No trabalho proposto exibe-se graficamente a relação parâmetro real x parâmetro estimado. Para construção do gráfico foram escolhidos valores de argumentos reais ímpares de um a noventa e nove, e são obtidos seus valores respectivos de estimação exibidos no gráfico, usou-se a imagem barba. O gráfico foi gerado através do código implementado no Matlab, o código tem como objetivo localizar os zeros da matriz G(u, v) e apartir dai fazer a estimação dos parâmetros segundo as equações (3.8),(3.9) e (3.10). Para cada gráfico gerado foi escolhido um limiar em comum para todos os argumentos para considerar valores abaixo desse limiar como zero da função na matriz G(u, v) que representa a imagem degradada, gerada pela equação (2.6). O gráfico ideal para estimação de valores seria uma reta. Estimação motion blur: Figura 3.14: Estimação motion blur com argumentos de um a noventa e nove ímpares. 23 O gráfico foi obtido com um limiar = 0,001368 para todos os argumentos. Com esse limiar apresentou-se erros relativos de estimação entre os argumentos um e trinta e três aproximadamente, devido o limiar escolhido não ser próximo aos zeros da função da matriz G(u, v) da imagem degradada com esses valores de argumentos, devido a isso descaracterizou-se o gráfico, uma vez que a posição dos zeros esta diretamente ligada com a proximidade na estimação dos parâmetros em relação aos parâmetros reais, dessa forma nesses argumentos os valores estimados se distanciam do valor real. Estimação uniform 2-D blur : Figura 3.15: Estimação uniform 2-D blur com argumentos de um a noventa e nove ímpares. O gráfico foi obtido com um limiar = 0.001335 para todos os argumentos, com esse limiar apresentou-se erros relativos de estimação entre os argumentos um e trinta e três e entre noventa e um e noventa e cinco aproximadamente, mais uma vez percebe-se que o limiar tem influência direta na forma do gráfico, uma vez que sua mudança gerou um gráfico com mais erros, devido o limiar escolhido não ser próximo aos zeros da função da matriz G(u, v) da imagem degradada com esses valores de argumentos, dessa forma, descaracterizando ainda mais o gráfico. Estimação uniform out-of-focus blur : Figura 3.16: Estimação uniform out-of-focus blur com argumentos de um a noventa e nove ímpares. O gráfico foi obtido com um limiar = 0.000133 para todos os argumentos, ocorreram erros relativos de estimação em várias partes do gráfico, visto que a PSF uniform out-of-focus blurring apresenta um grau de complexidade mais elevado, ou seja, apresenta um borramento uniforme em todas as direções (borramento circular) dificultando a localização dos zeros na matriz G(u, v) 24 que representa a imagem degradada. Tornando a escolha de um único limiar para todos os parâmetros reais pouco eficaz para a estimação destes. 3.8 Argumento x Erro Relativo O erro relativo mede a diferença entre parâmetro e o parâmetro estimado e divide esta diferença pelo valor do parâmetro. No trabalho proposto mostraremos graficamente o erro relativo das PSFs com valores dos parâmetro de um a noventa e nove ímpares. Figura 3.17: Erro relativo motion blur com argumentos de um a noventa e nove. 25 Figura 3.18: Erro relativo uniform 2-D blur com argumentos de um a noventa e nove. Figura 3.19: Erro relativo uniform out-of-focus blur com argumentos de um a noventa e nove. 3.9 Modelos de restauração No trabalho proposto partimos do princípio que a degradação da imagem é conhecida e representada pelas PSFs (motion blur, atmospheric turbulence blur, uniform out-of-focus blur e uniform 2-D blur). A figura 3.31 apresenta o modelo de restauração de uma imagem digital. Verifica-se que a partir de uma imagem degradada g(x, y) e com a utilização do filtro de restauração desejado, é possível obter uma imagem restaurada fˆ(x, y) semelhante à original f (x, y). Figura 3.20: Modelo de restauração 26 3.9.1 Conceito No trabalho proposto o processo de restauração de imagens se dá no domínio da frequência. Primeiramente se obtêm a imagem degradada g(x, y) e determina-se a sua DFT, obtendo-se G(u, v). A partir de então aplica-se o filtro desejado sobre G(u, v) obtendo-se a imagem restaurada no domínio da frequência, computa-se então a DFT inversa para se obter a imagem restaurada da imagem original. Figura 3.21: Obtenção da imagem restaurada. 3.10 Filtragem inversa Considerando uma certa imagem sem ruído podemos assumir que da equação (2.5) no domínio da frequência temos que: G(u, v) = H(u, v) F(u, v) (3.11) Dessa forma a restauração da imagem original torna-se: F̂(u, v) = 1 G(u, v) H(u, v) (3.12) O filtro inverso é um método simples de restauração de imagem para se obter fˆ(x, y), que é a imagem aproximada à original. A aplicação do filtro inverso tem como resultado a aproximação da imagem original multiplicando valor a valor da matriz da forma degradada G(u, v) 1 1 por sendo que representa a inversão de cada valor da matriz e não a inversão H(u, v) H(u, v) da matriz por inteiro [7]. No trabalho proposto acrescentamos à imagem degradada com ruído aditivo gaussiano, logo a restauração da imagem no domínio da frequência é representada por: F̂(u, v) = Onde Y (u, v) = F(u, v)H(u, v) + N(u, v) 1 Y (u, v) H(u, v) (3.13) 27 3.10.1 Filtragem inversa – procedimento prático Na execução da DFT de h(x, y) alguns valores de H(u, v) são nulos e isto gera divisão por zero na aplicação do filtro inverso, mesmo na ausência de ruído a restauração torna-se impossível ou gera imagens com extrema perda de nitidez. A PSF atmospheric turbulence blur é uma exceção, pois não gera zeros em H(u, v), uma vez que é representada por uma função gaussiana. Desse modo, a forma obtida na prática para resolver este prolema é considerar as frequências do filtro a valores próximos à origem de seu espectro [7], onde se encontram os maiores valores de H(u, v) [19]. Outra forma para resolver esse tipo de problema seria considerar o filtro inverso H −1 (u, v) igual a zero quando a função H(u, v) for igual a zero, para isso a PSF tem que ser sido identificada e a imagem degradada deve estar sem ruído, uma vez que mesmo em níveis considerados pequenos faz com que a restauração produzida por filtragem inversa apresente uma razão sinal-ruído (signal to noise ratio – SNR) ruim, isso ocorre porque, justamente nas regiões onde a energia da imagem é menor do que ou mesmo comparável à energia do ruído (zeros do filtro de degradação e alta freqüência), o ganho do filtro de restauração é elevado [18]. Como no trabalho proposto trabalha-se com imagens com ruído limitou-se a frequência do filtro a valores próximo a origem do espectro de frequência onde os valores de H(u, v) são maiores, para amenizar o efeito do ruído na restauração das imagens. 3.10.2 Vantagens e desvantagens A filtragem inversa tem grande eficácia na restauração de imagens degradadas sem a adição de ruído, porém na medida que na imagem é adicionada ruído o desempenho da filtragem diminui, nessa situação o ruído interfere de forma significativa no desempenho do filtro inverso, comprometendo a sua restauração ou gerando problema computacional de cálculo com divisão por zero [7]. Outra desvantagem é a necessidade da existência de um limite para as frequências de H(u, v) próximo a origem do seu espectro de frequência, onde os valores da frequência são maiores, caso nao se use esse limite o filtro se torna menos eficiente [7]. Apesar disto, o filtro inverso é uma método de aplicação rápido, simples e de fácil implementação na restauração de imagens. Por isso esse método não é amplamente utilizado em PDI. 3.11 Filtragem de Wiener O filtro de Wiener possibilita a restauração de uma imagem no domínio da frequência. É considerado um método otimizado uma vez que minimiza o erro médio quadrático no processo de filtragem e suavização do ruído [18]. Na técnica apresentada pelo filtro de Wiener, este necessita que o espectro de potência da imagem original e o espectro de potência da imagem com ruído sejam conhecidos, tendo como objetivo minimizar a diferença entre a imagem restaurada e a original de acordo com a equação (3.14). 28 E[ f (x, y) − fˆ(x, y)]2 (3.14) onde E , f (x, y), fˆ(x, y) são respectivamente o valor esperado, imagem original e a imagem restaurada. Portanto o filtro de Wiener pode ser representado pela equação abaixo : W (u, v) = H ∗ (u, v)S f (u, v) |H(u, v)|2 S f (u, v) + Sn (u, v) , (3.15) onde H ∗ (u, v) , S f (u, v) e Sn (u, v) representam, respectivamente, o conjugado de H(u, v), o espectro de potência da imagem original e do ruído de degradação. 29 3.11.1 Filtragem de Wiener – procedimento prático No filtro de Wiener pode-se observar que na equação (3.15) H(u, v), e as estatísticas de segunda ordem de f (x, y) e n(x, y) devem ser conhecidos, as quais são estimadas na maioria dos casos práticos através da imagem degradada [18]. Outras características que podemos observar é o filtro de Wiener tornar-se um filtro inverso perfeito à medida que o ruído presente na imagem degradada diminui, e a capacidade que apenas um filtro de Wiener tem para ser utilizado para mais de uma imagem específica, ou seja, uma classe de imagens, desde que as imagens sejam degradadas pela mesma PSF e possuam espectro de potência parecidos [18]. 3.11.2 Vantagens e desvantagens O filtro de Wiener funciona de forma eficiente para imagens cujas propriedades são conhecidas, como as funções PSF, o tipo de degradação e os espectros de potência. Desempenho superior do filtro de Wiener em relação ao filtro inverso. Outra característica importante, é a possibilidade de minimizar o erro médio quadrático. Um problema importante na implementação do filtro de Wiener é que a aproximação da função PSF H(u, v) e dos espectros de potência da imagem e do ruído, pode não ser tão precisa, portanto, antes da restauração deve-se verificar se esses valores são conhecidos ou facilmente obtidos. Outra desvantagem é possuir características de lineariedade e apenas tratar processos estacionários, tendo dificuldades quando se necessita de parâmetros variantes no sistema de restauração [18]. 3.11.3 Motivos que levaram a escolha dos métodos de restauração Os métodos de restauração usados no trabalho proposto são dois métodos de filtragem comuns em processamento digital de imagens, mais especificamente em restauração de imagens, com uma vasta documentação bibliográfica e estudos direcionados para a restauração de imagens. Além disso a implementação dós códigos em Matlab é facilitada pela simplicidade da interpretação teórica. 30 CAPÍTULO 4 ANÁLISE DE RESULTADOS 4.1 Métodos de análise Todo processo de restauração de imagens digitais tem por objetivo reconstruir ou recuperar uma imagem que foi degradada usando informações a respeito do processo de degradação. No intuito de fazer uma avaliação dos resultados foram criadas métricas capazes de avaliar o desempenho das técnicas de restauração usadas nas simulações. No trabalho proposto foi usado o ISNR, pela sua baixa complexidade computacional envolvida no seu cálculo, servindo muito bem, portanto, para as aplicações que exigem processamento veloz e, além disso, suas expressões são de fácil manipulação algébrica. Devido a estes critérios, o ISNR é comumente usado com fins de análise em PDI. Com isso, questões como: parametrização e métodos escolhidos, desempenho e comparação dos métodos através dos resultados obtidos, podem ser mais bem análisados. 4.1.1 BSNR e ISNR A Razão entre Sinal Degradado e Ruído (Blurred Signal to Noise Ratio – BSNR) quantifica a potência do ruído de degradação existente na imagem degradada [18]. É definida, em dB, pela equação (3.17). 1 2 MN ∑[g(x, y) − ḡ(x, y)] x,y BSNR = 10 log10 (4.1) 2 α n onde 31 g(x, y) = y(x, y) − n(x, y), (4.2) sendo y(x, y) e n(x, y), a imagem degradada e o ruído aditivo presente em y(x, y), respectivamente; ḡ = E {g} , sendo E {·} o valor esperado que representa a média do sinal g(x, y); M e N são as dimensões vertical e horizontal da matriz que representa a imagem g(x, y), respectivamente; αn2 é a variância do ruído de observação n(x, y). A BSNR pressupõe a disponibilidade de uma versão da imagem degradada isenta da contaminação por ruído ou da sua variância, bem como da variância do ruído. [18]. Quanto menor o valor da BSNR, maior o efeito do ruído na imagem, ou seja, uma vez que o melhoramento da qualidade de uma imagem é dependente da potência do ruído na imagem degradada, a BSNR, na prática, fornece um parâmetro sobre o que esperar do desempenho de um determinado sistema de restauração, assim como uma medida a partir do qual esse sistema possa ser avaliado [18]. O ISNR que significa melhoramento na razão entre sinal e ruído tem como finalidade medir o quanto de melhoramento foi obtido no processo de restauração, usando para isso as imagens original, degradada e restaurada [18]. Como apresentado na equação(4.2), seu resultado é expresso em dB: ISNR = 10 log10 2 ∑[ f (x, y) − y(x, y)] x,y 2 ∑[ f (x, y) − fˆ(x, y)] (4.3) x,y onde f (x, y) e y(x, y) representam a imagem original e a imagem degradada, respectivamente, e fˆ(x, y) a imagem restaurada. Caso seja aplicado o operador de limite em (4.4), de forma que a imagem restaurada tenda à imagem original ( fˆ(x, y) → f (x, y)), o ISNR tende ao infinito. lim fˆ(x,y)→ f (x,y) ISNR = ∞ (4.4) Desse modo, quanto mais próxima a restauração estiver da imagem original, maior o valor de ISNR. Da mesma forma, se o ISNR for negativo, significa que a restauração está mais distante da imagem original em relação à imagem degradada e ISNR nulo indica que o filtro de restauração é equivalente ao filtro unitário, pois fˆ(x, y) = y(x, y). O ISNR pressupõe que a imagem original esteja disponível [18]. Obviamente, esta métrica pode ser usada apenas para casos de simulação quando a imagem original está disponível. Métricas que fazem uso do erro quadrático médio (mean square error - MSE), como o ISNR não refletem a propriedade de percepção do sistema visual humano, que servem para fornecer um padrão objetivo pelo qual se compara diferentes técnicas. Dessa forma presume-se que sob certas circunstâncias, essa métrica não representa adequadamente a percepção visual humana da qualidade de imagens. A BSNR e o ISNR são metricas usadas para medir o ruído presente em imagens degradadas e o melhoramento de imagens no sistema de restauração respectivamente, analisando no ISNR o quanto a imagem restaurada está mais próxima da imagem original em relação à imagem degradada [18]. 32 4.2 Descrição do código fonte por diagramas Esta seção tem como objetivo apresentar o código fonte utilizado na simulação por meio de diagramas. 4.2.1 Inserção de embaçamento na imagem De acordo com a figura 4.1 é exibido o método utilizado na inserção do embaçamento na imagem original f (x, y). Descreve-se de acordo com a PSF escolhida pelos seguintes passos: Motion blur 1: Obtém-se a imagem original f (x, y) através da leitura da imagem pela função imread do Matlab; 2: Determina a função PSF h(x, y), que vai ser utilizada, neste caso é a motion blur, mais especificamente Motion blur horizontal representada pela equação (3.1) no domínio espacial; 3: Para se obter a imagem degradada G(u, v) no domínio da frequência, basta obter o produto da DTF das funções f (x, y) e h(x, y); 4: No próximo passo, aplica-se a DFT inversa na função G(u, v) para obter a imagem novamente no domínio espacial; 5: Obtem-se a imagem g(x, y), degradada com embaçamento no domínio espacial; Atmospheric turbulence blur 1: Obtém-se a imagem original f (x, y) através da leitura da imagem pela função imread do Matlab; 2: Determina a função PSF h(x, y), que vai ser utilizada, neste caso é a atmospheric turbulence blur, representada pela equação(3.2) no domínio espacial; 3: Para se obter a imagem degradada G(u, v) no domínio da frequência, basta obter o produto da DTF das funções f (x, y) e h(x, y) ; 4: No próximo passo, aplica-se a DFT inversa na função G(u, v) para obter a imagem novamente no domínio espacial, e esta poder ser visualizada com o auxílio das funções real e uint8 do Matlab; 5: Obtém-se a imagem g(x, y), degradada com embaçamento no domínio espacial; 33 Uniform out-of-focus blur 1: Obtem-se a imagem original f (x, y) através da leitura da imagem pela função imread do Matlab; 2: Determina a função PSF h(x, y), que vai ser utilizada, neste caso é a uniform out-of-focus blur, representada pela equação(3.3) no domínio espacial; 3: Para se obter a imagem degradada G(u, v) no domínio da frequência, basta obter o produto da DTF das funções f (x, y) e h(x, y) ; 4: No próximo passo, aplica-se a DFT inversa na função G(u, v) para obter a imagem novamente no domínio espacial, e esta poder ser visualizada com o auxílio das funções real e uint8 do Matlab; 5: Obtém-se a imagem g(x, y), degradada com embaçamento no domínio espacial; Uniform 2-D blur 1: Obtém-se a imagem original f (x, y) através da leitura da imagem pela função imread do Matlab; 2: Determina a função PSF h(x, y), que vai ser utilizada, neste caso é a uniform 2-D blur, representada pela equação(3.4) no domínio espacial; 3: Para se obter a imagem degradada G(u, v) no domínio da frequência, basta obter o produto da DTF das funções f (x, y) e h(x, y); 4: No próximo passo, aplica-se a DFT inversa na função G(u, v) para obter a imagem novamente no domínio espacial, e esta poder ser visualizada com o auxílio das funções real e uint8 do Matlab; 5: Obtem-se a imagem g(x, y), degradada com embaçamento no domínio espacial; 34 Figura 4.1: Diagrama – Inserção de embaçamento na imagem. 4.2.2 Inserção de ruído na imagem No trabalho proposto o ruído gaussiano aditivo foi escolhido para ser adicionado na imagem depois do seu embaçamento, de acordo com a figura 4.2, pelos seguintes passos: 1: É definida uma variável al f an que representa o desvio padrão do ruído. Para calcular al f an é necessário que se tenha os parâmetros varGnd e BSNR já definidos. varGnd representa a variância da imagem degradada e BSNR representa o valor de BSNR aplicado à imagem; 2: Após se obter o resultado de al f an, aplica-se a multiplicação de al f an pela função randn(size(g)) do Matlab que tem por finalidade gerar uma matriz aleátoria do tamanho da matriz embaçada g(x, y), onde n é o ruído que vai ser adicionado na imagem embaçada, ambos no domínio espacial; 3: Então, o ruído é adicionado na imagem embaçada, o tipo do ruído é gaussiano, com média 0 (zero, é padrão da função), variância varGnd e yn (x, y) é a imagem embaçada com a adição de ruído; 35 Figura 4.2: Diagrama – Inserção de ruído na imagem. 4.2.3 Filtragem inversa A filtragem inversa é implementada de acordo com as passos a seguir, apresentados na figura (4.3) 1: Dispõem-se da imagem degradada g(x, y) e é conhecida a função PSF escolhida de degradação h(x, y); 2: Aplica-se a DFT das funções g(x, y) e h(x, y) para serem trabalhadas no domínio da frequência; 3: Se adquiri as funções G(u, v) e H(u, v) no domínio Fourier (frequência), limitando a frequência de H(u, v) próximo a origem do espectro de frequência onde seus valores são maiores; 4: Aplica-se a fórmula que define a filtragem inversa; 5: Aplica-se a DFT inversa para se obter a função resultante novamente no domínio espacial, permitindo sua visualização; 6: Obtém-se a imagem resultante fˆ(x, y), que é a imagem restaurada; 7: É feita a verificação do ISNR da imagem resultante; 36 Figura 4.3: Diagrama – Restauração por filtragem inversa. 4.2.4 Filtragem de Wiener A filtragem de Wiener é implementada de acordo com as passos a seguir, apresentados na figura (4.4) 1: Dispõem-se da imagem original f (x, y), da PSF h(x, y) e da imagem degradada g(x, y); 2: Aplica-se a DFT das funções f (x, y), g(x, y) e h(x, y) para serem trabalhadas no domínio da frequência; 3: Obtém-se as funções G(u, v), H(u, v) e F(u, v) no domínio Fourier (frequência) e é conhecido al f an, que foi obtido bo primeiro passo da figura 4.2, é o desvio padrão do ruído; 4: Calcula-se o espectro de potência da imagem S f e do ruído Sn . O espectro de potência abs(F(u, v))2 , onde abs é o valor absoluto, F(u, v) é a DFT da imagem é dado por S f = N2 da imagem original f (x, y) e N é a dimensão da imagem quadrada, exemplo: N=512 para imagem de dimensão 512x512 pixels. O espectro de potência do ruído é dado por Sn = (al f an2 ) , onde al f an é o desvio padrão do ruído, obtido no passo um da figura 4.2; 5: Se adquiri o espectro de potência da imagem S f e o espectro de potência do ruído Sn ; 6: Utiliza-se a fórmula que aplica o filtro Wiener, apresentada neste trabalho no capítulo 3, Equação (3.16), e se obtém a imagem restaurada F̂(u, v); 37 7: Aplica-se a DFT inversa, sobre F̂(u, v) para obtê-la em domínio espacial; 8: Obtém-se a imagem resultante fˆ(x, y), que é a imagem restaurada no domínio espacial, que pode ser visualizada; 9: É feita a verificação do ISNR da imagem resultante; 38 Figura 4.4: Diagrama – Restauração por filtragem de Wiener. 4.3 Resultados – filtragem inversa A filtragem inversa foi aplicada, com três valores de parâmetros das PSFs, para cada parâmetro foi utilizado 3 valores de BSNR diferentes como apresentado nas tabelas, estão listados os valores obtidos de ISNR sem limite de frequência do filtro e ISNR com limite de frequência do filtro para cada imagem. 39 Tabela 4.1: Resultados: filtragem inversa (PSF Motion Blur Movimento Horizontal). Imagem(Lena) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro (Comprimento L) 11 11 11 21 21 21 41 41 41 ISNR -33.7395 -24.7403 -4.9220 -38.5919 -29.1627 -9.4277 -34.6558 -24.9690 -4.9831 ISNR (limite=0.035) -14.6102 -5.8036 11.4309 -14.3090 -4.9331 11.2296 -8.7960 0.6930 13.1287 Tabela 4.2: Resultados: filtragem inversa (PSF Atmospheric Turbulence Blur). Imagem(Lena) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro(α) 3 3 3 6 6 6 9 9 9 ISNR -248.1946 -236.9698 -210.7806 -210.9411 -201.7107 -180.2934 -243.3064 -233.7830 -214.1328 Tabela 4.3: Resultados: filtragem inversa (PSF Uniform Out-of-Focus Blur). Imagem(Lena) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro(Raio) 5 5 5 10 10 10 15 15 15 ISNR -66.1233 -56.7952 -35.7102 -68.3582 -62.3317 -40.1143 -77.7177 -73.8401 -52.4828 ISNR (Limite=0.035) -14.4726 -5.3277 11.2826 -4.5324 4.3161 11.6848 0.3668 7.4237 10.5175 Tabela 4.4: Resultados: filtragem inversa (PSF Uniform 2-D Blur). Imagem(Lena) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro(Comprimento L) 11 11 11 21 21 21 41 41 41 ISNR -72.6976 -62.9119 -42.4123 -83.7485 -74.4640 -54.3797 -79.3598 -69.8013 -49.7582 ISNR (Limite=0.035) -9.6663 -0.8211 10.1618 -4.0667 4.1827 9.3175 3.9952 7.6726 8.4934 40 Tabela 4.5: Resultados: filtragem inversa (PSF Motion Blur Movimento Horizontal). Imagem(Barba) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro (Comprimento L) 11 11 11 21 21 21 41 41 41 ISNR -32.9105 -23.8322 -3.9884 -38.2792 -29.0176 -8.8259 -34.7785 -25.1881 -5.2030 ISNR (Limite=0.035) -13.9113 -4.9318 9.0625 -14.0125 -4.7201 8.7137 -9.0508 -0.0295 7.7129 Tabela 4.6: Resultados: filtragem inversa (PSF Atmospheric Turbulence Blur). Imagem(Barba) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro(α) 3 3 3 6 6 6 9 9 9 ISNR -247.6885 -237.7087 -220.5238 -211.4109 -200.1829 -181.4359 -240.4605 -236.4066 -217.6822 41 Tabela 4.7: Resultados: filtragem inversa (PSF Uniform Out-of-Focus Blur). Imagem(Barba) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro(Raio) 5 5 5 10 10 10 15 15 15 ISNR -65.7527 -56.1142 -34.5700 -69.9380 -59.3645 -39.9967 -79.8694 -72.9990 -52.1702 ISNR (Limite=0.035) -13.4447 -4.2835 7.8943 -3.9605 3.5030 7.1001 0.1941 5.5750 7.0656 Tabela 4.8: Resultados: filtragem inversa (PSF Uniform 2-D Blur). Imagem(Barba) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro(Comprimento L) 11 11 11 21 21 21 41 41 41 ISNR -69.9991 -60.4843 -41.8666 -84.9384 -72.0060 -52.5608 -79.0414 -69.3699 -49.6236 ISNR (Limite=0.035) -8.7044 -0.3614 5.9243 -3.5810 3.3801 6.2577 3.1172 5.7320 6.1589 Tabela 4.9: Resultados: filtragem inversa (PSF Motion Blur Movimento Horizontal). Imagem(Pimenta) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro (Comprimento L) 11 11 11 21 21 21 41 41 41 ISNR -34.5903 -26.0241 -6.0678 -39.4266 -30.3833 -10.6335 -35.8755 -26.2433 -6.1357 ISNR (Limite=0.035) -15.5190 -6.9792 10.9526 -15.3170 -6.0749 10.8315 -9.9582 -0.5397 13.2309 42 Tabela 4.10: Resultados: filtragem inversa (PSF Atmospheric Turbulence Blur). Imagem(Pimenta) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro(desvio padrão) 3 3 3 6 6 6 9 9 9 ISNR -244.7845 -239.4041 -214.7463 -211.6929 -200.5250 -180.4819 -245.7661 -240.6527 -208.4789 Tabela 4.11: Resultados: filtragem inversa (PSF Uniform Out-of-Focus Blur). Imagem(Pimenta) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro(Raio) 5 5 5 10 10 10 15 15 15 ISNR -65.9469 -57.2518 -38.4657 -72.3186 -58.3952 -41.9558 -80.1341 -73.3102 -47.7256 ISNR (Limite=0.035) -14.7870 -5.7140 10.9903 -4.8967 3.9927 11.6307 -0.1185 7.3986 10.7861 Tabela 4.12: Resultados: filtragem inversa (PSF Uniform 2-D Blur). Imagem(Pimenta) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro(Comprimento L) 11 11 11 21 21 21 41 41 41 ISNR -74.4382 -63.5640 -43.4542 -84.6975 -72.3441 -56.2652 -79.8301 -69.8021 -50.1806 ISNR (Limite=0.035) -9.9752 -1.1585 11.0493 -4.4557 4.0523 10.1524 3.6288 7.7476 8.5903 43 4.3.1 ISNR Após se determinar o resultado do ISNR, faz-se a análise para determinar qual foi o melhor e o pior resultado da filtragem. Foram usados três valores de parâmetros diferentes para cada PSF( motion blur movimento horizontal, atmospheric turbulence blur, uniform outof-focus blur e uniform 2-D blur). Para a motion blur foram usados os valores de parâmetro L = 11, 21 e 41, atmospheric turbulence blur os valores de parâmetro Desviopadro = 3, 6 e 9, uniform out-of-focus blur os valores de parâmetro R = 5, 10 e 15 e uniform 2-D blur os valores de parâmetro L = 11, 21 e 41, para cada valor de parâmetro utilizou-se três valores de BSNR iguais a 10 dB, 20 dB e 40 dB. Foi feita a análise de ISNR para três figuras diferentes. 4.3.2 Análise geral Com a aplicação da filtragem inversa sem limite de frequência nos filtros, os melhores resultados obtidos foram: na PSFs Motion Blur o melhor resultado foi na imagem (Barba) com o menor parâmetro "L=11", BSNR = 40 dB e ISNR = -3.9884 dB, a Atmospheric Turbulence Blur teve seu melhor resultado na imagem (Lena) com segundo menor parâmetro "Desvio padrão = 6", BSNR = 40 dB e ISNR = -180.2934 dB, já a Uniform Out-of-Focus Blur seu melhor resultado foi na imagem (Barba) com o menor parâmetro "R=5", BSNR = 40 dB e ISNR = -34.5700 dB e na Uniform 2-D Blur seu melhor resultado foi na imagem (Barba) com menor parâmetro "L = 11", BSNR = 40 dB e ISNR = -41.8666 dB. Com a aplicação da filtragem inversa sem limite de frequência nos filtros, os piores resultados obtidos foram: na PSFs Motion Blur o pior resultado foi na imagem (Pimenta) com o segundo menor parâmetro "L=21", BSNR = 10 dB e ISNR=-39.4266 dB, a Atmospheric Turbulence Blur teve seu pior resultado na imagem (Barba) com o menor parâmetro "Desvio padrão = 3", BSNR = 10 dB e ISNR = -247.6885 dB, já a Uniform Out-of-Focus Blur seu pior resultado foi na imagem (Pimenta) com o maior parâmetro "R=15", BSNR = 10 dB com ISNR = -80.1341 dB, e na Uniform 2-D Blur seu pior resultado foi na imagem (Barba) com segundo menor parâmetro "L=21", BSNR = 10 dB e ISNR = -84.9384 dB. Na aplicação da filtragem inversa com um fator limitante = 0.035 com exceção da PSF Atmospheric Turbulence Blur que nao usa limite, obteve-se uma melhora significativa no ISNR das imagens uma vez que a frequência do filtro foi limitada próximo a origem do espectro de frequência, então tem-se que os melhores resultados obtidos foram : na PSFs Motion Blur o melhor resultado foi na imagem (Pimenta) com o maior parâmetro "L = 41", BSNR = 40 dB e ISNR = 13.2309 dB, já a Uniform Out-of-Focus Blur seu melhor resultado foi na imagem (Lena) com o segundo menor parâmetro "R = 10", BSNR = 40 dB com ISNR = 11.6848 dB e na Uniform 2-D Blur seu melhor resultado foi na imagem (Pimenta) com menor parâmetro "L = 11", BSNR = 40 dB e ISNR = 11.0493 dB. Os piores resultados na filtragem inversa com um fator limitante foram: na PSFs Motion Blur o pior resultado foi na imagem (Pimenta) com o menor parâmetro "L = 11", BSNR = 10 dB e ISNR = -15.5190 dB , já a Uniform Out-of-Focus Blur seu pior resultado foi na imagem (Pimenta) com o menor parâmetro "R=5", BSNR = 10 dB com ISNR = -14.7870 dB e na 44 Uniform 2-D Blur seu pior resultado foi na imagem (Pimenta) com menor parâmetro "L = 11", BSNR = 10 dB e ISNR = -9.9752 dB. 4.4 Resultados – filtragem de Wiener A filtragem de Wiener foi aplicada, para três valores de parâmetros das PSFs, para cada parâmetro foram utilizados três valores de BSNR diferentes como apresentado nas tabelas abaixo, estão listados os valores de ISNR obtidos para cada imagem. Tabela 4.13: Resultados: filtragem de Wiener (PSF Motion Blur Movimento Horizontal). Imagem (Lena) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro (Comprimento L) 11 11 11 21 21 21 41 41 41 ISNR 8.0223 9.3070 16.0342 8.4451 10.1486 16.6038 8.8192 10.9097 16.0657 Tabela 4.14: Resultados: filtragem de Wiener (PSF Atmospheric Turbulence Blur). Imagem (Lena) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro(desvio padrão) 3 3 3 6 6 6 9 9 9 ISNR 12.0427 13.0226 14.9552 11.3863 12.0075 13.2182 10.5622 11.1149 12.0262 45 Tabela 4.15: Resultados: filtragem de Wiener (PSF Uniform Out-of-Focus Blur). Imagem (Lena) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro(Raio) 5 5 5 10 10 10 15 15 15 ISNR 8.9193 9.7883 14.6341 8.8361 10.1843 14.6933 8.6708 10.1881 14.7579 Tabela 4.16: Resultados: filtragem de Wiener (PSF Uniform 2-D Blur). Imagem (Lena) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro(Comprimento L) 11 11 11 21 21 21 41 41 41 ISNR 7.8788 8.5721 12.5169 7.9169 9.0006 12.4326 8.0910 9.1721 12.1580 Tabela 4.17: Resultados: filtragem de Wiener (PSF Motion Blur Movimento Horizontal). Imagem (Barba) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro (Comprimento L) 11 11 11 21 21 21 41 41 41 ISNR 4.7951 5.7003 13.1307 5.6014 6.5805 13.1827 6.1600 7.1905 12.3947 46 Tabela 4.18: Resultados: filtragem de Wiener (PSF Atmospheric Turbulence Blur). Imagem (Barba) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro(desvio padrão) 3 3 3 6 6 6 9 9 9 ISNR 7.9664 8.1740 8.8591 8.2269 8.3874 8.8462 7.6377 7.8640 8.3582 Tabela 4.19: Resultados: filtragem de Wiener (PSF Uniform Out-of-Focus Blur). Imagem (Barba) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro(Raio) 5 5 5 10 10 10 15 15 15 ISNR 5.6257 6.2333 11.7253 6.1378 6.6933 10.4399 6.3887 7.0332 10.1029 Tabela 4.20: Resultados: filtragem de Wiener (PSF Uniform 2-D Blur). Imagem (Barba) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro(Comprimento L) 11 11 11 21 21 21 41 41 41 ISNR 5.0703 5.3124 8.6633 5.5738 6.0843 8.2917 5.8945 6.5064 8.2280 47 Tabela 4.21: Resultados: filtragem de Wiener (PSF Motion Blur Movimento Horizontal). Imagem (Pimenta) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro (Comprimento L) 11 11 11 21 21 21 41 41 41 ISNR 8.5839 9.4776 15.6947 8.7755 10.3759 16.3508 9.0511 11.0781 15.8556 Tabela 4.22: Resultados: filtragem de Wiener (PSF Atmospheric Turbulence Blur). Imagem (Pimenta) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro(desvio padrão) 3 3 3 6 6 6 9 9 9 ISNR 12.2513 13.1406 14.6739 11.5527 12.2224 13.4488 10.8065 11.3387 12.3824 48 Tabela 4.23: Resultados: filtragem de Wiener (PSF Uniform Out-of-Focus Blur). Imagem (Pimenta) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro(Raio) 5 5 5 10 10 10 15 15 15 ISNR 9.1891 10.0151 14.7096 8.9596 10.2112 14.7933 8.9756 10.3312 14.7814 Tabela 4.24: Resultados: filtragem de Wiener (PSF Uniform 2-D Blur). Imagem (Pimenta) Imagem 1 Imagem 2 Imagem 3 Imagem 4 Imagem 5 Imagem 6 Imagem 7 Imagem 8 Imagem 9 4.4.1 BSNR 10 20 40 10 20 40 10 20 40 Paramêtro(Comprimento L) 11 11 11 21 21 21 41 41 41 ISNR 8.3334 9.1750 13.2318 8.1914 9.4889 13.2714 8.0231 9.4820 12.7932 ISNR Para a filtragem de Wiener foi usado o mesmo procedimento da filtragem inversa submetendo a imagem a quatro PSFs diferentes com seus seus parâmetros determinados, sendo cada parâmetro submetido a 3 BSNRs diferentes de acordo com as tabelas. Uma vez que o filtro de Wiener pretende minimizar a diferença entre a imagem restaurada e a imagem original, considerando também os efeitos do ruído, apresentou-se um melhor resultado em comparação ao filtro inverso. O ISNR apresentou um crescimento proporcional ao aumento do BSNR, e percebe-se que quanto mais melhoramento da imagem maior o valor do ISNR. 4.4.2 Análise geral Com a filtragem de Wiener, apresentou-se melhores resultados e o ISNR das imagens restauradas crescem proporcionalmente com a melhoria na relação sinal-ruído aplicadas e refletem diretamente em mais melhoramento das imagens, comprovando ser mais eficiente em relação a filtragem inversa na restauração de imagens degradadas com a presença de ruído. Os melhores resultados foram obtidos com BSNR = 40 dB nas quatro PSFs usadas em três imagens diferentes, na PSF Motion Blur Movimento Horizontal o melhor resultado foi na 49 imagem (Lena) com parâmetro "L=21"e ISNR = 16.6038 dB, a PSF Atmospheric Turbulence Blur teve seu melhor resultado na imagem (Lena) com parâmetro "Desvio Padrão = 3"e ISNR = 14.9552 dB, a PSF Uniform Out-of-Focus Blurred seu melhor resultado foi na imagem (Pimenta) com parâmetro "R = 10"com ISNR = 14.7933 dB e na PSF Uniform 2-D Blur o melhor resultado foi na imagem (Pimenta) com parâmetro "L = 21 "e ISNR = 13.2714 dB. Os piores resultados foram obtidos com BSNR = 10 dB nas quatro PSFs usadas em três imagens diferentes, na PSF Motion Blur Movimento Horizontal o pior resultado foi na imagem (Barba) com parâmetro "L = 11"e ISNR = 4.7951 dB, a PSF Atmospheric Turbulence Blur teve seu pior resultado na imagem (Barba) com parâmetro "Desvio padrão = 9 "e ISNR = 7.6377 dB, a PSF Uniform Out-of-Focus Blurred seu pior resultado foi na imagem (Barba) com parâmetro "R = 5"e ISNR = 5.6257 dB e na PSF Uniform 2-D Blur o pior resultado foi na imagem (Barba) com parâmetro "L = 11"e ISNR = 5.0703 dB. 4.5 Melhores resultados obtidos 4.5.1 Filtragem inversa 4.5.1.1 Motion blur movimento horizontal O melhor resultado foi obtido na figura Pimenta com BSNR = 40 dB, parâmetro "L = 41"e apresentando ISNR = 13.2309 dB. Figura 4.5: Filtragem inversa – melhor resultado Motion Blur Movimento Horizontal. 50 4.5.1.2 Atmospheric turbulence blur O melhor resultado foi obtido na figura Lena com BSNR = 40 dB, parâmetro "Desvio Padrão = 6", com ISNR= -180.2934 dB. Figura 4.6: Filtragem inversa – melhor resultado Atmospheric Turbulence Blur. 4.5.1.3 Uniform out-of-focus blur O melhor resultado foi obtido na figura Lena com BSNR = 40 dB, parâmetro "R = 10"e apresentando ISNR = 11.6848 dB. Figura 4.7: Filtragem inversa – melhor resultado Uniform Out-of-Focus Blur. 51 4.5.1.4 Uniform 2-D blur O melhor resultado foi obtido na figura Pimenta com BSNR=40 dB, parâmetro "L = 11"e apresentando ISNR=11.0493 dB. Figura 4.8: Filtragem inversa – melhor resultado Uniform Uniform 2-D Blur. 52 4.5.2 Filtragem de Wiener 4.5.2.1 Motion blur movimento horizontal O melhor resultado foi obtido na figura Lena com BSNR = 40dB, parâmetro "L = 41"e apresentando ISNR=16.6038dB. Figura 4.9: Filtragem de Wiener – melhor resultado Motion Blur Movimento Horizontal. 4.5.2.2 Atmospheric turbulence blur O melhor resultado foi obtido na figura Lena com BSNR = 40dB, parâmetro "Desvio Padrão = 3", com ISNR = 14.9552 dB. 53 Figura 4.10: Filtragem de Wiener – melhor resultado Atmospheric Turbulence Blur. 4.5.2.3 Uniform out-of-focus blur O melhor resultado foi obtido na figura Pimenta com BSNR = 40dB, parâmetro "R = 10"e apresentando ISNR = 14.7933 dB. Figura 4.11: Filtragem de Wiener – melhor resultado Uniform Out-of-Focus Blur. 4.5.2.4 Uniform 2-D blur O melhor resultado foi obtido na figura Pimenta com BSNR = 40dB, parâmetro "L = 21"e apresentando ISNR = 13.2714 dB. 54 Figura 4.12: Filtragem de Wiener – melhor resultado Uniform Uniform 2-D Blur. 55 CAPÍTULO 5 CONCLUSÃO 5.1 Considerações finais No trabalho proposto foram abordadas duas técnicas de restauração de imagens digitais. Foi exposto o conceito de imagem digital e sua representação, explicitando a parte teórica necessária para o entendimento do assunto. Os filtros de degradação e restauração foram representados matematicamente demonstrando seus modelos de degradação através das PSFs e de restauração através do Filtro Inverso e o de Wiener. Foram abordados quatro tipos de degradação representadas pelas PSFs (Motion Blur Movimento Horizontal, Atmospheric Turbulence Blur, Uniform Out-of-Focus Blur e Uniform 2-D Blur). Entre as duas técnicas usadas nas simulações, a filtragem de Wiener obteve os melhores resultados em todas as PSFs, principalmente para maiores valores de BSNR. A filtragem inversa mostrou ser eficiente na restauração de imagens degradadas sem a presença de ruído, mas seus resultado de ISNR foram significativamente menores que o obtido com a filtragem Wiener. As duas técnicas tem particularidades importantes, o filtro de Wiener para ser implementado precisa estimar o espectro de potência da imagem original e do ruído. Para a implementação do filtro inverso, é necessário definir os valores de H(u, v), próximos à origem do espectro de frequência , para que o ruído não predomine sobre a imagem com a aplicação da filtragem, com exceção da PSF Atmospheric Turbulence Blur que não possui zeros na função. De acordo com a análise dos resultados obtidos, chega-se à conclusão de que o filtro de Wiener é mais eficiente nos casos de degradação com presença de ruído aditivo. Além disso, a filtragem Wiener possui um tratamento matemático mais robusto, já que possui tratamento de erro e tem ainda um comportamento numericamente confiável. Os dois métodos foram implementados de maneira simples, com imagens de dimensões 512 x 512 pixels. O trabalho apresenta fundamentos matemáticos baseados nos métodos 56 de restauração utilizados. Possui ainda, resultados tabelados que demonstram o comportamento de ambos os filtros, proporcionando um auxílio a futuras comparações com outros métodos e com a implementação de softwares que realizem tal tipo de processamento de imagens. Favorecendo o meio científico, softwares podem ser desenvolvidos de modo a melhorar as técnicas de restauração promovendo um ambiente visual que permita sua utilização por usuários clientes. A restauração de imagens é uma prática bastante utilizada por grandes corporações que necessitam de tratamento de imagens. 5.2 Trabalhos futuros O algoritmo usado na simulação do trabalho proposto, pode ser melhorado de forma a associar novos métodos avaliativos de desempenho, novas técnicas de filtragem, novas formas de se obter os resultados e o tratamento de imagens coloridas, assim como adequar a estimação paramétrica às características da percepção visual humana. Um critério para situações em que se dispõem da imagem original e de uma versão da imagem degradada isenta de ruído, e o outro critério seria para situações de restauração reais, em que os referidos sinais não estão disponíveis. E ainda, a partir do código fonte utilizado podem-se fazer aplicações mais robustas em outras linguagens de programação que não dependam dos recursos oferecidos pelo software Matlab. 57 REFERÊNCIAS BIBLIOGRÁFICAS [1] ACHARYA, T., RAY, A. K. Image Processing- Principles and Applications. John Wiley Sons, Inc. 2005. [2] ANDREWS, H. C.; HUNT, B. R. Digital Image Restoration. 1. ed. USA: Prentice- Hall, 1977. [3] BANHAM, M. R.; KATSAGGELOS, A. K. Digital Image Restoration. IEEE Signal Processing Magazine, p. 24-41, Mar. 1997. [4] EDWARDS,B. N. AND STEEN, R. R.,Effects of Atmospheric Turbulence on the transmission of Visible and Near Infrared Radiation, Appl. Opt. 4, 311.1965 [5] FALCÃO, A. X.; Leite, N. J., Fundamentos de processamento de imagem digital. Campinas: Unicamp, 1998. [6] FORSYTH, D., PONCE, J. Computer Vision: A modern approach. Prentice Hall, 2001. [7] GONZALEZ, Rafael C.; WOODS, Richard E. Digital Image Processing. Editora Pearson Education Asia. Segunda Edição. 2002. [8] HUANG, T. S.; SCHREIBER, W. F.; TRETIAK, O. J. Image Processing. Proceedings of the IEEE, USA, v. 59, n. 11, p. 1586-1609, Nov. 1971. [9] HUNT, B. H. Digital Image Processing. In: OPPENHEIM, A. V. Applications of Digital Signal Processing. 1. ed. USA: Prentice-Hall, 1978. [10] JÄHNE, B. Digital Image Processing. Springer-Verlag, 2002. [11] MARQUES FILHO, Ogê; VIEIRA NETO, Hugo. Processamento Digital de Imagens, Rio de Janeiro: ISBN 8574520098. Brasport, 1999. [12] MOLINA, R.; NÚÑEZ, J.; CORTIJO, F. J. et. al. Image Restoration in Astronomy. IEEE Signal Processing Magazine, v. 18, n. 2, p. 11-29, Mar. 2001. [13] PAPOULIS, A. Probability, Random Variables, and Stochastic Processes. 3. ed. Singapore: McGraw-Hill, 1991. 58 [14] QUEIROZ, J.E.R.D., Gomes, H.M.: Introdução ao Processamento Digital de Imagens. ;RITA(2006)11-42 [15] SCHOWENGERDT RA. Remote Sensing Model and Method for Image Processing. 2nd ed. Academic Press.1997:77-83. [16] SWITH, Steven W. The Scientist and Engineer’s Guide to Digital Signal Processing.2003 [17] SPRING: Integrating remote sensing and GIS by object-oriented data modelling. Camara G, Souza RCM, Freitas UM, Garrido J . Computers Graphics, 20: (3) 395-403, May-Jun 1996. [18] ZAMPOLO, R. F.; SEARA, R.; TOBIAS, O. J. Restauração de Imagens Através de Filtragem de Kalman Usando Programação Evolucionária. In: SIMPÓSIO BRASILEIRO DE TELECOMUNICAÇÕES (19.: setembro, 2001: Fortaleza, CE). Anais. [19] WEN, Che-Yen; LEE, Chien-Hsiung. Point spread functions and their applications to forensic image restoration. Foresinc Science Journal. 2002.