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

ifip

International Federation for Information Processing

This document is the original author manuscript of a paper submitted to an IFIP
conference proceedings or other IFIP publication by Springer Nature. As such, there
may be some differences in the official published version of the paper. Such
differences, if any, are usually due to reformatting during preparation for publication or
minor corrections made by the author(s) during final proofreading of the publication
manuscript.
# Handwritten Word Recognition Using Deep Learning Methods

Vasileios Lagios<fnref n="1" />, Isidoros Perikos<fnref n="1" />,<fnref n="2" />(✉), and Ioannis Hatzilygeroudis<fnref n="1" />

**Abstract.** The handwriting recognition field has preoccupied the scientific community for several years. The complexity encountered in this sector is due to the fact that each individual has a unique way of writing. Various methods have been examined and evaluated throughout the years, with the sole purpose of achieving sustainable results. The introduction of neural networks, specifically the use of convolutional neural networks (CNN) and recurrent neural networks (RNN), has presented dependable results in the handwriting recognition field. In this paper, we introduce a model that recognizes handwritten words without pre-segmenting the words into characters. The model consists of a CNN for the extraction of features, a RNN for the prediction procedure and a final layer (CTC) for decoding the prediction. We conducted many experiments on the well-known IAM handwriting database and attained an accuracy of 77.22% and a character error rate (CER) of 10.4%.

**Keywords:** Handwritten Word Recognition · Convolutional Neural Networks · Recurrent Neural Networks · Deep Learning

## 1 Introduction

Handwritten texts are a common way that people can use to communicate. Generally, a handwritten recognition system is a mechanism that is used for the recognition of handwritten characters, words or texts, even if they come from scanned pictures or in real-time using stylus in an electronic device like tablet. The first option is called offline handwriting recognition and the second one is called online handwriting recognition [6]. In offline handwriting recognition, the input is a two-dimensional image, pixel by pixel, and the output is a sequence of characters. The line continuity of handwriting makes it hard to segment characters for individual recognition. Methods based on isolating the characters of a word, were widely used in the nineties. Now these methods are mostly replaced by the sliding window approach, in which features are extracted from vertical frames of the line image [16]. This method changes the problem to a sequence to sequence transduction one, while potentially encoding the two-dimensional nature of the image with the use of convolutional neural networks [17] or by defining relevant features.

<footnote n="1">¹ Department of Computer Engineering and Informatics, University of Patras, Patras, Greece
{lagios,perikos,ihatz}@ceid.upatras.gr</footnote>

<footnote n="2">² Computer Technology Institute and Press Diophantus, Patras, Greece</footnote>
In this paper, we are going to present a model for offline handwriting recognition. Handwriting recognition acquires special importance in cases such as the authentication of a signature on bank checks, recognition of postal codes in letters and even in cases that have to do with crime, translations and detection of keywords [7] Shankar [18] kumar bhuia. In a world based on data, accurate handwriting recognition is highly desirable.

However, it is a quite challenging task. Recently, researchers have proven that every person has his own and almost unique handwriting type [28] ahmed. Each handwritten character can be written in different styles, lengths or sizes by different writers. Sometimes even the same character can be written in a different style by the same writer in a different period of time. In the level of a word, the difficulty of recognition is even higher. What makes it more difficult is the continuous writing of the characters, the spaces between them and the writing that may not continue a straight line [8, 20].

A HandWritten Recognition system (HWR) is actually an Optical Character Recognition (OCR). OCR is the electronic or mechanical conversion of images of typed, handwritten or printed text into machine-encoded text, whether from a scanned document, a photo of a document, a scene-photo (for example the text on signs and billboards in a landscape photo) or from subtitle text superimposed on an image [23]. In the case of handwritten text it is called Handwritten Recognition (HWR).

