Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD FOR SEGMENTING AN INPUT IMAGE SHOWING A DOCUMENT CONTAINING STRUCTURED INFORMATION
Document Type and Number:
WIPO Patent Application WO/2021/123209
Kind Code:
A1
Abstract:
The present invention relates to a method for segmenting an input message showing a document containing structured information, the method comprising steps of: C2) determining a type of document using a classifying method, said type being chosen from a set of possible types each associated with one reference image of the type of document, the reference image being an image solely containing the document; C3) estimating the parameters of a geometric transformation to be applied to the reference image of the type of document determined in step C2) in order to obtain the document such as shown in the input image; C4) determining a segmentation mask on the basis of the geometric-transformation parameters estimated in step C3) and of the reference image of the type of document determined in step C2).

Inventors:
ROSTAING LAURENT (FR)
ROUH ALAIN (FR)
CODREANU CATALIN (FR)
Application Number:
PCT/EP2020/087081
Publication Date:
June 24, 2021
Filing Date:
December 18, 2020
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
CARRUS GAMING (FR)
International Classes:
G06K9/00; G06K9/62; G06T3/00
Foreign References:
EP3153991A12017-04-12
CN110263694A2019-09-20
US20100239118A12010-09-23
FR2983607A12013-06-07
FR3027136A12016-04-15
Other References:
ROCCO IGNACIO ET AL: "Convolutional Neural Network Architecture for Geometric Matching", IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, IEEE COMPUTER SOCIETY, USA, vol. 41, no. 11, 1 November 2019 (2019-11-01), pages 2553 - 2567, XP011748098, ISSN: 0162-8828, [retrieved on 20191001], DOI: 10.1109/TPAMI.2018.2865351
Attorney, Agent or Firm:
FIDAL INNOVATION (FR)
Download PDF:
Claims:
REVENDICATIONS

1 . Procédé de segmentation d’une image d’entrée représentant un document comportant des informations structurées, le procédé comprenant la mise en œuvre par des moyens de traitement (11 ) des étapes de :

C2) Détermination d’un type de document par une méthode de classification, ledit type étant choisi parmi un ensemble de types possible chacun associé à une image de référence du type de document, l’image de référence étant une image comportant uniquement le document ;

C3) Estimation des paramètres d’une transformation géométrique à appliquer à l’image de référence du type de document déterminé à l’étape C2) pour obtenir le document tel que représenté par l’image d’entrée ;

C4) Détermination d’un masque de segmentation à partir des paramètres de la transformation géométrique estimés à l’étape C3) et de l’image de référence du type de document déterminé à l’étape C2).

2. Procédé de segmentation selon la revendication 1 , caractérisé en ce qu’il comprend en outre une étape C1 ) d’acquisition d’une image comprenant le document comportant des informations structurées à segmenter, réalisée avant l’étape C2).

3. Procédé de segmentation selon l’une des revendications 1 et 2, caractérisé en ce que les documents sont des tickets de jeux comportant des cases à cocher.

4. Procédé de segmentation selon l’une des revendications 1 à 3, caractérisé en ce que la méthode de classification est un réseau de neurones profond.

5. Procédé de segmentation selon la revendication 4, caractérisé en ce que le réseau de neurones profond est un réseau de neurones profond de type convolutif.

6. Procédé de segmentation selon l’une des revendications 1 à 3, caractérisé en ce que la méthode de classification est une méthode de type point d’intérêt combinée avec un partitionnement des points d’intérêt.

7. Procédé de segmentation selon la revendication 2, caractérisé en ce que l’étape C1 ) d’acquisition d’une image comprenant au moins un document comportant des informations structurées à segmenter comprend en outre une étape de sous- échantillonnage de l’image comprenant le au moins un document comportant des informations structurées à segmenter.

8. Procédé de segmentation selon l’une des revendications 1 à 7 caractérisé en ce que les déformations géométriques sont des déformations représentées par des fonctions affines.

9. Procédé de segmentation selon l’une des revendications 1 à 8 caractérisé en ce que l’estimation des paramètres de la transformation géométrique de l’étape C3) est réalisée par un réseau de neurones profond.

10. Procédé de segmentation selon la revendication 9, caractérisé en ce que le réseau de neurones profond est sélectionné parmi une pluralité de réseaux de neurones correspondant chacun à un type de document, à partir du type de document déterminé à l’étape C2).

