FR3139644A1 - METHOD FOR THE AUTOMATED PROCESSING OF A DOCUMENT FOR ITS USE BY PEOPLE WITH DISABILITIES - Google Patents

METHOD FOR THE AUTOMATED PROCESSING OF A DOCUMENT FOR ITS USE BY PEOPLE WITH DISABILITIES Download PDF

Info

Publication number
FR3139644A1
FR3139644A1 FR2209010A FR2209010A FR3139644A1 FR 3139644 A1 FR3139644 A1 FR 3139644A1 FR 2209010 A FR2209010 A FR 2209010A FR 2209010 A FR2209010 A FR 2209010A FR 3139644 A1 FR3139644 A1 FR 3139644A1
Authority
FR
France
Prior art keywords
digital
objects
paragraph
page
algorithm
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
FR2209010A
Other languages
French (fr)
Inventor
Christian KAHINDO
Moïse AKBARALY
Jackir Assan Aly
Aymen MTIBAA
Sarah RAJAOSAFARA
Alex Donald TSAGUE MAFO
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Docaxess
Original Assignee
Docaxess
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Docaxess filed Critical Docaxess
Priority to FR2209010A priority Critical patent/FR3139644A1/en
Priority to PCT/EP2023/074784 priority patent/WO2024052557A1/en
Publication of FR3139644A1 publication Critical patent/FR3139644A1/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/106Display of layout of documents; Previewing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/131Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/137Hierarchical processing, e.g. outlines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/177Editing, e.g. inserting or deleting of tables; using ruled lines

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Document Processing Apparatus (AREA)

Abstract

M E THODE POUR LE TRAITEMENT AUTOMATISE D’UN DOCUMENT POUR SON UTILISATION P A R DES PERSONNES EN SITUATION DE HANDICAP Procédé de traitement automatisé d’un document numérique structuré (F1) pour générer un objet numérique augmenté (OB1) : Acquisition d’un premier fichier numérique (F1) au format portable document format ;Segmentation dudit premier fichier numérique (F1) en une pluralité d’objets numériques :Mise en œuvre d’un premier algorithme (ALG1) permettant de générer des objets numériques définissant des paragraphes ;Mise en œuvre d’un second algorithme (ALG2) permettant de générer des objets numériques relatifs à des chaines de caractères ayant une métadonnée ;Mise en œuvre d’un troisième algorithme (ALG3) permettant de générer des objets numériques définissant des structures d’organisation de chaines de caractères ;Labellisation (LAB1) des premiers objets numériques (OB1);Ordonnancement des objets numériques (OB1, OB2, OB3) à partir d’un troisième composant logiciel (MOD3) ;Génération d’un second fichier numérique (F2) comportant l’ensemble des objets numériques ordonnés. Figure pour l’abrégé : Fig.1METHOD FOR THE AUTOMATED PROCESSING OF A DOCUMENT FOR ITS USE BY PEOPLE WITH DISABILITIES Process for automated processing of a structured digital document (F1) to generate an augmented digital object (OB1): Acquisition of a first digital file (F1) in portable document format; Segmentation of said first digital file (F1) into a plurality of digital objects: Implementation of a first algorithm (ALG1) making it possible to generate digital objects defining paragraphs; Implementation of 'a second algorithm (ALG2) making it possible to generate digital objects relating to character strings having metadata; Implementation of a third algorithm (ALG3) making it possible to generate digital objects defining character string organization structures ;Labeling (LAB1) of the first digital objects (OB1);Scheduling of digital objects (OB1, OB2, OB3) from a third software component (MOD3);Generation of a second digital file (F2) comprising all ordered digital objects. Figure for abstract: Fig.1

Description

METHODE POUR LE TRAITEMENT AUTOMATISE D’UN DOCUMENT POUR SON UTILISATION PAR DES PERSONNES EN SITUATION DE HANDICAPMETHOD FOR THE AUTOMATED PROCESSING OF A DOCUMENT FOR ITS USE BY PEOPLE WITH DISABILITIES Domaine de l’inventionField of the 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.The field of the invention is that of methods for automatically processing documents in portable document format (PDF) so as to make them accessible to disabled people. In particular, the field of the invention relates to methods integrating algorithms aimed at automatically labeling documents to make these documents accessible and interpretable by third-party applications.

État de la techniqueState of the art

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 mal-voyants. 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.There are different techniques for scanning and labeling a document in portable document format (PDF) automatically. However, current annotation and labeling techniques do not allow full use of the document for individuals with disabilities, particularly the blind or visually impaired. Indeed, when using such a document, in order to transcribe the contextualized information such as that contained in tables or such as certain notes or even information listed in lists, it is necessary that an interpreter, such as a voice interpreter, can present the information in context. However, current methods do not allow the exploitation of each digital object to contextualize the automated reading of a 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ées efficacement par un interpréteur.There are solutions based on artificial intelligence, but most often with the objective of discriminating or filtering relevant information or even restoring a layout without creating digital objects that can be effectively exploited by an interpreter.

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.There is therefore a need to define a solution making it possible to generate a document that can be fully activated by a third-party application to exploit each digital object of a document according to their structure and facilitate access by a visually impaired or blind individual.

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 :
    • 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 ;
    • 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 :
    • 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 ;
    • 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 :
    • 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 ;
    • 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 :
    • Les positions des premiers objets, des seconds objets et des troisièmes objets ;
    • Les labels de chaque premier objet ;
    • 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.
