Passer au contenu principal
Pour les documents allemands, configurez maintenant leur activité Extraction Rules. Fast Learning a déjà pris en charge certains champs. Cette activité traite les autres.

Avant de commencer

1

Ouvrez l’activité dans l’Éditeur d’activité

  1. Ouvrez l’activité “arrêt maladie DE” dans l’Éditeur d’activité.
  2. Sélectionnez l’un des documents de l’ensemble de documents.
2

Activez les propriétés avancées de l’élément

Assurez-vous que le mode avancé des propriétés de l’élément est activé. Pour activer ou désactiver ce mode, cliquez sur l’icône dans le volet Properties.
Deux aides visuelles vous aident lors de la configuration des éléments de recherche :
  • Tous les documents téléchargés ont subi une préreconnaissance. Cliquez sur l’icône (ou cliquez sur l’icône Plus et sélectionnez Recognized Words si l’icône ne tient pas sur votre écran) pour mettre en évidence les objets détectés sur l’image du document. Vous pouvez basculer à tout moment entre les types d’objets — par exemple, Recognized Lines aide à repérer des paragraphes, et Separators facilite la configuration d’un élément de recherche Separator.
  • Si un élément de recherche se situe en dehors de la zone de recherche, il ne sera pas trouvé. Activez l’option Show search area dans le menu contextuel de l’image du document pour surligner en vert la zone de recherche de chaque élément lorsque vous évaluerez les résultats de correspondance.
Gardez à l’esprit qu’il peut être utile d’expérimenter les propriétés avancées des éléments de recherche pour améliorer la précision de l’extraction. Cliquez fréquemment sur Associer pour vérifier le fonctionnement de vos règles d’extraction et comparer les résultats d’extraction entre les documents de l’ensemble. Pour tester un seul élément sans relation avec les autres éléments, cliquez sur Match Element dans son menu contextuel — dans ce cas, la qualité des hypothèses pour les éléments précédents n’affectera pas les résultats d’Associer.

Extraction des données du patient

Extrayez les données manquantes du patient en créant plusieurs éléments de recherche. Regroupez les éléments liés à une même entité. Les éléments de recherche sont mis en correspondance successivement — si un élément de tête échoue, la qualité de l’hypothèse diminue pour le reste de sa chaîne. Les Groups, en revanche, sont traités indépendamment avec leur propre hypothèse ; le regroupement vous permet donc de contrôler l’influence des éléments les uns sur les autres et d’évaluer les résultats de correspondance d’un seul coup d’œil. Le regroupement peut également réduire le temps de correspondance.
1

Créez le group PatientDataArea

  1. Cliquez sur Create Element et sélectionnez l’élément Group dans la liste déroulante. Renommez-le “PatientDataArea”.
  2. Dans la section Under what conditions, remplacez la valeur Element is par Optional.
Par défaut, un nouvel élément de recherche de groupe est défini comme obligatoire. Si un élément obligatoire n’est pas trouvé, l’Éditeur d’activité génère une erreur et la mise en correspondance est interrompue — cela permet d’ignorer, pour un document donné, les activités qui ne conviennent pas. Dans ce tutoriel, toutefois, l’activité doit extraire des données de chaque document entrant ; rendez donc le groupe facultatif.
2

Repérez le libellé du patient à l’aide d’un élément Static Text

Dans les documents allemands, le paragraphe contenant le nom et l’adresse du patient apparaît toujours dans le champ libellé “Name, Vorname …”. Repérez ce texte dans le document et utilisez-le comme référence pour localiser les données à extraire.
  1. Cliquez sur Create Element et sélectionnez l’élément Static Text dans la liste déroulante. Renommez-le en “kwPatientTitle”.
  2. Saisissez le texte “Name, Vorname” dans le champ Text to find du volet Properties.
  3. Cliquez sur Match. Une fois le traitement terminé, le Tree of Hypotheses s’affiche sous le document.
  4. Assurez-vous qu’Advanced Designer a bien trouvé le texte statique souhaité : un point vert à côté du nom de l’élément indique une correspondance réussie.
  5. Cliquez sur le nom de l’élément dans le Tree of Hypotheses pour afficher un cadre violet autour de la région correspondante dans le document.
Si un élément n’a pas été trouvé, un point orange apparaît à côté de son nom et un cadre orange entoure l’image du document. Gardez à l’esprit que la qualité de l’hypothèse d’un élément influe sur l’état des éléments suivants dans la chaîne, ainsi que sur la qualité globale de celle-ci. Pour plus d’informations, voir Optimization of Hypothesis Matching.
3

