A survey of PDE methods for image segmentation
Matt Hancock — Florida State University — Department of Mathematics
Image segmentation
Not in this talk
- Simple intensity based methods
- Thresholding
- Region growing
- Clustering
- Edge-based
- Statistical methods
- Active shape, active appearance models
- Pixel / voxel - wise Classification
- Markov random fields
- etc ...
Basic idea of PDEs for segmentation
- A curve on the image evolves according to some PDE.
- At equilibrium, the curve represents the boundary of segmentation.
Issues
- Ability to capture "true" segmentation
- Free parameter choices
- Stability
- Smoothness
- Topology
A simple model
- Segment with parametric curve: [x(s,t)y(s,t)]T
-
Curve velocity is in the direction of the outward normal, and has magnitude proportional to image pixel values:
[xtyt]=ˆI(x,y)n(s,t)=ˆI(x,y)√x2s+y2s[ys−xs]
-
ˆI(x,y)=S(G∗I)(x,y;σ,β) is the image convolved with a gaussian filter with parameter σ and processed with a sigmoidal filter with parameter, β.
- Approximate PDE with finite differences.
Spiculated lung nodule from LIDC dataset
It works!
Sort of...
Issues
- Sensitive to parameters of gaussian and sigmoidal filter.
- Time step size? Curve parameter discretization?
- How do we know when to stop evolving the curve?
- Curve can't adapt to holes
Active contours (snakes) [1]
- Again, segment via a parametrically defined curve, c(s).
- Energy minimization principle: J[c]=∫E[c]ds=∫(Eint[c]+Eext[c])ds
- Desired curve is argmincJ[c].
[1]: Kass et. al. Snakes: Active contour models. International journal of computer vision. 1988
Active contours
- Typically,Eint[c]=12(α||c′||2+β||c″
- and, E_{\text{ext}}[\mathbf{c}] = -\frac{\gamma}{2} ||\nabla (G*I)(\mathbf{c};\sigma)||^2
- \alpha,\beta,\gamma,\sigma are all free parameters
Minimizing the energy functional
- Euler-Lagrange equations yield: \nabla E_{\text{ext}} - \alpha \mathbf{c}'' + \beta \mathbf{c}^{(4)} = 0 \tag{1}
- Introduce "time" variable, set (1) := F(t).
- Set \frac{\partial \mathbf{c}}{\partial t} = F(t), and discretize in s and t using finite differences.
- At equilibrium, the Euler-Lagrange equations are satisfied.
It works!
Sort of...
Issues
- Needs good initialization.
- So many free parameters! How to set them?
- Can't adapt to holes (without additional bookkeeping).
Level Sets [2]
- Segmenting contour is the zero level set of an evolving surface: \mathbf{c}(t) = \{\mathbf{x} \; | \; \psi(\mathbf{x},t) = 0 \}
[2]: Malladi, Sethian, Vemuri. Shape Modelling with Front Propagation: A level set approach. IEEE Transactions on Pattern Analysis and Machine Intelligence. 1995
Motion of the surface
- \mathbf{x}(t) on contour \Leftrightarrow \psi(\mathbf{x}(t), t) = 0
- \mathbf{x}(t) moves normal to \mathbf{c}(t) and ||\mathbf{x}_t|| = F(\mathbf{x}(t))
- So, \psi_t + F(\mathbf{x}) ||\nabla \psi|| = 0 governs the motion of the surface, and its implicitly defined contour.
Controlling the speed
- Speed is governed by a combination of image attributes and by the geometry of the curve
- Let F = F_A + F_G
- Often, \begin{align*} F_A &= F_A( ||\nabla (G * I)(\mathbf{x};\sigma)|| ) \\ F_G &= F_G(K) \end{align*}
Advantages
- Contours easily split and merge.
- No conceptual differences in extending to 3 dimensions.
Disadvantages
- Same as other methods: stability, parameter setting, etc...
Other PDE methods not discussed
- Caselles, Vicent, Ron Kimmel, and Guillermo Sapiro. "Geodesic active contours." International journal of computer vision 1997
- Vese, Luminita A., and Tony F. Chan. "A multiphase level set framework for image segmentation using the Mumford and Shah model." International journal of computer vision 2002
- Álvarez, Luis, et al. "Morphological snakes." Computer Vision and Pattern Recognition (CVPR), 2010 IEEE Conference on. IEEE, 2010.
... this is the last slide
A survey of PDE methods for image segmentation
Matt Hancock — Florida State University — Department of Mathematics