Tải bản đầy đủ (.pdf) (66 trang)

LUẬN văn MẠNG máy TÍNH reconnaissance des caractères manuscrits isolés en ligne

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (940.64 KB, 66 trang )

Département de Génie de logiciel
Faculté des Technologies de l’information et de la communication
Université de Cantho

Reconnaissance des caractères manuscrits isolés en ligne
HO Hoang Nam
PHAN Ho Quoc

Mémoire présenté pour l’obtention du diplôme d’ingénieur en informatique
Juillet 2011

© HO Hoang Nam, PHAN Ho Quoc, 2011



RESUME
Ces travaux s’inscrivent dans le cadre de la reconnaissance des caractères
manuscrits isolés en ligne. Nous proposons un système de reconnaissance des
caractères isolées, comprenant des mots non-accentués et accentués. Le système
présenté s’appuie sur la méthode SVM, qui a été reconnue comme un bon
classifieur.
L’écriture manuscrite a été écrite sur la tablette, ensuite le système doit
traiter l’écriture en les étapes suivantes : prétraitement, extraction de
caractéristiques, segmentation et reconnaissance de caractère. Dans ce mémoire, la
combinaison des caractéristiques en ligne et hors ligne est utilisée. L’ensemble de
45 caractéristiques est un résultat acceptable grâce auquel, on peut avoir un bon
taux de reconnaissance.
Pour un caractère accentué, il est segmenté en deux parties : lettre et accent.
Ces deux parties sont reconnues séparément avec les deux systèmes de
reconnaissance. Le résultat est de combiner ces deux éléments. Donc cette
approche est connue dans la littérature comme celle analytique.


Avec le but d’améliorer le résultat de la reconnaissance, nous avons
consacré une méthode pour calculer la distance d’édition entre deux mots (mesurer
la similarité entre deux mots) afin de bien corriger le résultat dans le cas où il
existe des erreurs d’orthographes.
Dans ce mémoire, l’expérimentation démontre que le système de
reconnaissance construit de 45 caractéristiques peut bien fonctionner avec les deux
bases de données UNIPEN et IRONOFF.
Mots clés : reconnaissance de l’écriture manuscrite en ligne, SVM,
caractères accentués, segmentation, distance d’édition, extraction et sélection des
caractéristiques.

1


ABSTRACT
These works are part of the online handwritten characters recognition. We
propose a handwritten characters recognition system for isolated characters,
including accented and non- accented words. The presented system in based on the
SVM method, which was known a good classifier for recognizing handwriting.
The handwriting was written on the tablet, and then the system must
process on the following steps: preprocessing, feature extraction, segmentation,
recognition. In our corpus, the combination of online and offline features is used.
The set of 45 characteristics is an acceptable result by which we can have a good
recognition rate.
For an accented character, it is segmented into two parts: letter and accent.
Both parts are recognized separately with two systems of recognizing. The result
is the combination of two elements in order to have an accented character.
With the aim to improve the recognition result, we introduce a method for
calculating the similarity between two words to find a best word than the result in
the case of having errors in the result of recognition.

Finally, the experimentation shows that the recognition system built on 45
features can work well with both databases UNIPEN and IRONOFF.
Keywords: online handwriting recognition, SVM, accented character,
segmentation, edition distance, feature extraction, feature selection.

2


TABLES DES MATIERES
RESUME ................................................................................................................. 1
ABSTRACT ............................................................................................................. 2
TABLES DES MATIERES ..................................................................................... 3
LISTE DES FIGURES............................................................................................. 5
LISTE DES TABLEAUX ........................................................................................ 6
REMERCIEMENTS ................................................................................................ 7
CHAPITRE 1: INTRODUCTION ........................................................................... 8
CHAPITRE 2 : PROBLEME DE RECONNAISSANCE DES CARACTERES
MANUSCRITS ISOLES EN LIGNE .................................................................... 10
2.1 RECONNAISSANCE DES CARACTERES MANUSCRITS ISOLES EN
LIGNE : ............................................................................................................. 10
2.1.1 Histoire de la reconnaissance des caractères manuscrits en ligne : ....... 10
2.1.2 Etat de l’art : .......................................................................................... 11
2.2 PROBLEMATIQUE DU SUJET : ............................................................... 12
2.3 ETUDE DE CAS :........................................................................................ 14
2.4 CONCLUSION : .......................................................................................... 16
CHAPITRE 3 : SEGMENTATION....................................................................... 17
3.1 PROBLEMATIQUE : .................................................................................. 17
3.2 SEGMENTATION EN LIGNE: .................................................................. 19
3.3 SEGMENTATION EN MOT ET EN CARACTERE : ............................... 23
3.3.1 Segmentation en mot: ............................................................................ 24

