• Aucun résultat trouvé

Traitement des images de documents binarisées

Partie II : Contributions

Chapitre 4 : Contributions à l’évaluation des techniques de binarisation

4.2. Evaluation objective de plusieurs techniques de binarisation d‘images de documents dégradés

4.3.2. Description de l‘approche proposée

4.3.2.2. Traitement des images de documents binarisées

Sur chaque image (réelle ou synthétique) de la collection de test nous appliquons les différentes méthodes de seuillage considérées dans l‘évaluation, et les images binarisées résultantes sont soumises à un certain nombre de traitements automatiques visant à représenter chaque image par une signature textuelle décrivant les caractéristiques

128

structurelles (hampes, jambages, boucles, et points diacritiques) extraites à partir des sous- mots présents dans le document. Les étapes de traitement sont les suivantes :

4.3.2.2.1. Lissage

La binarisation peut introduire du bruit dans l‘image, qui se traduit en particulier par la présence d‘irrégularités le long des tracés des caractères. Pour pallier à ce problème, nous appliquons un lissage en utilisant l‘algorithme de [MAH 94] qui réduit le bruit d‘une image binaire en éliminant les pixels isolés d‘une part et en bouchant les trous vides de l‘autre part. Cette technique simple et efficace est basée sur une décision statistique. En effet, la nouvelle valeur de chaque pixel dans l‘image binarisée est calculée en fonction de sa valeur initiale et celles des 8 pixels voisins (Figure 4.17).

P1 P2 P3 P4 P0 P5 P6 P7 P8

Figure 4. 17. Pixel courant P0 et ses voisins

La figure 4.18 montre le résultat d‘application de cet algorithme sur une image de mot.

(a) image binarisée (b) image lissée

Figure 4. 18. Lissage d’une image de mot binarisée

4.3.2.2.2. Correction de l’inclinaison (Redressement de l’image)

Les anciens documents composant notre collection sont parfois inclinés. La présence des inclinaisons influe considérablement sur les étapes de segmentation et d‘extraction des caractéristiques et par conséquent sur le résultat final du système. Une étape de redressement est alors nécessaire. Pour cela, nous avons utilisé une méthode de correction de l‘inclinaison basée sur les projections partielles. La méthode procède en cinq étapes comme suit (voir [KEF 10][SAR 11] pour plus de détails):

1- Division de l‘image en colonnes de taille fixe (taille d‘un mot environ) 2- Calcul des histogrammes des projections horizontales de chaque colonne

3- Extraction des lignes de base correspondant aux pics des histogrammes calculés auparavant.

4- Calcul de l‘angle d‘inclinaison du document θ comme la moyenne de tous les angles formés par deux lignes de base appartenant à deux colonnes successives.

5- Rotation de l‘image d‘angle θ

129

image de document incliné.

(a) image inclinée (b) correction de l’inclinaison

Figure 4. 19. Résultat de redressement d’une image de document incliné

4.3.2.2.3. Segmentation en lignes/ sous-mots

Après le lissage et le redressement, vient l‘étape de segmentation. Le but de cette étape et d‘extraire les différents sous-mots du texte. Le choix de travailler avec les sous-mots est justifié par le fait qu‘ils nous semblent offrir un meilleur compromis entre la complexité de la segmentation des mots arabes manuscrits en lettres et l‘approche globale qui emploie des dictionnaires de petites tailles. En effet, avec un petit nombre de sous-mots on peut construire un grand nombre de mots et leur extraction est plus facile [KEF 10][SAR 11].

Pour extraire les sous-mots, nous devons tout d‘abord segmenter le texte en lignes, et par la suite segmenter chaque ligne en sous-mots.

Les lignes du texte sont séparées en utilisant des mesures de densité des plages blanches à partir des projections horizontales. Les vallées de l‘histogramme correspondent aux zones de séparation entre les lignes. L‘algorithme de séparation en lignes procède comme suit (voir [KEF 10][SAR 11] pour plus de détails):

1- Calcul de l‘histogramme des projections horizontales de l‘image.

2- Extraction des minima locaux correspondant aux zones de séparation entre les lignes. 3- Filtrage des minima locaux obtenus auparavant.

4- Résolution des conflits en attribuant les pixels noirs existants dans les zones séparatrices à la ligne du texte la plus proche par analyse de proximité.

Le résultat de segmentation en lignes d‘une image de document est donné par la figure 4.20.

(a) image non segmentée (b) lignes séparées

130

