21
Snakes / Contornos Ativos Processamento de Imagens

Snakes / Contornos Ativos

  • Upload
    galya

  • View
    42

  • Download
    0

Embed Size (px)

DESCRIPTION

Snakes / Contornos Ativos. Processamento de Imagens. Contornos Ativos. Curvas no domínio de imagens Movem-se sob influência: Forças internas da própria curva Forças externas provenientes da imagem - PowerPoint PPT Presentation

Citation preview

Page 1: Snakes / Contornos Ativos

Snakes / Contornos Ativos

Processamento de Imagens

Page 2: Snakes / Contornos Ativos

Contornos Ativos

• Curvas no domínio de imagens

• Movem-se sob influência:– Forças internas da própria curva– Forças externas provenientes da imagem

• Tais forças, combinadas, levam a curva a se moldar à borda da imagem ou outra característica selecionada.

Page 3: Snakes / Contornos Ativos

Snakes - Aplicações

• Splines deformáveis

• Detecção de bordas

• Modelagem de formas (shape modeling)

• Segmentação

• Ratreamento de movimento (motion tracking)

Page 4: Snakes / Contornos Ativos

Snakes

• Por que ativos ?– As snakes estão sempre tentando minimizar seu

funcional de energia, exibindo, portanto, comportamento dinâmico.

• Snakes são curvas cuja energia depende de sua forma e localização na imagem.

• Um mínimo local desta curva corresponde às propriedades desejadas da imagem.

Page 5: Snakes / Contornos Ativos

a) Posição inicial da snake (pontilhado)

b) Passo intermediário na processo iterativo de minimização

c) Estágio final de minimização (snake “empurrada” de encontro ao contorno real).

Page 6: Snakes / Contornos Ativos

Snakes

• Se tais propriedades desejadas são bordas, por exemplo, uma minimização desejável é aquela que mais aproxima a curva snake das bordas presentes na imagem.

• O processo é interativo (usuário define uma curva inicial), iterativo (processo no “tempo” em busca do ponto de mínimo)

Page 7: Snakes / Contornos Ativos

Snakes

• O funcional de energia que deverá ser minimizado é uma combinação ponderada das forças internas e externas: função custo!

• Forças internas: – Emanam da forma da snake

• Forças externas:– Vem da imagem ou de algum outro processo de

alto nível (image understading) da imagem.

Page 8: Snakes / Contornos Ativos

Snake – representação paramétrica

dssvEconsvEimagesvE

dssvE

ntE

E

))(())(())(( snake

))(( snake

1

0i

1

0snake

]1,0[

contorno do scoordenada )( e )(

)](),([)(

s

sysx

sysxsv •Eint: energia interna devida ao curvamento•Eimage: Guia a snake junto a caract. importantes da imagem•Econ: forças restrição externas impostas pelo usuário

Page 9: Snakes / Contornos Ativos

Snake – energia interna

22

22 ||)(||)(int

ds

vds

ds

dvsE

: elasticidade da curva (esticamento ou contração de seu comprimento)

: rigidez (stiffness) da curva (curvatura)β(s)

α(s)

•A energia interna mantém o modelo relativamente próximo à forma original do objeto. Depende do peso de α e β. Mais ou menos rígido.

•α e β podem ser globais ou locais (para certos segmentos)

Page 10: Snakes / Contornos Ativos

Snake – Energia da Imagem

• Line: níveis de cinza da imagem f(x,y)• Edge: gradiente de f(x,y)• Term (terminações de linhas): alguma

medida de curvatura.

termtermedgeedgelinelineimage EEEE

Page 11: Snakes / Contornos Ativos

Eline

• Eline = I(x,y)

• O sinal Wline define se a snake será atraída por linhas claras ou escuras

Page 12: Snakes / Contornos Ativos

Funcional de borda (Eedge)

• Eedge = -|grad f(x,y)|2

• A snake será atraída p/ contornos com altos gradientes.

Page 13: Snakes / Contornos Ativos

Funcional de terminação (Eterm)• Seja C(x,y) = Gσ(x,y) * I(x,y)

• θ = tan-1 (Cy/Cx) : ângulo gradiente

• n = (cos θ , sem θ) e n┴ = -sen θ, cos θ )

Page 14: Snakes / Contornos Ativos

Restrições (Econ)

Page 15: Snakes / Contornos Ativos

Minimização

• Uma snake que minimiza E deve satisfazer a equação de Euler:

0)]([])([])([2

2

2

2

svEds

vds

ds

d

ds

dvs

ds

dext

Page 16: Snakes / Contornos Ativos
Page 17: Snakes / Contornos Ativos

Snakes - deficiências

• Contorno inicial: deve ser dado próximo a curva, senão há o risco de se convergir para o local errado

• Dificuldade em convergir para áreas côncavas.

• Uma variante do modelo “resolve” esse problema: GVF snake

Page 18: Snakes / Contornos Ativos
Page 19: Snakes / Contornos Ativos

GVF Snake• GVF: Gradient Vector Flow.

– O campo de fluxo de vetores gradiente são computados a partir da imagem original. É bastante denso e, por isso, mesmo que a curva inicial seja dada “longe” das bordas, essa irá convergir para o local desejado, quer seja expandindo-se, quer seja contraindo-se

Page 20: Snakes / Contornos Ativos

GVF - Cálculo

• Definir um mapa de arestas (edge map) f– Qq cálculo que dê valores altos nos bordos e

baixos no restante (qq operador passa alta serve)

• O campo GVF é v(x,y) = (u(x,y),v(x,y)) que minimiza o funcional de energia:

dxdyfvfvvuuu yxyx222222 ||||)(

Page 21: Snakes / Contornos Ativos

GVF - Cálculo

• O GVF pode ser calculado usando as equações de Euler:

0))((

0))((222

222

yxy

yxx

fffvv

fffuu

2 É o operador laplaciano