220 likes | 300 Views
Explore the history, classic problems, and applications of variational calculus in computer vision. Learn about conditions like Euler-Lagrange and Legendre, and understand how dynamic programming can simplify complex constraints for optimal solutions. Discover the relationship between variational calculus, dynamic programming, and energy minimization in active contours.
E N D
Using dynamic programming for solving variational problems in vision Amir A. Amini, Terry E. Weymouth, Ramesh C. Jain IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE. 1990 Grupo de Discussões SINFO-UPD Monica Matsumoto 25/04/2008
1 - Cálculo Variacional • Problemas com funções de desempenho ou custo • Controle: CUSTO Dispêndio de combustível ou de energia para realizar uma dada tarefa, tempo para transferir o sistema de um estado para o outro, RECOMPENSA lucro auferido com venda, massa da carga transportada, tempo médio entre falhas • Visão: Encontrar superfície suave desejada, preservar descontinuidades, detecção de contornos, contornos ativos • Problema de Maximização ou Minimização, transformação por troca de sinal do funcional
Problema de Dido (850 ac) Euclides, Arquimedes (287-212 ac) Apolônio (262-190 ac) Fermat (1601-1665) Isaac Newton (1642-1727) Leibniz (1646-1716) Lagrange (1736-1813) Galileu Galilei (1564-1643) Johan Bernoulli (1667-1748) James Bernoulli (1654-1705) Leonard Euler Legendre (1752-1833) Jacobi (1804-1851) Weierstrass (1815-1897) Carl Gauss (1777-1855) Pierre Bonnet (1819-1892) Gaston Darboux (1819-1892) David Hilbert (1862-1943) Willian Hamilton (1805-1865) Oscar Bolza (1857-1942) Jacques Hadamard (1865-1963) 1.1 - Cálculo Variacional – Um pouco de história ...
1.2 - Cálculo Variacional: Problemas Clássicos • Problema da braquistócrona • Problemas isoperimétricos • Geodésicas • Superfície de revolução com área mínima
1.2.1 – Problema da Braquistócrona • Sejam A e B dois pontos dados em um plano vertical. O problema consiste em encontrar uma curva que uma partícula M precisa descrever para sair de A e chegar em B no menor tempo possível, somente sob ação da gravidade. John Bernoulli, 1696.
1.2.2 – Problemas Isoperimétricos • Quando queremos minimizar ou maximizar uma função impondo alguma restrição, como por exemplo que uma outra função se mantenha constante. • Ex. Problema de Dido Fundação de Cartago
1.2.3 - Geodésicas • Dados dois pontos na superfície g(x,y,z) = 0 Qual é a equação do arco pertencente à superfície e ligando estes pontos, que tem o menor comprimento?
1.2.4 – Superfície de revolução de área mínima • Dados dois pontos (x1,y1) e (x2, y2) buscamos passar de um para o outro ao longo de um arco y=y(x) tal que a rotação desse arco sobre o eixo x gere uma superfície de revolução cuja área incluída em x1≤x ≤x2 seja mínima.
2 - Método Variacional na Visão • Problema: minimização do funcional
2.1 – Condições Necessárias • Condição de Euler-Lagrange • Necessária, porém não suficiente
2.1 – Condições Necessárias • Condição de Legendre • Elimina máximos relativos fracos das possíveis soluções.
2.1 – Condições Necessárias • Condição de Jacobi
2.1 – Condições Necessárias • Método de Lagrange • Equação de Euler-Lagrange modificada • Funcional hi(x,y)=0, para i=1,2,...,m são restrições, têm de ser diferenciáveis li(x) são os multiplicadores de Lagrange
2.2 - Ressalvas • Equação de Euler-Lagrange é apenas necessária para otimalidade. Não garante otimalidade absoluta ou relativa. • Outras condições de ordem maior (e.g., Jacobi, Weierstrass) geralmente difícil de testar, e não são suficientes para o caso geral. • Teoria de cálculo variacional não descreve propriedades de minimizadores absolutos. Garante solução para mínimo relativo do tipo fraco.
2.2 - Continuação... Ressalvas • A second issue of concern is to enforce possibly nondifferentiable constraints on the solution. In many vision applications, the ability to enforce hard constraints on the solution is required. • Lagrangian-based methods could turn the constrained problem into an unconstrained problem. However, require 1) higher dimensional spaces, since now there are more unknowns that must be dealt with, and 2) the constraints themselves must be differentiable. With dynamic programming, constraints simply limit the set of admissible solutions and in fact reduce the computational complexity. • Third issue of numerical stability and accuracy. In using variational approaches, there is a need for estimates of higher order derivatives of discrete data. Computing high order derivatives of discrete, noisy data leads to numerical instability due to amplification of high frequency noise content.
3 - Relações entre Cálculo Variacional e Programação Dinâmica • Princípio da Otimalidade (Bellman) Considere um ponto C pertencente a uma trajetória AB. Se a trajetória AB for ótima partindo de A, então CB é ótima partindo de C. C B A
3 - Relações entre Cálculo Variacional e Programação Dinâmica • Solução Numérica
4 – Minimização de Energia em Contornos Ativos • Custo baseado em energias internas e externas onde
4 – Minimização de Energia em Contornos Ativos • Iterativamente: onde
4 – Minimização de Energia em Contornos Ativos • Na programação dinâmica, o contorno ativo converge em um número finito de interações, já que a energia decresce monotonicamente com o tempo.
5 - Conclusão • Dynamic programming is an attractive methodology for optimization since it bypasses local minima and allows for enforcement of hard constraints on the solution within a natural and straightforward structure. • Convergence of the algorithm is guaranteed, and so is the optimality of the solution. *