3.3.2 Segmentation en caractère: .................................................................... 26
3.4 DETECTION D’ACCENT : ........................................................................ 29
3.5 CONCLUSION : .......................................................................................... 36
CHAPITRE 4: MACHINE A VECTEURS DE SUPPORT (SVM) ..................... 37
4.1 INTRODUCTION :...................................................................................... 37
4.2 SVM LINEAIRE : ........................................................................................ 37
4.3 SVM NON LINEAIRE: ............................................................................... 40
4.4 CLASSIFICATION DES DONNEES DE MULTIPLES CLASSES (>2) .. 41
4.5 CONCLUSION : .......................................................................................... 43
CHAPITRE 5: RECONNAISSANCE DES CARACTÈRES MANUSCRITS
ISOLES EN UTILISANT SVM ............................................................................ 44
5.1 MODELE DE RECONNAISSANCE : ........................................................ 44
5.1.1 Segmentation : ....................................................................................... 44
5.1.2 Extraction et sélection des caractéristiques : ......................................... 45
5.1.3 Classification : ....................................................................................... 47
5.2 EXPERIMENTATIONS : ............................................................................ 47
5.2.1 Description des bases de données : ....................................................... 47
5.2.2 Résultats expérimentales : ..................................................................... 49
3


5.3 CORRECTION D’ERREURS D’ORTHOGRAPHE: ................................. 53
5.3.2 Distance d’édition (distance de Levenshtein) : ..................................... 54
5.3.3 Taux de correction : ............................................................................... 58
5.4 CONCLUSION : .......................................................................................... 59
CHAPITRE 6: CONCLUSION ............................................................................. 60
6.1 RESULTATS OBTENUS: ........................................................................... 60
6.2 DEVELOPPEMENT DU SUJET: ............................................................... 60
ANNEXE 1 ............................................................................................................ 62
ANNEXE 2 ............................................................................................................ 63

BIBLIOGRAPHIE ................................................................................................. 64

4


LISTE DES FIGURES


Figure 2.1 - Deux styles d’écriture ........................................................................ 12
Figure 2.2 - Illustration des partis dans un fichier du signal d’écriture manuscrite
en ligne selon le standard UNIPEN ....................................................................... 13
Figure 2.3 - Modèle de reconnaissance des caractères manuscrits. ....................... 15
Figure 2.4 - Modèle de reconnaissance de caractère manuscrit de notre système. 16
Figure 3.1 - Fichier entré (fichier .DNT) ............................................................... 17
Figure 3.2 – Processus de traitement d’un fichier .DNT ....................................... 18
Figure 3.3 - Différences dans les deux façons d’écriture. ..................................... 18
Figure 3.4 - Définition des parties d’un tracé. ....................................................... 19
Figure 3.5 – Coordonnées d’un tracé. .................................................................... 19
Figure 3.6 - Boîte englobante des tracés 1, 2, 3, 4, 5 ............................................. 20
Figure 3.7 - Une faute de la segmentation en ligne. .............................................. 21
Figure 3.8 - Résultat de la segmentation des lignes ............................................... 23
Figure 3.9 - Segmentation en mot. ......................................................................... 24
Figure 3.10 - Résultat de la segmentation en mot. ................................................. 26
Figure 3.11 - Une faute de la segmentation en caractère. ...................................... 27
Figure 3.12 - Résultat de la segmentation en caractère. ........................................ 29
Figure 3.13 - Détection d’accent par la méthode 1. ............................................... 31
Figure 3.14 - Cas limités de l’algorithme de la détection d’accent par la méthode 1
................................................................................................................................ 31
Figure 3.15 - Faiblesses de l’algorithme de la détection par la méthode 2............ 32
Figure 3.16 – Illustration le caractère E ................................................................. 33

