<figure><img src="image_1.png" /></figure>

HAL
open science

# Touching Numeral Segmentation Using Water Reservoir Concept

Umapada Pal, Abdel Belaïd, Christophe Choisy

► To cite this version:

Umapada Pal, Abdel Belaïd, Christophe Choisy. Touching Numeral Segmentation Using Water Reservoir Concept. Pattern Recognition Letters, 2003, 24 (1-3), pp.261-272. 10.1016/S0167-8655(02)00240-4. inria-00099525

HAL Id: inria-00099525

https://inria.hal.science/inria-00099525

Submitted on 15 Feb 2024

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_2.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# Touching Numeral Segmentation Using Water Reservoir Concept

Umapada Pal, Abdel Belaïd, Christophe Choisy

► To cite this version:

Umapada Pal, Abdel Belaïd, Christophe Choisy. Touching Numeral Segmentation Using Water Reservoir Concept. Pattern Recognition Letters, 2003, 24 (1-3), pp.261-272. 10.1016/S0167-8655(02)00240-4. inria-00099525

HAL Id: inria-00099525

https://inria.hal.science/inria-00099525v1

Submitted on 15 Feb 2024

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# Touching numeral segmentation using water reservoir concept

U. Pal<sup>a,*</sup>, A. Belaïd<sup>b</sup>, Ch. Choisy<sup>b</sup>

This paper deals with a new technique for automatic segmentation of unconstrained handwritten connected numerals. To take care of variability involved in the writing style of different individuals a robust scheme is presented here. The scheme is mainly based on features obtained from a concept based on *water reservoir*. A reservoir is a metaphor to illustrate the region where numerals touch. Reservoir is obtained by considering accumulation of water poured from the top or from the bottom of the numerals. At first, considering reservoir location and size, touching position (top, middle or bottom) is decided. Next, analyzing the reservoir boundary, touching position and topological features of the touching pattern, the best cutting point is determined. Finally, combined with morphological structural features the cutting path for segmentation is generated. The proposed scheme is tested on French bank check data and an accuracy about 94.8% is obtained from the system.

**Keywords:** Touching numeral segmentation; Courtesy amount; French bank check; Water reservoir concept

## 1. Introduction

Recognition of handwritten numerals has been a popular topic of research for many years (Fujisawa et al., 1992; Shi et al., 1997; Kim et al., 2000). It has many application potentials such as automatic postal sorting, bank check processing, share certificate sorting, recognition of various other

special forms etc. Segmentation of connected numerals is the main bottleneck in the handwritten numeral recognition system. Many systems have been proposed on segmentation (Casey and Lecolinet, 1996; Chen and Wang, 2000; Cheriet et al., 1992; Fujisawa et al., 1992; Ha et al., 1995; Hu et al., 1999; Kim et al., 2000; Knerr et al., 1997; Lethelier et al., 1995; Oliveira et al., 2000; Westall and Narasimha, 1993; Yu and Yan, 1998; Zhao et al., 1997). In general, there are two types of segmentation schemes: recognition-free-segmentation and recognition-based-segmentation (Kim et al., 2000). In recognition-free-segmentation, a

<footnote><sup>a</sup> Computer Vision and Pattern Recognition Unit, Indian Statistical Institute, 203 B.T. Road, Kolkata 700 108, India</footnote>

<footnote><sup>b</sup> Group READ, LORIA, Campus Scientifique B.P. 239, 54506 Vandoeuvre-Les-Nancy, France</footnote>

<footnote>* Corresponding author. Tel.: +91-33-577-8085; fax: +91-33-577-6680.</footnote>

<footnote>E-mail addresses: umapada@isical.ac.in (U. Pal), abelaid@loria.fr (A. Belaïd), choisy@loria.fr (C. Choisy).</footnote>
# Touching numeral segmentation using water reservoir concept

U. Pal<sup>a,*</sup>, A. Belaïd<sup>b</sup>, Ch. Choisy<sup>b</sup>

<sup>a</sup> Computer Vision and Pattern Recognition Unit, Indian Statistical Institute, 203 B.T. Road, Kolkata 700 108, India

<sup>b</sup> Group READ, LORIA, Campus Scientifique B.P. 239, 54506 Vandoeuvre-Les-Nancy, France

This paper deals with a new technique for automatic segmentation of unconstrained handwritten connected numerals. To take care of variability involved in the writing style of different individuals a robust scheme is presented here. The scheme is mainly based on features obtained from a concept based on *water reservoir*. A reservoir is a metaphor to illustrate the region where numerals touch. Reservoir is obtained by considering accumulation of water poured from the top or from the bottom of the numerals. At first, considering reservoir location and size, touching position (top, middle or bottom) is decided. Next, analyzing the reservoir boundary, touching position and topological features of the touching pattern, the best cutting point is determined. Finally, combined with morphological structural features the cutting path for segmentation is generated. The proposed scheme is tested on French bank check data and an accuracy about 94.8% is obtained from the system.

**Keywords:** Touching numeral segmentation; Courtesy amount; French bank check; Water reservoir concept

## 1. Introduction

Recognition of handwritten numerals has been a popular topic of research for many years (Fujisawa et al., 1992; Shi et al., 1997; Kim et al., 2000). It has many application potentials such as automatic postal sorting, bank check processing, share certificate sorting, recognition of various other

special forms etc. Segmentation of connected numerals is the main bottleneck in the handwritten numeral recognition system. Many systems have been proposed on segmentation (Casey and Lecolinet, 1996; Chen and Wang, 2000; Cheriet et al., 1992; Fujisawa et al., 1992; Ha et al., 1995; Hu et al., 1999; Kim et al., 2000; Knerr et al., 1997; Lethelier et al., 1995; Oliveira et al., 2000; Westall and Narasimha, 1993; Yu and Yan, 1998; Zhao et al., 1997). In general, there are two types of segmentation schemes: recognition-free-segmentation and recognition-based-segmentation (Kim et al., 2000). In recognition-free-segmentation, a

<footnote>* Corresponding author. Tel.: +91-33-577-8085; fax: +91-33-577-6680.</footnote>

<footnote>E-mail addresses: umapada@isical.ac.in (U. Pal), abelaid@loria.fr (A. Belaïd), choisy@loria.fr (C. Choisy).</footnote>
numeral string can be divided into segments by rules without recognition. In recognition-based-segmentation, candidate segmentation points are verified with recognizer. In this paper, a recognition-free-segmentation scheme for automatic classification and segmentation of unconstrained handwritten connected numerals is proposed.

Among the earlier pieces of work on touching numeral segmentation, one class of approaches use contour features of the component for segmentation (Kim et al., 2000; Strathy and Suen, 1995; Fenrich, 1991). Analyzing the contour of a touching pattern, valley and mountain points are derived. Next, cutting path is decided to segment the touching pattern by joining valley and mountain points. Even though these points are important for the segmentation, they are feeble points of the method because they cannot be detected properly if the two numerals touch in a straight line fashion (see Fig. 1a). For this type of touching, valley and mountain points cannot be detected in proper touching position by contour features and hence cannot be segmented properly. This is the main drawback of the contour feature based method. Other drawbacks of the method are given in details in the work of Chen and Wang (2000).

Some researchers use profile features for touching numeral segmentation. Computing the upper and lower profile of the component, and analyzing the distance between upper and lower profiles the segmentation points are detected (Fujisawa et al., 1992). Profile based methods fail when the handwritings are strongly skewed or overlapped, because in these cases the proper segmentation points cannot be reached by the

<figure><img src="image_3.png" /><figcaption>Fig. 1. Example of different touching type numerals: (a) example where touching zone is straight line fashion, (b) example of skewed touching numeral and its bottom projection profile (shown by dashed line).</figcaption></figure>

profiles. For example, see Fig. 1b. Here the lower projection profile cannot reach the touching zone and hence segmentation points cannot be detected by the profiles.

Another class of approaches is based on thinning (Chen and Wang, 2000; Lu et al., 1999). In this approach, thinning of foreground and/or background pixels of the connected pattern are processed. The end and fork points obtained by thinning are used for cutting point extraction. This method is time consuming and additionally generate protrusions. These protrusions sometimes give wrong results because they bring some confusion among the actual fork and end points.

Using structural features a separation technique for single-touching hand-written numeral strings is proposed by Yu and Yan (1998). At first, based on the structural points in the handwritten numeral string the touching region of the touching component is determined. Next, based on the geometrical information of a special structural point, a candidate touching point is pre-selected. Finally morphological analysis and partial recognition results are used for the purpose.

Combined features based methods are also used for the touching numeral segmentation. Oliveira et al. (2000) used contour, profile and skeleton features for touching characters segmentation. Dimauro et al. (1997) applied contour based features along with some descending algorithms for the purpose.

In this paper, a more direct approach for classification and segmentation of numerals is proposed without using any thinning or normalization. The classification part of the scheme first detect whether a component of numeral(s) is isolated or touching. If it is touching, segmentation scheme is applied on it. When two numeral touch each other, they create large space (reservoir) be-

<figure><img src="image_4.png" /><figcaption>Fig. 2. Space created by touching and base of water reservoir are shown.</figcaption></figure>
numeral string can be divided into segments by rules without recognition. In recognition-based-segmentation, candidate segmentation points are verified with recognizer. In this paper, a recognition-free-segmentation scheme for automatic classification and segmentation of unconstrained handwritten connected numerals is proposed.

