Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD FOR THE AUTOMATED PROCESSING OF A DOCUMENT TO ALLOW IT TO BE USED BY PEOPLE WITH DISABILITIES
Document Type and Number:
WIPO Patent Application WO/2024/052557
Kind Code:
A1
Abstract:
The invention relates to a method for the automated processing of a structured digital document (F1) in order to generate an enhanced digital object (OB1), the method comprising: - Acquiring a first digital file (F1) in the portable document format; - Segmenting said first digital file (F1) into a plurality of digital objects : - Implementing a first algorithm (ALG1) for generating digital objects defining paragraphs; - Implementing a second algorithm (ALG2) for generating digital objects relating to character strings having a metadatum; - Implementing a third algorithm (ALG3) for generating digital objects defining character string organizational structures; - Labelling (LAB1) the first digital objects (OB1); - Ordering the digital objects (OB1, OB2, OB3) based on a third software component (MOD3); - Generating a second digital file (F2) comprising the set of ordered digital objects.

Inventors:
KAHINDO, Christian (FR)
AKBARALY, Moïse (FR)
ASSAN ALY, Jackir (FR)
MTIBAA, Aymen (FR)
RAJAOSAFARA, Sarah (FR)
TSAGUE MAFO, Alex Donald (FR)
Application Number:
PCT/EP2023/074784
Publication Date:
March 14, 2024
Filing Date:
September 08, 2023
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
DOCAXESS (FR)
International Classes:
G06F40/106; G06F40/131; G06F40/137; G06F40/151; G06F40/177
Foreign References:
US20170329863A12017-11-16
US20200257847A12020-08-13
US20180373952A12018-12-27
US20160055138A12016-02-25
Other References:
DOMINIKA TKACZYK: "New Methods for Metadata Extraction from Scientific Literature", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 27 October 2017 (2017-10-27), XP080832369
"Handbook of document image processing and recognition - Chapter 19", 2014, SPRINGER, London [u.a.], ISBN: 978-0-85729-858-4, article BERTRAND COÜASNON ET AL: "Recognition of Tables and Forms", pages: 647 - 677, XP055665040, DOI: 10.1007/978-0-85729-859-1_20
PIVK ET AL: "Transforming arbitrary tables into logical form with TARTAR", DATA & KNOWLEDGE ENGINEERING, ELSEVIER BV, NL, vol. 60, no. 3, 8 February 2007 (2007-02-08), pages 567 - 595, XP005879074, ISSN: 0169-023X, DOI: 10.1016/J.DATAK.2006.04.002
GANESAN VEERAMANI: "Machine Learning in Mobile Applications", INTERNATIONAL JOURNAL OF COMPUTER SCIENCE AND MOBILE COMPUTING, vol. 11, no. 2, February 2022 (2022-02-01), pages 110 - 118, XP093028346, DOI: 10.47760/ijcsmc.2022.v11i02.013
Attorney, Agent or Firm:
OAK & FOX (FR)
Download PDF:
Claims:
REVENDICATIONS Procédé de traitement automatisé d’un fichier numérique (Fi) pour générer un objet numérique augmenté (OBi) :

■ Acquisition d’un premier fichier numérique (Fi) au format portable document format ;

■ Segmentation dudit premier fichier numérique (Fi) en une pluralité d’objets numériques à partir d’un premier composant logiciel (MOD1 ) comportant :

■ Mise en œuvre d’un premier algorithme (ALGi) comportant : o Extraction d’un premier ensemble (ENSi) d’objets numériques (OBi) comportant chacun une séquence de symboles discrets dans une langue naturelle définissant un paragraphe (PARAi) ; ladite extraction comportant l’application d’un premier ensemble de règles (Ri) et d’une première base de connaissance (BCi) pour générer au moins une première caractéristique symbolique (K-i) dudit paragraphe (PARAi) ; o Génération d’une pluralité de couples de positions 2D dans le premier fichier numérique (Fi), chaque couple de position définissant une première zone rectangulaire (Zi) comprenant l’affichage d’un premier objet (OBi) et association desdits couples de positions auxdits premiers objets (OBi) ;

■ Mise en œuvre d’un second algorithme (ALG2) comportant : o Extraction d’un second ensemble (ENS2) d’objets numériques (OB2) comportant chacun une séquence de symboles discrets dans une langue naturelle et au moins une seconde caractéristique symbolique (K2) représentative d’une métadonnée associée à l’objet numérique (OB2) ; ladite extraction comportant l’application d’un second ensemble de règles (MR2) et d’une seconde base de connaissance (BC2) ; o Génération d’une pluralité de couples de positions 2D dans le premier fichier numérique (F1), chaque couple de positions définissant une seconde zone rectangulaire (Z2) comprenant l’affichage d’un second objet (OB2) et association desdits couples de positions (POS2) auxdits seconds objets (OB2) ;

■ Mise en œuvre d’un troisième algorithme (ALG3) comportant : o Extraction d’un troisième ensemble (ENS3) d’au moins un troisième objet numérique (OB3) comportant chacun une séquence de symboles discrets dans une langue naturelle et au moins une troisième caractéristique symbolique (K3) représentative de l’agencement d’une pluralité de sous-objets au sein dudit au moins un objet numérique (OB3), au moins un troisième objet (OB3) représentant une structure de tableau, ladite extraction comportant l’application d’un troisième ensemble de règles (R3) et d’une troisième base de connaissance (BC3) ; o Génération d’une pluralité de couples de positions 2D dans le premier fichier numérique (F1), chaque couple de positions définissant une troisième zone rectangulaire (Z3) comprenant l’affichage d’un troisième objet (OB3) et association desdits couples de positions (POS3) auxdits troisièmes objets (OB3), ladite extraction comportant en outre l’extraction d’au moins un premier objet numérique (OB1) présent au sein du troisième objet numérique (OB3) définissant une structure de tableau ;

■ Labellisation (LAB1) des premiers objets numériques (OB1) au moyen d’un second composant logiciel (MOD2) comportant la mise en œuvre d’un moteur d’inférence (Mh ) ;

■ Ordonnancement (ORD1) des objets numériques (OB1, OB2, OB3) à partir d’un troisième composant logiciel (MOD3) prenant en compte en entrée : o Les positions des premiers objets, des seconds objets et des troisièmes objets ; o Les labels de chaque premier objet (OB1) ; o Les premières caractéristiques symboliques (K-i), les secondes caractéristiques symboliques (K2) et les troisièmes caractéristiques symboliques (K3), ledit ordonnancement (ORD1) permettant d’établir un sens de lecture des premiers objets numériques (OB1) au sein de chaque troisième objet numérique (OB3) et notamment au sein d’au moins une structure de tableau,

■ Génération d’un second fichier numérique (F2) comportant l’ensemble des objets numériques ordonnés. Procédé selon l’une quelconque des revendications précédentes, caractérisé en ce que les espacements horizontaux entre chaque objet numérique (OB1) identifié au sein d’une structure de tableau sont identifiés et calculés, ladite distance horizontale entre un premier objet numérique (OB1) et un autre premier objet numérique (OB1) interceptant la même ligne horizontale d’une représentation du fichier numérique (F1) entraine la génération d’un indicateur de lecture desdits premiers objets numériques (OB1) succédant le premier objet numérique (OB1) au sein d’une séquence ordonnée de lecture desdits premiers objets numériques (OB1) identifiés dans la structure de tableau. Procédé selon l’une quelconque des revendications précédentes, caractérisé en ce que l’absence d’un objet numérique interceptant la même ligne horizontale d’un second premier objet numérique (OB1) d’une structure de tableau entraine la génération d’un indicateur de lecture des premiers objets numériques (OB1) succédant le second premier objet numérique (OB1) au sein d’une séquence ordonnée de lecture desdits premiers objets numériques (OB1) identifiés dans la structure de tableau. Procédé selon l’une quelconque des revendications précédentes, caractérisé en ce qu’au moins un espacement vertical entre un troisième premier objet numérique (OB1) et un autre premier objet numérique (OB1) d’une structure de tableau est identifié, ladite distance verticale entre deux premiers objets numériques n’interceptant pas la même ligne verticale entrainant la génération d’un indicateur de lecture desdits premiers objets numériques (OBi) succédant le troisième premier objet numérique (OBi) au sein d’une séquence ordonnée de lecture desdits premiers objets numériques (OBi). Procédé selon l’une quelconque des revendications 3 à 4, caractérisé en ce que le au moins un espacement vertical et/ou horizontal est considéré conjointement avec la présence d’un paragraphe de type « titre » dans une ligne ou une colonne succédant celle dans laquelle le troisième premier objet numérique (OBi) est identifié, ladite détection d’un paragraphe de type « titre » entrainant la génération d’un indicateur de lecture desdits premiers objets numériques (OBi) succédant le troisième premier objet numérique (OBi) au sein d’une séquence ordonnée de lecture desdits premiers objets numériques (OBi) identifiés dans la structure de tableau. Procédé selon l’une quelconque des revendications précédentes, caractérisé en ce que la détection d’un quatrième premier objet numérique (OBi) au sein d’une structure de tableau s’étendant sur au moins deux colonnes identifiées de la structure de tableau entraine la génération d’un indicateur de lecture desdits premiers objets numériques (OBi) succédant le quatrième premier objet numérique (OBi) au sein d’une séquence ordonnée de lecture desdits premiers objets numériques (OBi) identifiés dans la structure de tableau. Procédé selon l’une quelconque des revendications précédentes, caractérisé en ce que la détection d’un second objet numérique (OB2) labélisé « citation » et identifié au sein d’une structure de tableau au voisinage d’un cinquième premier objet numérique (OB1) entraine la génération d’un indicateur de lecture dudit second objet numérique (OB2) au sein d’une séquence ordonnée consécutivement à le lecture des premiers objets compris dans au moins une ligne de la structure de tableau, ladite ligne comportant le cinquième premier objet numérique (OB1). Procédé selon l’une quelconque des revendications précédentes, caractérisé en ce que la détection d’un second objet numérique (OB2) labélisé « note » au voisinage d’un sixième premier objet numérique (OB1) et associé à une note de bas de page ou une référence identifiée, ladite note de bas de page ou référence, correspondant à un premier objet numérique (OB1) non identifié au sein de la structure de tableau et identifié dans le fichier numérique (F1), entraine la génération d’un indicateur de lecture de ladite note de bas de page ou de la référence au sein d’une séquence ordonnée de lecture desdits premiers objets numériques (OB1) identifiés dans la structure de tableau et de la note de bas de page ou de la référence. Procédé selon l’une des revendications précédentes, caractérisé en ce que le premier algorithme (ALG1) comprend les étapes de :

■ Identification d’une ligne du premier fichier numérique comportant une première chaîne de caractères ;

■ Identification de l’orientation de ladite ligne selon au moins une première règle (Ri) ;

■ Identification d’une information symbolique caractéristique de la chaîne de caractère selon une seconde règle (R2) et d’une information caractérisant l’espace entre chaque chaîne de caractères de ladite ligne selon une troisième règle (R3) ;

■ Catégorisation de ladite ligne,

■ Réitération des opérations d’identification de chaque ligne et de leur catégorisation ;