According to a first aspect, the invention relates to a method for automated processing of a digital document to generate an augmented digital object:
  • Acquisition of a first digital file in portable document format;
  • Segmentation of said first digital file into a plurality of digital objects from a first software component comprising:
  • Implementation of a first algorithm comprising:
    • Extraction of a first set of digital objects each comprising a sequence of discrete symbols in a natural language defining a paragraph; said extraction comprising the application of a first set of rules and a first knowledge base to generate at least one first symbolic characteristic of said paragraph;
    • Generation of a plurality of pairs of 2D positions in the first digital file, each pair of positions defining a first rectangular area comprising the display of a first object and association of said pairs of positions with said first objects;
  • Implementation of a second algorithm comprising:
    • Extraction of a second set of digital objects each comprising a sequence of discrete symbols in a natural language and at least one second symbolic characteristic representative of metadata associated with the digital object; said extraction comprising the application of a second set of rules and a second knowledge base;
    • Generation of a plurality of pairs of 2D positions in the first digital file, each pair of positions defining a second rectangular area comprising the display of a second object and association of said pairs of positions with said second objects
  • Implementation of a third algorithm comprising:
    • Extraction of a third set of at least one third digital object each comprising a sequence of discrete symbols in a natural language and at least one third symbolic characteristic representative of the arrangement of a plurality of sub-objects within said at least a digital object, said extraction comprising the application of a third set of rules and a third knowledge base;
    • Generation of a plurality of pairs of 2D positions in the first digital file, each pair of positions defining a third rectangular area comprising the display of a third object and association of said pairs of positions with said third objects;
  • Labeling of the first digital objects by means of a second software component comprising the implementation of an inference engine;
  • Scheduling of digital objects from a third software component taking into account as input:
    • The positions of the first objects, second objects and third objects;
    • The labels of each first object;
    • The first symbolic characteristics, the second symbolic characteristics and the third symbolic characteristics;
  • Generation of a second digital file containing all of the ordered digital objects.

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.One advantage is that it makes it possible to generate a document that can be activated by a reader such as a screen reader in order to use all the elements of a document. An advantage is to allow intelligible restitution of each element of a document, particularly for a blind person.

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 chaine 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.
According to one embodiment, the first algorithm comprises the steps of:
  • Identification of a line of the first digital file comprising a first character string;
  • Identification of the orientation of said line according to at least a first rule;
  • Identification of symbolic information characteristic of the character string according to a second rule and of information characterizing the space between each character string of said line according to a third rule;
  • Categorization of said line,
  • Reiteration of the operations to identify each line and their categorization;
  • Generation of said first symbolic characteristic of a paragraph when the categorization of a set of lines is identical.

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.An advantage is to associate metadata with each line of characters in order to reconstruct paragraphs. This characteristic allows better interpretation of the content when a screen reader automatically processes the content of a document to generate a reading for a visually impaired person, for example.

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.
According to one embodiment, the labeling step makes it possible to associate a label with a paragraph from one of the following labels:
  • Footer paragraph, corresponding to a paragraph arranged in an area of a page located at the bottom of the page and comprising a string of characters repeated within a plurality of pages or a sequence of numbers incremented on each page;
  • Top-of-page paragraph, corresponding to a paragraph arranged in an area of a page located at the top of the page and comprising a string of characters repeated within a plurality of pages or a sequence of numbers incremented on each page;
  • Standard paragraph, corresponding to a paragraph defined by a given style, font and character size and being the most representative on all pages of the digital document;
  • Distinguished paragraph, corresponding to a paragraph defined by a given style, font and character size different from the standard paragraph;
  • Title paragraph, corresponding to a paragraph bearing the name of a section or subsection and followed by at least one structured paragraph other than a footer paragraph or a 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.An advantage is to differentiate the different types of paragraphs to allow a contextualized reading of the information by a screen reader in order to make the reading of the different paragraphs of a document intelligible.

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.According to one embodiment, the second software component is implemented from an inference engine executed from a set of rules and a fact base taking into account the first symbolic characteristics.

Un avantage est de permettre le traitement de l’ensemble des cas de figures possibles à partir de règles traitant des différents scénarios possibles.An advantage is to allow the processing of all possible scenarios based on rules dealing with different possible scenarios.

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.
According to one embodiment, the second software component is implemented from an inference engine executed from a learning function whose input vectors comprise at least the first symbolic characteristics, said learning function implemented work being:
  • a “Recurrent neural network” type network, denoted RNN or;
  • a “Long short-term memory” type network, denoted LSTM or;
  • a BERT or GPT type transformer, such as 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.According to this embodiment, the implementation of a learning function makes it possible to automatically determine new rules used by the inference engine. One advantage is to enrich the model on which the inference engine infers.

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 chaine de caractères comportant le symbole détecté et la catégorie générée.
According to one embodiment, the second algorithm comprises:
  • detection of a first predefined typographic symbol;
  • detection of a second predefined typographic symbol and a sequence of a given typographic symbol having a predefined spelling,
  • generation of a category defining metadata when at least one detection is carried out;
  • generation of a second symbolic characteristic comprising said character string comprising the detected symbol and the generated category.

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.An advantage is to allow detection of notes, emails or other elements associated with particular typographic elements. An advantage is to allow the automatic reading of information intelligible by a screen reader to be contextualized.

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.
According to one embodiment, the third algorithm comprises:
  • Identifying a plurality of symbols defining an arrangement repeat of a data set of the first file to define a third symbolic characteristic;
  • Categorization of a third digital object from the generation of the third symbolic characteristic.

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

  • Sélection de chaque première zone géographique 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.
According to one embodiment, the extraction of the third objects comprises:
  • Selection of each first geographical area associated with a first digital object;
  • Control of the labels of each first object each defining a paragraph with a label of a first object at a previous adjacent position,
  • Generation of a first enriched object when the labels of all of the first adjacent objects meet at least one rule of said third algorithm.

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.One advantage is that it makes it possible to organize the automatic reading of intelligible information within a table, for example by a screen reader.

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.
According to one embodiment, the extraction of the third objects comprises:
  • Selection of a third area of the page of the first file;
  • Selection of each first geographical area associated with a first digital object located in the third selected area;
  • Control of the labels of each first object each defining a paragraph,
  • Generation of a third object when the labels of all of the first objects meet at least one rule of said third algorithm.

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.According to one embodiment, the first enriched objects, the second objects, and the third objects are ordered according to a display sequence on a page, said first objects being ordered within an area associated with a first enriched object.

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.An advantage is to order and sequence the reading of information on a page according to their arrangement of elements within this page. One advantage is to generate a sequence that maintains the best intelligibility during automatic reading of a document containing many elements of different natures such as titles, tables, 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.According to one embodiment, the second digital file produced as an output is made activatable by object by means of an application aimed at exploiting the content of said second digital file from an interface of a user terminal intended for the visually impaired or blind, for example comprising a screen reader.

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.According to another aspect, the invention relates to a system comprising a user's electronic terminal comprising at least one calculator, a memory, a display and a communication interface for transmitting messages on a data network to at least one first server comprising hardware resources for executing the first algorithm, the second algorithm, the third algorithm and the second software component in order to execute the steps of the method of the invention, said second digital file being transmitted via the data network to said electronic terminal of the user to display the second digital file and to access content that can be activated via the interface of said electronic terminal.

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.According to one embodiment, the system comprises a screen reader comprising a voice synthesizer for generating an audio stream of information, said information being extracted from the digital objects, said information further comprising information generated from the metadata of the second file .

Brève description des figuresBrief description of the 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 :Other characteristics and advantages of the invention will emerge on reading the detailed description which follows, with reference to the appended figures, which illustrate:

: un diagramme selon un mode de réalisation des principales étapes de l’invention ; : a diagram according to one embodiment of the main stages of the invention;

: un exemple de représentation d’un document comportant différents blocs d’information comportant des structures différentes. : an example of representation of a document comprising different blocks of information comprising different structures.

: un exemple d’un système de l’invention permettant d’exécuter le procédé de l’invention. : an example of a system of the invention making it possible to execute the method of the invention.

La 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.There represents an example of carrying out a process of the invention and in particular an example of implementing the steps of said process. The method of the invention makes it possible to generate a document in portable format, activatable document format denoted PDF N. By “activatable” we mean the characteristic according to which the digital file obtained comprises different digital elements, called digital objects, which can be processed by a computer program in a differentiated manner. For example, a reader such as a voice synthesizer or a braille sequence generator can interpret the document in parts or contextualize the reading of certain objects such as tables or a table of contents. The usable elements can for example be tables, lists, notes, text inserts, titles, images or any other element that can be interpreted individually in the document.

L’invention permet donc de prendre en compte un fichier PDF1en 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.The invention therefore makes it possible to take into account an input PDF file 1 whose different elements cannot be used individually into a document presenting elements which can be used individually. The input document is an unstructured PDF document which a priori is not annotated for use by a third-party 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.The invention relates more particularly to the acquisition of a file in PDF format whose symbols are identified and usable due to an ocerization for example or a conversion of a previous document.

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.However, the method of the invention may include a preliminary step aimed at converting a file into a "pdf" format file whose symbols such as alphabets make it possible to identify words.