Among the earlier pieces of work on touching numeral segmentation, one class of approaches use contour features of the component for segmentation (Kim et al., 2000; Strathy and Suen, 1995; Fenrich, 1991). Analyzing the contour of a touching pattern, valley and mountain points are derived. Next, cutting path is decided to segment the touching pattern by joining valley and mountain points. Even though these points are important for the segmentation, they are feeble points of the method because they cannot be detected properly if the two numerals touch in a straight line fashion (see Fig. 1a). For this type of touching, valley and mountain points cannot be detected in proper touching position by contour features and hence cannot be segmented properly. This is the main drawback of the contour feature based method. Other drawbacks of the method are given in details in the work of Chen and Wang (2000).

Some researchers use profile features for touching numeral segmentation. Computing the upper and lower profile of the component, and analyzing the distance between upper and lower profiles the segmentation points are detected (Fujisawa et al., 1992). Profile based methods fail when the handwritings are strongly skewed or overlapped, because in these cases the proper segmentation points cannot be reached by the

<figure><img src="image_2.png" /><figcaption>Fig. 1. Example of different touching type numerals: (a) example where touching zone is straight line fashion, (b) example of skewed touching numeral and its bottom projection profile (shown by dashed line).</figcaption></figure>

profiles. For example, see Fig. 1b. Here the lower projection profile cannot reach the touching zone and hence segmentation points cannot be detected by the profiles.

Another class of approaches is based on thinning (Chen and Wang, 2000; Lu et al., 1999). In this approach, thinning of foreground and/or background pixels of the connected pattern are processed. The end and fork points obtained by thinning are used for cutting point extraction. This method is time consuming and additionally generate protrusions. These protrusions sometimes give wrong results because they bring some confusion among the actual fork and end points.

Using structural features a separation technique for single-touching hand-written numeral strings is proposed by Yu and Yan (1998). At first, based on the structural points in the handwritten numeral string the touching region of the touching component is determined. Next, based on the geometrical information of a special structural point, a candidate touching point is pre-selected. Finally morphological analysis and partial recognition results are used for the purpose.

Combined features based methods are also used for the touching numeral segmentation. Oliveira et al. (2000) used contour, profile and skeleton features for touching characters segmentation. Dimauro et al. (1997) applied contour based features along with some descending algorithms for the purpose.

In this paper, a more direct approach for classification and segmentation of numerals is proposed without using any thinning or normalization. The classification part of the scheme first detect whether a component of numeral(s) is isolated or touching. If it is touching, segmentation scheme is applied on it. When two numeral touch each other, they create large space (reservoir) be-

<figure><img src="image_3.png" /><figcaption>Fig. 2. Space created by touching and base of water reservoir are shown.</figcaption></figure>
<figure><img src="image_5.png" /><figcaption>Fig. 3. Block diagram of the scheme.</figcaption></figure>

tween the numerals (see Fig. 2). This space is very
important for segmentation because (a) the space
concentrates the extraction of cutting points es-
sentially around the reservoir base (shown in Fig.
2) and hence reduces the search area; (b) the
probable cutting points correspond to some ob-
stacles (node) which lie on the base of the reser-
voir; (c) the space attributes (i.e., center of gravity
(CG) and height) help to go near the best touching
position. Using a simple concept based on water
reservoir this space is encountered for segmenta-
tion. At first, the positions and sizes of the reser-
voirs are analyzed and a reservoir is detected
where touching is made. Considering the type (top
or bottom reservoir) and analyzing *base* of this
reservoir the touching position (top, middle or
bottom touching) is decided. Next, noting touch-
ing position and analyzing the profile of the res-
ervoir, the initial feature points for segmentation
are determined. Considering close loops, reservoir
heights and distance from center of the component

the initial feature points are ranked and the best
feature point (highest rank point) is noted. Finally,
based on touching position, close loop positions
and morphological structure of touching region
the cutting path is generated. The flow-chart of the
scheme is shown in Fig. 3.

The proposed method can also solve efficiently
some of the drawbacks of the methods discussed
earlier. For example, this method can find some
important fork points without thinning and hence
no protrusion is generated. In fact, in our case,
these points are center points of those regions
surrounded by three or more reservoirs (see Fig.
4a). We get two fork points in the figure shown in
Fig. 4a. One fork point is surrounded by the res-
ervoir 1, reservoir 2 and reservoir 3 and the other
fork point is surrounded by the reservoir 1, reser-
voir 3 and reservoir 4. Also, the proposed method
can find properly the hill and valley points even
when the handwritings are strongly skewed. This is
possible because these points are the points on the
<figure><img src="image_4.png" /><figcaption>Fig. 3. Block diagram of the scheme.</figcaption></figure>

tween the numerals (see Fig. 2). This space is very
important for segmentation because (a) the space
concentrates the extraction of cutting points es-
sentially around the reservoir base (shown in Fig.
2) and hence reduces the search area; (b) the
probable cutting points correspond to some ob-
stacles (node) which lie on the base of the reser-
voir; (c) the space attributes (i.e., center of gravity
(CG) and height) help to go near the best touching
position. Using a simple concept based on water
reservoir this space is encountered for segmenta-
tion. At first, the positions and sizes of the reser-
voirs are analyzed and a reservoir is detected
where touching is made. Considering the type (top
or bottom reservoir) and analyzing *base* of this
reservoir the touching position (top, middle or
bottom touching) is decided. Next, noting touch-
ing position and analyzing the profile of the res-
ervoir, the initial feature points for segmentation
are determined. Considering close loops, reservoir
heights and distance from center of the component

the initial feature points are ranked and the best
feature point (highest rank point) is noted. Finally,
based on touching position, close loop positions
and morphological structure of touching region
the cutting path is generated. The flow-chart of the
scheme is shown in Fig. 3.

The proposed method can also solve efficiently
some of the drawbacks of the methods discussed
earlier. For example, this method can find some
important fork points without thinning and hence
no protrusion is generated. In fact, in our case,
these points are center points of those regions
surrounded by three or more reservoirs (see Fig.
4a). We get two fork points in the figure shown in
Fig. 4a. One fork point is surrounded by the res-
ervoir 1, reservoir 2 and reservoir 3 and the other
fork point is surrounded by the reservoir 1, reser-
voir 3 and reservoir 4. Also, the proposed method
can find properly the hill and valley points even
when the handwritings are strongly skewed. This is
possible because these points are the points on the
<figure><img src="image_6.png" /><figcaption>Fig. 4. Example of (a) fork points, (b) hill and valley points obtained by reservoir.</figcaption></figure>

base line of the reservoirs, i.e., valleys/hills correspond to the limits of top/bottom reservoir (see Fig. 4).

## 2. Data collection and computed statistics

For the experiment and statistics computation we collected images of French bank checks from a French Company (Itesoft). The images are in gray tone (256 level) and we have used a histogram based thresholding approach to convert them into two-tone. Because of binarization, the image may contain spurious noise pixels and irregularities on the boundary of the components, leading to undesired effects on the system. Also, to improve the performance, broken numerals should be connected. For preprocessing we use the method described by Cheng and Yan (1997).

To get an idea of occurrence percentage of connected (touching) numerals in the courtesy amount, some statistics are computed from 1100 French bank checks. It is noted that the occurrence percentage of touching numerals was about 6.2%. The statistics on different touching numeral pairs were also computed and analyzed (see Table 1). The pair 7X has the highest occurrence percentage (26.19%), (here 'X' represents any numeral and 7X represents touching of the numeral '7' with 'X'). The reason of getting highest occurrence

percentage by the 7X pair is the extra stroke in the middle of the numeral 7. The second and third largest are 5X and 2X pairs, with 15.89% and 13.03% of occurrences, respectively. This is because of the numerals 5 and 2 have long strokes towards right at the top and bottom positions, respectively. Based on these statistics we divide touching position in three parts (top, middle and bottom). It was observed that the touching positions of three highest occurring touching pairs (7X, 5X and 2X) were in the middle, upper and lower parts of the components, respectively.

## 3. Water reservoir principle

Our idea is to use water reservoir concept to analyze the large space created by the touching. The principle is as follows. If water is poured from top and bottom of the numeral, the cavity regions of the numerals where water will be stored are considered as reservoirs. For illustration see Fig. 5. Here by top (bottom) reservoir means the reservoir obtained when water is poured from top (bottom).

<figure><img src="image_7.png" /><figcaption>Fig. 5. Top/bottom reservoirs obtained from water flow concept are shown for three types ((a) top (b) middle and (c) bottom) of touching numerals. Top Reservoirs are marked by dots and bottom reservoirs are marked by dashed lines.</figcaption></figure>

<table><caption>Table 1
Occurrence percentage of different connected numeral pairs (based on 1189 connected numerals)</caption><thead><tr><th>Connected pair</th><th>1X</th><th>2X</th><th>3X</th><th>4X</th><th>5X</th><th>6X</th><th>7X</th><th>8X</th><th>9X</th><th>0X</th></tr></thead><tbody><tr><th>Occurrence (%)</th><td>7.9</td><td>13.03</td><td>6.05</td><td>2.43</td><td>15.89</td><td>8.49</td><td>26.19</td><td>11.94</td><td>3.78</td><td>4.28</td></tr></tbody></table>
<figure><img src="image_5.png" /><figcaption>Fig. 4. Example of (a) fork points, (b) hill and valley points obtained by reservoir.</figcaption></figure>

base line of the reservoirs, i.e., valleys/hills correspond to the limits of top/bottom reservoir (see Fig. 4).