Figure 4.1 - Cas de séparation non erreur. ............................................................. 38
Figure 4.2 - Cas de séparation avec d’erreurs. ....................................................... 38
Figure 4.3 - SVM non linéaire. .............................................................................. 41
Figure 4.4 - Technique (1 contre 1) et (1 contre tous) ........................................... 42
Figure 4.5 - Technique de séparation des classes. ................................................. 43
Figure 5.1 - Modèle de reconnaissance de caractère manuscrit avec SVM .......... 44
Figure 5.2 - Combinaison des caractéristiques en ligne et hors ligne.................... 45
Figure 5.3 - Grille 3x3 pour extraire les caractéristiques statistiques et structurales.
................................................................................................................................ 46
Figure 5.4 - 4 accents de français........................................................................... 48
Figure 5.5 - Structure des caractères vietnamiens ................................................. 52

5


LISTE DES TABLEAUX


Tableau 5.1 - Description détaillée des bases de données ..................................... 49
Tableau 5.2 - Résultats de l’expérimentation sur caractères non accentués .......... 50
Tableau 5.3 - Reconnaissance de 4 accents ........................................................... 50
Tableau 5.4 - Résultat de la reconnaissance de caractères accentués après avoir
combiné des caractères et des accents. .................................................................. 51
Tableau 5.5 - Résultat de la reconnaissance de caractères spéciaux ..................... 52
Tableau 5.6 - La résolution de la reconnaissance des caractères vietnamiens
majuscules. ............................................................................................................. 53
Tableau 5.7 - Résultat de la correction d’erreurs des mots. ................................... 58

6



REMERCIEMENTS


En premier lieu nous souhaiterions remercier notre directeur de mémoire de
fin d’études Monsieur TRAN Cao De pour ses permissions de travailler notre
mémoire, pour ses encouragements et pour ses conseils toujours très précieux pour
la rédaction des différents écrits et la préparation d’une soutenance de mémoire de
fin d’études.
Pendant le temps que nous faisons ce sujet, les professeurs de la faculté
d’informatique nous apportent des connaissances utiles et pratiquées. Que nous les
remercions, nous leur souhaitons des bonnes santés et des réussites dans leurs
travaux.
Nous ne saurions trop remercier l’ensemble de nos amis pour l’ambiance
chaleureuse qu’ils créent au quotidien et que nous avons particulièrement
appréciée.
Bien que nous fassions ce projet avec tous nos efforts, nous pensons qu’il
existe encore des erreurs, et des faiblesses. Après six mois d’élaboration, notre
projet répond aux objectifs de notre sujet.
Nous avons envie de recevoir toutes les opinions de nos professeurs, nos
amis pour que nous soyons de plus en plus compétent dans la recherche.

7


CHAPITRE 1: INTRODUCTION
L’écriture manuscrite est un des moyens nécessaires de l’homme. Il est
apparu pendant une longue période à partir de symboles afin de transmettre des
informations importantes. On peut dire que l’écriture de chaque personne est
différente avec les autres et même si l’écriture d’une personne pourrait être

différente de lui-même en raison de nombreuses facteurs : par exemple l’âge,
psychologies,…
Depuis les premières tentatives, les systèmes de reconnaissance d’écriture
de lecture des adresses pour le traitement automatique du courrier ou de lecture
des chèques ont connu comme des importants développements et sont maintenant
largement utilisés. Dans la recherche de reconnaissance d’écriture, il y avait
beaucoup de recherches sur la langue anglais mais rarement sur le francais (ayant
des caractères accentués). Avec le but de reconnaître des caractères accentués, ce
sujet a pour but de présenter la recherche sur la reconnaissance de caractère
manuscrit isolé en ligne.
Nous présentons tout d’abord l’histoire de la reconnaissance de caractère
manuscrit isolé en ligne. Le modèle général du processus de reconnaître sera aussi
abordé afin de bien comprendre les étapes qu’il faut passer dans la recherche.
Nous nous consacrons ensuite l’étape de segmentation pour les caractères
accentués. C’est une des étapes importantes pour segmenter l’écriture en ligne, en
mot et en caractère. Pour chaque cas de segmentation, nous abordons des
algorithmes, des avantages et aussi des inconvénients pour résoudre la
segmentation dans le processus de reconnaisance de caractère manuscrit isolé en
ligne.
Nous présentons, dans la suite, une méthode de classification binaire qui
s’appelle SVM (Machine à vecteurs de supports ou Sytème à Vaste Marge). Les
problèmes de SVM contenant la construction des modèles SVM dans les cas
linéaires et non linéaires seront mentionnés. Ce chapitre sera présenté une méthode
pour résoudre le problème de classification avec multiclasses.
En appliquant l’algorithme SVM dans la reconnaissance des caractères
manuscrits isolés en ligne, ce chapitre mentionne des travaux importants dans la
recherche. Nous abordons
le problème d’extraction et sélection des
8



