Tutoriel: Extraction d’images de journaux avec Layout Parser
L’outil développé et le modèle pré-entraîné pour des pages de journaux est disponible ici.
Introduction à Layout Parser
Layout Parser est un outil puissant et flexible conçu pour l’analyse et l’extraction de la mise en page des documents. Il est particulièrement utile pour ceux qui manipulent des documents numérisés tels que des articles de journaux, des magazines, des rapports et autres publications. Grâce à l’intelligence artificielle (IA), Layout Parser est capable de comprendre et d’organiser le contenu des documents en fonction de leur disposition.
Historique et Contexte
Layout Parser a été introduit pour combler un besoin croissant d’outils capables de traiter automatiquement les mises en page complexes des documents. Publié en 2021, il a rapidement gagné en popularité grâce à sa facilité d’utilisation et à ses fonctionnalités avancées. Cet outil est basé sur des techniques modernes de vision par ordinateur (Computer Vision) et utilise des modèles d’apprentissage profond (Deep Learning) pour analyser les documents.
Modèles pré-entraînés proposés par Layout Parser
Layout Parser propose plusieurs modèles pré-entraînés pour l’analyse de la mise en page des documents, chacun étant optimisé pour différents types de contenu et d’applications.
- PubLayNet: Basé sur un vaste ensemble de données de publications scientifiques, PubLayNet est conçu pour les documents académiques et les publications scientifiques. Il permet l’extraction de titres, paragraphes, figures, tableaux et légendes.
- Newspaper Navigator: Développé en collaboration avec la Bibliothèque du Congrès des États-Unis, ce modèle est optimisé pour les journaux. Il permet la reconnaissance des articles de journaux, des images, des publicités et des légendes.
- Prima Layout Analysis Dataset: Conçu pour une large gamme de documents, incluant des livres, des magazines et des rapports. Il permet la détection de blocs de texte, titres, illustrations, etc.
- TableBank: Spécifiquement entraîné pour la détection des tableaux dans les documents. Il permet l’extraction précise des tableaux dans les articles de recherche, les rapports financiers et autres documents professionnels.
Modèle | Faster R-CNN | Mask R-CNN |
Description | Utilisé principalement pour la détection d’objets dans des documents complexes. | Ajoute une dimension de segmentation aux capacités de détection d’objets. |
Caractéristiques | Fournit des résultats précis pour les structures complexes et est souvent utilisé dans PubLayNet et Newspaper Navigator. | Utilisé pour les tâches nécessitant une segmentation précise, comme la reconnaissance des zones de texte dans Prima Layout Analysis Dataset. |
Vous pouvez avoir accès à une documentation des modèles de Layout Parser ici.
Un modèle ré-entraîné pour l’extraction de pages de journaux
Un nouveau modèle a été ré-entraîné dans ce dessein à partir du Prima Layout Analysis Dataset (Mask R-CNN). Un corpus de pages de journaux (début XXe siècle) récupéré via l’API de Gallica a été annoté à la main avec l’outil open-source VGG Image Annotator (VIA). Cet outil est un logiciel d’annotation d’images développé par le groupe de recherche VGG à l’Université d’Oxford. Il est utilisé pour annoter des images et des vidéos en ajoutant des régions d’intérêt et des métadonnées associées : l’import et l’export peut se faire en formats CSV, JSON et/ou COCO.
C’est ce dernier format COCO qui a permit le ré-entraînement du modèle à partir de sélection en rectangles des images présentes sur chaque page de journal ou magazine. Le modèle est publié et disponible sur la plateforme Hugging Face : https://huggingface.co/mgiardinetti/layout-parser-newspapers
Hugging Face C’est une entreprise technologique spécialisée dans le développement d’outils et de bibliothèques pour l’apprentissage automatique, en particulier dans le domaine du traitement du langage naturel (NLP). Fondée en 2016, Hugging Face est devenue célèbre pour sa bibliothèque Transformers, qui permet aux chercheurs et développeurs d’accéder facilement à des modèles de pointe pour le NLP. Principaux produits et services : – Transformers : • Une bibliothèque open source pour le traitement du langage naturel. Elle propose une vaste collection de modèles pré-entraînés (comme BERT, GPT-2, T5, etc.) pour des tâches telles que la classification de texte, la génération de texte, la traduction, et bien plus. • Les modèles sont disponibles dans plusieurs frameworks, notamment TensorFlow et PyTorch. – Datasets : • Hugging Face propose également une bibliothèque de jeux de données, facilitant l’accès à des milliers de datasets pour la recherche et le développement en machine learning. – Hugging Face Hub : • Une plateforme en ligne où les utilisateurs peuvent partager et découvrir des modèles, des datasets et des espaces (Spaces) pour les démos interactives. C’est une sorte de réseau social pour les praticiens de l’IA, favorisant la collaboration et le partage de ressources. – Spaces : • Permet aux utilisateurs de créer et de déployer des applications web interactives basées sur des modèles de machine learning. Les Spaces sont souvent utilisés pour créer des démos, des prototypes ou des applications complètes. |
Le script utilisé pour le ré-entraînement du modèle a été développé dans le cadre du projet ModOAP et disponible ici avec la bibliothèque open-source de Machine Learning PyTorch créée par le laboratoire de Facebook AI Research (FAIR). PyTorch est largement utilisé pour le développement de modèles de Deep Learning grâce à sa flexibilité et à sa facilité d’utilisation.
Fonctionnement et utilisation du notebook
La documentation officielle de Layout Parser est disponible ici.
La fonctionnalité principale de Layout Parser est la détection des éléments de mises en page à partir d’un modèle pré-entraîné, notamment : les zones de texte, les images, les titres ou les tableaux. Plusieurs perspectives offrent la reconnaissance et le classement des composants d’une page, on pense déjà par exemple à :
- une analyse de l’évolution de mises en page ;
- des analyses textométriques, lexicométriques grâce à l’OCR des zones de textes repérées ;
- des analyses visuelles des images extraites constituant un nouveau corpus (Computer Vision) ;
- la création et l’enrichissement de bases de données patrimoniales
On peut citer comme exemple le projet EyCon qui a créé un nouveau jeu de données à partir des images extraites des journaux, magazines et albums photographiques de la période 1880-1918. La base de données créée est disponible ici.
Reconnaissance et extraction des images de pages de journaux
Un tutoriel et un outil développé sous le format notebook pour Google Colab sont disponibles pour la détection d’images de pages de journaux sur le GitLab PictorIA.
Pour quelques rappels d’utilisation des outils au format notebook, ainsi que de l’utilisation de Github, Gitlab, c’est ici.
Il n’est pas nécessaire de changer ou ajouter des informations dans les deux premières cellules de code. La première permet l’installation des bibliothèques permettant à la détection et l’extraction des images. Elle vous permet aussi de vous connecter à votre Google Drive pour accéder à vos documents. De plus, le modèle ré-entraîné et publié sur Hugging Face est directement téléchargé et visible dans l’arborescence disponible à gauche de l’interface. Apparaît ensuite une note vous proposant de ‘Restart runtime’ (redémarrer la session), ce qui est nécessaire. Vous devez re-lancer une nouvelle fois la première cellule
La deuxième cellule permet l’import du modèle.
Avant de lancer la troisième cellule qui va procéder à l’extraction des images de vos pages, deux chemins donnant l’accès à vos données doivent être indiqués : ‘pages_directory’ pointant vers un dossier sur votre Google Drive contenant vos pages de journaux dont les images doivent être extraites. Ces pages de journaux doivent être au format .JPG. Le deuxième chemin ‘extraction_path’ correspond à un dossier dans lequel les images extraites vont être enregistrées. Enfin, le ‘seuil_score’ vous permet de régler le seuil minimum de sûreté/confiance dans l’image détectée est extraite. Il est par défaut pré-rempli sur 0.95.
Le nom de chaque image enregistrée dans votre dossier est créée en gardant le nom du fichier de la page, et en rajoutant le nombre de l’image extraite. Vous pourrez remarquer que la détection des images sur une page ne se fait pas nécessairement dans un ordre précis (de gauche à droite et de haut en bas). Ainsi la numérotation de l’image n’est pas le reflet de sa position par rapport aux autres sur une page.
NOTE: Vous remarquez la création d’une nouvelle couche d’informations, les images extraites. Votre modèle de données ainsi que de nouvelles métadonnées pour ces images doivent être pensés au préalable pour intégrer ces nouveaux matériaux.
OpenEdition vous propose de citer ce billet de la manière suivante :
Marina Giardinetti (23 juillet 2024). Tutoriel: Extraction d’images de journaux avec Layout Parser. Consortium-HN pictorIA. Consulté le 5 octobre 2024 à l’adresse https://pictoria.hypotheses.org/2708