Vous êtes sur la page 1sur 8

http://www.sayens.

org




.
info@sayens.org

An Intelligent Scanner with Handwritten Odia
Character Recognition Capability

Sukadev Meher
National Institute of Technology, Rourkela
Rourkela-769008, Odisha, India
Email: sukadevmeher@gmail.com
Debasish Basa
Seemanta Engineering College
Mayurbhanj-757086, Odisha, India
Email: debasishbasa@gmail.com



AbstractCharacter recognition plays an important role in
the modern world. It can solve more complex problems and
make humans job easier. Difficulties in recognition of
handwritten text in Indian scripts include extreme cursiveness
in their handwritten form due to the presence of vowel
modifiers and compound characters. Here we propose a
simple yet robust structural solution for recognizing
handwritten characters in Odia (the official language of
Odisha, a state in Republic of India). In the proposed
system, a given text is segmented into lines and then each
line is segmented into individual words and then each word is
segmented into individual characters or basic symbols.
Basic symbols are identified as the fundamental units of
segmentation used for recognition. All the characters are
divided into two groups (Group-I and Group-II) according
to the property i.e. whether a vertical line is present or
absent at the right-most part. All the characters of the two
groups are resized into 2014 pixels, which are directly
subjected to train the two neural networks (one for Group-
I and another for Group-II). Using the proposed system we
have found better result for proper recognition rate as
compared to other methods. The proposed sensing system is
also found to be efficient in compressing the script data
quite efficiently.
Keywords: Intelligent sensor, intelligent scanner, com-
pressed sensing, handwritten Odia character recognition, spa-
tial features, neural networks.
I. INTRODUCTION
Odia is one of the oldest and popular languages of India,
spoken by more than 44 million people, especially in Odisha,
India. Some characters in Odia are made up of more than
one connected symbols. Compound characters are written by
associating modifiers with consonants, resulting in a huge
number of possible combinations, running into hundreds of
thousands. During the past thirty years, substantial research
efforts have been devoted to character recognition that is used
to translate human readable characters to machine readable
codes. An immense effort has been spent on character recog-
nition, because it provides a solution for processing large
volumes of data automatically in a large variety of scientific
and business applications [1].
For digitalized analysis of handwriting, first script is con-
verted into digital form by scanning the written paper with the
help of an optical scanner as shown in Fig. 1. To eliminate or
reduce the effect of illumination variation, mechanical jerks
and electronic noise, some preprocessing tasks on the scanned
image are carried out. These tasks may include image






Fig. 1. Intelligent sensing system for handwritten character recognition

denoising, binarization, homomorphic filtering and
morphological operations. Once the image is properly enhanced
and restored, it is then processed by the character recognition
algorithms proposed for handwritten Odia language. Finally,
the sensing system yields encoded message for each character
recognized instead of giving an output of 2-D image block of
size 2014 pixels or 4020 pixels (if the inter-line space and
inter- character space are taken into consideration).
Thus the proposed sensing system is intelligent enough to
recognize the characters and is able to compress the data
drastically that makes the storage, transmission and next level
processing very effective and efficient. The proposed system
comes out to be an intelligent and compressive sensor.
In this paper offline handwritten Odia character recognition
system using spatial features and neural networks is proposed.
All the characters are resized into 2014 pixels after classify
into two groups. Each resize character has 280 pixels and these
pixels are taken as features for training the neural networks [2].
Here we are using two feed forward back propagation neural
networks for performing classification and recognition tasks.
Thus our proposed system acts as two brain system which can
also increase the recognition accuracy.
Rest of the paper is organized as follows. Section-II de-
scribes character extraction. In Section-III, character classifi-
cation and in Section-IV artificial neural network is explained.
The experiments and results are discussed in Section-V. Finally
conclusion of the paper is given in Section-VI.


II. CHARACTER EXTRACTION

In this section of character extraction, the properties of
Odia characters, preprocessing tasks to be carried out on
the 2-D image and the required segmentation schemes (line
segmentation / word segmentation / character segmentation)
are discussed.
2011 Fifth International Conference on Sensing Technology
978-1-4577-0167-2/11/$26.00 2011 IEEE 53
*** www.sayens.org . ***
A. Odia literature
The number of characters in Odia is large. Two or more
characters may combine to form a compound character, as a
result the total number of characters to be recognized is more
than 500.
Properties of Odia Characters: The properties of the Odia
characters that are useful for building the character recognition
are discussed, in short, below.
1) The Odia basic characters consist of 12 vowels and 39
consonants which are shown in tables: Table-I and
Table- II. As in other Indian scripts, the concept of
upper lower case is not there.

