Title: SNAKES
1SNAKES
Adapted from Octavia Camps, Penn. State UCF.
2Deformable Contours
- They are also called
- Snakes
- Active contours
- Think of a snake as an elastic band
- of arbitrary shape
- sensitive to image gradient
- that can wiggle in the image
- represented as a chain of points
3Main Idea
Drop (initialize) a snake
Let the snake wiggle, attracted by image
gradient, until it glues itself against a
boundary to result in a contour Video Example One
more..
4The Energy Functional
- Associate to each possible shape and location of
the snake a value E. - Values should be s.t. the image contour to be
detected has the minimum value. - E is called the energy of the snake.
- Keep wiggling the snake towards smaller values of
E.
5Energy Functional Design
- We need a function that given a snake state,
associates to it an Energy value E. - The function should be designed so that the snake
moves towards the contour that we are seeking!
6What moves the snake?
- Forces applied to its points
7Forces moving the snake(External)
- It needs to be attracted to contours
- Edge pixels must pull the snake points.
- The stronger the edge, the stronger the pull.
- The force is proportional to ? I
8Forces preserving the snake(Internal)
- The snake should not break apart!
- Points on the snake must stay close to each other
- Each point on the snake pulls its neighbors
- The farther the neighbors, the stronger the force
- The force is proportional to the distance Pi
Pi-1
9Forces preserving the snake(Internal)
- The snake should be smooth
- Penalize high curvature
- Force proportional to snake curvature
10Snake Forces
Edge attraction
Continuity
Smoothness
11Snake stateContour Parametrization
Consider a contour parametrization cc(s) where s
is the arc length
s
Each point Pi on the contour has coordinates
(xi(s),yi(s))
Pi
12Snake Energy Functional
Given a snake with N points p1,p2,,pN
Define the following Energy Functional
Where
Continuity
Smoothness
Edgeness
ai,bi,ci are weights to control influence
13Continuity Term
Given a snake with N points p1,p2,,pN
Let d be the average distance between points
Define the continuity term of the Energy
Functional
Distance between points should be kept close to
average
14Smoothness Term
Given a snake with N points p1,p2,,pN
Curvature should be kept small
Define the smoothness term of the Energy
Functional
Second derivative
15Edgeness Term
Given a snake with N points p1,p2,,pN
Define the edgeness term of the Energy Functional
Magnitude of the gradient should be LARGE
16Dual-Snakes