Contour Tracing of a Black White Image (Binary Image).
This function takes as input an image having white background and black foreground and traces the entire contour and returns the row and column
coordinate values of all the points which lie on the contour
This can be used in Line Following Algorithms and for parameterizing affine distorted contours.
cpixels = affine_contour_trace(BW,r,c,xx1,yy1)
BW - Black & White Image (Binary Image).
row,col - row, column value of a single pixel on the contour, serves as the starting point of parameterization
xx1,yy1 - listing of all the boundary points of the object obtained using the command: [xx1,yy1,p] = find(originalImage);
sp_x - N x 2 matrix which stores the coordinate values of the contour, column1 gives the rows & column2 the corresponding column.
See the SampleUsage.m file for an example
The program has been succesfully tested using the MPEG7-ShapeB dataset and Airplane dataset.
Sample images are included for experimentation.
very well written code!superb and gud job
doesn't work on tricky contours (for example, two circles connected by a one pixel width line), producing strange ordering of the contour points.