■ Génération de ladite première caractéristique symbolique d’un paragraphe lorsque la catégorisation d’un ensemble de lignes est identique. Procédé selon l’une quelconque des revendications précédentes, caractérisé en ce que l’étape de labellisation (LAB1) permet d’associer un label à un paragraphe parmi l’un des labels suivants :

■ Paragraphe de pied de page, correspondant à un paragraphe agencé dans une zone d’une page située en bas de page et comportant une chaine de caractères répétée au sein d’une pluralité de pages ou une séquence de nombres incrémentée à chaque page ;

■ Paragraphe de haut de page, correspondant à un paragraphe agencé dans une zone d’une page située en haut de page et comportant une chaine de caractères répétée au sein d’une pluralité de pages ou une séquence de nombres incrémentée à chaque page ;

■ Paragraphe standard, correspondant à un paragraphe défini par un style, une police et une taille de caractères donnés et étant le plus représentatif sur l’ensemble de pages du document numérique (Fi) ;

■ Paragraphe distingué, correspondant à un paragraphe défini par un style, une police et une taille de caractères donnés différents du paragraphe standard ;

■ Paragraphe titre, correspondant à un paragraphe portant le nom d’une section ou d’une sous-section et suivi d’au moins un paragraphe structuré différent d’un paragraphe de pied de page ou d’une note.

1 1 . Procédé selon l’une quelconque des revendications précédentes, caractérisé en ce que le second composant logiciel (MOD2) est mis en œuvre à partir du moteur d’inférence (MI1) exécuté à partir d’un ensemble de règles et d’une base de faits prenant en compte les premières caractéristiques symboliques (K-i).

12. Procédé selon l’une quelconque des revendications précédentes, caractérisé en ce que le second composant logiciel (MOD2) est mis en œuvre à partir du moteur d’inférence (Mh), ledit moteur d’inférence (MI1) étant exécuté à partir d’une fonction apprenante dont les vecteurs d’entrées comprennent au moins les premières caractéristiques symboliques (K1 ), ladite fonction apprenante mise en œuvre étant :

■ un réseau de type « Recurrent neural network », noté RNN ou ;

■ un réseau de type « Long short-term memory >>, noté LSTM ou ;

■ un transformer de type BERT ou GPT, tel que GPT-3, La mise en œuvre d’une fonction apprenante permettant de déterminer automatiquement de nouvelles règles utilisées par le moteur d’inférence (Mh).

13. Procédé selon l’une quelconque des revendications précédentes, caractérisé en ce que le second algorithme (ALG2) comprend :

■ la détection d’un premier symbole typographique prédéfini ;

■ la détection d’un second symbole typographique prédéfini et d’un enchainement d’un symbole typographique donné ayant une graphie prédéfinie,

■ la génération d’une catégorie définissant une métadonnée lorsqu’au moins une détection est réalisée ;

■ la génération d’une seconde caractéristique symbolique (K2) comportant ladite chaîne de caractères comportant le symbole détecté et la catégorie générée.

14. Procédé selon l’une quelconque des revendications précédentes caractérisé en ce que le troisième algorithme (ALG3) comprend les étapes de :

■ Identification d’une pluralité de symboles définissant une répétition d’agencement d’un ensemble de données du premier fichier (F1) afin de définir une troisième caractéristique symbolique (K3) ;

■ Catégorisation d’un troisième objet numérique (OB3) à partir de la génération de la troisième caractéristique symbolique (K3).

15. Procédé selon l’une quelconque des revendications précédentes, caractérisé en ce que l’extraction du au moins un troisième objet numérique (OB3) comprend :

■ la sélection de chaque première zone rectangulaire géographique (Z1) associée à un premier objet numérique (OB1)

J

■ Le contrôle des labels de chaque premier objet (OB1) définissant chacun un paragraphe (PARA1) avec un label d’un premier objet (OB1 ) à une position adjacente précédente, la génération d’un premier objet enrichi lorsque les labels de l’ensemble des premiers objets (OBi) adjacents répondent à au moins une règle dudit troisième ensemble de règles (Fte).

16. Procédé selon l’une quelconque des revendications précédentes, caractérisé en ce que l’extraction d’au moins un troisième objet (OB3) comprend :

■ Sélection d’une troisième zone de la page du premier fichier (Fi) ;

■ Sélection de chaque première zone rectangulaire géographique (Z-i) associée à un premier objet numérique (OB1) située dans la troisième zone sélectionnée (Z3) ;

■ Contrôle des labels de chaque premier objet (OB1) définissant chacun un paragraphe (PARA1),

■ Génération d’un troisième objet (OB3) lorsque les labels de l’ensemble des premiers objets (OB1) répondent à au moins une règle dudit troisième algorithme (ALG3).

17. Procédé selon la revendication 16, caractérisé en ce que les premiers objets enrichis (OB1’), les seconds objets (OB2), et les troisièmes objets (OB3) sont ordonnés selon une séquence d’affichage sur une page, lesdits premiers objets (OB1) étant ordonnés au sein d’une zone associée à un premier objet enrichi (OB1’).

18. Procédé selon l’une quelconque des revendications précédentes, caractérisé en ce que les objets numériques du second fichier numérique (F2) produits en sortie sont rendus activables au moyen d’une application visant à exploiter le contenu dudit second fichier numérique (F2) à partir d’une interface d’un terminal utilisateur destiné à des mal-voyants ou non voyant, par exemple comportant un lecteur d’écran.

19. Système comportant un terminal électronique d’un utilisateur (T1) comportant au moins un calculateur, une mémoire, un afficheur et une interface de communication pour transmettre des messages sur un réseau de données auprès d’au moins un premier serveur (SERV1) comportant des ressources matérielles pour exécuter le premier algorithme (ALGi), le second algorithme (ALG2), le troisième algorithme (ALG3) et le second composant logiciel (MOD2) afin d’exécuter les étapes du procédé de l’une quelconque des revendications 1 à 18, ledit second fichier numérique étant transmis via le réseau de données vers ledit terminal électronique (T1) de l’utilisateur pour afficher le second fichier numérique et pour accéder à un contenu activable via l’interface dudit terminal électronique (T-i). 20. Système selon la revendication 19 comportant un lecteur d’écran comportant un synthétiseur vocal pour générer un flux audio d’information, lesdites informations étant extraites des objets numériques, lesdites informations comportant en outre des informations générées à partir des métadonnées du second fichier (F2).

Description:
Description

Titre : METHODE POUR LE TRAITEMENT AUTOMATISE D’UN DOCUMENT POUR SON UTILISATION PAR DES PERSONNES EN SITUATION DE HANDICAP

Domaine de l’invention

Le domaine de l’invention est celui des méthodes pour traiter automatiquement des documents au format portable document format (PDF) de manière à permettre de les rendre accessibles à des personnes handicapées. En particulier, le domaine de l’invention se rapporte aux méthodes intégrant des algorithmes visant à labelliser automatiquement des documents pour rendre ces documents accessibles et interprétables par des tierces applications.

État de la technique

Il existe différentes techniques permettant de numériser et labelliser un document au format portable document format (PDF) de manière automatique. Toutefois, les techniques actuelles d’annotation et de labellisation ne permettent pas une exploitation complète du document pour des individus en situation de handicap, notamment des non-voyants ou malvoyants. En effet, lors de l’exploitation d’un tel document, afin de retranscrire l’information contextualisée telle que celle contenue dans des tableaux ou telle que certaines notes ou encore des informations énumérées dans des listes, il est nécessaire qu’un interpréteur, tel qu’un interpréteur vocal, puisse présenter l’information dans son contexte. Or les méthodes actuelles ne permettent pas une exploitation de chaque objet numérique pour contextualiser la lecture automatisée d’un document.

Il existe des solutions basées sur l’intelligence artificielle, mais le plus souvent dans l’objectif de discriminer ou filtrer une information pertinente ou encore de restituer une mise en page sans pour autant créer des objets numériques pouvant être exploités efficacement par un interpréteur.

Il existe donc un besoin de définir une solution permettant de générer un document entièrement activable par une tierce application pour exploiter chaque objet numérique d’un document selon leur structure et en faciliter l’accès par un individu mal-voyant ou non-voyant. Résumé de l’invention

Selon un premier aspect, l’invention concerne un procédé de traitement automatisé d’un document numérique pour générer un objet numérique augmenté:

■ Acquisition d’un premier fichier numérique au format portable document format ;

■ Segmentation dudit premier fichier numérique en une pluralité d’objets numériques à partir d’un premier composant logiciel comportant :

■ Mise en œuvre d’un premier algorithme comportant : o Extraction d’un premier ensemble d’objets numériques comportant chacun une séquence de symboles discrets dans une langue naturelle définissant un paragraphe ; ladite extraction comportant l’application d’un premier ensemble de règles et d’une première base de connaissance pour générer au moins une première caractéristique symbolique dudit paragraphe ; o Génération d’une pluralité de couples de positions 2D dans le premier fichier numérique, chaque couple de positions définissant une première zone rectangulaire comprenant l’affichage d’un premier objet et association desdits couples de positions auxdits premiers objets ;

■ Mise en œuvre d’un second algorithme comportant : o Extraction d’un second ensemble d’objets numériques comportant chacun une séquence de symboles discrets dans une langue naturelle et au moins une seconde caractéristique symbolique représentative d’une métadonnée associée à l’objet numérique ; ladite extraction comportant l’application d’un second ensemble de règles et d’une seconde base de connaissance ; o Génération d’une pluralité de couples de positions 2D dans le premier fichier numérique, chaque couple de positions définissant une seconde zone rectangulaire comprenant l’affichage d’un second objet et association desdits couples de positions auxdits seconds objets

■ Mise en œuvre d’un troisième algorithme comportant : o Extraction d’un troisième ensemble d’au moins un troisième objet numérique comportant chacun une séquence de symboles discrets dans une langue naturelle et au moins une troisième caractéristique symbolique représentative de l’agencement d’une pluralité de sous-objets au sein dudit au moins un objet numérique, ladite extraction comportant l’application d’un troisième ensemble de règles et d’une troisième base de connaissance ; o Génération d’une pluralité de couples de positions 2D dans le premier fichier numérique, chaque couple de positions définissant une troisième zone rectangulaire comprenant l’affichage d’un troisième objet et association desdits couples de positions auxdits troisièmes objets ;

■ Labellisation des premiers objets numériques au moyen d’un second composant logiciel comportant la mise en œuvre d’un moteur d’inférence ;

■ Ordonnancement des objets numériques à partir d’un troisième composant logiciel prenant en compte en entrée : o Les positions des premiers objets, des seconds objets et des troisièmes objets ; o Les labels de chaque premier objet ; o Les premières caractéristiques symboliques, les secondes caractéristiques symboliques et les troisièmes caractéristiques symboliques ;

■ Génération d’un second fichier numérique comportant l’ensemble des objets numériques ordonnés.

