Journal of Computer Science 5 (6): 427-434, 2009 ISSN 1549-3636
© 2009 Science Publications Cxorresponding Author: Saleh Ali K. Al-Omari, School of Computer Sciences, University Sains Malaysia, 11800 Penang,
Malaysia
427
Digital Recognition using Neural Network
Saleh Ali K. Al-Omari, Putra Sumari, Sadik A. Al-Taweel and Anas J.A. Husain
School of Computer Sciences, University Sains Malaysia,
11800 Penang, Malaysia
Abstract: Problem statement: Handwriting number recognition is a challenging problem rearchers had been rearch into this area for so long especially in the recent years. In our study there are many fields concern with numbers, for example, checks in banks or recognizing numbers in car plate
s, the subject of digit recognition appears. A system for recognizing isolated digits may be as an approach for dealing with such application. In other words, to let the computer understand the Arabic numbers that is written manually by urs and views them according to the computer process. Scientists and engineers with interests in image processing and pattern recognition have developed various approaches to deal with handwriting number recognition problems such as, minimum distance, decision tree and statistics. Approach: The main objective for our system was to recognize isolated Arabic digits exist in different applications. For example, different urs had their own handwriting styles where here the main challenge falls to let computer system understand the different handwriting styles and recognize them as standard writing. Result: We prented a system for dealing with such problem. The system started by acquiring an image containing digits, this image was digitized using some optical devices and after applying some enhancements and modifications to the digits within the image it can be recognized using feed forward back propagation algorithm. The studies were conducted on the Arabic handwriting digits of 10 independent writers who contributed a total of 1300 isolated Arabic digits the digits divided into two data ts: Training 1000 digits, testing 300 digits. An overall accuracy meet using this system was 95% on the test data t ud. Conclusion: We developed a system for Arabic handwritten recognition. And we efficiently choo a gmentation method to fit our demands. Our system successfully designs and implement
a neural network which efficiently go without demands, after that the system are able to understand the Arabic numbers that was written manually by urs.
Key words: Neural network, ANN, gmentation, digital recognition, feed forward back propagation
algorithm
INTRODUCTION
Recently, a lot of works was done by depending on the computer; In order to let the processing time to be reduced and to provide more results that are accurate, for example, depending on different types of data, such as characters and digits and the numbers are ud frequently in normal life operation. In order to automate systems that deal with numbers such as postal code, banking account numbers and numbers on car plates. And an automatic recognition number system is propod in this study. Digit recognition has been extremely found and studied. Various approaches in image processing and pattern recognition have been developed by scientists and engineers to solve this problem [1,16]. That is becau
it has an importance in veral fields and it may probably be ud in checks in banks or for recognizi
ng numbers in cars plates, or many other application. In this study, system for recognized of digits is built, which may benefit various fields, the system concerning on isolated digits, the input is considered to be an image of specific size and format, the image is procesd and then recognized to result of an edited digits. The propod system recognizes isolated Arabic digits as the system acquire an image consisting digits, then, the image will be procesd into veral phas such as image enhancement, thinning, skeletonaization and gmentation before recognizing the digit. A multilayer neural network will be ud for the recognition pha; a feed forward back propagation
algorithm will be applied for training the network and finally change them into numeral text[2].
Related work: Pattern recognition is an area of study that is well-established and known through years of rearch, especially in the field of digit recognition which is considered one of the obvious challenges and one of the significant contributors to digit recognition. However, Arabic digits recognition is considered the recent major areas that attract rearcher's attention. Arabic digits recognition attracts rearchers into mainly two areas; first, a hierarchical division of the input letter space to easily solve the problem. Second, a heuristically defined rule for classification or feature lection, which is depend on both the writer and the written material (data).
Experiments were done by Jurgen Frank for the polynomial classifier approach. There are three classifiers; the first one is simple and linear. It was efficiently built and successfully tested for the purpo of obtaining a reference point for different data t. Accordingly, the performance is improved by depending on veral sophisticated polynomial structures. The cond classifier compris the effects of extracting the feature which are demonstrated with the Karhunce-loeve transformation and some results iterative learning were mentioned to be provided. The third classifier compris the fixed classifier approach for various structure kinds of the classifier system on the same data t. As a result, the performance effects were demonstrated, the efforts and supporting of the different systems in the training and testing stage are shown in[3].
Alceu de Britto et al.[4] propod an approach for recognizing the handwritten numeral strings that relies on the two-stage HMM-bad method. The possible loss of recognition performance is returned by the method that is caud by the necessary trade-off between recognition and gmentation in an implicit gmentation-bad strategy. In the first pha of the gmentation process, implicit gmentation process concerns contextual information in the n of providing multiple gmentation-recognition hypothes for a mentioned preprocesd string is taken. In the cond pha, the hypothes are re-ranked and verified in a by performing an isolation for the di
git classifier. An experiment on 12,802 handwritten numeral strings of different lengths has been conducted to proof that the dependence of the two-stage recognition strategy is a promising approach. An average improvement of 9.9% was for the verification stage on the string recognition rate. A recognition rate of 89.6% on touching digit pairs was obtained by this method.
Genetic programming techniques for hand written digits recognition was applied by[15] on the USPS data t. Some variations appears on the lection and evolution methods which normally ud accompanied by genetic programming systems such as aged members, directed crossover, inter-output crossover and node mutation. This genetic approach shows a promising result where the accuracy rate reaches 84.3% using inter-output crossover using 19 features.
An approach to recognize a bank cheque amount that is manually typed on a bank cheque was propod by[5]. Several splitting algorithms that achieve a better gmentation for the individual digits where obtained. As a result, a designation for the system was done in order to have the most likely one first; if it fails, it us different techniques. By using the neural network architecture which employs a group of four neural networks of various types that are applicable in parallel to reduce the chances of incorrect readings, the digits classified. The data ud for training the neural network consists of 3103 real cheques and 1444 gments for accuracy. The overall accuracy using MLP ne
洪恩岩ural network was about 85%.
An Optical Character Recognition (OCR) framework was developed by[6]. It depends on the hand-printed numeric recognition field. From the VISA credit card application forms, the numeric fields were taken from binary images. Individual identity telephone numbers and other numbers were contained in the image. The propod OCR framework is considered to be as a cascaded neural network. It contains three stages; the first stage is the lf-organizing feature map algorithm. The cond stage maps distance values to the values of allograph membership by using a gradient descent learning algorithm. The third stage is a network of multi-layer feed-forward. Experiments were efficiently performed on a test data t from the CCL/ITRI databa which contains above 90,390 handwritten numeric digits. A test recognition rate of 98.85% was achieved by this experiment.
Ernst Kussul and Tatiana Baidyk[7] have efficiently developed a novel neural classifier Limited Receptive Area (LIRA). The classifier LIRA is contained of three neuron layers: output, nsor and associative layers. The classifier was tested over two image databas. The first databa is the MNIST databa which contained 60,000 handwritten digit images for the classifier training and 10,000 handwritten digit images for the classifier testing. The cond databa has 441 images of th
e asmbly micro device. For dividing the databa a random procedure was ud to test and train subts. The classifier LIRA provides error rate of 0.61% as a mean value of three trials.
428
429
广州白水寨Fig. 1: Examples of different shapes in number 4
Fig. 2: Scenario of number recognition with artificial
neural network
A finally approach was prented by WESTALL in order to u the neural networks in the system of the decision logic for the handwritten numerals gmentation. This approach has been successfully
职业经理人implemented in a commercial system that is
internationally ud in the recognition of hand written
怎么看怀孕amounts on personal bank checks; computer-bad
recognition of unconstrained hand written fields within
scanned images of financial documents has three steps.
The first step is the field identification that supplies the
location within the image of the typically rectangular
region of interest that consists of the target field. The cond step, an identification must be performed by the
gmentation of the group of pixels compressing each
numeral of the field. The third step is to classify the numerals that are extracted by gmentation [8].
Framework: There are many fields concern with numbers, for example, checks in banks or recognizing
numbers in car plates, the subject of digit recognition
appears. A system for recognizing isolated digits may
be as an approach for dealing with such application. In
other words, to let the computer understand the Arabic
numbers that is written manually by urs and views
them according to the computer process .here, we prent a way to recognize isolated Arabic digits
exist
in different applications. For example, different urs
have their own handwriting styles where here the main
challenge falls to let computer system understand the
战狼二的观后感
different handwriting styles and recognize them as standard writing. Figure 1 shows some examples of different ur-handwritten.and in Fig. 2 the scenario of number recognition with Artificial Neural Network Which contains input and hiding layer and output with
the number (4) for examination the Network.
Fig. 3: A general diagram for Arabic digit recognition system System components: ADR it is a group of Arabic number (0-9) handwritten, the numbers will be given to the system handwritten in a different styles, sizes and possible orientations. And also the system consists of five components Fig. 3. MATERIALS AND METHODS There are four steps to build the isolated digits recognition system. The steps are prented on Fig. 3 and below are the descriptions of them: Image acquisition: We will acquire an image to our system as an input .this image should have a specific for
mat, for example, bmp format and with a determined size such as 30×20 pixels. This image can be acquired through the scanner or, digital camera or other digital input devices [9]. Preprocessing: After acquiring the image, it will be procesd through quence of preprocessing steps to be ready for the next step. Noi removal: reducing noi in an image. For on-line there is no noi to eliminate so no need for the noi removal. In off-line mode, the noi may come from the writing style or from the optical device captures the image [10].
430
Normalization-scaling: standardize the font size within the image. This problem appears clearly in handwritten text, becau the font size is not restricted when using handwriting.
119消防儿童画Thinning and skeletonization: Reprenting the shape of the object in a relatively smaller number of pixels [9]. Thinning algorithms can be parallel or quential.
Parallel is applied on all pixels simultaneously. Sequential examine pixels and transform them depending on the preceding procesd results. Segmentation: Since the data are isolated, no need for gmentation. With regards to the isolated digits, to apply vertical gmentation on the image containing more than digit will isolate each digit alone. Normalization scaling and translation: Handwriting produces variability in size of written digits. This leads to the need of scaling the digits size within the image to a standard size, as this may lead to better recognition accuracy. We tried to normalize the size of digit within the image and also translate it to a specific position by the following. Feature extraction: Feature extraction is not part of this project. Feature types are categorized as follows: • Structural features: It describes geometrical and topological characteristics of a pattern by reprenting its global and local properties • Statistical features: Statistical features are derived from the statistical distribution of pixels and describe the characteristic measurements of the pattern • Global transformation: Global transformation technique transforms the pixel reprentation to a more compact form. This reduces the dimensionality of the feature vector and provides feature invariants to global deformation like translation, dilation and rotation Classification
and recognition: Neural Network is a network of non-linear system that may be characterized according to a particular network topology. Where, this topology is determined by the characteristics of the neurons and the learning methodology. The most popular architecture Of Neural Networks ud in Arabic digits recognition takes a network with three layers. The are: Input layer, hidden layer and output layer. The number of nodes in the input layer differs according to the feature vector’s dimensionality of the
gment image size.
猫和老鼠2
Fig. 4: Two layers network, one hidden and one output, with 50, 10 neurons respective In the hidden layer the number of nodes governs the variance of samples which can be accurately and correctly recognized by this Network. In our system project, the data will be divided using neural networks. In addition, we u the algorithm of back propagation [11]. Algorithm code: Commonly neural networks are trained, so that a particular input leads to a specific target output. There, the network is adjusted, bad on a comparison of the output and the target, until the network output matches the target. In both networks we applied feed forward back propagation neural network algorithm. The first network (two layers) shown in Fig. 4 is consisted of an input layer P1 of a vector of 600 inputs and an input weights IW1,1 of 50×600 and b1 a vector
bias with 50 bias connecting the input vector with the hidden layer which consist of 50 neurons. n1 = IW1,1 P1+ b1 reprents the input for the 50 neurons of the
hidden layer. a1 is the output of 50 neurons of the hidden layer resulted of applying an activation function on n1, a1 is now is the input vector of the next layer which is here the output layer. LW2,1 of 10×50
reprents layer weights and b2 a vector bias with 10 bias which connects the hidden layer with the output layer which consist of 10 neurons. n2 = IW2,1 a1+ b2 the input for the 10 neurons of the output layer. a2 is the output of 10 neurons of the output layer resulted of applying an activation function on n2. The output layer of the first network consist of 10 neurons since we need to classify 10 digits [0,1,…,9], each of which correspond to one of the possible digits that might be considered. The architecture of the cond network (three layers) as illustrated in Fig. 5 also is the same as the architecture of the first network except that there are an additional hidden layer rather than one hidden layer. The input vector also consists of 600 inputs. There are two hidden layers, the first consists of 250 neurons and the cond consists of 6 neurons.
Fig. 5: Three layers network, two hidden and one output, with 250,6,10 neurons respectively for
each layer
The output layer also consists of 10 neurons. Also the same as in the first network, each neuron is ud to correspond to one of the possible digits that might be considered.
Both networks are fully connected feed forward network, which means activation travels in a direction from the input layer to the output layer and the units in one layer are connected to every other unit in the next layer up[12]. The back propagation algorithm consists of three stages. The first
is the forward pha, spread inputs from the input layer to the output layer through hidden layer to provide outputs. The cond is the backward stage, calculate and propagate back of the associated error from the output layer to the input layer through hidden layer. And the third stage is the adjustment of the weights[13].
The backward stage is similar to the forward stage except that error values are propagated back through the network to determine how the weights are to be changed during training. During training each input pattern will have an associated target pattern. After training, application of the net involves only the computations of the feed forward stage. Hereafter, we will describe the algorithm ud to train the network in details[14].
Training algorithm:
我的世界怎么骑马1. Initialize weights by zero
2. While E >= 0.000001 iterate steps 3-9
{Feed forward stage} 3. For input layer, assign as net input to each unit (Xi,
i = 1,…,n) its corresponding element in the input
vector. The output for each unit is its net input. We have (600×10) input vector
4. For the first hidden layer units calculate the net
input and output:
n
j j i ij j j
i1
net b x w,o f(net)
=
=+=
∑
And repeat step 4 for all subquent hidden layers
5. For the output layer units calculate the net input
and output:
n
j j i ij j j
i1
net b x w,o f(net)
=
=+=
∑
{Back propagation stage}
6. For each output unit calculate its error:
j j j j
(t o).f(net)
′
δ=−
7. For last hidden layer calculate error for each unit:
k j k kj
k
f(net).w
′
δ=δ
∑
And repeat step 7 for all subquent hidden layers: {Update weights and bias}
8. For all layers update weight for each unit:
ij j i ij
j j j
w(n1)o w(n)
b(n1)b(n)
∆+=αδ+∆
∆+=αδ+∆
9. Test stopping condition in step-2
As shown in Fig. 6 the applying the three stages, feed forward, back propagation of error and adjustment of weights and bias reprents one epoch. In our rearch, the first network ud needed 36 epochs to reach the goal and the other network needed 33 epochs to reach the goal. The
goal in the first network was until E <= 0.00001, while in the cond network was until E <= 0.000001.
431