A multiple point boundary smoothing algorithm

https://doi.org/10.1016/S0167-8655(98)00043-9Get rights and content

Abstract

A multiple point smoothing algorithm is proposed to smooth a binary image boundary further based on a previously proposed one point smoothing algorithm. A new feature extraction method is also presented. The smoothing and feature extraction algorithms are all based on the chain codes. The effectiveness of these algorithms is demonstrated with binary images of handwritten numerals.

Section snippets

1. Introduction

Boundary analysis plays an important role in pattern recognition applications (Pavlidis, 1980). Due to noise, the boundaries of a digitized object are often too complicated for direct analysis. To overcome this problem, boundary data are often smoothed before feature extraction.

There are many approaches for boundary smoothing. One may use some preprocessing algorithms to remove noisy spikes and fill small holes, where the deleting and filling patterns are applied to the whole image (Suen et

2. One point smoothing algorithm

The boundary of an image is traced and represented by its chain code. The outer boundary is traced in the counterclockwise direction while the inner boundary is traced in the clockwise direction.

Suppose a boundary P consists of a sequence of N points,P=p0,p1,,pi,,pN1,where pi+1 is a neighbor of pi(i = 0,1,…,N–1) and the index i is calculated modulo N. The coordinates of the ith point are denoted as (xi, yi) and its chain code is given byci=pipi+1,where the Freeman chain code ci in 8

3.1. Boundary coding

We first define a boundary primitive as a set of consecutive points which lie in a line. In a primitive, all the points except the last one have the same chain code. This chain code is defined as the direction of the primitive. A boundary can be decomposed into a sequence of primitives and each primitive is then recorded by a boundary code. Suppose that there are M primitives in the boundary, then the boundary code bc[i] corresponding to primitive i is defined as follows:bc[i]=(s,t,l,dir),i=

4. Feature extraction

After the one point and multiple point smoothing algorithms, a noisy boundary becomes much smoother than before. This will reduce redundant features significantly. In addition, the possible relations between neighboring boundary primitives have been reduced since the angle between two primitives is 135° only. This will facilitate the feature extraction process.

Three kinds of features are extracted: the main feature vectors for the even chain code directions; the secondary feature vectors for

5. Experiments

We use handwritten numerals extracted from the NIST database SD3 (Garris and Wilkinson, 1992) to test the smoothing and feature extraction algorithms. The database consists of 2100 forms which contain handwritten samples of isolated digits, digit groups, English letters, and English prose. Images of isolated digits from the forms were segmented, manually classified. A total of 159 122 isolated digits was used in the experiment. The one point smoothing algorithm is applied to each boundary of

6. Conclusion

The one point smoothing algorithm by Yu and Yan (1997) provides an efficient way to smooth a noisy boundary. In this paper we have summarized this algorithm with four rules, and the effects of the four rules to the boundary are analyzed. Based on this algorithm, a multiple point smoothing algorithm has been proposed to smooth the boundary further. With this algorithm, the quality of a noisy boundary can be improved significantly, and thus redundant features can be reduced.

Three kinds of feature

Acknowledgements

The authors wish to thank the anonymous referees for their valuable comments. This work is supported by the Australian Research Council.

References (14)

There are more references available in the full text version of this article.

Cited by (10)

  • Thinning combined with iteration-by-iteration smoothing for 3D binary images

    2011, Graphical Models
    Citation Excerpt :

    Since unwanted endpoints are salient object points, the proposed topology preserving smoothing algorithm is to remove additive contour noise elements. There exist numerous approaches for smoothing binary objects in 2D and 3D [15–18]. Yu and Yan developed a 2D sequential boundary smoothing algorithm that uses operations on chain codes [15].

  • Image analysis and computer vision: 1998

    1999, Computer Vision and Image Understanding
  • An intelligent video security system using object tracking and shape recognition

    2011, Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
  • From CT to NURBS: Contour fitting with B-spline curves

    2011, Computer-Aided Design and Applications
  • Topology preserving parallel smoothing for 3D binary images

    2010, Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
View all citing articles on Scopus
View full text