Un avantage est de permettre de générer un document activable par un lecteur tel qu’un lecteur d’écran afin d’exploiter tous les éléments d’un document. Un avantage est de permettre une restitution intelligible de chaque élément d’un document notamment pour une personne non-voyante. Selon un mode de réalisation, au moins un troisième objet représente une structure de tableau. Une structure de tableau peut correspondre à un tableau explicitement représenté en tant qu’entité tableau. Il peut comprendre des marquages délimitant les colonnes, les lignes et/ou les cellules. Une structure tableau peut également désigner toute organisation d’éléments tels que des paragraphes, graphiques ou images répartis selon des lignes ou selon des colonnes ou selon les deux.

Selon un mode de réalisation, l’extraction d’un troisième ensemble d’au moins un troisième objet numérique comporte en outre l’extraction de premier objet numérique OBi présents dans le troisième objet numérique définissant une structure de tableau.

Selon un mode de réalisation, l’ordonnancement des objets numériques, dont les premiers objets numériques, les seconds objets numériques et les troisièmes objets numériques permettent d’établir un sens de lecture des premiers objets numériques au sein de chaque troisième objet numérique et notamment au sein d’au moins une structure de tableau. Un avantage est de rendre plus précis l’ordonnancement de la lecture des différents objets au sein de structure de tableaux notamment en combinant des critères propres à la structure du tableau et d’autre part des critères liés au style des paraphes présents au sein d’une structure de tableau.

Ainsi, les paragraphes formant des titres, les notes, les citations et certains choix d’agencement d’objets formant des paragraphes singuliers peuvent être ordonnancés selon une séquence de lecture préservant l’intelligibilité de l’information.

Selon un mode de réalisation, le premier algorithme comprend les étapes de :

■ Identification d’une ligne du premier fichier numérique comportant une première chaîne de caractères ;

■ Identification de l’orientation de ladite ligne selon au moins une première règle ;

■ Identification d’une information symbolique caractéristique de la chaine de caractère selon une seconde règle et d’une information caractérisant l’espace entre chaque chaine de caractères de ladite ligne selon une troisième règle ;

■ Catégorisation de ladite ligne, ■ Réitération des opérations d’identification de chaque ligne et de leur catégorisation ;

■ Génération de ladite première caractéristique symbolique d’un paragraphe lorsque la catégorisation d’un ensemble de lignes est identique.

Un avantage est d’associer des métadonnées à chaque ligne de caractères de manière à reconstituer des paragraphes. Cette caractéristique permet une meilleure interprétation du contenu lorsqu’un lecteur d’écran traite automatiquement le contenu d’un document pour générer une lecture à une personne par exemple mal-voyante.

Selon un mode de réalisation, l’étape de labellisation permet d’associer un label à un paragraphe parmi l’un des labels suivants :

■ Paragraphe de pied de page, correspondant à un paragraphe agencé dans une zone d’une page située en bas de page et comportant une chaine de caractères répétée au sein d’une pluralité de pages ou une séquence de nombres incrémentée à chaque page ;

■ Paragraphe de haut de page, correspondant à un paragraphe agencé dans une zone d’une page située en haut de page et comportant une chaine de caractères répétée au sein d’une pluralité de pages ou une séquence de nombres incrémentée à chaque page ;

■ Paragraphe standard, correspondant à un paragraphe défini par un style, une police et une taille de caractères donnés et étant le plus représentatif sur l’ensemble de pages du document numérique ;

■ Paragraphe distingué, correspondant à un paragraphe défini par un style, une police et une taille de caractères donnés différents du paragraphe standard ;

■ Paragraphe titre, correspondant à un paragraphe portant le nom d’une section ou d’une sous-section et suivi d’au moins un paragraphe structuré différent d’un paragraphe de pied de page ou d’une note.

Un avantage est de différencier les différents types de paragraphes pour permettre une lecture contextualisée de l’information par un lecteur d’écran afin de rendre intelligible la lecture des différents paragraphes d’un document.

Selon un mode de réalisation, le second composant logiciel est mis en œuvre à partir d’un moteur d’inférence exécuté à partir d’un ensemble de règles et d’une base de faits prenant en compte les premières caractéristiques symboliques.

Un avantage est de permettre le traitement de l’ensemble des cas de figure possibles à partir de règles traitant des différents scénarios possibles.

Selon un mode de réalisation, le second composant logiciel est mis en œuvre à partir d’un moteur d’inférence exécuté à partir d’une fonction apprenante dont les vecteurs d’entrées comprennent au moins les premières caractéristiques symboliques, ladite fonction apprenante mise en œuvre étant :

■ un réseau de type « Recurrent neural network », noté RNN ou ;

■ un réseau de type « Long short-term memory >>, noté LSTM ou ;

■ un transformeur de type BERT ou GPT, tel que GPT-3.

Selon ce mode de réalisation, la mise en œuvre d’une fonction apprenante permet de déterminer automatiquement de nouvelles règles utilisées par le moteur d’inférence. Un avantage est d’enrichir le modèle sur lequel le moteur d’inférence infère.

Selon un mode de réalisation, le second algorithme comprend :

■ détection d’un premier symbole typographique prédéfini ;

■ détection d’un second symbole typographique prédéfini et d’un enchainement d’un symbole typographique donné ayant une graphie prédéfinie,

■ génération d’une catégorie définissant une métadonnée lorsqu’au moins une détection est réalisée ;

■ génération d’une seconde caractéristique symbolique comportant ladite chaîne de caractères comportant le symbole détecté et la catégorie générée.

Un avantage est de permettre une détection de notes, email ou d’autres éléments associés à des éléments typographiques particuliers. Un intérêt est de permettre de contextualiser la lecture automatique d’une information intelligible par un lecteur d’écran. Selon un mode de réalisation, le troisième algorithme comprend :

■ Identification d’une pluralité de symboles définissant une répétition d’agencement d’un ensemble de données du premier fichier afin de définir une troisième caractéristique symbolique ;

■ Catégorisation d’un troisième objet numérique à partir de la génération de la troisième caractéristique symbolique.

Selon un mode de réalisation, l’extraction des troisièmes objets comprend :

■ Sélection de chaque première zone de la page associée à un premier objet numérique ;

■ Contrôle des labels de chaque premier objet définissant chacun un paragraphe avec un label d’un premier objet à une position adjacente précédente,

■ Génération d’un premier objet enrichi lorsque les labels de l’ensemble des premiers objets adjacents répondent à au moins une règle dudit troisième algorithme.

Un avantage est de permettre d’organiser la lecture automatique d’une information intelligible au sein d’un tableau par exemple par un lecteur d’écran.

Selon un mode de réalisation, l’extraction des troisièmes objets comprend :

■ Sélection d’une troisième zone de la page du premier fichier ;

■ Sélection de chaque première zone géographique associée à un premier objet numérique située dans la troisième zone sélectionnée ;

■ Contrôle des labels de chaque premier objet définissant chacun un paragraphe,

■ Génération d’un troisième objet lorsque les labels de l’ensemble des premiers objets répondent à au moins une règle dudit troisième algorithme.

Selon un mode de réalisation, les premiers objets enrichis, les seconds objets, et les troisièmes objets sont ordonnés selon une séquence d’affichage sur une page, lesdits premiers objets étant ordonnés au sein d’une zone associée à un premier objet enrichi. Un avantage est d’ordonner et séquencer la lecture des informations d’une page selon leur agencement des éléments au sein de cette page. Un avantage est de générer une séquence conservant la meilleure intelligibilité lors d’une lecture automatique d’un document comportant de nombreux éléments de natures différentes telles que des titres, des tableaux, des notes, etc.

Selon un mode de réalisation, le second fichier numérique produit en sortie est rendu activable par objet au moyen d’une application visant à exploiter le contenu dudit second fichier numérique à partir d’une interface d’un terminal utilisateur destiné à des mal-voyants ou non voyant, par exemple comportant un lecteur d’écran.

Selon un autre aspect, l’invention concerne un système comportant un terminal électronique d’un utilisateur comportant au moins un calculateur, une mémoire, un afficheur et une interface de communication pour transmettre des messages sur un réseau de données auprès d’au moins un premier serveur comportant des ressources matérielles pour exécuter le premier algorithme, le second algorithme, le troisième algorithme et le second composant logiciel afin d’exécuter les étapes du procédé de l’invention, ledit second fichier numérique étant transmis via le réseau de données vers ledit terminal électronique de l’utilisateur pour afficher le second fichier numérique et pour accéder à un contenu activable via l’interface dudit terminal électronique.

Selon un mode de réalisation, le système comporte un lecteur d’écran comportant un synthétiseur vocal pour générer un flux audio d’information, lesdites informations étant extraites des objets numériques, lesdites informations comportant en outre des informations générées à partir des métadonnées du second fichier.

Selon un mode de réalisation de l’ensemble des aspects de l’invention, les espacements horizontaux entre chaque objet numérique identifié au sein d’une structure de tableau sont identifiés et calculés, ladite distance horizontale entre un premier objet numérique et un autre premier objet numérique interceptant la même ligne horizontale d’une représentation du fichier numérique entraine la génération d’un indicateur de lecture desdits premiers objets numériques succédant le premier objet numérique au sein d’une séquence ordonnée de lecture desdits premiers objets numériques identifiés dans la structure de tableau.

Un avantage est de permettre de tenir compte de la présence ou de l’absence d’un paragraphe au voisinage d’un autre pour réordonnancer ou non un nouvel ordre de lecture. Un avantage est de diminuer les erreurs et d’obtenir une meilleure intelligibilité de la lecture des éléments agencés au sein d’une structure de tableau.

Selon un mode de réalisation, l’absence d’un objet numérique interceptant la même ligne horizontale d’un second premier objet numérique d’une structure de tableau entraine la génération d’un indicateur de lecture des premiers objets numériques succédant le second premier objet numérique au sein d’une séquence ordonnée de lecture desdits premiers objets numériques identifiés dans la structure de tableau. Un avantage est de permettre un meilleur ordonnancement. Un indicateur de lecture peut être une valeur associée à un objet afin de produire une liste ordonnée d’éléments à lire.

Selon un mode de réalisation, au moins un espacement vertical entre un troisième premier objet numérique et un autre premier objet numérique d’une structure de tableau est identifié, ladite distance verticale entre deux premiers objets numériques n’interceptant pas la même ligne verticale entraînant la génération d’un indicateur de lecture desdits premiers objets numériques succédant le troisième premier objet numérique au sein d’une séquence ordonnée de lecture desdits premiers objets numériques.

Selon un mode de réalisation, le au moins un espacement vertical et/ou horizontal est considéré conjointement avec la présence d’un paragraphe de type « titre » dans une ligne ou une colonne succédant celle dans laquelle le troisième premier objet numérique est identifié, ladite détection d’un paragraphe de type « titre » entraînant la génération d’un indicateur de lecture desdits premiers objets numériques succédant le troisième premier objet numérique au sein d’une séquence ordonnée de lecture desdits premiers objets numériques identifiés dans la structure de tableau.