La illustre un premier composant logiciel MOD1qui permet de prendre en entrée un document noté PDF1et 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 PDF1afin de générer des paragraphes structurés et des objets numériques exploitables.There illustrates a first software component MOD 1 which makes it possible to take as input a document denoted PDF 1 and to process in particular the different sequences of discrete symbols in a natural language and graphic objects such as lines, blocks or images integrated into the PDF document 1 in order to to generate structured paragraphs and usable digital objects.

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.The input to the system can be obtained by means of reception of the file on a communication interface, or by recording a file in a memory or even following processing by software of a file allowing exploitation automatic display of symbols and images contained in each page of the file.

On rappelle qu’un document en entrée PDF1dans 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és 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.It is recalled that a PDF input document 1 in the context of the invention is a “non-activatable” document and therefore not accessible, for example, to visually impaired or blind people. The non-accessible document is characterized in that it does not include a tag allowing metadata to be associated with the different elements of a page allowing these elements to be used by a software interpreter. In other words, a non-accessible PDF document is a document comprising images and sequences of sequences of discrete symbols in a natural language arranged in different arrangements which are digitally inseparable from each other so that the different elements of the page cannot be treated independently.

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.In the remainder of the description, we call “an algorithm”: a computer-implemented software function configured to produce a digital output from a digital input. Functions comprise a set of instructions interpretable by a software interpreter to perform operations such as mathematical operations, data conversions or comparisons of extracted data with threshold values. At a minimum, a software function is executed within a hardware environment having at least one computer and one memory.

Un premier composant logiciel MOD1est 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 OB1, OB2et OB3. Un intérêt de ce composant logiciel MOD1est 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.A first software component MOD 1 is implemented by the method of the invention with the objective of extracting each element of the page in the form of digital objects, denoted OB 1 , OB 2 and OB 3 . An advantage of this MOD 1 software component is to exploit specific symbolic characteristics of said objects to extract said objects and to make it possible to generate digital objects having characteristics allowing activations of said objects independently.

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é SDK1sur la est mis en œuvre pour exploiter les données du document PDF1. Le composant SDK1comporte 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 SDK1permet donc d’extraire des ensembles de mots et des différents blocs graphiques du fichier.According to one embodiment, the first software component comprises a so-called SDK component. According to an example, an SDK component, designating in the English literature “Software Development Kit” and denoted SDK 1 on the is implemented to exploit the data from the PDF document 1 . The SDK component 1 includes a set of functions allowing you to interpret elements of a non-activatable .pdf format file so as to extract words, images and graphic elements contained in the pdf format file. Implementing an SDK 1 configuration therefore makes it possible to extract sets of words and different graphic blocks from the file.

1er algorithme du composant MOD11st algorithm of component MOD1

Un premier algorithme ALGO1du premier composant MOD1permet de modéliser les différents ensembles de mots sous la forme de paragraphes. A cette fin, le premier algorithme ALGO1extrait 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 K1. Cet algorithme ALGO1peut ê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.A first algorithm ALGO 1 of the first component MOD 1 makes it possible to model the different sets of words in the form of paragraphs. To this end, the first ALGO 1 algorithm extracts a set of characteristics such as the orientation of the sequence of discrete symbols on the page, the spacing between the words of said sequence, the font sizes of the symbols, and possibly the style of the symbols. symbols and the inclination of the cursive of the symbols and the thickness of the symbols. All of these characteristics define a first symbolic characteristic, denoted K 1 . This ALGO 1 algorithm can be configured to exploit sequences of symbols according to orientation lines formed by the sequence within the page. An advantage of the invention is to make it possible to reconstruct certain structured paragraphs comprising several lines from the positions of said symbol lines and the graphic properties of said symbols.

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 K1.A “structured paragraph” is a paragraph comprising a plurality of lines and having for each line similar or coherent properties of positions and shapes. Shape properties can relate to font, character size, character slant, indents at line start positions, leading spaces, etc. These properties can in particular be encoded in a symbolic characteristic hereinafter designated K 1 .

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 ALGO1est 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 POS1et une caractéristique symbolique K1. 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.The extracted sets of words can come from a structured paragraph of several lines, titles, footers, headers, tables, lists, captions, notes, quotes, tables of contents, etc. An advantage of this first ALGO 1 algorithm is to extract a set of words arranged according to a linear portion, that is to say most often a line comprising a set of words. These word lines are associated with a position pair POS 1 and a symbolic characteristic K 1 . The positions can correspond to those of the start of the line and the end of the line. The analysis of inter-symbol spaces can notably lead to delimiting the lines.

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 K1sont sensiblement identiques entre elles dont les couples de positions ont une cohérence de juxtaposition ou de voisinage entre elles.We note more generally in the rest of the description a "paragraph" or a "structured paragraph" a set of lines whose symbolic characteristics K 1 are substantially identical to each other whose pairs of positions have a coherence of juxtaposition or proximity between them .

Afin d’extraire les différentes valeurs caractéristiques de la première caractéristique symbolique K1, le procédé de l’invention met en œuvre l’exécution d’un premier ensemble de règles R1prédéfinies et une première base de connaissance BC1. Selon un exemple, les règles R1peuvent 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 BC1peut comprendre une bibliothèque de styles ou de polices.In order to extract the different characteristic values of the first symbolic characteristic K 1 , the method of the invention implements the execution of a first set of predefined rules R 1 and a first knowledge base BC 1 . According to one example, the R 1 rules can include comparisons of spaces between each word, font sizes or even operations aimed at detecting a style or an inclination of incursive. For this purpose, the BC 1 knowledge base may include a library of styles or fonts.

Par ailleurs, le premier algorithme ALGO1exécute une fonction permettant de générer au moins :

  • une première position sur la page dont :
    • 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
    • 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 :
    • 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 ;
    • 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.
Furthermore, the first ALGO 1 algorithm executes a function making it possible to generate at least:
  • a first position on the page including:
    • a first coordinate X1 corresponds to the coordinate of the position of the first discrete symbol of the sequence of discrete symbols in the direction of the line of the sequence and
    • a second coordinate Y1 corresponds to the upper part of the first symbol of the sequence of symbols considered in the line formed by the sequence; And
  • a second position on the page including:
    • a first coordinate X2 corresponds to the coordinate of the position of the last discrete symbol of the sequence of discrete symbols in the direction of the line of the sequence and;
    • a second coordinate Y2 corresponds to the lower part of the last symbol of the sequence of symbols considered in the line formed by the sequence.

Un couple de positions, noté POS1, est formé pour définir une première zone dans laquelle la séquence s’inscrit dans la page au format .pdf.A pair of positions, denoted POS 1 , is formed to define a first zone in which the sequence is written on the page in .pdf format.

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.The positions can be defined according to an absolute metric expressed in a unit such as the centimeter or a relative metric such as a number of points, said positions being defined in relation to a frame of reference on the page in which an origin can be defined as a from the four corners of the page. In another example, positions can be defined according to a proportion of the page without the need for a metric. In the latter case, the unit can be taken as a dimension of the page such as the width or length of the page. This definition makes it possible to encode positions in a vector way.

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.According to an exemplary embodiment, a plurality of positions such as 4 positions can be produced so as to define the 4 corners of a rectangle or a polygon in which the sequence fits. Note that two positions are enough to reconstruct other positions of the form framing a line of a paragraph. This last remark applies to any other digital object in a rectangular shape, such as a paragraph, a table, etc.

