FR 2963138 A1 20120127 FR 1056030 A 20100723 I PROCEDES DE CODAGE ET DE LECTURE DE DONNEES La présente invention concerne les procédés de codages de données et la génération d'un ensemble de symboles graphiques notamment sur un support physique. Plus particulièrement, l'invention concerne l'encodage de données comportant une police de caractère ou de balise. Plus particulièrement, l'invention concerne le codage et l'impression de motifs de redondance permettant une lecture sans ambigüité des symboles. Il existe des systèmes de codages de données sous forme de représentation graphique lisible par un lecteur optique. Notamment, les 0 codes barres représentent des données qui peuvent être imprimées sur de nombreux supports physiques et peuvent être utilisés en informatique également. En revanche, un inconvénient est que la capacité d'information pouvant être représentées sur un code barre est limitée. De plus les codes 1s barres ne permettent pas de coder différents types de données telles que des caractères comportant différentes types de polices. Il existe des représentations utilisant une symbologie sous forme de DOT de couleurs, tels que décrit dans les brevets WO 03/025847 et/ou 20 WO 20061087446 où les DOTS sont noirs et blancs. Les DOTs représentent des symboles comportant un certains nombres de colonnes et de lignes et permettent de coder des données comportant un type ou une police. Un problème majeur rencontré de l'utilisation des symboles formés de DOTs est le compromis à concevoir entre la taille d'une 25 impression d'un ensemble de symboles et la discrimination lors de la lecture optique des symboles. En effet, il est important de garantir à un utilisateur que les symboles lus sont bien les symboles générés. Notamment, lors de la lecture le lecteur optique peut être apposé sur le symbole de manière non optimal ou 30 encore le support peut être vieillissant ou avoir subi une usure ne permettant pas une bonne distinction des niveaux de gris entre les DOTs clairs ou blancs et les DOTS noirs ou foncés. Une impression superposée, telle qu'une signature par exemple, peut également nuire à la lecture de tels symboles ou encore une pliure ou une froissure du support qui peut être en papier ou en tissu. Pour remédier à ces inconvénients l'invention propose une solution palliant aux inconvénients précités. Un but de l'invention est de générer une symbologie comprenant une pluralité de DOTs agencés sous forme de symboles, les symboles a o formant une matrice comprenant un agencement d'un ensemble de DOTs permettant une lecture sans ambigüité et minimisant les erreurs de lecture. L'invention permet de considérer non plus chaque symbole pris indépendamment mais un ensemble de symboles juxtaposés et formant une matrice comprenant un entête, un corps de DOTs représentant les données 15 à coder et un pied. L'invention comprend la génération de lignes de DOTs permettant de coder et décoder l'agencement des symboles juxtaposés dans une telle matrice. En outre, l'invention permet de générer une première ligne de DOTs comprenant des DOTs noirs indiquant le nombre de colonnes d'un symbole, la fin du symbole et le début du symbole suivant. 20 Avantageusement, l'invention comporte d'autres lignes de redondance permettant d'assurer la reconnaissance de la séquence des symboles juxtaposés. Enfin, l'invention permet de générer de telles lignes dans le corps de la matrice composée d'une pluralité de symboles, dans son entête et dans son pied. 25 Avantageusement, le procédé de génération de symboles graphiques de représentation de données comprend : ^ une première étape de codage de données, chaque donnée comprenant une police, la numérisation desdites données 30 comprenant la numérisation de leur police ; ^ une étape de génération de symboles, chaque symboles comprenant un ensemble 2D de DOTs, chaque DOT comprenant une couleur et une forme rectangulaire ou carré, chaque symbole comprenant au moins deux colonnes de DOTs comprenant au moins une ligne formant un entête, une pluralité de lignes formant un coeur et au moins une ligne formant un pied. Avantageusement, l'étape de génération comprend : ^ la génération d'un premier paramètre définissant le type de s données encodées dans un symbole le nombre de colonnes de chaque symbole étant ajustable selon le premier paramètre, un DOT étant généré à une position prédéterminée d'une ligne prédéfinie du coeur du symbole permettant d'indiquer la dernière colonne ; sa ^ la génération d'au moins un DOT permettant de coder la police des données encodées dans un symbole ; ^ la génération d'une matrice rectangulaire de DOTs formée de la juxtaposition d'un ensemble de symboles, la matrice comprenant une taille de colonne égale à la taille des colonnes de chaque 1s symbole, dans laquelle au moins une première ligne de DOTs permet d'encoder le séquencement des symboles, le nombre de symboles ainsi que le nombre de colonnes de chaque symbole, ces données étant appelées données de séquencement. 20 Avantageusement, la matrice comprend un entête formée de l'ensemble des entêtes des symboles juxtaposées et un coeur formé de l'ensemble des coeurs des symboles juxtaposés et un pied formé de l'ensemble des pieds des symboles juxtaposés, la première ligne étant définie dans le coeur de la matrice. 25 Avantageusement, le pied d'un symbole comprend deux lignes, l'entête d'un symbole comprend une ligne et le coeur d'un symbole comprend huit lignes. Avantageusement, le codage des données comprend l'attribution d'une couleur parmi le blanc et le noir à chaque DOT. 30 Avantageusement, la matrice comprend une seconde ligne dont la position dans l'entête est prédéterminée permettant une redondance des données de séquencement, la seconde ligne étant la négative de la première ligne. Avantageusement, la matrice comprend une troisième ligne dont 3s la position dans le pied est prédéterminée permettant de corréler une information d'échelle graphique, permettant de définir le pas d'un dot de la matrice, avec les données de séquencement d'un symbole ayant un nombre impair de colonnes juxtaposé à un symbole ayant un nombre pair de colonnes. Avantageusement, chaque symbole comprend une pluralité de structures, une structure étant définie par une pluralité de colonnes de DOTs, la longueur des colonnes des structures étant identique à celle du coeur de données du symbole, une structure comprenant un type prédéfini, le type d'une structure étant associé à un nombre de colonnes, l'étape de génération i0 d'une matrice rectangulaire de DOTs comprenant la génération d'une séquence de DOTs dans les deux premières colonnes de chaque symbole définissant au moins le nombre de structures comprises dans chaque symbole ainsi que leur type, une ligne de DOTs dans le symbole codant l'agencement de chacune des colonnes du symbole étant générée de ss manière à différencier deux structures juxtaposées selon le principe qu'un DOT de couleur noire est généré dans ladite ligne lorsque la colonne générée appartient à la même structure que la colonne précédente. Avantageusement, le procédé de décodage d'une symbologie 20 composée d'une matrice de dots noirs et/ou blancs juxtaposés entre eux forment un bloc rectangulaire, le procédé étant mis en oeuvre au moyen d'un lecteur optique. Avantageusement, le procédé comprend : ^ une première étape de repérage de la position de la matrice sur un 25 support physique ^ une seconde étape de détection de l'orientation de la matrice ; ^ une troisième étape de détermination du pas d'un dot ; ^ une quatrième étape de détermination d'un ensemble de paramètres, dit de séquencement des symboles, dont leur nombre, 30 leur séquencement et le nombre de colonnes de chaque symbole, ^ une cinquième étape de contrôle de redondance des paramètres de séquencement des symboles. Avantageusement, la seconde étape comprend la détermination d'une pente par rapport à un axe vertical ou horizontal et l'application d'un correctif permettant d'opérer sur une forme rectangulaire. Avantageusement, la cinquième étape permet de générer un s coefficient de qualité de l'information décodée. D'autres caractéristiques et avantages de l'invention seront présentés dans une description détaillée & illustrée par les figures suivantes : à l'aide de la description qui suit, faite en regard des dessins annexés qui 10 représentent : ^ figure 1 : des étapes du procédé d'encodage de l'invention permettant la génération d'un ensemble de symboles sur un support physique ; ^ figure 2 : les principales étapes de génération d'une matrice selon 15 l'invention ; ^ figure 3: la génération de DOTs permettant de connaitre la disposition des symboles, leur agencement et leur nombre ; ^ figure 4: les étapes du procédé de décodage de l'invention permettant la lecture des données encodées par le procédé 20 d'encodage ; ^ figure 5: un premier exemple d'un symbole généré selon le procédé de l'invention ; ^ figure 6: un second exemple d'un symbole généré selon le procédé de l'invention ; 25 ^ figure 7: un troisième exemple d'un symbole généré selon le procédé de l'invention. Dans la description qui suit, l'invention nécessite une convention de sens de lecture des informations. L'invention est indépendante de cette 30 convention. On nomme un DOT positionné avant un autre DOT dans le sens horizontal, par exemple quand une ligne est considérée, un DOT qui se situe en amont d'un autre DOT dans le sens de lecture conventionnel de gauche à droite. De manière analogue, on nomme un DOT positionné avant un autre DOT dans le sens vertical, par exemple quand une colonne est considérée, un DOT qui se situe en amont d'un autre DOT dans le sens de lecture conventionnel de haut en bas. La figure 1 représente un schéma de principe de fonctionnement des étapes principales permettant la génération de symboles. Une première étape de codage, noté C, permet de coder des données d'un flux d'information. Ces données peuvent être un ensemble de 10 caractères comportant une police. Différents types de polices peuvent être codées selon le principe de l'invention, par exemple la police peut être une police de caractère ou une police de balise. Un calculateur K permet de mettre en oeuvre l'étape de codage de 15 l'information. Le codage comprend la numérisation de données ou le traitement de données déjà numérisées. L'étape de codage permet, en outre, d'encapsuler les données codées par un entête de données et un pied de données. Outre l'encapsulement des données encodées par un entête et un 20 pied, les données sont ordonnées préférentiellement de manière binaire dans un corps, appelées également coeur entre le pied et l'entête. La seconde étape, noté G, du procédé de l'invention permet d'associer une symbologie au codage des données. Il s'agit d'une étape de génération de symboles graphiques S. La symbologie comprend la définition 2s d'un ensemble de DOTs. Un DOT est une forme physique de type rectangulaire ou un carré comprenant une couleur. Le mode préféré du procédé de l'invention comporte la génération de DOTs carrés. Ces derniers sont agencés sur au moins deux colonnes et un certain nombre de lignes de manière à définir un symbole 3. Le symbole 30 permet de coder une ou des données à encoder selon le principe de l'invention. Un symbole est généré par le procédé de l'invention. II comporte un entête comportant au moins une ligne, un coeur comportant une pluralité 35 de lignes et un pied comportant au moins une ligne. Un mode premier préféré de l'invention concerne la génération d'un symbole qui comprend un entête d'une ligne, un corps de DOT de 8 lignes et un pied de 2 lignes. Dans un mode préféré de l'invention, un DOT a une couleur unie et remplit une forme physique, elle est préférentiellement blanche ou noire. Un avantage du choix de ces couleurs est de faciliter la discrimination des DOTs lors d'une lecture des symboles. ~o La figure 1 représente un exemple de symbole 3 comprenant 3 colonnes de DOTs agencés sur 11 lignes dont une ligne d'entête, 2 lignes de pied et 8 lignes de coeur. La figure 1 représente une étiquette 1 et une matrice 2 imprimée 15 comprenant une pluralité de symboles 3 juxtaposés. La matrice 2 peut être lue par un détecteur optique L, par exemple infrarouge. Dans d'autres modes de réalisations la matrice peut-être imprimée sur n'importe quel support de type papier, plastique, ou tout autre support imprimable. 20 La figure 2 représente les principales étapes du codage de l'information et de la génération de la symbologie selon le procédé de l'invention. Le codage comprend une étape de détermination D du type 25 d'information à coder et de l'identification d'une police éventuelle associée à l'information. On entend par information un ensemble de données ordonnées et typées. Cette étape permet en outre de répartir les données selon un ou plusieurs symboles selon des critères prédéterminés. Une étape, notée Nb C, de détermination du nombre de colonnes 30 de chaque symbole à générer selon les données à encoder ainsi que la définition des DOTs associés. Enfin une étape, notée S, de génération des symboles selon le codage des informations. L'étape de génération des symboles comprend l'agencement des DOTs de données ainsi que leur agencement dans l'entête 35 et le pied de chaque symbole. Une dernière étape, notée M, de génération d'une matrice permet de définir un ensemble de symboles juxtaposés qui peuvent être imprimés sur un support physique. La figure 3 représente une matrice générée par le procédé de l'invention. Dans l'exemple de la figure 3, la matrice générée comprend une première partie FI comprenant une pluralité de DOTs ordonnées en lignes et colonnes définissant les données encodées par l'étape d'encodage de l'information. En outre, la matrice comprend une seconde partie F2 ~o définissant l'entête de la matrice composée d'une pluralité de DOTs. L'entête comprend des motifs formés de DOTs permettant notamment la reconnaissance du symbole par un lecteur optique. La matrice comprend une troisième partie F3 comprenant une pluralité de DOTs ordonnées en lignes et colonnes définissant un pied de 15 matrice. Le pied de la matrice comprend des motifs formés de DOTs permettant de déterminer notamment le pas d'un DOT, c'est-à-dire sa taille en pixels. Avantageusement, cette information permet à un lecteur optique de détecter la taille d'un DOT et d'adapter l'interprétation des données au pas de lecture de la symbologie à analyser. 20 Dans l'exemple de la figure 3, la matrice comprend une pluralité de symboles juxtaposés, notés S1, S2, S3, S4, S5, S6, S7, de différentes tailles. Chaque symbole comprend un nombre de lignes identiques et un nombre de colonnes propre à chaque symbole. 25 Un problème qui se pose lors de la lecture et du décodage de la matrice est alors la discrimination des symboles générés dans une même matrice. Lors de la lecture d'une symbologie imprimée il est nécessaire de discriminer les symboles de la matrice et de s'affranchir des éventuelles erreurs de lecture. 30 Les erreurs de lecture peuvent notamment survenir du fait de la taille de la symbologie qui peut-être réduite un maximum de manière à condenser le plus possible l'information codée ou encore du fait d'un support physique souple pouvant se plier ou encore d'une impression se superposant telle qu'une signature pouvant gêner l'interprétation des données. Enfin, il est 35 possible également que les niveaux de gris des DOTs puissent être difficilement discriminables, notamment avec l'usure causé par la dégradation du support dans le temps. De manière à éviter les erreurs de lectures et à optimiser la discrimination des symboles au sein d'une même matrice, l'invention, permet de générer au moins une ligne 32 destinée à discriminer les symboles. Avantageusement, cette ligne 32 est comprise dans la première partie FI de la matrice. Elle comprend un DOT noir situé dans la dernière ligne et la dernière colonne de chaque symbole. Le DOT noir permet d'identifier le nombre de colonnes de chaque symbole et permet d'identifier la présence d'un symbole juxtaposé à un autre symbole, tous les autres DOTs de la première ligne étant blancs dans un mode préféré de l'invention. Cependant, dans d'autres modes de réalisations, certains DOTs de la ligne 32 peuvent être noirs. Dans ce dernier cas, la détermination du nombre de colonnes comprend une étape supplémentaire de comparaison de la ligne 32 avec une autre ligne de la matrice comportant des DOTs indiquant l'agencement des symboles de manière à discriminer les symboles et leur nombre de colonnes. Avantageusement, de manière à réduire le nombre d'erreurs de lecture et à améliorer la discrimination des symboles au sein de la matrice, une seconde ligne 31 de DOTs de la matrice située dans l'entête de la matrice permet également d'identifier l'agencement des symboles et le nombre de colonnes de chaque symbole. La seconde ligne 31 de DOTs est une ligne de redondance de l'information d'agencement et du nombre de colonnes de chaque symbole, ces informations étant déjà présentes dans la ligne 32. En revanche, un avantage conséquent est que la seconde ligne 31 est 30 la négative de la première ligne 32. Le DOT qui indique la présence d'une dernière colonne de chaque symbole est blanc, les autres DOTs, situés en précédemment au DOT blanc dans la ligne, étant noirs. Cette complémentarité permet de s'affranchir des erreurs de lecture provenant par exemple d'une mauvaise identification du 2963138 -10- niveau de gris, notamment lié à l'usure d'un support sur lequel la matrice est imprimée. La seconde ligne 31 comprend donc un ou plusieurs DOTs noirs qui s correspondent à une largeur en nombre de colonnes de chaque symbole. Les DOTS noirs consécutifs ont une longueur de n-1 DOTs lorsque n est le nombre de colonnes d'un symbole. Deux symboles juxtaposés sont donc séparés dans cette ligne 31 fr l'entête de la matrice par un DOT blanc. Cette configuration est so particulièrement avantageusement pour séparer les symboles les uns des autres ainsi que pour les identifier et les discriminer lors d'un décodage de la symbologie représentée par la matrice. Les premiers DOTS de chaque colonne forment la première ligne de 15 chaque symbole comme représenté sur la figure 3 ainsi que la première ligne de la matrice. Cette première ligne a pour vocation à faciliter la séparation des symboles et à déterminer leur taille en largeur. Avantageusement, cette seconde ligne peut être interprétée de manière exclusive ou en combinaison avec la première ligne de manière à 20 coupler des informations d'agencement des symboles de manière à réduire les erreurs. Enfin, une troisième ligne 33 crénelée par morceau de DOTs du pied de la matrice permet de déterminer le pas d'un DOT. Elle permet donc de 25 déterminer une échelle de lecture. La troisième ligne 33 comprend une alternance de DOTs noirs et blancs ordonnés par symboles. Un avantage de cette disposition est de pouvoir repérer notamment une alternance entre un symbole comportant un nombre impair de colonnes suivi d'un symbole juxtaposé comportant un nombre pair de colonnes. Les deux zones 36, 37 représentent deux DOTS noirs consécutifs permettant d'identifier un tel cas de figure. Cette identification permet de contrôler partiellement les informations de redondance des deux premières lignes 31, 32 de DOTs. 2963138 -11- Dans le mode de réalisation dans lequel le pied des symboles et de la matrice comporte deux lignes, la troisième partie F3 formée par l'ensemble des pieds de colonnes de chaque symbole comporte au moins pour chacune des colonnes deux DOTS superposés. s - Le DOT le plus élevé du pied, dit premier DOT du pied, représente la parité du nombre de DOTs noirs de la colonne. - Le DOT le plus bas est le dernier DOT, alternativement noir ou foncé pour les colonnes impaires ou blanc ou clair pour les colonnes paires de chaque symbole. 10 Le dernier DOT de la première colonne d'un symbole, permet donc notamment la construction d'une échelle graphique horizontale dans tous les cas de figures. 15 L'échelle graphique est constituée du dernier DOT de chaque colonne. Le dernier DOT est alternativement noir puis blanc au sein de chaque symbole. Ce dernier DOT est toujours d'une part noir pour la première colonne ainsi que pour toutes les colonnes impaires et d'autre part blanc pour les colonnes paires au sein d'un même symbole. Ainsi, dans 20 l'échelle graphique, deux DOTs noirs accolés signalent un symbole composé d'un nombre impair de colonnes. L'échelle graphique sert également à repérer la position de chaque colonne notamment en cas d'étirement horizontal des DOTs. 25 Le dernier DOT de la première colonne d'un symbole pris en considération avec le dernier DOT, lorsqu'il existe, de la dernière colonne du précédent symbole, permet donc notamment le repérage de la première colonne de chaque symbole lorsque le symbole précédent comporte un nombre impairs de colonnes 30 L'invention permet de coder des paramètres d'agencement des symboles entre eux. Notamment, deux DOTs concomitants qui permettent notamment de différencier le haut du bas de chaque symbole ainsi que la droite et la gauche. 2963138 _12_ En résumé, l'invention permet une complémentarité d'information entre la première ligne de l'entête et la dernière ligne du coeur d'un symbole. Ces deux lignes forment une séquence de DOTs permettant de coder des informations de séquencement au niveau de la matrice. 5 Lorsque le repérage de la première colonne de chaque symbole est effectué à partir de la première ligne de la matrice, pour le cas d'un symbole comprenant 11 lignes dont 1 ligne d'entête, 8 lignes de données et 2 lignes de pied, alors la kieme colonne de la matrice, correspondant à une première 20 colonne d'un symbole, comprend un premier DOT noir et en un onzième DOT noir. La (k-1}`è' colonne comprenant un premier DOT blanc et un dernier DOT blanc ou noir selon sa parité. La longueur n d'un symbole de la matrice correspondant au nombre 15 de colonnes du symbole se calcule : - soit à partir de la longueur L du segment noir de la première ligne : n = L+ PAS, ou PAS est la largeur d'un DOT ; - soit à partir de la longueur L' du segment blanc de la 9ième ligne : n = L'-i- PAS. 20 Le sens horizontal droite/gauche peut se calculer, en cas de lecture par défilement d'un lecteur, par l'analyse du pas d'un DOT et par l'analyse de la couleur des DOTS de la première ligne et/ ou de la 9`ème ligne du symbole. zs La figure 4 représente les étapes d'un procédé de l'invention de décodage d'une symbologie de type matrice telle que décrite ci-dessus. Une première étape, notée REP permet de repérer la symbologie sur le support papier par exemple à partir d'un lecteur optique. Cette étape permet de déterminer la présence et le sens de lecture de la matrice. 30 Une seconde étape, notée DET, permet de corriger et/ ou compenser une déformation de lecture. Typiquement, si le symbole représentant la matrice est lu en biais selon une diagonale par exemple, cette étape permet d'ajuster la pente des contours de la matrice de manière à lire une séquence de DOTs carrés ou rectangulaires. 2963138 - 13 - Une troisième étape, notée PAS, du procédé de décodage permet de déterminer le pas d'un DOT, c'est-à-dire la taille de la largeur et/ou de la hauteur d'un DOT en pixels. Cette étape permet de définir une échelle de lecture de manière à décoder efficacement l'information représentée sous 5 forme d'une symbologie. Une quatrième étape, notée PAR, permet de déterminer les paramètres de séquencement des symboles et le nombre de symboles composant la matrice. Cette étape permet en outre de calculer le nombre de Zo colonnes de chaque symbole. Cette étape est réalisée en analysant soit la première ligne 32 soit la seconde ligne 31. Enfin, une cinquième étape de contrôle de redondance des paramètres de séquencement par l'analyse de la similarité des informations 15 contenues dans les lignes 31, 32 et 33 permet de définir par exemple un coefficient de qualité permettant de connaitre le degré de fiabilité de l'information décodée. Un avantage de l'invention, notamment de la génération d'un entête et 20 d'un pied de la matrice correspondant aux zones FI et F2, est de permettre dans le cadre d'une lecture par un lecteur optique de fournir des informations complémentaires aux données codées dans le coeur de chaque symbole. Notamment, les informations complémentaires comprennent une symbologie permettant le repérage physique des symboles et le contrôle de 25 la structure des symboles basé sur les propriétés de l'ensemble des DOTs groupés sur une même ligne. Un avantage de l'invention est de générer des entêtes et des pieds d'une part des symboles et d'autre part de la matrice comprenant les 30 symboles de manière à ce que les pieds de chaque symbole soient compris dans le pied de la matrice et que les entêtes de chaque symbole soient compris dans l'entête de la matrice. En particulier, la présence des pieds et entêtes des symboles sont 3s nécessaires à la lecture de la symbologie sur un support physique mais ne 2963138 - 14 - sont pas nécessaire lors d'une application informatique. Ils sont donc optionnels dans le cadre d'un traitement informatique mais un avantage est de que leu présence permet une double utilisation : une utilisation par impression sur un support physique et une utilisation par décodage 5 informatique. Une fonction d'autocorrection de la symbologie par le procédé de l'invention permet de sécuriser le décodage de l'information encodée. Notamment, un contrôle de vraisemblance etlou de cohérence par 10 corrélation au DOT de parité et des DOTS de la première ligne de l'entête permet d'ajouter un contrôle supplémentaire en plus des contrôles généralement logiciels lors de l'analyse des données. Ces conditions ajoutées aux contrôles de parité permettent de corriger des erreurs au niveau de l'analyse de la symbologie composée de DOTS. 15 Un second mode préféré de l'invention concerne la génération d'un symbole qui comprend un entête d'une ligne, un corps de DOTs de 8 lignes et un pied de 5 lignes. Les symboles comportent alors 14 lignes. La ligne de DOTs de parité qui permet de déterminer la parité de 20 chacune des colonnes est alors remplacé par 4 lignes de DOTs appelés DOTs de redondance . Un symbole correspondant à ce second mode préféré de réalisation est représenté à la figure 6. Pour chacune des colonnes Cn, 4 DOTs permettent de générer un code de redondance. 25 Les quatre DOTs, considérés colonne par colonne, permettent de mettre en oeuvre un codage, tel qu'un codage de Hamming par exemple, ou n'importe quel autre codage permettant de redonder l'information. Avantageusement, les Quatre DOTs de codage permettent 30 d'effectuer une détection d'erreur pour une colonne donnée mais également une correction d'erreurs. Dans d'autres variantes de ce second mode préféré peuvent être mis en oeuvre par d'autres codes correcteurs d'erreurs. L'invention permet également de générer des symboles globaux 35 spécifiques dont le rôle est de représenter des caractéristiques de 2963138 - 15 - groupements de symboles. Ainsi, dans ce cas, à l'exclusion des premier et dernier DOTs de chaque colonne, les DOTs représentent des informations de groupement de symboles comme la parité longitudinale des DOTs noirs ou des segments noirs de chaque ligne horizontale. s Par exemple, dans un mode de réalisation, des symboles spécifiques peuvent être générés de manière à coder des informations de redondance de lignes d'une matrice comprenant une pluralité de symboles. Ces symboles sont appelés symboles de redondance. Ils ont pour caractéristique de coder une parité ou une information de redondance d'une ligne de DOTs ~o d'une pluralité de symboles. Par exemple, une matrice comporte 8 premiers symboles juxtaposés codant des informations, puis un premier symbole de redondance codant la redondance de chaque ligne des 8 symboles précédents. Enfin la matrice comporte 8 autres symboles et un second symbole de redondance codant la 1s redondance de chaque ligne des 8 autres symboles précédents. Dans ce dernier exemple, la matrice comporte 16 symboles de données et 2 symboles de redondance permettant de coder la redondance d'information longitudinale. 20 Avantageusement, les symboles de redondances comporte une information permettant de connaitre le nombre de symboles dont ils codent la redondance. Ainsi dans un mode préféré, le symbole de redondance comporte : - au moins une séquence de DOTs permettant de décoder qu'il s'agit d'un symbole de redondance ; - au moins une séquence de DOTs permettant de décoder le nombre de symboles précédents auxquels s'appliquent le calcul de redondance ; - une séquence dans chacune des lignes du symbole de redondance comprenant au moins un DOT permettant de calculer la redondance d'une ligne d'un ensemble de symboles juxtaposés. 25 3o 2963138 -16- La figure 5 représente une variante de réalisation de l'invention permettant de générer pour un symbole trois DOTs, notés T°, T', T2 de police des données codées dans un symbole. Les trois DOTs de police sont générés dans une position 5 prédéterminée de la première colonne d'un symbole. La génération de ces trois DOTs permettent de coder jusqu'à 8 polices différentes dont des polices de caractères ou de balises. Par exemple, les DOTS codant la police des données encodées w peuvent par exemple comprendre une police de caractères compatibles UNICODE et 7 classes de polices de Balises. La figure 5 représente un symbole comprenant 4 colonnes, Cl, C2, C3 et C4 et 11 lignes notées LO, L1, L2, L3, L4, L5, L6, L7, L8, L9, L10. 1s Ce symbole correspond au premier mode préféré de réalisation. La première ligne LO indique la position de la dernière colonne à partir d'un DOT blanc. La ligne LO est située dans l'entête du symbole donc dans la partie F2 de la matrice non représentée. 20 La gième ligne L8 indique également la position de la dernière colonne à partir d'un DOT noir. La ligne L8 est située dans le corps, également appelé le coeur, du symbole donc dans la partie F1 de la matrice non représentée. Enfin la onzième ligne LIO représente un crénelage de DOTS formé 25 d'une alternance de DOTs noirs et blancs. Le premier DOT de la onzième ligne de chaque symbole étant de couleur noire. Les DOTS de parité sont notés P, dont P1, P2, P3 et P4 et les DOTS de données sont notées D de DO à D25 30 Enfin une variante de réalisation permet de définir une pluralité de structures comprenant une pluralité de colonnes dans un même symbole. Ainsi selon le principe des poupées russes, une matrice comporte une pluralité de symboles, chaque symbole pouvant comporter une pluralité de 35 structures. 2963138 - 17 - Une structure permet de définir différents types de données liée entre elle par une même identité parente. A titre d'exemple on pourra citer le codage de données musicales telles que la fréquence d'une note, l'attaque d'une note et/ou la durée de la note. Un symbole peut alors coder différentes s informations relatives à la note. La matrice peut alors être une partition. Une telle possibilité permet de coder au sein du même symbole des données de différentes natures. Dans notre exemple, la séquence et le type des structures peuvent être déterminés dans les deux premières colonnes Cl et C2 de données la d'un symbole. Ces deux colonnes peuvent coder une valeur de 0 à 2047 dont chacune peut correspondre à une structure prédéfinie. Les colonnes suivantes du symboles sont des colonnes appartenant à des structures. De manière à décoder le type d'information, le lecteur optique décodera les deux premières colonnes de chaque symbole de manière à 1s connaitre le type de structure dans le symbole. ll s'agit alors de déterminer le nombre de colonnes de chaque structure au sein du même symbole car selon le type de structure le nombre de colonnes peut être variable. L'invention permet la génération d'une pluralité de DOTs, appelés DOTs de structure, permettant de connaitre l'agencement des colonnes entre 20 elles de manière à déterminer si une colonne appartient à une structure ou à une structure juxtaposée du symbole. Les DOTs de structure peuvent avantageusement être générés dans l'avant dernière ligne du corps de données. La figure 7 représente un exemple de réalisation de cette variante 25 dans laquelle les trois DOTs de structure sont notés CL. Un mode de réalisation permet de définir la convention telle que lorsqu'une colonne appartient à la même structure que la colonne précédente alors le DOT de structure de ladite colonne est de couleur noire. Cela permet lors de la génération des symboles et des structures de définir 30 un agencement qui peut être facilement identifiables. Notamment, lorsqu'une colonne d'une nouvelle structure est générée, le DOT CL est blanc. D'autres variantes de réalisations permettent de coder l'agencement des structures entre elles. Un avantage d'une telle solution, lors du décodage, est que le type et 35 le nombre de structures définis dans les deux premières colonnes d'un 2963138 - 18 - symbole peut faire l'objet d'un contrôle d'erreurs à partir de la séquence des DOTs de structure générés dans une ligne prédéterminée. On note également que la figure 7 représente une variante de s réalisation de la figure 5 permettant de générer pour un symbole 3 DOTs, notés T°, TI, T2 de police des données codées dans un symbole. Les trois DOTs sont générés dans une position prédéterminée de la première colonne d'un symbole et sont positionnés aux lignes L6, L7 et L8 de la première colonne. II s'agit d'une autre possibilité de disposition des DOTs 10 dans la colonne 1. L'invention comprend de nombreux avantages, notamment elle permet de décoder efficacement une symbologie destinée à coder des données pouvant comprendre une police ou un type. 15 Un avantage de l'invention est de contrôler des erreurs potentielles pouvant survenir lors du codage de l'information, lors de l'usure du support physique ou lors de la lecture des symboles. Les trois DOTs de police peuvent être indépendamment situés à des positions prédéterminées sur la première colonne de chaque symbole. 20 Dans le cas où les trois DOTs de police seraient générés aux lignes L6, L7 et L8, une étape de détermination du DOT indiquant la position de la dernière colonne devrait alors être implémentée de manière à lever toute ambigüité entre un DOT de police et un DOT indiquant la fin d'un symbole. 25 Lorsque le DOT en position L8ICO est de couleur blanche, il n'y a pas de changement, la ligne L8 reste la négative de la ligne L0. Lorsque le DOT en position L8ICO est de couleur noire, alors, le nombre de colonnes d'un symbole est indiqué par le nombre de DOTs 30 consécutifs de couleur blanche auxquels on ajoute le nombre « 2 ». Dans ce dernier cas, les DOTs blancs correspondent aux colonnes internes des symboles, Le premier DOT noir correspond à la dernière colonne d'un symbole et le second correspond à la première colonne du symbole suivant. 35 REVENDICATIONS1. Procédé de génération de symboles graphiques de représentation de données comprenant : ^ une première étape de codage de données, chaque donnée comprenant une police, la numérisation desdites données comprenant la numérisation de leur police ; ^ une étape de génération de symboles, chaque symboles comprenant un ensemble 2D de DOTs, chaque DOT comprenant une couleur et une forme rectangulaire ou carré, chaque symbole comprenant au moins deux colonnes de DOTs comprenant au moins une ligne formant un entête, une pluralité de lignes formant un coeur et au moins une ligne formant un pied ; caractérisé en ce que l'étape de génération comprend : ^ la génération d'un premier paramètre définissant le type de données encodées dans un symbole le nombre de colonnes de chaque symbole étant ajustable selon le premier paramètre, un DOT étant généré à une position prédéterminée d'une ligne prédéfinie du coeur du symbole permettant d'indiquer la dernière colonne ; ^ la génération d'au moins un DOT permettant de coder la police des données encodées dans un symbole ; ^ la génération d'une matrice rectangulaire de DOTs formée de la juxtaposition d'un ensemble de symboles, la matrice comprenant une taille de colonne égale à la taille des colonnes de chaque symbole, dans laquelle au moins une première ligne de DOTs permet d'encoder le séquencement des symboles, le nombre de symboles ainsi que le nombre de colonnes de chaque symbole, ces données étant appelées données de séquencement. 2. Procédé de génération de symboles graphiques de représentation de données selon la revendication 1, caractérisé en ce que la matrice comprend un entête formée de l'ensemble des entêtes des symboles juxtaposées et un coeur formé de l'ensemble des coeurs des symbolesjuxtaposés et un pied formé de l'ensemble des pieds des symboles juxtaposés, la première ligne étant définie dans le coeur de la matrice. 3. Procédé de génération de symboles graphiques de représentation de données selon la revendication 1, caractérisé en ce que le pied d'un symbole comprend deux lignes, l'entête d'un symbole comprend une ligne et le coeur d'un symbole comprend huit lignes. 4. Procédé de génération de symboles graphiques de représentation de données selon la revendication 2, caractérisé en ce que le codage des données comprend l'attribution d'une couleur parmi le blanc et le noir à chaque DOT. 5. Procédé de génération de symboles graphiques de représentation de données selon la revendication 3, caractérisé en ce que la matrice comprend une seconde ligne dont la position dans l'entête est prédéterminée permettant une redondance des données de séquencement, la seconde ligne étant la négative de la première ligne. 6. Procédé de génération de symboles graphiques de représentation de données selon la revendication 3, caractérisé en ce que la matrice comprend une troisième ligne dont la position dans le pied est prédéterminée permettant de corréler une information d'échelle graphique, permettant de définir le pas d'un dot de la matrice, avec les données de séquencement d'un symbole ayant un nombre impair de colonnes juxtaposé à un symbole ayant un nombre pair de colonnes. 7. Procédé de génération de symboles graphiques de représentation de données selon la revendication 1, caractérisé en ce que chaque symbole comprend une pluralité de structures, une structure étant définie par une pluralité de colonnes de DOTs, la longueur des colonnes des structures étant identique à celle du coeur de données du symbole, une structure comprenant un type prédéfini, le type d'une structure étant associé à un nombre de colonnes, l'étape degénération d'une matrice rectangulaire de DOTs comprenant la génération d'une séquence de DOTs dans les deux premières colonnes de chaque symbole définissant au moins le nombre de structures comprises dans chaque symbole ainsi que leur type, une s ligne de DOTs dans le symbole codant l'agencement de chacune des colonnes du symbole étant générée de manière à différencier deux structures juxtaposées selon le principe qu'un DOT de couleur noire est généré dans ladite ligne lorsque la colonne générée appartient à la même structure que la colonne précédente. 10 8. Procédé de décodage d'une symbologie composée d'une matrice de dots noirs et/ou blancs juxtaposés entre eux formant un bloc rectangulaire et générée à partir du procédé de génération de symboles graphiques de l'une quelconque des revendications 1 à 7, le 15 procédé de décodage étant mis en oeuvre au moyen d'un lecteur optique, caractérisé en ce que le procédé comprend : ^ une première étape de repérage de la position de la matrice sur un support physique ^ une seconde étape de détection de l'orientation de la matrice ; 20 ^ une troisième étape de détermination du pas d'un dot ; ^ une quatrième étape de détermination d'un ensemble de paramètres, dit de séquencement des symboles, dont leur nombre, leur séquencement et le nombre de colonnes de chaque symbole, ^ une cinquième étape de contrôle de redondance des paramètres 25 de séquencement des symboles. 9. Procédé de décodage d'une symbologie composée d'une matrice de DOTs selon la revendication 8, caractérisé en ce que la seconde étape comprend la détermination d'une pente par rapport à un axe 30 vertical ou horizontal et l'application d'un correctif permettant d'opérer sur une forme rectangulaire. 10. Procédé de décodage d'une symbologie composée d'une matrice de dots noirs selon la revendication 8, caractérisé en ce que la cinquièmeétape permet de générer un coefficient de qualité de l'information décodée.