A model for representing image contours in a form that allows interaction with higher level processes has been proposed by Kass et al. (in Proceedings of First International Conference on Computer Vision, London, 1987, pp. 259–269). This active contour model is defined by an energy functional, and a solution is found using techniques of variational calculus. Amini et al. (in Proceedings, Second International Conference on Computer Vision, 1988, pp. 95–99) have pointed out some of the problems with this approach, including numerical instability and a tendency for points to bunch up on strong portions of an edge contour. They proposed an algorithm for the active contour model using dynamic programming. This approach is more stable and allows the inclusion of hard constraints in addition to the soft constraints inherent in the formulation of the functional; however, it is slow, having complexity O(nm3), where n is the number of points in the contour and m is the size of the neighborhood in which a point can move during a single iteration. In this paper we summarize the strengths and weaknesses of the previous approaches and present a greedy algorithm which has performance comparable to the dynamic programming and variational calculus approaches. It retains the improvements of stability, flexibility, and inclusion of hard constraints introduced by dynamic programming but is more than an order of magnitude faster than that approach, being O(nm). A different formulation is used for the continuity term than that of the previous authors so that points in the contour are more evenly spaced. The even spacing also makes the estimation of curvature more accurate. Because the concept of curvature is basic to the formulation of the contour functional, several curvature approximation methods for discrete curves are presented and evaluated as to efficiency of computation, accuracy of the estimation, and presence of anomalies.
[1]
Donna J. Williams,et al.
Edge contours
,
1989
.
[2]
D Marr,et al.
Theory of edge detection
,
1979,
Proceedings of the Royal Society of London. Series B. Biological Sciences.
[3]
Mubarak Shah,et al.
Edge contours using multiple scales
,
1990,
Comput. Vis. Graph. Image Process..
[4]
Andrew P. Witkin,et al.
Scale-Space Filtering
,
1983,
IJCAI.
[5]
Terry E. Weymouth,et al.
Using Dynamic Programming For Minimizing The Energy Of Active Contours In The Presence Of Hard Constraints
,
1988,
[1988 Proceedings] Second International Conference on Computer Vision.
[6]
John F. Canny,et al.
A Computational Approach to Edge Detection
,
1986,
IEEE Transactions on Pattern Analysis and Machine Intelligence.