Selon un mode de réalisation, chaque paragraphe et les données générées qui sont associées audit paragraphe sont annotés par exemple selon un numéro de paragraphe et/ou un identifiant de paragraphe.According to one embodiment, each paragraph and the generated data which are associated with said paragraph are annotated for example according to a paragraph number and/or a paragraph identifier.

Chaque paragraphe associé aux données produites, c’est-à-dire la caractéristique symbolique K1et le couple de positions POS1est transmis à un second composant logiciel noté MOD2afin de permettre de labelliser le paragraphe extrait.Each paragraph associated with the data produced, that is to say the symbolic characteristic K1and the pair of POS positions1is transmitted to a second software component denoted MOD2in order to label the paragraph excerpted.

2eme algorithme du composant MOD12nd algorithm of component MOD1

Un second algorithme ALGO2du premier composant logiciel MOD1est 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 ALGO2peut être alimentée par le traitement du premier algorithme ALGO1qui permet d’identifier des lignes de symboles formant des mots ou des idéogrammes ou encore des chiffres.A second ALGO 2 algorithm of the first software component MOD 1 is implemented to detect and extract sets of words corresponding to notes, email addresses, URL links or quotes. The input of the second ALGO 2 algorithm can be fed by the processing of the first ALGO 1 algorithm which makes it possible to identify lines of symbols forming words or ideograms or even numbers.

A cet effet, le procédé de l’invention met en œuvre l’exécution d’un second ensemble de règles R2pré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 « (*) ».To this end, the method of the invention implements the execution of a second set of predefined rules R 2 and a second knowledge base BC 2 . According to an example, the rules may include searches for predefined symbols such as the "@" symbol or the "http" symbol or the "www" symbol or a note of type "(1)", i.e. a number within parentheses or the symbol “(*)”.

Certaines règles R2sont é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.Certain R 2 rules are also applied so as to detect and extract sets of words arranged consecutively to an image or a graphic block identified by the SDK component 1 . This function allows you to compare positions extracted from blocks of images or graphics with positions from sets of words.

Chaque règle R2peut être associée à d’autres règles afin de discriminer certains éléments tels que des légendes ou des notes.Each R 2 rule can be associated with other rules in order to discriminate certain elements such as legends or 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 TAG1du troisième composant logiciel MOD3ci-après détaillé.According to a first example of combination of rules R 2 , an image block followed by a set of words having no other sets of words in an identical font can be annotated by a “legend” type identity, which allows to generate an attribute or category to said set of words. This set of words is also considered in the present invention as a single line or a paragraph. This generated data, such as an attribute, allows it to be encoded with the paragraph to be used by an interpreter in particular thanks to the TAG 1 function of the third MOD 3 software component detailed below.

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.According to a second example, within a paragraph identified by the first algorithm, a set of words in parentheses containing the symbol “www” can be identified as a 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.According to a third example, a set of words at the bottom of the page whose start of the sequence begins with the symbol “(1)” can be a note.

Le procédé de l’invention permet de générer en sortie de ce second algorithme ALGO2un ensemble de seconds objets numériques OB2. Les seconds objets numériques OB2comportent chacun un ensemble de mots et une seconde caractéristique symbolique K2et un couple de positions POS2calculées de la même manière que dans l’exécution du premier algorithme ALGO1. La seconde caractéristique K2peut comprendre un attribut, qui peut définir un label, directement calculé dans le premier composant logiciel MOD1tel 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 K2peut 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 R2et d’une base de connaissance BC2telles que celles utilisées dans l’exécution du premier algorithme ALGO1.The method of the invention makes it possible to generate at the output of this second ALGO 2 algorithm a set of second digital objects OB 2 . The second digital objects OB 2 each comprise a set of words and a second symbolic characteristic K 2 and a pair of positions POS 2 calculated in the same way as in the execution of the first algorithm ALGO 1 . The second characteristic K 2 may include an attribute, which may define a label, directly calculated in the first software component MOD 1 such as one of the following labels: {links, citations, notes}. The links can themselves be typed according to a URL or EMAIL type subcategory. Furthermore, according to one embodiment, the second characteristic K 2 may include data identifying a font, a font size, a style or even an orientation of the cursive of the font of a word. Such data can also be extracted from rules R 2 and a knowledge base BC 2 such as those used in the execution of the first ALGO 1 algorithm.

Les données produites par le second algorithme ALGO2sont transmises à un troisième composant logiciel MOD3. Le troisième composant logiciel MOD3permet notamment d’ordonner l’ensemble des sorties du premier et du second composant logiciel MOD1et MOD2dans l’objectif de regénérer une séquence ordonnée d’objets dans la page traitée.The data produced by the second algorithm ALGO 2 are transmitted to a third software component MOD 3 . The third software component MOD 3 makes it possible in particular to order all of the outputs of the first and second software components MOD 1 and MOD 2 with the aim of regenerating an ordered sequence of objects in the processed page.

L’ordonnancement permet de regénérer un document PDFNcohérent en respectant le sens de lecture tout en permettant d’activer certains objets de la page indépendamment des autres.Scheduling allows you to regenerate a coherent PDF N document while respecting the reading direction while allowing certain objects on the page to be activated independently of others.

3eme algorithme du composant MOD13rd algorithm of component MOD1

Le procédé de l’invention comprend l’exécution d’un troisième algorithme ALGO3par le premier composant logiciel MOD1. Le troisième algorithme ALGO3permet d’extraire des objets de type tableau, table, telle que la table des matières, liste et les numéros de pages.The method of the invention comprises the execution of a third algorithm ALGO 3 by the first software component MOD 1 . The third ALGO 3 algorithm allows you to extract table-type objects, such as the table of contents, list and page numbers.

Cet algorithme ALGO3comprend é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.This ALGO 3 algorithm also includes the reconstruction of a digital object OB 3 from at least one paragraph and a structure, an organization or an arrangement of said at least one paragraph. The structure of a paragraph can correspond to its geometric characteristics, or its number of lines or even its orientation. The paragraph corresponds to a sequence of symbols in natural language, it can be a letter, a number, a number, a symbol or a set of words, or even a combination of these last elements.

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 OBG3peuvent 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.In the description, the third generic digital object OBG 3 is called the table, list, table or table of contents type structure independently of the sequences of symbols it contains. These third OBG 3 generic digital objects may include digital sub-objects of the cell, line, enumeration type, or even a hierarchical structure of lines having links between them, such as titles and sub-titles and sub-sub-titles. securities.

On appelle troisième objet numérique OB3, la reconstruction de l’association des troisièmes objets numériques génériques OBG3et des paragraphes labellisés qui sont réinjectés depuis le second composant MOD2au sein de la structure.The third digital object OB 3 is called the reconstruction of the association of the third generic digital objects OBG 3 and the labeled paragraphs which are reinjected from the second component MOD 2 within the structure.