11. Procédé de segmentation selon l’une des revendications 1 à 10, comprenant : une étape préalable d’augmentation des données d’entrainement à partir d’une unique image de référence pour chaque type de documents à segmenter, l’étape d’augmentation des données d’entrainement comprenant, pour chaque type de documents, la mise en œuvre par des moyens de traitement (31) l’une et/ou l’autre des étapes de :

E2) Simulation de déformations géométriques aléatoires ;

E3) Simulation d’un fond à l’image par incrustation de l’image ayant subi les déformations dans une texture générée aléatoirement ou sélectionnée dans une liste de textures, représentant le fond de l’image ;

E4) Simulation de dégradations photométriques par modification du contraste et de la colorimétrie de l’image générée à l’étape précédente ;

E5) Ajout d’un bruit numérique à l’image générée à l’étape précédente, les étapes précédentes étant répétées autant de fois que l’on souhaite avoir d’exemples d’entrainement pour le type de document ; une étape d’entrainement d’un réseau de neurones mis en oeuvre à l’étape C2) et/ou à l’étape C3) sur la base des données d’entrainement augmentées. 12. Procédé d’augmentation des données d’entrainement pour l’entrainement d’un procédé de segmentation selon l’une des revendications 1 à 11 à partir d’une unique image de référence pour chaque type de documents à segmenter, le procédé comprenant, pour chaque type de documents, la mise en œuvre par des moyens de traitement (31) des étapes de :

E2) Simulation de déformations géométriques aléatoires ; E3) Simulation d’un fond à l’image par incrustation de l’image ayant subi les déformations dans une texture générée aléatoirement ou sélectionnée dans une liste de textures, représentant le fond de l’image ;

E4) Simulation de dégradations photométriques par modification du contraste et de la colorimétrie de l’image générée à l’étape précédente ; E5) Ajout d’un bruit numérique à l’image générée à l’étape précédente, les étapes précédentes étant répétées autant de fois que l’on souhaite avoir d’exemples d’entrainement pour le type de document.

13. Procédé d’augmentation des données d’entrainement selon la revendication 12, caractérisé en ce qu’il comprend en outre une étape E1 ) d’acquisition d’une image de référence du type de document réalisée avant l’étape E2).

14. Procédé d’augmentation des données d’entrainement selon l’une des revendications 12 et 13, caractérisé en ce que les déformations géométriques sont des déformations représentées par des fonctions affines.

15. Procédé d’augmentation des données d’entrainement selon l’une des revendications 12 à 14, caractérisé en ce qu’il comprend en outre une étape E3bis) de masquage, permettant de masquer les zones de l’image de référence du type de document pouvant être différentes d’un document du même type à l’autre en appliquant une texture générée aléatoirement ou sélectionnée dans une liste de textures, représentant un motif variable.

16. Produit programme d’ordinateur comprenant des instructions de code pour l’exécution d’un procédé de segmentation selon l’une des revendications 1 à 11 ou d’un procédé d’augmentation des données d’entrainement selon l’une des revendications 12 à 15, lorsque ledit programme est exécuté sur un ordinateur.

17. Moyen de stockage lisible par un équipement informatique sur lequel est enregistré un produit programme d’ordinateur comprenant des instructions de code pour l’exécution d’un procédé de segmentation selon l’une des revendications 1 à 11 ou d’un procédé d’augmentation des données d’entrainement selon l’une des revendications 12 à 15, lorsque ledit programme est exécuté sur un ordinateur.

Description:
TITRE : Procédé de segmentation d’une image d’entrée représentant un document comportant des informations structurées

DOMAINE TECHNIQUE GENERAL

La présente invention concerne le domaine de l’identification des documents comportant des informations structurées, par exemple sous la forme de cases à cocher. Plus particulièrement elle concerne une méthode d’identification (classification) et de segmentation d’un tel document, par exemple un bulletin de jeu, dans une image prise dans un environnement non contrôlé.

ETAT DE L’ART

Par « document comportant des informations structurées » on comprendra un élément, généralement sur support papier ayant une forme et des motifs prédéfinis, comportant des indications et un ensemble de zones à remplir, par exemple des cases à cocher. Un tel document peut-être par exemple un bulletin de jeu (de loterie par exemple), un formulaire, ou un questionnaire à choix multiples.

Le traitement des documents comportant des informations structurées a connu de nombreux développements grâce aux avancées faites dans le domaine de la vision par ordinateur.