caractéristiques dans le système en combinant les caractéristiques en ligne et hors
ligne. Les expérimentations détaillées dans la recherche seront illustrées afin de
démonstrer la performance du moteur de reconnaissance de caractère manuscrit.
Avec le but de faire améliorer le taux de reconnaissance (corriger des erreurs
d’orthographies des résultats du processus de reconnaissance de caractères), il y
avait plusieurs méthodes qui sont bien connues pour corriger les problèmes
d’orthographes. Parmi lesquelles, la méthode de calculer la distance d’édition sera
consacrée.
Le dernière chapitre, nous conclurerons nos travaux et proposerons des
développements.

9


CHAPITRE 2 : PROBLEME DE RECONNAISSANCE DES
CARACTERES MANUSCRITS ISOLES EN LIGNE
2.1 RECONNAISSANCE DES CARACTERES MANUSCRITS ISOLES
EN LIGNE :
2.1.1 Histoire de la reconnaissance des caractères manuscrits en
ligne :
Depuis plusieurs années, les moyens essentiels dans la communication des
hommes sont la parole et l’écriture manuscrite. Pour automatiser l’interaction
homme – machine, on a créé des systèmes pour les reconnaître. Donc, la
reconnaissance d’écriture manuscrite est un problème qui a été connu par plusieurs
de recherches. De nombreux travaux de recherche ont porté sur la reconnaissance
d’écriture manuscrite. Des grands progrès et des succès de ces travaux de
recherches ont donné lieu à beaucoup d’applications industrielles. Deux grandes
classes d'application sont aujourd'hui à l'étude : les applications bancaires ou
postales, qualifiées de hors lignes ou statiques. Par exemple en France, deux

millions de chèques sont lus chaque jour sans intervention humaine et les
applications destinés à la bureautique, qualifiées d’en lignes ou dynamiques ou
temps réel.
Il y a deux catégories du système de reconnaissance : en ligne et hors ligne,
qui ont été distinguées par ses entrées.
- Reconnaissance hors ligne : La reconnaissance hors ligne travaille sur un
instantané d’encre numérique (sur une image). C’est le cas notamment de la
reconnaissance optique de caractères. Dans ce contexte, il est impossible de savoir
comment ont été tracés les différents motifs. Il est seulement possible d’extraire
des formes à partir de l’image, en s’appuyant sur les technologies de
reconnaissance de forme.
- Reconnaissance en ligne : Dans le cadre de la reconnaissance en ligne,
l’échantillon d’encre est constitué d’un ensemble de coordonnées ordonnées dans
le temps. Il est ainsi possible de suivre le tracé, de connaître les posés et levés de
stylo, éventuellement l’inclinaison et la vitesse. Il faut évidemment un matériel
spécifique pour saisir un tel échantillon, c’est le cas notamment des stylos
10


numériques ou des stylets sur agendas électroniques ou sur les tablettes PC. La
reconnaissance en ligne est généralement beaucoup plus efficace que la
reconnaissance hors ligne car les échantillons sont beaucoup plus informatifs.
2.1.2 Etat de l’art :
Au cœur des systèmes de reconnaissance d’écriture manuscrite, ce sont les
moteurs de reconnaissance de caractères isolés qui ont le plus bénéficié des
recherches [2]. Apparus dans les années 50, les premiers moteurs de
reconnaissance de caractères manuscrits étaient basés sur l’extraction de vecteurs
de caractéristiques de bas niveau sur des images binarismes. Durant cette période,
la puissance limité des machines et mauvais qualité des systèmes d’acquissions de
données ont toutefois bridé les travaux. À partir des années 80, l’apparition des

