# ReadIDMax

La fonction ReadIDMax est utilisée pour repérer et décoder les symboles 1D ou 2D dans une région d’intérêt. La fonction peut être configurée pour une grande variété de symbologies, un certain nombre de résultats, et accepte un niveau élevé de rotation et de déformation de perspective. En option, elle peut également être utilisée pour entraîner des modèles Data Matrix et QR Code, et vérifier des mesures de qualité.

### Symbologies 1D/Stacked

La fonction ReadIDMax prend en charge le décodage de plusieurs symbologies 1D/Stacked dans la même image, notamment les types suivants :

- Code 128
- Code 39
- Interleaved 2 of 5
- UPC/EAN
- Code 93
- Codabar
- PDF 417

Remarque : Les symbologies 1D/Stacked ne nécessitent aucun apprentissage.

#### Points de motif de repérage 1D :

Pour les codes barres, les points de modèles de symbole sont centrés sur chacune des quatre cellules d’angle du symbole. Le point 0 est la cellule située dans le coin supérieur gauche, le point 1 est le coin inférieur gauche, le point 2 est le coin inférieur droit et le point 3 est le coin supérieur droit.

### Symbologies 2D

La fonction ReadIDMax peut repérer et décoder les symboles Data Matrix 2D et QR Code. La fonction peut repérer plusieurs symboles 2D, mais contrairement aux symboles 1D, tous les symboles doivent présenter la même symbologie. Par exemple, si l’image contient un mélange de symboles Data Matrix et QR Code, et que le paramètre Groupe de symbologie de la fonction est défini sur Data Matrix, la fonction ignore les symboles QR Code et ne renvoie que les symboles Data Matrix.

La fonction peut être entraînée à décoder le même type de symbole 2D, en déterminant la taille de la grille du symbole, le type de symbologie 2D et la méthode de vérification et de correction d’erreurs (ECC) utilisée par le symbole pour vérifier l’exactitude des données qu’il contient.

Remarque : Cognex recommande d’entraîner la fonction lorsque les symboles 2D utilisés dans l’application partagent tous les mêmes caractéristiques. À titre d’exemple, si la taille de la grille ou la polarité des symboles 2D varient, n’effectuez pas d’apprentissage de la fonction et permettez-lui de prendre en compte tous les paramètres possibles lors du décodage d’un symbole 2D.

L’apprentissage de la fonction ReadIDMax peut améliorer ses performances, en particulier lorsque tous les symboles à décoder partagent les mêmes caractéristiques, tandis que l’absence d’apprentissage de la fonction lui permet de décoder une plus grande variété de symboles sans avoir à la reconfigurer.

#### Points de motif de repérage 2D :

Symboles 2D Data Matrix : Pour les symboles de matrice de données, Data Matrix, les points de motifs de symbole sont centrés sur chacune des quatre cellules représentant les angles. Également appelée module, une cellule est un carré unique. Une cellule peut être un carré noir ou blanc. Par exemple, un symbole 10×10 est composé de 100 cellules noires et blanches. Une cellule équivaut à un bit de données du symbole. L’intersection de deux lignes pleines forme la ’limite L.’ Pendant l’apprentissage, l’angle du L doit être orienté vers le bas et la gauche. Point 0 est la cellule dans l’angle supérieur gauche du symbole, Point 1 est l’angle inférieur gauche (où les deux lignes continues se coupent), Point 2 est l’angle inférieur droit et Point 3 est la cellule de l’angle supérieur droit.

Symboles QR 2D : Pour les symboles QR, les points de modèles de symbole sont centrés sur chacune des quatre cellules d’angle du symbole. Les trois motifs de détection de position du symbole forment un ’L’.

Pendant l’apprentissage, l’angle du L doit être orienté vers le haut et la gauche. Point 0 est la cellule dans l’angle supérieur droit du symbole, Point 1 est l’angle supérieur gauche (où le modèle de détection de position central forme l’angle du ’L’), Point 2 est l’angle inférieur gauche et Point 3 est la cellule de l’angle inférieur droit.

