# A Survey of Handwritten Character Recognition with MNIST and EMNIST
## 3 EMNIST Database  
### Acquisition and Data Format  
As it can be observed from the previous section, there are a significant amount of works tested over MNIST and reporting a test error rate of 1%. The fact that many of these works approach an error rate of 0.2% suggests that this value can be irreducible for this problem. For this reason, MNIST is considered to be already solved. As a result, [PERSON] et al. [67] introduced in April 2017 the Extended MNIST database (EMNIST), consisting on both handwritten digits and letters, and sharing the same structure than the MNIST database. Authors of EMNIST stated that at that point _\"the dataset labeling can be called into question\"_, describing MNIST as a non-challenging benchmark. A sample of the letters and digits in the EMNIST dataset can be found in Figure 2.  
The source for building EMNIST database was NIST Special Database 19 (NIST SD 19) [68], containing NIST's (National Institute of Standards and Technology of the US) entire corpus of training \begin{table}
\begin{tabular}{l c} \hline
**Technique** & **Test Error Rate** \\ \hline MetaQNN (ensemble) [61] & 0.32\% \\ Fractional max-pooling CNN with random overlapping [34] & 0.32\% \\ CNN with competitive multi-scale conv. filters [33] & 0.33\% \\ CNN neuroevolved with CE [63] & 0.37\% \\ Fast-learning shallow CNN [35] & 0.37\% \\ CNN FitNet with LSUV initialization and SVM [59] & 0.38\% \\ Deeply supervised CNN [27] & 0.39\% \\ Convolutional kernel networks [36] & 0.39\% \\ CNN with Multi-loss regularization [37] & 0.42\% \\ MetaQNN [61] & 0.44\% \\ CNN (3 conv maxout, 1 dense) with dropout [17] & 0.45\% \\ Convolutional highway networks [38] & 0.45\% \\ CNN (5 conv, 3 dense) with retraining [45] & 0.46\% \\ Network-in-network [39] & 0.47\% \\ CNN (3 conv, 1 dense), stochastic pooling [25] & 0.49\% \\ CNN (2 conv, 1 dense, relu) with dropout [24] & 0.52\% \\ CNN, unsup pretraining [17] & 0.53\% \\ CNN (2 conv, 1 dense, relu) with DropConnect [24] & 0.57\% \\ SparseNet + SVM [15] & 0.59\% \\ CNN (2 conv, 1 dense), unsup pretraining [16] & 0.60\% \\ DEvol [62] & 0.60\% \\ CNN (2 conv, 2 dense) [40] & 0.62\% \\ Boosted Gabor CNN [42] & 0.68\% \\ CNN (2 conv, 1 dense) with L-BFGS [43] & 0.69\% \\ Fastfood 1024/2048 CNN [44] & 0.71\% \\ Feature Extractor + SVM [14] & 0.83\% \\ Dual-hidden Layer Feedforward Network [21] & 0.87\% \\ CNN LeNet-5 [4] & 0.95\% \\ \hline \end{tabular}
\end{table} 
Table 2: _Cont._  
Figure 2: Samples of all letters and digits in the EMNIST dataset. materials for handprinted document and character recognition, including over 800,000 manually checked and labelled characters from almost 3700 writers [69] who filled a form. Even if this database was available from the mid-1990s, it remained mostly unused due to the difficulty in accessing and using it in modern computers, because of the way it was stored. This was fixed in 2016 when a second version of the database was released with a simpler format. The authors of EMNIST have intentionally made the database compliant with MNIST in terms of structure, therefore performing a similar processing, which involves the following steps:  
1. Storing original images in NIST SD 19 as 128 \(\times\) 128-pixels black and white images. 2. Applying a Gaussian blur filter to soften edges. 3. Removing empty padding to reduce the image to the region of interest. 4. Centering the digit in a square box preserving the aspect ration. 5. Adding a blank padding of 2-pixels per side. 6. Downsampling the image 28 \(\times\) 28 pixels using bi-cubic interpolation. Originally, NIST SD 19 had two different labeling schemata:  
* By_Class: in this schema classes are digits [0-9], lowercase letters [a-z] and uppercase letters [A-Z]. Thus, there are 62 different classes. * By_Merge: this schema addresses the fact that some letters are quite similar in their lowercase and uppercase variants, thus both classes can be fused. In particular, these letter are 'c', 'i', 'j', 'k', 'l','m', 'o', 'p','s', 'u', 'v', 'w', 'x', 'y' and 'z'. This schema contains 47 classes.