tablettes graphiques pouvant capturer les coordonnées du mouvement du tracé a
permis aux chercheurs s’intéresser à la reconnaissance d’écriture en ligne [2].
Depuis les années 90, les progrès faits en traitement d’image, reconnaissance de
formes et classification ont amorcé une nouvelle évolution dans les systèmes de
reconnaissance d’écriture. Par exemple, Ahmad a utilisé le modèle SVM pour
appliquer dans la reconnaissance d’écriture manuscrite. Chaque caractère a été ré –
divisé en des sections égaux et extrait des caractéristiques de la direction et la
courbe d’écriture. Dans sa recherche, Ahmad a fait la comparaison le modèle
SVM avec le modèle MLP (Multilayers Perceptrons) et TDNN (Time Delay
Neural Network) [5]. Il conclure que le modèle SVM a des bonnes solutions avec
les deux ensembles de données UNIPEN et IRONOFF.
Les techniques statistiques modernes telles que les réseaux de neurones, les
machines à vecteurs de support ou les modèles de Markov cachés, couplées à une
nouvelle augmentation de la puissance des machines ainsi qu’à une amélioration
des scanners ou des tablettes graphiques ont permis d’obtenir les premiers résultats
satisfaisants pour la reconnaissance de l’écriture. En particulier, on obtient
désormais des résultats acceptables pour la reconnaissance de caractères
manuscrits isolés ou pour la reconnaissance de mots en contexte mono scripteur
avec un lexique limité.

11


2.2 PROBLEMATIQUE DU SUJET :
La difficulté à reconnaître l’écriture manuscrite isolée augmente avec les 2
styles d’écriture suivants : écriture scripte précasée et écriture scripte avec
caractères espaces. (Figure 1.1)

Figure 2.1 - Deux styles d’écriture
Dans le style de l’écriture scripte précasée, les caractères sont écrits dans

les boîtes. Alors, on peut déterminer facilement les caractères grâce aux boîtes qui
leur contiennent. Dans le style de l’écriture scripte avec caractères espaces, les
caractères sont écrits librement avec une espace entre eux. C’est pourquoi, la
reconnaissance d’écriture devient plus difficile que le 1er style car la détermination
des caractères s’est basée sur les espaces entre eux. Les différences entre les deux
styles d’écriture sont une des raisons des différences entre les systèmes de
reconnaissance d’écriture.
Dans ce mémoire, nous nous focalisons sur la reconnaissance des caractères
manuscrits isolés en ligne. Les données entrées sont une image de vecteur des
tracées d’encre qui a été créé quand on a écrit sur une tablette. Chaque tracé est
représenté par l’ensemble des coordonnées des points. De plus, les caractères
doivent être écrits séparément.
CARACTERISTIQUE DE DONNEES.
Les données acquis au long de la tablette sont les tracés qui sont représentés par
l’ensemble des coordonnées des points (x, y). Le nombre de points sur un tracé
dépend de la vitesse d’écriture et la totalité des points d’un tracé peut être
différente en cas de même personne et de même vitesse.
Chaque caractère peut être créé par un ou plus d’un tracé. Le nombre de
tracés de chaque caractère est différent. En général, dans la reconnaissance
12


d’écriture manuscrite en ligne, après la segmentation, chaque caractère sera stocké
dans un fichier selon le standard UNIPEN [5] qui est décrit dans la figure 2.2.

Figure 2.2 - Illustration des partis dans un fichier du signal d’écriture manuscrite
en ligne selon le standard UNIPEN
Selon le standard UNIPEN, chaque fichier de caractère se compose de 2
parties : la partie des informations et la partie des données. La partie des
informations consigne les informations de la date, du scripteur, de la résolution, de