Repérez la limite inférieure à l’aide d’un Separator

Trouvez la limite inférieure de la cellule contenant le nom et l’adresse du patient à l’aide d’un élément Separator.
  1. Ajoutez un élément Separator au groupe et nommez-le « SeparatorBottom ». Définissez sa longueur minimale sur 200.
  2. Cliquez avec le bouton droit sur l’élément, puis sélectionnez Match Element dans le menu contextuel. Le Tree of Hypotheses contient de nombreux points verts : ils correspondent à différents séparateurs répondant aux critères de recherche. Cliquez sur chaque point pour voir l’objet correspondant sur l’image.
  3. Pour affiner les critères de recherche, spécifiez la zone de recherche du Separator :
    1. Cliquez sur Match pour trouver l’élément « kwPatientTitle », qui sera utilisé comme élément d’ancrage.
    2. Dans la section Where to search du volet Properties, cliquez sur Draw on Image.
    3. Sélectionnez l’élément « kwPatientTitle » dans le document, puis cliquez sur l’icône de flèche vers le bas pour définir la zone de recherche sous le mot-clé et sur l’icône la plus proche afin de rechercher le Separator le plus proche du mot-clé.
  4. Cliquez sur Match et vérifiez qu’Advanced Designer a trouvé le Separator sous l’élément « kwPatientTitle ».
4

Recherchez le Paragraph du nom et de l’adresse

Un libellé et un séparateur sont des éléments de référence fiables pour les données du patient. Cependant, si la qualité d’impression est trop médiocre, le texte du libellé risque de ne pas être reconnu ou le séparateur de ne pas être trouvé. Pour obtenir de bons résultats d’extraction, recherchez un paragraphe situé entre le libellé et le séparateur. Un paragraphe est un bloc de texte homogène, il peut donc être trouvé même lorsque certains éléments de délimitation sont manquants.
  1. Créez un élément de recherche Paragraph et nommez-le “NameAddressParagraph”.
  2. Définissez Text alignment sur Left.
  3. Les données du patient occupent de deux à cinq lignes ; indiquez donc Line count de 2 à 5.
  4. Définissez la zone de recherche du paragraphe à l’aide du menu Add dans la section Where to search. L’élément doit se trouver sous l’élément “kwPatientTitle” et au-dessus de l’élément “SeparatorBottom”.
  5. Cliquez sur Match.
5

Créer le PatientGroup

Créez un nouvel élément Group appelé “PatientGroup” pour contenir les éléments de recherche qui extraient les données du patient.
6

Configurer le groupe répétitif NameGroup

Le nom du patient peut occuper une ou deux lignes. Pour capturer plusieurs instances d’un élément, utilisez un groupe répétitif.
  1. Créez un élément de recherche Repeating Group et nommez-le “NameGroup”. Indiquez 2 comme nombre maximal de répétitions. Rendez l’élément facultatif.
  2. Pour limiter la zone de recherche aux lignes faisant partie du paragraphe “NameAddressParagraph”, cliquez sur l’icône de l’éditeur de code sous l’image du document et collez le script suivant dans la section Conditions de recherche de l’éditeur de code :
  3. Dans le groupe répétitif, créez un élément Character String destiné à capturer une ligne de caractères. Nommez-le “NameLine”.
  4. Le texte recherché peut contenir des lettres majuscules et minuscules, ainsi qu’un ensemble de signes de ponctuation. Configurez deux jeux de caractères distincts :
    • Le premier jeu contient toutes les lettres latines majuscules et minuscules. Pour ajouter des caractères diacrités, modifiez la sous-plage Unicode ou collez directement les caractères dans le champ Caractères sélectionnés.
    • Le second jeu contient les signes de ponctuation suivants : ,-.()’. Pour éviter que la chaîne ne contienne uniquement des signes de ponctuation, définissez Portion dans le texte, % sur 40 % pour le second jeu.
  5. Désactivez l’option Rechercher des parties de mots.
  6. Indiquez la zone de recherche de l’élément “NameLine” : sous l’élément “kwPatientTitle” et au plus près de celui-ci.
  7. Cliquez sur Match et examinez l’arbre des hypothèses. Deux chaînes de caractères sont trouvées, mais la seconde contient l’adresse du patient.
  8. Pour exclure l’adresse des résultats de recherche, ajoutez une condition de recherche par script :
    1. Sélectionnez l’élément de recherche “NameLine” et ouvrez l’éditeur de code Conditions de recherche.
    2. Collez le script suivant : il suppose que la première ligne contient un nom complet si elle comporte une virgule et un espace. Si un nom complet est trouvé, le groupe répétitif cesse de rechercher une deuxième instance :
  9. Cliquez sur Match et vérifiez que le nom est correctement trouvé.