### Configuration requise pour les images 1D/ 2D

La fonction ReadIDMax nécessite une configuration minimale avant de numériser des symboles 1D, mais les instructions suivantes doivent être utilisées pour les images d’entrée :

- La longueur de tous les symboles doit être supérieure à 50 pixels, tandis que la largeur maximale d’un module ne peut pas dépasser 10 pixels.

Remarque : Un module est l’élément le plus fin du symbole (un espace ou une barre).

- Pour les symbologies linéaires (dans lesquelles les modules ont des largeurs différentes, mais des hauteurs uniformes), un module doit faire au moins 1,6 pixel de largeur et 50 pixels de hauteur.
- La taille minimale de la zone de silence (une zone qui ne contient pas de marques à l’une des extrémités du symbole) est au moins la taille minimale spécifiée dans la spécification d’impression pour ce type de symbologie.
- Le contraste entre les modules et l’arrière-plan doit être d’au moins 32 niveaux de gris.
- Le rapport des dimensions des pixels ne peut pas être supérieur à 1,35 pour 1.

Les symboles 2D nécessitent moins d’image. En général, une zone de silence (ou marge) autour du symbole sur ses quatre côtés est égale à la largeur d’un module à l’intérieur du symbole.

### IDMax et IDQuick

La fonction ReadIDMax propose deux modes de traitement pour son algorithme de décodage :

- Choisissez IDQuick pour le décodage haute vitesse des symboles bien formés et présentant un contraste élevé.
- Choisissez IDMax pour des techniques avancées de traitement d’image et d’analyse d’image au sein d’images complexes.

Par défaut, la fonction utilise le mode IDMax. Cependant, essayez IDQuick pour déterminer son impact sur les performances de la fonction dans l’application.

#### Résultats

Seuls les symboles repérés et décodés produisent des résultats. Pour chaque symbole dans une image, la fonction ReadIDMax produit les résultats suivants par l’intermédiaire des Vision Data Access functions :

- La chaîne décodée.
- L’orientation angulaire du symbole trouvé, en degrés.
- Un emplacement (Y/X) pour le centre du symbole.
- La symbologie particulière du symbole.
- Codes et quantificateurs de la norme ISO/CEI pour identifier de manière unique la symbologie, conformément aux normes de l’industrie.

Remarque : La case à cocher Vérifier doit être activée pour générer des résultats autres que la chaîne décodée. Utilisez la fonction ValidateIDData pour gérer des mesures de vérification supplémentaires pour les symboles décodés.

## ReadIDMax – entrées

Remarque : Lors de la configuration de la feuille de propriétés de la fonction ReadIDMax, pour voir l’impact de la modification des paramètres, cliquez sur OK pour accepter les modifications et fermer la feuille de propriétés. La fonction ReadIDMax ne prend pas en charge l’affichage en temps réel des résultats lorsque la feuille de propriétés est ouverte.

