Você está na página 1de 45

MAC5915 (MAC0468) Laboratório de Visão Computacional e

Processamento de Imagens

Filtragem Espacial

Prof. Dr. Paulo A. V. de Miranda


Instituto de Matemática e Estatı́stica (IME),
Universidade de São Paulo (USP)
pmiranda@vision.ime.usp.br

1 / 37
Introdução

Introdução
Fundamentos de
Imagem Digital
Filtragem espacial
Filtros Separáveis
Filtros de estatı́stica
de ordem (não
lineares)
Filtros espaciais de
aguçamento
Detecção de bordas

2 / 37
Introdução

Introdução
Fundamentos de
Imagem Digital
Filtragem espacial
Filtros Separáveis
Filtros de estatı́stica
de ordem (não
lineares)
Filtros espaciais de
aguçamento
Detecção de bordas

3 / 37
Fundamentos de Imagem Digital

Introdução
Fundamentos de Uma imagem digital é um par (DI , I),~ onde DI é um conjunto
Imagem Digital
Filtragem espacial
de pontos do Zn (domı́nio da imagem), denominados spels
Filtros Separáveis (space elements), e I~ é um mapeamento vetorial que associa a
Filtros de estatı́stica
de ordem (não cada spel p em DI um conjunto {I1 (p), I2 (p), . . . , Ik (p)} de
lineares)
Filtros espaciais de valores escalares, associados com alguma propriedade fı́sica. O
aguçamento
Detecção de bordas
valor de n refere-se à dimensão da imagem e o valor de k ao
número de bandas. No caso de imagens monocromáticas temos
k = 1 ⇒ I~ = I1 , para simplificar vamos adotar I~ = I. No caso
bidimensional, temos n = 2 e os spels são chamados pixels
(picture elements).

4 / 37
Fundamentos de Imagem Digital

Introdução
Fundamentos de
Uma imagem em tons de cinza e bidimensional (ex: foto,
Imagem Digital imagem de ultrasom, fatia tomográfica), com M linhas e N
Filtragem espacial
Filtros Separáveis colunas, pode ser armazenada em um vetor de tamanho N × M .
Filtros de estatı́stica
de ordem (não A conversão entre o ı́ndice k do vetor e as coordenadas
lineares)
Filtros espaciais de
correspondentes do (i, j)-ésimo pixel é feita por:
aguçamento
Detecção de bordas ■ k =j+i×N
■ j = k%N (resto da divisão)
■ i = k/N (divisão inteira)

5 / 37
Fundamentos de Imagem Digital

Introdução
Fundamentos de
Os valores I(p) de cada pixel p são obtidos por amostragem e
Imagem Digital quantização de uma função contı́nua Ic (x, y) que descreve a
Filtragem espacial
Filtros Separáveis propriedade fı́sica correspondente em uma dada região do espaço.
Filtros de estatı́stica
de ordem (não
lineares)
■ No caso de uma foto temos o brilho,
Filtros espaciais de ■ em uma tomografia de Raios-X temos a densidade do tecido.
aguçamento
Detecção de bordas
Valores altos de I(p) são apresentados na tela como pixels claros
e valores baixos como pixels escuros.

6 / 37
Fundamentos de Imagem Digital

Introdução
Fundamentos de
Resolução Espacial: Cada pixel é amostrado a intervalos dx e dy
Imagem Digital na horizontal e vertical (ex: dx = dy = 1mm), sendo o tamanho
Filtragem espacial
Filtros Separáveis do pixel dado por dx × dy.
Filtros de estatı́stica
de ordem (não
lineares)
■ Considerando uma região fixa do espaço, uma imagem tem
Filtros espaciais de resolução espacial maior quanto menores forem os intervalos
aguçamento
Detecção de bordas (dx, dy) de amostragem.
■ Resolução temporal: Está associada ao intervalo de
amostragem no tempo.

7 / 37
Fundamentos de Imagem Digital