## 2. Data collection and computed statistics

For the experiment and statistics computation we collected images of French bank checks from a French Company (Itesoft). The images are in gray tone (256 level) and we have used a histogram based thresholding approach to convert them into two-tone. Because of binarization, the image may contain spurious noise pixels and irregularities on the boundary of the components, leading to undesired effects on the system. Also, to improve the performance, broken numerals should be connected. For preprocessing we use the method described by Cheng and Yan (1997).

To get an idea of occurrence percentage of connected (touching) numerals in the courtesy amount, some statistics are computed from 1100 French bank checks. It is noted that the occurrence percentage of touching numerals was about 6.2%. The statistics on different touching numeral pairs were also computed and analyzed (see Table 1). The pair 7X has the highest occurrence percentage (26.19%), (here 'X' represents any numeral and 7X represents touching of the numeral '7' with 'X'). The reason of getting highest occurrence

percentage by the 7X pair is the extra stroke in the middle of the numeral 7. The second and third largest are 5X and 2X pairs, with 15.89% and 13.03% of occurrences, respectively. This is because of the numerals 5 and 2 have long strokes towards right at the top and bottom positions, respectively. Based on these statistics we divide touching position in three parts (top, middle and bottom). It was observed that the touching positions of three highest occurring touching pairs (7X, 5X and 2X) were in the middle, upper and lower parts of the components, respectively.

## 3. Water reservoir principle

Our idea is to use water reservoir concept to analyze the large space created by the touching. The principle is as follows. If water is poured from top and bottom of the numeral, the cavity regions of the numerals where water will be stored are considered as reservoirs. For illustration see Fig. 5. Here by top (bottom) reservoir means the reservoir obtained when water is poured from top (bottom).

<figure><img src="image_6.png" /><figcaption>Fig. 5. Top/bottom reservoirs obtained from water flow concept are shown for three types ((a) top (b) middle and (c) bottom) of touching numerals. Top Reservoirs are marked by dots and bottom reservoirs are marked by dashed lines.</figcaption></figure>

<table><caption>Table 1
Occurrence percentage of different connected numeral pairs (based on 1189 connected numerals)</caption><thead><tr><th>Connected pair</th><th>1X</th><th>2X</th><th>3X</th><th>4X</th><th>5X</th><th>6X</th><th>7X</th><th>8X</th><th>9X</th><th>0X</th></tr></thead><tbody><tr><th>Occurrence (%)</th><td>7.9</td><td>13.03</td><td>6.05</td><td>2.43</td><td>15.89</td><td>8.49</td><td>26.19</td><td>11.94</td><td>3.78</td><td>4.28</td></tr></tbody></table>
(Here, water pouring from bottom we mean the water pouring from top after rotating the component by 180°.) The computation of water reservoir is very simple. We find the regions of white space in the bounding box of the component, where water could be stored. These regions are the water reservoirs.

All reservoirs obtained in this way are not considered for further processing. Those reservoirs whose heights are greater than a threshold $T_1$ are considered for future processing. The value of $T_1$ is 1/8 of the component height. (The threshold value is obtained from the experiment.)

## 4. Feature selection

Since different individuals can have various writing styles, the features to be chosen should be independent of writing styles of the individuals. To achieve writing independent features we consider here reservoir based features.

The important reservoir features considered in the scheme are: (i) number of reservoirs, (ii) positions of reservoirs with respect to bounding box of the touching pattern, (iii) size and shape of the reservoirs, (iv) CG of the reservoirs, (v) relative positions of the reservoirs.

Close loop features were the main topological features in our scheme. Number of close loop, positions with respect to the bounding box of the component, CG and the ratio of close loop height to component height are considered here.

In the structural feature we consider the morphological pattern of the touching region. This feature is very helpful for the cutting path detection to segment the connected numerals of different types.

## 5. Numeral classification

This stage classifies an input numeral string into isolated or touched digit group. Generally in the earlier studies, height width ratio (aspect ratio) of the component is used for the classification of isolated or connected numerals (Fujisawa et al., 1992). If two or more numerals are connected,

then the width of the connected component should be larger than its height. Although, by and large, it may be true in printed text, it is not true in handwritten cases because of different writing styles of different individual. For example, from the experiment it is noted that in some handwritings, two digits ‘2’ and ‘1’ are connected and generated a shape which is similar to numeral ‘4’. The width of this touching component is not greater than the isolated numeral ‘4’. Hence, using height width ratio this type of touching numerals cannot be separated. Complexity (in terms of curvature) is also used for isolated/touching numeral separation. The idea of using complexity is as follows. When two or more numerals are connected, then the connected pattern should be more complex than an isolated numeral. This is not true in general. For example, when two consecutive zeros touch each other they generate a touching pattern which is similar to the shape of numeral ‘8’, if it is rotated by 90°. The complexity of this touching pattern is more or less equal to the numeral ‘8’. Hence, they cannot be separated by complexity.

In principle, when two numerals get connected one of the two followings happens in most of the cases: (1) two numerals create a large reservoir (for example see Fig. 2); (2) the number of reservoirs (obtained from both top and bottom) in a connected numeral will be greater than that of an isolated numeral. Computing different features obtained by two above observations the classification scheme is developed here. Based on the number of reservoirs, heights of the reservoirs, positions and number of close loops and their location, the isolated digit and touching digit groups are identified as follows:

Let for a component C:

$N$ = Number of close loops

$G_i(x, y)$ = CG (Centre of gravity) position of ith close loop, $i = 1, ..., N$

$W$ = Total number of water reservoirs (Both top and bottom)

$\bar{R}_j$ = jth reservoir, $j = 1, 2, ..., W$

$\bar{G}_j(x, y)$ = CG position of $\bar{R}_j$

$\bar{R}_{Hj}$ = Height of $\bar{R}_j$

$T = N + W$
(Here, water pouring from bottom we mean the water pouring from top after rotating the component by 180°.) The computation of water reservoir is very simple. We find the regions of white space in the bounding box of the component, where water could be stored. These regions are the water reservoirs.

All reservoirs obtained in this way are not considered for further processing. Those reservoirs whose heights are greater than a threshold $T_1$ are considered for future processing. The value of $T_1$ is 1/8 of the component height. (The threshold value is obtained from the experiment.)

## 4. Feature selection

Since different individuals can have various writing styles, the features to be chosen should be independent of writing styles of the individuals. To achieve writing independent features we consider here reservoir based features.

The important reservoir features considered in the scheme are: (i) number of reservoirs, (ii) positions of reservoirs with respect to bounding box of the touching pattern, (iii) size and shape of the reservoirs, (iv) CG of the reservoirs, (v) relative positions of the reservoirs.

Close loop features were the main topological features in our scheme. Number of close loop, positions with respect to the bounding box of the component, CG and the ratio of close loop height to component height are considered here.

In the structural feature we consider the morphological pattern of the touching region. This feature is very helpful for the cutting path detection to segment the connected numerals of different types.

## 5. Numeral classification

This stage classifies an input numeral string into isolated or touched digit group. Generally in the earlier studies, height width ratio (aspect ratio) of the component is used for the classification of isolated or connected numerals (Fujisawa et al., 1992). If two or more numerals are connected,

then the width of the connected component should be larger than its height. Although, by and large, it may be true in printed text, it is not true in handwritten cases because of different writing styles of different individual. For example, from the experiment it is noted that in some handwritings, two digits ‘2’ and ‘1’ are connected and generated a shape which is similar to numeral ‘4’. The width of this touching component is not greater than the isolated numeral ‘4’. Hence, using height width ratio this type of touching numerals cannot be separated. Complexity (in terms of curvature) is also used for isolated/touching numeral separation. The idea of using complexity is as follows. When two or more numerals are connected, then the connected pattern should be more complex than an isolated numeral. This is not true in general. For example, when two consecutive zeros touch each other they generate a touching pattern which is similar to the shape of numeral ‘8’, if it is rotated by 90°. The complexity of this touching pattern is more or less equal to the numeral ‘8’. Hence, they cannot be separated by complexity.

In principle, when two numerals get connected one of the two followings happens in most of the cases: (1) two numerals create a large reservoir (for example see Fig. 2); (2) the number of reservoirs (obtained from both top and bottom) in a connected numeral will be greater than that of an isolated numeral. Computing different features obtained by two above observations the classification scheme is developed here. Based on the number of reservoirs, heights of the reservoirs, positions and number of close loops and their location, the isolated digit and touching digit groups are identified as follows:

Let for a component C:

$N$ = Number of close loops

$G_i(x, y)$ = CG (Centre of gravity) position of ith close loop, $i = 1, ..., N$

$W$ = Total number of water reservoirs (Both top and bottom)

$\bar{R}_j$ = jth reservoir, $j = 1, 2, ..., W$

$\bar{G}_j(x, y)$ = CG position of $\bar{R}_j$

$\bar{R}_{Hj}$ = Height of $\bar{R}_j$

$T = N + W$
Also let:

$$
\begin{align*}
S_A = \text{func}_1(N, G_i(x, y)) &= 1 \text{ if } N \ge 2 \text{ and } -45^\circ \le \theta \le 45^\circ \text{ (}\theta \text{ is the angle between the CGs of any two} \\
&\text{close loops)} \\
&= 0 \text{ otherwise}
\end{align*}
$$