Dans le contexte de l’invention, le troisième objet numérique générique OBG3peut être encodé selon une caractéristique symbolique notée K3.In the context of the invention, the third generic digital object OBG 3 can be encoded according to a symbolic characteristic denoted 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.According to a first example, a first table detection is implemented by the detection of lines and/or cells and/or borders or any other element characteristic of the geometry of a structure such as a table. A pair of positions is extracted in order to identify a rectangular block in which the table fits. The table positions are calculated either by taking into account the start and end of a sequence of one or more paragraphs, or by taking into consideration the border of the table, for example two corners of the table. Additionally, the algorithm includes a function to calculate the number of rows and/or the number of columns in the table.

Afin d’identifier un tableau, l’algorithme peut mettre en œuvre un troisième ensemble de règles R3prédéfinies et/ou une troisième base de connaissance BC3. Les règles R3peuvent 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.In order to identify a table, the algorithm can implement a third set of predefined rules R 3 and/or a third knowledge base BC 3 . The R 3 rules can correspond to the identification of intersections of linear plots delimiting cells, rows or columns of a table for example. The intersection of 3 line plots refers to a table cell at the edge of the table, the intersection of 4 line plots indicates the presence of a cell inside the table, the intersection of two line plots refers to the corner or end of the board.

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.The method of the invention also makes it possible to calculate the dimensions of the cells which can be extracted as well as their position on the page or inside the table.

Ainsi la troisième caractéristique symbolique K3comprend 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.Thus the third symbolic characteristic K 3 includes a set of data making it possible to characterize the shape of the table, its dimensions as well as its organization in the form of rows and columns and cells.

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é.According to a second example, a second “list” detection can be implemented in the method of the invention. In the context of the invention, by list we mean a list of lines of symbols forming, for example, words, ideograms or even numbers. Lists typically include bullet points that may correspond to identifiable graphic symbols. For example, symbols such as hyphens “-”, squares or stars or even numbers can identify the presence of a list. A dimension of a list can be inferred between the first paragraph and the last paragraph of the list. Here we understand as paragraph the sequence of discrete symbols in natural language arranged consecutively to the detected symbol.

Un ensemble de troisièmes règles R3et la troisième base de connaissance BC3comprennent 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.A set of third rules R 3 and the third knowledge base BC 3 then include searches for characteristic symbols and alignments between paragraphs or lines. Thus, the pairs of positions of the symbol lines can be used to infer or corroborate the presence of a list.

Les numéros de pages peuvent également être détectés par le troisième algorithme ALGO3en utilisant des règles R3et 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.Page numbers can also be detected by the third ALGO 3 algorithm using R 3 rules and a BC 3 knowledge base. For example, the position of a digit within a page corresponding to the position of another digit in another page makes it possible to deduce the presence of an object having identical properties from one page to another. Finally, the identification of an ordered sequence on a set of pages makes it possible to deduce the identification of a page number.

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.For example, if a page number is located in a header or footer identified in the algorithm to automatically analyze page footers and page headers, the page number of the following pages is automatically detected 'one page to another.

Selon un mode de réalisation, le troisième algorithme ALGO3reçoit en entrée un label LAB(i) d’un paragraphe PARA1calculé 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.According to one embodiment, the third algorithm ALGO 3 receives as input a label LAB(i) of a paragraph PARA 1 calculated by the second software component MOD 2 . The LAB(i) label of a paragraph allows you to reorder the paragraphs within a table or list type structure. In addition, the LAB(i) label makes it possible to check that paragraphs of a table are generally homogeneous. Thus, the method of the invention makes it possible to avoid errors in the identification of objects. In particular, a page number cannot be found in a table or the title can be excluded from a list, etc.

Second composant logiciel MOD2Second MOD2 software component

Selon un mode de réalisation, le second composant logiciel MOD2comprend une fonction mettant en œuvre un moteur d’inférence MI1. 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 R4et une base de connaissance BC4;
  • un moteur d’inférence inférant à partir de règles R4et une base de connaissance BC4combiné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.
According to one embodiment, the second software component MOD 2 comprises a function implementing an inference engine MI 1 . This function can be implemented in different ways such as:
  • an inference engine inferring from rules R 4 and a knowledge base BC 4 ;
  • an inference engine inferring from R 4 rules and a BC 4 knowledge base combined with the implementation of artificial intelligence such as an LSTM, TRANSFORMER or any other neural network type model.

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 ».We recall the acronym in the Anglo-Saxon terminology of LSTM: “Long-Short-Term-Memory” and that a Transformer is called in the Anglo-Saxon terminology “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.In the latter case, artificial intelligence can be implemented to automatically generate new rules or to enrich the knowledge base.

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
An interest is to identify a LAB(i) label of a paragraph among the following labels:
  • Footer paragraph, corresponding to a paragraph arranged in an area of a page located at the bottom of the page and comprising a string of characters repeated within a plurality of pages or a sequence of numbers incremented on each page;
  • Top-of-page paragraph, corresponding to a paragraph arranged in an area of a page located at the top of the page and comprising a string of characters repeated within a plurality of pages or a sequence of numbers incremented on each page;
  • Standard paragraph, corresponding to a paragraph defined by a given style, font and character size and being the most representative of the document analyzed;
  • Distinguished paragraph, corresponding to a paragraph defined by a given style, font and character size different from the standard paragraph.
  • Title paragraph, corresponding to a paragraph bearing the name of a section or subsection and followed by at least one structured paragraph other than a footer paragraph or a note

La fonction permettant de labelliser les paragraphes est notée LAB1sur la . 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 entrainé pour créer le modèle du moteur d’inférence.The function allowing you to label paragraphs is noted LAB 1 on the . According to a first example, it can correspond to a statistical function making it possible to classify probabilities obtained from the inference engine if the latter is configured to take into account a statistical model. This method makes it possible in particular to elect the best choice between possible outputs of the inference engine. Depending on one case, the statistical model may be a Bayesian network. The latter can be trained to create the inference engine model.

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 BC4un label à tous les paragraphes OB1qui lui sont donnés en entrée. Les autres objets numériques OB2et OB3sont labellisés à partir des bases de connaissances BC2et BC3dans le composant logiciel MOD1. Un avantage est de ne pas mettre en œuvre d’entrainement spécifique du moteur d’inférence.According to another example, the inference engine does not take into account a statistical model and determines, using the knowledge base BC 4 , a label for all the paragraphs OB 1 which are given to it as input. The other digital objects OB 2 and OB 3 are labeled from the BC 2 and BC 3 knowledge bases in the MOD 1 software component. One advantage is not implementing specific training of the inference engine.

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.In the case of several possible outputs, that is to say several possible labels for the same object, the invention can include the generation of a notification accessible from an interface of a computer, a tablet or a Smartphone for a user to determine the label. Thus, the label assigned by a user in the event of ambiguity of several automatic labeling possibilities allows the learning function to generate a new rule which will be used by the inference engine.

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.The learning function is preferably configured to generate new rules or propose new rules to a user who can validate them or not.

Grâce à la sortie du second composant logiciel MOD2et au troisième algorithme ALGO3du 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.Thanks to the output of the second software component MOD 2 and the third algorithm ALGO 3 of the first software component MOD 1 , the invention therefore makes it possible to reconstruct a table or a list or a table comprising different paragraphs, that is to say a set of consecutive words, within each cell of the table or list.