Introdução
Fundamentos de
Resolução Radiométrica: Os valores I(p) amostrados são
Imagem Digital quantizados em 2b nı́veis de cinza, onde b é chamado
Filtragem espacial
Filtros Separáveis profundidade da imagem em bits (ex: b = 8, profundidade de
Filtros de estatı́stica
de ordem (não 8bits).
lineares)
Filtros espaciais de ■ Quanto maior for o valor de b (menor for o intervalo de
aguçamento
Detecção de bordas quantização) para um intervalo fixo de brilho, temos uma
maior resolução radiométrica.
◆ Imagem de b = 8bits ⇒ 28 = 256 nı́veis de cinza.
◆ Imagem de b = 16bits ⇒ 216 = 65536 nı́veis de cinza.

8 / 37
Fundamentos de Imagem Digital

Introdução
Fundamentos de Problema: Para uma região do espaço de 100 × 200cm2 você
Imagem Digital
Filtragem espacial
obtém amostras com dx = 0, 1mm e dy = 0, 2mm e quantiza os
Filtros Separáveis valores de brilho com 256 nı́veis de cinza. Qual o tamanho da
Filtros de estatı́stica
de ordem (não imagem? Se esta imagem fosse a foto de um objeto, que tipo de
lineares)
Filtros espaciais de distorção você veria? Por quê?
aguçamento
Detecção de bordas

9 / 37
Fundamentos de Imagem Digital
Fatiamento por planos de bits:
Introdução
Fundamentos de
Imagem Digital
Filtragem espacial
Filtros Separáveis
Filtros de estatı́stica
de ordem (não
lineares)
Filtros espaciais de
aguçamento
(a) Original (b) bit 1 (c) bit 2
Detecção de bordas

(d) bit 3 (e) bit 4 (f) bit 5

(g) bit 6 (h) bit 7 (i) bit 8

10 / 37
Fundamentos de Imagem Digital
Fatiamento por planos de bits: Imagens reconstruı́das utilizando:
Introdução
Fundamentos de
Imagem Digital
Filtragem espacial
Filtros Separáveis
Filtros de estatı́stica
de ordem (não
lineares)
Filtros espaciais de
aguçamento
Detecção de bordas

(a) Original (b) bits 5-8

(c) bits 6-8 (d) bits 7-8

11 / 37
Fundamentos de Imagem Digital

Introdução
Fundamentos de
Histograma:
Imagem Digital
Filtragem espacial ■ O histograma de uma imagem é uma função h(l), onde para
Filtros Separáveis
Filtros de estatı́stica
cada nı́vel de cinza 0 ≤ l ≤ 2b − 1, h(l) armazena o número
de ordem (não
lineares)
de pixels com este valor I(p) = l.
Filtros espaciais de ■ O histograma é dito normalizado em [0, 1] quando dividimos
aguçamento
Detecção de bordas h(l) por N × M (tamanho da imagem), estando associado a
distribuição de probabilidade do nı́vel l.

12 / 37
Fundamentos de Imagem Digital

Introdução
Fundamentos de
Imagem multidimensional:
Imagem Digital
Filtragem espacial ■ DI ∈ Zn , com n > 2. Ex: Tomográficas n = 3, nas quais o
Filtros Separáveis
Filtros de estatı́stica
pixel é chamado de voxel (volume element).
de ordem (não
lineares)
Filtros espaciais de
aguçamento
Detecção de bordas

13 / 37
Fundamentos de Imagem Digital

Introdução
Fundamentos de
Operações matemáticas: Operações lógicas e aritméticas entre
Imagem Digital imagens são equivalentes às mesmas operações realizadas pixel a
Filtragem espacial
Filtros Separáveis pixel, entre os valores dos pixels.
Filtros de estatı́stica
de ordem (não
lineares)
Filtros espaciais de
aguçamento
Detecção de bordas

Exemplo de subtração entre fotos com e sem flash, seguido por