Après, les sous-mots sont extraits à partir de chaque ligne du texte. Dans l‘écriture arabe, le sous-mot correspond à une composante connexe principale (corps du sous-mot) et des composantes connexes auxiliaires représentant les signes diacritiques. L‘extraction des sous- mots consiste à étiqueter les différentes composantes connexes de l‘image et ensuite d‘attribuer chaque point diacritique à son propre corps du sous-mot. L‘extraction des composantes connexes se fait en regroupant les pixels noirs voisins dans une unité distincte (Figure 4.21), et on utilise pour cela la méthode d‘agrégation des pixels. Cette méthode peut être résumée par les étapes suivantes :

1- Trouver un premier pixel noir non visité.

2- Chercher tous ses voisins : si l‘un des voisins est un pixel noir on le regroupe avec le premier et on réitère récursivement l‘opération pour tous les voisins.

3- On s‘arrête lorsque tous les pixels noirs soient visités. 4- Revenir à l‘étape 1.

Figure 4. 21. Ligne de texte segmentée en composantes connexes

La décision qu‘une composante connexe est un point diacritique ou non est basée sur une heuristique : les points diacritiques sont généralement plus petits que les corps des lettres. Les composantes connexes, dont la taille est inférieure à un certain seuil sont donc considérées comme des points diacritiques. Le seuil est choisi relatif à la taille moyenne des composantes connexes : seuil = taille moyenne / n. Avec n est fixé par expérimentations. Finalement, les points diacritiques sont attribués au corps du sous-mot le plus proche par analyse de proximité.

4.3.2.2.4. Extraction des caractéristiques

L‘extraction des caractéristiques a comme but d‘identifier les propriétés les plus importantes pour la discrimination de classes de formes. Cette étape doit être effectuée le plus fidèlement possible, car les caractéristiques extraites composent la signature qui représente le document. Un des problèmes fondamentaux dans l‘analyse d‘images est de déterminer quelles caractéristiques à employer pour avoir de bons résultats. Les primitives structurelles issues de la perception humaine qui sont reliées à la forme de l‘écriture sont considérées comme des caractéristiques pertinentes pour la discrimination des caractères manuscrits [CHE 98b]. Nous avons choisi d‘extraire à partir de chaque sous mot, quatre caractéristiques structurelles : les hampes, les jambages, les boucles et les points diacritiques.

Notons que les caractéristiques structurelles précédentes sont extraites à partir des contours des sous-mots, et en s‘aidant de la connaissance à priori que les extensions hautes et basses des caractères sont toujours en dehors d‘une zone médiane. Afin d‘extraire donc ces caractéristiques, nous procédons comme suit :

a) Détection de la ligne de base

La ligne de base est la ligne sur laquelle repose les caractères qui ne possèdent pas des descendants. Dans les textes arabes, la ligne de base porte une information assez importante sur l‘orientation des textes et la position des points diacritiques. La méthode la plus répondue pour détecter les lignes de base est la projection horizontale de l‘image [KEF 10]. La ligne de base correspond à la ligne dont la projection contient le plus grand nombre de pixels noirs (la

131

ligne rouge dans la Figure 4.22).

b) Localisation de la zone médiane

Le corps des mots arabes, apparaît dans une zone appelée zone médiane, c‘est pour cette raison que la localisation de cette zone est importante pour l‘extraction des caractéristiques. Nous détectons cette zone en traçons 2 frontières, haute et basse par rapport à la ligne de base (les 2 lignes bleus dans la Figure 4.22). La zone médiane sera donc l‘espace compris entre ces deux frontières (Voir [KEF 10][SAR 11] pour plus de détails).

Figure 4. 22. Ligne de base et zone médiane détectées sur une ligne de texte

c) Suivie de contours

Le suivi de contours est communément utilisé pour l‘extraction des caractéristiques structurelles des caractères. Le contour d‘un sous-mot est l‘ensemble de points délimitant le tracé, et pour le codage du contour, le code généré est la chaine de Freeman, qui représente les directions des pixels du contour à 8 voisins. Le code de Freeman est une technique très utile pour représenter le contour d‘un objet sur l‘image. Elle consiste à décrire le contour d‘une forme en spécifiant un point de départ et en indiquant les pixels voisins immédiats par l‘une des 8 directions possibles. Les 8 directions indiquent les 8 voisins immédiats possibles du pixel analysé.

Ainsi l‘objet de la figure 4.23.b possède le code de Freeman suivant, le point d‘origine étant celui identifié par X se trouvant en (4, 1) :1-2-1-1-2-3-4-5-5-3-4-4-6-6-7-7-7-0.

(a) Directions du contour (b) contour d’un objet

Figure 4. 23. Suivie de contours d’un objet

L‘analyse de ces contours, leur type (interne ou externe) et leur position nous permet de distinguer la présence des boucles, des points diacritiques, et des extensions hautes et basses.