Un avantage est de combiner deux informations, l’une provenant du style du paragraphe, l’autre provenant de la présence d’objets au voisinage d’un objet pour réordonner le cas échéant un nouvel ordre de lecture. Selon un mode de réalisation, la détection d’un quatrième premier objet numérique au sein d’une structure de tableau s’étendant sur au moins deux colonnes identifiées de la structure de tableau entraine la génération d’un indicateur de lecture desdits premiers objets numériques succédant le quatrième premier objet numérique au sein d’une séquence ordonnée de lecture desdits premiers objets numériques identifiés dans la structure de tableau. Un avantage est de combiner également une information propre à la structure du tableau et une autre propre au style du paragraphe pour réordonnancer une séquence de lecture des différents objets au sein d’une structure de tableau.

Selon un mode de réalisation, la détection d’un second objet numérique labélisé « citation » et identifié au sein d’une structure de tableau au voisinage d’un cinquième premier objet numérique entraine la génération d’un indicateur de lecture dudit second objet numérique au sein d’une séquence ordonnée consécutivement à le lecture des premiers objets compris dans au moins une ligne de la structure de tableau, ladite ligne comportant le cinquième premier objet numérique.

Un avantage est de permettre de lire une citation au sein d’une structure de tableau, telle qu’une mise en page en colonne, à la fin de la lecture des différents objets présents dans la structure de tableau.

Selon un mode de réalisation, la détection d’un second objet numérique labélisé « note » au voisinage d’un sixième premier objet numérique et associé à une note de bas de page ou une référence identifiée, ladite note de bas de page ou référence, correspondant à un premier objet numérique non identifié au sein de la structure de tableau et identifié dans le fichier numérique, entraine la génération d’un indicateur de lecture de ladite note de bas de page ou de la référence au sein d’une séquence ordonnée de lecture desdits premiers objets numériques identifiés dans la structure de tableau et de la note de bas de page ou de la référence.

Brève description des figures

D’autres caractéristiques et avantages de l’invention ressortiront à la lecture de la description détaillée qui suit, en référence aux figures annexées, qui illustrent : Fig. 1 : un diagramme selon un mode de réalisation des principales étapes de l’invention ;

Fig. 2 : un premier exemple de représentation d’un document comportant différents blocs d’information comportant des structures différentes ;

Fig. 3 : un exemple d’un système de l’invention permettant d’exécuter le procédé de l’invention ;

Fig. 4 : un second exemple de représentation d’un document comportant différents blocs d’information comportant des structures différentes ;

Fig. 5 : un troisième exemple de représentation d’un document comportant deux colonnes d’objets numériques analysées grâce au procédé de l’invention et au sein desquels la labélisation des titres est prise en compte pour générer une séquence ordonnée de lecture est générée ;

Fig. 6 : un quatrième exemple de représentation d’un document comportant deux colonnes d’objets numériques analysées grâce au procédé de l’invention pour générer une séquence ordonnée de lecture est générée ;

Fig. 7 : un cinquième exemple de représentation d’un document comportant un tableau comportant une structure de lignes et de colonnes analysé grâce au procédé de l’invention pour générer une séquence ordonnée de lecture est générée.

La figure 1 représente un exemple de réalisation d’un procédé de l’invention et notamment d’un exemple de mise en œuvre des étapes dudit procédé. Le procédé de l’invention permet de générer un document au format portable document format activable noté PDFN. On entend par « activable » la caractéristique selon laquelle le fichier numérique obtenu comporte différents éléments numériques, appelés objets numériques, pouvant être traités par un programme d’ordinateur de manière différenciée. A titre d’exemple, un lecteur tel qu’un synthétiseur vocal ou un générateur de séquences en braille peut interpréter le document par partie ou contextualiser la lecture de certains objets tels que des tableaux ou une table des matières. Les éléments exploitables peuvent par exemple être des tableaux, des listes, des notes, des encarts textuels, des titres, des images ou tout autre élément pouvant être interprétés individuellement dans le document.

L’invention permet donc de prendre en compte un fichier PDFi en entrée dont les différents éléments ne sont pas exploitables individuellement en un document présentant des éléments exploitables individuellement. Le document en entrée est un document de type PDF non structuré qui a priori n’est pas annoté pour être exploité par une tierce application.

L’invention se rapporte plus particulièrement à l’acquisition d’un fichier au format PDF dont les symboles sont identifiés et exploitables du fait d’une océrisation par exemple ou d’une conversion d’un document antérieur.

Toutefois, le procédé de l’invention peut comprendre une étape préalable visant à convertir un fichier en un fichier au format "pdf" dont les symboles tels que les alphabets permettent d’identifier des mots.

La figure 1 illustre un premier composant logiciel MODi qui permet de prendre en entrée un document noté PDFi et de traiter notamment les différentes séquences de symboles discrets dans une langue naturelle et des objets graphiques tels que des lignes, blocs ou images intégrés au document PDFi afin de générer des paragraphes structurés et des objets numériques exploitables.

L’entrée du système peut être obtenue au moyen d’une réception du fichier sur une interface de communication, ou par un enregistrement dans une mémoire d’un fichier ou encore consécutivement à un traitement par un logiciel d’un fichier permettant l’exploitation automatique des symboles et des images contenus dans chaque page du fichier.

On rappelle qu’un document en entrée PDFi dans le cadre de l’invention est un document « non activable » et donc non accessible par exemple à des personnes mal-voyantes ou non-voyantes. Le document non accessible est caractérisé en ce qu’il ne comporte pas de balise permettant d’associer aux différents éléments d’une page des métadonnées permettant d’exploiter ces éléments par un interpréteur logiciel. En d’autres termes, un document PDF non accessible est un document comportant des images et des suites de séquences de symboles discrets dans une langue naturelle agencées selon différentes dispositions qui sont indissociables numériquement les unes des autres de sorte que les différents éléments de la page ne peuvent être traités de manière indépendante.

On appelle dans la suite de la description « un algorithme » : une fonction logicielle mise en œuvre par ordinateur paramétrée pour produire une sortie numérique à partir d’une entrée numérique. Les fonctions comportent un ensemble d’instructions interprétables par un interpréteur logiciel permettant d’effectuer des opérations telles que des opérations mathématiques, des conversions de données ou des comparaisons de données extraites avec des valeurs seuils. A minima, une fonction logicielle est exécutée au sein d’un environnement matériel ayant au minimum un calculateur et une mémoire.

Un premier composant logiciel MODi est mis en œuvre par le procédé de l’invention dans l’objectif d’extraire chaque élément de la page sous la forme d’objets numériques, notés OBi, OB2 et OB3. Un intérêt de ce composant logiciel MOD1 est d’exploiter des caractéristiques symboliques propres desdits objets pour extraire lesdits objets et pour permettre de générer des objets numériques ayant des caractéristiques permettant des activations desdits objets de manière indépendante.

Selon un mode de réalisation, le premier composant logiciel comprend un composant dit SDK. Selon un exemple un composant SDK, désignant dans la littérature anglosaxonne « Software Development Kit » et noté SDK1 sur la figure 1 est mis en œuvre pour exploiter les données du document PDF1. Le composant SDK1 comporte un ensemble de fonctions permettant d’interpréter des éléments d’un fichier au format .pdf non activable de manière à extraire des mots, des images et des éléments graphiques contenus dans le fichier au format pdf. La mise en œuvre d’une configuration du SDK1 permet donc d’extraire des ensembles de mots et des différents blocs graphiques du fichier.

1er algorithme du composant MOD1

Un premier algorithme ALGO1 du premier composant MOD1 permet de modéliser les différents ensembles de mots sous la forme de paragraphes. A cette fin, le premier algorithme ALGO1 extrait un ensemble de caractéristiques telles que l’orientation de la séquence de symboles discrets sur la page, les espacements entre les mots de ladite séquence, les tailles de polices des symboles, et possiblement le style des symboles et l’inclinaison de la cursive des symboles et l’épaisseur des symboles. L’ensemble de ces caractéristiques définissent une première caractéristique symbolique, notée Ki. Cet algorithme ALGO1 peut être configuré pour exploiter les séquences de symboles selon des lignes d’orientation formées par la séquence au sein de la page. Un intérêt de l’invention est de permettre de reconstruire certains paragraphes structurés comportant plusieurs lignes à partir des positions desdites lignes de symboles et des propriétés graphiques desdits symboles.

On nomme un « paragraphe structuré » un paragraphe comportant une pluralité de lignes et ayant pour chaque ligne des propriétés similaires ou cohérentes de positions et de formes. Les propriétés de forme peuvent se rapporter à la police des caractères, la taille des caractères, l’inclinaison d’incursive des caractères, des alinéas à des positions de début de lignes, des espaces interlignes, etc. Ces propriétés peuvent être notamment encodées dans une caractéristique symbolique ci-après désignée Ki.

Les ensembles de mots extraits peuvent provenir d’un paragraphe structuré de plusieurs lignes, de titres, de pieds de page, d’entêtes, de tableaux, de listes, de légendes, de notes, de citations, de tables des matières, etc. Un intérêt de ce premier algorithme ALGOi est d’extraire un ensemble de mots agencés selon une portion linéaire, c’est-à-dire le plus souvent une ligne comportant un ensemble de mots. Ces lignes de mots sont associées à un couple de position POSi et une caractéristique symbolique Ki. Les positions peuvent correspondre à celles du début de la ligne et la fin de la ligne. L’analyse des espaces inter-symboles peut notamment conduire à délimiter les lignes.

On note plus généralement dans la suite de la description un « paragraphe » ou un « paragraphe structuré » un ensemble de lignes dont les caractéristiques symboliques Ki sont sensiblement identiques entre elles dont les couples de positions ont une cohérence de juxtaposition ou de voisinage entre elles.

Afin d’extraire les différentes valeurs caractéristiques de la première caractéristique symbolique Ki, le procédé de l’invention met en œuvre l’exécution d’un premier ensemble de règles Ri prédéfinies et une première base de connaissance BCi. Selon un exemple, les règles Ri peuvent comprendre des comparaisons des espaces entre chaque mot, des tailles de polices ou encore des opérations visant à détecter un style ou une inclinaison d’incursive. A cet effet, la base de connaissance BCi peut comprendre une bibliothèque de styles ou de polices. Par ailleurs, le premier algorithme ALGOi exécute une fonction permettant de générer au moins :

■ une première position sur la page dont : o une première coordonnée X1 correspond à la coordonnée de la position du premier symbole discret de la séquence de symboles discrets dans le sens de la ligne de la séquence et o une seconde coordonnée Y1 correspond à la partie supérieure du premier symbole de la séquence de symboles considérée dans la ligne formée par la séquence ; et

■ une seconde position sur la page dont : o une première coordonnée X2 correspond à la coordonnée de la position du dernier symbole discret de la séquence de symboles discrets dans le sens de la ligne de la séquence et ; o une seconde coordonnée Y2 correspond à la partie inférieure du dernier symbole de la séquence de symboles considérée dans la ligne formée par la séquence.

Un couple de positions, noté POSi, est formé pour définir une première zone dans laquelle la séquence s’inscrit dans la page au format .pdf.

Les positions peuvent être définies selon une métrique absolue exprimée dans une unité telle que le centimètre ou une métrique relative telle qu’un nombre de points, lesdites positions étant définies par rapport à un référentiel de la page dans lequel une origine peut être définie comme un des quatre coins de la page. Selon un autre exemple, les positions peuvent être définies selon une proportion de la page sans qu’une métrique ne soit nécessaire. Dans ce dernier cas, l’unité peut être prise comme une dimension de la page comme la largeur ou la longueur de la page. Cette définition permet notamment d’encoder les positions de manière vectorielle.