Paramètre | Description
Image | Ce paramètre doit utiliser les Références à des cellules de la cellule de feuille de calcul contenant une structure de données Image. Par défaut, le paramètre fait référence à A0, la cellule contenant la structure de données Image renvoyée par la fonction . Ce paramètre peut également faire référence à d’autres structures de données Image, telles que celles renvoyées par les Fonctions Image de l’outil de vision.
Repère | Définit la région d’intérêt (ROI) par rapport à l’entrée d’un Fixture ou à la sortie du système de coordonnées de l’image d’une fonction Outils de vision. En définissant la ROI par rapport à un Repère, toute rotation ou translation de ce dernier entraînera systématiquement une rotation/translation de la ROI, le cas échéant. Le paramètre par défaut est (0,0,0), le coin supérieur gauche de l’image.
X | L’offset en X de l’origine (coordonnées du repère).
Y | L’offset en Y de l’origine (coordonnées du repère).
Thêta | La rotation par rapport à l’axe X de l’image, dans le système de coordonnées de l’image (+/-360 degrés dans le sens horaire).
Région | Aussi appelé région d’intérêt (ROI), spécifie la région de l’image qui fait l’objet d’une analyse. Effectuez un double-clic sur le paramètre Région pour créer un Mode Graphiques interactifs que vous pouvez transformer et faire pivoter. Sélectionnez ce paramètre et cliquez sur le bouton Agrandir la région dans la barre d’outils Modification du projet de la feuille de propriétés pour agrandir automatiquement la région pour qu’elle couvre l’intégralité de l’image.
X | L’offset en X de l’origine (coordonnées du repère).
Y | L’offset en Y de l’origine (coordonnées du repère).
Hauteur | La dimension le long de l’axe des x de la région. Remarque : Lors de la lecture de symbome 1D/Stacked , la fonction ReadIDMax prend en charge une taille de région maximale de 2048 pixels en hauteur sur 2048 pixels de largeur. Si les paramètres Hauteur ou Largeur sont définis sur une valeur supérieure à 2048 pixels, la fonction renvoie #ERR.
Largeur | La dimension le long de l’axe des y de la région. Remarque : Lors de la lecture de symbome 1D/Stacked , la fonction ReadIDMax prend en charge une taille maximale de 2048 pixels en hauteur sur 2048 pixels de largeur. Si les paramètres Hauteur ou Largeur sont définis sur une valeur supérieure à 2048 pixels, la fonction renvoie #ERR.
Angle | Orientation du repère.
Groupe de symbologie | Indique les groupes de symbologie à lire.
1D/Stacked (par défaut) | Sélectionne la lecture de codes 1D et Stacked.
Data Matrix | Sélectionne la lecture Data Matrix.
Code QR | Permet de sélectionner la lecture de codes QR.
Résultats maximum | Détermine le nombre maximum de symboles à rechercher et à décoder(1 à 128 ; par défaut = 1). Remarque : Si la valeur spécifiée dans ce paramètre dépasse le nombre de symboles présents dans la ROI, la fonction continue à rechercher le nombre de symboles spécifié. Si le nombre de symboles présents dans la ROI varie, le temps d’exécution de la fonction peut être réduit en diminuant le paramètre Délai d’attente.
Mode de décodage Avancé | Définit le paramètre à utiliser pour décoder les groupes de symbologies Data Matrix ou 1D/Stacked.
IDMax® (par défaut) | Lit uniquement les symboles conformes, n’essaie pas de lire les symboles non conformes.
IDQuick™ | Cette fonction est utilisée sur les symboles pouvant s’afficher déformé, tordus ou avec un arrière-plan non-uniforme. Ce mode est conçu pour les codes avec motifs de repérage « continus », et non des points séparés.
Activer l’apprentissage | Si cette option est activée, entraîne un modèle du premier symbole Data Matrix ou QR Code lu. L’apprentissage de la fonction permet d’améliorer les performances, particulièrement lorsque tous les symboles à décoder partagent des caractéristiques similaires. Les informations apprises sont conservées jusqu’à ce que cette case soit désactivée. Pour réentraîner un symbole, décochez la case, puis cochez-la à nouveau. Astuce : Il est recommandé d’avoir un seul symbole dans la région lorsque l’apprentissage est activé.
DÉSACTIVÉ (par défaut) | Ne pas entraîner de modèle.
Activé | Entraîner un modèle du premier symbole lu.
Symbologies 1D/Stacked | Indique les symbologies 1D/Stacked à lire (plusieurs symbologies peuvent être sélectionnées et lues).
Code 128 | Permet de sélectionner la lecture du Code 128. Le code 128 est une symbologie alphanumérique à très haute densité qui peut être lue dans les deux sens. La symbologie permet de coder l’intégralité du jeu de 128 caractères ASCII, plus quatre caractères qui ne sont pas des données. Un symbole en code 128 encode chaque caractère à l’aide de 11 modules noirs ou blancs, et chaque symbole comprend un caractère de somme de contrôle.
Code 39 | Permet de sélectionner la lecture du Code 39. Le code 39 (également appelé USS Code 39, BC39 et/ou Code 3 of 9) est une symbologie très utilisée, développée pour les environnements non liés à la vente, et permet de coder à la fois des lettres, des chiffres et des caractères spéciaux tels que « % » et « / ». Un symbole utilisant la symbolique du Code 39 encode chaque caractère à l’aide de 5 barres et 4 espaces, pour un total de 9 éléments, et 3 des 9 éléments sont toujours larges. Le symbole peut inclure un caractère de somme de contrôle pour la détection d’erreurs.
Interleaved 2 of 5 | Sélectionne la lecture Interleaved 2 of 5. Populaire dans les applications en entrepôt, Interleaved 2 of 5 (également appelé I2of5, I-2/5 ou ITF) est un code de longueur variable uniquement numérique. Un symbole utilisant la symbologie Interleaved 2 of 5 encode 2 caractères dans une unité de 5 barres et espaces, le caractère de position paire est codé en barres et le caractère de position impaire est codé en espaces. La symbologie Interleaved 2 of 5 ne peut coder que des données d’une longueur paire. Le symbole peut inclure un caractère de somme de contrôle pour la détection d’erreurs.
UPC/EAN | Sélectionne la lecture UPC (code universel de produit) et EAN (numérotation européenne des articles). UPC est une symbologie de longueur fixe, uniquement numérique, qui peut être lue dans les deux sens. La taille d’un symbole UPC peut varier pour s’adapter à divers processus d’impression, mais le code fonctionne mieux lorsque la hauteur du symbole est supérieure à sa largeur. Les entreprises européennes utilisent généralement le système EAN équivalent. L’UPC prend en charge la version A (version classique), la version E (version de suppression de zéros), les codes barres UPC et les encodages supplémentaires à deux et cinq caractères. EAN prend en charge les codes barres EAN-8 et EAN-13 ainsi que les encodages supplémentaires à deux et cinq caractères.
Code 93 | Permet de sélectionner la lecture du Code 93. Le Code 93 code les mêmes caractères que le Code 39, mais utilise neuf éléments de code barres par caractère au lieu de 15.
Codabar | Sélectionne la lecture Codabar (également appelée USD-4 et Code 2 of 7). Codabar est une symbologie plus ancienne qui code des chiffres.
PDF 417 | Permet de sélectionner la lecture de PDF 417. PDF 417 est un format de symboles de codes barres linéaires empilés utilisé dans de nombreuses applications, principalement les transports, les cartes d’identification et la gestion des stocks.
Symbologies empilées ou Stacked | Indique les symbologies empilées, Stacked, à lire (vous pouvez sélectionner et lire plusieurs symbologies).
PDF 417 | Permet de sélectionner la lecture de PDF417. PDF417 est un format de symboles de codes barres linéaires empilés utilisé dans de nombreuses applications, principalement les transports, les cartes d’identification et la gestion des stocks.
Paramètres lecture |
Perspective | Indique le décodage des symboles Data Matrix et QR Code avec une déformation de perspective et, en option, entraîne les symboles Data Matrix pour une déformation de perspective connue.
Minimal (par défaut) | Décode les symboles Data Matrix qui présentent une déformation de perspective minimale.
Modérée | Décode les symboles de Data Matrix, QR Code et 1D/Stacked avec une déformation de perspective ; la déformation de perspective est estimée de façon indépendante lors de l’apprentissage du modèle et la durée d’exécution.
Extrême | Décode les symboles Data Matrix avec une déformation de perspective connue. Cette perspective est apprise, puis, lors de l’exécution, le symbole est examiné dans un espace où la déformation de perspective dans l’image d’entrée est compensée à l’aide des attributs appris. Cette option requiert que le symbole d’exécution soit placé sur le même plan que celui du symbole appris. Cette option permet de décoder des symboles très endommagés et présentant une déformation de perspective connue. Remarque : Il est recommandé d’installer le système de vision de façon à ce que l’angle d’incidence (l’angle située entre l’axe optique du capteur et le vecteur normal du plan sur lequel le symbole est présenté) ne dépasse pas 40 degrés et que la résolution du symbole soit d’au moins 5 pixels par cellule.
Mode QR | Détermine le type de QR Code à lire.
QR de modèle 1
QR de modèle 2
Modèles QR 1 et 2
Micro QR
Micro QR et QR de modèle 1
Micro QR et QR de modèle 2
Tous les modes QR (par défaut)
Ignorer la polarité | Indique s’il faut lire ou non les symboles Data Matrix dont la polarité est inversée par rapport au symbole appris. Remarque : Ce paramètre est valide uniquement si le paramètre Activer l’apprentissage est Activé.
DÉSACTIVÉ (par défaut) | Ne permet pas l’inversion de polarité du modèle appris.
Activé | Autorise l’inversion de polarité du modèle appris.
Autoriser la flexibilité Dimensions de la grille | Indique s’il faut lire ou non les symboles Data Matrix et QR Code d’une taille de grille différente par rapport au symbole appris. Remarque : Ce paramètre est valide uniquement si le paramètre Activer l’apprentissage est Activé.
DÉSACTIVÉ (par défaut) | Autoriser la lecture uniquement des symboles qui ont la même taille de grille que le symbole appris.
Activé | Autoriser la lecture de symboles qui n’ont pas la même taille de grille que le symbole appris.
Checksum (somme de contrôle) | Indique si le symbole doit être validé à l’aide d’un algorithme de détection d’erreur pour garantir la fiabilité. Le checksum ne s’applique qu’aux symboles avec des algorithmes de checksum inclus dans le symbole. Chaque symbole possède son propre algorithme de checksum unique. Le type de checksum utilisé, le cas échéant, dépend du type de code barres sélectionné.
DÉSACTIVÉ (par défaut) | Pas de vérification du checksum.
ACTIVÉ | Checksum obligatoire pour réussir.
Remarque : Les codes barres Code 128, Code 93 et UPC/EAN sont validés par un checksum, une somme de contrôle, quel que soit le paramètre sélectionné. Si Checksum est activé pour tout autre code barres et qu’aucun checksum n’est encodé, la lecture échouera.
Polarité | Indique la couleur des symboles.
Noir | Le symbole est plus sombre que l’arrière-plan.
Blanc | Le symbole est plus clair que l’arrière-plan.
Auto (par défaut) | La fonction sélectionne automatiquement la polarité du symbole.
Omnidirectionnel | Indique le sens de projection des lignes de balayage dans la région, afin de détecter tous les éléments du code barres. Au moins une ligne de balayage doit être projetée sur chaque élément du code barres pour un décodage réussi.
0 = OFF | Les lignes de balayage sont projetées dans une direction pour détecter un code barres parallèle à la région.
1 = ON (par défaut) | Les lignes de balayage sont projetées sous différents angles pour détecter un code barres qui a été pivoté par rapport à la région.
Mode de tri | Indique l’ordre, le cas échéant, dans lequel les résultats sont renvoyés. Remarque : Pour un tri précis des symboles, le paramètre Résultats maximum doit être défini sur une valeur supérieure ou égale au nombre de symboles contenus dans l’image.
Aucun (par défaut) | Trie les résultats dans l’ordre de leur décodage. Les résultats non décodés apparaissent après les résultats décodés.
De haut en bas | Trie dans l’ordre croissant des lignes.
Gauche à droite | Trie dans l’ordre croissant des colonnes
Alphabétique | Trie les résultats par ordre alphabétique.
Longueur de la chaîne | Trie les résultats par longueur croissante de chaîne.
Lignes | Trie les résultats en regroupant les symboles dans des lignes, puis les trie de gauche à droite au sein de chaque ligne. Lors d’un tri par ligne, deux symboles sont considérés comme faisant partie de la même ligne si le centre de l’un des symboles recouvre verticalement une partie de l’autre symbole.
Colonnes | Trie les résultats en regroupant les symboles dans des colonnes, puis les trie de haut en bas au sein de chaque colonne. Lors d’un tri par colonne, deux symboles sont considérés comme faisant partie de la même colonne si le centre de l’un des symboles recouvre horizontalement une partie de l’autre symbole.
Autorise des symboles 1D identiques | Indique si la fonction doit décoder tous les symboles dans la région, même s’ils sont identiques. Les deux symboles sont considérés comme étant identiques s’ils ont la même longueur, le même type de symbologie et la même chaîne décodée.
DÉSACTIVÉ (par défaut) | Renvoie un seul résultat si plusieurs symboles sont décodés.
ACTIVÉ | Renvoie tous les résultats, même s’ils sont identiques.
Etendre UPC-E | Indique si le symbole décodé renvoie la chaîne à 6 chiffres UPC-E ou la chaîne équivalente développée UPC-A à 11 chiffres.
DÉSACTIVÉE | Le symbole décodé renvoie la chaîne UPC-E à 6 chiffres.
ACTIVÉ (par défaut) | Le symbole décodé renvoie la chaîne équivalente UPC-A développée sur 11 chiffres.
Remarque : L’option Etendre UPC-E sert uniquement aux symboles 1D/Stacked.
Vérifier | Indique si les tests de qualité d’impression (également appelés mesures de vérification de la qualité) sont effectués.
DÉSACTIVÉ (par défaut) | Ne teste pas la qualité.
ACTIVÉ | Teste la qualité et affiche des résultats sur la feuille de calcul.
Remarque : Si la chaîne ne peut pas être décodée, #ERR est renvoyé pour tous les résultats automatiquement insérés dans la feuille de calcul. Tous les types de code, à l’exception de PDF 417, prennent en charge les mesures de vérification de la qualité.
Délai d’attente | Indique la durée, en millisecondes, (0 à 30000 ), pendant laquelle la fonction recherche un symbole ID valide avant que son exécution ne soit interrompue et que #ERR ne soit renvoyé. le réglage de la valeur sur 0 désactive le réglage et aucun délai n’est appliqué. Remarque : La fonction ReadIDMax dépasse parfois la valeur définie pour le paramètre Délai selon des pourcentages différents. Si cela se produit, diminuez la valeur du paramètre Délai d’attente pour compenser l’excédent.
Afficher | Détermine le mode d’affichage des graphiques ReadIDMax superposés à l’image. Remarque : Le paramètre Afficher n’est implémenté que pour les symboles Data Matrix et QR Code.
masquer tout (par défaut) | La limite de la région d’image d’entrée est masquée, sauf si la cellule contenant la fonction ReadIDMax est en surbrillance dans le tableur.
graphiques de résultats seulement | Les graphiques de résultats (Data Matrix et QR Code) sont toujours affichés.
entrées et graphiques de résultats | Les graphiques d’entrée et les graphiques de résultat sont toujours affichés.