$$
\begin{align*}
S_B = \text{func}_2(\bar{R}_{Hi}, \bar{G}_i(x, y)) &= 1 \text{ if there exists an } i \text{ such that } \bar{R}_{Hi} \ge 75\% \text{ of the component height and} \\
&\phantom{= 1} \bar{G}_i(x, y) \in h_m(i = 1, 2, \dots, W) (h_m \text{ is shown in Fig. 7}). \\
&= 0 \text{ otherwise}
\end{align*}
$$

$$
\begin{align*}
S_C = \text{func}_3(W) &= 1 \text{ if } W \ge 4 \\
&= 0 \text{ otherwise}
\end{align*}
$$

where func₁, func₂ and func₃ are Boolean func-
tions described as above.

Based on the values of S<sub>A</sub>, S<sub>B</sub>, S<sub>C</sub> and T of a
component C, its classification is done by the fol-
lowing algorithm.

If the value of S<sub>A</sub> is 1 then C is connected

Else if the value of S<sub>C</sub> is 1 then C is connected

Else if the value of S<sub>B</sub> is 1 and the value of
T ≥ 3 then C is connected

Else if the value of S<sub>B</sub> is 1 and the value of
T < 3 then C is confused.

Else C is isolated.

The advantage of the proposed classification
method is that it is size independent and there is no
need any normalization of the component. To
evaluate performance of the classification method
a data set of 3800 components was extracted
manually from the French bank checks. The per-
formance of the method is shown in Table 2. The
proposed method has 98.81% accuracy for sepa-
rating isolated digits and touched strings. The

confusion rate of the proposed classification
scheme is very small (only 1.2%). To make a com-
parison, result obtained by a recent work (Kim
et al., 2000) is also provided in Table 2. Kim et al.
identified isolated/touching digits by a confidence
value (CV) obtained by the recognition probabil-
ities.

From the experiment we note that our proposed
approach provides better result for isolated nu-
merals than connected numerals. We noticed that
about 99.14% cases isolated numerals have been
correctly classified into isolated class whereas
about 94.97% cases connected numerals have been
correctly classified into connected class. To get an
idea about the success and failure cases of the
proposed approach some examples are shown in
Fig. 6. Examples shown in Fig. 6(a) and (b) are
correctly classified as connected and isolated
component, respectively. Examples shown in Fig.
6(c) and (d) are wrongly classified. Component
shown in Fig. 6(c) is classified as connected
although it was isolated (numeral ‘2’). Formation
of a big reservoir in this numeral is the main rea-
son for this misclassification. The connected com-

<table><caption>Table 2
Comparison of classification accuracy</caption>
  <thead>
    <tr>
      <th>Method</th>
      <th>Size of data set</th>
      <th>Accuracy (%)</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td rowspan="3">Kim et al.<br>(2000)</td>
      <td>2500</td>
      <td>96.5</td>
    </tr>
    <tr>
      <td>2000 (isolated)</td>
      <td>97.9 (isolated)</td>
    </tr>
    <tr>
      <td>500 (connected)</td>
      <td>91.0 (connected)</td>
    </tr>
    <tr>
      <td rowspan="3">Our approach</td>
      <td>3800</td>
      <td>98.81</td>
    </tr>
    <tr>
      <td>3482 (isolated)</td>
      <td>99.14 (isolated)</td>
    </tr>
    <tr>
      <td>318 (connected)</td>
      <td>94.97 (connected)</td>
    </tr>
  </tbody>
</table>

<figure><img src="image_8.png" /><figcaption>Fig. 6. Some results of component classification; (a) connected numeral of two zeros, (b) isolated numeral ‘9’, (c) isolated numeral ‘2’, (d) connected numeral of ‘2’ and ‘0’.</figcaption></figure>
Also let:

$$
\begin{align*}
S_A = \text{func}_1(N, G_i(x, y)) &= 1 \text{ if } N \ge 2 \text{ and } -45^\circ \le \theta \le 45^\circ \text{ (}\theta \text{ is the angle between the CGs of any two} \\
&\text{close loops)} \\
&= 0 \text{ otherwise}
\end{align*}
$$

$$
\begin{align*}
S_B = \text{func}_2(\bar{R}_{Hi}, \bar{G}_i(x, y)) &= 1 \text{ if there exists an } i \text{ such that } \bar{R}_{Hi} \ge 75\% \text{ of the component height and} \\
&\phantom{= 1 if there exists an } \bar{G}_i(x, y) \in h_m(i = 1, 2, \dots, W) (h_m \text{ is shown in Fig. 7}). \\
&= 0 \text{ otherwise}
\end{align*}
$$

$$
\begin{align*}
S_C = \text{func}_3(W) &= 1 \text{ if } W \ge 4 \\
&= 0 \text{ otherwise}
\end{align*}
$$

where func₁, func₂ and func₃ are Boolean func-
tions described as above.

Based on the values of S<sub>A</sub>, S<sub>B</sub>, S<sub>C</sub> and T of a
component C, its classification is done by the fol-
lowing algorithm.

If the value of S<sub>A</sub> is 1 then C is connected

Else if the value of S<sub>C</sub> is 1 then C is connected

Else if the value of S<sub>B</sub> is 1 and the value of
T ≥ 3 then C is connected

Else if the value of S<sub>B</sub> is 1 and the value of
T < 3 then C is confused.

Else C is isolated.

The advantage of the proposed classification
method is that it is size independent and there is no
need any normalization of the component. To
evaluate performance of the classification method
a data set of 3800 components was extracted
manually from the French bank checks. The per-
formance of the method is shown in Table 2. The
proposed method has 98.81% accuracy for sepa-
rating isolated digits and touched strings. The

confusion rate of the proposed classification
scheme is very small (only 1.2%). To make a com-
parison, result obtained by a recent work (Kim
et al., 2000) is also provided in Table 2. Kim et al.
identified isolated/touching digits by a confidence
value (CV) obtained by the recognition probabil-
ities.

From the experiment we note that our proposed
approach provides better result for isolated nu-
merals than connected numerals. We noticed that
about 99.14% cases isolated numerals have been
correctly classified into isolated class whereas
about 94.97% cases connected numerals have been
correctly classified into connected class. To get an
idea about the success and failure cases of the
proposed approach some examples are shown in
Fig. 6. Examples shown in Fig. 6(a) and (b) are
correctly classified as connected and isolated
component, respectively. Examples shown in Fig.
6(c) and (d) are wrongly classified. Component
shown in Fig. 6(c) is classified as connected
although it was isolated (numeral ‘2’). Formation
of a big reservoir in this numeral is the main rea-
son for this misclassification. The connected com-

<table><caption>Table 2
Comparison of classification accuracy</caption>
  <thead>
    <tr>
      <th>Method</th>
      <th>Size of data set</th>
      <th>Accuracy (%)</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td rowspan="3">Kim et al.<br>(2000)</td>
      <td>2500</td>
      <td>96.5</td>
    </tr>
    <tr>
      <td>2000 (isolated)</td>
      <td>97.9 (isolated)</td>
    </tr>
    <tr>
      <td>500 (connected)</td>
      <td>91.0 (connected)</td>
    </tr>
    <tr>
      <td rowspan="3">Our approach</td>
      <td>3800</td>
      <td>98.81</td>
    </tr>
    <tr>
      <td>3482 (isolated)</td>
      <td>99.14 (isolated)</td>
    </tr>
    <tr>
      <td>318 (connected)</td>
      <td>94.97 (connected)</td>
    </tr>
  </tbody>
</table>

<figure><img src="image_7.png" /><figcaption>Fig. 6. Some results of component classification; (a) connected numeral of two zeros, (b) isolated numeral ‘9’, (c) isolated numeral ‘2’, (d) connected numeral of ‘2’ and ‘0’.</figcaption></figure>
ponent (formed by '2' and '0') shown in Fig. 6(d) is
classified as isolated because of smaller height of
'0' compare to the other numeral '2'.

**6. Touching digit segmentation**

For the segmentation of touching pattern at
first, the touching position is found. The touching
position has been classified into three regions: top,
middle and bottom. Next, based on the touching
position, reservoir position, topological features
of the component, the feature points for segmen-
tation are extracted. Finally, considering loops,
structural features and reservoir features the path
to segment the touching pattern is constructed.

Touching position detection: Let BB be the bounding box area of a touching component. The BB is divided horizontally in three regions. The top region ($h_t$) is 25% of BB. Middle region ($h_m$) and bottom region ($h_b$) are 50% and 25% of BB, respectively. Similarly, the vertical division of BB in three regions is done. The left ($v_l$), middle ($v_m$) and right ($v_r$) regions are 25%, 50% and 25% of BB, respectively. For illustration see Fig. 7. (These values are decided based on observation.) There are two reservoirs in the touching component shown in this figure. One is top reservoir and the other is bottom reservoir. As mentioned earlier, when two numerals touch each other, they create a big reservoir in the touching component. Based on the big reservoir position, the touching positions are decided. At first, the largest reservoir of the component whose CG lies in $v_m$ region is found. This reservoir is called as the best reservoir

for touching. The base-line (lowermost row of the
reservoir) of the best reservoir is then detected.
The best reservoir and its base-line are shown in
Fig. 7. Touching position detection is done as
follows:

Let $\zeta$ is the number of boundary point of the best reservoir. Also, let $S_={f_R(x_i, y_i)}$ be the set of the boundary points of $R$, where $i = 1, 2, \dots, \zeta$.

$$
\text{Also let } I_P = ((x_l + x_r)/2, (y_l + y_r)/2)
$$