Des procédés ont ainsi été proposés tel que celui décrit dans le brevet FR2983607, permettant le suivi d’un objet dans une séquence d’au moins deux images, reposant sur une extraction de points caractéristiques dans les images, par exemple par des descripteurs SIFT (« scale-invariant feature transform »), ainsi qu’une mise en correspondance des points caractéristiques entre les images. Ce procédé comprend une étape de sélection de points dits « singuliers » qui permet de réduire les ambiguïtés dans le cas de documents qui présentent des motifs répétitifs comme les cases des bulletins de jeu. Il permet d’assurer le suivi d’un document présent dans un flux vidéo, sans que le modèle de document ne soit connu au préalable, et exploite un ensemble de points d’intérêts présents dans les images. Ce procédé permet ainsi de déterminer une zone de présence et une segmentation de l’objet, issue de l’analyse du mouvement entre les images. Cependant, les performances de l’extraction des points d’intérêt de cette approche sont limitées par l’absence d’image de référence. En fonction des documents il peut y avoir des régions avec peu ou pas de points caractéristiques, qui seront alors mal détectées par le procédé. Enfin dans les cas d’empilement de documents, le dernier document ajouté peut provoquer un mouvement de documents situés en dessous, dont certaines parties peuvent alors être incorrectement détectées, ou alors qui peut empêcher une détection correcte du dernier document ajouté. Enfin ce procédé a comme inconvénient majeur qu’il ne permet pas d’identifier le modèle de document.

Un autre procédé, proposé dans le brevet FR3027136, permet l’identification d’au moins un signe d’un document déformé reposant sur la segmentation de régions de signes candidates, puis l’identification conjointe de ces régions de signes candidates et d’un modèle de déformation par rapport à des modèles de documents préalablement stockés. Cependant, ce procédé présente certains inconvénients, tout d’abord, il ne permet pas de classifier et segmenter une image, son but est simplement de décoder un document donné à partir d’un patron de document. De plus, le procédé décrit dans ce brevet requiert une délimitation manuelle des régions du document comprenant des informations afin d’identifier celui-ci. Enfin, comme ce procédé ne comprend pas d’étape de segmentation, il peut être perturbé par la présence d’autres documents dans le champ de vision du système d’acquisition utilisé.

PRESENTATION DE L’INVENTION

Selon un premier aspect, la présente invention concerne un procédé de segmentation d’une image d’entrée représentant un document comportant des informations structurées, le procédé comprenant la mise en œuvre par des moyens de traitement des étapes de :

C2) Détermination d’un type de document par une méthode de classification, ledit type étant choisi parmi un ensemble de types possible chacun associé à une image de référence du type de document ;

C3) Estimation des paramètres d’une transformation géométrique à appliquer à l’image de référence du type de document déterminé à l’étape C2) pour obtenir le document tel que représenté par l’image d’entrée ;

C4) Détermination d’un masque de segmentation à partir des paramètres de la transformation géométrique estimés à l’étape C3) et de l’image de référence du type de document déterminé à l’étape C2).

Selon d’autres caractéristiques avantageuses et non limitatives :

- le procédé comprend en outre une étape C1) d’acquisition d’une image comprenant le document comportant des informations structurées à segmenter, réalisée avant l’étape C2)

- les documents peuvent être des tickets de jeux comportant des cases à cocher ; - la méthode de classification peut être un réseau de neurones profond, et plus particulièrement un réseau de neurones profond de type convolutif ;

- la méthode de classification peut être une méthode de type point d’intérêt combinée avec un partitionnement des points d’intérêt ; - l’étape C1 ) d’acquisition d’une image comprenant au moins un document comportant des informations structurées à segmenter comprend en outre une étape de sous- échantillonnage de l’image comprenant le au moins un document comportant des informations structurées à segmenter ;

- les déformations géométriques sont des déformations représentées par des fonctions affines ;

- l’estimation des paramètres de la transformation géométrique de l’étape C3) est réalisée par un réseau de neurones profond :

- le réseau de neurones profond est sélectionné parmi une pluralité de réseaux de neurones correspondant chacun à un type de document, à partir du type de document déterminé à l’étape C2) ;

- le procédé de segmentation comprend une étape préalable d’augmentation des données d’entrainement à partir d’une unique image de référence pour chaque type de documents à segmenter, l’étape d’augmentation des données d’entrainement comprenant, pour chaque type de documents, la mise en œuvre par des moyens de traitement l’une et/ou l’autre des étapes de :