Selon un exemple de réalisation, une pluralité de positions telle que 4 positions peuvent être produites de sorte à définir les 4 coins d’un rectangle ou d’un polygone dans lequel s’inscrit la séquence. On note que deux positions suffisent à reconstituer d’autres positions de la forme encadrant une ligne d’un paragraphe. Cette dernière remarque s’applique à tout autre objet numérique s’inscrivant dans une forme rectangulaire, telle qu’un paragraphe, un tableau, etc.

Selon un mode de réalisation, chaque paragraphe et les données générées qui sont associés audit paragraphe sont annotés par exemple selon un numéro de paragraphe et/ou un identifiant de paragraphe.

Chaque paragraphe associé aux données produites, c’est-à-dire la caractéristique symbolique Ki et le couple de positions POSi est transmis à un second composant logiciel noté MOD2 afin de permettre de labelliser le paragraphe extrait.

2eme algorithme du composant MOD1

Un second algorithme ALGO2 du premier composant logiciel MOD1 est mis en œuvre pour détecter et extraire des ensembles de mots correspondant à des notes, adresses mails, liens url ou des citations. L’entrée du second algorithme ALGO2 peut être alimentée par le traitement du premier algorithme ALGO1 qui permet d’identifier des lignes de symboles formant des mots ou des idéogrammes ou encore des chiffres.

A cet effet, le procédé de l’invention met en œuvre l’exécution d’un second ensemble de règles R2 prédéfinies et une seconde base de connaissance BC2. Selon un exemple, les règles peuvent comprendre des recherches de symboles prédéfinis telles que le symbole « @ » ou le symbole « http » ou le symbole « www » ou une note de type « (1 ) », c’est-à-dire un nombre au sein de parenthèses ou encore le symbole « (*) ». Ce dernier symbole est appelé « astérisque ».

Certaines règles R2 sont également appliquées de sorte à détecter et extraire des ensembles de mots agencés consécutivement à une image ou un bloc graphique identifié par le composant SDK1. Cette fonction permet de comparer les positions extraites de blocs d’images ou de graphiques avec des positions d’ensemble de mots.

Chaque règle R2 peut être associée à d’autres règles afin de discriminer certains éléments tels que des légendes ou des notes.

Selon un premier exemple de combinaison de règles R2, un bloc image suivi d’un ensemble de mots n’ayant pas d’autres ensembles de mots dans une police identique peut être annoté par une identité de type « légende », ce qui permet de générer un attribut ou une catégorie audit ensemble de mots. Cet ensemble de mots est également considéré dans la présente invention comme une ligne simple ou un paragraphe. Ces données générées, telles qu’un attribut permet d’être encodés avec le paragraphe pour être exploité par un interpréteur notamment grâce à la fonction TAGi du troisième composant logiciel MOD3 ci-après détaillé.

Selon un second exemple, au sein d’un paragraphe identifié par le premier algorithme, un ensemble de mots entre parenthèses comportant le symbole « www » peut être identifié comme une URL.

Selon un troisième exemple, un ensemble de mots en bas de page dont le début de la séquence commence par le symbole « (1 ) » peut être une note.

Le procédé de l’invention permet de générer en sortie de ce second algorithme ALGO2 un ensemble de seconds objets numériques OB2. Les seconds objets numériques OB2 comportent chacun un ensemble de mots et une seconde caractéristique symbolique K2 et un couple de positions POS2 calculées de la même manière que dans l’exécution du premier algorithme ALGO1. La seconde caractéristique K2 peut comprendre un attribut, qui peut définir un label, directement calculé dans le premier composant logiciel MOD1 tel qu’un des labels parmi les suivants : {liens, citations, notes}. Les liens peuvent eux-mêmes être typés selon une sous-catégorie de type URL ou EMAIL. En outre, selon un mode de réalisation, la seconde caractéristique K2 peut comprendre une donnée identifiant une police, une taille de police, un style ou encore une orientation de la cursive de la police d’un mot. Une telle donnée peut également être extraite à partir de règles R2 et d’une base de connaissance BC2 telle que celles utilisées dans l’exécution du premier algorithme ALGO1.

Les données produites par le second algorithme ALGO2 sont transmises à un troisième composant logiciel MOD3. Le troisième composant logiciel MOD3 permet notamment d’ordonner l’ensemble des sorties du premier et du second composant logiciel MOD1 et MOD2 dans l’objectif de regénérer une séquence ordonnée d’objets dans la page traitée.

L’ordonnancement permet de regénérer un document PDFN cohérent en respectant le sens de lecture tout en permettant d’activer certains objets de la page indépendamment des autres. 3eme algorithme du composant MODi

Le procédé de l’invention comprend l’exécution d’un troisième algorithme ALGO3 par le premier composant logiciel MOD1. Le troisième algorithme ALGO3 permet d’extraire des objets de type tableau, table, telle que la table des matières, liste et les numéros de pages et d’une manière générale des structures de type tableau que les tableaux soient explicites dans leur représentation ou implicites lorsqu’ils résultent d’une mise en page de colonnes et/ou de lignes agencées dans une page.

Cet algorithme ALGO3 comprend également la reconstruction d’un objet numérique OB3 à partir d’au moins un paragraphe et d’une structure, d’une organisation ou d’un agencement dudit au moins un paragraphe. La structure d’un paragraphe peut correspondre à ses caractéristiques géométriques, ou son nombre de lignes ou encore son orientation. Le paragraphe correspond à une séquence de symboles en langue naturelle, il peut s’agir d’une lettre, d’un chiffre, d’un nombre, d’un symbole ou d’un ensemble de mots, ou encore une combinaison de ces derniers éléments.

Dans la description, on nomme troisième objet numérique générique OBG3, la structure de type tableau, liste, table ou table des matières indépendamment des séquences de symboles qu’il contient. Ces troisièmes objets numériques génériques OBG3 peuvent comporter des sous-objets numériques de type cellule, ligne, énumération, ou encore une structure hiérarchisée de lignes ayant des liens entre elles, telle que des titres et des sous-titres et des sous-sous-titres.

On appelle troisième objet numérique OB3, la reconstruction de l’association des troisièmes objets numériques génériques OBG3 et des paragraphes labellisés qui sont réinjectés depuis le second composant MOD2 au sein de la structure.

Dans le contexte de l’invention, le troisième objet numérique générique OBG3 peut être encodé selon une caractéristique symbolique notée K 3 .

Selon un premier exemple, une première détection de tableau est mise en œuvre par la détection de lignes et/ou cellules et/ou de bordures ou tout autre élément caractéristique de la géométrie d’une structure telle qu’un tableau. Un couple de positions est extrait de manière à identifier un bloc rectangulaire dans lequel s’agence le tableau. Le calcul des positions du tableau est réalisé soit en prenant en compte le début et la fin d’une séquence d’un ou plusieurs paragraphes, soit en prenant en considération la bordure du tableau par exemple deux coins du tableau. En outre, l’algorithme comprend une fonction permettant de calculer le nombre de lignes et/ou le nombre de colonnes du tableau.

Afin d’identifier un tableau, l’algorithme peut mettre en œuvre un troisième ensemble de règles Fta prédéfinies et/ou une troisième base de connaissance BC3. Les règles R3 peuvent correspondre à l’identification d’intersections de tracés linéaires délimitant des cellules, de lignes ou de colonnes d’un tableau par exemple. L’intersection de 3 tracés linéaires se réfère à une cellule du tableau en bordure du tableau, l’intersection de 4 tracés linéaires indique la présence d’une cellule à l’intérieur du tableau, l’intersection de deux tracés linéaires se réfère au coin ou à l’extrémité du tableau.

Le procédé de l’invention permet également de calculer les dimensions des cellules qui peuvent être extraites ainsi que leur position dans la page ou à l’intérieur du tableau.

Ainsi la troisième caractéristique symbolique K3 comprend un ensemble de données permettant de caractériser la forme du tableau, ses dimensions ainsi que son organisation sous la forme de lignes et de colonnes et de cellules.

Selon un second exemple, une seconde détection de « liste » peut être mise en œuvre dans le procédé de l’invention. Dans le cadre de l’invention, on entend par liste une liste de lignes de symboles formant par exemple des mots, des idéogrammes ou encore des chiffres. Les listes comprennent généralement des puces qui peuvent correspondre à des symboles graphiques identifiables. A titre d’exemple des symboles tels que des tirets « - », des carrés ou des étoiles ou encore des chiffres, permettent d’identifier la présence d’une liste. Une dimension d’une liste peut être déduite entre le premier paragraphe et le dernier paragraphe de la liste. On entend ici comme paragraphe la séquence de symboles discrets en langue naturelle agencée consécutivement au symbole détecté.

Un ensemble de troisièmes règles R3 et la troisième base de connaissance BC3 comprennent alors des recherches de symboles caractéristiques et des alignements entre paragraphes ou lignes. Ainsi, les couples de positions des lignes de symboles peuvent être utilisés pour déduire ou corroborer la présence d’une liste.

Les numéros de pages peuvent également être détectés par le troisième algorithme ALGO3 en utilisant des règles R3 et une base de connaissance BC3. Par exemple, la position d’un chiffre au sein d’une page correspondant à la position d’un autre chiffre dans une autre page permet de déduire la présence d’un objet ayant des propriétés identiques d’une page à l’autre. Enfin, l’identification d’une séquence ordonnée sur un ensemble de pages permet de déduire à l’identification d’un numéro de page.

Par exemple, si un numéro de page est situé dans un en-tête ou un pied de page identifié dans l’algorithme visant à analyser automatiquement les pieds de page et les entêtes de pages, le numéro de page des pages suivantes est automatiquement détecté d’une page à l’autre.

Selon un mode de réalisation, le troisième algorithme ALGO3 reçoit en entrée un label LAB(i) d’un paragraphe PARA1 calculé par le second composant logiciel MOD2. Le label LAB(i) d’un paragraphe permet de réordonner les paragraphes au sein d’une structure de type tableau ou liste. En outre, le label LAB(i) permet de contrôler que des paragraphes d’un tableau sont globalement homogènes. Ainsi, le procédé de l’invention permet d’éviter des erreurs quant à l’identification des objets. Notamment un numéro de page ne peut se retrouver dans un tableau ou le titre peut être exclu d’une liste, etc.

Second composant logiciel MOD2

Selon un mode de réalisation, le second composant logiciel MOD2 comprend une fonction mettant en œuvre un moteur d’inférence Mh. Cette fonction peut être mise en œuvre de différentes manières telles que :

- un moteur d’inférence inférant à partir de règles R4 et une base de connaissance BC4 ;

- un moteur d’inférence inférant à partir de règles R4 et une base de connaissance BC4 combinées avec la mise en œuvre d’une intelligence artificielle telle qu’un modèle de type LSTM, TRANSFORMEUR ou tout autre réseau de neurones.

