Bibliothèque nationale de France

Formulaire de recherche

  Pour les professionnels

Écouter la page :

Télécharger

Conversion en mode texte

Afin de répondre aux usages des internautes, la BnF assure la conversion en mode texte des documents imprimés le permettant et préalablement numérisés en mode image. Des accès enrichis sont par ailleurs spécifiquement créés pour les tables des matières et index.
L’ensemble repose sur des formats XML et sur des standards spécifiques : ALTO et TEI, détaillés dans un mémento sur les langages d'encodage et de structuration de texte.
Un certain nombre de règles spécifiques sont disponibles dans la Charte technique de numérisation de la BnF.

Conversion OCR et format ALTO

L'OCR = optical character recognition

Reconnaissance optique des caractères : permettre la recherche plein texte

La technique d’OCR permet de situer et de reconnaître les chaînes de caractères dans une image et donc de faire la conversion des mots qui peuvent ensuite être utilisés pour faire une recherche plein texte. Cette conversion est assurée automatiquement par un logiciel et fait l'économie de la retranscription manuelle, beaucoup plus chère. Les mots et chaînes de caractères stockés dans un fichier texte peuvent être réutilisés pour une nouvelle mise en page, exploités dans une base de données, etc.

Le principe est la reconnaissance de caractères à partir de formes mémorisées par le logiciel et de termes déjà connus car présents dans le dictionnaire utilisé par l'outil. Chaque espace et chaque chaîne de caractères (appelé "string") est donc identifié précisément et doit être restitué dans le sens principal de lecture.

La qualité de l'OCR dépend du document original et de la qualité de la numérisation

Les techniques d'OCR sont en progrès constant pour répondre à la demande très forte, mais la qualité de reconnaissance dépend malgré tout d'un grand nombre de facteurs liés tant au document original qu'à la numérisation elle-même. Ainsi :

  • les images numériques doivent être suffisamment contrastées et redressées ;
  • les défauts d'impression (caractères trop empâtés, bavures, a fortiori transparence entre deux pages) diminuent la qualité de reconnaissance et de segmentation des mots ;
  • les ouvrages en colonnes et/ou illustrés, dans lesquels la lecture n'est pas linéaire sont plus complexes à traiter que les ouvrages à la présentation homogène ;
  • d'une manière générale, les polices très petites ou au contraire très grandes, et/ou à caractères espacés, sont difficilement traitables ;
  • les ouvrages en alphabets non latins sont également complexes à traiter, mais les progrès sont plus avancés que sur l'écriture manuscrite ancienne.

Le format ALTO (Analyzed Layout and Text Object)

Afin d’exploiter les résultats de l’OCR, on utilise à la BnF un format basé sur XML et géré par un schéma, le format ALTO.

Le format ALTO

ALTO est un des formats les plus couramment utilisé pour la conversion des textes à partir des images. Il est basé sur XML et géré par un schéma. Il conserve toutes les coordonnées du contenu (texte, illustrations, graphiques) dans l’image et permet la superposition de l’image et du texte (fichier PDF multicouches) ainsi que la surbrillance des mots recherchés lors d’une requête.

Éléments et sous éléments composant le format ALTO

ALTO permet la segmentation d’une page en différents éléments composés de sous-éléments.

L’élément page peut contenir cinq éléments :

  • TopMargin : désigne la zone supérieure de la page du bord gauche au bord droit hors zone de texte. Quand c’est possible, il s’agit de la zone contenant le titre, l’ours, etc.
  • BottomMargin : désigne la zone inférieure de la page du bord gauche au bord droit hors zone de texte.
  • LeftMargin : désigne la zone gauche de la page hors zone supérieure, zone inférieure et zone de texte
  • RightMargin : désigne la zone droite de la page hors zone supérieure, zone inférieure et zone de texte.
  • PrintSpace : désigne la zone de texte. Cet élément est obligatoire. Il contient au moins un élément BlockGroup.
Découpage d’une page de presse selon les marges et la zone

Exemple de découpage d’une page de presse


Dès que l’un de ces éléments contient une information (texte, illustration etc.), cette information est décrite dans un ou plusieurs éléments BlockGroup.

Les éléments BlockGroup peuvent être de quatre types différent :

  • TextBlock : désigne le bloc de texte. Cet élément est utilisé pour regrouper les lignes de textes en un ensemble cohérent ;
  • Illustration : désigne une image ou un dessin ;
  • GraphicalElement : désigne un élément graphique autre qu’une image ou un dessin. Il peut être utilisé pour décrire un élément de séparation intertextuel ou un élément textuel non reconnu en tant que tel par l’OCR ;
  • ComposedBlock : est utilisé pour permettre l’imbrication d’éléments BlockGroup.

A l’intérieur d’un TextBlock, l’élément String rassemble les chaînes de caractères.

Attributs génériques

Chaque élément ou bloc préalablement identifié est définit par des attributs génériques. Ces attributs donnent la dimension de chaque bloc, ligne et chaîne de caractères ("string") et les types :

  • ID : n° du bloc
  • Height : Hauteur du bloc en pixels
  • Width : largeur du bloc en pixels
  • Quality : qualité de reconnaissance
  • Fontstyle : type de fonte
  • Type : type de police

Les coordonnées en pixels sont définies à partir du point de repère le plus en haut à gauche de la page. Ainsi, chaque bloc ligne ou chaîne de caractères reconnus est identifié dans l’ordre de présentation de l’original.

ALTO permet également de signaler des formes géométriques (cercle, polygone, ellipse), des illustrations, des graphiques, de gérer les césures... Les objets non textuels ont également leurs propres découpage et coordonnées.

Identification des mots et chaînes de caractères

Chaque chaîne de caractères composant un mot ou une partie de mot césuré (String) est identifiée avec les informations suivantes :

  • Attributs génériques
  • < content > : mot reconnu par l’outil d’OCR et/ou ressaisi selon le niveau de qualité demandé (une haute qualité, soit un taux de reconnaissance de 99,985 % implique une correction humaine)
  • Gestion des césures de mots : la partie reconnue est dans < content > , complété par :
    • < subs_type > : précise la partie concernée : < hyppart1> pour la première partie, < hyppart2> pour la seconde ;
    • < subs_content > : restitue le mot complet non coupé.
  • < wc > ("word confidence") : note de confiance de la reconnaissance de chaque mot, notée de 0 à 10 ;
  • < wd > : appartenance ou non à un dictionnaire.

Le logiciel de reconnaissance de caractère attribue pour chaque mot une valeur de fiabilité, indiquée dans la balise < wc >("word confidence"), et pouvant aller de 0 à 10. Cette valeur sert à calculer :

  • le taux de qualité de chaque page : somme des < wc > pour chaque page divisée par le nombre de mots ;
  • puis le taux de qualité de chaque document : somme des taux de qualité de chaque page, divisée par le nombre de pages.

Pour chaque document numérisé par la BnF, le taux de qualité calculé automatiquement par le logiciel est vérifié manuellement par le prestataire sur un échantillon de mots, conformément à la norme ISO 2859-1. Cette opération permet de confirmer le taux de qualité annoncé.

Pour une partie des documents numérisés, la BnF exige un taux de qualité supérieur à 99,9%. Pour tous ces documents, quel que soit le taux de qualité après OCR, le prestataire doit garantir ce taux en employant tous les moyens de corrections nécessaires, y compris manuels.

mardi 12 janvier 2010