limiarização para separação entre foreground e background
(artigo: https://doi.org/10.1109/SIBGRAPI.2006.5).

14 / 37
Fundamentos de Imagem Digital

Introdução
Fundamentos de
Operações matemáticas: Operações lógicas e aritméticas entre
Imagem Digital imagens são equivalentes às mesmas operações realizadas pixel a
Filtragem espacial
Filtros Separáveis pixel, entre os valores dos pixels.
Filtros de estatı́stica
de ordem (não
lineares)
Filtros espaciais de
aguçamento
Detecção de bordas

Exemplo de subtração entre fotos com e sem flash, seguido por


limiarização para separação entre foreground e background
(artigo: https://doi.org/10.1109/SIBGRAPI.2006.5).

15 / 37
Filtragem espacial

Introdução
Fundamentos de
Um filtro espacial consiste em:
Imagem Digital
Filtragem espacial ■ Uma vizinhança (normalmente um pequeno retângulo) e
Filtros Separáveis
Filtros de estatı́stica
■ uma operação predefinida realizada sobre os pixels da
de ordem (não
lineares)
imagem incluı́dos na vizinhança.
Filtros espaciais de
aguçamento Um filtro pode ser um filtro espacial linear (soma de produtos)
Detecção de bordas
ou não linear.

16 / 37
Filtragem espacial

Introdução
Fundamentos de
Correlação: Pa Pb
Imagem Digital K(x, y) ⊙ I(x, y) = s=−a t=−b K(s, t)I(x + s, y + t)
Filtragem espacial
Filtros Separáveis
Filtros de estatı́stica
de ordem (não
lineares)
Filtros espaciais de
Convolução: Pa Pb
aguçamento
Detecção de bordas
K(x, y) ∗ I(x, y) = s=−a t=−b K(s, t)I(x − s, y − t)

onde K é o kernel (máscara ou filtro) de convolução, de


tamanho m × n, considerando que n = 2a + 1 e m = 2b + 1.

17 / 37
Filtragem espacial
Correlação: Pa Pb
Introdução
Fundamentos de
K(x, y) ⊙ I(x, y) = s=−a t=−b K(s, t)I(x + s, y + t)
Imagem Digital
Filtragem espacial
Filtros Separáveis
Filtros de estatı́stica
de ordem (não
lineares)
Filtros espaciais de
aguçamento
Detecção de bordas

I ′ (x, y) = K(x, y) ⊙ I(x, y)


= w1 a+w2 b+w3 c+. . .+w9 i = I~ · K
~ = I~ K
~ ⊤ = |I|
~ |K|
~ cos(θ)

I~ = ha, b, c, . . . , h, ii
K~ = hw1 , w2 , w3 , . . . , w8 , w9 i

18 / 37
Filtragem espacial

Introdução
Fundamentos de
Exemplo: Considere a imagem e kernel fornecidos abaixo.
Imagem Digital
   
Filtragem espacial
Filtros Separáveis
1 2 3 1 2 1
Filtros de estatı́stica I(x, y) = 4 5 6 K(x, y) = 2 4 2
de ordem (não
lineares) 7 8 9 1 2 1
Filtros espaciais de
aguçamento
Detecção de bordas Convolução em 2D:

I ′ (x, y) = K(x, y) ∗ I(x, y)

1x0 2x0 1x0


2x0 4x 1 2x 2 3
1x0 2x 4 1x 5 6
7 8 9

I ′ (0, 0) = 4 · 1 + 2 · 2 + 2 · 4 + 1 · 5 = 21

19 / 37
Filtragem espacial

Introdução
Fundamentos de
Exemplo: Considere a imagem e kernel fornecidos abaixo.
Imagem Digital
   
Filtragem espacial
Filtros Separáveis
1 2 3 1 2 1
Filtros de estatı́stica I(x, y) = 4 5 6 K(x, y) = 2 4 2
de ordem (não
lineares) 7 8 9 1 2 1
Filtros espaciais de
aguçamento
Detecção de bordas Convolução em 2D:

I ′ (x, y) = K(x, y) ∗ I(x, y)

1x0 2x0 1x0


2x1 4x2 2x3
1x4 2x5 1x6
7 8 9

I ′ (1, 0) = 2 · 1 + 4 · 2 + 2 · 3 + 1 · 4 + 2 · 5 + 1 · 6 = 36

19 / 37
Filtragem espacial

Introdução
Fundamentos de
Exemplo: Considere a imagem e kernel fornecidos abaixo.
Imagem Digital
   
Filtragem espacial
Filtros Separáveis
1 2 3 1 2 1
Filtros de estatı́stica I(x, y) = 4 5 6 K(x, y) = 2 4 2
de ordem (não
lineares) 7 8 9 1 2 1
Filtros espaciais de
aguçamento
Detecção de bordas Convolução em 2D:

I ′ (x, y) = K(x, y) ∗ I(x, y)

1x0 2x0 1x0


1 2x2 4x 3 2x0
4 1x5 2x 6 1x0
7 8 9

I ′ (2, 0) = 2 · 2 + 4 · 3 + 1 · 5 + 2 · 6 = 33

19 / 37
Filtragem espacial

Introdução
Fundamentos de
Exemplo: Considere a imagem e kernel fornecidos abaixo.
Imagem Digital
   
Filtragem espacial
Filtros Separáveis
1 2 3 1 2 1
Filtros de estatı́stica I(x, y) = 4 5 6 K(x, y) = 2 4 2
de ordem (não
lineares) 7 8 9 1 2 1
Filtros espaciais de
aguçamento
Detecção de bordas Convolução em 2D:

I ′ (x, y) = K(x, y) ∗ I(x, y)

1x0 2x1 1x2 3


2x0 4x4 2x5 6
1x0 2x7 1x8 9

I ′ (0, 1) = 2 · 1 + 1 · 2 + 4 · 4 + 2 · 5 + 2 · 7 + 1 · 8 = 52

19 / 37
Filtragem espacial

Introdução
Fundamentos de
Exemplo: Considere a imagem e kernel fornecidos abaixo.
Imagem Digital
   
Filtragem espacial
Filtros Separáveis
1 2 3 1 2 1
Filtros de estatı́stica I(x, y) = 4 5 6 K(x, y) = 2 4 2
de ordem (não
lineares) 7 8 9 1 2 1
Filtros espaciais de
aguçamento
Detecção de bordas Convolução em 2D:

I ′ (x, y) = K(x, y) ∗ I(x, y)

1x1 2x2 1x3


2x4 4x5 2x6
1x7 2x8 1x9

I ′ (1, 1) = 1·1+2·2+1·3+2·4+4·5+2·6+1·7+2·8+1·9 = 80

19 / 37
Filtragem espacial

Introdução
Fundamentos de
Exemplo: Considere a imagem e kernel fornecidos abaixo.
Imagem Digital
   
Filtragem espacial
Filtros Separáveis
1 2 3 1 2 1
Filtros de estatı́stica I(x, y) = 4 5 6 K(x, y) = 2 4 2
de ordem (não
lineares) 7 8 9 1 2 1
Filtros espaciais de
aguçamento
Detecção de bordas Convolução em 2D:

I ′ (x, y) = K(x, y) ∗ I(x, y)

1 1x2 2x3 1x0


4 2x5 4x6 2x0
7 1x8 2x9 1x0

I ′ (2, 1) = 1 · 2 + 2 · 3 + 2 · 5 + 4 · 6 + 1 · 8 + 2 · 9 = 68

19 / 37
Filtragem espacial

Introdução
Fundamentos de
Exemplo: Considere a imagem e kernel fornecidos abaixo.
Imagem Digital
   
Filtragem espacial
Filtros Separáveis
1 2 3 1 2 1
Filtros de estatı́stica I(x, y) = 4 5 6 K(x, y) = 2 4 2
de ordem (não
lineares) 7 8 9 1 2 1
Filtros espaciais de
aguçamento
Detecção de bordas Convolução em 2D:

I ′ (x, y) = K(x, y) ∗ I(x, y)

1 2 3
1x0 2x4 1x5 6
2x0 4x7 2x8 9
1x0 2x0 1x0

I ′ (0, 2) = 2 · 4 + 1 · 5 + 4 · 7 + 2 · 8 = 57

19 / 37
Filtragem espacial

Introdução
Fundamentos de
Exemplo: Considere a imagem e kernel fornecidos abaixo.
Imagem Digital
   
Filtragem espacial
Filtros Separáveis
1 2 3 1 2 1
Filtros de estatı́stica I(x, y) = 4 5 6 K(x, y) = 2 4 2
de ordem (não
lineares) 7 8 9 1 2 1
Filtros espaciais de
aguçamento
Detecção de bordas Convolução em 2D:

I ′ (x, y) = K(x, y) ∗ I(x, y)

1 2 3
1x4 2x5 1x6
2x7 4x8 2x9
1x0 2x0 1x0

I ′ (1, 2) = 1 · 4 + 2 · 5 + 1 · 6 + 2 · 7 + 4 · 8 + 2 · 9 = 84

19 / 37
Filtragem espacial

Introdução
Fundamentos de
Exemplo: Considere a imagem e kernel fornecidos abaixo.
Imagem Digital
   
Filtragem espacial
Filtros Separáveis
1 2 3 1 2 1
Filtros de estatı́stica I(x, y) = 4 5 6 K(x, y) = 2 4 2
de ordem (não
lineares) 7 8 9 1 2 1
Filtros espaciais de
aguçamento
Detecção de bordas Convolução em 2D:

I ′ (x, y) = K(x, y) ∗ I(x, y)

1 2 3
4 1x5 2x6 1x0
7 2x8 4x9 2x0
1x0 2x0 1x0

I ′ (2, 2) = 1 · 5 + 2 · 6 + 2 · 8 + 4 · 9 = 69
19 / 37
Filtragem espacial

Introdução
Fundamentos de
Propriedades da convolução:
Imagem Digital
Filtragem espacial ■ Comutativa: f ∗ g = g ∗ f
Filtros Separáveis
OBS: Isso não é verdade para a correlação.
Filtros de estatı́stica
de ordem (não ■ Distributiva: f ∗ (g + h) = (f ∗ g) + (f ∗ h)
lineares)
Filtros espaciais de
aguçamento a
X b
X
Detecção de bordas f ∗ (g + h) = f (s, t) [g(x − s, y − t) + h(x − s, y − t)]
s=−a t=−b

a
X b
X a
X b
X
= f (s, t)g(x−s, y−t)+ f (s, t)h(x−s, y−t) = f ∗g+f ∗h
s=−a t=−b s=−a t=−b

■ Associativa: f ∗ (g ∗ h) = (f ∗ g) ∗ h

20 / 37
Filtragem espacial

Introdução
Fundamentos de
Para gerar um filtro espacial linear m × n, devemos especificar os
Imagem Digital coeficientes da máscara K. Exemplos para reduzir o nı́vel de
Filtragem espacial
Filtros Separáveis ruı́do de uma imagem:
Filtros de estatı́stica
de ordem (não
lineares)
■ Uma máscara 3 × 3 cujos coeficientes são 1/9 implementa o
Filtros espaciais de cálculo da média. 2 2
aguçamento
1 − x +y
Detecção de bordas ■ K(x, y) = G(x, y) = 2πσ2 e 2σ2 implementa o filtro
Gaussiano.
Por não ter todos os pesos iguais como o filtro de média, o filtro
Gaussiano faz uma suavização mais delicada preservando mais os
contornos que o de média.

A Figura mostra a forma inteira 5 × 5 do kernel da Gaussiana21 / 37


para σ = 1, 0.
Filtros Separáveis

Introdução
Fundamentos de
Filtros Gaussianos podem ser implementados de modo mais
Imagem Digital eficiente, dado que eles podem ser separados em Gaussianas 1D:
Filtragem espacial
Filtros Separáveis
Filtros de estatı́stica 1 − x2 +y2 2
de ordem (não G(x, y) = 2
e 2σ
lineares) 2πσ
Filtros espaciais de
aguçamento
1 2
− x2 1 2
− y2
Detecção de bordas
=√ e 2σ × √ e 2σ
2πσ 2πσ
= G(x) × G(y)

A imagem é suavizada primeiramente por uma Gaussiana 1D


linha por linha e depois pela mesma Gaussiana 1D coluna por
coluna ou o inverso.
Note que, para cada ponto da imagem estaremos fazendo 2m
multiplicações usando duas convoluções 1D, enquanto a
convolução 2D requer m2 multiplicações para um kernel 2D de
tamanho m × m.

22 / 37
Filtros Separáveis

Introdução
Fundamentos de
Exemplo: Kernel 3 × 3 separável K(x, y) = K(x) × K(y).
Imagem Digital
     
Filtragem espacial 1 2 1 1  1·1 2·1 1·1
Filtros Separáveis

K(x, y) = 2 4 2 = 2 · 1 2 1 = 1 · 2 2·2 1 · 2
Filtros de estatı́stica
de ordem (não 1 2 1 1 1·1 2·1 1·1
lineares)
Filtros espaciais de
aguçamento Portanto temos que:
Detecção de bordas
K(x, y) ∗ I(x, y) = K(x) ∗ [K(y) ∗ I(x, y)] = K(y) ∗ [K(x) ∗ I(x, y)]

Dado que:
b
X
K(y) ∗ I(x, y) = K(t)I(x, y − t)
t=−b
 
b
X
K(x) ∗ [K(y) ∗ I(x, y)] = K(x) ∗  K(t)I(x, y − t)
t=−b
 
a
X b
X a
X b
X
= K(s)  K(t)I(x − s, y − t) = K(s)K(t)I(x − s, y − t)
s=−a t=−b s=−a t=−b

23 / 37
Filtros Separáveis

Introdução
Fundamentos de
Para a imagem e kernel abaixo:
Imagem Digital
Filtragem espacial
1 2 3 1 2 1

Filtros Separáveis
Filtros de estatı́stica
I(x, y) = 4 5 6 K(x, y) = 2 4 2
de ordem (não
7 8 9 1 2 1
lineares)
Filtros espaciais de
aguçamento
Sabemos dos slides anteriores que:
Detecção de bordas
21 36 33

K(x, y) ∗ I(x, y) = 52 80 68
57 84 69

O mesmo resultado pode ser obtido por K(x) ∗ [K(y) ∗ I(x, y)]
1 1 2 3  2·1+1·4 2·2+1·5 2·3+1·6
  6 9 12
2 ∗ 4 5 6 = 1·1+2·4+1·7 1·2+2·5+1·8 1·3+2·6+1·9 = 16 20 24
1 7 8 9 1·4+2·7 1·5+2·8 1·6+2·9 18 21 24

6 9 12
  2·6+1·9 1·6+2·9+1·12 1·9+2·12
 21 36 33

[1 2 1]∗ 16 20 24 = 2·16+1·20 1·16+2·20+1·24 1·20+2·24 = 52 80 68
18 21 24 2·18+1·21 1·18+2·21+1·24 1·21+2·24 57 84 69

24 / 37
Filtros de estatı́stica de ordem (não lineares)

Introdução
Fundamentos de
O filtro de mediana substitui o valor de um pixel pela mediana
Imagem Digital dos valores de intensidade na vizinhança desse pixel. Ele é eficaz
Filtragem espacial
Filtros Separáveis na redução de ruı́do sal e pimenta.
Filtros de estatı́stica
de ordem (não
lineares)
Filtros espaciais de
aguçamento
Detecção de bordas

(a) Original com ruı́do (b) Filtro Gaussiano (c) Filtro mediana

25 / 37
Filtros de estatı́stica de ordem (não lineares)

Introdução
Fundamentos de
O filtro de mediana substitui o valor de um pixel pela mediana
Imagem Digital dos valores de intensidade na vizinhança desse pixel. Ele é eficaz
Filtragem espacial
Filtros Separáveis na redução de ruı́do sal e pimenta.
Filtros de estatı́stica
de ordem (não
lineares)
Filtros espaciais de
aguçamento
Detecção de bordas

(a) Original com ruı́do (b) Filtro Gaussiano (c) Filtro mediana

26 / 37
Filtros espaciais de aguçamento

Introdução
Fundamentos de
O objetivo do aguçamento é salientar transições de intensidade
Imagem Digital para o aumento da nitidez de uma imagem.
Filtragem espacial
Filtros Separáveis
Filtros de estatı́stica
■ Derivada de primeira ordem:
de ordem (não
lineares)
∂I
Filtros espaciais de
= I(x + 1) − I(x)
aguçamento
Detecção de bordas
∂x

■ Derivada de segunda ordem como diferença:

∂ 2I
= I(x + 1) + I(x − 1) − 2I(x)
∂x2

27 / 37
Filtros espaciais de aguçamento

Introdução
Fundamentos de
Imagem Digital
Filtragem espacial
Filtros Separáveis
Filtros de estatı́stica
de ordem (não
lineares)
Filtros espaciais de
aguçamento
Detecção de bordas

28 / 37
Filtros espaciais de aguçamento

Introdução
Fundamentos de
Filtro Laplaciano:
Imagem Digital
Filtragem espacial
∂ 2I ∂ 2I
Filtros Separáveis ∇2 f = 2
+ 2
Filtros de estatı́stica
de ordem (não
∂x ∂y
lineares)
Filtros espaciais de Dado que:
aguçamento
Detecção de bordas
∂ 2I
= f (x + 1, y) + f (x − 1, y) − 2f (x, y)
∂x2
∂ 2I
= f (x, y + 1) + f (x, y − 1) − 2f (x, y)
∂y 2
Logo temos que:

∇2 f = f (x+1, y)+f (x−1, y)+f (x, y+1)+f (x, y−1)−4f (x, y)

29 / 37
Filtros espaciais de aguçamento

Introdução
Fundamentos de
Imagem Digital
Filtragem espacial
Filtros Separáveis
Filtros de estatı́stica
de ordem (não
lineares)
Filtros espaciais de
aguçamento
Detecção de bordas

∂2I ∂2I
(a) Imagem Original (I) (b) Filtro Laplaciano ( ∂x2 + ∂y 2 )

30 / 37
Filtros espaciais de aguçamento

Introdução
Fundamentos de
Imagem Digital
Filtragem espacial
Filtros Separáveis
Filtros de estatı́stica
de ordem (não
lineares)
Filtros espaciais de
aguçamento
Detecção de bordas

∂2I ∂2I
(a) Imagem Original (I) (b) Imagem realçada (I − ( ∂x2 + ∂y 2 ))

31 / 37
Detecção de bordas

Introdução
Fundamentos de
O filtro Laplaciano pode também ser usado para a detecção de
Imagem Digital bordas conforme proposto por Marr e Hildreth.
Filtragem espacial
Filtros Separáveis Para evitar a detecção de ruı́dos, é comum suavizar a imagem
Filtros de estatı́stica
de ordem (não antes de aplicar o filtro Laplaciano. Suavizar por um filtro
lineares)
Filtros espaciais de
Gaussiano e então determinar o Laplaciano é o mesmo que fazer
aguçamento a convolução da imagem com o Laplaciano do Gaussiano (LoG):
Detecção de bordas

∂ 2 [I(x, y) ∗ G(x, y)] ∂ 2 [I(x, y) ∗ G(x, y)]


LoG[I(x, y)] = 2
+
∂x ∂y 2
∂ 2 G(x, y) ∂ 2 G(x, y)
= I(x, y) ∗ 2
+ I(x, y) ∗
∂x ∂y 2
d2 G(x) d2 G(y)
= 2
∗ G(y) ∗ I(x, y) + G(x) ∗ 2
∗ I(x, y)
dx dy

32 / 37
Detecção de bordas

Introdução
Fundamentos de
Caso 1D:
Imagem Digital 1 2
− x2
Filtragem espacial
G(x) = √ e 2σ
Filtros Separáveis
2πσ
Filtros de estatı́stica
x2
de ordem (não −
lineares) dG(x) 1 − x 2 (−2x)
2
(−x) · e 2σ 2
Filtros espaciais de =√ e 2σ · 2
= √
aguçamento dx 2πσ 2σ 2πσ 3
Detecção de bordas
d2 G(x) (−1) 2
− x2 (−x) (−2x) − x22
2
=√ · e 2σ + √ 2
· e 2σ
dx 2πσ 3 2πσ 2σ
3

(−1) 2
− x2 x2 2
− x2
=√ · e 2σ + √ · e 2σ
2πσ 3 2πσ 5

x2

x2
 
e 2σ2
= (−1) + 2 · √
σ 2πσ 3

33 / 37
Detecção de bordas

Introdução
Fundamentos de
Caso 2D: 2 2)
Imagem Digital
1 −
(x +y
G(x, y) = · e 2σ 2
Filtragem espacial 2πσ 2
Filtros Separáveis 2 2) 2 2)
Filtros de estatı́stica ∂G(x, y) 1 2x −
(x +y x −
(x +y
=− · ·e 2σ 2 =− ·e 2σ 2
de ordem (não ∂x 2πσ 2 2σ 2 2πσ 4
lineares)
Filtros espaciais de (x2 +y 2 )
∂ 2 G(x, y) (x2 +y 2 ) 2 2)  2  −
aguçamento (−1) −
 x   x  − (x +y x e 2σ 2
= ·e 2σ 2 + − − 2 ·e 2σ 2 = −1 ·
Detecção de bordas
∂x2 2πσ 4 2πσ 4 σ σ2 2πσ 4

2 2)
∂ 2 G(x, y) ∂ 2 G(x, y) x2 y2
   
1 −
(x +y
+ = −1 + −1 · ·e 2σ 2
∂x2 ∂y 2 σ2 σ2 2πσ 4

(x2 + y 2 ) (x2 +y 2 ) 2 + y2 )  (x2 +y 2 )


  
2 1 − (−1) (x −
=− − + · ·e 2σ 2 = 1− ·e 2σ 2
2σ 2 2 πσ 4 πσ 4 2σ 2

34 / 37
Detecção de bordas

Introdução
Fundamentos de
Laplaciano do Gaussiano (LoG):
Imagem Digital
Filtragem espacial
Filtros Separáveis
Filtros de estatı́stica
de ordem (não
lineares)
Filtros espaciais de
aguçamento
Detecção de bordas

35 / 37
Detecção de bordas

Introdução
Fundamentos de
Imagem Digital
Filtragem espacial
Filtros Separáveis
Filtros de estatı́stica
de ordem (não
lineares)
Filtros espaciais de
aguçamento
Detecção de bordas

36 / 37
Detecção de bordas

Introdução
Fundamentos de
Imagem Digital
Filtragem espacial
Filtros Separáveis
Filtros de estatı́stica
de ordem (não
lineares) (a) Imagem original com (b) Bordas verticais
Filtros espaciais de
aguçamento retângulo indicando a placa detectada binarizadas e filtradas
Detecção de bordas

(c) Resultado da convolução de b


por um retângulo com pesos unitários
Exemplo do operador Sobel para detecção de bordas verticais em
uma das etapas de um método para localizar a placa do carro
(https://doi.org/10.1016/j.patrec.2005.04.014).

37 / 37

Você também pode gostar