De texto et contexto – le projet en bref
Notre projet s’inscrit dans une démarche de mise en valeur des collections de la Bibliotheca Bodmeriana par le Bodmer Lab, un projet impliquant l’Université de Genève et la Fondation Martin Bodmer. Notre travail consiste à « océriser » les 29 volumes de la constellation de Bry, dont les numérisations – à l’image des figures 1 et 4 – sont d’ores et déjà accessibles en ligne, et ce afin de rendre leur contenu textuel lisible et explorable par la recherche plein texte. Le but de ce billet est de présenter le processus d’océrisation afin d’expliciter la manière dont nos données de travail seront créées et utilisées.
De transmutatione – l’art de transformer les images en mots
Malgré ce titre évocateur, il ne sera pas question ici d’alchimie, mais bien de reconnaissance optique de caractères, optical character recognition en anglais, d’où l’acronyme OCR à l’origine du néologisme « océrisation ». Un tel processus implique trois types de données : les inputs, des numérisations aux formats image (jpeg ou tiff, par exemple), les outputs, des données textuelles aux formats txt, xml ou encore ALTO, et enfin du code informatique permettant d’obtenir ces outputs. L’océrisation consiste donc à identifier des caractères dans un document numérisé et à les extraire sous forme de chaînes de caractères lisibles par un humain comme par une machine… et ce de manière totalement automatisée.
De computatione pixelorum – combien de pixels pour un caractère ?
Derrière ce processus a priori simple se cachent des mécanismes plus complexes, qui se décomposent en quatre temps (Blanke, Bryant, Hedges 2012) : Le pré-traitement ou pre-processing, la segmentation ou layout analysis, la reconnaissance ou recognition et le post-traitement ou post-processing.
Le pré-traitement vise à rendre la numérisation manipulable par une machine en se basant sur le traitement des pixels. Lors de cette étape, les pixels sont convertis en données binaires afin de déterminer où se trouve le texte sur la page. Cette étape permet aussi d’identifier et d’éliminer le bruit ainsi que les éléments non-textuels (dessins, gravures, etc.).
La segmentation se base également sur le traitement des pixels, et permet de les diviser en paragraphes puis en lignes de texte en identifiant les marges, les espaces entre les lignes etc.
De lingua et machina – modèles de langue et intelligence artificielle
La reconnaissance commence par le découpage des segments en caractères. Ce processus peut se faire sur la base des pixels, mais il peut aussi nécessiter l’intervention de modèles de langues et de caractères avec lesquels l’OCR aura été entraîné au préalable. En effet, cette étape fait le plus souvent appel à de l’apprentissage supervisé, consistant à entraîner l’OCR en amont avec des données du même type (textes numérisés), en lui indiquant où se trouve chaque caractère et quelle signe alphanumérique il représente. Sur cette base, l’OCR est censé pouvoir reconnaître des caractéristiques, ou features, lui permettant de distinguer les différents caractères et de faire une prédiction pour chacun d’entre eux.
Enfin, le post-traitement implique la correction de la transcription proposée par l’OCR. Ces corrections peuvent être manuelles, mais elles sont de plus en plus automatisées, et font intervenir des stratégies très diverses, comme par exemple l’intelligence artificielle (Ptucha et al. 2019) ou le crowdsourcing par le jeu (Seidman et al. 2016).
De gratuitis instrumentis – la démocratisation de l’océrisation… et ses limites.
Le processus ci-dessus et les outils informatiques permettant de le réaliser ont été développés au début du XXe siècle et sont en constante évolution depuis (Nagy 2016). Cependant, les premiers logiciels d’océrisation sur le marché étaient des « boîtes noires » (Blanke, Bryant, Hedges 2012). Ce n’est qu’avec l’arrivée du logiciel open source Tesseract en 2005 que la magie de l’océrisation a pu être dévoilée, ouvrant ainsi la voie à la création de nombreux autres OCR libres.
Ces OCR sont généralement déjà entraînés à l’aide de numérisations, de modèles de langues et de polices de caractères. Cela a pour avantage de les rendre « prêts à l’emploi », mais présente l’inconvénient de limiter leurs compétences selon les inputs : tous les OCR ne sont pas efficaces de manière équivalente avec toutes les langues, toutes les polices de caractères et toutes les qualités d’image.
Quem ad finem ? – De Bry océrisé
Notre projet consiste donc à tester différents OCR open source afin de déterminer lequel sera le plus performant dans le traitement des numérisations à notre disposition. L’OCR retenu servira ensuite à transcrire l’intégralité de la collection de Bry, et nous devrons alors proposer des solutions de traitement efficaces – adaptation du code, entraînement sur de nouveaux modèles, développement de réseaux neuronaux artificiels etc. – afin d’obtenir une transcription automatique présentant un taux d’erreur minimal. Cette transcription pourra ensuite être utilisée sur le site du Bodmer Lab pour faciliter l’accès au texte et la recherche dans les 25 volumes de la collection.
Bien que l’océrisation soit une technologie mature, ce projet n’implique pas de réinventer la roue, mais bien d’utiliser et d’optimiser des technologies déjà éprouvées pour évaluer leur performance face aux difficultés que peuvent présenter des imprimés latins du XVIe siècle.
Bibliographie
ANUGRAH, Rio et BINTORO, Ketut Bayu Yogha, 2017. Latin letters recognition using optical character recognition to convert printed media into digital format. Jurnal Elektronika Dan Telekomunikasi [en ligne]. Décembre 2017. Vol. 17, n°2, pp. 56–62. [Consulté le 28 juin 2019]. Disponible à l’adresse : https://www.jurnalet.com/jet/article/view/163
BLANKE, Tobias, BRYANT, Michael et HEDGES, Mark, 2012. Open source optical character recognition for historical research. Journal of Documentation [en ligne]. Août 2012. Vol. 68, n°5, pp. 659–683. [Consulté le 28 juin 2019]. Disponible à l’adresse : https://www.emeraldinsight.com/doi/full/10.1108/00220411211256021
BRENER, Nathan E., IYENGAR, S. S. et PIANYKH, O. S., 2005. A conclusive methodology for rating OCR performance. Journal of the American Society for Information Science & Technology [en ligne]. Juillet 2005. Vol. 56, n°12, pp. 1274–1287. [Consulté le 28 juin 2019]. Disponible à l’adresse : http://search.ebscohost.com/login.aspx?direct=true&db=lih&AN=18172083&site=ehost-live
NAGY, Georges, 2016. Disruptive developments in document recognition. Pattern Recognition Letters [en ligne]. Août 2016. Vol. 79, pp. 106–112. [Consulté le 28 juin 2019]. Disponible à l’adresse : http://www.sciencedirect.com/science/article/pii/S0167865515004109
PTUCHA, Raymond, et al., 2019. Intelligent character recognition using fully convolutional neural networks. Pattern Recognition [en ligne]. Avril 2019. Vol. 88, pp. 604–613. [Consulté le 28 juin 2019]. Disponible à l’adresse : http://www.sciencedirect.com/science/article/pii/S0031320318304370
SEIDMAN, Max J., et al., 2016. Are games a viable solution to crowdsourcing improvements to faulty OCR ? – The Purposeful Gaming and BHL experience. Code4Lib Journal [en ligne]. Juillet 2016. Vol. 33, p. 1. [Consulté le 28 juin 2019]. Disponible à l’adresse : http://search.ebscohost.com/login.aspx?direct=true&db=lih&AN=116963678&site=ehost-live