Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Active Contour Research

Active Contour Research

Course research on the active contour technique in computer vision.


Nick McCurdy

December 02, 2014


  1. Active Contour Research by Nicolas McCurdy

  2. What is active contour? • A way of finding the

    curved outline of an object while avoiding any background noise. • It works for 2D images, but similar techniques can be applied to 3D images. • Also known as snakes.
  3. How it works 1. Create the snake (a connected series

    of vertices) at some distance from the object. 2. Minimize the energy iteratively, which gradually moves the points of the snake closer to the contour of the object. 3. Stop when the energy is minimized (the snake’s contour matches the object’s contour).
  4. Visual example Source: http://commons.wikimedia.org/wiki/File:Snake-contour-example.jpg

  5. Active contour with edges Edge detection algorithms are used on

    each iteration to determine where the object is (and to adjust the current contour appropriately). Advantages • Existing edge detection algorithms can be used.
  6. Active contour with edges Disadvantages • Only objects with gradient

    edges can be detected. • Usually, the points on the contour can only move in, not out.
  7. Summary of “Active Contours Without Edges” This model is not

    based on a stopping edge detection function. Instead, the image is segmented by minimizing an energy. Advantages • Works for images with and without gradients. • Supports finding smooth edges and even disconnected edges.
  8. Part 1: Create a model with a fitting term To

    find the curve, minimize the fitting term by moving the curve C closer to the boundary of the image in multiple iterations. Summary of “Active Contours Without Edges”
  9. Summary of “Active Contours Without Edges”

  10. Part 2: Mumford-Shah functional For this approach to active contour,

    the Mumford-Shah functional is used to help segment the image into multiple objects before the fitting term is minimized. Summary of “Active Contours Without Edges”
  11. Part 3: Level set formulation The level set method can

    be used to solve the specific case of the minimal partition problem that results from segmenting the image with this technique. The technique described in this paper uses the level set method to translate the Mumford-Shah model to segment the image. Summary of “Active Contours Without Edges”
  12. Conclusion • The active contour’s points are computed and moved

    in iterations until the solution is stationary. • This is the default method used in MATLAB’ s activecontour function. Summary of “Active Contours Without Edges”
  13. Example Summary of “Active Contours Without Edges”

  14. Using activecontour in MATLAB activecontour(A,mask,n,method) • A is a 2D

    grayscale image. • mask is a binary image. • n is the number of iterations. • method is the method used for active contour (‘Chan-Vese’ or ‘edge’).
  15. Using activecontour in MATLAB activecontour(A,mask) • Defaults to 100 iterations.

    • Defaults to the ‘Chan-Vese’ method (as described previously).
  16. Using activecontour in MATLAB Example I = imread('coins.png'); mask =

    zeros(size(I)); mask(25:end-25,25:end-25) = 1; bw = activecontour(I,mask,300); figure, imshow(bw); title('Segmented Image');
  17. Using activecontour in MATLAB Example Results

  18. References • MATLAB’s activecontour documentation • Papers ◦ [1] T.

    F. Chan, L. A. Vese, Active contours without edges. IEEE Transactions on Image Processing, Volume 10, Issue 2, pp. 266--‐277, 2001 ◦ [2] V. Caselles, R. Kimmel, G. Sapiro, Geodesic active contours. International Journal of Computer Vision, Volume 22, Issue 1, pp. 61--‐79, 1997.