Brevet FR2769107A1 — publié le 19990402

PROCEDE DE CODAGE, EQUIPEMENT POUR LE CODAGE ET PRODUIT AINSI CODE. La présente invention concerne un procédé de marquage d'un produit, ainsi qu'un procédé d'identification de supports (objet quelconque, document papier, plantes, animal, eau) mettant en oeuvre lesdits procédés de marquage. On connaît dans l'état de la technique le brevet européen NO 80400952.0 décrivant un procédé d'impression d'un texte sur une feuille support consistant à associer à chaque caractère, quelle que soit sa typographie et ses enrichissements, une séquence de caractères codés en numérique. Ces séquences de caractères codés n'ont aucune signification pour le lecteur. Par contre, elles peuvent être retranscrites en caractères d'imprimerie par une machine complémentaire comportant une caméra apte à reconnaître les informations codées, associée à une imprimante d'ordinateur de type connu, commandée par un calculateur opérant le décodage des signaux délivrés par la caméra. Le procédé susmentionné présente deux avantages. Le premier est de permettre l'inscription sur un support quelconque, en particulier sur un support papier, sous une forme condensée et facile à exploiter par un ordinateur pour la traduction en caractères lisibles. Le deuxième intérêt est de codifier les caractères et de sécuriser l'information écrite et sa transmission par voie câblée ou hertzienne. Par contre, le procédé sus-mentionné présente des limitations car il n'est pas compatible avec la retranscription d'informations graphiques, par exemple une signature ou une image. On connaît également dans l'état de la technique la demande de brevet français nO 9200706 qui décrit un procédé de traitement d'informations graphiques dans lequel une image est divisée en S x T blocs adjacents, chaque blocs étant subdivisés en N x M cellules élémentaires. Le procédé consiste à attribuer une valeur numérique donnée Ai à chacune des cellules élémentaires d'une même catégorie (i) afin de constituer des S x T mots de M x N caractères, le nombre de mots pour une image correspondant au nombre de blocs divisant l'image, l'information graphique étant ensuite transmise sous forme de séquences de mots ainsi constitués. Les mots ainsi constitués peuvent être compilés par un algorithme pour déterminer un mot de longueur inférieure. Les procédés de l'art antérieur se traduisent par l'inscription sur un support, par exemple une étiquette, d'un ensemble de pixels habituellement blanc ou noir, de forme généralement rectangulaire, ronde ou carrée. Les défauts d'impression peuvent aboutir à des recouvrements partiels de pixels adjacents, ou à des déformations des pixels imprimés, se traduisant par des décodages erronés de l'information. On connaît également le codage à l'aide de code-barres faisant l'objet d'une normalisation internationale. Ces code-barres sont adaptés pour des applications de grande diffusion, nécessitant un consensus sur le format de codage. Le but de la présente invention est d'améliorer la fiabilité de la lecture des informations imprimées sur un support, et conférant une grande souplesse de configuration du codage, tout en autorisant la lecture et l'exploitation du code avec un équipement standard et universel. A cet effet, l'invention concerne dans son acception la plus générale un procédé de codage d'un produit consistant à apposer sur une surface d'un produit ou éventuellement d'un animal un marquage constitué par une pluralité de signes élémentaires appartenant à au moins deux types différents, ledit marquage se décomposant en une pluralité de zones de codage correspondant chacune à une information codée de nature différente, caractérisé en ce que le marquage comporte au moins une zone (2) de configuration Cp dont le contenu est variable et spécifique de chaque gamme de produits, le contenu de ladite zone de configuration déterminant une caractéristique au moins de l'une au moins des autres zones de codage variables spécifiques au produit d'une gamme donnée. Selon une première variante, le marquage comporte au moins une zone de configuration qui détermine le format des autres zones de codage. Selon une deuxième variante non exclusive de la première variante, le marquage comporte au moins une zone de configuration qui détermine les attributs des autres zones de codage. De préférence, la zone de configuration est une zone-amorce disposée au début du marquage. Selon un mode de mise en oeuvre préféré, le marquage comporte une zone de scellement dont le contenu est déterminé par le résultat d'une fonction de chiffrement appliquée à un descripteur du produit marqué. Cette zone de scellement permet de vérifier la conformité du produit marqué et l'absence de substitution. Cette variante est particulièrement adaptée au marquage de sécurité. Selon une variante préférée, le marquage est réalisé sous la forme d'une matrice de N colonnes de M éléments notamment binaires. Selon un mode de mise en oeuvre particulier, le marquage est réalisé sous forme de modifications d'une zone d'une image dont les dimensions sont très supérieures à la zone de marquage. Avantageusement, le marquage est réalisé sous forme d'une pluralité de zones Zi constituée chacune par la juxtaposition d'au moins une bande codante B(i)j, chacune de ces bandes codantes étant constituée par N pixels P(i,j)k juxtaposés. L'invention concerne également un équipement pour le codage d'un produit comportant des moyens de marquage de la surface du produit par l'apposition d'un marquage constitué par une pluralité de signes élémentaires appartenant à au moins deux types différents, ledit marquage se décomposant en une pluralité de zones de codage correspondant chacune à une information codée de nature différente, caractérisé en ce que ledit équipement comporte un calculateur pour l'apposition d'au moins une zone de configuration qui détermine une caractéristique au moins de l'une au moins des autres zones de codage. L'invention concerne enfin un produit codé présentant sur sa surface un marquage constitué par une pluralité de signes élémentaires appartenant à au moins deux types différents, ledit marquage se décomposant en une pluralité de zones de codage correspondant chacune à une information codée de nature différente, caractérisé en ce que le marquage comporte au moins une zone de configuration qui détermine une caractéristique au moins de l'une au moins des autres zones de codage. L'invention sera mieux comprise à la lecture de la description qui suit, se rapportant à un exemple non limitatif de mise en oeuvre de l'invention et se référant aux dessins annexés où - la figure 1 représente une vue schématique du code conforme à l'invention - la figure 2 représente un exemple de marquage d'un produit codé conformément au procédé faisant l'objet de la présente invention La figure 1 représente une vue schématique d'une séquence de code conforme à l'invention. Cette séquence présente une structure configurable pour chacune des applications spécifiques. La séquence comporte une première partie invariante (1) qui est l'élément codant CD de début de séquence, et une deuxième partie invariante (8) qui est l'élément codant CF de début et de fin de séquence. De préférence, ces deux parties CD et CF sont asymétriques de façon à autoriser une lecture de la séquence dans les deux sens et de déterminer le sens de lecture afin de permettre le rétablissement du sens de lecture originel. La séquence comporte de plus au moins une partie Cp de configuration (2) dont le but est de déterminer la composition du reste de la séquence. Éventuellement, une deuxième partie Cp' de configuration complémentaire à la partie (2) peut être prévue avant la partie codante CF (8). Elle permet d'inverser le sens de l'interprétation du corps de message. Les parties de configuration détermine le format (logueur, type et nature d'information) de la partie médiane (9) constituant le corps du message, tant en ce qui concerne l'organisation de la partie médiane (9), qu'en ce qui concerne son contenu. La longueur de la partie médiane (9) est libre, et déterminée par le contenu des parties de configuration Cp. Cette partie médiane (9) peut être unique, ou subdivisée en une pluralité de parties CRi (3 à 6) de longueurs identiques ou inégales. Le contenu et/ou la longueur et/ou le format de chacune des parties CRi (3 à 6) est déterminée en fonction du contenu de la zone de configuration (2). Les parties configurablesCRi (3 à 6) peuvent former un seul champ, délimité de part et d'autre par les parties de début et de fin de codage, l'absence de champ de configuration Cp étant implicitement traduit comme l'indication d'un champ médian (9) unique. I1 est possible de mémoriser une série de formats prédéfinis qui peuvent être appelés par des identifiants standardisés. Ces identifiants permettent de réduire la longueur des champ de configuration Cp et Cp. Les formats prédéfinis peuvent être mémorisés dans une base de données à laquelle un interprétateur accède par adressage direct ou crypté, pour déterminer le format du corps de message (9). Lorsque le champ médian (9) est subdivisé en plusieurs parties configurables CRi (3 à 6), les zones Cp et Cp codifient la longueur et la signification de chacune des zones, selon un codage universel pour une famille de codages paramétrables. La figure 2 représente un exemple de code imprimé en application du procédé selon l'invention. Le code se présente sous la forme d'une matrice (11) constituée par une pluralité d'éléments binaires (110) noirs ou blanc, de forme rectangulaire dans l'exemple décrit. La matrice est éventuellement précédée par une bande noire (12) facilitant la détection du début du code et la correction des erreurs d'alignement. La matrice (11) est constituée par une série de colonnes (13 à 16). Les colonnes de rang 2n-1, soit la première colonne (13) et la troisième colonne (15) sont constitués par une série d'éléments binaires correspond à un codage, par exemple au code connu sous le nom "ECO" permettant de coder les 128 symboles du standard A.S.C.I.I., sous forme de mots de 7 éléments significatifs, plus un caractère de contrôle correspondant à la parité des 7 éléments significatifs, ou un octet complet, soit 256 symboles si l'élément de parité est utilisé comme 8ème élément normal (lpoids 2**8). Ce remplacement de l'élément de parité est d'autant plus logique que l'on dispose d'une redondance d'ordre 2. Les colonnes de rang 2n sont, soit la deuxième colonne (14) et la quatrième colonne (16), sont constituées par une série d'éléments binaires correspondants chacun à l'inverse de l'élément de même rang dans la colonne précédente. La lecture du code s'effectue comme suit: On procède à l'acquisition d'une image à l'aide d'une caméra de type CCD. L'image est mémorisée, et éventuellement redressée par un programme de traitement d'image. Le redressement de l'image est facilité par la présence d'une première colonne (12) constituée par une bande noire, qui sert de référence pour la rotation de l'image enregistrée. L'image numérisée est ensuite analysée de manière à générer une matrice de valeur binaire 1 ou 0. les erreurs de lecture ainsi que les dégradation du support se traduisent par des valeurs erronées. Toutefois, les dégradations affectant un type d'inscription, par exemple les éléments binaires noirs, sont généralement sans effet sur les éléments binaires inverses, en l'occurrence blanc, et vice-versa. Ainsi, une altération du support qui provoquerait une erreur de lecture des éléments binaires noirs, mais n'affecterait pas nécessairement les éléments binaires blancs. Le traitement de l'image numérisée permettra de restituer le code original du fait de la redondance de l'information, et de la prise en compte de cette règle. I1 est possible de prévoir un chevauchement des colonnes de la matrice afin de réduire les échantillonnages erronés. I1 est également possible de prévoir que les éléments de type symétrique soient de dimensions différentes, afin d'accroître la sécurité de leur détection, ou de prévoir des éléments de type opposés présentant des formes différentes, ou encore des niveaux de gris ou de couleurs différents. Dans ce dernier cas, il est possible de définir sur un support plan une matrice à 3 ou à 4 dimensions la troisième dimension correspondant aux couleurs et la quatrième dimension correspondant à la densité. Les applications du procédé de codage selon l'invention sont multiples. Une première application concerne le codage de dessins et d'images, à des fins de tatouage et d'identification par exemple. Les dessins et les images sont de plus en plus utilisés en informatique. Leur représentation en mémoire ou sur le réseau pose le problème de l'universalité du codage de base. Il est intéressant de ramener cette représentation à un codage quasi universellement admis et utilisé, par exemple celui des tables ASCII. L'invention consiste, pour cette application, à analyser optiquement un dessin en le considérant comme composé de caractères ECO tels que décrit en référence à la figure 2, ces caractères étant simples et jointifs selon deux axes perpendiculaires. Ainsi, le dessin est décomposé en bandes ou rangées de colonnes de 8 matrices. Ces dernière correspondant chacune à un caractère ECO et peuvent être décrites par un octet pour représenter les 256 configurations possibles d'un segment. Tous les traitements informatiques, notamment de correction, de scellement ou de compression du nombre d'octets peuvent s'appliquer en fonction du niveau de sécurité ou de la qualité de reproduction choisis. Cette méthode permet également de représenter sur "papier" un dessin après divers traitements informatiques à des fins de vérification ou d'archivage, et de le saisir à nouveau optiquement. Les corrections manuelles peuvent alors être prises en compte. Cette méthode peut servir à coder les textes, par exemple les télécopies, afin de permettre la sécurisation et la confidentialité des informations supportées, par scellement et chiffrement, sans identifier les éléments graphiques traités tels les caractères alphanumériques et sans les aléas des fichiers images résultant d'images ressaisies. Les dessins multiniveaux peuvent être reproduits en décomposant l'analyse en plusieurs passes (ou couches), en autant de fois qu'il a de bits pour définir les nuances de gris ou de couleurs. Une deuxième application concernant la sécurisation de chèques. Les fraudes en matière de chèques bancaires se traduisent par la modification de la référence du bénéficiaire (identité et/ou nO de compte), les références élaborées par le fabricant des vignettes (nO de compte, nO de chèque,...), le montant du chèque, le support lui-même ou la signature. ta solution à ce type de malversations par le procédé selon l'invention consiste - à écrire en caractère ECO, sur la vignette, et éventuellement sur les documents d'accompagnement, les données déjà existantes en clair. L'intérêt de cette solution est double. Elle permet une saisie et une vérification automatique du bien-fondé et de la cohérence des données, aux différents niveaux de traitement. Elle rend par ailleurs plus difficile toute modification des codages du fait de la finesse des points élémentaires et des calculs nécessaires pour effacer et réécrire les contrôles de cohérence. - à sceller les informations écrite en caractère ECO, par un sceau numérique fondé sur la totalité ou une partie seulement des informations contenues sur la vignette. - à définir un format de positionnent et d'écriture qui permette l'exploitation sécurisée des informations. - à définir les caractères ECO d'indexation, dont la présence annonce la signification des caractères ECO qui suivent. L'invention est décrite dans ce qui précède à titre d'exemple non limitatif. I1 est bien entendu que l'Homme de Métier sera à même de réaliser diverses variantes sans pour autant sortir du cadre de l'invention. REVENDICATIONS 1 - Procédé de codage d'informations sur tout type de support (objet, document, plante, animal, toute surface matérielle ou matérialisée que l'on désignera par support) consistant à apposer sur une surface un marquage constitué par une pluralité de signes élémentaires appartenant à au moins deux types différents, ledit marquage se décomposant en une pluralité de zones de codage correspondant chacune à une information codée de nature différente, caractérisé en ce que le marquage comporte au moins une zone (2) de configuration Cp dont le contenu est variable et spécifique au type d'applications, le contenu de ladite zone de configuration déterminant une caractéristique au moins de l'une au moins des autres zones (9) de codage variables, comportant le corps du message, spécifiques à une catégorie d'applications. 2 - Procédé de codage d'un support selon la revendication 1 caractérisé en ce que le marquage comporte au moins une zone de configuration qui détermine le format des autres zones de codage. 3 - Procédé de codage d'un support selon la revendication 1 ou 2 caractérisé en ce que le marquage comporte au moins une zone de configuration qui détermine les attributs des autres zones de codage. 4 - Procédé de codage d'un support selon l'une quelconque des revendications précédentes caractérisé en ce que la zone de configuration est une zone-amorce disposée au début du marquage. 5 - Procédé de codage d'un support selon l'une quelconque des revendications précédentes caractérisé en ce qu'il comporte une zone de scellement dont le contenu est déterminé par le résultat d'une fonction de chiffrement appliquée à un descripteur du support marqué ou des informations mises sur le support. 6 - Procédé de codage d'un support selon l'une quelconque des revendications précédentes caractérisé en ce que le marquage est réalisé sous la forme d'une matrice de N colonnes de M éléments notamment binaires. 7 - Procédé de codage d'un support selon l'une quelconque des revendications précédentes caractérisé en ce que le marquage est réalisé sous forme de modifications d'une zone d'une image dont les dimensions sont très supérieures à la zone de marquage. 8 - Procédé de codage selon l'une quelconque des revendications précédentes caractérisé en ce que le marquage est réalisé sous forme d'une pluralité de zones Zi constituée chacune par la juxtaposition d'au moins une bande codante B(li)j, chacune de ces bandes codantes étant constituée par N pixels P(li,j)k juxtaposés. 9 - Équipement pour le codage et le décodage d'un support comportant des moyens de marquage de la surface du support par l'apposition d'un marquage constitué par une pluralité de signes élémentaires appartenant à au moins deux types différents, ledit marquage se décomposant en une pluralité de zones de codage correspondant chacune à une information codée de nature différente, caractérisé en ce que ledit équipement comporte un calculateur pour l'apposition d'au moins une zone de configuration qui détermine une caractéristique au moins de l'une au moins des autres zones de codage. 10 - Support codé présentant sur sa surface un marquage constitué par une pluralité de signes élémentaires appartenant à au moins deux types différents, ledit marquage se décomposant en une pluralité de zones de codage correspondant chacune à une information codée de nature différente, caractérisé en ce que le marquage comporte au moins une zone de configuration qui détermine une caractéristique au moins de l'une au moins des autres zones de codage.