On rappelle l’acronyme dans la terminologie anglo-saxonne de LSTM : “Long-Short-Term-Memory” et qu’un Transformeur est dénommé dans la terminologie anglosaxonne « Transformer ». Dans ce dernier cas, l’intelligence artificielle peut être mise en œuvre pour générer automatiquement de nouvelles règles ou pour enrichir la base de connaissance.

Un intérêt est d’identifier un label LAB(i) d’un paragraphe parmi les labels suivants :

■ Paragraphe de pied de page, correspondant à un paragraphe agencé dans une zone d’une page située en bas de page et comportant une chaine de caractères répétée au sein d’une pluralité de pages ou une séquence de nombres incrémentée à chaque page ;

■ Paragraphe de haut de page, correspondant à un paragraphe agencé dans une zone d’une page située en haut de page et comportant une chaine de caractères répétée au sein d’une pluralité de pages ou une séquence de nombres incrémentée à chaque page ;

■ Paragraphe standard, correspondant à un paragraphe défini par un style, une police et une taille de caractères donnés et étant le plus représentatif du document analysé ;

■ Paragraphe distingué, correspondant à un paragraphe défini par un style, une police et une taille de caractères donnés différents du paragraphe standard.

■ Paragraphe titre, correspondant à un paragraphe portant le nom d’une section ou d’une sous-section et suivi d’au moins un paragraphe structuré différent d’un paragraphe de pied de page ou d’une note

La fonction permettant de labelliser les paragraphes est notée LABi sur la figure 1. Selon un premier exemple, elle peut correspondre à une fonction statistique permettant de classer des probabilités obtenues à partir du moteur d’inférence si ce dernier est configuré pour prendre en compte un modèle statistique. Cette méthode permet notamment d’élire le meilleur choix entre des sorties du moteur d’inférence qui seraient possibles. Selon un cas, le modèle statistique peut être un réseau bayésien. Ce dernier peut être entraîné pour créer le modèle du moteur d’inférence. Selon un autre exemple, le moteur d’inférence ne prend pas en compte de modèle statistique et détermine grâce à la base de connaissance BC4 un label à tous les paragraphes OBi qui lui sont donnés en entrée. Les autres objets numériques OB2 et OB3 sont labellisés à partir des bases de connaissances BC2 et BC3 dans le composant logiciel MOD1. Un avantage est de ne pas mettre en œuvre d’entrainement spécifique du moteur d’inférence.

En cas de plusieurs sorties possibles, c’est-à-dire plusieurs labels possibles à un même objet, l’invention peut comprendre la génération d’une notification accessible depuis une interface d’un ordinateur, d’une tablette ou d’un Smartphone pour qu’un utilisateur détermine le label. Ainsi, le label attribué par un utilisateur en cas d’ambiguïté de plusieurs possibilités de labellisation automatique permet à la fonction apprenante de générer une nouvelle règle qui sera utilisée par le moteur d’inférence.

La fonction apprenante est préférentielle configurée pour générer de nouvelles règles ou proposer des nouvelles règles à un utilisateur qui peut les valider ou non.

Grâce à la sortie du second composant logiciel MOD2 et au troisième algorithme ALGO3 du premier composant logiciel MOD1, l’invention permet donc de reconstruire un tableau ou une liste ou une table comportant différents paragraphes, c’est-à-dire un ensemble de mots consécutifs, au sein de chaque cellule du tableau ou de la liste.

Chaque troisième objet OB3 comprend une troisième caractéristique symbolique K3 caractérisant la structure de l’objet numérique. Selon un mode de réalisation, l’ensemble des labels des paragraphes compris au sein d’un troisième objet numérique OB3 peut être encodé au sein de la troisième caractéristique symbolique pour être émis ensuite au troisième composant logiciel MOD3.

A cet effet, le troisième algorithme ALGO3 du premier composant logiciel MOD1 comprend une fonction permettant de récupérer un ensemble de paragraphes labellisés et de regénérer un objet numérique correspondant à un tableau ou à une liste dans laquelle les différents paragraphes sont segmentés au sein de lignes d’une liste ou de cellules d’un tableau.

Enfin, le troisième algorithme ALGO3 permet d’effectuer un contrôle de cohérence entre d’une part certains labels de paragraphes et d’autre part la présence desdits paragraphes au sein d’un objet numérique produit tel qu’un tableau ou une liste. Le troisième algorithme ALGO3 produit en sortie des données comportant les troisièmes objets numériques OB3, chaque troisième objet numérique OB3 étant associé à une troisième caractéristique symbolique K3 et un couple de position POS3. Ces données OB1, OB2 et OB3 sont transmises au troisième composant logiciel MOD3 pour ordonner ces trois objets dans la séquence globale de lecture des objets numériques produits par chaque algorithme ALGO1, ALGO2 et ALGO3.

Le troisième composant logiciel MOD3 comprend donc une première fonction ORD1 permettant d’ordonnancer les différents objets numériques OB1, OB2, OB3 produits par le premier composant logiciel MOD1. A cette fin, chaque objet numérique est ordonné selon une séquence de lecture en prenant en compte la nature de l’objet numérique et sa position. Sa nature peut être un tableau, une liste, une image, une ligne de mots, d’idéogrammes ou de chiffres, un paragraphe structuré ou encore une citation, une note, un lien, etc.

Le troisième composant logiciel comprend une fonction notée TAG1 sur la figure 1 permettant de générer un document numérique PDFN comportant une structure qui permet de rendre accessible le document à des personnes mal-voyantes notamment à l’aide d’un interpréteur capable de lire les différents objets et de générer des sorties multimédias pouvant être accessible à ces individus.

La fonction TAG1 permet donc d’associer les métadonnées, c’est- à-dire les données caractéristiques symboliques et les positions des objets numériques audit contenu dudit objet numérique.

Selon un mode de réalisation, le procédé de l’invention comprend une étape de traitement permettant d’activer certains objets selon un sens de lecture ou selon une interaction utilisateur. L’activation de l’objet peut, par exemple, aboutir à la génération d’une lecture vocale du contenu d’un paragraphe ou d’un tableau à partir d’un synthétiseur vocal ou plus généralement d’un lecteur d’écran. Un avantage de l’invention est de permettre de contextualiser la lecture vocale par exemple avec une sémantique prédéfinie qui dépend de l’objet interprété. Ainsi, la lecture d’un tableau par un synthétiseur vocal peut intégrer des phrases de contexte précisant par exemple qu’un tableau va être lu. Il peut être préciser un sens de lecture du tableau et des éléments de langages indiquant par exemple : « le tableau comporte 3 lignes, dans la première ligne, la première colonne, il est indiqué « Paris », dans la seconde ligne, première colonne, il est indiqué « Dublin », etc.

Ainsi, l’invention permet de donner un accès à une personne handicapée à un contenu complexe d’un document qui n’est pas aisément restituable même sous la forme électronique.

La figure 2 illustre un exemple d’une page d’un document Fi ou F2 selon si on considère le document d’entrée ou le document généré par le procédé de l’invention. Le fichier F2 est un document au format .pdf structuré sous la forme d’une pluralité d’objets numériques générés et agencés grâce au procédé de l’invention. Dans cette illustration, la page comprend une pluralité de premiers objets numériques OB1, chacun étant associé à une caractéristique symbolique K1, une pluralité de troisièmes objets numériques OB3 et dans cet exemple un second objet numérique OB2 associé à une seconde caractéristique symbolique K2.

La figure 3 représente un exemple de réalisation d’un système de l’invention comprenant un terminal T1 d’un utilisateur permettant d’afficher et/ou de lire un contenu d’un fichier numérique au format .pdf.

Un premier serveur SERV1 comprend au moins une mémoire et un calculateur permettant d’exécuter les algorithmes du premier composant logiciel MOD1. Selon un mode de réalisation, le second composant logiciel MOD2 est exécuté sur un second serveur SERV2 comportant des moyens de calculs et au moins une mémoire. Un intérêt de cette architecture distribuée est de permettre de bénéficier d’une intelligence artificielle de manière dédiée au calcul des labels. Les échanges de données sont réalisés via un réseau de données NET1 tel qu’internet.

Un avantage principal de l’invention est de générer un ordonnancement des objets numériques d’une page numérique. L’invention permet notamment de rendre intelligible un document comportant une structuration complexe et des objets numériques hétérogènes au travers d’un ordonnancement des objets numériques à lire automatiquement selon un sens de lecture cohérent. Différents exemples sont décrits ci-après visant à décrire différents modes de réalisation permettant de mieux comprendre les avantages de l’invention vis-à-vis de l’état de l’art.

La figure 4 est un exemple de fichier numérique F10 correspondant à une page numérique par exemple au format pdf. Le procédé de l’invention permet de segmenter les différents objets numériques présents dans la page. Un premier objet numérique 1 correspond à un titre TIT de la page. Le titre 1 est détecté grâce au procédé de l’invention et notamment à l’étape de labélisation du paragraphe. La labélisation prend en compte notamment la police détectée du paragraphe et le positionnement du paragraphe vis-à-vis des autres objets numériques.

Trois objets numériques 2, 3 et 4 correspondent à des images IMG. Enfin, un second titre 5 est détecté consécutivement auxdites images.

Les paragraphes 6, 7, 8 et 9 sont des paragraphes standards. C’est-à-dire que la police de ces paragraphes est la plus représentative des différents objets de la page. On rappelle que le style et les espaces intersymboles peuvent également être utilisés pour détecter un paragraphe standard ou tout autre paragraphe.

Le procédé de l’invention permet de reconnaître automatiquement une structure de paragraphe agencée au sein de différentes colonnes. Le procédé de l’invention permet donc de détecter une structure de tableau. Les espacements horizontaux et verticaux entre les différents paragraphes sont automatiquement mesurés. Le procédé de l’invention permet donc d’exploiter des données quantifiables en distance séparant les différents paragraphes ou de manière générale les différents objets de la page.

La largeur des paragraphes 6 et 9 sont identiques et ces paragraphes sont espacés d’une distance dans le sens vertical en y. Par ailleurs, aucun paragraphe de type « titre » n’est situé entre les paragraphes 6 et 9. Cette analyse automatique par le procédé de l’invention permet de conclure que ces paragraphes se lisent à la suite l’un de l’autre.

Puis la structuration en colonne de ces paragraphes de même largeur permet de générer un ordre de lecture allant du paragraphe 9 vers le paragraphe 7 puis le paragraphe 8.

Le procédé de l’invention permet de détecter un objet 10 de type « citation » et noté CIT sur la figure 4. La citation 10 pourrait être détectée soit par l’algorithme ALGi si cette citation est détectée comme un paragraphe ou par l’algorithme ALG2 selon une analyse des symboles ou par les deux algorithmes.

La détection d’une citation est réalisée à partir de l’analyse de la police, par exemple en italique, et de symboles donnés de type guillemets « « ». L’objet 10 s’étend au moins partiellement sur deux colonnes comportant les paragraphes standards 7 et 8. Dans ces conditions, la labellisation de l’objet 10 permet donc d’identifier une citation qui sera lue dans le sens de lecture consécutivement au paragraphe 8. Un nouveau paragraphe 12 de type « légende » est détecté et permet de générer une nouvelle étape de la séquence de lecture consécutivement à la lecture de la citation 10.

