Keywords

1 Introduction

The purpose of this research is to take handwritten English characters as input, process the character, train the neural network algorithm, to recognize the pattern and modify the character to a beautified version of the input as well as explain the mechanism of ANN including the calculation of number of hidden layer; by finding the number of hidden layer, it is easy to understand the complexity of the system. Though this work is restricted to English characters solely, this research is aimed toward developing software which can be useful in recognizing characters of English language. It can be additional developed to recognize the characters of various languages later. It engulfs the idea of neural network. One of the first suggests by which computers are dowered with human-like skills is through the utilization of a neural network. Neural networks are notably helpful for resolution issues that cannot be expressed as a series of steps, like recognizing patterns, classifying them into groups, series prediction and data mining. A neural network trained for classification is intended to take input samples and classify them into groups. These groups could also be fuzzy, while not clearly outlined boundaries. This project engages detecting free handwritten characters.

2 Related Work

Today Neural Networks are mostly used for Pattern Recognition. Optical character recognition (OCR) is widespread use of Neural Network. Different Models of Neural Network have been applied on the test set on each to find the accuracy of the respective Neural Network [1]. However, handwritten character and optical character are different format; optical character recognition is easy for recognition, because of its pattern which easy to recognition. On the contrary, handwritten character recognition is difficult because the large range of writing style from one person to another [2]. Feature extraction which improves recognition rate and misclassification is an integral part of any recognition system [2, 3]. The aim of feature extraction is to describe the pattern by means of minimum number of features that are effective in discriminating pattern classes. The gradient measures the magnitude and direction of the greatest change in intensity in a small neighborhood of each pixel where gradient refers to both the gradient magnitude and direct ion). Gradients are computed by means of the Sobel operator. Due to its logical simplicity, ease of use and high recognition rate, Gradient Features should be used for recognition purposes [3]. Recognition of Handwritten text has numerous applications which include, reading aid for blind and conversion of any hand written document into structural text form. To recognize handwritten characters by projecting them on different sized grids by using Mat lab Neural Network toolbox is the best way. The first step is image acquisition which acquires the scanned image followed by noise filtering, smoothing and normalization of scanned image, rendering image suitable for segmentation where image is decomposed into sub images. Character extraction and edge detection algorithm have been used for training the neural network to classify and recognize the handwritten characters [4]. This paper explores the existing ring based method (W.I. Reber 1987), the new sector based method and the combination of these, termed the Fusion method for the recognition of handwritten English capital letters. The variability associated with the characters is accounted for by way of considering a fixed number of concentric rings in the case of the ring based approach and a fixed number of sectors in the case of the sector approach. Structural features such as end points, junction points and the number of branches are used for the pre-classification of characters, the local features such as normalized vector lengths and angles derived from either ring or sector approaches are used in the training using the reference characters and subsequent recognition of the test characters. The recognition rates obtained are encouraging [5]. A geometry based technique for feature extraction is applicable to segmentation-based word recognition systems. It extracts the geometric features of the character contour. These features are based on the basic line types that form the character skeleton. The system gives a feature vector as its output. The feature vectors so generated from a training set were then used to train a pattern recognition engine based on Neural Networks so that the system can be benchmarked [6]. In computer vision research, object detection based on image processing is the task of identifying a designated object on a static image or a sequence of video frames. Projects based on such research works have been widely adapted to various industrial and social applications. The field to which those applications apply includes but not limited to, security surveillance, intelligent transportation system, automated manufacturing, and quality control and supply chain management. The popular computer vision methods have been extensively studied in various research papers and their significance to computer vision research has been proven by subsequent research works. In general, by categorizing those methods into to gradient-based and edge based feature extraction methods, depending on the low level features they use [7].

3 Proposed Approach

We have used two Feature Extraction techniques in the same system so that the system is more flexible; if any of them out of work for any technical issues, then other one work without any problem. We have used Gradient and Geometry based feature extraction techniques for feature extraction respectively because Feature Extraction is an integral part of any recognition system as well as improves recognition rate and misclassification. The proposed method comprises of 4 phases:

  1. 1.

    Pre-processing

  2. 2.

    Segmentation

  3. 3.

    Feature Extraction

  4. 4.

    Classification and Recognition

3.1 Pre-processing

In image representation one is concerned with the characterization of the number that every pixel represents. The number of pixels per unit area i.e. sampling rate must be massive enough to preserve the helpful in-formation within the image.

3.2 Segmentation

In the segmentation stage, an image of sequence of characters is rotten into sub-images of individual character. The pre-processed input image is divided into isolated characters by distribution variety to every character employing a labeling method. This labeling provides info concerning range of characters within the image. Every individual character is uniformly resized into pixels. In normalization, we want to normalize the size of the characters. There are massive variations within the sizes of every Character hence we need a technique to normalize the size. For normalizing the size we have used Character Extraction Algorithm and Edge Detection Algorithm.

3.3 Feature Extraction

