core/vil/algo/vil_trace_8con_boundary.h
Go to the documentation of this file.
00001 #ifndef vil_trace_8con_boundary_h_
00002 #define vil_trace_8con_boundary_h_
00003 //:
00004 // \file
00005 // \brief Function to trace 8-connected boundary around region in bool image
00006 // \author Tim Cootes
00007 
00008 #include <vil/vil_image_view.h>
00009 #include <vcl_vector.h>
00010 
00011 //: Trace 8-connected boundary around region in boolean image
00012 //  Assumes that (i0,j0) is a boundary point.
00013 //  Searches for the boundary pixels and runs around until it gets back to beginning.
00014 //  On exit the boundary points are given by (bi[k],bj[k])
00015 //
00016 // Point to note: If (i0,j0) is in the middle of a 1 pixel wide line connecting
00017 // two regions, then the point will occur twice in the list, once as the first
00018 // point, then once in the middle of the list as we trace through it to get
00019 // to the other side of the blob.
00020 // \sa vil_trace_4con_boundary
00021 // \relatesalso vil_image_view
00022 void vil_trace_8con_boundary(vcl_vector<int>& bi, vcl_vector<int>& bj,
00023                              const vil_image_view<bool>& image,
00024                              int i0, int j0);
00025 
00026 
00027 #endif // vil_trace_8con_boundary_h_