For top reservoir: $(x_1, y_1)$ and $(x_r, y_r) \in f_R(x_i, y_i)$
such that $x_1 = \max(x_i)$ and $y_1 = \min(y_i)$,

$$
\begin{align*}
x_r &= \max(x_i) \quad \text{and} \quad y_r = \max(y_i), \quad i \\
    &= 1, 2, \dots, \zeta.
\end{align*}
$$

For bottom reservoir: $(x_l, y_l)$ and $(x_r, y_r) \in f_R(x_i, y_i)$
such that $x_l = \min(x_i)$ and $y_l = \min(y_i)$,

$$
x_r = \min(x_i) \quad \text{and} \quad y_r = \max(y_i), \quad i = 1, 2, \dots, \zeta.
$$

Based on the position of $I_P$, touching position (top,
middle or bottom) is decided as follows:

$$
\text{Touching position} = \text{top, if } I_P \in h_t
$$

$$
\text{Touching position} = \text{middle, if } I_P \in h_m
$$

Touching position = bottom, if $I_P \in h_b$

$(h_t, h_m$ and $h_b$ are shown in Fig. 7.)

Feature point extraction: For feature points extraction the touching position is noted. If the touching position is top then all reservoirs whose base-line lies in the $h_t$ region are considered for feature extraction. Similarly, if the touching position is bottom (middle) then all reservoirs whose base-line lies in the $h_b(h_m)$ region are considered for feature extraction. The leftmost and rightmost points of the base-line of considered reservoirs are

<figure><img src="image_9.png" /><figcaption>Fig. 7. Feature detection approach.</figcaption></figure>
ponent (formed by '2' and '0') shown in Fig. 6(d) is
classified as isolated because of smaller height of
'0' compare to the other numeral '2'.

**6. Touching digit segmentation**

For the segmentation of touching pattern at
first, the touching position is found. The touching
position has been classified into three regions: top,
middle and bottom. Next, based on the touching
position, reservoir position, topological features
of the component, the feature points for segmen-
tation are extracted. Finally, considering loops,
structural features and reservoir features the path
to segment the touching pattern is constructed.

Touching position detection: Let BB be the bounding box area of a touching component. The BB is divided horizontally in three regions. The top region ($h_t$) is 25% of BB. Middle region ($h_m$) and bottom region ($h_b$) are 50% and 25% of BB, respectively. Similarly, the vertical division of BB in three regions is done. The left ($v_l$), middle ($v_m$) and right ($v_r$) regions are 25%, 50% and 25% of BB, respectively. For illustration see Fig. 7. (These values are decided based on observation.) There are two reservoirs in the touching component shown in this figure. One is top reservoir and the other is bottom reservoir. As mentioned earlier, when two numerals touch each other, they create a big reservoir in the touching component. Based on the big reservoir position, the touching positions are decided. At first, the largest reservoir of the component whose CG lies in $v_m$ region is found. This reservoir is called as the best reservoir

for touching. The base-line (lowermost row of the
reservoir) of the best reservoir is then detected.
The best reservoir and its base-line are shown in
Fig. 7. Touching position detection is done as
follows:

Let $\zeta$ is the number of boundary point of the best reservoir. Also, let $S_={f_R(x_i, y_i)}$ be the set of the boundary points of $R$, where $i = 1, 2, \dots, \zeta$.

$$
\text{Also let } I_P = ((x_l + x_r)/2, (y_l + y_r)/2)
$$

For top reservoir: $(x_1, y_1)$ and $(x_r, y_r) \in f_R(x_i, y_i)$
such that $x_1 = \max(x_i)$ and $y_1 = \min(y_i)$,

$$
\begin{align*}
x_r &= \max(x_i) \quad \text{and} \quad y_r = \max(y_i), \quad i \\
    &= 1, 2, \dots, \zeta.
\end{align*}
$$

For bottom reservoir: $(x_l, y_l)$ and $(x_r, y_r) \in f_R(x_i, y_i)$
such that $x_l = \min(x_i)$ and $y_l = \min(y_i)$,

$$
x_r = \min(x_i) \quad \text{and} \quad y_r = \max(y_i), \quad i = 1, 2, \dots, \zeta.
$$

Based on the position of $I_P$, touching position (top,
middle or bottom) is decided as follows:

$$
\text{Touching position} = \text{top, if } I_P \in h_t
$$

$$
\text{Touching position} = \text{middle, if } I_P \in h_m
$$

Touching position = bottom, if $I_P \in h_b$

$(h_t, h_m$ and $h_b$ are shown in Fig. 7.)

**Feature point extraction:** For feature points extraction the touching position is noted. If the touching position is top then all reservoirs whose base-line lies in the $h_t$ region are considered for feature extraction. Similarly, if the touching position is bottom (middle) then all reservoirs whose base-line lies in the $h_b(h_m)$ region are considered for feature extraction. The leftmost and rightmost points of the base-line of considered reservoirs are

<figure><img src="image_8.png" /><figcaption>Fig. 7. Feature detection approach.</figcaption></figure>
the feature points. These points are initial feature points.

Let $L$ be the Euclidean distance between the leftmost and rightmost points of a base line. Also let $R$ is the length of most frequently occurring horizontal black run of a touching component. The value of $R$ is calculated as follows. If a component has $n$ different horizontal run-lengths $r_1, r_2, \dots, r_n$ with frequencies $f_1, f_2, \dots, f_n$, respectively. Then $R = r_i$ where $f_i = \max(f_j), j = 1, 2, \dots, n$.

Generally for each reservoir we get two initial points. For a reservoir, if $L$ is less than $2R$ then instead of two feature points (leftmost and rightmost points of base line) we consider the midpoint of these two points as an initial feature point. The initial feature points for three different touching components are shown Fig. 8. For touching numerals shown in Fig. 8(a), only one reservoir is considered for feature extraction, because the base lines of other reservoirs do not line in the region $h_i$. Also, in this touching component we get only one feature point in the big reservoir as $L$ is less than $2R$ (for the Fig. 8(a) we got values of $L = 4$ and $R = 3$). Now from initial feature points the best feature point is chosen for segmentation based on the Confidence Values (CVs) of the points. To compute CV following features are considered.

* Euclidean distance of feature points from the CG of the touching component. Let there are $F$ initial feature points and the Euclidean distance of these points from CG of the component are $d_1, d_2, \dots, d_F$. Then the CV of a

feature point with distance $d_i$ is $1/K$, where $K = d_i/(d_1 + d_2 + \dots + d_F)$.

* Distance from the CG of each close loop. CV calculation procedure for this case is similar to above feature.

* Height of the reservoir. The main idea of this feature is as follows: those points which come from the bigger reservoir should get more CV for this feature. Let $F$ initial points are obtained from $p$ reservoirs of heights $\bar{R}_{H1}, \bar{R}_{H2}, \dots, \bar{R}_{HP}$. Then the CV of a point obtained from reservoir $\bar{R}_i$ is $\bar{R}_{Hi}/S$, where $S = \bar{R}_{H1} + \bar{R}_{H2} + \dots + \bar{R}_{HP}$.

For each initial point, its total CV is checked. The point with highest CV is the best feature point. The best feature points for the three touching components shown in Fig. 8 are marked by A.

Other existing methods (Chen and Wang, 2000; Cheriet et al., 1992; Oliveira et al., 2000; Zhao et al., 1997) consider whole touching pattern for feature points extraction. Instead of whole pattern a portion of the touching component is considered in the proposed scheme for feature points extraction.

*Determination of segmentation path:* Based on the touching position, close loop position and structural features, combined techniques are used for the segmentation path generation. Both the straight line and curve segmentation are done in the scheme. The segmentation algorithms are different for two different cases of touching numerals. Case 1: components having two side by side and touching close loops. Case 2: other touching components.

For the first case, we check number of close loops and their positions. If two close loops are side by side and if the loops are touching each other the curve segment is done through the middle of their common touching area. From the common touching portion a starting point is detected. (Detection of starting point is given below.) From this point a pointer is moved upwards though the middle of the touching area until it reaches to a reservoir (or boundary of the component). The path moved by the pointer is noted. Similarly, the pointer is moved downwards from the starting point and the path is noted. The total path moved by the pointer is the segmentation

<figure><img src="image_10.png" /><figcaption>Fig. 8. Initial feature points and node points are shown in (a) top, (b) middle and (c) bottom touching numerals. Here A, B, C, D are feature points. A is the best feature point. M and N are node points. L is the length of base line.</figcaption></figure>
the feature points. These points are initial feature points.

Let $L$ be the Euclidean distance between the leftmost and rightmost points of a base line. Also let $R$ is the length of most frequently occurring horizontal black run of a touching component. The value of $R$ is calculated as follows. If a component has $n$ different horizontal run-lengths $r_1, r_2, \dots, r_n$ with frequencies $f_1, f_2, \dots, f_n$, respectively. Then $R = r_i$ where $f_i = \max(f_j), j = 1, 2, \dots, n$.

Generally for each reservoir we get two initial points. For a reservoir, if $L$ is less than $2R$ then instead of two feature points (leftmost and rightmost points of base line) we consider the midpoint of these two points as an initial feature point. The initial feature points for three different touching components are shown Fig. 8. For touching numerals shown in Fig. 8(a), only one reservoir is considered for feature extraction, because the base lines of other reservoirs do not line in the region $h_i$. Also, in this touching component we get only one feature point in the big reservoir as $L$ is less than $2R$ (for the Fig. 8(a) we got values of $L = 4$ and $R = 3$). Now from initial feature points the best feature point is chosen for segmentation based on the Confidence Values (CVs) of the points. To compute CV following features are considered.