A Handwritten recognition system consists of the following stages: pre-processing, segmentation, feature extraction, classification and recognition [9]sharma[10]teddy surya. In the stage of pre-processing what we aim to achieve is the elimination of unwanted features, without however removing any important information. The techniques, applied in this stage, can be applied in every type of image, such as coloured (RGB), grayscale and binary. Due to the fact that these techniques are very costly when applied in coloured pictures, when analyzing handwritten words, we use binary or grayscale images [11]. Effectively we pursue the augmentation of the image's text as well as the preparation of the picture for the next stages, ensuring the model will be able to recognize it better. Segmentation is a process where we isolate the text from the image's background. The techniques that are used are line segmentation, word segmentation and character segmentation [11]. By introducing neural networks, segmentation is now a stage which can be disregarded, since neural networks such as RNN do not require segmented data. Feature extraction is a process where information about an item is collected in order to allow its better classification. In case of recognizing handwritten characters, each character is depicted as a feature sequence [12]. In the next step of the classification, classes with similar properties are created and the inputs are being assigned to a class. In this stage the feature sequence is being predicted. The most traditional classifier in handwriting recognition is neural network.

In our work, the stages of feature extraction and classification are handled by deep neural networks. So, in the recognition process, the prediction given during the classification process, is being decoded, by using a decoder. The usage of neural networks has yielded better results, compared to machine learning algorithms which were used previously [20]. We designed a methodology that relies on Convolutional Neural Networks (CNN) and Recurrent Neural Networks (RNN) for the recognition of handwritten words. CNNs are designed to process two-dimensional data and to extract features. CNNs are able to be successful on multiple writer collections if the training set is large enough.
RNNs are used for classification and time-sequence predictions. Their use in contempo-
rary systems is essential, especially that of the LSTM layers. These layers accumulate
data, in time and facilitate an easier retention of previous data in the memory. This
renders them appropriate for classification, analysis and time-sequence predictions of
unknown time-frame. These layers do not require segmented data. The preferable output
of such a network, for decoding the prediction, is the CTC layer, where using a CTC
decoder, allows this process to take place. Over the years, several algorithms have been
used to perform these processes, but neural networks, in addition to delivering the best
results, also facilitate the work of the programmer in that they take him out of the diffi-
cult position of finding segmentation techniques, where is a difficult process as well as
extracting features manual.

The rest of the paper is organized as follows. Section 2 reviews the related works for handwritten word and text recognition. After that, Sect. 3 introduces the proposed architecture and describes it's functionality. Section 4 presents our experimental results and finally, Sect. 5 concludes the paper and provides directions for future work.

## 2 Related Work

Several research attempts have been made in the literature for the accurate recognition of handwritten text A detailed overview of methods, systems and approaches can be found in the works presented in [24, 25].

In [3] authors present a method that is a combination of SVM classifiers and nearest neighbor algorithm. Their method encodes the input word image as Fisher Vectors (FV), i.e., as an aggregation of the gradients of a Gaussian Mixture Model (GMM) over some low-level descriptors, SIFT in this case. It then trains a set of linear SVM classifiers, one per each binary attribute contained in a set of word properties. Canonical Correlation Analysis (CCA) is used to link the vector of predicted attributes and the binary attributes vector generated from the actual word. The CCA method finds a common vector subspace where the predicted attributes vector and binary attributes vector are naturally comparable. To find the transcription, a simple nearest neighbor search is made in the transformed lexicon space, which was projected to the common subspace. They achieved 79.99% accuracy and 11.27% CER using the IAM database.

In work presented in [4], authors present a CRNN model with output layer a CTC layer. CNN, which is responsible for features extraction, consists of seven convolutional layers. The first, second, fourth and sixth layers are followed by a max-pooling layer for downsampling, while the third and fifth layers are followed by a batch normalization for reducing internal covariate shift. The RNN consists of two LSTM layers which form a BLSTM. The RNN output is routed to the CTC layer, where the beam search algorithm is used to decode it.

In [5], authors applied dropout layers in Recurrent Neural Network. The input image is divided into blocks of size 2 × 2 and fed into four LSTM layers which scan the input in different directions indicated by corresponding arrows. The output of each LSTM layer is separately fed into convolutional layers of 6 features with filter size 2 × 4. This convolutional layer is applied without overlapping nor biases. It can be seen as a sub-sampling step, with trainable weights rather than a deterministic subsampling function.
The activations of 4 convolutional layers are then summed element-wise and squashed by the hyperbolic tangent (tanh) function. This process is repeated twice with different filter sizes and numbers of features, and the top-most layer is fully-connected instead of convolutional. The final activations are summed vertically and fed into the softmax layer. The output of softmax is processed by Connectionist Temporal Classification (CTC).

