Filtros passa baixa

26
UNIVERSIDADE FEEVALE FILTROS PASSA BAIXA Instituto de Ciências Exatas e Tecnológicas Curso de Sistemas de Informação Henrique Lehmann

Transcript of Filtros passa baixa

Page 1: Filtros passa baixa

UNIVERSIDADE FEEVALE

FILTROS PASSA BAIXA

Instituto de Ciências Exatas e TecnológicasCurso de Sistemas de Informação

Henrique Lehmann

Professora: Marta Rosecler Bez El Boukhari

Novo Hamburgo, outubro de 2010.

Page 2: Filtros passa baixa

SUMÁRIO

1 – Filtros Espaciais Passa Baixa...........................................................................................................4

1.1 – Filtro da Média..............................................................................................................................5

1.2 – Filtro da Moda...............................................................................................................................6

1.3 – Filtro da Mediana..........................................................................................................................7

1.4 – Equalização do Histograma...........................................................................................................8

2 – Exemplos e comparações de técnicas de filtragem.........................................................................12

2.1 – Filtragem pela Média...................................................................................................................12

2.2 – Filtragem pela Média e Mediana.................................................................................................13

2.3 – Filtragem pela Mediana...............................................................................................................15

3 – Algoritmos......................................................................................................................................17

3.1 – Algoritmo da Média....................................................................................................................17

3.2 – Algoritmo da Mediana.................................................................................................................18

3.3 – Algoritmo da Equalização do Histograma...................................................................................18

Conclusão.............................................................................................................................................20

Referências Bibliográficas....................................................................................................................21

2

Page 3: Filtros passa baixa

INTRODUÇÃO

Existem inúmeros métodos de captura de imagem, sendo que algumas vezes podem aparecer

artefatos indesejáveis na foto capturada. Para contornar essa situação, existem técnicas que visam

melhorar a qualidade de uma imagem digital, aplicando algoritmos que permitam eliminar regiões

indesejáveis em uma imagem.

Esse conjunto de métodos consiste em transformações pixel a pixel, que dependem do nível de

cinza de um determinado pixel e de seus pixels vizinhos.

Neste trabalho serão apresentadas algumas técnicas, denominadas Filtros Espaciais Passa

Baixa.

3

Page 4: Filtros passa baixa

1 – Filtros Espaciais Passa Baixa

Trabalham com a imagem digital no seu plano bidimensional. Utilizam máscaras nos

procedimentos, operando diretamente sobre os pixels da imagem.

Os filtros Passa Baixa, são utilizados principalmente para remover ruídos, defeitos e artefatos

indesejados em uma imagem.

Eliminam as altas freqüências de uma figura. Seu princípio básico é fazer uma média dos

pixels vizinhos e aplicá-la. Como por exemplo, alguns pixels escuros cercados por muitos pixels claros

(que poderia estar representando uma falha, ruído na imagem), os pixels de alta frequência (escuros)

teriam sua intensidade diminuída, se aproximando dos mais claros. Sendo assim, a rápida transição

seria suavizada e dependendo da intensidade e do filtro utilizado, poderia ficar imperceptível ao olho

humano.

No entanto, por eliminarem a alta frequência das imagens, sendo o ruído um bom exemplo,

acabam por interferir em outros elementos com a freqüência elevada, que podem ser originais da

imagem. Pequenos detalhes de uma figura complexa, bem como regiões de bordas, podem ter seus

pixels muito modificados ao ponto que se perca informações da imagem original.

  O efeito visual característico de um filtro passa baixa é a desfocalização da imagem. O número

de níveis de cinza é reduzido, deixando a figura mais homogênea e dependendo do filtro e suas

dimensões (quanto maiores, maior será o efeito), tem-se o aspecto de imagem borrada.

A seguir, será mostrado alguns tipos de filtros passa baixa.

(Marques Filho e Vieira Neto, 1999; Gonzales e Woods, 2000; Pedrini e Schwartz, 2007.)

4

Page 5: Filtros passa baixa

1.1 – Filtro da Média

É um filtro rápido, exige pouco processamento. O pixel central recebe o valor da média

aritmética simples da janela da máscara.

Não pode ser considerado um bom removedor de ruídos. Sua utilização é mais indicada

quando se quer aplicar um efeito de borramento na imagem.

Algumas janelas que efetuam uma filtragem pela média, numa vizinhança de dimensão 3x3,

5x5 e 7x7 estão indicadas na figura 1:

Máscara 3x3 Máscara 5x5 Máscara 7x7

(a) (b) (c)

Figura 1. (do autor, 2010)

Máscaras do filtro da média

Após realizar o somatório dos valores correspondentes a janela, é necessário multiplicar o