la taille et du nombre de tracé du caractère… Ces informations sont séparées par
les mots de passes. Dans la partie des données, il s’agit de stockage de chaque
tracé sous forme d’ensemble des points entre 2 mots de passes .PENDOWN et
.PENUP, de stockage de chaque point par la coordonnée X, la coordonnée Y, du
nombre P qui est la force de la plume quand on écrit et du temps T entre 2 points.

13


Dans ce mémoire, notre équipement n’a pas la fonction de consignation du
temps entre 2 points et la force de la plume. Alors, les tracés ne sont que
l’ensemble des coordonnées (x, y). C’est-à-dire, chaque point a seulement 2
parties : le coordonnée X et le coordonnée Y. Cette raison amène la différence
entre les modèles de reconnaissance d’écriture manuscrite.
2.3 ETUDE DE CAS :
Comme

les

autres

méthodes

de

reconnaissance,

le

modèle


de

reconnaissance des caractères manuscrits isolés en ligne comprend 2 parties : la
partie d’entraînement et la partie de reconnaissance.
Dans la partie d’entraînement, les échantillons des caractères seront utilisés
pour créer le modèle de reconnaissance. Avant d’entraîner, les données doivent
être traitées en 2 étapes élémentaires suivantes :
 L’étape de prétraitement : cette étape traite les données avant d’entraîner
ou de reconnaître afin d’augmenter l’efficacité de la classification. La
donnée est créée par l’équipement qui ne peut pas utiliser tout de suite
parce qu’il y a beaucoup de bruits. Les techniques règlent les données
pour augmenter la performance de la reconnaissance qui a apparu
souvent dans cette étape. Les techniques sont utilisées souvent :
l’échantillonnage,
normalisation…

le ré-échantillonnage, l’élimination de bruit et la

 L’étape d’extraction de caractéristique : C’est une étape importante qui
influence la performance d’algorithme. Ses caractéristiques sont les
attributs séparés. Alors, on peut leur identifier et leur mesurer lorsqu’on
recherche un objet. Les caractéristiques doivent comporter les
informations nécessaires afin de pouvoir distinguer les classes de façons
cohérentes et claires.
La partie de reconnaissance comporte les données entrées qui sont les
caractères ayant besoin de reconnaître et les sorties qui sont les résultats de
classification. Comme la partie d’entraînement, avant de reconnaître, les données
sont traitées en 2 étapes : prétraitement et extraction de caractéristique.


14


Les caractères sont utilisés
pour créer l’ensemble
d’apprentissage

Le caractère a besoin de
reconnaître

Prétraitement

Prétraitement

Extraction de
caractéristique

Extraction de
caractéristique

Entraînement

Le modèle après
d’entraîner

Reconnaissance

Le résultat de la
reconnaissance
Figure 2.3 - Modèle de reconnaissance des caractères manuscrits.

Dans le modèle précédent (figure 2.3), la donnée entrée est un caractère.
Pourtant, la donnée entrée dans notre système est des phrases qui contiennent
plusieurs caractères. Alors, il faut ajuster l’étape de la segmentation afin de séparer
les caractères. Après avoir segmenté les caractères, on a 2 parties : lettre (alphabet
majuscule et minuscule) et accent (s’il y en a). Chaque partie sera une entrée pour
identifier le modèle de reconnaissance des caractères manuscrits (figure 2.3). Puis,
on va combiner les résultats des deux parties pour avoir un mot complet. En outre,
pour améliorer l’efficacité de la reconnaissance, nous avons installé un algorithme
dans l’étape de correction pour traiter le résultat après la reconnaissance des
caractères manuscrits. Le modèle proposé par notre système est comme suivant :

15


L’image du vecteur a été créée
par la tablette.

Segmentation

Accent

Lettre (alphabet, numéro,
caractère spécial)

Reconnaissance

Reconnaissance

Combinaison


Correction
Le résultat après correction
Figure 2.4 - Modèle de reconnaissance de caractère manuscrit de notre système
2.4 CONCLUSION :
Dans ce chapitre, nous avons présenté globalement la reconnaissance des
caractères manuscrits et les propriétés des données des caractères manuscrits en
ligne. Par ailleurs, nous avons aussi introduit le modèle général d’entraînement et
de reconnaissance d’écriture. Le prochain chapitre sera consacré au processus de
segmentation, un des étapes le plus important dans le modèle de reconnaissance
d’écriture manuscrite.
16