In [15], authors proposed a system that consists of three main components: convolutional visual feature extraction, recurrent layers and a transcription layer. For visual feature extraction, they used a convolutional neural network with residual connections. The input to the network is an image tensor of dimensions Wx66x1, where W is a varying image width. The network is comprised of 6 blocks of 2 residual convolution modules, where each residual module is composed of two convolutional layers, a residual connection and batch normalization. Interspersed between the blocks are max pooling operations, which serve to reduce the spatial dimension of the image. To introduce time-dependence between the feature vectors, they applied 3 layers of bi-directional LSTM on the feature vector sequence, with 512 units in each direction. The output of the final LSTM is then projected to transcription layer. They adopt the CTC layer for decoding process. They achieved 79.51% and 88.05% accuracy in IAM and RIMES datasets respectively.

In [19], authors present a model which they called ScrabbleGAN. It's a semi-supervised approach to synthesize handwritten text images that are versatile both in style and lexicon. ScrabbleGAN relies on a novel generative model which can generate images of words with an arbitrary length. They present a fully convolutional handwritten text generation architecture, which allows for arbitrarily long outputs and how to train this generator in a semi-supervised approach. To evaluate their model, they used RIMES, IAM and CVL datasets. They achieved 25.10% and 12.29% WER in IAM and RIMES respectively using the original training data.

In [1], authors proposed a neural network architecture based on a combination of a convolutional neural network (CNN) and an encoder-decoder structure. The convolutional neural network extracts features from all patches of the image. The exported feature sequence is used as input to a sequence to sequence network (LSTM). This network then recognizes the characters of the word. The convolutional network they propose, consists of two convolutional layers followed by the max-pooling function and finally a dropout layer. The encoder is an LSTM network that reads the sequence of features from the convolutional neural network and extracts the correlations between these features. It leads to the decoder which is also an LSTM network which includes an attention mechanism. Their model was trained and evaluated on the IAM database and by using a dictionary they managed to achieve an accuracy of 87%.

Bluche et al. [16] proposed a multidimensional LSTM network with attention. The proposed model comprises an encoder of the 2D image of text, producing feature maps, and a sequential decoder that predicts characters from these maps. The decoder proceeds by combining the feature vectors of the encoded maps into a single vector, used to update an intermediate state and to predict the next character in the sequence. The weights of the linear combination of the feature vectors at every timestep are predicted by an attention network. In this work the attention is implemented with a MDLSTM network. In word level recognition they achieved CER of 12.60% using IAM dataset.
In [3], authors proposed an attention-based sequence-to-sequence model for hand-written word recognition. The proposed architecture has three parts: an encoder, consisting of a CNN and a bi-directional GRU, an attention mechanism devoted to focus on the pertinent features and a decoder formed by a one-directional GRU, able to spell the corresponding word, character by character. It achieved 82.55% accuracy in IAM.

# 3 Methodology

## 3.1 Preprocessing

Before we feed the data to the neural network, they go through some pre-processing stage. It is known that the more data a neural network has at its disposal to be trained, the better results it yields. Data augmentation is a technique, which is used to create new and different images from the database's existing images, with the purpose of increasing the database itself. This can be accomplished by applying various transformation techniques. In our case for this purpose, we create random stretches in the already existing data, to increase the database. This technique is applicable only to the training data, and not to the validation data. We also apply a morphological function, the erode from the CV2 library in particular, to erode-increase the lines of the word contained in the image. In conjunction with the morphological function, we also use a technique to increase the contrast of the image. This results in the input data, i.e. the images, being more distinct by the neural network, and therefore it recognizes them better. Finally, we apply the normalization to the data. The purpose of data normalization is to ensure that each input element, in our case the pixels of the image, has a similar input distribution. It is an important step in machine learning, as it makes the models converge faster in the training phase. After the data has passed the pre-processing stage, it is fed to the network.

## 3.2 Proposed Architecture