Ainsi, le procédé de l’invention permet de combiner différents critères dont :

- le type de paragraphe et plus généralement les types d’objets,

- l’agencement de ces paragraphes d'un même type entre eux au sein d’une structuration de type colonne ;

- la présence de titre entre les paragraphes et leur agencement au sein d’une structuration de type colonne ;

- et les espacements verticaux et/ou horizontaux entre ces paragraphes, afin de générer une séquence de lecture ordonnée.

Une structure de tableau peut être explicite ou implicite. On entend par une structure de tableau « explicite », un tableau présent dans la page en tant que tel. On entend par structure de tableau « implicite », une structure non présente dans la page en tant que tableau mais en tant que structure de paragraphes répartis selon différentes colonnes. Un tableau explicite peut comporter des délimiteurs tels que des lignes délimitant les lignes, les colonnes et/ou les cellules. Un tableau implicite n’est généralement pas présenté en tant que tableau puisqu’il peut s’agir d’une mise en page par exemple de trois paragraphes agencés selon trois colonnes sur une seule ligne sans délimiteur.

On appelle structure de tableau, une structure permettant de séparer des objets numériques agencés sur plusieurs colonnes séparées d’un espacement horizontal donné et/ou une structure permettant de séparer des objets numériques agencés sur plusieurs lignes séparées d’un espacement vertical donné.

La figure 4 permet de représenter un exemple dans lequel le procédé de l’invention permet donc de générer un ordre de lecture non trivial selon différents critères.

Selon un exemple de réalisation, l’ordre de lecture peut débuter par un paragraphe de type numéro de page comme cela est représenté figure 4 par l’objet 11 et noté NP désignant un numéro de page.

La séquence de lecture des différents objets de la figure 4 est ici représentée par les symboles S1 , S2, S3, S4, S5, S6, S7 S8 jusqu’au symbole FIN qui désigne la fin de la lecture de la page F10.

La figure 5 représente un second exemple illustrant la génération d’une séquence de lecture selon un ordre généré par le procédé de l’invention.

Dans cet exemple, différents objets sont identifiés comme des paragraphes avec différents labels.

Le procédé de l’invention permet de détecter une structure de tableau à partir des espacements entre les objets numériques situés à gauche de la page et les objets numériques situés à droite de la page. La structure de tableau de la page représentée à la figure 5 résulte d’une mise en page d’une page structurée selon deux colonnes partiellement sur une partie de la page et non d’un tableau explicite.

Un premier type de paragraphe TIT correspond à un objet de type titre, comme les objets 20, 28, 31 .

Un second type d’objets numériques correspond à des paragraphes standards notés TEXT et correspondant aux objets de la figure 5 : 21 , 22, 24, 25, 26, 27, 29, 30, 32.

Un troisième type d’objets numériques correspond à des paragraphes de type « référence de note » ou « astérisque», noté NT. Ces références de notes sont par exemple intégrées dans les paragraphes 26 et 30 au moyen d’un symbole associé à un mot par exemple ou une phrase, il peut s’agir par exemple d’une étoile ou d’un chiffre entre parenthèse. Le procédé de l’invention permet de détecter automatiquement ce type d’objet grâce à la proximité d’un symbole prédéfini avec une suite de symboles discrets constituant un mot par exemple. Ces astérisques NT renvoient à des notes telles que des notes de bas de page notées NT_REF et correspondant à deux objets numériques d’un autre label. Ces notes peuvent également dans d’autres cas renvoyer à des notes de tableau agencées au voisinage d’une structure de tableau. La détection de ces objets est réalisée grâce à une analyse automatique de la police de ces paragraphes, leur positionnement dans la page, la présence d’un symbole similaire à celui de l’objet NT et à un alignement des différentes notes de bas de page dans le cas où plusieurs notes sont présentes.

Le procédé de l’invention permet de labéliser différents sous-types d’objets tels que les titres. Les titres ont généralement une police plus importante ou un style donné tel qu’un caractère gras. Un différenciateur est également leurs positions respectives et leurs positions vis-à-vis des paragraphes. Ainsi , le titre 20 est un titre de page, on comprend que les paragraphes de types standards qui suivent sont rattachés à ce titre. La structuration en deux colonnes est automatiquement détectée grâce à la mesure des intervalles verticaux et horizontaux entre paragraphes. Les distances verticales inter-paragraphe selon l’axe y et les distances horizontales inter-paragraphes selon l’axe x permettent de détecter la structuration des paragraphes selon deux colonnes dans cet exemple. Ainsi, un ordre de lecture est généré permettant de passer de l’objet 20 vers l’objet 21 , puis 24, puis 26, puis la note 34. A la fin de la lecture de la note 34 la séquence de lecture reprend la lecture du contenu de l’objet 26 jusqu’à la sa fin et ensuite la lecture continue avec les objets 22 sur la seconde colonne de la structure de tableau, puis 25 et enfin 27. La lecture enchaîne ensuite avec le titre 28. On note que la détection de l’astérisque NT permet de générer une séquence de lecture vers la première note de bas de page 34.

L’objet 28 est labélisé comme un titre. Le procédé de l’invention permet alors de vérifier les espaces verticaux selon l’axe y et les écarts horizontaux selon l’axe x avec les objets voisins. Aucun texte n’étant présent sur la ligne horizontale interceptant l’objet titre 28 au niveau de la seconde colonne, un nouveau sens de lecture débute alors de l’objet 29 vers l’objet 30 à partir du titre 28. La détection d’un nouveau titre 31 entraine également la vérification de la présence d’un paragraphe ou plus généralement un objet sur la ligne horizontale interceptant le titre 31 . Dans le cas d’exemple de la figure 5 aucun autre objet n’est présent, un nouveau sens de lecture permet de générer une séquence allant de l’objet 32 à l’objet 33 avant de terminer la séquence de lecture représentée par la flèche FIN.

Si un objet avait été détecté par le procédé de l’invention sur la ligne horizontale interceptant le titre 28 par exemple sur la seconde colonne, le titre 28 aurait été interprété comme un titre secondaire de la première colonne à lire dans le sens de lecture des paragraphes standards au sein de la première colonne. Le procédé de l’invention permet donc de calculer automatiquement les distances verticales et horizontales entre les différents objets afin de déduire une séquence ordonnée de lecture.

On note qu’une détection d’un objet NT au sein de l’objet 30 permet de labéliser l’objet NT comme une référence à une note de bas de page. Puisqu’elle arrive en second dans la séquence ordonnée de lecture, le procédé de l’invention permet de générer automatiquement un lien avec la seconde note de bas de page 35 qui sera lue lors de la lecture de l’objet 30 avant de reprendre ensuite la séquence S18.

Selon un mode de réalisation, la lecture débute par le numéro de page et le cas échéant un titre ou une note de bas de page à proximité du numéro de page comme c’est le cas sur la figure 5 avant de reprendre par le titre principal de la page. Lorsque qu’une page comprend un numéro de page et un numéro de section, ces numéros sont lus selon une séquence donnée. Le numéro de page situé en bas de page ou en haut de page, comme l’objet 37, est lu avant le numéro de section qui est situé sur le côté de la page comme l’objet 23. Dans le cas de la figure 5, un pied de page 36 et noté « BP » est lu juste après le numéro de page avant la lecture du numéro de section.

Le procédé de l’invention permet d’identifier et de labeliser un numéro de page et un numéro de section grâce à une fonction permettant d’associer à l’objet numérique identifié un type de séquence de numéro. Ainsi, le procédé permet de distinguer un numéro de page d’un numéro de section puisque les numéros de page ont une séquence plus grande que la séquence des numéros de section. La séquence des numéros identifiée permet donc de labeliser le type de numéro en tant que numéro de page ou numéro de section selon la numérotation des objets identifiés et labélisés. La séquence ordonnée de lecture est représentée la succession des flèches S1 , S2, S3, S4, S5, S6, S7, S8, S9, S10, S11 , S12, S13, S14, S15, S16, S17, S18, S19, S20.

On comprend que le procédé de l’invention comprend un algorithme permettant dans un premier temps de détecter des symboles, labelliser des objets tels que des paragraphes ou des images et détecter une structuration de page afin de générer dans un second temps une séquence ordonnée de lecture des différents objets détectés. Cette séquence est notamment générée à partir de règles et d’une base de connaissance. Ces règles permettent notamment d’arbitrer un choix de séquence ordonnée de lecture parmi plusieurs séquences possibles. L’algorithme peut comprendre un moteur statistique tel qu’un moteur bayésien ou un autre algorithme statistique permettant de voter l’objet le plus probable devant être lu après un objet déjà identifié. Le procédé de l’invention permet donc de hiérarchiser des règles entre elles en cas de conflits. A titre d’exemple, un titre avec une police importante peut laisser suggérer une nouvelle étape de lecture et donc un nouveau sens de lecture vertical indépendant de la structuration des colonnes précédents ledit titre. Toutefois, dans ce même cas, si un objet tel qu’un paragraphe standard est agencé sur une même ligne horizontale que le titre au niveau d’une potentielle seconde colonne précédemment agencée au titre identifié, alors le titre est entendu comme un objet de la première colonne et le sens de lecture est poursuivi au sein de la première colonne. C’est le cas avec le titre 46 de la figure 6. Peu importe la taille de la police de ce titre, la lecture est poursuivie au sein de la première colonne identifiée car un objet 47 est présent sur la même ligne horizontale que ce dernier objet 46.

La figure 6 représente un fichier F12 représentant une page numérique d’un document au format pdf. Dans l’exemple de la figure 6, le procédé de l’invention permet d’identifier plusieurs objets numériques tels que les objets 40, 41 , 42, 43, 44, 45, 46, 47, 48, 49, 50, 51 et 52.

Le procédé de l’invention permet de détecter une structure de tableau liée à la mise en page sous la forme de deux colonnes sur une partie de la page représentant le fichier F12. Cette structure de tableau selon deux colonnes peut être déduite des espacements calculés entre les deux objets agencés selon deux colonnes et séparés d’une distance donnée. Des objets de type « titre » sont labélisés tels que les objets 40, 41 , 43, 46. Des objets de type « paragraphe standard » sont labélisés tels que les objets 42, 44, 45, 48, 49, 50.

Des objets de type « numéro de page » sont labélisés tels que les objets 52. Des objets de types « numéro de section » sont labélisés tels que l’objet 23. La labellisation de ces objets peut être réalisée par le troisième algorithme ALG3. Des objets de type « pied de page » sont labélisés tels que l’objet 36 et 51 , noté BP. La labélisation de ces objets peut être réalisée par exemple par le second algorithme ALG2du second composant logiciel MOD2.

Un pied de page BP et une note de bas de page NT_REF peuvent généralement être discriminer par leur position vis-à-vis d’un numéro de page ou encore par la présence d’une pluralité de notes ou encore par l’association d’un symbole permettant de lier une note avec la référence de la note. Le procédé de l’invention peut comprendre des règles permettant de réaliser cette discrimination ou encore un algorithme d’apprentissage machine permettant de détecter le label de l’objet identifié.