CHAPITRE 3 : SEGMENTATION
3.1 PROBLEMATIQUE :
Comme vous le savez, la donnée entrée du système de reconnaissance des
caractères manuscrits est un fichier .DNT (Figure 3.1) qui contient un ou plusieurs
paragraphes. Cependant, le modèle de reconnaissance de caractère manuscrit
proposé dans nos travaux est un modèle de caractère qui peut reconnaître un
caractère à chaque fois. Par conséquent, l’étape de la segmentation est très
importante car elle influence directement les résultats des étapes ultérieures. Alors,
il faut avoir une bonne méthode de segmentation qui peut identifier précisément
les caractères afin de diminuer les fautes pendant le processus de la
reconnaissance.

Figure 3.1 - Fichier entré (fichier .DNT)
Comme les autres systèmes, l’étape de la segmentation se compose de 3
parties principales. La 1ère partie est de segmenter des paragraphes en ligne. La 2e
partie détermine des mots contenus dans les lignes segmentées. Et la dernière
partie est de segmenter ces mots en caractère. Pourtant, dans ce mémoire, nous

recherchons la reconnaissance d’écriture manuscrite française. C’est pourquoi,
nous avons ajusté la détection des accents afin de reconnaître séparément les
lettres et les accents pour améliorer la capacité de reconnaissance.
17


La donnée entrée de la segmentation est un fichier .DNT. Les sorties sont
des lettres (caractère alphabet, caractère spécial, numéro) et des accents.
Segmentation en ligne

Le fichier .DNT

Segmentation en mot

Segmentation en caractère

Détection d’accents

Les lettres

Les accents

Figure 3.2 – Processus de traitement d’un fichier .DNT
De plus, la position des tracés sera différente en cas de même document
quand le scripteur utilise les façons d’écriture différentes. Par conséquent, la
segmentation deviendra plus difficile. Par exemple :
La position des tracés dans le mot «diplôme» sera différente dans les deux façons
d’écriture suivantes :

Figure 3.3 - Différences dans les deux façons d’écriture.

18


Pour résoudre ce problème, il faut trier les tracés avant de les segmenter.
Afin de faciliter l’appel des tracés, nous définissons les parties d’un tracé comme
suivant :
Le sommet

La droite

La gauche

La base

Figure 3.4 - Définition des parties d’un tracé.
3.2 SEGMENTATION EN LIGNE:
Problématique
Après l’acquisition de la donnée entrée, elle est un groupe de tracés
contenant toutes les tracés d’encre. Chaque tracé comporte les informations de la
coordonnée X, Y. La problématique est comment on peut segmenter le groupe des
tracés en chaque ligne.

Figure 3.5 – Coordonnées d’un tracé.
19


Méthode.
En nous basant sur Y, nous segmentons verticalement ce groupe afin d’assembler
les tracés qui appartiennent à une ligne. L’algorithme de la segmentation se fonde
sur les observations suivantes :

1) Trier les tracés dans le groupe de tracés en l’ordre croissant de la
coordonnée Y.
2) Considérer que le 1er tracé est la 1ère ligne.
3) Si la distance entre le tracé et la ligne courante est inférieur au seuil, ce
tracé sera une partie dans la ligne courante.
4) Si la distance entre le tracé et la ligne courante est supérieur au seuil, ce
tracé sera considéré comme une nouvelle ligne.
Dans cette méthode, nous considérerons la distance entre la base de la ligne
courante et le sommet du tracé suivant.
Considérer les tracés d’encre du paragraphe dans la Figure 3.6 :
 Le tracé 1 appartient à la 1ère ligne. (Observation 2)
 Les tracés 2, 3, 4, 5 appartiennent à la 1ère ligne. (Observation 3)
 Le tracé 6 appartient à la 2e ligne. (Observation 4)
 Les tracés restant appartiennent à la 2e ligne. (Observation 3)

Figure 3.6 - Boîte englobante des tracés 1, 2, 3, 4, 5
Cependant, dans certains cas, cet algorithme ne peut pas segmenter exactement les
lignes. Par exemple :

20