Les paramètres par défaut permettent à la chaîne de contenir jusqu’à 30 % de caractères non inclus dans un jeu. Cela aide à trouver des chaînes même lorsque certains caractères sont reconnus de manière incorrecte ou ne sont pas inclus dans le jeu (par exemple, les caractères diacrités). Vous pouvez ajuster ce paramètre en modifiant la valeur Erreurs autorisées dans le volet Properties.
7

Créez l’élément Region nommé NameRegion

Vous ne pouvez pas associer un champ à un élément avec des instances répétées ; créez donc un élément Region auxiliaire contenant toutes les régions des instances de “NameGroup”.
  1. Créez un élément de recherche Region dans le groupe “PatientGroup” et renommez-le “NameRegion”.
  2. Ouvrez l’éditeur de code et collez le script suivant dans la section Conditions de recherche :
8

Créez l’élément AddressRegion de type Region

Nous avons trouvé le nom du patient et le reste du paragraphe “NameAddressParagraph” correspond à l’adresse. Pour définir la région contenant l’adresse, excluez les rectangles “NameGroup” de la région “NameAddressParagraph”.Créez un autre élément Region dans le groupe “PatientGroup”, renommez-le en “AddressRegion” et collez le script suivant dans la section Conditions de recherche de l’éditeur de code :
La structure de l’élément de recherche doit ressembler à ceci :
Hiérarchie des éléments de recherche pour les données de patients allemands : groupe PatientDataArea contenant kwPatientTitle, SeparatorBottom, NameAddressParagraph et PatientGroup avec NameGroup, NameRegion et AddressRegion
9

Créez et associez les champs du patient

Ouvrez la boîte de dialogue Gérer les champs, créez les champs correspondants et associez-les aux éléments de recherche comme suit :Supprimez les éléments de recherche créés automatiquement pour les nouveaux champs.

Extraction du type d’arrêt maladie

Le champ du type d’arrêt maladie comporte deux cases à cocher. Elles portent les libellés « Erstbescheinigung » et « Folgebescheinigung ». Il s’agit de repérer ces libellés, puis de vérifier si des coches sont remplies à côté.
1

Créer le TypeOfSickNoteGroup et le PrimaryGroup

Créez un groupe “TypeOfSickNoteGroup”. À l’intérieur, créez un groupe “PrimaryGroup”. Rendez les deux groupes facultatifs.
2

Configurer le PrimaryGroup

  1. À l’intérieur du groupe “PrimaryGroup”, créez un élément Static Text appelé “kwCheckmark” (texte à trouver : “Erstbescheinigung”).
  2. Cet élément n’est pas lié aux éléments recherchés précédemment. Au lieu d’associer toute l’arborescence des éléments, associez uniquement le nouvel élément en cliquant sur Match Element dans le menu contextuel de l’élément “kwCheckmark”. Assurez-vous que le mot-clé a bien été trouvé.
  3. Trouvez maintenant la coche à l’aide d’un élément Object Collection, qui sert à trouver différents objets graphiques tels que des coches, des code-barres et des images.
    • Ajoutez un élément Object Collection appelé “Checkmark”.
    • Dans la liste déroulante Type du volet Properties, désélectionnez toutes les options sauf Checkmark.
    • Définissez la largeur et la hauteur minimales de l’objet sur 30, et sa largeur et sa hauteur maximales sur 130.
    • Indiquez la zone de recherche de la coche à gauche de l’élément “kwCheckmark”.
    • La coche doit se trouver approximativement sur la même ligne que le mot-clé. Indiquez où doivent se situer les bordures supérieure et inférieure de l’élément par rapport au mot-clé en collant le code suivant dans la section Search Conditions de l’éditeur de code :
    • Cliquez sur Associer.
3

Créer et configurer le SecondaryGroup

  1. Copiez le groupe “PrimaryGroup” et renommez la copie en “SecondaryGroup”.
  2. Lorsque vous copiez un groupe, vous copiez également tous ses éléments avec leurs propriétés. Sélectionnez l’élément “kwCheckmark” dans le groupe “SecondaryGroup” et remplacez le texte à trouver par “Folgebescheinigung”.
  3. L’élément de recherche Object Collection trouve une collection de tous les objets appropriés dans la zone de recherche. Si les coches se trouvent sur la même ligne, l’élément “Checkmark” du “SecondaryGroup” peut aussi trouver la coche primaire. Pour éviter cela, excluez la coche primaire (élément “Checkmark” du “PrimaryGroup”) de la zone de recherche de l’élément “Checkmark” du “SecondaryGroup”.
  4. Cliquez sur Associer.