E2) Simulation de déformations géométriques aléatoires ;

E3) Simulation d’un fond à l’image par incrustation de l’image ayant subi les déformations dans une texture générée aléatoirement ou sélectionnée dans une liste de textures, représentant le fond de l’image ; E4) Simulation de dégradations photométriques par modification du contraste et de la colorimétrie de l’image générée à l’étape précédente ;

E5) Ajout d’un bruit numérique à l’image générée à l’étape précédente, les étapes précédentes étant répétées autant de fois que l’on souhaite avoir d’exemples d’entrainement pour le type de document ; une étape d’entrainement d’un réseau de neurones mis en oeuvre à l’étape C2) et/ou à l’étape C3) sur la base des données d’entrainement augmentées.

Selon un second aspect, l’invention concerne un procédé d’augmentation des données d’entrainement pour l’entrainement d’un procédé de segmentation selon le premier aspect, à partir d’une unique image de référence pour chaque type de documents à segmenter, le procédé comprenant, pour chaque type de documents, la mise en œuvre par des moyens de traitement des étapes de :

E2) Simulation de déformations géométriques aléatoires ;

E3) Simulation d’un fond à l’image par incrustation de l’image ayant subi les déformations dans une texture générée aléatoirement ou sélectionnée dans une liste de textures, représentant le fond de l’image ;

E4) Simulation de dégradations photométriques par modification du contraste et de la colorimétrie de l’image générée à l’étape précédente ;

E5) Ajout d’un bruit numérique à l’image générée à l’étape précédente, les étapes précédentes étant répétées autant de fois que l’on souhaite avoir d’exemples d’entrainement pour le type de document.

Selon d’autres caractéristiques avantageuses et non limitatives :

- le procédé comprend en outre une étape E1) d’acquisition d’une image de référence du type de document réalisée avant l’étape E2).

- les déformations géométriques peuvent être des déformations représentées par des fonctions affines ;

- le procédé comprend en outre une étape E3bis) de masquage, permettant de masquer les zones de l’image de référence du type de document pouvant être différentes d’un document du même type à l’autre en appliquant une texture générée aléatoirement ou sélectionnée dans une liste de textures, représentant un motif variable.

L’invention propose en outre un produit programme d’ordinateur comprenant des instructions de code pour l’exécution d’un procédé de segmentation selon le premier aspect ou d’un procédé d’augmentation des données d’entrainement selon le second aspect, lorsque ledit programme est exécuté sur un ordinateur ; et un moyen de stockage lisible par un équipement informatique sur lequel un produit programme d’ordinateur comprenant des instructions de code pour l’exécution d’un procédé de segmentation selon le premier aspect ou d’un procédé d’augmentation des données d’entrainement selon le second aspect, lorsque ledit programme est exécuté sur un ordinateur

PRESENTATION DES FIGURES

D’autres caractéristiques et avantages de la présente invention apparaîtront à la lecture de la description qui va suivre d’un mode de réalisation préférentiel. Cette description sera donnée en référence aux dessins annexés dans lesquels : [Fig. 1] la figure 1 est un schéma d’une architecture pour la mise en œuvre du procédé selon l’invention ;

[Fig.2] la figure 2 représente les étapes d’un mode de réalisation du procédé de segmentation selon l’invention ;

[Fig. 3] la figure 3 représente les étapes d’un mode de réalisation du procédé d’augmentation de données selon l’invention ; [Fig. 4] la figure 4 illustre des exemples d’images générées par le procédé d’augmentation de données.

DESCRIPTION DETAILLEE Architecture

Selon deux aspects complémentaires de l’invention, sont proposés :

- Un procédé de segmentation d’un document comportant des informations structurées ;

- Un Procédé d’augmentation des données d’entrainement pour l’entrainement d’un procédé de segmentation selon le premier aspect à partir d’une unique image de référence pour chaque type de documents à segmenter.

Ces procédés sont mis en œuvre au sein d’une architecture telle que représentée par la figure 1 , grâce à un serveur de segmentation 1 (mettant en œuvre le procédé de segmentation), un serveur d’apprentissage 3 (mettant en œuvre le procédé d’apprentissage), une base de données 4 (servant à stocker les images de référence des différents types de documents) et un client 2 (disposant d’images de documents à segmenter), par exemple un terminal d’un utilisateur tel qu’un ordinateur portable ou un smartphone. Il est tout à fait possible que certains ou la totalité de ces équipements soient confondus, par exemple le serveur de segmentation 1 peut être regroupé avec le client 2, et le serveur d’apprentissage peut comprendre la base de données.