Table I: Odia Vowels



Table II: Odia Consonants






2) The first vowel is never printed after a consonant in a
word and can occur only at the beginning of a word.
3) A vowel (other than the first one) following a consonant
takes some modified shape as shown in Table-III. De-
pending on the vowel, this modified shape is placed to
the left, right (or on both sides), top or bottom of the
consonant. The modified shapes are called modifiers or
allograph [3]. The vowel allograph do not disturb the
shape of the basic characters to which they are attached.

Table III: Modified vowels attached to the first consonant and some
commonly occurring compound characters





4) If the shape of the basic character is altered by
combining two or more consonants, the resultant
shape is termed as compound character. In some cases, a
consonant preceding or following another consonant is
represented by a modifier called consonant modifier.

B. Preprocessing
It is necessary to perform several document analysis
operations prior to recognition of text in scanned document.
The common operations are:
1) Thresholding: The simplest method of gray level
reduction is thresholding. We select a threshold gray level and
set everything above that value equal to 1(255 for 8 bit
data) and everything at or below the threshold equal to 0.
This effectively turns a gray level image into a binary (two-
level) image [4]. A proper threshold value may be selected
from the histogram of the 2-D image.
2) Noise Reduction: Digital image can have noise,
introduced from the scanning devices and/or transmission
medium. In order to achieve an accurate result, all non-
word data must be removed. There are three common types of
noise in handwriting known as: background noise, shadow
noise and salt and pepper noise. Smoothing operations are
often used to eliminate the artifacts introduced during the
image capture. Two main approaches of noise reduction are:
Filter by masking.
Morphological Operations i.e by erosion, dilation.

3) Image Segmentation: Character segmentation is a two
stage segmentation process in which the subscripts of the
word are removed first and then the individual characters are
segmented. Image Segmentation plays a crucial role in Char-
acter Recognition. If one views an image as depicting a scene
composed of different objects and regions, then segmentation
is the decomposition of an image into these objects and regions
by associating or labeling each pixel with the object that it
corresponds to. There are two types of segmentation:
54
*** www.sayens.org . ***

Implicit Segmentation: The words are recognized entirely
without segmenting them into letters. This is most effec-
tive and viable only when the set of possible words is
small and known in advance, such as the recognition of
bank checks and postal address.
Explicit Segmentation: In explicit approaches one tries
to identify the smallest possible word segments (primitive
segments) that may be smaller than letters, but surely can-
not be segmented further. Later in the recognition process
these primitive segments are assembled into letters based
on input from the character recognizer. The advantage of
this strategy is that it is robust and quite straightforward,
but is not very flexible.
a) Line Segmentation: The handwritten text must be divided
first into lines. As the text is a binary image that means the
Odia character is white (pixel value is 1) whereas the back-
ground is black (pixel value 0). To distinguish lines of a text,
there is a horizontal space between them. The pixels value of
horizontal space is 0. This spacing between the lines is used
for line segmentation. So we have to crop only the connecting
rows (at least one of the pixel value of the row is 1) as shown
in Fig. 2.


(a) (b)

(c) (d) (e)

Fig. 2. (a) Odia handwritten text (b) Binarized and inverted image of
handwritten text (c) First line (d) Second line and (d) Third line of
handwritten text after line segmentation

b) Word Segmentation: For Odia script, spacing between the
words is greater than the spacing between the characters in
a word. This spacing between the words is used for word
segmentation. The spacing between the words is found by
taking the Vertical Connecting Pixel (VCP) of an input text
line. VCP is the sum of ON pixels along every column of the
image. In VCP, the width of the zero-valued valleys is more
between the words in the line when compared to the width
of zero-valued valleys that exists between the characters in
a word. This information is used to separate words from the
input text lines as shown in Fig. 3.
c) Character Segmentation: We know that Odia is a non-
cursive script. So spacing between the characters in a word
is used for character segmentation as shown in Fig. 4. For
word segmentation also VCP is used. Once the characters are
properly segmented, they are re-scaled to a pre-defined size


