1 / 21

Snakes / Contornos Ativos

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

galya
Download Presentation

Snakes / Contornos Ativos

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Snakes / Contornos Ativos Processamento de Imagens

  2. 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.

  3. Snakes - Aplicações • Splines deformáveis • Detecção de bordas • Modelagem de formas (shape modeling) • Segmentação • Ratreamento de movimento (motion tracking)

  4. 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.

  5. Posição inicial da snake (pontilhado) • Passo intermediário na processo iterativo de minimização • Estágio final de minimização (snake “empurrada” de encontro ao contorno real).

  6. 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)

  7. 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.

  8. Snake – representação paramétrica • 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

  9. Snake – energia interna : elasticidade da curva (esticamento ou contração de seu comprimento) α(s) : rigidez (stiffness) da curva (curvatura) β(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)

  10. 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.

  11. Eline • Eline = I(x,y) • O sinal Wline define se a snake será atraída por linhas claras ou escuras

  12. Funcional de borda (Eedge) • Eedge = -|grad f(x,y)|2 • A snake será atraída p/ contornos com altos gradientes.

  13. 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 θ )

  14. Restrições (Econ)

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

  16. 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

  17. 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

  18. 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:

  19. GVF - Cálculo • O GVF pode ser calculado usando as equações de Euler: É o operador laplaciano

More Related