The network architecture of CRNN, consists of three components, including the convolutional layers, the recurrent layers, and a transcription layer, from bottom to top. At the bottom of CRNN, the convolutional layers automatically extract a feature sequence from each input image. On top of the convolutional network, a recurrent network is built for making prediction for each frame of the feature sequence, outputted by the convolutional layers. The transcription layer at the top of CRNN is adopted to translate the per-frame predictions by the recurrent layers into a label sequence.

As we know, the levels of a typical CNN model consist of the convolutional layer, the activation function, the pooling layer and the fully connected layer. Bearing that in mind, we removed the fully connected layer, which is being replaced by RNN and we added a batch normalization layer, right after the convolutional layer. This layer is used primarily to accelerate the training procedure and secondarily to avoid overfitting. The CNN is used to extract features and it extracts a feature map which is subsequently used as input for the RNN. The CNN consists of five layers of similar structure. In the convolutional layers, kernels sized 5x5 and 3x3 are used. The 5x5 kernels are used in the first two convolutional layers and in the last three we used the 3x3 kernels. Stride
<figure><img src="image_2.png" /><figcaption>Fig. 1. The overall architecture of the model.</figcaption></figure>

is set to 1. In the last three pooling layers we adopt 1x2 pooling strides instead of the conventional 2x2 strides we utilize in the first two pooling layers (Fig. 1).

This is done in order to create feature maps, with larger latitudes, hence a larger feature sequence. The RNN is responsible for predictions at any time step. We create a bidirectional RNN. Even though RNN are seemingly powerful structures, they are not able to model long term dependencies [13]. For this reason we used LSTM layers which are a modified version of RNN that models long-term dependencies. An LSTM layer is controlled by three gates. The input gate, the forget gate and the output gate. The forget gate allows the network to delete unnecessary information [14]. We used two such layers, which map the feature sequence from both directions. In image-based sequences, contexts from both directions are useful and complementary to each other. The outputs of these two layers are concatenated to get the final output of RNN. The RNN output is a matrix which contains all the possibilities of each character at any time step. This output is then used as input to the transcription layer. Transcription is the process of converting the per-frame predictions made by RNN into a label sequence. Mathematically, transcription is to find the label sequence with the highest probability conditioned on the per-frame predictions. For this reason, a CTC layer has been used. In this layer there are two functions that occur. The loss is being calculated in order to train the model. The loss is being calculated using the way Graves [21] proposed, and it is the negative logarithm of the possibility from the RNN output. Also, the best-path decoder is utilized in order to decode the output given by the RNN. This decoder, simply receives the character with the highest possibility at any time step. It also deletes all the repeated letters, and removes the blank ones in order to give us the final text.
## 3.3 Training

The model is being trained in order to minimize loss, given the input and label. To train the model the Adam optimizer has been used (which is considered to be the best) with a decay learning rate (a learning rate which is being attenuated in a linear way, during the training). Adam optimizer is simple to implement, computationally efficient, and requires less memory than most of its counterparts. The decay learning rate is preferred over the typical learning rate of a fixed value when the Adam optimizer is applied. In Fig. 2 we see how the loss during training is reduced. The network is trained using Mini-batch Gradient Descent approach. We split the training data into 500 batches. The batch size is set to 50. The loss is calculated for each batch. In this way we make the training of the network easier and faster. The training process stops when there is no improvement of the character error rate for three consecutive epochs.

In Fig. 2 we see how the loss during training is reduced. In the initial stages of training, as is logical the loss receives large values while as the network trains the loss values decrease and in the final stages of training it receives the lowest values.

<figure><img src="image_3.png" /><figcaption>Fig. 2. Loss during training.</figcaption></figure>

We also see that in the initial stages of training the loss decreases at a faster rate than in the final stages of this. This is due to the fact that the learning rate receives on a greater value in the early stages of training, thus enabling greater changes in loss value.

## 3.4 Formulation of an Online Application

