OCV/OCR
L’outil OCV/OCR lit et vérifie les chaînes de caractères en utilisant les polices apprises. Les outils OCV/OCR comprennent les fonctions suivantes :
- OCRMax : Entraîne, lit et vérifie les caractères des chaînes textuelles.
- OCRMaxSettings : Fournit un accès par programmation aux paramètres de segmentation et à d’autres paramètres avancés de lecture de texte.
OCV/OCR – Présentation
In-Sight Explorer propose deux méthodes différentes de vérification optique de caractères (OCV) et de reconnaissance optique de caractères (OCR) afin d’inspecter les chaînes de texte alphanumériques dans une image : les fonctions OCRMax et OCRMaxSettings.
Fonctions OCRMax et OCRMaxSettings
La fonction OCRMax effectue une reconnaissance optique des caractères (OCR) par le biais d’un processus de segmentation et de classification. La segmentation survient en premier, utilisant des techniques de seuillage pour identifier les zones de l’image semblant contenir des lignes de texte. Une fois le texte segmenté en caractères, les caractères sont appris et stockés sous forme de base de données. La classification survient pendant l’exécution, assurant la lecture de tout texte trouvé après exécution de la segmentation. Pour cela, les images des caractères segmentés sont comparées aux caractères appris dans la police.
Segmentation
Pendant le processus de segmentation, la fonction OCRMax détermine l’emplacement de la ligne de texte dans la ROI, et calcule l’angle, l’inclinaison et la polarité du texte. La région est ensuite normalisée pour supprimer les bruits indésirables avant d’être binarisée en pixels de premier plan et d’arrière-plan. Dans l’image binarisée, une analyse des blobs est effectuée pour produire des fragments de caractère. Chaque fragment de caractère représente un seul blob. Les fragments de caractère sont ensuite regroupés pour former des caractères, qui sont affectés à un rectangle de caractère.
La ligne de texte dans la ROI est divisée en images des caractères individuels, et chaque caractère est inclus dans un rectangle de caractère non modifiable. La ROI définit l’emplacement approximatif, l’angle et l’inclinaison de la ligne de texte. Les paramètres Gamme d’écart angulaire et Plage d’inclinaison de l’onglet Segmentation peuvent être utilisés pour compenser les variations, si nécessaire.
Classification
Une fois la segmentation terminée et les caractères entraînés dans une base de données de polices, la classification des caractères dans les images de production commence. La classification prend des images de caractères segmentés en entrée et identifie la lettre correspondante. En classant toutes les images de caractères segmentés dans une ligne de texte, la chaîne entière de la ligne de texte est renvoyée.
La classification a lieu après l’apprentissage. Pendant l’apprentissage, chaque caractère reçoit un titre basé soit sur une chaîne de caractères renseignée, soit sur des valeurs attribuées par l’utilisateur. Une fois qu’un groupe de caractères a été entraîné et que ces caractères ont été regroupés dans une police, la classification implique de comparer les images de production avec les caractères de la police et de renvoyer le caractère le plus plausible ainsi que son score.
Chaque caractère est entraîné à partir d’un ou plusieurs exemples des caractères à classer. Les caractères sont regroupés dans une police, stockée dans la structure de données OCRMax de la fonction OCRMax. La police comprend tous les caractères entraînés ; chaque caractère est composé de son nom et d’une image de son rectangle de caractère et des informations qu’il contient (par exemple, l’encre du texte).