* Euclidean distance of feature points from the CG of the touching component. Let there are $F$ initial feature points and the Euclidean distance of these points from CG of the component are $d_1, d_2, \dots, d_F$. Then the CV of a

feature point with distance $d_i$ is $1/K$, where $K = d_i/(d_1 + d_2 + \dots + d_F)$.

* Distance from the CG of each close loop. CV calculation procedure for this case is similar to above feature.

* Height of the reservoir. The main idea of this feature is as follows: those points which come from the bigger reservoir should get more CV for this feature. Let $F$ initial points are obtained from $p$ reservoirs of heights $\bar{R}_{H1}, \bar{R}_{H2}, \dots, \bar{R}_{HP}$. Then the CV of a point obtained from reservoir $\bar{R}_i$ is $\bar{R}_{Hi}/S$, where $S = \bar{R}_{H1} + \bar{R}_{H2} + \dots + \bar{R}_{HP}$.

For each initial point, its total CV is checked. The point with highest CV is the best feature point. The best feature points for the three touching components shown in Fig. 8 are marked by A.

Other existing methods (Chen and Wang, 2000; Cheriet et al., 1992; Oliveira et al., 2000; Zhao et al., 1997) consider whole touching pattern for feature points extraction. Instead of whole pattern a portion of the touching component is considered in the proposed scheme for feature points extraction.

*Determination of segmentation path:* Based on the touching position, close loop position and structural features, combined techniques are used for the segmentation path generation. Both the straight line and curve segmentation are done in the scheme. The segmentation algorithms are different for two different cases of touching numerals. Case 1: components having two side by side and touching close loops. Case 2: other touching components.

For the first case, we check number of close loops and their positions. If two close loops are side by side and if the loops are touching each other the curve segment is done through the middle of their common touching area. From the common touching portion a starting point is detected. (Detection of starting point is given below.) From this point a pointer is moved upwards though the middle of the touching area until it reaches to a reservoir (or boundary of the component). The path moved by the pointer is noted. Similarly, the pointer is moved downwards from the starting point and the path is noted. The total path moved by the pointer is the segmentation

<figure><img src="image_9.png" /><figcaption>Fig. 8. Initial feature points and node points are shown in (a) top, (b) middle and (c) bottom touching numerals. Here A, B, C, D are feature points. A is the best feature point. M and N are node points. L is the length of base line.</figcaption></figure>
<figure><img src="image_11.png" /><figcaption>Fig. 9. Different types of touching components (shown in 1st row) and their segmentation results (shown in 2nd row).</figcaption></figure>

path. This type of segmentation path is curve segmentation. An example of this type touching numeral and its segmentation result are shown in the first column of Fig. 9.

The starting point detection is done as follows. The CG points of two close loops are noted and the line segment obtained by joining these two points is examined. The portion of this line segment which lies in the common touching area of the close loops are detected. The middle point of this portion is the starting point.

For the second case, the segmentation technique is based on the “boundary tracing” of the reservoir. From the best feature point, the boundary of the reservoir (the reservoir from which the best feature point is obtained) is traced pixel-wise in clock-wise direction to find a *node (obstacle)* point. During tracing, the length of vertical black run at each tracing point is computed. The boundary point where this run length is greater than $3R/2$ is considered as node point (*R* is described earlier). Let this node point be N. Similarly, boundary of the reservoir is traced from the best feature point in anti-clock-wise direction to find another node point (M). See Fig. 8 where node points obtained in the touching numerals are shown. As our best feature point detection is based on the base-line of water reservoir, the best feature point may not always obtained in the exact position where cutting should be made. This situation is tackled by the node points and obtained good segmentation path.

Now, depending on the touching type the segmentation path is generated. For the top and bottom touching components vertical segmentation is done. From the two node points best node point is chosen and the cutting is done vertically at the best node point. To choose best node point we note positions of the node points. If one of the

node points lies in $v_m$ region ($v_m$ region is shown in Fig. 7) the node within $v_m$ region is the best node. If both the node points lie in the $v_m$ region then the node which is nearer to the biggest close loop in the component is the best node. The node nearer to the middle of the touching component is the best node point if no close loop is obtained in the component. If no node point lies in the $v_m$ region we segment the component at the middle of the two node points. See the components shown in 3rd and 5th columns of Fig. 9. Here, segmentation is done at the middle of the two node points (node points are shown by small circles).

For the middle touching components the cutting method is different. From the best node we try to associate the other initial features (see Fig. 8 where initial points are shown) which are obtained from the opposite type reservoir to best node reservoir and choose a point (best associated point) from these initial points. If the best node point is obtained from top reservoir then other initial points which are obtained from bottom reservoirs will be considered to find the best association point. The best association is measured by the distance of these points and the location of the reservoirs. For an example, consider the component shown in Fig. 8(b). Here, the best feature point (A) and best node point (N) are same. Since the best node point comes from bottom reservoir, so other initial feature points (C and D) obtained from top reservoirs are considered to find the best associate point of N. In this case, we obtained D as the best associate point of the best node point N. The line segment, obtained by joining the best node point and its best associate point, is the segmentation path of the component.

In short, the proposed segmentation algorithm (NUM_SEGM) is as follows:
<figure><img src="image_10.png" /><figcaption>Fig. 9. Different types of touching components (shown in 1st row) and their segmentation results (shown in 2nd row).</figcaption></figure>

path. This type of segmentation path is curve segmentation. An example of this type touching numeral and its segmentation result are shown in the first column of Fig. 9.

The starting point detection is done as follows. The CG points of two close loops are noted and the line segment obtained by joining these two points is examined. The portion of this line segment which lies in the common touching area of the close loops are detected. The middle point of this portion is the starting point.

For the second case, the segmentation technique is based on the “boundary tracing” of the reservoir. From the best feature point, the boundary of the reservoir (the reservoir from which the best feature point is obtained) is traced pixel-wise in clock-wise direction to find a *node (obstacle)* point. During tracing, the length of vertical black run at each tracing point is computed. The boundary point where this run length is greater than $3R/2$ is considered as node point (*R* is described earlier). Let this node point be N. Similarly, boundary of the reservoir is traced from the best feature point in anti-clock-wise direction to find another node point (M). See Fig. 8 where node points obtained in the touching numerals are shown. As our best feature point detection is based on the base-line of water reservoir, the best feature point may not always obtained in the exact position where cutting should be made. This situation is tackled by the node points and obtained good segmentation path.

Now, depending on the touching type the segmentation path is generated. For the top and bottom touching components vertical segmentation is done. From the two node points best node point is chosen and the cutting is done vertically at the best node point. To choose best node point we note positions of the node points. If one of the

node points lies in $v_m$ region ($v_m$ region is shown in Fig. 7) the node within $v_m$ region is the best node. If both the node points lie in the $v_m$ region then the node which is nearer to the biggest close loop in the component is the best node. The node nearer to the middle of the touching component is the best node point if no close loop is obtained in the component. If no node point lies in the $v_m$ region we segment the component at the middle of the two node points. See the components shown in 3rd and 5th columns of Fig. 9. Here, segmentation is done at the middle of the two node points (node points are shown by small circles).

For the middle touching components the cutting method is different. From the best node we try to associate the other initial features (see Fig. 8 where initial points are shown) which are obtained from the opposite type reservoir to best node reservoir and choose a point (best associated point) from these initial points. If the best node point is obtained from top reservoir then other initial points which are obtained from bottom reservoirs will be considered to find the best association point. The best association is measured by the distance of these points and the location of the reservoirs. For an example, consider the component shown in Fig. 8(b). Here, the best feature point (A) and best node point (N) are same. Since the best node point comes from bottom reservoir, so other initial feature points (C and D) obtained from top reservoirs are considered to find the best associate point of N. In this case, we obtained D as the best associate point of the best node point N. The line segment, obtained by joining the best node point and its best associate point, is the segmentation path of the component.

In short, the proposed segmentation algorithm (NUM_SEGM) is as follows:
Algorithm NUM_SEGM:

Step 1: Detect best reservoir and find the touching position based on this reservoir.

Step 2: Detect touching type. If the touching is loop-loop fashion, goto to Step 5.

Step 3: Find initial points based on reservoir and find the best feature points based on CV.

Step 4: Find the best node point. For top and bottom touching straight line segmentation is done at the best node point. For the middle touching the best associated point of the best node point is detected. Segmentation is done by joining the best node point and its associate point. Stop.

Step 5: Detect start point. Segment according to the movement of starting point. Stop.

## 7. Results and discussion

As the main goal of the work is towards the automatic reading of French banking check we evaluate the scheme on the images of numeral strings obtained from the courtesy amount portions of French bank check. We extracted 2250 images of numeral string (two digits) and the proposed scheme was tested on these images. The segmentation result was verified manually and observed that 94.8% of the connected numerals were correctly segmented.

The rejection rate of our segmentation system was 3.4%. The main features for rejection were:

* the widths of one of the segmented part is very small compare to width of the other part;

* the length of cutting path is very long compare to the height of the touching pattern;

* no best reservoir is obtained in a touching component.

At present, no confusion stage is implemented in our segmentation scheme. In future we plan to implement it. The proposed scheme is developed for the segmentation of two digit touching components. Although the method can handle two digits touching strings it can segment single touching as well as double touching strings. Fig. 9 shows some numeral strings and their segmentation results