La structure de l’élément de recherche doit ressembler à ceci :
Hiérarchie des éléments de recherche pour le type d’arrêt maladie allemand : TypeOfSickNoteGroup contenant PrimaryGroup et SecondaryGroup, chacun avec un mot-clé kwCheckmark et des éléments Checkmark
4

Créer et mapper les champs du type d’arrêt maladie

Ouvrez la fenêtre Gérer les champs, créez les champs correspondants et mappez-les aux éléments de recherche comme suit :Supprimez les éléments de recherche créés automatiquement pour les nouveaux champs.

Extraire les données du médecin

Le dernier bloc de données sur ces documents contient les données et la signature du médecin. Trouvez d’abord la zone qui contient les données, puis extrayez un paragraphe avec les informations du médecin et une région d’image contenant la signature.
1

Créez « DoctorAreaGroup » et « DataArea »

  1. Créez un élément Group nommé “DoctorAreaGroup” et définissez cet élément comme facultatif.
  2. Pour trouver le libellé de la zone, créez un élément Static Text nommé “kwDoctorTitle” (texte à rechercher : “Unterschrift des Arztes”).
  3. À l’intérieur du groupe “DoctorAreaGroup”, créez un autre groupe nommé “DataArea”.
2

Ajoutez les quatre Separator de bordure

La zone qui contient les informations et la signature du médecin est formée d’une combinaison de quatre séparateurs situés autour de l’élément “kwDoctorTitle”. Configurez les éléments de manière à ce qu’Advanced Designer puisse les trouver même si “kwDoctorTitle” n’a pas été trouvé.Dans le groupe “DataArea”, créez quatre éléments de recherche Separator avec les propriétés suivantes :Désactivez l’option Fits entirely within search area pour les quatre éléments.
3

Créez l’élément BoxRegion

Créez un élément de recherche Region nommé “BoxRegion” et définissez la zone de recherche : à gauche de “SeparatorRight”, à droite de “SeparatorLeft”, au-dessus de “SeparatorBottom” et en dessous de “SeparatorTop”.Cette région correspond à la zone délimitée par les quatre séparateurs — son utilisation évite de devoir spécifier manuellement les zones de recherche pour la signature et les informations du médecin.
4

Créez le groupe DoctorGroup

Créez un nouveau groupe nommé “DoctorGroup” à l’intérieur de “DoctorAreaGroup” pour y placer les éléments de signature et d’information.
5

Ajoutez l’Object Collection nommée Signature

Pour localiser la signature du médecin, créez un élément Object Collection à l’intérieur de “DoctorGroup” avec les paramètres suivants :
6

Ajoutez le Paragraph DoctorInformation

Pour extraire les informations textuelles de la zone, créez un élément Paragraph avec les paramètres suivants :
7

Vérifiez que les éléments ont bien été trouvés

Cliquez sur Match et assurez-vous que les éléments sont trouvés correctement.La structure des éléments de recherche doit ressembler à ceci :
Hiérarchie des éléments de recherche pour les données du médecin allemand : DoctorAreaGroup contenant kwDoctorTitle et DataArea (avec quatre Separator de bordure et BoxRegion), ainsi que DoctorGroup avec Signature et DoctorInformation
8

Créer et associer les champs du médecin

Ouvrez la boîte de dialogue Manage Fields, créez les champs correspondants et mappez-les aux éléments de recherche comme suit :Supprimez les éléments de recherche qui ont été créés automatiquement pour les nouveaux champs.

Tester l’activité

Tous les éléments de recherche et les champs nécessaires sont désormais configurés. Sélectionnez tous les documents, cliquez sur Associer, puis passez à l’onglet Champs pour examiner les régions de champ sur les images du document. Gardez à l’esprit qu’une région n’est transmise à un champ que si elle appartient à l’hypothèse du meilleur chemin. Une fois satisfait des résultats, cliquez sur l’icône de copie au-dessus de l’image du document pour copier l’étiquetage prédit vers l’étiquetage de référence.

Étapes suivantes

Étape 8. Configurer l’activité Arrêt maladie BE-NL

Configurez l’activité Extraction Rules pour les arrêts maladie néerlandais et belges.

Vue d’ensemble du tutoriel

Retour à l’introduction du tutoriel.