Les équipements 1 , 2, et 3 sont typiquement des équipements informatiques distants reliés à un réseau étendu 10 tel que le réseau internet pour l’échange des données ; chacun comprend des moyens de traitement de données respectivement 11 , 21 , 31 de type processeur, et des moyens de stockage de données 12, 22, 32 tel qu’une mémoire informatique, par exemple un disque. Le client 2 comprend en outre des moyens d’acquisition d’images 23 afin d’obtenir des images des documents à segmenter. La base de données 4, peut être soit un serveur indépendant des moyens de traitement de données et de stockage propres, soit un serveur de fichier (par exemple un serveur NAS), soit un système de gestion de base de données intégré au serveur d’apprentissage. Cette base de données stocke des images de référence pour chaque type de documents à segmenter.

Par image de référence , on entend une image de bonne qualité (sans défaut de prise de vue) comportant uniquement le document à l’échelle (donc non déformé), une telle image peut être par exemple un fichier source généré par un logiciel de dessin assisté par ordinateur. Notamment, une telle image de référence ne comprend aucune information interprétée relative au document. L’ image de référence peut notamment être une image représentative du document vierge de tout remplissage des zones à remplir par un utilisateur du document.

Par forme d’un document représenté sur une image, on entend au sens large la position, l’orientation et le contour de ce document dans cette image. Ainsi, pour un contour donné, la forme comprend la position du centre de gravité de ce contour dans l’image du document, et l’orientation dans le plan de ce contour par rapport à un repère orthonormé de l’image. Ainsi, un même document peut être imagé en divers endroits par rapport au capteur, en différentes orientations (plus ou moins tourné par rapport au repère orthonormé du capteur, voire à 180°), et/ou déformé dans le cas d’un document souple.

Principe

L’idée des procédés proposés est de permettre l’utilisation et l’entrainement de méthodes de segmentation nécessitant de grandes quantités de données, tel que les réseaux de neurones, en se contentant d’un exemple par classe (ou type de document) lors de l’entrainement et en appliquant une chaîne d’augmentation d’images suffisamment représentative des images de documents réels et permettant ainsi d’avoir un volume d’images suffisant pour l’apprentissage de la méthode de segmentation.

Pour cela, le procédé de segmentation est divisé en un sous-procédé de classification suivi d’une estimation des paramètres d’une transformation géométrique qui, lorsqu’elle est appliquée à l’image de référence du type de document déterminé par la méthode de classification, fait correspondre la forme de l’image de référence à la forme du document dans l’image à segmenter. Elle permet ainsi de segmenter des documents à partir de documents de référence dont la forme et les contours sont connus à l’avance sans avoir besoin d’entraîner une méthode de segmentation sur des exemples où chaque pixel de l’image a été annoté manuellement. De plus, dans certains modes de réalisation, la séparation des étapes de détermination d’un masque de segmentation et de classification simplifie l’ajout d’un nouveau type de document au modèle car il n’est alors pas nécessaire de ré-entraîner l’ensemble du modèle, seulement les portions qui ont changées. Par « modèle », on entend ainsi les parties du ou des réseaux de neurones qui sont impliquées dans la prise en compte d’un nouveau type de document.

L’utilisation de méthodes basées sur les réseaux de neurones permet en outre de réduire les temps de calculs nécessaires par rapport à l’état de la technique, en effet contrairement aux méthodes de point d’intérêt qui ne nécessitent pas forcément d’entrainement comme les réseaux de neurones, mais ont un temps de calcul dépendant de la complexité des données d’entrées, les réseaux de neurones permettent en revanche d’avoir un temps de calcul constant quelle que soit l’image d’entrée lors de la classification. De plus, de manière surprenante, la décomposition, dans certains modes de réalisation, de la classification et de la détermination du masque de segmentation en deux tâches différentes permet aussi de réduire le temps de calcul par rapport à une méthode réalisant la classification et la détermination du masque de segmentation dans un même temps. En effet, le procédé de détermination du masque de segmentation étant spécifique à chaque type de document, et donc moins complexe, et la classification étant une opération plus simple que la segmentation, la charge de calcul induite par l’utilisation de ces deux procédés est inférieure à celle d’un procédé réalisant les deux opérations dans le même temps.

Phase de classification et de segmentation