Finally, an application was designed. For the back-end section, Flask framework was utilized. Flask Framework was used for developing the web applications. The homepage of the application displays the navigation bar and two buttons, which allow the selection of the text image that we want the model to recognize. The supported file extensions are PNG and JPG. After selecting the image we want to recognize, we are redirected to the second page, which displays the selected image as well as the text the model has recognized. The user through the “home” option of the navigation bar can perform the above process for as many images as he wishes to recognize. In Fig. 3 the a page of the application is illustrated.
<figure><img src="image_4.png" /><figcaption>Fig. 3. An example illustration.</figcaption></figure>

The work and all of its components were coded in Python. It is the preferred pro-
gramming language for developing deep-learning models mainly because its syntax is
simpler compared to other programming languages. It is also easier to learn. This led to
an increase in its popularity in the last few years and therefore, most machine-learning
libraries are based on Python. To implement the network, we used TensorFlow, which
allows us to create the network layer by layer. TensorFlow is an end-to-end open source
platform for machine learning. It has a comprehensive, flexible ecosystem of tools,
libraries and community resources that lets researchers push the state-of-the-art in ML
and developers easily build and deploy ML powered applications. Tensorboard was used
to visualize the graphs. Other libraries, such as Numpy and cv2, have been utilized, in
order to represent the image as a matrix and process the data respectively.

4 Experimental Study

4.1 Dataset

As the IAM Handwritting Dataset is the most popular one for handwritten word and text
recognition tasks, we carried out our experiments based on it. The IAM dataset consists
of 115.320 isolated and labeled words written by 657 writers. The samples of the dataset
are grayscale images, written on a white background and stored in png format.

4.2 Results

We test our system on the IAM English handwriting dataset. We fine-tuned our model
on IAM and it achieves CER of 10.4%. Table 1 highlights the results.

The Levenshtein distance is recorded to evaluate the performance of the network
after training. Given two strings *a*, *b* of length *l*al, *lbl*, Levenshtein distance is the amount
<table><caption>**Table 1.** CER on IAM dataset</caption><thead><tr><td>Dataset</td><td>CER</td></tr></thead><tbody><tr><td>IAM Handwriting Dataset</td><td>10.4%</td></tr></tbody></table>

of transformation it takes to make one sing identical to the other, such as insertions, deletions, and substitutions. It is calculated as illustrated in the following Equations.

