Active Contours without Edges Tony Chan Luminita Vese
- Slides: 28
Active Contours without Edges Tony Chan Luminita Vese Peter Horvath – University of Szeged 29/09/2006
Introduction • Variational approach – The main problem is to minimise an integral functional (e. g. ): – In the case f: , f’=0 gives the extremum(s) – In the case of functionals similary F’=0, where F’=( F/ u) is the first variation. – Most of the cases the solution is analyticly hard, in these cases we use gradient descent to optimise.
Introduction • Active Contour (Snake Model) – Kass, Witkin and Terzopoulos [Kas 88] – – - tension - rigidity Eext – external energy Problem is: infx. E + Fast evaluation - But difficult to handle topological changes
Introduction • A typical external energy coming from the image: – Positive on homogeneous regions – Near zero on the sharp edges
Intoduction • Level Set methods – S. Osher and J. Sethian [Set 89] – Embed the contour into a higher dimensional space +Automatically handles the topological changes - Slower evaluation • (. , t) level set function • Implicit contour ( =0) • The contour is evolved implicitly by moving the surface
Introduction • The curve is moving with an F speed: • The geometric active contour, based on a mean curvature (length) motion:
Chan and Vese model position Important to distinguish the model and the representation • Model: describing problems from the real world with equations Energy functionals for image segmentation Chan and Vese model • Representation: type of the description • Optimization: solving the equations Representation/optimization Contour based gradient descent Level set based gradient descent
Chan and Vese model • The model is based on trying to separate the image into regions based on intensities • The minimization problem:
Chan and Vese model • c 1 and c 2 are the average intensity levels inside and outside of the contour • Experiments:
Relation with the Mumford. Shah functional • The Chan and Vese model is a special case of the Mumford Shah model (minimal partition problem) – =0 and 1= 2= – u=average(u 0 in/out) – C is the CV active contour • “Cartoon” model
Level set formulation • Considering the disadvantages of the active contour representation the model is solved using level set formulation • level set form -> no explicit contour
Replacing C with Φ • Introducing the Heaviside (sign) and Dirac (PSF) functions
Replacing C with Φ • The intensity terms
Average intensities • We can calculate the average intensities using the step function
Level set formulation of the model Combining the above presented energy terms we can write the Chan and Vese functional as a function of Φ. Minimization F wrt. Φ -> gradient descent The corresponding Euler-Lagrange equation:
Approximation of the Curvature
The algorithm • Initialization n=0 • repeat – n++ – Computing c 1 and c 2 – Evolving the level-set function • until the solution is stationary, or n>nmax
Initialization • We set the values of the level set function – outside = -1 – inside = 1 • Any shape can be the initialization shape init() for all (x, y) in Phi if (x, y) is inside Phi(x, y)=1; else Phi(x, y)=-1; fi; end for
Computing c 1 and c 2 • The mean intensity of the image pixels inside and outside colors() out = find(Phi < 0); in = find(Phi > 0); c 1 = sum(Img(in)) / size(in); c 2 = sum(Img(out)) / size(out);
Finite differences for all (x, y) fx(x, y) = (Phi(x+1, y)-Phi(x-1, y))/(2*delta_s); fy(x, y) =… fxx(x, y) =… fyy(x, y) =… fxy(x, y) =… delta_s recommended between 0. 1 and 1. 0
Curvature grad = (fx. ^2. +fy. ^2); curvature = (fx. ^2. *fyy + fy. ^2. *fxx 2. *fx. *fy. *fxy). / (grad. ^1. 5); Be careful! Grad can be 0!
Force gradient_m = (fx. ^2. +fy. ^2). ^0. 5; force = mu * curvature. * gradient_m - nu – lambda 1 * (image - c 1). ^2 + lambda 2 * (image - c 2). ^2; We should normalize the force. abs(force) <= 1! Main step: Phi=Phi+delta. T*force; delta. T is recommended between 0. 01 and 0. 9. Be careful delta. T<1!
Narrow band It is useful to compute the level set function not on the whole image domain but in a narrow band near to the contour. Abs( )<d Decreasing the computational complexity.
Narrow band • Initialization n=0 • repeat – – n++ Determination of the narrow band Computing c 1 and c 2 Evolving the level-set function on the narrow band – Re-initialization • until the solution is stationary, or n>nmax
Re-initialization • Optional step H is a normalizing term recommended between 0. 1 and 2. delta. T time step see above!
Stop criteria • Stop the iterations if: – The maximum iteration number were reached – Stationary solution: • The energy is not changing • The contour is not moving • …
Demonstration of the program • Thanks for your attention
MATLAB tutorial • • Imread, imwrite. *, . ^, . / Find Size, length, max, min, mod, sum, zeros, ones • A(x: y, z: v) • Visualization: figure, plot, surf, imagesc
- Luminita vese
- Bé thì chăn nghé chăn trâu
- Luminita gruia
- Luminita ivanici
- Logopedie suceava
- Gerota fascia
- Trigonum vesicae
- Vur
- Calyx renalis minor
- Vese üregi tágulat
- Bulbous bone contours
- Suggestive contours
- Peripheral buttressing bone formation
- Russian intonation
- Illusory contours definition
- Tubular artery sign
- Alliteration in keeping quiet
- Without title poem by diane glancy
- Without title poem
- Primary active transport vs secondary active transport
- 3 to 8 decoder truth table
- Primary active transport and secondary active transport
- Jackie chan kung fu master
- Doctor paul chan
- Jacqueline chan md
- Jackie full name
- Chan beng seng
- Chan joshi
- Kefe swot