Download presentation
Presentation is loading. Please wait.
Published byEzra Rogers Modified over 9 years ago
1
Snakes, Strings, Balloons and Other Active Contour Models
2
Goal Start with image and initial closed curveStart with image and initial closed curve Evolve curve to lie along “important” featuresEvolve curve to lie along “important” features – Edges – Corners – Detected features – User input
3
Applications Region selection in PhotoshopRegion selection in Photoshop Segmentation of medical imagesSegmentation of medical images TrackingTracking
4
Corpus Callosum [Davatzikos and Prince]
5
Corpus Callosum [Davatzikos and Prince]
6
User-Visible Options Initialization: user-specified, automaticInitialization: user-specified, automatic Curve properties: continuity, smoothnessCurve properties: continuity, smoothness Image features: intensity, edges, corners, …Image features: intensity, edges, corners, … Other forces: hard constraints, springs, attractors, repulsors, …Other forces: hard constraints, springs, attractors, repulsors, … Scale: local, multiresolution, globalScale: local, multiresolution, global
7
Behind-the-Scenes Options Framework: energy minimization, forces acting on curveFramework: energy minimization, forces acting on curve Curve representation: ideal curve, sampled, spline, implicit functionCurve representation: ideal curve, sampled, spline, implicit function Evolution method: calculus of variations, numerical differential equations, local searchEvolution method: calculus of variations, numerical differential equations, local search
8
Snakes: Active Contour Models Introduced by Kass, Witkin, and TerzopoulosIntroduced by Kass, Witkin, and Terzopoulos Framework: energy minimizationFramework: energy minimization – Bending and stretching curve = more energy – Good features = less energy – Curve evolves to minimize energy Also “Deformable Contours”Also “Deformable Contours”
9
Snakes Energy Equation Parametric representation of curveParametric representation of curve Energy functional consists of three termsEnergy functional consists of three terms
10
Internal Energy First term is “membrane” term – minimum energy when curve minimizes length (“soap bubble”)First term is “membrane” term – minimum energy when curve minimizes length (“soap bubble”) Second term is “thin plate” term – minimum energy when curve is smoothSecond term is “thin plate” term – minimum energy when curve is smooth
11
Internal Energy Control and to vary between extremesControl and to vary between extremes Set to 0 at a point to allow cornerSet to 0 at a point to allow corner Set to 0 everywhere to let curve follow sharp creases – “strings”Set to 0 everywhere to let curve follow sharp creases – “strings”
12
Image Energy Variety of terms give different effectsVariety of terms give different effects For example, minimizes energy at intensity I desiredFor example, minimizes energy at intensity I desired
13
Edge Attraction Gradient-based:Gradient-based: Laplacian-based:Laplacian-based: In both cases, can smooth with GaussianIn both cases, can smooth with Gaussian
14
Corner Attraction Can use corner detector we saw last timeCan use corner detector we saw last time Alternatively, let = tan -1 I y / I x and let n be a unit vector perpendicular to the gradient. ThenAlternatively, let = tan -1 I y / I x and let n be a unit vector perpendicular to the gradient. Then
15
Constraint Forces SpringSpring RepulsionRepulsion
16
Evolving Curve Computing forces on v that locally minimize energy gives differential equation for vComputing forces on v that locally minimize energy gives differential equation for v – Euler-Lagrange formula Discretize v: samples ( x i, y i )Discretize v: samples ( x i, y i ) – Approximate derivatives with finite differences Iterative numerical solverIterative numerical solver
17
Other Curve Evolution Options Exact solution: calculus of variationsExact solution: calculus of variations Write equations directly in terms of forces, not energyWrite equations directly in terms of forces, not energy Implicit equation solverImplicit equation solver Search neighborhood of each ( x i, y i ) for pixel that minimizes energySearch neighborhood of each ( x i, y i ) for pixel that minimizes energy – Shah & Williams paper
18
Variants on Snakes Balloons [Cohen 91]Balloons [Cohen 91] – Add inflation force – Helps avoid getting stuck on small features
19
Balloons [Cohen 91] Snakes Balloons
20
Balloons
21
Other Energy or Force Terms Results of previously-run local algorithmsResults of previously-run local algorithms – e.g., Canny edge detector output convolved with Gaussian Automatically-evolved control pointsAutomatically-evolved control points Others…Others…
22
Brain Cortex Segmentation Add energy term for constant-color regions of a single color Davatzikos and Prince
23
Brain Cortex Segmentation Davatzikos and Prince
24
Brain Cortex Segmentation Davatzikos and Prince Find features and add constraints
25
Brain Cortex Segmentation Davatzikos and Prince
26
Scale In the simplest snakes algorithm, image features only attract locallyIn the simplest snakes algorithm, image features only attract locally Greater region of attraction: smooth imageGreater region of attraction: smooth image – Curve might not follow high-frequency detail Multiresolution processingMultiresolution processing – Start with smoothed image to attract curve – Finish with unsmoothed image to get details Heuristic for global minimum vs. local minimaHeuristic for global minimum vs. local minima
27
Diffusion-Based Methods Another way to attract curve to localized features: vector flow or diffusion methodsAnother way to attract curve to localized features: vector flow or diffusion methods Example:Example: – Find edges using Canny – For each point, compute distance to nearest edge – Push curve along gradient of distance field
28
Gradient Vector Fields Xu and Prince
29
Gradient Vector Fields Xu and Prince Simple Snake With Gradient Vector Field
30
Gradient Vector Fields Xu and Prince
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.