<figure><img src="image_12.png" /><figcaption>Fig. 10. Some examples of errors obtained by the segmentation scheme.</figcaption></figure>

obtained by the proposed approach. Fig. 10 shows some examples of connected numeral strings that are erroneously segmented by the approach. From our experiment we noticed that most of the errors came from those components where touching numerals have some common portion (like the first touching pattern shown in Fig. 9). Some errors also obtained from the double touching components.

There are many pieces of work on touching numeral segmentation. To get an idea about the performances of the earlier pieces of work and the proposed work, a performance table (see Table 3) is given. From the table it can be noted that the method due to Chen and Wang (2000) has the highest accuracy (96%) with a low rejection rate 7.8%.

Recognition-free-segmentation schemes are generally more faster than recognition-based-segmentation because a number of separation-recognition attempts must be performed before a segmentation result can be obtained in recognition-based-segmentation scheme (Ha et al., 1995). Thinning based background analysis methods (Chen and Wang, 2000; Lu et al., 1999) are time consuming because of the iterative behavior of thinning algorithms. Because of recognition-free-segmentation scheme and use of simple feature, our proposed approach is fast. We note our proposed scheme needs about 0.6 s (SUN 3/60 machine) to segment a touching numeral of size $150 \times 90$.

The drawback of the proposed method is that it will fail if there is a break point on the contour used as the boundary of a reservoir. In that case reservoir cannot get properly and hence mis-segmentation occurs. To get rid of such situations, we used the method due to Cheng and Yan (1997) to connect the broken numeral. This method can connect broken numerals with reasonable broken distance which may be obtained due to digitization
Algorithm NUM_SEGM:

Step 1: Detect best reservoir and find the touching position based on this reservoir.

Step 2: Detect touching type. If the touching is loop-loop fashion, goto to Step 5.

Step 3: Find initial points based on reservoir and find the best feature points based on CV.

Step 4: Find the best node point. For top and bottom touching straight line segmentation is done at the best node point. For the middle touching the best associated point of the best node point is detected. Segmentation is done by joining the best node point and its associate point. Stop.

Step 5: Detect start point. Segment according to the movement of starting point. Stop.

7. Results and discussion

As the main goal of the work is towards the automatic reading of French banking check we evaluate the scheme on the images of numeral strings obtained from the courtesy amount portions of French bank check. We extracted 2250 images of numeral string (two digits) and the proposed scheme was tested on these images. The segmentation result was verified manually and observed that 94.8% of the connected numerals were correctly segmented.

The rejection rate of our segmentation system was 3.4%. The main features for rejection were:

* the widths of one of the segmented part is very small compare to width of the other part;

* the length of cutting path is very long compare to the height of the touching pattern;

* no best reservoir is obtained in a touching component.

At present, no confusion stage is implemented in our segmentation scheme. In future we plan to implement it. The proposed scheme is developed for the segmentation of two digit touching components. Although the method can handle two digits touching strings it can segment single touching as well as double touching strings. Fig. 9 shows some numeral strings and their segmentation results

<figure><img src="image_11.png" /><figcaption>Fig. 10. Some examples of errors obtained by the segmentation scheme.</figcaption></figure>

obtained by the proposed approach. Fig. 10 shows some examples of connected numeral strings that are erroneously segmented by the approach. From our experiment we noticed that most of the errors came from those components where touching numerals have some common portion (like the first touching pattern shown in Fig. 9). Some errors also obtained from the double touching components.

There are many pieces of work on touching numeral segmentation. To get an idea about the performances of the earlier pieces of work and the proposed work, a performance table (see Table 3) is given. From the table it can be noted that the method due to Chen and Wang (2000) has the highest accuracy (96%) with a low rejection rate 7.8%.

Recognition-free-segmentation schemes are generally more faster than recognition-based-segmentation because a number of separation-recognition attempts must be performed before a segmentation result can be obtained in recognition-based-segmentation scheme (Ha et al., 1995). Thinning based background analysis methods (Chen and Wang, 2000; Lu et al., 1999) are time consuming because of the iterative behavior of thinning algorithms. Because of recognition-free-segmentation scheme and use of simple feature, our proposed approach is fast. We note our proposed scheme needs about 0.6 s (SUN 3/60 machine) to segment a touching numeral of size $150 \times 90$.

The drawback of the proposed method is that it will fail if there is a break point on the contour used as the boundary of a reservoir. In that case reservoir cannot get properly and hence mis-segmentation occurs. To get rid of such situations, we used the method due to Cheng and Yan (1997) to connect the broken numeral. This method can connect broken numerals with reasonable broken distance which may be obtained due to digitization
<table><caption>Table 3
Performance of various segmentation approaches</caption><thead><tr><th>Method</th><th>Data size (connected numerals)</th><th>Source of data set</th><th>Accuracy (%)</th><th>Error (%)</th><th>Rejection rate (%)</th></tr></thead><tbody><tr><td>Chen and Wang (2000)</td><td>4178</td><td>NIST</td><td>96.0</td><td>4</td><td>7.8</td></tr><tr><td>Cheriet et al. (1992)</td><td>120</td><td>From 12 people</td><td>80.8</td><td>19.2</td><td>0</td></tr><tr><td>Chi et al. (1995) (HRR)</td><td>3355</td><td>NIST</td><td>95.1</td><td>4.9</td><td>32.7</td></tr><tr><td>Chi et al. (1995) (LRR)</td><td>3355</td><td>NIST</td><td>89.2</td><td>10.8</td><td>2.8</td></tr><tr><td>Congedo et al. (1995)</td><td>Unknown</td><td>CEDAR</td><td>91.0</td><td>9.0</td><td>0</td></tr><tr><td>Lu et al. (1999) (HRR)</td><td>823</td><td>NIST</td><td>97.0</td><td>3.0</td><td>28.6</td></tr><tr><td>Lu et al. (1999) (LRR)</td><td>823</td><td>NIST</td><td>92.5</td><td>7.5</td><td>4.7</td></tr><tr><td>Oliveira et al. (2000)</td><td>900</td><td>BC</td><td>95.2</td><td>4.8</td><td>2.6</td></tr><tr><td>Shi et al. (1997)</td><td>2579</td><td>US Zip code</td><td>85.7</td><td>14.3</td><td>0</td></tr><tr><td>Zhao et al. (1997)</td><td>172</td><td>Unknown</td><td>87.2</td><td>12.8</td><td>0</td></tr><tr><td>Our approach</td><td>2250</td><td>FC</td><td>94.8</td><td>5.2</td><td>3.4</td></tr></tbody></table>

Here, BC = Brazilian bank check, FC = French bank check, LRR = Low rejection rate, HRR = High rejection rate.

of poor documents. We noticed that number of numerals with large broken part is rare. If there is a large broken digit our method will fail to handle it.

## 8. Conclusion

A recognition-free scheme for numeral string classification and touching digits segmentation is proposed here. A new technique is based on the concept of water reservoir. We believe the water reservoir based concept proposed here will be helpful to the people of pattern recognition community to solve other problems. No normalization or thinning mechanism is used in our scheme. From the experiment on French bank check data, encouraging results have been obtained by the system. At present, the scheme handles two digit touching components. In next studies we plan to develop a more general system to handle touching patterns of three or more numerals. Also, we plan to test our system on NIST database.

## References

* Casey, R.G., Lecolinet, E., 1996. A survey of methods and strategies in character segmentations. IEEE Trans. Pattern Anal. Machine Intell. 18, 690-706.

* Chen, Y.-K., Wang, J.-F., 2000. Segmentation of single- or multiple-touching handwritten numeral string using background and foreground analysis. IEEE Trans. Pattern Anal. Machine Intell. 22, 1304-1317.

* Cheng, D., Yan, H., 1997. Recognition of broken and noisy handwritten characters using statistical methods based on a broken character-mending algorithm. Opt. Eng. 36, 1465-1479.

* Cheriet, M., Huang, Y.S., Suen, C.Y., 1992. Background region based algorithm for the segmentation of connected digits. In: Proc. 11th Internat. Conf. on Pattern Recognition, Vol. 3, pp. 619-622.

* Chi, Z., Suters, M., Yan, H., 1995. Separation of single and double touching handwritten numeral strings. Opt. Eng. 34, 1159-1165.

* Congedo, G., Dimauro, G., Impedovo, S., Pirlo, G., 1995. Segmentation of numeric string. In: Proc. Third Internat. Conf. on Document Analysis and Recognition, pp. 1038-1041.

* Dimauro, G., Impedovo, S., Pirlo, G., Salzo, A., 1997. Automatic bankcheck processing: A new engineered system. In: Impedovo, S., Wang, P.S.P., Bunke, H. (Eds.), Automatic Bank Check Processing. World Scientific, pp. 5-42.

* Fenrich, R., 1991. Segmentation of automatically located handwritten words. In: Proc. Second Internat. Workshop on Frontiers on Handwriting Recognition, pp. 33-44.

* Fujisawa, H., Nakano, Y., Kurino, K., 1992. Segmentation methods for character recognition from segmentation to document structure analysis. Proc. IEEE 80, 1079-1092.

* Ha, T.M., Niggeler, D., Bunke, H., 1995. A system for segmenting and recognising totally unconstrained handwritten numeral strings. In: Proc. Third Internat. Conf. on Document Analysis and Recognition, pp. 1003-1009.

* Hu, J., Yu, D., Yan, H., 1999. Construction of partitioning paths for touching handwritten characters. Pattern Recognition Lett. 20, 293-303.