En référence à la figure 2, le procédé de segmentation comprend une première étape, C1 , d’acquisition d’une image à traiter comportant le document à classer et segmenter. Cette image peut être acquise soit par des moyens de prise de vue 23, intégrés au client 2, soit être acquise via un réseau d’échange de données 10 tel que l’internet, cette étape peut en outre comprendre un sous-échantillonnage de l’image acquise afin de simplifier son traitement. Si le document à classer comprend des zones à remplir, une ou plusieurs de ces zones à remplir peuvent avoir été remplies par un utilisateur du document avant l’étape d’acquisition. Notamment lorsqu’elle est acquise par des moyens de prise de vue 23 dédiés, prévus à cet effet, l’image à traiter comporte le document à classer et segmenter, mais aussi une région de l’espace autour du document à classer. D’une part la forme du document à classer dans l’image est inconnue. D’autre part, la région de l’espace autour du document à classer peut être très variable selon les images. Elle peut comprendre un support du document à classer. Dans le cas où le document à imager est posé sur un ou plusieurs autres documents lors de l’acquisition, elle peut comprendre des parties de ce ou ces autres documents si l’empilement des documents n’est pas parfaitement superposé. Enfin, dans certains cas d’acquisition d’un document non supporté, la région de l’espace autour du document peut comprendre un fond distant dépendant de l’environnement du document lors de l’acquisition. L’image peut en particulier contenir des motifs répétitifs, comme c’est le cas par exemple pour les bulletins de jeu, qui comprennent plusieurs cases de forme identique.

L’image à traiter est ensuite transmise à un classifieur afin de déterminer le type du document lors d’une étape C2, cette classification peut alors être réalisée par un algorithme standard de classification, par exemple un réseau de neurones convolutif (CNN) tel que VGG16, DenseNet, ResNet etc. ou une méthode correspondance de points d’intérêt tel que SIFT ou SURF (« Speeded Up Robust Features » ), tel que ce sera détaillé ci-dessous.

Selon un premier exemple, la classification est réalisée par un réseau de neurones convolutif. Dans ce cas, un réseau de neurones a été entraîné pour déterminer le type de document à partir d’une image d’entrée. Ainsi, on fournit en entrée du réseau de neurones l’image acquise, et le réseau de neurones fournit en sortie la classe du document figurant sur l’image. La classe du document peut par exemple être choisie dans la liste suivante : {passeport ; carte d’identité ; permis de conduire ; carte de membre ; billet de banque ; bulletin de jeu ; formulaire ; questionnaire à choix multiple}. La « carte de membre » peut par exemple être une carte délivrée à certaines personnes dans certains cas (par exemple, carte de mutuelle, carte de fidélité, ...). La classe du document peut également comprendre une sous-classe. Par exemple, dans le cas d’un « bulletin de jeu », la classe du document peut également peut également comprendre une sous-classe relative à un identifiant du jeu concerné.

Une fois le type de document identifié, une méthode de régression est utilisée afin d’estimer les paramètres d’une transformation géométrique (par exemple une transformation affine) qui, lorsqu’elle est appliquée à l’image de référence du type de document identifié, permet de retrouver la forme du document présent dans l’image à traiter. Cette régression peut être faite grâce à un réseau de neurones profond. On utilise par exemple un réseau de neurones spécifique respectif pour chaque type de document identifié au cours de l’étape de classification. Dans cet exemple, un réseau de neurones a été entraîné pour déterminer, à partir d’une image d’entrée, les paramètres d’une transformation géométrique à appliquer au document de référence associé au type de document pour le faire correspondre à l’image d’entrée. Ainsi, on fournit en entrée du réseau de neurones l’image acquise, ainsi que le type de document déterminé à l’étape précédente, et le réseau de neurones fournit en sortie des paramètres de transformation géométrique. Les paramètres de transformation géométrique peuvent par exemple comprendre les paramètres d’une translation du centre de gravité, d’une rotation planaire, et d’une déformation.

En variante, on peut utiliser, pour la méthode de régression, un réseau de neurones d’un type similaire à celui utilisé pour l’étape de classification (de préférence un CNN tel que VGG16, DenseNet, ResNet etc.) auquel est ajoutée une couche de connexion dense destinée à estimer les paramètres de la transformation géométrique.

