operações envolvendo imagens > computação gráfica

32
Operações envolvendo imagens > Computação Gráfica

Upload: internet

Post on 17-Apr-2015

138 views

Category:

Documents


21 download

TRANSCRIPT

Page 1: Operações envolvendo imagens > Computação Gráfica

Operações envolvendo imagens> Computação Gráfica

Page 2: Operações envolvendo imagens > Computação Gráfica

2

Histograma

> Se o nível de cinza l ocorre nl vezes em imagem com n pixels, então:

> Histograma da imagem é uma representação gráfica de nl ou P(l)

n

nlP l)(

Page 3: Operações envolvendo imagens > Computação Gráfica

3

Histograma

> Imagem 3X5 (L=4)

3 3

Histograma

Imagem

l

nl

7

6

5

4

3

2

1

0

3 2 1 0

0 0 1

3 3 3 0 0

3 3 1 1 1

> Histograma da imagem

Page 4: Operações envolvendo imagens > Computação Gráfica

4

Histograma

> Distribuição dos níveis de cinza da imagem

l

nl

255 0

l

nl

255 0

l

nl

255 0

Page 5: Operações envolvendo imagens > Computação Gráfica

5

Algoritmo

> Criar um vetor para o armazenamento da freqüência de ocorrência de TODOS os níveis de cinza da imagem f(i,j);

> Inicializar o vetor com valores nulos para TODOS os elementos;

> Varrer a matriz de imagem pixel a pixel, armazenando no vetor cada ocorrência registrada.

Page 6: Operações envolvendo imagens > Computação Gráfica

6

Histograma

Page 7: Operações envolvendo imagens > Computação Gráfica

7

Expansão de histograma

> Pode produzir uma imagem mais rica em detalhes

Page 8: Operações envolvendo imagens > Computação Gráfica

8

Expansão de histograma

Page 9: Operações envolvendo imagens > Computação Gráfica

9

Equalização de histograma

Page 10: Operações envolvendo imagens > Computação Gráfica

10

Equalização de histograma

> Imagem com distribuição de níveis de cinza uniforme

> Útil para realçar diferenças sutis entre níveis de cinza próximos e leva, em muitos casos, a um aumento substancial no nível de detalhes perceptíveis.

Page 11: Operações envolvendo imagens > Computação Gráfica

11

Equalização de histograma

r

lln

RC

LroundrTs

0

1)(

Page 12: Operações envolvendo imagens > Computação Gráfica

12

> Algoritmo  - Obter histograma

  - Para cada nível de cinza do vetor de histograma aplicar a transformação de equalização e armazenar o valor obtido associando ao nível de cinza que o originou.

  - Para cada pixel da imagem de saída atribuir o valor obtido com a equalização do nível de cinza da imagem de entrada.

Equalização de histograma

Page 13: Operações envolvendo imagens > Computação Gráfica

13

Equalização do histograma

> Imagem 64x64, L=8

r

lln

RC

LroundrTs

0

1)(

Page 14: Operações envolvendo imagens > Computação Gráfica

14

Equalização de histograma

r

lln

RC

LroundrTs

0

1)(

Page 15: Operações envolvendo imagens > Computação Gráfica

15

l

nl

L-1 0 l

nl

L-1 0 l

nl

L-1 0 m0 m1

Hist. Original Hist. Equal. (Ideal)

L-1

Hist. Equal. (Real)

Equalização de histograma

Page 16: Operações envolvendo imagens > Computação Gráfica

16

Equalização de histograma -> expansão

Page 17: Operações envolvendo imagens > Computação Gráfica

17

Filtros de suavização

> Reduz variações bruscas de níveis de cinza entre pixels adjacentes

> Podem ser utilizados para redução de ruído ou interferências na imagem

> Média, Moda, Mediana> Vizinhança n x m

Page 18: Operações envolvendo imagens > Computação Gráfica

18

Filtros suavização> Média:

• Média dos valores dos pixels da imagem em uma vizinhança de (i,j) contendo n pixels.

• Reduz fortemente a definição das bordas dos objetos

> Mediana:  Valor do pixel central de um conj. de n pixels ordenados por

valor, se n for ímpar, e a média dos valores centrais, se n for par.

  - melhor preservação das bordas, comparado ao filtro da média.

Page 19: Operações envolvendo imagens > Computação Gráfica

19

Filtros suavização> Moda:

  Moda dos valores dos pixels de f em uma vizinhança de (i,j) contendo n pixels.

  - Para valores igualmente freqüentes , pode-se definir como o valor de g(i,j) a média ou mediana destes valores.

Page 20: Operações envolvendo imagens > Computação Gráfica

20

originalruidosa

Média 3x3

Média 5x5

Page 21: Operações envolvendo imagens > Computação Gráfica

21

Moda 3x3

Mediana 3x3

Moda 5x5

Mediana 5x5

Page 22: Operações envolvendo imagens > Computação Gráfica

22

Page 23: Operações envolvendo imagens > Computação Gráfica

23

Page 24: Operações envolvendo imagens > Computação Gráfica

24

Page 25: Operações envolvendo imagens > Computação Gráfica

25

Page 26: Operações envolvendo imagens > Computação Gráfica

26

Filtros de aguçamento e detecção de bordas

> Efeito contrário ao de suavização: acentuam variações de intensidade entre pixels adjacentes.

> Baseados no gradiente de funções bidimensionais.

> Módulo do vetor Gradiente de f(x, y):

2/122

)],([

y

f

x

fyxfG

Page 27: Operações envolvendo imagens > Computação Gráfica

27

Filtros de detecção de bordas

> g(i, j): aproximação discreta do módulo do vetor gradiente em f(i, j).

> Aproximações usuais:Gradiente de Roberts:

g(i,j) = {[f(i,j)-f(i+1,j+1)]2+[f(i+1,j)-f(i,j+1)]2}1/2

g(i, j) = |f(i,j)-f(i+1,j+1)| + |f(i+1,j)-f(i,j+1)|

Page 28: Operações envolvendo imagens > Computação Gráfica

28

Gradiente de Roberts

Limiares 15, 30 e 60

Page 29: Operações envolvendo imagens > Computação Gráfica

29

Filtros de detecção de bordasGradiente de Prewitt:

g(i, j) = |f(i+1,j-1) + f(i+1, j) + f(i+1, j+1) - f(i-1, j-1) - f(i-1, j) - f(i-1, j+1)|

+|f(i-1, j+1) + f(i, j+1) + f(i+1, j+1) - f(i-1, j-1) - f(i, j-1) - f(i+1, j-1)|

Page 30: Operações envolvendo imagens > Computação Gráfica

30

Filtros de detecção de bordas

Gradiente de Sobel:g(i, j) = |f(i+1, j-1) + 2f(i+1, j) + f(i+1, j+1)

- f(i-1, j-1) - 2f(i-1, j) - f(i-1, j+1)| + |f(i-1, j+1) + 2f(i, j+1) + f(i+1, j+1)

- f(i-1, j-1) - 2f(i, j-1) - f(i+1, j-1)|

Page 31: Operações envolvendo imagens > Computação Gráfica

31

Gradiente de Prewitt

Page 32: Operações envolvendo imagens > Computação Gráfica

32

Leitura Recomendada> Gonzalez, R. C.; Woods, R. E.

Processamento de Imagens Digitais.

  Filtragem Espacial