Passer au contenu principal
Si vous devez détecter une chaîne de texte statique et que vous savez que ce champ tient toujours sur une seule ligne dans toutes les images, il est conseillé de saisir la valeur du texte sans espaces. Cela accélère la recherche et n’affecte pas la qualité de l’hypothèse trouvée.
Cela n’est vrai que si le texte statique du libellé a été reconnu sans erreurs. En effet, le nombre maximal d’erreurs (défini pour les éléments Static Text par deux paramètres, Max number of errors et Max error percentage) correspond au nombre d’erreurs dans un mot.Ainsi, si Max number of errors est défini sur 1, que le libellé se compose de 3 mots et que la valeur du Static Text est saisie sans espaces, FlexiLayout Studio ne peut pas faire plus d’une erreur lors de la reconnaissance. Lorsqu’il est saisi sans espaces, FlexiLayout Studio le considère comme un seul mot, quel que soit le nombre réel de mots qu’il contient.En revanche, si vous séparez les mots du libellé par des espaces, le nombre ou le pourcentage d’erreurs autorisé s’appliquera à chacun des mots saisis dans le champ Texte de recherche. Si des erreurs de reconnaissance sont présentes dans un Static Text, l’hypothèse est pénalisée selon un certain algorithme, et la qualité des hypothèses avec et sans espaces peut être différente.

Le projet exemple Spaces.fsp

Le projet Spaces.fsp (dossier %public%\ABBYY\FlexiCapture\12.0\Samples\FLS\Tips and Tricks\Spaces in StaticText\Project1) montre différentes méthodes pour travailler avec les éléments Static Text. Le projet comporte deux pages :
  • Page 1 – La qualité de l’image est bonne.
  • Page 2 – Le nom du champ de données est bruité.
L’objectif est de trouver le champ de données « Father’s name » correspondant à l’intitulé « Please indicate your father’s name here: ».
Capture d’écran de la fiche du document exemple utilisée dans le projet Spaces.fsp, montrant l’intitulé du champ 'Please indicate your father's name here:' au-dessus du champ de données Father's name.

Saisissez la valeur du texte statique comme un seul mot sans espaces

Le projet contient un élément Static Text nommé NameOfFatherHeader. Sa valeur est définie comme un seul mot sans espaces (c’est-à-dire Pleaseindicateyourfather’snamehere:). La casse du nom n’a pas d’importance. Toutes les autres propriétés de l’élément conservent leurs valeurs par défaut. Le nombre maximal d’erreurs dans le nom est de 10 caractères (30 % des 35 caractères qui composent le texte). Après avoir exécuté la procédure de mise en correspondance FlexiLayout en sélectionnant la commande Associer, vous verrez que le nom a été détecté avec succès sur les deux pages. Cependant, sur la Page 2, la Chain quality de l’hypothèse de l’élément est d’environ 0.994, car elle a été pénalisée en raison de l’erreur de reconnaissance causée par le bruit sur le document.
Capture d’écran des résultats de mise en correspondance FlexiLayout dans ABBYY FlexiLayout Studio pour le projet Spaces.fsp, montrant l’élément Static Text NameOfFatherHeader détecté sur les deux pages avec une Chain quality pénalisée sur la Page 2 parasitée.
Pour voir les résultats de la pré-reconnaissance du nom recherché, cliquez sur L (Show Recognized Lines) dans la barre d’outils et pointez le texte du nom. Le résultat de la pré-reconnaissance du nom du champ sur la Page 2 se présentera ainsi : PLEASEINDICATE|OURFATHER'SNAMEHERE:.Vous pouvez également afficher le Static Text détecté en sélectionnant l’hypothèse de l’élément NameOfFatherHeader dans la fenêtre Tree of Hypotheses, puis en déplaçant le pointeur de la souris sur la ligne Keyword dans la fenêtre Properties-Hypothesis. Dans ce cas, les résultats de la pré-reconnaissance et les erreurs détectées (le cas échéant) s’afficheront dans la partie inférieure de la fenêtre Properties-Hypotheses.
Pour détecter le champ de données “Father’s name”, le projet utilise un élément de type Character String, car le champ de données recherché n’a qu’une seule ligne et sa valeur, contrairement à Static Text, change d’un document à l’autre. L’élément est nommé FathersName, et ses propriétés sont définies dans la section Relations. Le FlexiLayout contient également un bloc portant le même nom dont la Region coïncide avec celle de l’élément FathersName (l’élément FathersName est sélectionné dans le champ Source element).

Saisissez la valeur sous forme de mots séparés par des espaces

Essayez maintenant d’effectuer la mise en correspondance du FlexiLayout avec les mêmes images, mais en saisissant la valeur de l’élément NameOfFatherHeader sous forme de mots séparés par des espaces. Pour ce faire, ouvrez le projet Spaces.fsp dans le dossier Spaces in StaticText\Project2. La valeur de l’élément NameOfFatherHeader est la suivante : Please indicate your father’s name here:. Tous les autres paramètres restent inchangés (ils sont identiques à ceux du projet Spaces.fsp situé dans le dossier Spaces in StaticText\Project1). Une fois que vous avez exécuté la procédure de mise en correspondance FlexiLayout en sélectionnant la commande Associer, vous constaterez que le nom du champ a bien été détecté sur les deux pages. Cependant, le Chain quality de l’hypothèse de l’élément NameOfFatherHeader sur la Page 2 est désormais d’environ 0,987, car l’hypothèse a été pénalisée pour une erreur de reconnaissance due à la faible qualité de l’image d’origine.
Capture d’écran de la fenêtre Properties-Hypothesis dans ABBYY FlexiLayout Studio, montrant une valeur de Chain quality d’environ 0,987 pour l’hypothèse de l’élément Static Text NameOfFatherHeader sur la Page 2.
Si la valeur Static Text que vous saisissez dans le champ Texte de recherche contient des espaces, chaque mot sera analysé individuellement et le nombre maximal ou le pourcentage maximal d’erreurs s’appliquera à chacun d’eux. La qualité finale de l’hypothèse Static Text dépendra alors de la qualité de chacun de ces mots.