wavelets - users.isr.ist.utl.ptusers.isr.ist.utl.pt/~jsm/teaching/pigc/3.pdf · j,m, e aplicar...

16
© Jorge Salvador Marques, 2009 Wavelets © Jorge Salvador Marques, 2009 Motivação

Upload: buicong

Post on 25-Apr-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

© Jorge Salvador Marques, 2009

Wavelets

© Jorge Salvador Marques, 2009

Motivação

© Jorge Salvador Marques, 2009

Qual é a melhor escala?

Os objectos aparecem na imagem com dimensões muito diferentes.

Não uma escala única que seja apropriada. Há uma escala adequada para representar cada objecto

representações multi-escala

© Jorge Salvador Marques, 2009

Espaço-escala

)(*)(),( xxx sGIsI = 22

2||||

2 )(

21 s

x

eGs

s

−=

πx

Define-se espaço-escala como o sinal

© Jorge Salvador Marques, 2009

Pirâmide gaussiana

M ..., 1, )2()( )(*)()( 1 === + iJ IGIJ iisii kkkkk

Discretização do espaço e da escala

Recursão:

dificuldade: o número de variáveis aumenta!

© Jorge Salvador Marques, 2009

Wavelets

As wavelets permitem obter imagens de baixa resolução mantendo toda a informação da imagem original, sem aumentaro número de coeficientes.

coeficientes de detalhe

imagem de baixa resolução

© Jorge Salvador Marques, 2009

Wavelets

© Jorge Salvador Marques, 2009

Correlação entre pixels

posição relativa dos pixels

pixels vizinhos são correlacionados

© Jorge Salvador Marques, 2009

Coeficientes de detalhe

Os coeficientes de detalhe são descorrelacionados (aproximadamente).

detalhe

ruído gaussiano

horizontal vertical diagonal

posição relativa dos coeficientes

© Jorge Salvador Marques, 2009

Representação de Haar

© Jorge Salvador Marques, 2009

Aproximação de funções

)()( kxφcxf jk

kj −∑=

∞+

−∞=2

⎪⎩

⎪⎨⎧ <≤

=..

)(cc

xxφ

0

101

f f

f1f0

0 1 2 3 4 0 1 2 3 4

f

f2

0 1 2 3 4

© Jorge Salvador Marques, 2009

Base: impulsos rectangulares

)( 72 −xφ j

)( 62 −xφ j

0

)( xφ j2

1j=3

)( 52 −xφ j

)( 12 −xφ j

)( 22 −xφ j

)( 42 −xφ j

)( 32 −xφ j

0 1

base ortogonal

© Jorge Salvador Marques, 2009

Base alternativa: funções de Haar (1909)

0 1 j=3

0 1

h0(x)

h1(x)

h3(x)

h2(x)

h4(x)

h5(x)

h6(x)

h7(x)

gera o mesmo espaço que a base anterior

Wavelet de Haar

base ortogonal e multi-escala

© Jorge Salvador Marques, 2009

Funções de Haar

Nxhxh 1

000 == )()(

⎪⎪

⎪⎪

<≤−

−<≤−

==

contrário caso

//).( 2-

/).(/)(2

)()( p/2

p/2

0

2250

25021

1 pp

pp

Npqk qxq

qxq

xhxh

12 −+= qk p

p - escalaq - deslocamento

hp,q(x)

© Jorge Salvador Marques, 2009

Transformada de Haar

Hcd =[ ][ ]TN

TN

... d ddd

... c ccc

110

110

=

=

( )Nj

iij hH =

Realiza a mudança de base

Matriz de Haar

hi – função de Haar

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

−−

−−

−−−−

=

22000000

00220000

00002200

00000022

22220000

00002222

11111111

11111111

81H

Exemplo

H ortogonal: H-1=HT

A transformação de Haar é a transformada de Wavelet mais simples!

© Jorge Salvador Marques, 2009

Análise Multi-resolução

© Jorge Salvador Marques, 2009

Expansão em Série

∑=k

kk xφαxf )()( )(xφk

dxxfxφxfxφα kkk )( )(~ )(),(~ *∫>==<

Seja f(x) uma função de quadrado integrável (f∈ L2(IR))

expansão em série

funções de base

cálculo dos coeficientes

)(~ xφk função dual de

se a base for ortonormada )()(~ xφxφ kk =

)(xφk

© Jorge Salvador Marques, 2009

Função de Escalamento

)()( /, kxφxφ jjkj −= 22 2

)(xφ

Pretende-se que as funções de base se obtenham por escalamento e deslocamento de uma função ϕ(x) designada por função de escalamento.

)(, xφ 23

820 1 0 1

Exemplo: função de Haar

j - escalak - deslocamento

© Jorge Salvador Marques, 2009

Espaço de resolução j

∑=k

kjk xφαxf )()( ,

Designa-se por sub-espaço de resolução j, o conjunto de funções Vj que se podem escrever como combinação linear de funções ϕjk(x)

Se j for escolhido cuidadosamente os conjuntos Vj são embebidos (nested)

1+⊂ jj VVV0

V1

V2

© Jorge Salvador Marques, 2009

Análise Multi-resolução

Uma função de escalamento ϕ e um conjunto de subespaços Vj por ela gerados definem uma análise multi-resolução se

1) a função de escalamento ϕ(x) for ortogonal às suas versões deslocadas:

2) os subespaços Vj gerados por ϕ(x-k), ∀k são embebidos nos espaços de índice maior

… ⊂ V-2⊂ V-1⊂ V0⊂ V1⊂ V2⊂…

ϕ(x) ⊥ ϕ(x-k), ∀k

3) a única função pertencente a todos os subespaços Vj é a função nula