La figure 7 représente un autre exemple de fichier F13 dans lequel différents objets numériques sont identifiés, extraits et labellisés. Les objets 60 et 61 sont de type « titre ». Les objets 63, 64, 65, 66 sont de type « paragraphe standard » ou paragraphes distingués.

Un nouvel objet 68 de type « tableau » est détecté. Ce tableau comprend trois colonnes 72, 73 et 74 et trois lignes principales 69, 70 et 71 . Les cellules du tableau comportent des objets numériques de type « Texte» et de type « titre ».

La première ligne comprend un objet de type « titre » s’étendant sur deux colonnes fusionnées. La cellule comprise dans la première ligne et la troisième colonne comprend également un objet de type « titre ».

La seconde ligne du tableau comprend dans chaque cellule un objet numérique de type « paragraphe standard » noté TEXT sur la figure 7. Une troisième ligne comporte également trois cellules réparties sur trois colonnes, chaque cellule comporte un objet numérique de type paragraphe standard.

Dans l’exemple de la figure 7, un cas tableau complexe est représenté pour illustrer la capacité du procédé de l’invention à générer des séquences de lectures cohérentes mêmes en présence d’objets complexes tels que des tableaux, eux-mêmes comportant des structures complexes. Dans le cas de la figure 7, la cellule de la troisième ligne du tableau et de la troisième colonne du tableau comporte une pluralité d’objets numériques eux-mêmes répartis sur une pluralité de lignes et de colonnes.

Selon une autre possibilité, les lignes de la troisième colonne peuvent être vues comme des lignes du tableau et non de la cellule de la troisième colonne uniquement. Dans tous les cas, le procédé de l’invention permet de reconstruire une structure et la conception originelle du tableau n’est pas prise en compte puisque le procédé de l’invention permet de reconstruire une structure du tableau de manière agnostique.

La troisième colonne comporte donc une cellule comportant une première ligne avec un objet de type « paragraphe standard » sur une seule colonne. La cellule comporte ensuite une seconde ligne comportant un nouvel objet de type « titre » puis une troisième ligne comportant deux colonnes comportant chacune deux objets de types « paragraphe standard ». Une autre ligne qui suit comporte également deux objets répartis sur deux colonnes de type « paragraphe standard ». Puis sur la ligne suivante, un seul objet est détecté de type « titre » et ensuite deux lignes suivent ayant également chacune deux objets répartis sur deux colonnes de type paragraphe standard.

Cette structure complexe comporte une répartition d’objets qui peut être lue de manière cohérente selon une séquence ordonnée.

Le procédé de l’invention comporte donc la définition de règles permettant de détecter des propriétés d’agencement d’objets numériques pour en déduire une structure de la page.

Les espacements verticaux et horizontaux entre objets permettent de déduire la structure du tableau 68. Notamment, les espacements horizontaux selon l’axe X permettent la déduction du nombre de colonnes. La répartition des objets dans la troisième colonne 74 permet de déduire que cette troisième colonne comporte des lignes supplémentaires s’inscrivant dans la structure du tableau. Certains espacements horizontaux de la troisième colonne 74 sont eux-mêmes caractéristiques de la présence de deux objets répartis sur deux colonnes au sein de la troisième colonne. Ce qui permet avec la détection des titres de déduire un sens de lecture.

Dans ces conditions, la séquence de lecture suit une première phase jusqu’au tableau qui occupe la première partie de la page. La séquence commence au numéro de page 62 avec une première séquence S1 vers le titre de la page 60 puis continue vers le titre 61 avec une séquence S2. Ensuite, la détection de deux colonnes est réalisée du fait de l’analyse des espacements entre objets numériques d’une part entre l’objet 63 et l’objet 68 et d’autre part entre l’objet 65 et l’objet 66. Ces objets étant des paragraphes standards, la séquence générée est la suivante : S3 puis S4 puis S5 et S6. La séquence ordonnée de lecture poursuit avec la séquence S7 passant de L’objet 66 vers la lecture du tableau 68.

La lecture du tableau 68 comprend la lecture des titres de la première ligne selon la séquence S7 et S8 avant de passer à la seconde ligne avec la séquence S9 et la lecture des trois objets de la ligne 70 de type paragraphe standard selon la séquence S10, S11 et S12. Ensuite les objets de la troisième ligne sont lus séquentiellement selon la séquence S12, S13 puis S14.

Ensuite la détection des objets présents dans la troisième colonne du tableau permet de générer automatiquement une séquence depuis le titre vers la ligne suivante et ainsi de suite. Lorsque deux objets sont sur la même ligne dans la troisième colonne, la séquence de lecture générée permet d’enchainer la lecture de ces deux objets successivement. La séquence ordonnée est la suivante : S15, S16, S17, S18, S19, S20, S21 , S22, S23, S24 et S25.

Les différentes cellules de la troisième ligne ou les objets contenus dans la troisième ligne et la troisième colonne peuvent également être considérés comme des paragraphes d’une cellules répartis sur une ou deux colonnes.

Lorsqu’une liste à puces est détectée au sein d’une structure de tableau par le troisième algorithme, le procédé de l’invention permet de générer une entité de cellule comportant ladite liste à puces.

Toutefois, lorsque le procédé de l’invention détecte des objets numériques tels que des paragraphes espacés de chaque entité de la liste à puces, une séquence de lecture peut être générée de sorte que chaque ligne comportant un élément d’une liste à puce puis le paragraphe espacé sur la même ligne soit lu avant de changer de ligne de la liste à puces.

Dans le cas de la figure 7, la séquence comporte la lecture selon S17 puis S18 du fait qu’un espacement est détecté entre les deux paragraphes TEXT sur la même ligne. Si aucun paragraphe n’est situé à coté d’un paragraphe TEXT sur la même ligne, le sens de lecture est poursuivi vers le bas de la feuille dans le sens de la colonne.

Le procédé de l’invention permet de détecter la présence d’une structure de tableau grâce au troisième algorithme ALG3 et de générer une séquence ordonnée de lecture des objets numériques labélisés compris dans cette structure de tableau. Le procédé de l’invention permet donc de considérer une structure de tableau comme une unité de lecture.

Le procédé de l’invention permet également de prioriser certains objets vis-à-vis d’autres objets lorsque ces derniers sont compris l’un dans l’autre, c’est-à-dire que la position de l’un est comprise dans une zone d’un autre objet. Par exemple, les références aux notes telles que les astérisques, également appelé « appel de notes », peuvent être priorisées vis-à-vis d’un objet de type « citation » lorsque la référence à une note est un symbole ou un caractère de ladite citation. Par exemple, lorsqu’une citation est détectée, l’ordre de lecture va être généré selon un coefficient de pondération, ou un poids. On rappelle que l’ordonnancement de la lecture peut être généré à partir d’une méthode de génération de coefficient(s) de pondération ou de poids associé(s) à chaque objet de la page détecté. Un poids plus important est donné à une référence à une note contenue dans une citation que le poids de la citation elle-même. Selon un exemple, le poids d’une référence à une note comprise dans une citation comprend par défaut le poids de la citation. Ainsi, la séquence de lecture pourra tenir compte d’une note de bas de page qui sera lue pendant la lecture de la citation.

Selon un autre exemple, une citation peut être détectée lorsqu’elle est encastrée à cheval sur deux colonnes d’un tableau ou d’une structure de de tableau relative à une mise en page d’une page d’un document numérique. On rappelle qu’une structure de tableau comporte plusieurs colonnes et au moins une ligne ou inversement. Cette configuration d’encastrement de citation à cheval sur deux colonnes est commune par exemple dans des plaquettes de présentation ou dans un journal, lorsqu’une citation est mise en avant. Dans ce cas, la ou les positions de la citation sont détectées au sein d’une structure de tableau. Cette structure de tableau peut définir également un objet numérique de plus haut niveau.

Dans ce cas, la priorisation est inversée par rapport au cas des citations et des références aux notes précédemment décrit. En effet, la séquence de lecture priorise la lecture des objets de chaque colonne de la structure de tableau et enchaîne ensuite sur la citation qui est insérée dans cette structure de tableau. Pour déterminer l’ordre de la séquence de lecture des différents objets, une règle peut être définie de sorte que les objets de type « paragraphe standard » ou « paragraphe distingué » ou « titre » sont lus en priorité tant qu’ils sont dans la structure détectée. La citation est alors lue après la lecture du dernier objet de la structure.

Selon un cas, lorsque la structure est de type « tableau », une détection d’un changement de ligne peut aboutir à décider la lecture d’une citation de la première ligne avant le passage à la seconde ligne ou au contraire de lire la seconde ligne et de revenir à la lecture de la citation incluse dans la première ligne.

Le procédé de l’invention comprend donc une fonction permettant de détecter la présence de structures de tableau(x). Cette structure de tableau identifiée constitue une unité de lecture au sein duquel les éléments sont lus selon une séquence ordonnée de lecture. Dans certains cas, un objet est lu dans une séquence après l’ensemble des objets d’une structure d’un tableau, c’est le cas des citations présentes dans un tableau. Dans d’autres cas, un objet externe à une structure de tableau est lu au sein de la lecture d’un objet compris dans la structure de tableau, c’est le cas des notes telles qu’une note de bas de page ou une note de tableau qui est associée à une référence de note comprise dans la structure de tableau.

Lorsque différentes lignes du tableau comprennent une suite d’objets de type « paragraphe standard » ou « paragraphe distingué » ou « titre », le procédé de l’invention identifie un sens de lecture qui serait identique à celui des listes à puces. Réciproquement, chaque liste à puces d’un tableau constitue une cellule de tableau. Etant donné que chaque objet numérique d’une cellule dans une colonne donnée n’a pas d’équivalent dans les autres colonnes, le procédé peut déduire un sens de lecture vertical au sein de la colonne.

Le procédé de l’invention permet d’identifier automatiquement des listes à puces et des structures de tableaux et éventuellement des structures de tableaux comportant des listes à puces.

Le tableau peut comprendre des délimiteurs ou séparateurs explicites tels que des traits. Selon un mode de réalisation, ces derniers séparateurs sont pris en compte pour prioriser un sens de lecture dans le cas d’une ambiguïté pour poursuivre la lecture selon une ligne de la structure de tableau ou selon une colonne de la structure de tableau.

Le procédé de l’invention permet donc de lire le tableau ligne par ligne et colonne par colonne à l’intérieur de chaque ligne tout en sachant qu’une cellule d’une colonne du tableau peut être liée à plusieurs cellules de lignes du tableau.

Selon un mode de réalisation, une structure de type « sommaire » ou « table des matières » peut être détectée.

Les éléments pris en compte pour détecter un sommaire ou une table des matières sont notamment :

■ la correspondance des titres présents dans le sommaire et les titres contenus dans les pages suivantes,

■ la présence de chiffres ou de numéros.

■ La détection du sommaire en début de document, par exemple dans les premières pages d’un document numérique.

La détection d’un sommaire peut être prise en compte pour associer un indicateur de hiérarchie des titres identifiés dans une page d’un document. La hiérarchie peut notamment être prise en compte dans la génération d’une séquence ordonnée de lecture des objets numériques présents dans une page.