Chaque troisième objet OB3comprend une troisième caractéristique symbolique K3caracté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 OB3peut être encodé au sein de la troisième caractéristique symbolique pour être émis ensuite au troisième composant logiciel MOD3.Each third object OB 3 comprises a third symbolic characteristic K 3 characterizing the structure of the digital object. According to one embodiment, all of the labels of the paragraphs included within a third digital object OB 3 can be encoded within the third symbolic characteristic to then be transmitted to the third software component MOD 3 .

A cet effet, le troisième algorithme ALGO3du premier composant logiciel MOD1comprend 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.For this purpose, the third algorithm ALGO 3 of the first software component MOD 1 includes a function making it possible to recover a set of labeled paragraphs and to regenerate a digital object corresponding to a table or a list in which the different paragraphs are segmented within rows of a list or cells of a table.

Enfin, le troisième algorithme ALGO3permet 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 ALGO3produit 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 K3et un couple de position POS3. Ces données OB1, OB2et OB3sont transmises au troisième composant logiciel MOD3pour ordonner ces trois objets dans la séquence globale de lecture des objets numériques produits par chaque algorithme ALGO1, ALGO2et ALGO3.Finally, the third ALGO 3 algorithm makes it possible to carry out a consistency check between, on the one hand, certain paragraph labels and, on the other hand, the presence of said paragraphs within a digital object produced such as a table or a list. The third ALGO 3 algorithm outputs data comprising the third digital objects OB 3 , each third digital object OB 3 being associated with a third symbolic characteristic K 3 and a position pair POS 3 . These data OB 1 , OB 2 and OB 3 are transmitted to the third software component MOD 3 to order these three objects in the overall reading sequence of the digital objects produced by each algorithm ALGO 1 , ALGO 2 and ALGO 3 .

Le troisième composant logiciel MOD3comprend donc une première fonction ORD1permettant d’ordonnancer les différents objets numériques OB1, OB2, OB3produits 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.The third software component MOD 3 therefore comprises a first function ORD 1 making it possible to order the different digital objects OB 1 , OB 2 , OB 3 produced by the first software component MOD 1 . To this end, each digital object is ordered according to a reading sequence taking into account the nature of the digital object and its position. Its nature can be a table, a list, an image, a line of words, ideograms or numbers, a structured paragraph or even a quote, a note, a link, etc.

Le troisième composant logiciel comprend une fonction notée TAG1sur la permettant de générer un document numérique PDFNcomportant 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.The third software component includes a function noted TAG 1 on the making it possible to generate a PDF N digital document comprising a structure which makes it possible to make the document accessible to visually impaired people in particular using an interpreter capable of reading the different objects and of generating multimedia outputs which can be accessible to these people.

La fonction TAG1permet 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.The TAG 1 function therefore makes it possible to associate the metadata, that is to say the symbolic characteristic data and the positions of the digital objects with said content of said digital object.

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.According to one embodiment, the method of the invention comprises a processing step making it possible to activate certain objects according to a reading direction or according to a user interaction. Activation of the object can, for example, result in the generation of a vocal reading of the content of a paragraph or a table from a voice synthesizer or more generally from a screen reader. An advantage of the invention is to make it possible to contextualize voice reading, for example with predefined semantics which depends on the object interpreted. Thus, the reading of a table by a voice synthesizer can integrate context sentences specifying, for example, that a table is going to be read. It can be specified a reading direction of the table and language elements indicating for example: “the table has 3 lines, in the first line, the first column, it is indicated “Paris”, in the second line, first column, it says “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.Thus, the invention makes it possible to give a disabled person access to complex content of a document which is not easily reproducible even in electronic form.

La illustre un exemple d’une page d’un document F1ou F2selon si on considère le document d’entrée ou le document généré par le procédé de l’invention. Le fichier F2est 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 OB2associé à une seconde caractéristique symbolique K2.There illustrates an example of a page of a document F 1 or F 2 depending on whether we consider the input document or the document generated by the method of the invention. The F 2 file is a document in .pdf format structured in the form of a plurality of digital objects generated and arranged using the method of the invention. In this illustration, the page comprises a plurality of first digital objects OB 1 , each being associated with a symbolic characteristic K 1 , a plurality of third digital objects OB3 and in this example a second digital object OB 2 associated with a second symbolic characteristic K 2 .

La représente un exemple de réalisation d’un système de l’invention comprenant un terminal T1d’un utilisateur permettant d’afficher et/ou de lire un contenu d’un fichier numérique au format .pdf.There represents an exemplary embodiment of a system of the invention comprising a user's terminal T 1 making it possible to display and/or read the content of a digital file in .pdf format.

Un premier serveur SERV1comprend 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 MOD2est exécuté sur un second serveur SERV2comportant 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 NET1tel qu’internet.A first server SERV 1 comprises at least one memory and a calculator making it possible to execute the algorithms of the first software component MOD 1 . According to one embodiment, the second software component MOD 2 is executed on a second server SERV 2 comprising calculation means and at least one memory. An advantage of this distributed architecture is that it allows you to benefit from artificial intelligence dedicated to the calculation of labels. Data exchanges are carried out via a NET 1 data network such as the Internet.

Claims (13)

Procédé de traitement automatisé d’un fichier numérique (F1) pour générer un objet numérique augmenté (OB1) :
  • Acquisition d’un premier fichier numérique (F1) au format portable document format ;
  • Segmentation dudit premier fichier numérique (F1) en une pluralité d’objets numériques à partir d’un premier composant logiciel (MOD1) comportant :
  • Mise en œuvre d’un premier algorithme (ALG1) comportant :
    • Extraction d’un premier ensemble (ENS1) d’objets numériques (OB1) comportant chacun une séquence de symboles discrets dans une langue naturelle définissant un paragraphe (PARA1) ; ladite extraction comportant l’application d’un premier ensemble de règles (R1) et d’une première base de connaissance (BC1) pour générer au moins une première caractéristique symbolique (K1) dudit paragraphe (PARA1) ;
    • Génération d’une pluralité de couples de positions 2D dans le premier fichier numérique (F1), chaque couple de position définissant une première zone rectangulaire (Z1) comprenant l’affichage d’un premier objet (OB1) et association desdits couples de positions auxdits premiers objets (OB1) ;
  • Mise en œuvre d’un second algorithme (ALG2) comportant :
    • 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) ;
    • 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 :
    • 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), ladite extraction comportant l’application d’un troisième ensemble de règles (R3) et d’une troisième base de connaissance (BC3) ;
    • 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) ;
  • 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 (MI1) ;
  • Ordonnancement (ORD1) des objets numériques (OB1, OB2, OB3) à partir d’un troisième composant logiciel (MOD3) prenant en compte en entrée :
    • Les positions des premiers objets, des seconds objets et des troisièmes objets ;
    • Les labels de chaque premier objet (OB1) ;
    • Les premières caractéristiques symboliques (K1), les secondes caractéristiques symboliques (K2) et les troisièmes caractéristiques symboliques (K3) ;
  • Génération d’un second fichier numérique (F2) comportant l’ensemble des objets numériques ordonnés.