Figure 3.7 - Une faute de la segmentation en ligne.
Dans le cas ci-dessus,
 Le tracé 1 appartient à la 1ère ligne (Observation 2).
 Les tracés 2, 3, 4 appartiennent à la 1ère ligne (Observation 3).
 Le tracé 6 appartient à la 1ère ligne (Observation 3).
 Les tracés 5, 7, 8, 9 appartiennent à la 1ère ligne aussi (Observation 3).
Alors, cet algorithme ne peut pas segmenter exactement.
Points forces.

Algorithme est simple.
La segmentation est mieux dans les cas généraux.
Points faibles.
Dans quelque cas spécial, la segmentation ne pourra pas être réalisée
exactement (Figure 3.7)
Algorithme.
Afin de résoudre les inconvénients de la méthode ci-dessus, nous proposons
un algorithme qui est fondé sur les observations comme cette méthode mais
maintenant, la distance est la distance entre le centre de la ligne actuelle et le
centre du tracé suivant.
Cet algorithme peut résoudre le problème de segmentation en ligne dans la
figure 3.7. La segmentation aura le résultat ci-dessous :
 Le tracé 1 appartient à la 1ère ligne (Observation 2).
 Les tracés 2, 3, 4 appartiennent à la 1ère ligne (Observation 3).
 Le tracé 6 appartient à la 2e ligne (Observation 4).
 Les tracés 5, 7, 8, 9 appartiennent à la 2e ligne (Observation 3).
D’abord, on trie les tracés en l’ordre croissant de la coordonnée Y.
21


Ensuite, nous considérons le tracé 1 comme la 1ère ligne. Les tracés restants seront
décidés quel tracé appartient à cette ligne, quel tracé appartient à une autre ligne.
Nous définissons la boîte englobante d’ensemble des points d’encre comme
suivant :
Mettre A est un ensemble des points d’encre. minx=min{x/(x, y)  A},
miny=min{y/(x,y)  A}, maxx=max{x/(x,y)  A}, maxy=max{y/(x,y)  A}. La
boîte englobant de A est le rectangle qui est créé par quatre lignes : x=minx,
x=maxx, y=miny, y=maxy. Par exemple, la boîte rouge dans la Figure 2.7 présente
la boîte englobant des cinq tracés 1, 2, 3, 4 et 5. Et le point central de A est la
coordonnée CENAx= (minx+maxx)/2 et CENAy= (miny+maxy)/2).

Dans cette méthode, la distance entre deux boîtes englobant A et B est la
distance entre deux centres. C’est-à-dire, d = CENBy-CENAy.
Puis, considérer les tracés restants. Si la distance à la ligne courante de un
tracé est plus courte que le seuil (ici, le seuil : 400), ce tracé sera une partie de la
courante ligne. Si non, il sera une nouvelle ligne qui deviendra la courante ligne.
Enfin, le sorti sera un tableau des lignes.
L’algorithme de la segmentation des lignes est comme suivant :
Entré.
G : le groupe des tous tracés (Tracegroup en anglais) du fichier .DNT.
Sorti.
L : le tableau des lignes.
Algorithme.
Vector <Tracgroup> SegmentationLigne(G : groupe des encres){
Trier les tracés dans G en l’ordre croissant de la coordonnée Y ;
Définir un Vector <Tracgroup> L qui sera le sorti ;
Définir une ligne temporaire L qui compose le 1er tracé du G ;
For (each tracé t dans G à partir de tracé numéro 1) {
If (La distance entre t et T : d <400){
//si la distance est plus courte.
//t appartiens à la ligne courante.
T=T+{t} ;
}
22


Else{
//si la distance est plus longue.
//enregistrer la ligne courante.
L=L+{T} ;
Vider les tracés dans T ;

//t est une nouvelle ligne.
T=T+{t} ;
}
}//terminer for
If (T n’est pas vide){
//enregistrer la dernière ligne.
L=L+{T} ;
}
Return L ;
}//terminer fonction

Figure 3.8 - Résultat de la segmentation des lignes
3.3 SEGMENTATION EN MOT ET EN CARACTERE :
Problématique
Après la segmentation en ligne, les données sont encore les groupes des
tracés que le système ne peut pas reconnaître. Alors, il faut séparer les lignes en
23


×