Snakes, Shapes, and Gradient Vector Flow

Slides:



Advertisements
Similar presentations
An Active contour Model without Edges
Advertisements

TP11 - Fitting: Deformable contours Computer Vision, FCUP, Miguel Coimbra Slides by Prof. Kristen Grauman.
Fitting: Deformable contours
Linear Regression.
MRI Brain Extraction using a Graph Cut based Active Contour Model Noha Youssry El-Zehiry Noha Youssry El-Zehiry and Adel S. Elmaghraby Computer Engineering.
Active Contours, Level Sets, and Image Segmentation
Medical Image Segmentation: Beyond Level Sets (Ismail’s part) 1.
Snakes, Strings, Balloons and Other Active Contour Models.
CS 4487/9587 Algorithms for Image Analysis
Image Segmentation some examples Zhiqiang wang
Image Segmentation and Active Contour
Active Contours / Planes Sebastian Thrun, Gary Bradski, Daniel Russakoff Stanford CS223B Computer Vision Some slides.
Active Contour Models (Snakes) 건국대학교 전산수학과 김 창 호.
Active Contour Model (Snake) rew. Outline Introduce Active Contour Model.
Tuesday, Oct 7 Kristen Grauman UT-Austin
Active Contours (SNAKES) Back to boundary detection –This time using perceptual grouping. This is non-parametric –We’re not looking for a contour of a.
Snakes with Some Math.
1 Minimum Ratio Contours For Meshes Andrew Clements Hao Zhang gruvi graphics + usability + visualization.
Segmentation Using Active Contour Model and Tomlab By: Dalei Wang 29/04/2003.
Chunlei Han Turku PET centre March 31, 2005
On Constrained Optimization Approach To Object Segmentation Chia Han, Xun Wang, Feng Gao, Zhigang Peng, Xiaokun Li, Lei He, William Wee Artificial Intelligence.
Snakes : Active Contour models
Instructor: Mircea Nicolescu Lecture 13 CS 485 / 685 Computer Vision.
Snakes - Active Contour Lecturer: Hagit Hel-Or
Active Contour Models (Snakes)
Deformable Contours Dr. E. Ribeiro.
NCIP SEGMENTATION OF MEDICAL IMAGES USING ACTIVE CONTOURS AND GRADIENT VECTOR FLOW B.Hemakumar M.Tech student, Biomedical signal processing and.
Local or Global Minima: Flexible Dual-Front Active Contours Hua Li Anthony Yezzi.
Computer Vision Optical Flow
Fitting: The Hough transform
EE663 Image Processing Edge Detection 5 Dr. Samir H. Abdul-Jauwad Electrical Engineering Department King Fahd University of Petroleum & Minerals.
Active Contours Technique in Retinal Image Identification of the Optic Disk Boundary Soufyane El-Allali Stephen Brown Department of Computer Science and.
Motion Analysis (contd.) Slides are from RPI Registration Class.
CSci 6971: Image Registration Lecture 4: First Examples January 23, 2004 Prof. Chuck Stewart, RPI Dr. Luis Ibanez, Kitware Prof. Chuck Stewart, RPI Dr.
Today: Image Segmentation Image Segmentation Techniques Snakes Scissors Graph Cuts Mean Shift Wednesday (2/28) Texture analysis and synthesis Multiple.
Snakes Goes from edges to boundaries. Edge is strong change in intensity. Boundary is boundary of an object. –Smooth (more or less) –Closed. –…
Comp 775: Deformable models: snakes and active contours Marc Niethammer, Stephen Pizer Department of Computer Science University of North Carolina, Chapel.
Active Contour Models (Snakes) Yujun Guo.
Instructor: Dr. Peyman Milanfar
October 8, 2013Computer Vision Lecture 11: The Hough Transform 1 Fitting Curve Models to Edges Most contours can be well described by combining several.
Fitting: Deformable contours Tuesday, September 24 th 2013 Devi Parikh Virginia Tech 1 Slide credit: Kristen Grauman Disclaimer: Many slides have been.
CSE554Laplacian DeformationSlide 1 CSE 554 Lecture 8: Laplacian Deformation Fall 2012.
06 - Boundary Models Overview Edge Tracking Active Contours Conclusion.
Multimodal Interaction Dr. Mike Spann
1 PDE Methods are Not Necessarily Level Set Methods Allen Tannenbaum Georgia Institute of Technology Emory University.
Deformable Models Segmentation methods until now (no knowledge of shape: Thresholding Edge based Region based Deformable models Knowledge of the shape.
October 14, 2014Computer Vision Lecture 11: Image Segmentation I 1Contours How should we represent contours? A good contour representation should meet.
7.1. Mean Shift Segmentation Idea of mean shift:
Computer Animation Rick Parent Computer Animation Algorithms and Techniques Optimization & Constraints Add mention of global techiques Add mention of calculus.
Introduction to Level Set Methods: Part II
Conclusions The success rate of proposed method is higher than that of traditional MI MI based on GVFI is robust to noise GVFI based on f1 performs better.
Fitting: The Hough transform
CS 641 Term project Level-set based segmentation algorithms Presented by- Karthik Alavala (under the guidance of Dr. Jundong Liu)
A D V A N C E D C O M P U T E R G R A P H I C S CMSC 635 January 15, 2013 Quadric Error Metrics 1/20 Geometric Morphometrics Feb 27, 2013 Geometric Morphologyd.
October 16, 2014Computer Vision Lecture 12: Image Segmentation II 1 Hough Transform The Hough transform is a very general technique for feature detection.
The University of Ontario The University of Ontario 5-1 CS 4487/9587 Algorithms for Image Analysis Segmentation with Boundary Regularization Acknowledgements:
October 3, 2013Computer Vision Lecture 10: Contour Fitting 1 Edge Relaxation Typically, this technique works on crack edges: pixelpixelpixel pixelpixelpixelebg.
TP11 - Fitting: Deformable contours
Deep Feedforward Networks
Line Fitting James Hayes.
Dynamical Statistical Shape Priors for Level Set Based Tracking
Fitting Curve Models to Edges
Outline Perceptual organization, grouping, and segmentation
ECE 692 – Advanced Topics in Computer Vision
Where did we stop? The Bayes decision rule guarantees an optimal classification… … But it requires the knowledge of P(ci|x) (or p(x|ci) and P(ci)) We.
Active Contours (“Snakes”)
Active Contour Models.
Introduction to Artificial Intelligence Lecture 22: Computer Vision II
Presentation transcript:

Snakes, Shapes, and Gradient Vector Flow Ayesha Mehboob Memoona Iftikhar

Content What is Snake/Active Contour Model Applications Working of traditional Snake Model Improvements to Traditional Snake GVF Snake Model Examples of GVF

Given: initial contour (model) near desirable object “Snakes” Snakes, active contours [Kass, Witkin, Terzopoulos 1987] In general, deformable models are widely used Given: initial contour (model) near desirable object

“Snakes” Snakes, active contours [Kass, Witkin, Terzopoulos 1987] Given: initial contour (model) near desirable object Goal: evolve the contour to fit exact object boundary

gradient descent w.r.t. some function describing snake’s quality A smooth 2D curve which matches to image data Initialized near target, iteratively refined Can restore missing data intermediate final initial Q: How does that work? ….

Applications

Applications

Working of Traditional Snake

Preview To find Gradient descent of 𝐹( 𝑥 𝑛 ) We have Preview To find Gradient descent of 𝐹( 𝑥 𝑛 ) 𝑥 𝑛+1 = 𝑥 𝑛 -𝛻𝐹( 𝑥 𝑛 ), 𝑛≥0 We have, 𝐹( 𝑥 0 ) ≥𝐹 𝑥 1 ≥𝐹( 𝑥 2 )≥…

Preview f(x) Q: Is snake (contour) a point in some space? ... Yes for simplicity, assume that "snake” is a vector (or point) in R1 f(x) assume some energy function f(x) describing snake’s “quality” local minima for f(x) gradient descent for 1D functions Q: Is snake (contour) a point in some space? ... Yes

Parametric Curve Representation (continuous case) A curve can be represented by 2 functions parameter closed curve open curve Note: in computer vision and medical imaging the term “snake” is commonly associated with such parametric representation of contours. (Other representations will be discussed later!)

Parametric Curve Representation (discrete case) A curve can be represented by a set of 2D points parameter

Measuring snake’s quality: Energy function We can define some energy function E(C) that assigns some number (quality measure) to all possible snakes WHY?: Somewhat philosophical question, but specifying a quality function E(C) is an objective way to define what “good” means for contours C. Moreover, one can find “the best” contour (segmentation) by optimizing energy E(C). E(C) (contours C) (scalars)

Internal energy encourages smoothness or any particular shape Energy function Usually, the total energy of snake is a combination of internal and external energies Internal energy encourages smoothness or any particular shape Internal energy incorporates prior knowledge about object boundary allowing to extract boundary even if some image data is missing External energy encourages curve onto image structures (e.g. image edges)

Internal Energy (continuous case) The smoothness energy at contour point v(s) could be evaluated as Elasticity/stretching Stiffness/bending Then, the interior energy (smoothness) of the whole snake is

Internal Energy (discrete case) elastic energy (elasticity) bending energy (stiffness)

Internal Energy (discrete case) Elasticity Stiffness

External energy The external energy describes how well the curve matches the image data locally Numerous forms can be used, attracting the curve toward different image features

External energy Suppose we have an image I(x,y) Can compute image gradient at any point Edge strength at pixel (x,y) is External energy of a contour point v=(x,y) could be continuous case External energy term for the whole snake is discrete case

elastic smoothness term Basic Elastic Snake The total energy of a basic elastic snake is continuous case discrete case elastic smoothness term (interior energy) image data term (exterior energy)

Basic Elastic Snake (discrete case) Li-1 Li Li+1 This can make a curve shrink (to a point)

Basic Elastic Snake (discrete case) The problem is to find contour that minimizes Optimization problem for function can compute local minima via gradient descent

Basic Elastic Snake Synthetic example (1) (2) (3) (4)

Basic Elastic Snake Dealing with missing data The smoothness constraint can deal with missing data:

Basic Elastic Snake Relative weighting Notice that the strength of the internal elastic component can be controlled by a parameter, Increasing this increases stiffness of curve large medium small

Discrete Snakes Optimization At each iteration we compute a new snake position within proximity to the previous snake New snake energy should be smaller than the previous one Stop when the energy can not be decreased within local neighborhood of the snake (local energy minima) Optimization Methods Gradient Descent

Gradient Descent Example: minimization of functions of 2 variables negative gradient at point (x,y) gives direction of the steepest descent towards lower values of function E

Stop at a local minima where Gradient Descent Example: minimization of functions of 2 variables update equation for a point p=(x,y) Stop at a local minima where

Gradient Descent for Snakes here, energy is a function of 2n variables C simple elastic snake energy update equation for the whole snake C

Gradient Descent for Snakes here, energy is a function of 2n variables C simple elastic snake energy update equation for each node C

Problems with snakes External energy: may need to diffuse image gradients, otherwise the snake does not really “see” object boundaries in the image unless it gets very close to it. image gradients are large only directly on the boundary

Problems with snakes (a) Convergence of a snake using (b) traditional potential forces, and (c) shown close-up within the boundary concavity.

Improvements in Traditional Snake

Alternative Way to Improve External Energy Use instead of where D() is Distance Transform (for detected binary image features, e.g. edges) binary image features (edges) Distance Transform Distance Transform can be visualized as a gray-scale image Generalized Distance Transform (directly for image gradients)

Distance Transform (see p.20-21 of the text book) Image features (2D) 3 4 2 5 1 Distance Transform Distance Transform is a function that for each image pixel p assigns a non-negative number corresponding to distance from p to the nearest feature in the image I

Problem with distance (a) Convergence of a snake using (b) distance potential forces, and (c) shown close-up within the boundary concavity.

Gradient Vector Flow (GVF) (A new external force for snakes) Detects shapes with boundary concavities. Large capture range.

Diffusing Image Gradients image gradients diffused via Gradient Vector Flow (GVF) Chenyang Xu and Jerry Prince, 98 http://iacl.ece.jhu.edu/projects/gvf/

Model for GVF snake The GVF field is defined to be a vector field V(x,y) = Force equation of GVF snake V(x,y) is defined such that it minimizes the energy functional f(x,y) is the edge map of the image.

|f | is small, energy dominated by first term ( smoothing ) |f | is large, second term dominates minimal when v= f μ is tradeoff parameter, increase with noise

Diffusion Equations GVF field can be obtained by solving following Euler equations 2 Is the Laplacian operator. Reason for detecting boundary concavities. The above equations are solved iteratively using time derivative of u and v.

Diffussion Equation The steady-state solution of these linear parabolic equations is the desired solution

For convenience, we rewrite (14) as follows:

To set up the iterative solution, let the indices i, j, and n correspond to x,y , and t, respectively,

Substituting these approximations into (15) gives our iterative solution to GVF as follows:

Stability of GVF GVF is stable whenever the step-size restriction is maintained. Since normally ∆𝑥, ∆𝑦 ,𝜇 and are fixed we find that the restriction 𝑟≤1/4, must be maintained in order to guarantee convergence of GVF:

Results of GVF Field (a) Convergence of a snake using (b) GVF external forces, and (c) shown close-up within the boundary concavity.

Traditional external force field v/s GVF field Traditional force GVF force (Diagrams courtesy “Snakes, shapes, gradient vector flow”, Xu, Prince)

Difference in Results Image with initial contour Traditional snake GVF snake

Snake Initialization and Convergence (a) Initial curve and snake results from (b) a balloon with an outward pressure, (c) a distance potential force snake, and (d) a GVF snake.

Snake Initialization and Convergence (a) Initial curve and snake results from (b) a traditional snake, (c) a distance potential force snake, and (d) a GVF snake.

References M. Kass, A. Witkin, and D. Terzopoulos, "Snakes: Active contour models.“, International Journal of Computer Vision. v. 1, n. 4, pp. 321-331, 1987. Laurent D.Cohen , “Note On Active Contour Models and Balloons“, CVGIP: Image Understanding, Vol53, No.2, pp211-218, Mar. 1991. C. Xu and J.L. Prince, “Gradient Vector Flow: A New External Force for Snakes”, Proc. IEEE Conf. on Comp. Vis. Patt. Recog. (CVPR), Los Alamitos: Comp. Soc. Press, pp. 66-71, June 1997.