Il est aussi possible de combiner le réseau de classification et le réseau de régression en réutilisant les premières couches du réseau de classification pour la régression. Dans ce cas, on utilise un réseau de neurones unique qui, à partir de l’image d’entrée, estime à la fois le type de document et les paramètres géométriques de la transformation. Selon un deuxième exemple, la classification est réalisée par une méthode par correspondance de points d’intérêt. Dans ce cas, on dispose, pour chaque type de document, d’un modèle de document comprenant une image de référence de ce type de document. Le modèle de document comporte également des informations structurées relatives à des informations interprétées (méta-données) relatives au document de référence. Ces informations interprétées comprennent notamment la nature et la position de points d’intérêt du document de référence. L’étape de classification du type de document comprend, pour chaque type de document, un traitement d’image appliqué à l’image acquise en vue de déterminer, sur l’image acquise, des points d’intérêt, puis une étape de mise en correspondance de ces points d’intérêts déterminés sur l’image acquise avec les points d’intérêts déterminés dans le modèle de document pour l’image de référence. Ainsi, l’image est classifiée comme correspondant à un type de document pour le type de document pour lequel la mise en correspondance des points d’intérêt de l’image acquise avec ceux du modèle de document pour ce type de document donne les meilleurs résultats. Selon certains exemples, la méthode par correspondance par points d'intérêt comprend un partitionnement des points d’intérêt en différentes régions chacune traitée indépendamment.

Dans ce deuxième exemple, on applique alors un réseau de neurones pour déterminer les paramètres de la transformation géométrique, comme décrit ci-dessus dans le cadre du premier exemple.

Dans un troisième exemple, on met en œuvre une étape de classification comme décrit ci-dessus dans le premier exemple, au moyen d’un réseau de neurones.

La régression peut alors être faite à partir des coins du document à segmenter si celui-ci a une forme polygonale ou bien à partir de points de marquage ajoutés à tous les documents d’un même type. Il suffit alors de trouver les paramètres d’une transformation géométrique qui permet de faire correspondre à un point ou coté du document dans l’image de référence du type de document, le point ou coté équivalent dans le document à segmenter.

Enfin, dans l’ensemble des exemples de réalisation ci-dessus, un masque de segmentation est créé en appliquant la transformation géométrique calculée à l’étape précédente au contour du document de l’image de référence afin d’obtenir le contour du document présent dans l’image à traiter. Ce masque de segmentation permet ainsi de déterminer la forme (position, orientation, contour) du document dans l’image acquise. Ceci permet notamment de s’affranchir des bords de documents disposés sous le document à analyser, visibles dans l’image acquise.

Cette forme est utilisée ensuite pour traiter l’image acquise en vue d’extraire des informations du document structuré. Le traitement en question peut utiliser des paramètres de la déformation géométrique déterminés comme décrit ci-dessus. Phase d’entrainement

En référence à la figure 3, un procédé d’augmentation des données d’entrainement est proposé. Ce procédé est mis en œuvre par les moyens de traitement 31 du serveur d’apprentissage, afin de générer un nombre d’images d’entrainement suffisant pour permettre l’entrainement d’un modèle de segmentation efficace. Pour cela, on pourra utiliser une unique image de référence de bonne qualité pour chaque type de document à identifier, acquise lors d’une étape E1 soit par des moyens de prise de vue 23, soit sous la forme d’un fichier source à l’origine de l’image de référence du type de document.

Des déformations géométriques aléatoires sont ensuite simulées à l’étape E2, en appliquant une transformation géométrique (par exemple une transformation affine), dont les paramètres ont été déterminés aléatoirement, à l’image de référence, générant ainsi des images ayant subi des translations, des symétries, des homothéties etc.

Ensuite, afin de simuler la présence d’un fond dans l’image, des textures représentant des images de fond sont créées en générant une image comportant des motifs aléatoires. Les images de documents ayant subi des déformations générées à l’étape précédente sont ensuite incrustées sur les images de fond lors d’une étape E3. En ce qui concerne les images de fond, on peut en particulier prévoir de générer des images comprenant des parties simulant des portions de documents disposés partiellement sous le document à analyser, et dépassant de sous celui-ci. Il est aussi possible d’ajouter un masque sur certaines parties de l’image du document si celui-ci comporte une ou plusieurs régions susceptibles d’être différentes d’un document du même type à l’autre et ainsi améliorer la capacité de généralisation du modèle entraîné. Pour cela une texture peut être générée de la même façon que les images de fond et appliquée à la région de l’image désirée, la texture de masquage étant de préférence différente de la texture de fond. Dans le cas, par exemple, d’un type de document comprenant des zones à remplir, notamment des cases à cocher, on peut ainsi générer une texture présentant le motif d’une zone remplie, qui peut être utilisé comme masque sur une ou plusieurs parties de l’image du document à l’emplacement des zones à remplir. Par exemple, on peut utiliser des textures faisant figurer une zone à remplir renseignée manuellement ou informatiquement par un caractère ou une suite de caractères. Dans le cas d’une zone à cocher, on peut utiliser des textures faisant figurer une case cochée.