resultado por 1/N, onde N é o somatório dos pesos da máscara. Com isso a janela tem seus valores

normalizados.

É importante ressaltar que quanto maior a mascara, maior será o nível de borramento da

imagem. Isso acontece, pois com uma máscara grande aumenta o número de pixels que são

comparados por vez, por cada janela, fazendo com que toda a imagem fique mais borrada.

(Marques Filho e Vieira Neto, 1999; Gonzales e Woods, 2000; INPE – DPI, 2010; Bez, 2010.)

5

1/49 *1/25 *1/9 *

1 1 1 1 1 1 11 1 1 1 1 1 11 1 1 1 1 1 11 1 1 1 1 1 11 1 1 1 1 1 11 1 1 1 1 1 11 1 1 1 1 1 1

1 1 1 1 11 1 1 1 11 1 1 1 11 1 1 1 11 1 1 1 1

1 1 11 1 11 1 1

Page 6: Filtros passa baixa

Na figura 2, abaixo, um exemplo matemático de aplicação do filtro da média:

Janela original Máscara 3x3 utilizada Janela alterada

(a) (b) (c)

Figura 2. (do autor, 2010)

Demonstração matemática do Filtro da Média.

1.2 – Filtro da Moda

Elimina pequenas ruídos, sem borrar muito a imagem. Promove uma homogeneização dos

níveis de cinza. Consegue preservar mais a informações originais da imagem.

A implementação de filtragem pela moda se faz, construindo um histograma dos valores

correspondentes a janela do filtro. O pixel central é substituído pelo valor do nível mais frequente que

aparece na janela. 

Quando não é encontrado um único valor de moda pode-se utilizar o valor que mais se

aproxima do valor central.

O filtro da moda faz com que não sejam criados valores de pixels diferentes em relação à

imagem original. O conjunto de valores de saída será igual ao conjunto dos valores de entrada.

(Marques Filho e Vieira Neto, 1999; Gonzales e Woods, 2000; INPE – DPI, 2010; Bez, 2010.)

Na figura 3, abaixo exemplo do método de filtragem pela moda:

6

1/9 *100 100 100100 220 200100 100 100

100 100 100100 124 200100 100 100

1 1 11 1 11 1 1

Page 7: Filtros passa baixa

Janela original Janela alterada

(a) (b)

Figura 3. (do autor, 2010)

Demonstração do filtro da moda.

Neste exemplo a moda tem o seu valor igual a 100. O Pixel central é substituído pela moda.

1.3 – Filtro da Mediana

É um bom removedor de ruídos do tipo impulsivo, sem continuidade, (conhecidos também

como ruído sal e pimenta) indicado para eliminar intensidades muito discrepantes presentes na janela.

Consegue removê-las com baixo borramento e ainda preserva as arestas e bordas da imagem.

É considerado mais complexo, pelo fato de envolver a ordenação de valores. O cálculo da

mediana requer uma ordenação crescente dos valores dos pixels e a escolha do valor que encontra-se

no centro dessa sequência. Se o número de pixels analisados for par, o valor da mediana será o próprio

valor central da sequência. Caso seja ímpar, o valor será um dos elementos mais próximos do centro.

Assim, o pixel central tem o seu valor substituído pela mediana.

(Marques Filho e Vieira Neto, 1999; Gonzales e Woods, 2000)

A figura 4, abaixo, ilustra apenas um exemplo de ordenação pela mediana, considerando 240 o

pixel central. Em um processamento real, todos os pixels da imagem são analisados e ou alterados.

7

100 100 120100 220 130100 100 100

100 100 120100 100 130100 100 100

Page 8: Filtros passa baixa

Janela original Ordenação Janela alterada

Mediana = 110

(a) (b) (c)

Figura 4. (do autor, 2010)

Demonstração do filtro da mediana.

1.4 – Equalização do Histograma

Histogramas são ferramentas poderosas, sua manipulação gera uma vasta gama de efeitos

desejáveis para operações de realce, segmentação e compressão de imagens.

Em uma imagem, o histograma representa, geralmente através de um gráfico, o percentual de

pixels que naquela figura apresentam um determinado nível de cinza. Através da simples visualização

do histograma, é possível ter uma noção se ele representa uma imagem muito clara, muito escura ou

balanceada.

Uma das técnicas possíveis de se aplicar em um histograma é a sua Equalização. Consiste em

redistribuir os valores de tons de cinza dos pixels de modo a obter um histograma mais uniforme.

Desta forma, imagens muito claras, com níveis de intensidade luminosa majoritariamente altos

(comprimidos na parte direita do histograma), têm seus valores de intensidade redistribuídos.