4) qualquer função de quadrado integrável f pode ser aproximada com precisão arbitrária por uma função de Vj.

© Jorge Salvador Marques, 2009

Equação de dilatação

Como ϕ(x) pertence a V0, também pertence a V1 também

Assim pode exprimir-se como combinação linear das funções de base de V1.

)( 2 )()( nxφnhxφ φn

−∑= 2

)( )()( , xφnhxφ nφn

2∑=

coeficientes da função de escalamento

© Jorge Salvador Marques, 2009

Espaços ortogonais

V0

V1

V2

V0W0W1Vj+1=Vj⊕Wj

jj WWWVV ⊕⊕⊕⊕= ...100

Wj é um subespaço vectorial

soma directa de sub-espaços

© Jorge Salvador Marques, 2009

Wavelets

)( 2 )()( nxφnhxψ ψn

−∑= 2

Se {Vj} for uma análise multi-resolução então existe uma função ψ(x) (wavelet)tal que

1) as funções wavelets ψjk(x)=2j/2 ψ(2jx-k) são uma base de Wj

2) ϕjk(x) ⊥ ψjm(x) ∀j,k,m

Pode-se provar que

e que

)()()( nhnh φn

ψ 1−=

© Jorge Salvador Marques, 2009

Desenho da função de escalamento

O desenho da função de escalamento ϕ(x) e respectiva wavelet ψ(x) não é abordada neste curso. Há várias famílias de funções propostas (p.ex., por Daubechies).

O caso mais simples é o impulso rectangular (Haar)

⎪⎩

⎪⎨⎧ <≤

=..

)(cc

xxφ

0

101

© Jorge Salvador Marques, 2009

Exemplo

⎪⎩

⎪⎨⎧ <≤

=..

)(cc

xxφ

0

101

Admitamos que ϕ é a função de Haar

)()()( 122222

12

1 −+= xφxφxφ

Assim

⎪⎪⎩

⎪⎪⎨

<≤−

<≤

=

⎪⎪⎩

⎪⎪⎨

=−

=

=

⎪⎪⎩

⎪⎪⎨

=

=

=

..

.

.

)(

..

)(

..

)(

cc

x

x

cc

n

n

nh

cc

n

n

nh ψφ

0

1501

5001

0

1

0

0

1

0

21

21

21

21

ψ(x)

© Jorge Salvador Marques, 2009

Expansão em série de wavelets

)( )()( ,,jj

,,0

xψdxφcxf kjkjk

kjkjk

000 ∑∑+∑=∞

=

kjc ,0

se f(x) for um sinal de quadrado integrável

coeficientes de aproximação

kjd , coeficientes de detalhe

>=< )(),(, xφxfc jkkj >=< )(),(, xψxfd jkkj

...)( 212

0000 ++ ⊕⊕⊕= jjjj WWWVIRL

Como

© Jorge Salvador Marques, 2009

Transformada de wavelet rápida

hψ(-n)

hϕ(-n)

↓2

↓2

hψ(n)

hϕ(n)

↑2

↑2

cj+1,n

dj,n

cj,n

cj+1,n

0 π

aproximação detalhe

aproximação

detalhe

O cálculo dos coeficientes de aproximação e de detalhe pode ser feita através de um banco de filtros

Análise Síntese

© Jorge Salvador Marques, 2009

Transformada multi-escala

0 π

aproximação detalhe

dj,n

hψ(-n)

hϕ(-n)

↓2

↓2

cj+1,n

cj-1,n

hψ(-n)

hϕ(-n)

↓2

↓2

cj,n

hψ(n)

hϕ(n)

↑2

↑2

cj+1,n

hψ(n)

hϕ(n)

↑2

↑2

cj,n

dj-1,n

© Jorge Salvador Marques, 2009

Exemplo

)()()(

)()()(

1

1

21

21

21

21

−−=

−+=

nδnδnh

nδnδnh

ψ

φ]4 0 1- 1 3 1 2 0[)( =nf

Filtros associados à wavelet de Haar

Transformada de wavelet rápida

sinal

]4- 2 2- 2[ ]4 4- 1- 2 2 2- 1 2[ )(*)(

]4 0 4 2[ ]4 4 1- 0 4 4 3 2[ )(*)(

−=⎯⎯→⎯−=−

=⎯⎯→⎯=−

−↓

−↓

21

21

21

21

12

12

dnhnf

cnhnf

ψ

φ

]2 2- 1- 1 1 1- 1 -1[ ]0 4 0 2 0 2- 0 2[ )(

]2 2 0 0 2 2 1 1 [ ]0 4 0 0 0 4 0 2[ )(

)(*

)(*

⎯⎯⎯ →⎯−=↑

⎯⎯⎯ →⎯=↑

nh

nh

ψ

φ

d

c

212

212

1

10 2 1 3 1 -1 0 4

© Jorge Salvador Marques, 2009

Representação de Imagens

Como representar imagens discretas usando wavelets?

Há 2 dificuldades:

a imagem é discreta

depende de duas variáveis independentes

1ª questão (sinal discreto): dado um sinal discreto, pode-se admitir que os valores do sinal I(n) são os coeficientes de ordem j, cj,m, e aplicar waveletspara obter os coeficientes de resoluções mais baixas.

2ª questão (sinal bidimensional): aplicar a transformada de Haar a cada coluna da imagem e depois aplicar a transformada de Haar a cada linha da matriz resultante.

© Jorge Salvador Marques, 2009

Exemplo

© Jorge Salvador Marques, 2009

Leituras sugeridas

S. G. Mallat, "A Theory for Multiresolution Signal Decomposition: A Wavelet Representation," IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol 11, No. 7, July 1989.

Gonzalez, Woods, Digital Image Processing, Prentice Hall, 2008