38
Chapter 2
26
Mathematically Hidden Markov Model contains five elements.
I.
Internal States: These states are hidden and give the flexibility to
model different applications. Although they are hidden, usually there is
some kind of relation between the physical significance to hidden
states.
II.
Output: O = {O1, O2, O3, . . ., On} an output observation alphabet.
III. Transition Probability Distribution: A = a
ij
is a matrix. The matrix
defines what the probability to transition from one state to another is.
IV. Output Observation: Probability Distribution B = b
i
(k) is probability
of generating observation symbol O(k) while entering to state i is
entered.
V.
The initial state distribution (π = {πi}) is the distribution of states
before jumping into any state.
Here all three symbols represents probability distributions i.e. A, B and π. The
probability distributions A, B and π are usually written in HMM as a compact
form denoted by lambda as λ = (A, B, π) [17].
Related work in the Statistical Algorithm
Rajib et. al. [18] have proposed Hidden Markov Model based system for
English Handwritten character recognition. They have employed global as
well as local feature extraction methods. HMM is trained using these feature
and experiment is carried out. They have created a database of 13000 samples
collected from 100 writers written five times for each character. 2600 samples
have been used to train HMM and the rest are used to test recognition model.
The recognition rate is achieved 98.26% using proposed system.
Pritpal Singh and Sumit Budhiraja [19] have proposed K Nearest Neighbour
algorithm to recognise handwritten Gurumukhi script. They calculate the
Euclidean distance between the test point and all the reference points in order
to find K nearest neighbours, and then arrange the distances in ascending order
29
Chapter 2
27
and take the reference points corresponding to the k smallest Euclidean
distances. A test sample is then attributed the same class label as the label of
the majority of its K nearest (reference) neighbours. The recognition rate is
achieved by proposed system is 72.54%.
N. Suguna and Dr. K. Thanushkodi [20] have proposed an improved K
Nearest Neighbour algorithm. Genetic Algorithm (GA) is combined with
KNN to improve its classification performance. Instead of considering all the
training samples and taking k-neighbours, the GA is employed to take k-
neighbours straight away and then calculate the distance to classify the test
samples. Before classification, initially the reduced feature set is received from
a novel method based on Rough set theory hybrid with Bee Colony
Optimization (BCO).
Emanuel Indermuhle, Marcus Liwicki and Horst Bunke [21] have proposed
Hidden Markov Model to recognise handwritten manuscripts by writers of the
20th century.They proposed two approaches of Hidden Markov Model for
training the recognition system. The first approach consists in training the
recognizer directly from scratch, while the second adapts it from a recognizer
previously trained on a large general off-line handwriting database.
B.V.Dhandra, Gururaj Mukarambi and Mallikarjun Hangarge [22] have
proposed handwritten english uppercase character recognition system.
Handwriiten images are normalized into 32×32 dimensions. Then the
normalized images are divided into 64 zones and their pixel densities are
calculated, generating a total of 64 features. These 64 features are submitted to
KNN and SVM classifiers with 2 fold cross validation for recognition of the
said characters. The recognition accuracy of 97.51% for KNN and 98.26% for
SVM classifiers are obtained in case of handwritten English uppercase
alphabets.
C# HTML5 Viewer: Deployment on DotNetNuke Site Select “DNN Platform” in App Frameworks, and enter a Site Name. RasterEdge.XDoc.PDF. HTML5Editor.dll. Copy following file and folders to DNN Site project:
how to add text to pdf; add text to pdf file C#: XDoc.HTML5 Viewer for .NET Online Help Manual Enter the URL to view the online document. Office 2003 and 2007, PDF, DICOM, Gif, Png, Jpeg, Bmp Click to OCR edited file (one for each) to plain text which can
add text to pdf in preview; add text to pdf file online
29
Chapter 2
28
In [23] k-nearest neighbor classifier approach has been used for the Gujarati
character recognition. It used the k-nearest samples to test sample and
identifies it to that class which has the largest number of votes. The nearest
neighbor is found by using the Euclidean distance measure. For 1-NN
classifier the best recognition rate achieved was 67% in the binary feature
space and in regular moment space the rate was 48% [24].
Noha A. Yousri, Mohamed S. Kamel and Mohamed A. Ismail have [25]
proposed distance based clustering that identifies the natural shapes of
clusters. In case of character recognition, where it is natural to have different
writing styles for same character, the algorithm can be used to discover the
continuity between character feature vectors, which can’t be discovered by
traditional algorithms.
2.2.3 Structural/Syntactic Algorithm
The recursive description of a complex pattern in terms of simpler patterns
based on the shape of the object was the initial idea behind the creation of
structural pattern recognition [26].
Structural algorihtm classifies the input patterns on the basis of components
of the characters and the relationship among these components. Firstly the
primitives of the character are identified and then strings of the primitives are
checked on the basis of pre-decided rules [11]. Structural pattern recognition
is intuitively appealing because in addition to classification, this approach also
provides a description of how the given path constructed from the primitives
[27]. Generally a character is represented as a production rules structure,
whose left-hand side represents character labels and whose right-hand side
represents string of primitives. The right-hand side of rules is compared to the
string of primitives extracted from a word. So classifying a character means
finding a path to a leaf [11].
27
Chapter 2
29
Related work in the Structural Algorithm
Jonathan J. HULL, Alan COMMIKE and Tin-Kam HO [28] have presented
Structural analysis algorithm. The structural analysis algorithm has been fully
implemented and tested in the proposed work.
Hewavitharana, S, and H.C. Fernando [29] have proposed a system to
recognize handwritten Tamil characters using a two-stage classification
approach, for a subset of the Tamil alphabet, which is a hybrid of structural
and statistical techniques. In the first stage, an unknown character is pre-
classified into one of the three groups: core, ascending and descending
characters. Structural properties of the text line are used for this classification.
Then, in the second stage, members of the pre-classified group are further
analysed using a statistical classifier for final recognition [30].
2.2.4 Neural Network Algorithm
An Artificial Neural Network (ANN) is an information processing paradigm
that is inspired by the way biological nervous systems, such as the brain,
process information. It is composed of a large number of highly
interconnected processing elements (neurons) working in unison to solve
specific problems [31]. A neural network is a powerful data modeling tool that
is able to capture and represent complex input/output relationships. The
motivation for the development of neural network technology stemmed from
the desire to develop an artificial system that could perform "intelligent" tasks
similar to those performed by the human brain.
Neural Network consists three layers - input layer, hidden layer (optional) and
output layer.
C# TWAIN - Scan Multi-pages into One PDF Document true; device.Acquire(); Console.Out.WriteLine("---Ending Scan---\n Press Enter To Quit also illustrates how to scan many pages into a PDF or TIFF file in C#
add text pdf reader; add text box in pdf document
19
Chapter 2
30
I.
Input Layer
The input layer is the conduit through which the external environment presents
a pattern to the neural network. Input layer take input from the external world
and encode it into a convenient form. Every input neuron should represent
some independent variable that has an influence over the output of the neural
network.
The number of input neurons for the OCR is the number of pixels that might
represent any given character. A character which represents by a 5×7 grids has
35 pixels. So it has 35 input neurons.
II.
Hidden Layer
Hidden layer can’t see or act upon the outside world directly. These inter-
neurons communicate only with other neurons. Deciding the number of
neurons in the hidden layers is a very important part of deciding your overall
neural network architecture. Both the number of hidden layers and the number
of neurons in each of these hidden layers must be carefully considered [32].
30
31
There are many rule-of-thumb methods for determining the correct number of
neurons to use in the hidden layers, such as the following:
•
The number of hidden neurons should be between the size of the input
layer and the size of the output layer.
•
The number of hidden neurons should be 2/3 the size of the input layer,
plus the size of the output layer.
•
The number of hidden neurons should be less than twice the size of the
input layer.
III. Output Layer
The output layer of the neural network is what actually presents a pattern to
the external environment. The number of output neurons should be directly
related to the type of work that the neural network is to perform.
The number of output neurons used by the OCR program will vary depending
on how many characters the program has been trained to recognize. The
default training file that is provided with the OCR program is used to train it to
recognize 26 characters. Using this file, the neural network will have 26 output
neurons. Presenting a pattern to the input neurons will fire the appropriate
output neuron that corresponds to the letter that the input pattern represents
[33].
In a neural network, each node performs some simple computations, and each
connection conveys a signal from one node to another, labeled by a number
called the “connection strength” or “weight” indicating the extent to which a
signal is amplified or diminished by a connection.
2.2.4.1 Types of Neural Network
Neural network architectures can be classified as, Feed Forward network,
Feedback (Recurrent) networks and Self Organizing Map.
19
Chapter 2
32
2.2.4.1.1 Feed Forward Neural Network
In feed forward neural network, the information moves in only one direction,
forward, from the input nodes, through the hidden nodes (if any) and to the
output nodes. There are no cycles or loops in the network [34]. There are two
types of Feed Forward Network. Single Layer Feed Forward Network (An
input layer directly connected to output layer) and Multi-Layer Feed Forward
Network (an input layer and an output layer with one or more hidden layers).
2.2.4.1.2 Feedback(Recurrent) Neural Network
A Feed forward neural network having one or more hidden layers with at least
one feedback loop is known as feedback network. A feedback neural network
is any network whose neurons send feedback signals to each other. The
feedback may be a self-feedback, i.e., where output of neuron is feedback to
its own input [33]. Unlike feed forward neural networks, feedback network
can use their internal memory to process arbitrary sequences of inputs. This
makes them applicable to tasks such as unsegment connected handwriting
recognition, where they have achieved the best known results [35].
Figure 2.7 Feed Forward Neural Network
21
Chapter 2
33
2.2.4.1.3 Self-Organizing Map
A self-organizing map (SOM) or self-organizing feature map (SOFM) is a
type of artificial neural network (ANN) that is trained using unsupervised
learning to produce a low-dimensional (typically two-dimensional),
discretized representation of the input space of the training samples, called
a map. Self-organizing maps are different from other artificial neural networks
in the sense that they use a neighborhood function to preserve
the topological properties of the input space [36]. The Self Organizing Map
(SOM) is invented by Teuvo Kohonen. So it is also called Kohonen Self
Organizing Map. 2-dimensional Kohonen layer is shown in Figure 2.9.
Like most artificial neural networks, SOMs operate in two modes: training and
mapping. "Training" builds the map using input examples (a competitive
process, also called vector quantization), while "mapping" automatically
classifies a new input vector. The goal of learning in the self-organizing map
is to cause different parts of the network to respond similarly to certain input
patterns [36].
The network (the units in the grid) is initialized with small random values. A
neighborhood radius is set to a large value. The input is presented and the
Euclidean distance between the input and each output node is calculated. The
4
ce is selected, and this node, together with its
ood radius, will have their weights modified to
t. The algorithm results in a network where
h class thus creating a map of the found classes
7
pattern of outputs. The training process, therefore, extracts the statistical
properties of the training set and group’s similar vector into classes. Applying
a vector from a given class to the input will produce a specific output vector,
but there is no way to determine prior to training which specific output pattern
will be produce by given input vector class. Hence the outputs of such a
network must generally be transformed into a comprehensible form
subsequent to the training process [38] [39, 40].
Documents you may be interested
Documents you may be interested