Ijraset Journal For Research in Applied Science and Engineering Technology
Authors: Lokesh Rathore, Ramji Yadav
DOI Link: https://doi.org/10.22214/ijraset.2023.55482
Certificate: View Certificate
Handwritten digit recognition is a fundamental problem in the field of computer vision and machine learning. With the advent of digitized data and advanced algorithms, this area has experienced significant advancements over the years. This review paper presents a comprehensive analysis of various techniques and methodologies employed in handwritten digit recognition. We explore the historical context, state-of-the-art approaches, challenges, and real-world applications of this important field.
I. INTRODUCTION
Handwritten digit recognition is a fundamental and challenging problem in the field of pattern recognition and machine learning. With the widespread use of digital devices and touchscreens, the ability to accurately recognize handwritten digits has become essential for various applications, including automated data entry, postal services, document analysis, and digit-based authentication systems.
The task of handwritten digit recognition involves identifying digits (0 to 9) written by individuals in freehand form. Despite the seemingly simple nature of the task, it poses significant challenges due to variations in writing styles, different slants, varying stroke thickness, and deformations introduced by different writers. Additionally, the presence of noise, overlapping digits, and distortions further complicates the recognition process.
Over the years, researchers have explored various methodologies to tackle this problem, ranging from traditional machine learning algorithms to more recent deep learning approaches. Early efforts in handwritten digit recognition focused on feature engineering and handcrafted feature extraction techniques. However, these methods were limited by their reliance on domain-specific knowledge and the need for extensive feature engineering, which often led to suboptimal performance.
The emergence of Convolutional Neural Networks (CNNs) revolutionized the field, providing a more data-driven and end-to-end approach to handwritten digit recognition. CNNs can automatically learn hierarchical representations from raw pixel data, capturing both local patterns and global structures. This ability to learn complex features directly from the data significantly improved recognition accuracy and generalization.
Despite the remarkable success of CNNs, several challenges remain in handwritten digit recognition. One of the major challenges is the limited availability of labeled training data, especially for specialized domains or digit variations. Additionally, ensuring robustness to variations in writing styles and distortions in real-world scenarios is essential for deploying accurate recognition systems.
This review paper aims to present an in-depth analysis of the state-of-the-art methods in handwritten digit recognition, with a particular focus on recent advancements in deep learning approaches. We will explore the historical developments, classical techniques, and the shift towards deep learning methods. The paper will discuss prominent datasets used for benchmarking, evaluation metrics, and factors affecting model performance. Furthermore, it will delve into various CNN architectures, attention mechanisms, and generative models used to enhance accuracy and robustness.
The paper will also highlight the challenges and limitations in current methodologies, such as model interpretability, adversarial robustness, and domain adaptation. It will propose potential research directions and emerging trends that are shaping the future of handwritten digit recognition, including few-shot learning, continual learning, and ethical considerations in the deployment of recognition systems.
Overall, this review paper aims to provide a comprehensive overview of the advancements, challenges, and opportunities in the field of handwritten digit recognition, offering valuable insights for researchers, practitioners, and industry stakeholders seeking to leverage this technology for various real-world applications.
II. THE WORKING PRINCIPLE
Based on the study of literature reviews on handwritten digit recognition, the working principle of an effective handwritten digit recognition system can be summarized as follows:
By following these principles and leveraging the advancements in CNNs and deep learning, handwritten digit recognition systems have achieved remarkable accuracy and robustness, making them applicable in various domains such as postal services, automated data entry, and digit-based authentication systems. Continual research, exploration of novel architectures, and the incorporation of emerging techniques will further enhance the capabilities of handwritten digit recognition systems in the future.
III. LITERATURE SURVEY
Lot of work has been done in the field of handwritten digit recognition using various techniques and algorithms.
G.Katiyar et al.[1] have presented a model for handwritten digit classification using Support Vector Machine (SVM), a supervised learning method. SVM classifies data by finding the best hyperplane that separates data points of one class from others. The author proposes four feature extraction techniques to construct the final feature vector. The experimental setup involves several steps. Image preprocessing is performed, which includes binarization, slant correction, smoothing, noise removal using the Wiener filter, and normalization to a size of 42x32. After preprocessing, 144 hybrid features are extracted using techniques such as the Box approach, Diagonal distance approach, Mean, and Gradient operations. The experiments are conducted using the SVM library LIBSVM under the WEKA tool, with the CEDAR CDROM-1 dataset used for training and testing. The training set consists of 5802 digits, while the testing set contains 707 digits. The accuracy of the SVM classifier for recognizing handwritten digits is reported to be 97.16%.
R. Vijaya Kumar Reddy et al.[2] have presented a deep learning approach using Convolutional Neural Networks (CNN) and RMSprop optimization for Handwritten Hindi Digits Recognition. CNN allows automatic feature extraction from a trainable dataset, which is advantageous. The UCI Machine Learning repository dataset is used, with 20,000 samples for training and 10,000 samples for testing.
The grayscale image samples are initially of size 28x28, but they are converted into 32x32 by adding 2 pixels on all four sides for processing. The CNN is implemented using Keras APIs with Tensorflow as the backend. The model consists of 7 layers, including two convolutional, two max-pooling, one flatten, and two fully connected ANN classifier layers. The first convolutional layer uses 32 kernels of size 5x5, and the second convolutional layer uses 64 kernels of size 3x3. Max pooling of size 2x2 is applied to both convolutional layers. The flatten layer transforms the output of the convolutional layers into a suitable format for the fully connected ANN. Dropout is used in the CNN to reduce complexity and prevent overfitting. The SoftMax classifier is used to classify the input images into appropriate class labels. The author applies the RMSprop Optimization and augmentation techniques to achieve higher accuracy. As a result, the model achieves an impressive accuracy of almost 99.85% on the validation dataset after 30 epochs.
Savita Ahlawat et al.[3] have proposed a hybrid model of CNN and SVM for digit recognition, achieving an impressive 99.28% accuracy on the MNIST dataset. CNN is used for automatic feature extraction, and SVM acts as the binary classifier. The methodology involves passing 28x28 handwritten digit matrices through CNN with 5x5 kernels and replacing the last Softmax layer with SVM for high-quality binary classifiers. The hybrid model uses 60,000 training and 10,000 testing images from the MNIST dataset and obtains the accuracy through automatically generated features passed to the SVM module.
K. Swetha et al.[4] have compared different algorithms for classifying handwritten digits based on their accuracy. The experiments use the CNN algorithm with the MNIST dataset, OpenCV, and LeNet5 architecture. The methodology involves data preprocessing, feature extraction, and classification using CNN. The experimental setup includes 60,000 training and 10,000 testing images from the MNIST dataset. OpenCV is used for reading and processing the images. CNN is trained with Keras, Matplotlib, CV2, and Tensorflow libraries, achieving a maximum accuracy of 99.63% on the MNIST dataset.
S M Shamim et al.[5] have presented an approach for off-line handwritten digit recognition using various machine learning techniques, including Multilayer Perceptron, Support Vector Machine, Naïve Bayes, Bayes Net, Random Forest, J48, and Random Tree, all implemented with the WEKA tool. The objective is to find effective and reliable methods for recognizing handwritten digits. The experiment uses a dataset from the Austrian Research Institute for Artificial Intelligence, with 1893 samples for training and 1796 samples for testing. The Multilayer Perceptron model achieves the highest accuracy of 90.37% among the tested algorithms.
Md. Anwar Hossain et al.[6] have proposed a model for handwritten digit recognition using Convolutional Neural Network (CNN) and the MNIST dataset. The main objective is to understand and apply CNN concepts for this task. The model uses MatConvNet for implementation, allowing for CPU training and reduced training time. Pre-processing is done on the images, including resizing and normalization. The CNN architecture consists of seven layers, including convolutional, max-pooling, and fully connected layers. The output layer uses the softmax activation function for classification. The experimental setup involves using MatConvNet for MATLAB, enabling fast prototyping of CNN architectures and efficient computation on CPU and GPU. The model's workflow includes data preparation, model building and compilation, training and evaluation, and saving the model for reuse.
Pranit Patil et al.[7] have focused on handwritten digit recognition using various machine learning models. The main goal is to explore the performance and consistency of these models. It discusses different machine learning algorithms, such as Support Vector Machine, Convolutional Neural Network, Quantum Computing, K-Nearest Neighbour Algorithm, and Deep Learning, used in the recognition technique. The methodology involves three types of learning: Supervised Learning, Unsupervised Learning, and Reinforcement Learning. Supervised Learning uses labeled datasets for training, Unsupervised Learning deals with unlabeled datasets, and Reinforcement Learning involves sequential decision-making. Authors surveys various papers that used different machine learning algorithms for handwritten digit recognition, including K-Nearest Neighbour Algorithm, K-Star, Decision Tree, CNN, Double Q Learning, and SVM. The datasets used for testing and training include MNIST, Kaggle, USPS, and MATLAB.
Jagan Mohan Reddy D et al.[8] have presented to effectively extract topological features for recognizing handwritten numerals using a Convolutional Neural Network (CNN) with a deep network. Handwritten numeral recognition for Telugu language is challenging due to various writing styles, shapes, and overlapping characters. The proposed approach utilizes Deep Learning (DL) to enhance the recognition rate of individual characters. The methodology involves collecting Telugu Handwritten Samples, preprocessing them to a 32x32 grayscale format, and dividing the dataset into train and test phases. A CNN model based on LeNet-5 architecture is implemented in Python to accurately recognize digits. The network extracts features using convolutional and sampling operations, achieving an overall accuracy and individual digit recognition rate on the test dataset. The model is built on 2000 samples and tested on 800 new handwritten samples.
Savitha Attigeri[9] has proposed a method for recognizing handwritten English alphabets using a Multilayer Feed Forward neural network without feature extraction. The network is trained with 50 character datasets, each containing 26 alphabets resized to 30x20 pixels.
The pixel values serve as features for training. Results show that the proposed system achieves good recognition rates comparable to feature extraction-based methods. The methodology involves using Multilayer Feed Forward ANNs for pattern recognition and classification. The experimental setup includes data generated from 100 writers, with 4400 characters in the training set and 440 characters in the test set. Fourier extraction is used for preprocessing, and a Back-Propagation Neural Network with specific architecture is employed for recognition.
Khalid Nahar[10] has presented off-line Arabic handwritten character recognition using Artificial Neural Network (ANN) with Genetic Algorithm (GA). The methodology involves five phases: data acquisition, preprocessing, feature extraction, training the ANN with GA, and final evaluation. Handwritten letters are collected using a media tablet, preprocessed, and converted into a 64x64 pixel grid. GA is applied to train and recognize the characters, optimizing ANN structure and parameters. The experimental setup uses 1728 samples entered by 15 users, and 70% of the dataset is used for training, while 30% is used for testing. The average accuracy of the five tests is 0.98246, showing that the combination of ANN with GA improves recognition rates significantly.
The literature survey covers various approaches and models for handwritten digit recognition. Different techniques, such as Support Vector Machine, Convolutional Neural Network, Multilayer Perceptron, and Genetic Algorithm with Artificial Neural Network, have been explored. These methods have been applied to different datasets, including MNIST and handwritten characters from various languages. The results show promising accuracy rates, with some models achieving recognition rates as high as 99.85%. CNNs have been widely used for automatic feature extraction, while SVMs have been used as binary classifiers. Feature extraction-based methods and deep learning approaches have both shown good recognition rates. Overall, the survey highlights the effectiveness of machine learning and deep learning techniques for handwritten digit recognition. Each model has its strengths and limitations, and the choice of the appropriate method depends on the specific requirements of the application. Further research in this field can lead to more accurate and efficient recognition systems, benefiting a wide range of applications in the domain of character recognition and optical character recognition.
[1] G.Katiyar and S.Mehfuz, “SVM Based Off-Line Handwritten Digit Recognition,” in IEEE India 1570182391, New Delhi, 2015. [2] R. V. K. Reddy, D. B. S. Rao and K. P. Raju, “Handwritten Hindi Digits Recognition Using Convolutional Neural Network with RMSprop Optimization,” in Proceedings of the Second International Conference on Intelligent Computing and Control Systems,IEEE, Madurai, India, 2018. [3] S. Ahlawat and A. Choudhary, “Hybrid CNN-SVM Classifier for Handwritten Digit Recognition,” in International Conference on Computational Intelligence and Data Science, ELSEVIER, 2019. [4] K. Swetha, Y. Hithaishi, N. Tejaswini, P. Parthasaradhi and P. V. Rao, “Handwritten Digit Recognition Using OpenCV and CNN,” International Journal of Creative Research Thoughts (IJCRT), vol. 9, no. 6, pp. C211-C220, 2021. [5] S. M. Shamim, M. B. A. Miah, A. Sarker and M. R. &. A. A. Jobair, “Handwritten Digit Recognition using Machine Learning Algorithms,” Global Journal of Computer Science and Technology: D Neural & Artificial Intelligence, vol. 18, no. 1, pp. 17-23, 2018. [6] M. A. Hossain and M. M. Ali, “Recognition of Handwritten Digit using Convolutional Neural Network (CNN),” Global Journal of Computer Science and Technology: D Neural & Artificial Intelligence, vol. 19, no. 2, pp. 27-33, 2019. [7] P. Patil and B. Kaur, “Handwritten Digit Recognition Using Various Machine Learning Algorithms and Models,” International Journal of Innovative Research in Computer Science & Technology (IJIRCST), vol. 8, no. 4, pp. 337-340, 2020. [8] J. M. R. D and A. V. Reddy, “Recognition of Handwritten Characters using Deep Convolutional Neural Network,” International Journal of Innovative Technology and Exploring Engineering (IJITEE), vol. 8, no. 6S4, pp. 314-317, 2019. [9] S. Attigeri, “Neural Network based Handwritten Character Recognition system,” International Journal Of Engineering And Computer Science, vol. 7, no. 3, pp. 23761-23767, 2018. [10] K. Nahar, “Off-line Arabic Hand-Writing Recognition Using Artificial Neural Network with Genetics Algorithm,” The International Arab Journal of Information Technology, vol. 15, no. 4, pp. 701-707, 2018. [11] N.A. Hamid, N.N.B.A. Sjarif, “Handwritten Recognition Using SVM, KNN and Neural Network,” arXiv:1702.00723 [cs.CV] Computer Vision and Pattern Recognition (cs.CV), 2017 [12] A. M. Obaid, H.M. Bakry, M.A. Eldosuky, A.I. Shehab, “Handwritten Text Recognition System based on Neural Network,” International Journal of Advanced Research in Computer Science & Technology (IJARCST), vol. 4, no. 1, pp.72-77, 2016 [13] H. N. Khraibet, A. Behadili, “Classification Algorithms for Determining Handwritten Digit,” Iraq J. Electrical and Electronic Engineering, vol.12, no.1, pp. 98-102, 2016 [14] N. Dave, “Segmentation Methods for Hand Written Character Recognition,” International Journal of Signal Processing, Image Processing and Pattern Recognition, vol. 8, no.5, pp.155-164, 2015 [15] V. Prasad, Y. J. Singh, “A study on method of feature extraction for Handwritten Character Recognition,” Indian Journal of Science and Technology, 2013 [16] R. Kala, H. Vazirani, A. Shukla, R. Tiwari, “Offline Handwriting Recognition using Genetic Algorithm,” International Journal of Computer Science Issues (IJCSI), vol.7, no.2, pp. 16-25, 2010 [17] A. Pal, D.Singh, “Handwritten English Character Recognition Using Neural Network,” International Journal of Computer Science & Communication, vol.2, no.2, pp. 141-144 [18] Y. B. Hamdan, P. Sathish, “Construction of Statistical SVM based Recognition Model for Handwritten Character Recognition,” Journal of Information Technology and Digital World, vol. 2, no. 3, pp. 92-107, 2021 [19] B. Rajyagor, R. Rakhlia, “Handwritten Character Recognition using Deep Learning,” International Journal of Recent Technology and Engineering (IJRTE), vol. 8, no.6, pp. 5815-5819, 2020 [20] S. Aqab, M.U. Tariq, “Handwriting Recognition using Artificial Intelligence Neural Network and Image Processing,” International Journal of Advanced Computer Science and Applications(IJACSA), vol. 11, no.7, pp. 137-146, 2020
Copyright © 2023 Lokesh Rathore, Ramji Yadav. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
Paper Id : IJRASET55482
Publish Date : 2023-08-24
ISSN : 2321-9653
Publisher Name : IJRASET
DOI Link : Click Here