d) Extraction des Diacritique

Une composante connexe est considérée comme un point diacritique si sa taille est inférieure à un certain seuil.

e) Extraction des Jambages

Un jambage correspond à une descente qui se termine en dehors de la zone médiane c‘est-à- dire située dans la zone inférieure.

132

f) Extraction des Hampes

Une hampe correspond à une montée qui dépasse la zone médiane (au dessus de la frontière haute).

g) Extraction des Boucles

Les boucles sont utiles pour l‘identification de certains caractères. Pour détecter les boucles, on regarde si toutes les cordonnées d‘un contour englobent toutes les coordonnées d‘un autre, alors on a une boucle.

Chaque caractéristique est représentée par une couleur dans la Figure 4.24.

Figure 4. 24. Caractéristiques extraites sur une ligne de texte

4.3.2.2.5. Codage

Après l‘extraction des caractéristiques, une signature textuelle est attribuée au document comme procédée lors de la préparation des signatures de vérité terrain, c‘est à dire en faisant correspondre à chaque caractéristique un code en ASCII (les hampes en H, les jambages en J, les boucles en B, les points diacritiques hauts en P, et les points diacritiques bas en Q). Un autre caractère est ajouté (le point virgule ‗ ; ‘) qui sert de séparateur inter-sous-mots. Par exemple, les caractéristiques détectées de l‘image de la figure 4.24 sont codées par la signature :

J;PQQJP;JP;PHQJ;QP;PH;PJ;J;PH;QJ;QP;PH;QH;H;H;H;HBPJ

4.3.2.3. Comparaison

Finalement, pour chaque image de la collection de test, les signatures extraites à partir des images résultantes des différentes méthodes de binarisation sont comparées avec la signature de vérité terrain préétablie. La comparaison est effectuée en utilisant une célèbre mesure de distance entre les chaines, à savoir la distance d‘édition. Cette dernière est parfois référencée comme la distance de Levenshtein en reconnaissance de l‘article [LEV 66] par Vladimir Levenshtein où la distance d‘édition a été certainement discutée pour la première fois. La distance d‘édition entre deux chaînes est définie comme le nombre minimal d‘opérations d‘édition (insertion, suppression, substitution) nécessaires pour transformer la première chaîne en la seconde. En effet, Levenshtein a introduit la définition de la distance d‘édition mais il n‘a jamais décrit l‘algorithme permettant de trouver la distance d‘édition entre deux chaînes [PEV 06]. Un algorithme de calcul de la distance d‘édition entre les chaîne X et Y a été proposé par Wagner et Fischer dans [WAG 74]. Ainsi pour comparer une signature extraite après le traitement avec une signature de vérité terrain en utilisant l‘algorithme de Wagner et Fischer, nous considérons les deux signatures comme deux suites X = (x1 ... xn) et

Y = (y1 ... ym).

L‘algorithme de Wagner et Fischer est un algorithme de programmation dynamique, qui utilise une matrice D de dimension (n+1)×(m+1) où n et m sont les longueurs des deux chaînes de caractères. L‘approche consiste à remplir la table D tel que la valeur d‘une case dépend des valeurs précédemment obtenues. La première ligne de la table D(0, i) est initialisée à i et la première colonne D(j, 0) est initialisée à j. L‘algorithme peut être résumé par le pseudo-code suivant.

133

Pré-requis : n = longueur de la première chaîne X Pré-requis : m = longueur de la deuxième chaîne Y

Pré-requis : C(a, b) = coût de la transformation pour passer de a à b Pré-requis : lambda = vide

Assure : D [m, n] = distance d‘édition de X à Y Pour i = 0...n Faire D[0, i]=i

Pour j = 0...m Faire D[j, 0]=j Pour i = 1...m Faire

Pour j = 1...n Faire D [i ,j] = Min {

D [i-1, j-1] + C (Xi, Yj), // substitution (0 si les caractères Xi et Yj sont égaux)

D [i-1, j] + C (Xi, lambda), // effacement

D [i, j-1] + C (lambda, Yi)} // insertion

} Fin Pour Fin Pour

La distance entre les deux signatures X et Y est contenue dans ladernière case de la matrice D. La meilleure méthode de binarisation pour chaque image de la collection de test est finalement celle avec laquelle les caractéristiques extraites sont les plus proches des caractéristiques de vérité terrain, c'est-à-dire dont la distance entre la signature extraite et la signature de vérité terrain est minimale.

4.3.3. Expérimentations et résultats

La méthodologie d‘évaluation proposée a été utilisée pour évaluer les performances de différents algorithmes de binarisation pour l‘objectif de la recherche d‘images de documents arabes dégradées.

Documents relatifs