There are two Feature Extraction methods have been employed:

  1. 1.

    Feature Extraction Using Gradient Feature

  2. 2.

    Feature Extraction Based on Character Geometry

Feature Extraction Using Gradient Feature

The gradient measures the magnitude and direction of the best modification in intensity in an exceedingly tiny neighborhood of every pixel. (In what follows, “gradient” refers to each the gradient magnitude and direction) Gradients are computed by means that of the Sobel operator. The Sobel templates accustomed compute the horizontal (X) and vertical (Y) parts of the gradient are shown below (Table 1):

Table 1. Sobel masks for gradient (Source: [3])

Given an input image of size G1 × G2, each pixel neighborhood is convolved with these templates to work out these X and Y parts, Hx and Hy, severally. Equations (1) and (2) represent their mathematical representation:

$$ \begin{array}{*{20}c} {{\text{H}}\left( {{\text{m}},{\text{n}}} \right) = {\text{I}}\left( {{\text{m}} - 1,{\text{n}} + 1} \right) + 2*{\text{I}}\left( {{\text{m}},{\text{n}} + 1} \right) + {\text{I}}\left( {{\text{m}} + 1,{\text{n}} + 1} \right) - {\text{I}}\left( {{\text{m}} - 1,{\text{n}} - 1} \right) - 2*{\text{I}}\left( {{\text{m}},{\text{n}} - 1} \right)} \\ { - {\text{I}}\left( {{\text{m}} + 1,{\text{n}} - 1} \right)} \\ \end{array} $$
(1)
$$ \begin{array}{*{20}c} {{\text{H}}\left( {{\text{m}},{\text{n}}} \right) = {\text{I}}\left( {{\text{m}} - 1,{\text{n}} - 1} \right) + 2*{\text{I}}\left( {{\text{m}} - 1,{\text{n}}} \right) + {\text{I}}\left( {{\text{m}} - 1,{\text{n}} + 1} \right){\text{y}} - {\text{I}}\left( {{\text{m}} + 1,{\text{n}} - 1} \right) - 2*{\text{I}}\left( {{\text{m + 1}},{\text{n}}} \right)} \\ { - {\text{I}}\left( {{\text{m}} + 1,{\text{n}} + 1} \right)} \\ \end{array} $$
(2)

Here, (m, n) range over the image rows (G1) and columns (G2), respectively. The gradient strength and direction can be computed from the gradient vector [Hx, Hy].

After getting gradient vector of every pixel, the gradient image is decomposed into four orientation planes or eight direction planes.

Feature Extraction Based on Character Geometry

It extracts completely different line sorts that form a selected character. It additionally concentrates on the point options of identical. The feature extraction technique explained was tested employing a Neural Network that was trained with the feature vectors obtained from the system proposed.

Universe of Discourse.

Shortest matrix that matches the whole character skeleton.

Zoning.

After the universe of discourse is chosen, the image is split into windows of equal size, and also the feature is completed on individual windows. The image was zoned into nine equal sized windows. Feature extraction was applied to individual zones, instead of the full image.

Starters.

Starters are those pixels with one neighbor within the character skeleton.

Intersections.

It ought to have over one neighbor.

3.4 Classification and Recognition

In Neural Network, each node perform some straight-forward computation and each affiliation conveys a proof from one node to a unique labelled by selection called the “connection strength” or weight indicating the extent thereto signal is amplified or diminished by the connection. Different selections for weight leads to totally different functions are being evaluated by the network. If in a given network whose weight are initial random and provided that we all know the task to be accomplished by the network, a learning algorithm should be accustomed verify the values of the weight which will reach the required task. Learning algorithm qualifies the computing system to be referred to as Artificial Neural Network (Fig. 1).

Fig. 1.
figure 1

Neural network

Hidden Layer Calculation

$$ {\text{T}}_{\text{h}} = {\text{T}}_{\text{s}} /\{ {\text{A}}*({\text{T}}_{\text{i}} + {\text{T}}_{\text{o}} )\} $$
(3)

Here,

  • Ts = Number of Samples in Training Data Set

  • Th = Number of Hidden Layer

  • To = Number of Output Neuron

  • Ti = Number of Input Neuron

  • A = Arbitrary Scaling Factor 2-10

Sample Input and Output

The match pattern is obtained to get the associated character, once the network is trained (Fig. 2).

Fig. 2.
figure 2

Desired sample input and output

Test Result Comparison

The given line graph shows the variations of Gradient Feature and Character Geometry Feature Extraction methods on the basis of number of Epochs (Fig. 3).

Fig. 3.
figure 3

Test Result comparison on the basis on number of epochs and classification (%)

4 Conclusion

The implementation of the absolutely connected Back propagation network gave affordable results toward recognizing characters. The two strategies specified for feature extraction yield desired and right smart accuracies for recognition. The foremost notable is that the proven fact that it cannot handle major variations in translation, rotation, or scale. Whereas some preprocessing steps is enforced so as to account for these variances, as we did generally they are tough to solve fully.