Esta técnica gera um novo histograma mais uniforme, ocupando muito mais níveis de

intensidade luminosa e não apenas uma pequena parte. Isto resulta em uma imagem muito mais

balanceada, detalhes antes imperceptíveis tornam-se visíveis.

Este procedimento também pode ser usado para imagem muito escuras. É possível aumentar o

brilho e o contraste entre os tons, fazendo com que a imagem fique mais clara e nítida.

Um detalhe importante sobre a equalização de um histograma é a necessidade de uma imagem

relativamente limpa, sem ruídos, pois estes acabariam interferindo na técnica. Outro detalhe 8

90 100 100100 110 115100 90 110

90 100 100100 240 115100 90 110

90

100 110 115 240

Page 9: Filtros passa baixa

indesejado é que imagens com muitos pixels escuros podem fazer com que a imagem equalizada tenha

uma aparência desbotada.

(Marques Filho e Vieira Neto, 1999; Gonzales e Woods, 2000; Pavim e Roloff, 2005)

Abaixo será ilustrado alguns exemplos de equalização do histograma:

9

(b)

(a)

Page 10: Filtros passa baixa

Figura 5. (Mello, 2010)

Imagem (a) com muita concentração de pixels claros e escuros seu histograma é representado em (b).

A imagem equalizada (c) possui uma melhor definição e nitidez, é possível notar a marca do carro

(mazda) antes impossível de ser vista. O histograma (d) tons de níveis de pixels muito mais variados.

10

(d)

(c)

Page 11: Filtros passa baixa

(a) (b)

(c) (d)

Figura 6. (NASA, 2002)

Imagem original (a) e seu respectivo histograma (b). Figura com muita concentração de pixels

escuros. Depois de feita a equalização do histograma, a imagem ficou com o aspecto lavado (c), no 11

Page 12: Filtros passa baixa

entanto, alguns detalhes antes invisíveis tornaram-se aparentes. Seu histograma é representando na

figura (d). O uso ou não desta técnica irá depender da finalidade de cada imagem.

2 – Exemplos e comparações de técnicas de filtragem

A seguir será apresentado alguns exemplos e comparações de filtros passa baixa descritos no

trabalho:

2.1 – Filtragem pela Média

Aplicação do filtro da média, utilizado para suavizar a imagem. Quanto maior a máscara,

maior o efeito de borramento/suavização.

(a) imagem original (b) máscara 3x3 (c) máscara 5x5 (d) máscara 7x7

(a) (b)

12

Page 13: Filtros passa baixa

(c) (d)

Figura 7. (Marques Filho e Vieira Neto, 1999)

2.2 – Filtragem pela Média e Mediana

Comparação dos filtros de média e mediana para a remoção de ruído impulsivo (sal e

pimenta).

Para a remoção deste tipo de ruído, o filtro da mediana tem um desempenho excepcional. Se

aproximando muito da imagem original.

(a) imagem original (b) imagem contaminada por ruído sal e pimenta

(c) imagem filtrada pela média (d) imagem filtrada pela mediana

13

Page 14: Filtros passa baixa

(a) (b)

(c) (d)

Figura 8. (Marques Filho e Vieira Neto, 1999)

14

Page 15: Filtros passa baixa

2.3 – Filtragem pela Mediana

Até mesmo em situações com muito ruído a filtragem pela mediana consegue um resultado

bastante satisfatório.

Figura 9. (Fernandes e Lima, 1998)

Resultado da operação de filtragem com filtro de mediana em uma imagem com 10% de ruído.

15

Page 16: Filtros passa baixa

Figura 10. (Fernandes e Lima, 1998)

Resultado da operação de filtragem com filtro de mediana em uma imagem com 50% de ruído.

16

Page 17: Filtros passa baixa

3 – Algoritmos

Alguns algoritmos que implementam as técnicas de filtragem.

3.1 – Algoritmo da Média

using System;using System.Collections.Generic;using System.Text;using DoisDWeb.Lib;using DoisDWeb.Projetos.DigitalImage.Tools;using System.Windows.Media;

namespace DoisDWeb.Projetos.DigitalImage.Metodos{ public partial class FiltroMedia : MetodoFiltroBase { private static int[,] mascara = new int[,]

{{ 1, 1, 1 },{ 1, 1, 1 },{ 1, 1, 1 }

};

public override ImageBytes Executar(ImageBytes image) { int width = image.Width; int height = image.Height; int widthM1 = width - 1; int heightM1 = height - 1; int i, j; double v, z = 0; byte novoValor; ImageBytes imageOrigem = image.Clone();

for (int y = 1; y < heightM1; y++) { for (int x = 1; x < widthM1; x++) { z = 0; for (i = 0; i < 3; i++) { for (j = 0; j < 3; j++) { Color color = imageOrigem.GetPixel(x + (i - 1), y + (j - 1)); z += color.R * mascara[i, j]; } }

17

Page 18: Filtros passa baixa

novoValor = Convert.ToByte( z / 9); image.SetPixel(x, y, novoValor, novoValor, novoValor, 255); } } return image; } }}

