L`algorithme de Gatos et al.

Transcription

L`algorithme de Gatos et al.
L’algorithme de Gatos et al.
Bouhlel Bassem
Émilien Tlapale
Mohamed Mehdi Youssef
24 avril 2006
Résumé
Ce document présente les résultats de notre implémentation de l’algorithme de Gatos et al.. Il sera inclut dans la section décrivant l’algorithme de notre rapport de TER.
1
Implémentation
Nous avons implémenté l’algorithme de Gatos, Papamarkos et Chamzas
[1] en C++ grâce à la bibliothèque CImg.
L’algorithme n’utilise que certaines lignes verticales de l’image, nous nous
sommes pour l’instant limité à deux lignes, le rendre plus général est assez
trivial pour la détection de l’orientation, légèrement plus complexe pour la
segmentation du texte en ligne.
1.1
Problèmes actuels
Nous constatons pour l’instant quelques problèmes liés notamment au
courtes lignes de texte qui ne coupent pas les lignes de scan de l’algorithme.
Un autre problème surgit lorsque le texte est multi-colonnes mais que les
lignes de chacune des colonnes ne sont pas alignées. Ces deux problèmes
peuvent être résolus par l’utilisation d’un plus grand nombre de lignes de
scan.
Un petit problème surgit avec les points des caractères latins (par exemple
des i ) qui créé des lignes fictives dans la table des lignes. Ce problème peut
être résolu en associant les très petites lignes avec la ligne la plus proche. Il
disparaı̂trait peut-être avec plusieurs lignes de scans.
1.2
Performances
Les performances de l’algorithme de Gatos et al. semblent assez bonnes,
sur un AMD Turion 64 cadencé à 1.6GHz, le temps d’exécution complet du
programme en incluant les allocations dynamiques, le chargement de l’image,
sa binarisation, etc, pour une image de 882x1105 est compris entre 40 et 50
millisecondes.
1
Les performances peuvent encore être améliorés, par exemple en n’effectuant pas le lissage RLSA pour toute l’image mais seulement pour les
portions utilisées par les lignes de scan. Il reste sûrement d’autres portions
de code à améliorer.
1.3
Conclusions
Cet algorithme très simple permet de détecter des lignes (leur position,
angle et épaisseur) de tailles variées et ce de façon très rapide puisque celles
quelques portions de l’image sont utilisées.
Références
[1] B. Gatos, N.Papamarkos, and C. Chamzas. Skew detection and text
line position determination in digitized documents. Pattern Recognition,
30(9) :1505–1519, 1997.
2