$$lev(a, b) = \begin{cases} |a|, & \text{if } |b| = 0, \\ |b|, & \text{if } |a| = 0, \\ \text{lev(tail}(a), \text{tail}(b)), & \text{ifa}[0] = b[0] \\ 1 + \min\left\{ \begin{array}{ll} \text{lev(tail}(a), b) & \text{otherwise.} \\ \text{lev}(a, \text{tail}(b)) & \\ \text{lev(tail}(a), \text{tail}(b)) & \end{array} \right. \end{cases}$$

where the *tail* of some string *x* is a string of all but the first character of *x* and *x[n]* is the *n*th character of the string *x*, starting with character 0. Note that the first element in the minimum corresponds to deletion (from *a* to *b*), the second to insertion and the third to replacement.

For example, the Levenshtein distance between “kitten” and “sitting” is 3, since the following three edits change one into the other, and there is no way to do it with fewer than three edits:

1. **kitten** → **sitten** (substitution of “s” for “k”)

2. **sitten** → **sittin** (substitution of “i” for “e”)

3. **sittin** → **sitting** (insertion of “g” at the end)

A more intuitive metric taken into account is accuracy. In this paper, the accuracy of the model is calculated as shown in Eq. 2.

$$ \text{Accuracy} = \frac{(\text{number of correct predictions})}{(\text{number of total predictions})} \qquad (1) $$

Because the prediction is made at word level, Eq. 2 is essentially translated as:

$$ \text{Word Accuracy} = \frac{(\text{number of correct word predictions})}{(\text{number of total word predictions})} \qquad (2) $$

and essentially the resulting percentage is the opposite of the Word Error Rate (WER), where WER is the percentage of words that were not correctly recognized.

Table 2 presents the accuracy achieved on IAM English handwriting dataset. It shows that our model recognized correctly the 77.22% of the samples in the dataset. Note, that this is not the best accuracy that was achieved, but the accuracy of the model with the best CER achieved.

In Table 3, methods and results achieved using the IAM handwriting database are reported.
<table><caption>**Table 2.** Accuracy of our model on IAM dataset.</caption><thead><tr><td>Dataset</td><td>CER</td><td>Accuracy</td></tr></thead><tbody><tr><td>IAM Handwriting Dataset</td><td>10.4%</td><td>77.22%</td></tr></tbody></table>

<table><caption>**Table 3.** Comparison with other methods.</caption><thead><tr><td>Model</td><td>CER</td><td>Accuracy</td></tr></thead><tbody><tr><td>Almazan et al. [2]</td><td>11.27%</td><td>79.99%</td></tr><tr><td>Pham et al. [6]</td><td>13.92%</td><td>68.52%</td></tr><tr><td>Bluche et al. [16]</td><td>-</td><td>76.3%</td></tr><tr><td>Gimenez et al</td><td>-</td><td>74.2%</td></tr><tr><td>Mor et al. [15]</td><td>-</td><td>79.51%</td></tr><tr><td>Sueiras et al. [1]</td><td>8.8%</td><td>76.2%</td></tr><tr><td>Bluche et al. [17]</td><td>12.6%</td><td>-</td></tr><tr><td>Fogel et al. [19]</td><td>-</td><td>74.9%</td></tr></tbody></table>

Table 3 shows the accuracy and CER results of other methods used to recognize handwritten words in the popular IAM dataset. It should be mentioned that some methods trained their model using synthetic data or a lexicon, something that does not happen in our implementation. Also, methods use techniques for line skew and the slant correction in the images like in the work in [1]. We notice that the results we have achieved are close to those of the state of the art methods and in some cases even better.

## 5 Conclusions

The handwriting recognition field has preoccupied the scientific community for several years. The complexity encountered in this sector is due to the fact that each individual has a unique way of writing. Various methods have been examined and evaluated throughout the years, with the sole purpose of achieving sustainable results. The introduction of neural networks, specifically the use of convolutional neural networks (CNN) and recurrent neural networks (RNN), has presented dependable results in the handwriting recognition field. In this paper, we introduce a model that recognizes handwritten words without pre-segmenting the words into characters. The model consists of a CNN for the extraction of features, a RNN for the prediction procedure and a final layer (CTC) for decoding the prediction. We conducted many experiments on the well-known IAM handwriting database, and attained an accuracy of 77.22% and a character error rate (CER) of 10.4%.

There are many directions for future work. Initially, a bigger scale evaluation will be conducted to shed light on the performance of the methodology and the system developed in additional datasets. Another direction for future work concerns the formulation of
ensemble schemas and stacked ensembles and examine their performance on different types of data. This constitutes a main direction for future work.

## References

1. Sueiras, J., Ruiz, V., Sanchez, A., Velez, J.F.: Offline continuous handwriting recognition using sequence to sequence neural networks. Neurocomputing **289**, 119–128 (2018). https://doi.org/10.1016/j.neucm.2018.02.008

2. Almazan, J., Gordo, A., Fornes, A., Valveny, E.: Word spotting and recognition with embedded attributes. IEEE Trans. Pattern Anal. Mach. Intell. **12**, 2552–2566 (2014)

3. Kang, L., Toledo, J.I., Riba, P., Villegas, M., Fornés, A., Rusiñol, M.: Convolve, Attend and Spell: An Attention-based Sequence-to-Sequence Model for Handwritten Word Recognition. In: Brox, T., Bruhn, A., Fritz, M. (eds.) GCPR 2018. LNCS, vol. 11269, pp. 459–472. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-12939-2_32

4. Tran, H.-P., Smith, A., Dimla, E.: Offline Handwritten Text Recognition using Convolutional Recurrent Neural Network In: 2019 International Conference on Advanced Computing and Applications (ACOMP) (2019)

5. Pham, V., Bluche, T., Kermorvant, C., Louradour, J.: Dropout Improves Recurrent Neural Networks for Handwriting Recognition In: 2014 14th International Conference on Frontiers in Handwriting Recognition. (2014) https://doi.org/10.1109/icfhr.2014.55

6. Priya, A., Mishra, S., Raj, S., Mandal, S., Datta, S.: Online and offline character recognition: A survey In: Communication and Signal Processing (ICCSP), 2016 International Conference on, pp. 0967–0970, (2016)

7. Shankar Rao, J.: Aditya {Dept of CSE, Andhra University}, Handwriting Recognition – Offline Approach

8. Singla, P., Munjal, S.: A Review On Handwritten Character Recognition Techniques IJIRT 2(11) ISSN: 2349–6002 (2016)

9. Sharma, T. Patnaik, B. Kumar, “Recognition for Handwritten English Letters: A Review”, International Journal of Engineering and Innovative Technology (IJEIT), vol. 2, 2013

10. Gunawan, T.S., Mohd Noor, A.F.R., Kartiwi, M.: Development of English Handwritten Recognition Using Deep Neural Network, Indonesian J. Electr. Eng. Comput. Sci. 10(2), p. 562–568, ISSN: 2502–4752 (2018)

11. Hamad, K.A., Kaya, M.: A Detailed Analysis of Optical Character Recognition Technology Int. J. Appl. Mathe., Electron. Comput. ISSN: 2147–82282

12. Pradeep, J., Srinivasan, E., Himavathi, S.: Diagonal based feature extraction for handwritten character recognition system using neural network”, InElectronics Computer Technology (ICECT), 2011 3rd International Conference on 8 Apr 2011 4 IEEE, pp. 364–368

13. Hadji, I., Wildes, R.P.: What Do We Understand About Convolutional Networks arXiv:1803.08834v1 [cs.CV] 23 Mar 2018

14. Hochreiter, S., Schmidhuber, J.: Long short-term memory. Neural Computation **9**(8), 1735–1780 (1997)

15. Mor, N., Wolf, L.: Confidence prediction for lexicon-free OCR In: Proceedings of the IEEE Winter Conference on Applications of Computer Vision, pp. 218–225 (2018)

16. Bluche, T., Louradour, J., Messina R., “Scan, attend and read: end-to-end handwritten paragraph recognition with MDLSTM attention”, In: Proceedings of the IAPR International Conference on Document Analysis and Recognition, pp. 1050–1055 (2017)

17. Bluche, T., Ney, H., Kermorvant, C.: Feature Extraction with Convolutional Neural Networks for Handwritten Word Recognition In: 12th International Conference on Document Analysis and Recognition (ICDAR). IEEE, pp. 285–289 (2013)
18. Bhuia, A.K., Das, A., Bhunia, A.K., Kishore, P.S.R., Roy, P.P.: Handwriting Recognition in Low-resource Scripts using Adversarial Learning In: 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)