Process for automated processing of a digital file (F1) to generate an augmented digital object (OB1):
  • Acquisition of a first digital file (F 1 ) in portable document format;
  • Segmentation of said first digital file (F 1 ) into a plurality of digital objects from a first software component (MOD1) comprising:
  • Implementation of a first algorithm (ALG 1 ) comprising:
    • Extraction of a first set (ENS 1 ) of digital objects (OB 1 ) each comprising a sequence of discrete symbols in a natural language defining a paragraph (PARA 1 ); said extraction comprising the application of a first set of rules (R 1 ) and a first knowledge base (BC 1 ) to generate at least one first symbolic characteristic (K 1 ) of said paragraph (PARA 1 );
    • Generation of a plurality of pairs of 2D positions in the first digital file (F 1 ), each pair of positions defining a first rectangular zone (Z 1 ) comprising the display of a first object (OB 1 ) and association of said pairs of positions to said first objects (OB 1 );
  • Implementation of a second algorithm (ALG 2 ) comprising:
    • Extraction of a second set (ENS 2 ) of digital objects (OB 2 ) each comprising a sequence of discrete symbols in a natural language and at least one second symbolic characteristic (K 2 ) representative of metadata associated with the object digital (OB 2 ); said extraction comprising the application of a second set of rules (MR 2 ) and a second knowledge base (BC 2 );
    • Generation of a plurality of pairs of 2D positions in the first digital file (F 1 ), each pair of positions defining a second rectangular zone (Z 2 ) comprising the display of a second object (OB 2 ) and association of said pairs of positions (POS 2 ) to said second objects (OB 2 );
  • Implementation of a third algorithm (ALG 3 ) comprising:
    • Extraction of a third set (ENS 3 ) of at least one third digital object (OB 3 ) each comprising a sequence of discrete symbols in a natural language and at least one third symbolic characteristic (K 3 ) representative of the arrangement of a plurality of sub-objects within said at least one digital object (OB 3 ), said extraction comprising the application of a third set of rules (R 3 ) and a third knowledge base (BC 3 );
    • Generation of a plurality of pairs of 2D positions in the first digital file (F 1 ), each pair of positions defining a third rectangular zone (Z 3 ) comprising the display of a third object (OB 3 ) and association of said pairs of positions (POS 3 ) to said third objects (OB 3 );
  • Labeling (LAB 1 ) of the first digital objects (OB 1 ) by means of a second software component (MOD 2 ) comprising the implementation of an inference engine (MI 1 );
  • Scheduling (ORD 1 ) of digital objects (OB 1 , OB2, OB3) from a third software component (MOD 3 ) taking into account as input:
    • The positions of the first objects, second objects and third objects;
    • The labels of each first object (OB 1 );
    • The first symbolic characteristics (K 1 ), the second symbolic characteristics (K2) and the third symbolic characteristics (K 3 );
  • Generation of a second digital file (F 2 ) comprising all of the ordered digital objects.
Procédé selon la revendication 1, 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 chaine de caractères ;
  • Identification de l’orientation de ladite ligne selon au moins une première règle (R1) ;
  • Identification d’une information symbolique caractéristique de la chaine de caractère selon une seconde règle (R2) et d’une information caractérisant l’espace entre chaque chaine 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.
Method according to claim 1, characterized in that the first algorithm (ALG1) includes the steps of:
  • Identification of a line of the first digital file comprising a first character string;
  • Identification of the orientation of said line according to at least a first rule (R 1 );
  • Identification of symbolic information characteristic of the character string according to a second rule (R 2 ) and of information characterizing the space between each character string of said line according to a third rule (R 3 );
  • Categorization of said line,
  • Reiteration of the operations to identify each line and their categorization;
  • Generation of said first symbolic characteristic of a paragraph when the categorization of a set of lines is identical.
Procédé selon l’une quelconque des revendications 1 à 2, 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 (F1) ;
  • 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.
Method according to any one of claims 1 to 2, characterized in that the labeling step (LAB1) allows you to associate a label with a paragraph from one of the following labels:
  • Footer paragraph, corresponding to a paragraph arranged in an area of a page located at the bottom of the page and comprising a string of characters repeated within a plurality of pages or a sequence of numbers incremented on each page;
  • Top-of-page paragraph, corresponding to a paragraph arranged in an area of a page located at the top of the page and comprising a string of characters repeated within a plurality of pages or a sequence of numbers incremented on each page;
  • Standard paragraph, corresponding to a paragraph defined by a given style, font and character size and being the most representative on all pages of the digital document (F 1 );
  • Distinguished paragraph, corresponding to a paragraph defined by a given style, font and character size different from the standard paragraph;
  • Title paragraph, corresponding to a paragraph bearing the name of a section or subsection and followed by at least one structured paragraph other than a footer paragraph or a note.
Procédé selon l’une quelconque des revendications 1 à 3, 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 (K1).Method according to any one of claims 1 to 3, characterized in that the second software component (MOD 2 ) is implemented from the inference engine (MI 1 ) executed from a set of rules and 'a basis of facts taking into account the first symbolic characteristics (K 1 ). Procédé selon l’une quelconque des revendications 1 à 2, caractérisé en ce que le second composant logiciel (MOD2) est mis en œuvre à partir du moteur d’inférence (MI1), 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 (MI1).
Method according to any one of claims 1 to 2, characterized in that the second software component (MOD2) is implemented from the inference engine (MI1), said inference engine (MI1) being executed from a learning function whose input vectors include at least the first symbolic characteristics (K1), said learning function implemented being:
  • a “Recurrent neural network” type network, denoted RNN or;
  • a “Long short-term memory” type network, denoted LSTM or;
  • a BERT or GPT type transformer, such as GPT-3,
The implementation of a learning function making it possible to automatically determine new rules used by the inference engine (MI1).
Procédé selon l’une quelconque des revendications 1 à 5, 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 chaine de caractères comportant le symbole détecté et la catégorie générée.
Method according to any one of claims 1 to 5, characterized in that the second algorithm (ALG2) understand :
  • detecting a first predefined typographic symbol;
  • the detection of a second predefined typographic symbol and a sequence of a given typographic symbol having a predefined spelling,
  • generating a category defining metadata when at least one detection is carried out;
  • generating a second symbolic characteristic (K 2 ) comprising said character string comprising the detected symbol and the generated category.
Procédé selon l’une quelconque des revendications 1 à 6 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).
Method according to any one of claims 1 to 6 characterized in that the third algorithm (ALG3) includes the steps of:
  • Identification of a plurality of symbols defining a repetition of arrangement of a set of data of the first file (F 1 ) in order to define a third symbolic characteristic (K 3 );
  • Categorization of a third digital object (OB 3 ) from the generation of the third symbolic characteristic (K 3 ).
Procédé selon l’une quelconque des revendications 1 à 7, 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) ;
  • 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 (OB1) adjacents répondent à au moins une règle dudit troisième ensemble de règles (R3).
Method according to any one of claims 1 to 7, characterized in that the extraction of at least one third digital object (OB3) understand :
  • the selection of each first rectangular geographical area (Z 1 ) associated with a first digital object (OB 1 );
  • Controlling the labels of each first object (OB 1 ) each defining a paragraph (PARA 1 ) with a label of a first object (OB1) at a previous adjacent position,
  • generating a first enriched object when the labels of all of the first adjacent objects (OB 1 ) meet at least one rule of said third set of rules (R 3 ).