## ReadIDMax – Sorties

Renvoie | Une structure de données IDMax contenant la chaîne alphanumérique décodée, ou #ERR si l’un des paramètres d’entrée est incorrect.
Résultats | Lorsque la fonction est insérée dans une cellule pour la première fois, un tableau de résultats est automatiquement créé dans la feuille de calcul. Le nombre de chaînes indexées renvoyées dans le tableau de résultats est égal à la valeur en entrée du paramètre Résultats maximum. Si aucun symbole ne peut être localisé et décodé, #ERR est renvoyé. Remarque : Pour les symboles Data Matrix, le caractère de verrouillage de base 256 (Décimal 231 Hex E7) provoque le traitement des données sous forme d’octets, conformément aux spécifications Data MatrixISO/IEC 16022. Utilisez la fonction GetStringIDMax pour renvoyer les données encodées. Pour plus d’informations, consultez la rubrique IDMax.

## ReadIDMax Vision Data Access functions

Chaîne | GetString(IDMax, [Index]) | Renvoie la chaîne de caractères alphanumériques encodée dans le symbole indexé.

Remarque :

- Si vous décodez des symboles Data Matrix, utilisez la fonction GetStringIDMax au lieu de GetString pour obtenir des informations plus précises et plus détaillées sur le symbole décodé.