* Kim, K.K., Kim, J.H., Suen, C.Y., 2000. Recognition of unconstrained handwritten numeral strings by composite segmentation method. In: Proc. 15th Internat. Conf. on Pattern Recognition, pp. 594-597.

* Knerr, S., Anisimov, V., Baret, O., Gorski, N., Price, D., Simon, J.C., 1997. The A2iA intercheque system: Courtesy amount and legal amount recognition for French checks. In:
<table><caption>Table 3
Performance of various segmentation approaches</caption><thead><tr><th>Method</th><th>Data size (connected numerals)</th><th>Source of data set</th><th>Accuracy (%)</th><th>Error (%)</th><th>Rejection rate (%)</th></tr></thead><tbody><tr><td>Chen and Wang (2000)</td><td>4178</td><td>NIST</td><td>96.0</td><td>4</td><td>7.8</td></tr><tr><td>Cheriet et al. (1992)</td><td>120</td><td>From 12 people</td><td>80.8</td><td>19.2</td><td>0</td></tr><tr><td>Chi et al. (1995) (HRR)</td><td>3355</td><td>NIST</td><td>95.1</td><td>4.9</td><td>32.7</td></tr><tr><td>Chi et al. (1995) (LRR)</td><td>3355</td><td>NIST</td><td>89.2</td><td>10.8</td><td>2.8</td></tr><tr><td>Congedo et al. (1995)</td><td>Unknown</td><td>CEDAR</td><td>91.0</td><td>9.0</td><td>0</td></tr><tr><td>Lu et al. (1999) (HRR)</td><td>823</td><td>NIST</td><td>97.0</td><td>3.0</td><td>28.6</td></tr><tr><td>Lu et al. (1999) (LRR)</td><td>823</td><td>NIST</td><td>92.5</td><td>7.5</td><td>4.7</td></tr><tr><td>Oliveira et al. (2000)</td><td>900</td><td>BC</td><td>95.2</td><td>4.8</td><td>2.6</td></tr><tr><td>Shi et al. (1997)</td><td>2579</td><td>US Zip code</td><td>85.7</td><td>14.3</td><td>0</td></tr><tr><td>Zhao et al. (1997)</td><td>172</td><td>Unknown</td><td>87.2</td><td>12.8</td><td>0</td></tr><tr><td>Our approach</td><td>2250</td><td>FC</td><td>94.8</td><td>5.2</td><td>3.4</td></tr></tbody></table>

Here, BC = Brazilian bank check, FC = French bank check, LRR = Low rejection rate, HRR = High rejection rate.

of poor documents. We noticed that number of numerals with large broken part is rare. If there is a large broken digit our method will fail to handle it.

## 8. Conclusion

A recognition-free scheme for numeral string classification and touching digits segmentation is proposed here. A new technique is based on the concept of water reservoir. We believe the water reservoir based concept proposed here will be helpful to the people of pattern recognition community to solve other problems. No normalization or thinning mechanism is used in our scheme. From the experiment on French bank check data, encouraging results have been obtained by the system. At present, the scheme handles two digit touching components. In next studies we plan to develop a more general system to handle touching patterns of three or more numerals. Also, we plan to test our system on NIST database.

## References

* Casey, R.G., Lecolinet, E., 1996. A survey of methods and strategies in character segmentations. IEEE Trans. Pattern Anal. Machine Intell. 18, 690-706.

* Chen, Y.-K., Wang, J.-F., 2000. Segmentation of single- or multiple-touching handwritten numeral string using background and foreground analysis. IEEE Trans. Pattern Anal. Machine Intell. 22, 1304-1317.

* Cheng, D., Yan, H., 1997. Recognition of broken and noisy handwritten characters using statistical methods based on a broken character-mending algorithm. Opt. Eng. 36, 1465-1479.

* Cheriet, M., Huang, Y.S., Suen, C.Y., 1992. Background region based algorithm for the segmentation of connected digits. In: Proc. 11th Internat. Conf. on Pattern Recognition, Vol. 3, pp. 619-622.

* Chi, Z., Suters, M., Yan, H., 1995. Separation of single and double touching handwritten numeral strings. Opt. Eng. 34, 1159-1165.

* Congedo, G., Dimauro, G., Impedovo, S., Pirlo, G., 1995. Segmentation of numeric string. In: Proc. Third Internat. Conf. on Document Analysis and Recognition, pp. 1038-1041.

* Dimauro, G., Impedovo, S., Pirlo, G., Salzo, A., 1997. Automatic bankcheck processing: A new engineered system. In: Impedovo, S., Wang, P.S.P., Bunke, H. (Eds.), Automatic Bank Check Processing. World Scientific, pp. 5-42.

* Fenrich, R., 1991. Segmentation of automatically located handwritten words. In: Proc. Second Internat. Workshop on Frontiers on Handwriting Recognition, pp. 33-44.

* Fujisawa, H., Nakano, Y., Kurino, K., 1992. Segmentation methods for character recognition from segmentation to document structure analysis. Proc. IEEE 80, 1079-1092.

* Ha, T.M., Niggeler, D., Bunke, H., 1995. A system for segmenting and recognising totally unconstrained handwritten numeral strings. In: Proc. Third Internat. Conf. on Document Analysis and Recognition, pp. 1003-1009.

* Hu, J., Yu, D., Yan, H., 1999. Construction of partitioning paths for touching handwritten characters. Pattern Recognition Lett. 20, 293-303.

* Kim, K.K., Kim, J.H., Suen, C.Y., 2000. Recognition of unconstrained handwritten numeral strings by composite segmentation method. In: Proc. 15th Internat. Conf. on Pattern Recognition, pp. 594-597.

* Knerr, S., Anisimov, V., Baret, O., Gorski, N., Price, D., Simon, J.C., 1997. The A2iA intercheque system: Courtesy amount and legal amount recognition for French checks. In:
Impedovo, S., Wang, P.S.P., Bunke, H. (Eds.), Automatic Bank Check Processing. World Scientific, pp. 43–86.

Lethelier, E., Leroux, M., Gilloux, M., 1995. An Automatic Reading System for Handwritten Numeral Amounts on French Checks. In: Proc. Third Internat. Conf. on Document Analysis and Recognition, pp. 92–97.

Lu, Z., Chi, Z., Siu, W., Shi, P., 1999. A background-thinning based approach for separating and recognizing connected handwritten digit strings. Pattern Recognit. 32, 921–933.

Oliveira, L.S., Lethelier, E., Bortolozzi, F., Sabourin, R., 2000. A new approach to segment handwritten digits. In: Proc. Seventh Internat. workshop on Frontiers in Handwriting Recognition, pp. 577–582.

Shi, Z., Srihari, S.N., Shin, Y., Ramanaprasad, V., 1997. A system for segmentation and recognition of totally unconstrained handwritten numeral string. In: Proc. Fourth

Internat. Conf. on Document Analysis and Recognition, pp. 455–458.

Strathy, N.W., Suen, C.Y., 1995. A new system for reading handwritten Zip codes. In: Proc. 3rd Internat. Conf. on Document Analysis and Recognition, Vol. 1, pp. 74–77.

Westall, J.M., Narasimha, M.S., 1993. Vertex directed segmentation of handwritten numerals. Pattern Recognit. 26, 1473–1486.

Yu, D., Yan, H., 1998. Separation of single-touching handwritten numeral strings based on structural features. Pattern recognit. 31, 1835–1847.

Zhao, B., Su, H., Xia, S., 1997. A new method for segmenting unconstrained handwritten numeral string. In: Proc. 4th Internat. Conf. on Document Analysis and Recognition, pp. 524–527.
Impedovo, S., Wang, P.S.P., Bunke, H. (Eds.), Automatic Bank Check Processing. World Scientific, pp. 43–86.

Lethelier, E., Leroux, M., Gilloux, M., 1995. An Automatic Reading System for Handwritten Numeral Amounts on French Checks. In: Proc. Third Internat. Conf. on Document Analysis and Recognition, pp. 92–97.

Lu, Z., Chi, Z., Siu, W., Shi, P., 1999. A background-thinning based approach for separating and recognizing connected handwritten digit strings. Pattern Recognit. 32, 921–933.

Oliveira, L.S., Lethelier, E., Bortolozzi, F., Sabourin, R., 2000. A new approach to segment handwritten digits. In: Proc. Seventh Internat. workshop on Frontiers in Handwriting Recognition, pp. 577–582.

Shi, Z., Srihari, S.N., Shin, Y., Ramanaprasad, V., 1997. A system for segmentation and recognition of totally unconstrained handwritten numeral string. In: Proc. Fourth

Internat. Conf. on Document Analysis and Recognition, pp. 455–458.

Strathy, N.W., Suen, C.Y., 1995. A new system for reading handwritten Zip codes. In: Proc. 3rd Internat. Conf. on Document Analysis and Recognition, Vol. 1, pp. 74–77.

Westall, J.M., Narasimha, M.S., 1993. Vertex directed segmentation of handwritten numerals. Pattern Recognit. 26, 1473–1486.

Yu, D., Yan, H., 1998. Separation of single-touching handwritten numeral strings based on structural features. Pattern recognit. 31, 1835–1847.

Zhao, B., Su, H., Xia, S., 1997. A new method for segmenting unconstrained handwritten numeral string. In: Proc. 4th Internat. Conf. on Document Analysis and Recognition, pp. 524–527.