Procédé selon l’une quelconque des revendications 1 à 8, caractérisé en ce que l’extraction du au moins un troisième objet (OB3) comprend :
  • Sélection d’une troisième zone de la page du premier fichier (F1);
  • Sélection de chaque première zone rectangulaire géographique (Z1) 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).
Method according to any one of claims 1 to 8, characterized in that the extraction of at least one third object (OB3) understand :
  • Selection of a third area of the page of the first file (F 1 );
  • Selection of each first geographical rectangular zone (Z 1 ) associated with a first digital object (OB 1 ) located in the third selected zone (Z 3 );
  • Control of the labels of each first object (OB 1 ) each defining a paragraph (PARA 1 ),
  • Generation of a third object (OB 3 ) when the labels of all the first objects (OB 1 ) meet at least one rule of said third algorithm (ALG 3 ).
Procédé selon la revendication 8, 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’).Method according to claim 8, characterized in that the first enriched objects (OB 1 '), the second objects (OB 2 ), and the third objects (OB 3 ) are ordered according to a display sequence on a page, said first objects (OB 1 ) being ordered within an area associated with a first enriched object (OB 1 '). Procédé selon l’une quelconque des revendications 1 à 10, 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.Method according to any one of claims 1 to 10, characterized in that the digital objects of the second digital file (F 2 ) produced as output are made activatable by means of an application aimed at exploiting the content of said second digital file (F 2 ) from an interface of a user terminal intended for the visually impaired or blind, for example comprising a screen reader. 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 (ALG1), 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 à 10, 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 (T1).System comprising a user's electronic terminal (T 1 ) comprising at least one calculator, a memory, a display and a communication interface for transmitting messages on a data network to at least a first server (SERV 1 ) comprising hardware resources for executing the first algorithm (ALG 1 ), the second algorithm (ALG 2 ), the third algorithm (ALG 3 ) and the second software component (MOD 2 ) in order to execute the steps of the method of one any of claims 1 to 10, said second digital file being transmitted via the data network to said electronic terminal (T 1 ) of the user to display the second digital file and to access content that can be activated via the interface of said electronic terminal (T 1 ). Système selon la revendication 12 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).System according to claim 12 comprising a screen reader comprising a voice synthesizer for generating an audio stream of information, said information being extracted from the digital objects, said information further comprising information generated from the metadata of the second file (F 2 ).
FR2209010A 2022-09-08 2022-09-08 METHOD FOR THE AUTOMATED PROCESSING OF A DOCUMENT FOR ITS USE BY PEOPLE WITH DISABILITIES Pending FR3139644A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR2209010A FR3139644A1 (en) 2022-09-08 2022-09-08 METHOD FOR THE AUTOMATED PROCESSING OF A DOCUMENT FOR ITS USE BY PEOPLE WITH DISABILITIES
PCT/EP2023/074784 WO2024052557A1 (en) 2022-09-08 2023-09-08 Method for the automated processing of a document to allow it to be used by people with disabilities

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR2209010A FR3139644A1 (en) 2022-09-08 2022-09-08 METHOD FOR THE AUTOMATED PROCESSING OF A DOCUMENT FOR ITS USE BY PEOPLE WITH DISABILITIES
FR2209010 2022-09-08

Publications (1)

Publication Number Publication Date
FR3139644A1 true FR3139644A1 (en) 2024-03-15

Family

ID=84887901

Family Applications (1)

Application Number Title Priority Date Filing Date
FR2209010A Pending FR3139644A1 (en) 2022-09-08 2022-09-08 METHOD FOR THE AUTOMATED PROCESSING OF A DOCUMENT FOR ITS USE BY PEOPLE WITH DISABILITIES

Country Status (2)

Country Link
FR (1) FR3139644A1 (en)
WO (1) WO2024052557A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160055138A1 (en) * 2014-08-25 2016-02-25 International Business Machines Corporation Document order redefinition for assistive technologies
US20170329863A1 (en) * 2016-05-16 2017-11-16 Open Access Technologies, Inc. Methods and Systems for Tagging Documents and for Compressing Tagged Documents
US20180373952A1 (en) * 2017-06-22 2018-12-27 Adobe Systems Incorporated Automated workflows for identification of reading order from text segments using probabilistic language models
US20200257847A1 (en) * 2019-02-07 2020-08-13 NetCentric Technologies Inc. dba CommonLook System and method for using artificial intelligence to deduce the structure of pdf documents

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160055138A1 (en) * 2014-08-25 2016-02-25 International Business Machines Corporation Document order redefinition for assistive technologies
US20170329863A1 (en) * 2016-05-16 2017-11-16 Open Access Technologies, Inc. Methods and Systems for Tagging Documents and for Compressing Tagged Documents
US20180373952A1 (en) * 2017-06-22 2018-12-27 Adobe Systems Incorporated Automated workflows for identification of reading order from text segments using probabilistic language models
US20200257847A1 (en) * 2019-02-07 2020-08-13 NetCentric Technologies Inc. dba CommonLook System and method for using artificial intelligence to deduce the structure of pdf documents

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
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 *
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 *

Also Published As

Publication number Publication date
WO2024052557A1 (en) 2024-03-14

Similar Documents

Publication Publication Date Title
CN106156365B (en) A kind of generation method and device of knowledge mapping
US10169325B2 (en) Segmenting and interpreting a document, and relocating document fragments to corresponding sections
US7599952B2 (en) System and method for parsing unstructured data into structured data
US10832049B2 (en) Electronic document classification system optimized for combining a plurality of contemporaneously scanned documents
Lee et al. The newspaper navigator dataset: extracting and analyzing visual content from 16 million historic newspaper pages in chronicling America
EP1364316A2 (en) Device for retrieving data from a knowledge-based text
CN111274239A (en) Test paper structuralization processing method, device and equipment
CN109508448A (en) Short information method, medium, device are generated based on long article and calculate equipment
CN115238688B (en) Method, device, equipment and storage medium for analyzing association relation of electronic information data
Beleveslis et al. A hybrid method for sentiment analysis of election related tweets
Hwang et al. A spelling based CAPTCHA system by using click
CN116151233A (en) Data labeling and generating method, model training method, device and medium
CN109660621A (en) A kind of content delivery method and service equipment
US20240211518A1 (en) Automated document intake system
Lopresti et al. Issues in ground-truthing graphic documents
FR3139644A1 (en) METHOD FOR THE AUTOMATED PROCESSING OF A DOCUMENT FOR ITS USE BY PEOPLE WITH DISABILITIES
Chandra et al. Contextual emotion detection in text using deep learning and big data
TW200409046A (en) Optical character recognition device, document searching system, and document searching program
Singgalen Performance Evaluation of SVM Algorithm in Sentiment Classification: A Visual Journey of Wonderful Indonesia Content
Madan et al. Parsing and summarizing infographics with synthetically trained icon detection
KR102072708B1 (en) A method and computer program for inferring genre of a text contents
Shirali-Shahreza et al. Localized CAPTCHA for illiterate people
Jasmine et al. Medicine Drug Name Detection Object Recognition using Deep Learning based OCR System
Bai et al. Ensemble Deep Learning (EDL) for Cyber-bullying on Social Media
Nguyen Facilitating access to historical documents by improving digitisation results

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20240315