3.2 – Algoritmo da Mediana

f o r i = 0 t o l i n e s do b e g i n f o r j = 0 t o columns do b e g i n

l impa (&median ) f o r x = i - mask . l i n e s / 2 t o i + mask . l i n e s / 2 do b e g i n f o r y = j - mask . columns / 2 t o j + mask . columns / 2 do b e g i n a d d _ o r d e r ( i n p u t [ x ] [ y ] , & median ) ; end ;

end ; o u t p u t [ i ] [ j ] = median (&median ) ;

end ;

end ;

3.3 – Algoritmo da Equalização do Histograma

using System;using System.Collections.Generic;using System.Text;using DoisDWeb.Lib;using DoisDWeb.Projetos.DigitalImage.Tools;

namespace DoisDWeb.Projetos.DigitalImage.Metodos{ public partial class Equalizacao : MetodoFiltroBase { //private byte[] Equalizacao(int[] histograma, int totalPixel) //{ // byte[] histogramaEqualizado = new byte[256]; // float coef = 255.0f / totalPixel;

18

Page 19: Filtros passa baixa

// float prev = histograma[0] * coef; // histogramaEqualizado[0] = (byte)prev; // for (int i = 1; i < 256; i++) // { // prev += histograma[i] * coef; // histogramaEqualizado[i] = (byte)prev; // }

// return histogramaEqualizado; //}

public override ImageBytes Executar(ImageBytes image) { //int width = image.Width; //int height = image.Height; //int widthM1 = width - 1; //int heightM1 = height - 1;

//if (image.Histograma == null) //{ // image.Histograma = new clsHistograma(imageData, imageData.BitmapDataOriginal); //} //byte[] histogramaEqualizado = Equalizacao(imageData.Histograma.Pixeis, imageData.Histograma.TotalPixels);

//for (int y = 1; y < heightM1; y++) //{ // for (int x = 1; x < widthM1; x++) // { // double v = imageData.GetPixel(x, y); // byte p = histogramaEqualizado[(int) v]; // imageData.SetPixel(x, y, p); // } //} return image; } }}

19

Page 20: Filtros passa baixa

Conclusão

O objetivo deste trabalho foi apresentar alguns filtros passa baixa, suas principais

características e funcionalidades.

Estes filtros fazem parte das técnicas de filtragem, e são muito utilizados na suavização de

imagens, redução de ruídos e artefatos indesejados.

No entanto existem limitações. É impossível atenuar totalmente um ruído sem comprometer

arestas e bordas. O que deve ser feito é escolher a técnica que melhor consegue trabalhar com o tipo de

imagem e ruído solicitado. Mesmo assim, por mais bem que seja aplicado uma técnica é improvável

que a imagem fique perfeita. Sempre irá restar algum artefato ou borramento. Entretanto, podendo

este, ser quase imperceptível.

20

Page 21: Filtros passa baixa

Referências Bibliográficas

GONZALEZ, R. C.; WOODS, R. E. Processamento de Imagens Digitais. São Paulo, Edgard Blucher, 2000.

PEDRINI, H.; SCHWARTZ, W. R. Análise de Imagens Digitais: Principios, Algoritmos e Aplicações. São Paulo, Thomson Pioneira, 2007.

MARQUES FILHO, O.; VIEIRA NETO, H. Processamento Digital de Imagens. Rio de Janeiro, Brasport, 1999. Disponível em: http://pessoal.utfpr.edu.br/hvieir/download/pdi99.pdf

FERNANDES, D.; LIMA, J. C. M. Filtro de Mediana para Imagens Implementado emArquitetura Sistólica, Porto Alegre, Pós-Graduação em Ciência da Computação UFRGS, 1998. Disponível em: http://www.inf.ufrgs.br/gppd/disc/cmp135/trabs/denis/julio_denis.htm

CARVALHO, M. A. G. Processamento Digital de Imagens. Campinas, UNICAMP, 2004. Disponível em: http://www.ceset.unicamp.br/~magic/ST061/Apostila_pdiceset.pdf

PAVIM, A. X.; ROLOFF, M. L. Curso de Processamento e Análise de Imagens. Florianópolis, 2005. Disponível em: http://s2i.das.ufsc.br/cursos/eneca05/curso-proc-imagem-eneca.pdf

21