(a) (b)

Fig. 3. (a) First word and (b) Second word of first line


(a) (b) (c)

Fig. 4. (a) First character, (b) Second character and (c) Third character
of first word


of 2014 pixels, each pixel being represented by a bit and
are passed to the next stage of character classification which
is described in the next section.

III. CHARACTER CLASSIFICATION
In Odia, some characters contain a vertical line at the right
most part. According to this property all the characters are
divided into two groups.
Group I- A vertical line is not present at the right-
most- side as shown in Fig. 5.
Group II- A vertical line is present at the right-most-
side as shown in Fig. 6.



Fig. 5. Group-I Characters





Fig. 6. Group-II Characters


In Odia handwritten characters, the vertical line takes typically
20% out of the total width at the right most part. So in our
work we have cropped only that portion of vertical line for
detection. The flow chart for finding Group-I and Group-II
characters is shown in Fig. 7. If all the rows of cropped image
contain at least a non-zero element, than it is called vertical
line is present. But most of the times vertical line is not ex-
actly straight. So for this case we have to calculate the number
of connecting rows. If the number of connecting rows is more
than 65% of the total number of rows of the handwritten
character, then it is considered as a vertical line. The pixel
connectedness is checked from top to bottom of the cropped
image. Sometimes the connectedness is not greater than 65%.
For these cases we have to rotate it through 180 degree and
calculate the connectedness [1]. If the connectedness is not
greater than 65% then we assume that there is no vertical line.
Let us consider an example shown in Fig.8. Fig.8(a) shows a
55
*** www.sayens.org . ***
Inference System (ANFIS) etc. These are capable of mapping
the input and output nonlinearly [6].

A. Multi-Layer Perceptron (MLP)
In the multilayer neural network or multilayer perceptron
(MLP), the input signal propagates through the network in
a forward direction on a layer-by-layer basis. This network
has been applied successfully to solve some difficult and
diverse problems by training in a supervised manner with a
highly popular algorithm known as the error back-propagation
algorithm [7-9]. Such a network is shown in Fig. 9.










Fig. 7. Flow chart for finding Group-I and Group-II characters



character whose right-most-side vertical line is cropped and
shown in Fig.(b). Only non zero elements are further cropped
and shown in Fig.(c).


(a) (b) (c)

Fig. 8. (a) Odia Handwritten KHA Character of size 100100, (b)
Cropped image of size 10020 and (c) Cropped image of only non-
zero elements


IV. NEURAL NETWORK

A neural network is an interconnected assembly of simple
processing elements, units of nodes, whose functionality is
loosely based on the animal neuron. In general, Artificial
Neural Network(ANN) is a highly interconnected network of
a large number of processing elements called neurons in an
architecture inspired by the brain. ANN can be massively
parallel and therefore is said to exhibit parallel distributed
processing. The processing ability of the network is stored
in the inter-unit connection strengths or weights obtained by
a process of adaption to or learning from a set of training
patterns [5].
Neural Networks (NNs) are mathematical models, mimicing
the biological model of a neuron. These models have a wide
range of architectures and learning methods or learning rules.
Based on the different neural architecture of human brain,
different Artificial Neural Algorithms are developed such as
Artificial Neural Network (ANN), Multi-Layer Perceptron
(MLP), Radial Basis Function (RBF), Adaptive Neuro Fuzzy



Fig. 9. Multilayer perceptron Network (MLPN)


B. The Back Propagation Algorithm
The basic algorithm loop structure is,

initialize weights
repeat
for each training pattern
train on that pattern
end for loop
until the error is acceptably low

The weight updating formula for BPN with momentum is,

v
ij
(t + 1) = v
ij
(t) +
j
x
i
+ [v
ij
(t) v
ij
(t 1)] (1)

w
jk
(t + 1) = w
jk
(t) +
k
z
j
+ [w
jk
(t) w
jk
(t 1)] (2)

where
v
ij
= weights between input and hidden layer
w
jk
= weights between hidden and output layer
z
j
= hidden unit j
y
k
= output unit k
= learning rate
= momentum factor