19. Fogel, S., Averbuch-Elor, H., Cohen, S., Mazor, S., Litman, R.: ScrabbleGAN:Semi-Supervised Varying Length Handwritten Text Generation In: 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)

20. Aqab, S., Tariq, M.U.: Handwriting Recognition using Artificial Intelligence Neural Network and Image Processing”, (IJACSA) International J. Adv. Comput. Sci. Appl., Vol. 11(7) (2020)

21. Graves, A., Fernandez, S., Gomez, F. J., Schmidhuber, J.: Connectionist temporal classification: Labelling unsegmented sequence data with recurrent neural networks In: Proc. Int.Conf. Mach. Learn.pp. 369–376 (2006)

22. Ahmed, R., Al-Khatib, W.G., Mahmoud, S.: A survey on handwritten documents word spotting. Int. J. Multi. Inf. Retr. 6(1), 31–47 (2017)

23. Memon, J., Sami, M., Khan, R.A., Uddin, M.: Handwritten optical character recognition (OCR): A comprehensive systematic literature review (SLR). IEEE Access 8, 142642–142668 (2020)

24. Baldominos, A., Saez, Y., Isasi, P.: A survey of handwritten character recognition with mnist and emnist. Appl. Sci. 9(15), 3169 (2019)

25. Vashist, P.C., Pandey, A., Tripathi, A.: A comparative study of handwriting recognition techniques. In 2020 International Conference on Computation, Automation and Knowledge Management (ICCAKM) IEEE, pp. 456–461 (2020)