Learning the Amazigh language writing using artificial intelligence

Prepared by the researche
- MAAROUF Otman – Center of Excellence, Faculty of Sciences, Ibnou Zohr University, Agadir, 80000, Morocco, Agadir, Morocco – Department of Computer Science, Faculty of Science and Technology, Sultan Moulay Slimane University, Beni-Mellal, Morocco
- MAAROUF Abdellah – Regional Center for Teaching and Training Professions, Beni-Mellal, Morocco
DAC Democratic Arabic Center GmbH
International Journal of Amazigh Studies : Fourth issue – September 2025
A Periodical International Journal published by the “Democratic Arab Center” Germany – Berlin
ISSN 2944-8158
International Journal of Amazigh Studies
:To download the pdf version of the research papers, please visit the following link
Introduction
The integration of the Tamazight language into Morocco in 2003 is a real beginning of the reconciliation of the public school with its authentic Moroccan self and the beginning of becoming a citizen school open to national cultures and languages because this is the main entrance to the consolidation of the true and supreme dimension of national identity through its indoctrination for young people, students, and Moroccan youth to be proud of their multidimensional identity. But this integration is considered a real challenge to the Ministry of Education because the Tifinagh letter is new to students and they find it difficult to write it.
In this article, we have implemented a system that helps students learn to write the Tifinagh letter. This system is based on optical character recognition (OCR). A growing variety of complex computations for optical character recognition (OCR) frameworks using AI and neural networks are being offered because of improvements in innovation and processing speed (Manoharan, 2019). OCR is a process for converting a visual representation into editable text. It is a method for digitizing handwritten and printed text (Biniz and El Ayachi, 2021). OCR is beneficial for many applications, including number plate recognition, book checking, and continuous text transformation. OCR systems are applied in several languages namely: English (Verspoor and Cohen, 2013) French (Beaufort and Roekhaut, 2011) Arabic (Boulaknadel, 2008). On the other hand, the Amazigh language, this language is written using the Tifinagh script, which has a number of variations, including the Neotifinagh, Tuareg, Saharan, and Libyan forms. The CNN will be used in this instance to identify the Tifinagh characters. The convolutional neural network (CNN) is a subset of deep learning neural networks. It is a significant development in image recognition. It may be used for a variety of things, including picture categorization and visual imagery analysis (Niharmine et al, 2017).
This paper contains 3 sections firstly we talk about convolution neural networks and we describe a proposed model to classify the Tifinagh characters images based on the AMHCD dataset, in the second section we present the different steps of the OCR created in this study, and in the third section we dispute the global system and its architecture, finally we are finishing by a conclusion.
Tifinagh characters classification with CNN
A Convolutional Neural Network (CNN) is a Deep Learning method that can take in an input picture, give various elements and objects in the image importance (learnable weights and biases), and be able to distinguish between them. Comparatively speaking, a CNN requires substantially less pre-processing than other classification techniques. CNN have the capacity to learn these filters and properties, whereas in basic techniques filters are hand-engineered.
A CNN architecture was influenced by how the Visual Cortex is organized and is similar to the connection network of neurons in the human brain. Only in this constrained area of the visual field, known as the Receptive Field, do individual neurons react to stimuli. The whole visual field is covered by a series of such fields that overlap (Hsieh and Kiang, 2020).
In this section, we will classify the images that contains a Tifinagh characters using the CNN architecture.
Figure 1: Convolutional Neural Network Architecture
At first glance, their mode of operation is simple : the user provides an input image in the form of a matrix of pixels.
This one has 3 dimensions :
- Two dimensions for a grayscale image.
- A third dimension, of depth 3 to represent the fundamental colors (Red, Green, Blue).
- Contrary to a classical MLP (Multi Layers Perceptron) model, which only contains a classification part, the Convolutional Neural Network architecture has a convolutional part upstream and therefore contains two distinct parts (Li et al, 2021):
- A convolutional part: Its final objective is to extract the characteristics of each image by compressing them in order to reduce their initial size. In short, the input image passes through a succession of filters, creating new images called convolution maps. Finally, the convolution maps obtained are concatenated into a feature vector called CNN code.
- A classification part: The CNN code obtained at the output of the convolutional part is provided as input in a second part, made of fully connected layers called Multi Layers Perceptron (MLP). The role of this part is to combine the characteristics of the CNN code in order to classify the image.
- Convolutional part
Convolution is a simple mathematical operation generally used for image processing and recognition. On an image, its effect is similar to a filtering operation:
- First, we define the size of the filter window located at the top left.
- The filter window, representing the feature, moves progressively from left to right by a certain number of cells defined beforehand (the step) until it reaches the end of the image.
- At each portion of the image encountered, a convolution calculation is performed to obtain an activation map or feature map that indicates where the features are located in the image: the higher the feature map, the more the portion of the image scanned looks like the feature.
- In the convolutional part of a Convolutional Neural Network, the input image is passed through a succession of convolution filters. For example, there are convolution filters frequently used to extract features more relevant than pixels, such as edge detection (derivative filter) or geometric shapes. The model does the choice and application of filters automatically.
- Among the best-known filters, we find the averaging filter (calculates for each pixel the average of the pixel with its 8 close neighbors) or the Gaussian filter to reduce the noise of an image provided as input.
- In addition to its filtering function, the interest of the convolutional part of a CNN is that it makes it possible to extract characteristics specific to each image by compressing them in order to reduce their initial size, via subsampling methods such as Max-Pooling (Zhang, 2018).
- Max-Pooling
Max-Pooling is a discretization process based on samples. Its objective is to subsample an input representation (image, hidden layer output matrix, etc.) by reducing its dimension. Moreover, its interest is that it reduces the computational cost by reducing the number of parameters to be learned and provides invariance by small translations (if a small translation does not modify the maximum of the scanned region, the maximum of each region will remain the same and thus the new matrix created will remain identical) (Nagi et al, 2011).
To make the action of Max-Pooling more concrete, here is an example: let’s imagine that we have a 4×4 matrix representing our initial input and a filter of a window size 2×2 that we will apply on our input. For each of the regions scanned by the filter, the max-pooling will take the maximum, creating at the same time a new output matrix where each element will correspond to the maximums of each region encountered.
Figure 2: Max-Pooling process
The filter window moves two pixels to the right (stride/step = 2) and retrieves at each step the “argmax” corresponding to the largest value among the 4-pixel values.
Figure 3: Example of the Max-Pooling effect
We can better understand the usefulness of the convolutional part of a CNN: contrary to a classical MLP model, the addition of the convolutional part allows us to obtain an output “feature map” or “CNN code” (matrix of pixels located on the right in the example) whose dimensions are smaller than those of the initial image, which will have the advantage of greatly reducing the number of parameters to be calculated in the model.
Generally, the architecture of a Convolutional Neural Network (Figure 1) is essentially the same:
- Convolution layer (CONV): The role of this first layer is to analyze the images provided as input and to detect the presence of a set of features. The output of this layer is a set of feature maps.
- Pooling layer (POOL): The pooling layer is an operation generally applied between two convolution layers. It receives as input the feature maps formed at the output of the convolution layer and its role is to reduce the size of the images, while preserving their most essential characteristics. Among the most used, we find the max-pooling mentioned above or the average pooling whose operation consists in keeping the average value of the filter window at each step.
Finally, the output of this layer is the same number of feature maps as the input, but considerably compressed.
- The ReLU (Rectified Linear Units) activation layer: This layer replaces all the negative values received as inputs with zeros. The interest of these activation layers is to make the model non-linear and therefore more complex.
- Fully Connected (FC) layer: These layers are placed at the end of the CNN architecture and are fully connected to all output neurons (hence, the term fully connected). After receiving an input vector, the FC layer successively applies, a linear combination and then an activation function in order to classify the input image (see following diagram). It finally returns a vector of size d corresponding to the number of classes in which each component represents the probability for the image input to belong to a class.
Now that we have converted our input image into a suitable form for our Multi-Level Perceptron, we shall flatten the image into a column vector. The flattened output is fed to a feed-forward neural network and backpropagation applied to every iteration of training. Over a series of epochs, the model is able to distinguish between dominating and certain low-level features in images and classify them using the Softmax Classification technique.
The softmax function turn a vector of K real values into a vector of K real values that total to 1. The softmax turns the input values, which might be positive, negative, zero, or higher than one, into values between 0 and 1, allowing them to be understood as probabilities. The softmax converts little or negative inputs into small probabilities, and big or positive inputs into high probabilities, although it will always fall between 0 and 1.
c. Dataset
Like any language that passes through oral to writing mode, Amazigh language has been in need of a graphics system.
The Tifinagh is the name of the amazigh language letter set. The name Tifinagh conceivably signifies ‘the Phoenician letters’, or potentially from the expression tifin-negh, which signifies ‘our innovation’.
Variants of Tifinagh are utilized to compose Berber dialects in Morocco, Algeria, Mali and Niger. The Arabic and Latin letter sets are additionally utilized. The cutting edge Tifinagh content is otherwise called Tuareg, Berber or Neo-Tifinagh, to recognize it from the old Berber Script.
In 2003 Tifinagh turned into the official content for the Tamazight language in Morocco. It is likewise utilized by the Tuareg, especially the ladies, for private notes, love letters and in enrichment. For public purposes, the Arabic letter set is regularly utilized.
Tifinagh is written from left to right and contains 33 graphemes which correspond to (Amri and Zenkouar, 2019):
- 27 consonants including the labials (ⴼ,ⴱ,ⵎ), dental (ⵜ,ⴷ,ⵟ,ⴹ,ⵏ,ⵔ,ⵕ,ⵍ), the alveolar (ⵙ,ⵣ,ⵚ,ⵥ), the palatals (ⵛ,ⵊ), the velar (ⴽ,ⴳ), the labiovelars (ⴽⵯ,ⴳⵯ), the uvular (ⵇ,ⵅ,ⵖ), the pharyngeal (ⵃ,ⵄ) and the laryngeal (ⵀ);
- 2 semi-consonants:ⵢ and ⵡ;
- vowels: three full vowels ⴰ, ⵉ, ⵓ and neutral vowel (or schwa) ⴻ.
The (AMHCD) database (Es-saady et al, 2011), which comprises handwritten Amazigh characters, was employed in this study. The collection now contains 25,740 isolated and categorized handwritten Amazigh characters created by 60 authors. This database was created at the university Ibn Zohr’s IRF-SIC Laboratory in Agadir, Morocco. It is intended for using to train and test handwritten Amazigh character recognition systems. This database is accessible for academic and research purposes.
This data contains 33 folders each one has 780 images, in the phase of prepressing we clean this data and we create a new folder labeled “UNK” that contain the image that not write correctly and some other images as shown in the figure 4 . The new data that we get have 34 folders each one contain 758 images.
Figure 4. Extract of UNK folder content
C.number | Character | Name | C.number | Character | Name |
1 | ⴰ | Ya | 18 | ⵍ | Yal |
2 | ⴱ | Yab | 19 | ⵎ | Yam |
3 | ⴳ | Yag | 20 | ⵏ | Yan |
4 | ⴳⵯ | Yagw | 21 | ⵓ | Yu |
5 | ⴷ | Yad | 22 | ⵔ | Yar |
6 | ⴹ | Yadd | 23 | ⵕ | Yarr |
7 | ⴻ | Yey | 24 | ⵖ | Yagh |
8 | ⴼ | Yaf | 25 | ⵙ | Yas |
9 | ⴽ | Yak | 26 | ⵚ | Yass |
10 | ⴽⵯ | Yakw | 27 | ⵛ | Tach |
11 | ⵀ | Yah | 28 | ⵜ | Yat |
12 | ⵃ | Yahh | 29 | ⵟ | Yatt |
13 | ⵄ | Yae | 30 | ⵡ | Yaw |
14 | ⵅ | Yax | 31 | ⵢ | Yay |
15 | ⵇ | Yaq | 32 | ⵣ | Yaz |
16 | ⵉ | Yi | 33 | ⵥ | Yazz |
17 | ⵊ | Yaj | 34 | UNK |
Table 1: data set Classes
Table 1 shows the different classes existing in this database and their names, which are 34 classes.
d. CNN Proposed model
Using a convolutional neural network to detect Tifinagh letters necessitates a particular recognition system design. In this article, we provide two solutions, the first of which takes a color image, and the second of which takes a binary image, with only one difference in the input layer (the first layer). The architecture of the system used to identify a character from color photographs is described in Table 2.
As shown in Table 2, our CNN consists of four convolutional layers, each one of these layers follow by a ReLU layer, and all convolution layers follow by a max-pooling layer. A batch-normalization layer, a ReLU layer, follows the final convolutional layer and two fully connected layers, finally a softmax layer using. We choice as an optimizer “ADAM Optimizer”.
The size of the four convolutional filters is 3×3 . The maximum pooling is done on a window of 2×2 pixels, with a stride size of 2. The number of convolutional parameters in the first layer is 896, the second layer prams is 18 496 the third have18 464 parameters and the number prams in the last convolution layer is 18 496.
Layers | activation | Learnable parameters |
Input image: 60×60×3 | 60×60×3 | – |
Convolution 1: Filtre-Size 3×3 | 58×58×32 | 896 |
ReLU | 58×58×32 | – |
Convolution 2: Filtre-Size 3×3 | 56×56×64 | 18496 |
ReLU | 56×56×64 | – |
Convolution 3: Filtre-Size 3×3 | 54×54×32 | 18464 |
ReLU | 54×54×32 | – |
Convolution 4: Filtre-Size 3×3 | 52×52×64 | 18496 |
ReLU | 52×52×64 | – |
Maxpool : PoolSize 2×2 | 26×26×64 | – |
Flatten | 43263 | – |
Fully connected1 | 128 | 5537920 |
Fully connected2 | 64 | 8256 |
Softmax | 3 | 195 |
Classifcation Output: Cross-entropy with 34 classes | – | – |
Table 2: Proposed CNN system architecture
We described our architecture and the formulas for calculating the learning parameters above.
There are six main kinds of layers in our CNN architecture:
- A convolutional Layer that extracts feature from an input layer. The parameters that can be learned in this layer are given by the following formula:
Learnable = (((m ∗ m ∗ d) + 1) ∗ k) (1)
With:
- m: width of the current filter
- n: height of the current filter
- d: size of filters in the previous layer
- k: size of filters in the current layer
- l: the bias term for each filter
- Activation ReLU: is a gate in between the input feeding the current neuron and its output going to the next layer. In this layer, we apply activation function to the output of an artificial neuron.
- A pooling layer that subsamples each feature to reduce its dimensionality and focus on the most important elements.
- A fully connected layer that fattens the features identified in the previous layers into a vector. The parameters that can be learned in this layer are given by the following formula 2:
Learnable = ((C ∗ P) + 1 ∗ C) (2)
With:
- C: current layer neurons
- P: previous layer neurons
- A SoftMax Layer predicts probabilities that the image belongs to each one of several possible labels.
- A classification output layer computes the cross-entropy loss for multi-class classification problems with mutually exclusive classes.
Notably, the activation ReLU, Pooling, Softmax, and classification output layers do not have any learnable parameters. For our CNN design, which employs a color picture as input (60×60×3), the greatest number of parameters that may be learnt is 5 602 723 parameters, or 5 602 147 parameters for the architecture utilizing a binary image (60×60×1).
To train and evaluate our CNN model we divide the data into 3 part the first 80% for training the second 10% for validation and the third 10% for testing.
Table 3 describes the ratio of each part of the AMHCD database.
Ratio % | Number of images | Number of images for each class | |
Training set | 80 | 21 216 | 624 |
Validation set | 10 | 2 652 | 78 |
Test set | 10 | 2 652 | 78 |
Table 3: The ratio of the training, validation and test sets
- Training set: used to adjust the model.
- Validation set used to supply an unbiased evaluation of an adjustment of the model on the training dataset when tuning the hyper-parameters of the model.
- Test set: this sample is used to provide an impartial assessment of an adjustment of the final model on the training data set.
We train our CNN model in 40 epochs the figures 5 and 6 shows the evolution of the accuracy in training.
Figure 5. Training and testing accuracy for (60×60× 3) dimension
Figure 6. Training and testing accuracy for (60×60× 1) dimension
After 40 epochs, we observe the stability of accuracy our CNN model is tested with a mini batch of 64 for binary images we get 0.9847 in the accuracy. In addition, For RGB images we find that our solution gives 0.9643 in the accuracy.
Optical character recognition for Amazigh sentence
Research design, research technique (in the form of algorithms, pseudocode, or other methods), how to test, and data gathering are all explained chronologically (Shah and Gokani, 2014). In order for the explanation to be recognized scientifically, the description of the research path should be accompanied with references (Maarouf et al, 2022).
The development of pattern recognition has sped up recently because of a number of new applications that are not only difficult but also computationally intensive, as is the case with OCR, document classification, computer vision, data mining, shape recognition, and biometric authentication, to name just a few. OCR technology is becoming an essential component of document scanners and is used in a variety of applications, including banking, security (such as visa confirmation), postal processing, script acknowledgement, and language differentiating evidence).
The research in this area has been going on for more than 50 years, and the results have been surprising. Successful acknowledgment rates for printed characters have exceeded close to 100%, and handwritten cursive person acknowledgment has seen significant improvements with rates exceeding the 90% mark. Many organizations now rely on OCR systems to eliminate human interactions for greater performance and competence (Modi, 2017).
The current work introduces a character recognition method for detecting Tifinagh characters derived from images/designs containing text data, for instance, business card images (Mollah et al, 2011).
Figure 7 outlines the processes in our OCR process ; it starts with text extraction from the input picture, then moves on to binarization, segmentation, and recognition before producing a text file as the product.
- Image acquisition
The initial phase in OCR is called image acquisition, and it entails acquiring a digital picture and transforming it into a format that can be readily processed by a computer. This might use both picture compression and quantization (Lázaro et al, 2010). Binarization, which uses only two picture levels, is a unique instance of quantification (Islam et al, 2017). The binary picture is typically enough to describe the image. There are two types of compression: lossy and lossless. a description of the various picture compression methods in (Lund et al, 2013). Any typewritten picture with Tifinagh characters in “.png” or “.jpg” format is accepted by this OCR.
Figure 7. Block diagram of the present system
- Text Extraction
An enhanced image of the initial record is captured by the filtering system. OCR uses optical scanners, which typically consist of a vehicle instrument and a detecting device that transforms light power into dark levels (Yindumathi et al, 2020). Printed documents often have white backgrounds with black type. Therefore, it is common practice to convert the staggered image into a bi-level, highly contrasted image while conducting OCR. This cycle, known as thresholding, is routinely carried out on the scanner to conserve memory and processing effort.
The thresholding mechanism is important because the characteristics of the bi-level image are directly related to the outcomes of the accompanying acknowledgement. In any event, the thresholding process used on the scanner is typically really simple (Deepa and Lalwani, 2019). Utilizing a defined limit, the dim levels below this boundary are assumed dark, while the levels above are assumed white. A predetermined set limit may be adequate for a high-balanced archive with a consistent basis. However, curiously, many archives that have practical expertise have a broad reach. To get a satisfactory result in these circumstances, more advanced thresholding algorithms are required.
The best thresholding approaches are often those that can change the limit over the record while responding to the local features’ distinctiveness and beauty. In any case, these methods often rely on staggered record filtering, which calls for greater memory and computer power. In spite of the fact that they produce superior images, such processes are hardly applied to OCR frameworks.
- Binarization
Before splitting it, a skew updated text locale is binarized using a simple yet effective binarization approach we developed (Mollah et al, 2010). The result of the computation is shown below. In essence, this is a more advanced version of Bernsen’s binarization technique. The limit for binarizing a pixel in his approach is determined by using the number juggling method for the most severe (Gmax) and the base (Gmin) dim levels surrounding the pixel. The eight nearby fast neighbors of the pixel that will undergo binarization are also taken into account in the current computation. This kind of strategy is very useful for connecting a person’s disengaged frontal pixels.
- Segmentation
Characters or words are divided into separate segments. The words are often broken up into individual characters in optical person acknowledgment computations, which are then viewed independently. This split is often carried out by separating each related portion from each associated dark region. This process is relatively difficult to carry out, but problems might arise when characters interact or when they are separated into several portions. Four groups might be created to represent the division’s main concerns:
- Extraction of touching and fragmented characters.
- Distinguishing noise from the text.
- Mistaking graphics or geometry for text.
- Mistaking text for graphics.
In our case, histogram-based thresholding underlies the segmentation process’ functioning.
The number of pixels in a photograph with the greyscale value k will be shown by the letters , where N is the highest pixel value (regularly 255). A simple method for choosing a single edge was proposed by Ridler, Calvard, and Trussell in 1978 and 1979, respectively. We’ll refer to it as the algorithm that entomb implies.
An initial guess should be made about a potential edge motivation. This information is used to calculate the average upsides of the pixels in the two classes produced using this restriction.
- Recognition
In the previous section, we learned how to convert an image into a feature vector. now we will see the recognition phase it is a classification. Recognition is the last phase of the OCR system which is used to identify segmented content. to make a classification of a vector (image) there are several methods, for example, the correlation coefficient. This correlation coefficient is processed from example information that estimates the strength and range of a connection between two factors. A relationship coefficient is a number between 0 and 1. If there is no relationship between the anticipated qualities and the actual qualities, the connection coefficient is 0 or exceptionally low (the anticipated qualities are not more excellent than irregular numbers). Support Vector Machine ( SVM ) is one of the most popular supervised binary classification algorithms. Although the ideas used in SVM have been around since 1963 (Bhitme and Thool, 2018), the current version was proposed in 1995 by Cortes and Vapnik, and Convolutional Neural Network (CNN) that we describe in the previous section.
System to Learn Tifinagh Script (SLTS)
In this section, we will describe the system of learning the writing of character tifinagh for students (SLTS). This application is based on two artificial intelligence areas the first is Optical character recognition, the second is image classification using a convolution neural network. Our system flows this architecture:
Figure 8: System to Learn Tifinagh Script architecture
This system work in 7 steps, firstly we ask the student to write the word “ⴰⵣⵓⵍ”.
- Step 1: the student writes the given word and scans it;
- Step 2: filtering and improving the image using the averaging filter (calculates for each pixel the average of the pixel with its 8 close neighbors);
- Step 3: binarization, the image will be converted into a binary image;
- Step 4: we divide the binary image into images that each contain a letter, using the Histogram Projection method;
Figure 9: Histogram Projection for the word “ⴰⵣⵓⵍ”
In this method, we count the number of foreground pixels along the column of the image, and the resultant array is of the size equal to number of rows in the image.
In the above image, foreground pixels are black, and background pixels are white.
- Higher peaks imply of foreground pixels in the corresponding column are high.
- Lower peaks imply number of foreground pixels in the corresponding column are low.
After this method, we get each character in his own image.
- Step 5: we classify the characters image to know their classes; we used in this step the trained CNN model described in previous section, in the figure 8 we have for characters the first classification we give the class “ya”, the second is the class “yaZ”, the third is the class “yey”, the last is the class “yal” .
- Step 6: for each image classes we write their equivalent tifinagh character, the four classes found by the CNN classifier will be given the word “ⴰⵥⴻⵍ” .
- Step 7: we compare the word in the question with the output of the system “ⴰⵣⵓⵍ” and “ⴰⵥⴻⵍ”, in this example the student makes two errors in the character “ⵣ” and “ⵓ”, the system mentioned this errors.
Conclusion
In this paper, we have presented an SLTS system to help the students to learn easily how to write with Tifinagh character this system is based on Optical character recognition (OCR) that contain a convolution neural network model to classify the Tifinagh characters images, we trained this model using the AMHCD dataset on the binary images and RGB images. After all OCR steps the SLTS verified if the student writes the given sentence correctly or not and it mention the errors if exists.
References
- Manoharan, S. A Smart Image Processing Algorithm For Text Recognition, Information Extraction And Vocalization For The Visually Challenged. JIIP 2019, 1 (01), 31–38. https://doi.org/10.36548/jiip.2019.1.004.
- Biniz, M.; El Ayachi, R. Recognition of Tifinagh Characters Using Optimized Convolutional Neural Network. Sensing and Imaging 2021, 22 (1), 1–14.
- Verspoor, K.; Cohen, K. B. Natural Language Processing. In Encyclopedia of Systems Biology; Dubitzky, W., Wolkenhauer, O., Cho, K.-H., Yokota, H., Eds.; Springer New York: New York, NY, 2013; pp 1495–1498. https://doi.org/10.1007/978-1-4419-9863-7_158.
- Beaufort, R.; Roekhaut, S. Le TAL Au Service de l’ALAO/ELAO L’exemple Des Exercices de Dictée Automatisés. 18 me Conférence sur le Traitement Automatique des Langues Naturelles 2011 2011, 6.
- Boulaknadel, S. Traitement Automatique Des Langues et Recherche d’Information En Langue Arabe Dans Un Domaine de Spécialité : Apport Des Connaissances Morphologiques et Syntaxiques Pour l’indexation, Université de Nantes, Nantes., 2008. https://www.researchgate.net/publication/43433478_Traitement_Automatique_des_Langues_et_Recherche_d’Information_en_langue_arabe_dans_un_domaine_de_specialite_Apport_des_connaissances_morphologiques_et_syntaxiques_pour_l’indexation (accessed 2020-05-13).
- Niharmine, L.; Outtaj, B.; Azouaoui, A. Recognition Of Handwritten Tifinagh Characters Using Gradient Direction Features. Journal of Theoretical & Applied Information Technology 2017, 95 (13).
- Hsieh, T.-H.; Kiang, J.-F. Comparison of CNN Algorithms on Hyperspectral Image Classification in Agricultural Lands. Sensors 2020, 20 (6), 1734. https://doi.org/10.3390/s20061734.
- Li, Z.; Liu, F.; Yang, W.; Peng, S.; Zhou, J. A Survey of Convolutional Neural Networks: Analysis, Applications, and Prospects. IEEE Trans. Neural Netw. Learning Syst. 2021, 1–21. https://doi.org/10.1109/TNNLS.2021.3084827.
- Zhang, Q. Convolutional Neural Networks. In Proceedings of the 3rd International Conference on Electromechanical Control Technology and Transportation; 2018; pp 434–439.
- Nagi, J.; Ducatelle, F.; Di Caro, G. A.; Ciresan, D.; Meier, U.; Giusti, A.; Nagi, F.; Schmidhuber, J.; Gambardella, L. M. Max-Pooling Convolutional Neural Networks for Vision-Based Hand Gesture Recognition. In 2011 IEEE International Conference on Signal and Image Processing Applications (ICSIPA); IEEE: Kuala Lumpur, Malaysia, 2011; pp 342–347. https://doi.org/10.1109/ICSIPA.2011.6144164.
- Amri, S.; Zenkouar, L. Amazigh POS Tagging Using TreeTagger: A Language Independant Model. In Advanced Intelligent Systems for Sustainable Development (AI2SD’2018); Ezziyyani, M., Ed.; Advances in Intelligent Systems and Computing; Springer International Publishing: Cham, 2019; pp 622–632. https://doi.org/10.1007/978-3-030-11928-7_56.
- Es Saady, Y.; Rachidi, A.; El Yassa, M.; Mammass, D. AMHCD: A Database for Amazigh Handwritten Character Recognition Research. IJCA 2011, 27 (4), 44–48. https://doi.org/10.5120/3286-4475.
- Shah, J. S.; Gokani, V. N. A Simple and Effective Optical Character Recognition System for Digits Recognition Using the Pixel-Contour Features and Mathematical Parameters; 2014.
- Maarouf, O.; El Ayachi, R.; Biniz, M. Correcting Optical Character Recognition Result via a Novel Approach. IJ-ICT 2022, 11 (1), 8. https://doi.org/10.11591/ijict.v11i1.pp8-19.
- Modi, H.; C., M. A Review on Optical Character Recognition Techniques. IJCA 2017, 160 (6), 20–24. https://doi.org/10.5120/ijca2017913061.
- Mollah, A. F.; Majumder, N.; Basu, S.; Nasipuri, M. Design of an Optical Character Recognition System for Camera- Based Handheld Devices. 2011, 8 (4), 7.
- Lázaro, J.; Martín, J. L.; Arias, J.; Astarloa, A.; Cuadrado, C. Neuro Semantic Thresholding Using OCR Software for High Precision OCR Applications. Image and Vision Computing 2010, 28 (4), 571–578.
- Islam, N.; Islam, Z.; Noor, N. A Survey on Optical Character Recognition System. arXiv:1710.05703 [cs] 2017.
- Lund, W. B.; Kennard, D. J.; Ringger, E. K. Combining Multiple Thresholding Binarization Values to Improve OCR Output. In Document Recognition and Retrieval XX; International Society for Optics and Photonics, 2013; Vol. 8658, p 86580R.
- Yindumathi, K. M.; Chaudhari, S. S.; Aparna, R. Analysis of Image Classification for Text Extraction from Bills and Invoices. In 2020 11th International Conference on Computing, Communication and Networking Technologies (ICCCNT); IEEE: Kharagpur, India, 2020; pp 1–6. https://doi.org/10.1109/ICCCNT49239.2020.9225564.
- Deepa, R.; Lalwani, K. N. Image Classification and Text Extraction Using Machine Learning. In 2019 3rd International conference on Electronics, Communication and Aerospace Technology (ICECA); IEEE: Coimbatore, India, 2019; pp 680–684. https://doi.org/10.1109/ICECA.2019.8821936.
- Saravanan, D.; Joseph, D. Image Data Extraction Using Image Similarities. In Microelectronics, Electromagnetics and Telecommunications; Panda, G., Satapathy, S. C., Biswal, B., Bansal, R., Eds.; Lecture Notes in Electrical Engineering; Springer: Singapore, 2019; pp 409–420. https://doi.org/10.1007/978-981-13-1906-8_43.
- Mollah, A. F.; Basu, S.; Das, N.; Sarkar, R.; Nasipuri, M.; Kundu, M. Binarizing Business Card Images for Mobile Devices. arXiv:1003.0645 [cs] 2010.
- Bhimte, N. R.; Thool, V. R. Diseases Detection of Cotton Leaf Spot Using Image Processing and SVM Classifier. In 2018 Second International Conference on Intelligent Computing and Control Systems (ICICCS); IEEE: Madurai, India, 2018; pp 340–344. https://doi.org/10.1109/ICCONS.2018.8662906.