k
= error at output unit y
k

j
= error at hidden unit z
j

V. EXPERIMENTS AND RESULTS
Hundred samples of handwritten characters are collected
from 10 persons, 10 samples from each person to train the
neural network. Here we are using two neural networks i.e.
one for Group-I characters and another for Group-II characters.
Both the networks have only one hidden layer. Before training
the characters belong to Group-I and Group-II with neural
network, some preprocessing operations are performed on the
characters. The operations are:
Input
Input Layer
Hidden Layer
Output Layer
Output
56
*** www.sayens.org . ***
1) Using thinning operation the thickness of the character
is reduced up to one pixel. Fig. 10 shows an example of
Odia KA character whose thickness is one pixel.



Fig. 10. Odia KA character which is thinned up to one pixel thickness


2) Using interpolation operation the thinned Odia character
image is resized to 2014 pixels.
3) All the 0 valued pixel is converted to -1. Fig.11 shows
the thinned Odia KA character of size 2014 where
the 0 valued pixel is converted to -1.



Fig. 11. Odia KA character where 0 pixel value is converted to -1

After performing the preprocessing operations, all the
characters of Group-I and Group-II are used for training
the two neural networks. The target vectors for all characters
are computed and are illustrated in tables: Table-IV and Table-
V. Table-IV is meant for Group-I characters whereas
Table-V illustrates the target vectors for Group-II characters.

A. Training

The networks employed here, to be trained for Group-I
characters and Group-II characters, have the following
parameter values.

Number of individual characters for Group-I = 28
Number of individual characters for Group-II = 20
Number of images per character = 100 (10 persons of each
10 characters)
Image size = 2014
Number of input vectors = 280
Number of hidden units = 100
Number of output units = 6
Activation function used:
input and hidden layer = Log-Sigmoid
output layer = Symmetrical hard limit


Momentum () = 0.009
Learning rate () =0.8

B. Observation

The training error decreases with increase in number of
epochs. The error vs. epoch curves for Group-I and Group-
II are shown in Fig. 12 and Fig. 13 respectively.

Table- VI: Target vectors for Group-I characters






































Fig. 12. Error vs. epoch for Group-I

Odia Character Target Vector
I -1 -1 -1 -1 1 -1
II -1 -1 -1 -1 1 1
U -1 -1 -1 1 -1 -1
UU -1 -1 -1 1 -1 1
VOCALIC R -1 -1 -1 1 1 -1
VOCALIC RR -1 -1 -1 1 1 1
O -1 -1 1 -1 1 -1
KA -1 -1 1 1 -1 -1
NGA -1 1 -1 -1 -1 -1
CA -1 1 -1 -1 -1 1
CHA -1 1 -1 -1 1 -1
JA -1 1 -1 -1 1 1
JHA -1 1 -1 1 -1 -1
NYA -1 1 -1 1 -1 1
TTA -1 1 -1 1 1 -1
TTHA -1 1 -1 1 1 1
DDA -1 1 1 -1 -1 -1
DDHA -1 1 1 -1 -1 1
TA -1 1 1 -1 1 1
DA -1 1 1 1 -1 1
NA -1 1 1 1 1 1
BA 1 -1 -1 -1 1 -1
BHA 1 -1 -1 -1 1 1
RA 1 -1 -1 1 1 -1
LLA 1 -1 -1 1 1 1
WA 1 -1 1 -1 -1 -1
HA 1 -1 1 1 -1 -1
LA 1 -1 1 1 1 1
57
*** www.sayens.org . ***
Table- V: Target vectors for Group-II characters






























Fig. 13. Error vs. epoch for Group-II

C. Testing

Once the networks are trained, they are tested with new data
sets. The proposed networks demonstrate very good
performance of classifying Odia character recognition very
effectively. The following results are obtained.

Recognition rate for trained image = 100%
Proper recognition rate for Group-I test image = 90.7%
Proper recognition rate for Group-II test image = 92%
Overall proper recognition rate = 91.24%
Compression Ratio = (2014):1 = 280 [if only the pixel
region is considered]
Compression Ratio = (4020):1 = 800 [considering the inter-
word and inter-line spaces in the script]



Overall Compression Ratio = 1000 (typical) [considering the
margin spaces in a script]