Puis, afin de simuler des prises de vues faites dans des mauvaises conditions (par exemple mauvais éclairage, ou mauvaise mise au point), des dégradations photométriques sont appliquées, lors d’une étape E4, aux images générées à l’étape précédente. Ces dégradations peuvent être un effet de flou, une modification de la luminosité de l’image ou du contraste, ou encore des altérations des couleurs de l’image.

Enfin, un bruit numérique (par exemple bruit gaussien) est appliqué aux images générées dans une étape E5. Des exemples de documents produits par le procédé d’augmentation de données sont illustrés en figure 4.

Cette figure illustre notamment des cas où les documents présentent une forme sensiblement plane, et présentent une unique face porteuse de l’information structurée. Les documents présentent un contour, qui peut être polygonal, ou comprendre des zones courbes, comme dans l’exemple présenté d’une forme de cœur. Le document peut comprendre un cartouche périphérique d’une certaine largeur et de couleur uniforme. Comme visible sur la figure 4, l’image peut ne comporter qu’une partie du document. C’est le cas notamment si une transformée géométrique a été appliquée au document de référence qui déplace hors cadre une partie du document.

L’ensemble de ces étapes est répété pour chaque type de document, et autant de fois que l’on souhaite obtenir d’exemple par type de document. Cela permet de résoudre le problème de la constitution d’une base de données pour l’entrainement des modèles de segmentation.

Le fait que le document à analyser soit un document structuré implique de développer des réseaux de neurones qui sont spécifiques au traitement de documents structurés. En effet, les documents à analyser comprennent par essence des zones génériques pour le type de document en question, et des zones personnalisées (par exemple, une chaîne de caractères propre au titulaire d’un passeport, ou une pluralité de cases cochées et non cochées d’un bulletin de jeu), de sorte que le réseau de neurones se constituera de manière particulière au cours de l’apprentissage. Pour donner un exemple concret, sur un bulletin de jeu à cinquante cases à cocher, toutes identiques, dont six sont à cocher dans le cadre du jeu, les cases à cocher du document de référence forment des motifs réguliers facilement reconnaissables. Toutefois, un document à analyser va présenter certaines de ces cases cochées, justement de manière différente entre les bulletins, voire cochées de manière différente entre elles, ce qui rend difficile de s’appuyer sur la reconnaissance de ce motif régulier pour la classification.

Phase d’enrichissement avec un nouveau type de document

Le système qui vient d’être décrit peut être facilement enrichi pour traiter un nouveau type de document. Ainsi, si un nouveau type de document est à reconnaître, notamment en cas d’édition d’un nouveau jeu, une image de référence du bulletin de jeu du nouveau jeu est utilisée. Puis, un ensemble d’images est généré à partir de l’image de référence, comme décrit ci-dessus. Le réseau de neurones déterminant le type de document est alors ré-entrainé avec ces nouvelles images d’entrainement. Puis, un réseau de neurones d’estimation des paramètres de déformation est créé et entraîné avec ces images d’entrainement. Produit programme d’ordinateur

Selon des aspects complémentaires, l’invention concerne un produit programme d’ordinateur comprenant des instructions de code pour l’exécution (en particulier sur les moyens de traitement de données 11, 21 et 31 des serveurs 1 et/ou 3, et/ou du client 2) d’un procédé de segmentation d’un document comportant des informations structurées selon au moins une référence associée à un type de documents, le document étant présent dans une image d’entrée, ainsi que d’un procédé d’augmentation des données d’entrainement pour l’entrainement du procédé de segmentation décrit à partir d’une unique image de référence pour chaque type de documents à classifier et segmenter. De même, l’invention concerne aussi des moyens de stockage lisibles par un équipement informatique (une mémoire 12, 22 et 32 des serveurs 1 et/ou 3, et/ou du client 2) sur lequel on trouve ce produit programme d’ordinateur.