Table-VI: Recognition success

Sl. No. Method proposed by Recognition Rate
1. J.Pradeep, E.Srinivasan and
S.Himavathi [2]
90.19%
2. U.Pal, N.Sharma and F.Kimuru [10] 91.11%
3. Proposed method 91.24%



VI. CONCLUSION


The proposed BPNN based system for recognition of hand-
written Odia characters gives satisfactory result as compared
to other methods as shown in Table-VI. The results reported
by U.Pal, N.Sharma and F.Kimuru [10] used quadratic
classifier based on features obtained mainly from directional
chain code information, whereas J.Pradeep, E.Srinivasan and
S.Himavathi [2] used neural network with 100 hidden neurons.

By reducing the number of input vectors to the neural
network, the computation time decreases and the structure of
BP neural network becomes much simpler. The system
gives different training and testing results for each
character. From Fig.12 and Fig.13 it is observed that more
epochs give less error for which recognition rate improves.
Thus more training data and more epochs may improve
robustness and proper recognition rate. The system is
observed to be a very nice compressive sensor with a yield of
compression ratio as high as 1000. This makes the system
truly an intelligent and efficient compressive sensor that may
be quite useful in government establishments for keeping
records in digital form.



REFERENCES

1] D.Basa and S.Meher, Handwritten Odia Character Recognition,
National Conference on Recent Advances in Microwave Tubes, Devices
and Communication Systems , JNIT Jaipur, 4-5 March 2011.
[2] J.Pradeep, E.Srinivasan and S.Himavathi, Neural network based hand-
written character recognition system without feature extraction,
International Conference on Computer, Communication and Electrical
Technology(ICCCET), March 18-19 2011.
[3] U. Pal, B. B. Chaudhuri and M. Mitra,Automatic recognition of printed
oriya script, 6th Int. Conf. Document Analysis and Recognition
(ICDAR01), pages 795 799, August 12-17 2001.
[4] Southern LLLnois University Edwardsville Scott E Umbaugh, Digital
Image Analysis and Processing. CRC Press, 2005.
[5] Kevin Gurney, An Introduction to Neural Networks. CRC Press, 1997.




Odia Character Target Vector
A -1 -1 -1 -1 -1 -1
AA -1 -1 -1 -1 -1 1
E -1 -1 1 -1 -1 -1
AI -1 -1 1 -1 -1 1
AU -1 -1 1 -1 1 1
KHA -1 -1 1 1 -1 1
GA -1 -1 1 1 1 -1
GHA -1 -1 1 1 1 1
NNA -1 1 1 -1 1 -1
THA -1 1 1 1 -1 -1
DHA -1 1 1 1 1 -1
PA 1 -1 -1 -1 -1 -1
PHA 1 -1 -1 -1 -1 1
MA 1 -1 -1 1 -1 -1
YA 1 -1 -1 1 -1 1
SHA 1 -1 1 -1 -1 1
SA 1 -1 1 -1 1 -1
SSA 1 -1 1 -1 1 1
KHYA 1 -1 1 1 -1 1
YYA 1 -1 1 1 1 -1
58
*** www.sayens.org . ***
[6] B.K Verma, Handwritten hindi character recognition using multilayer
perceptron and radial basis function neural network IEEE International
Conference on Neural Network.
[7] Anita Pal and Dayashankar Singh, Handwritten english character
recognition using neural network, International Journal of Computer
Science and Communication, pages 141 144, July-December 2010.
[8] Chunheng Wang, Minhua Li and Ruwei Dai, Unconstrained handwritten
character recognition based on wedf and multilayer neural network
Proceedings of the 7th World Congress on Intelligent Control and
Automation, Chongqing, China, June 25 - 27 2008.
[9] Le Cun, B. Boser, J. S. Denker, D. Henderson, R. E. Howard, W. Hubbard,
and L. D. Jackel Handwritten digit recognition with a back-propagation
Network, Advances in Neural Information Processing Systems, pages
396404. Morgan Kaufmann, 1990.
[10] U.Pal, N.Sharma and F.Kimuru, Oriya offline handwritten character
recognition Proc. International conference on Advances in Pattern
Recognition, pp. 123-128, 2007.


59
*** www.sayens.org . ***

Vous aimerez peut-être aussi