Brevet FR2816154A1 — publié le 20020503

La présente invention concerne un procédé d'insertion d'une information supplémentaire telle qu'une marque secrète dans un signal numérique. Elle concerne également un procédé d'extraction d'une marque secrète insérée dans un signal numérique. Corrélativement, la présente invention concerne un dispositif d'insertion d'une information supplémentaire et un dispositif d'extraction de l'information supplémentaire, adaptés respectivement à mettre en oeuvre les procédés d'insertion et d'extraction conformes à l'invention. Le signal numérique considéré dans la suite sera plus particulièrement un signal d'image numérique. Les procédés d'insertion et extraction conformes à l'invention s'inscrivent dans le domaine technique du marquage (watermarking en anglais) des données numériques qui peut s'interpréter comme l'insertion d'un sceau dans les données numériques, permettant par exemple d'authentifier le contenu d'un fichier de données numériques. Ce marquage est également appelé tatouage numérique. Le marquage comporte de manière générale la modification de coefficients représentatifs de l'image numérique. Cette modification est imperceptible à l'oeil, mais peut être décodée par un décodeur approprié. On s'intéresse ici au marquage dit fragile, c'est-à-dire qui ne résiste pas à des modifications que peut subir l'image après son marquage, telles que sur-compression, filtrage, changement de format de représentation, par exemple. Ce type de marquage est notamment utilisé pour authentifier une image, ou pour y insérer des annotations relatives à cette image. D'autre part, le marquage d'une image peut être réalisé soit dans le domaine spatial, soit dans un domaine transformé, ou encore dans une représentation compressée. On s'intéresse ici plus particulièrement au domaine compressé. L'article intitulé High performance salable image compression with EBCOT de D. Taubman, paru dans IEEE Transactions on image processing , vol. 9, NO 7, juillet 2000, pages 1158 à 1170, décrit un procédé de compression qui fournit une représentation compressée salable en débit et distorsion. La notion de scalabilité signifie que les données compressées contiennent plusieurs couches qui chacune représente une compression efficace de l'image à débit fixé ou à distorsion fixée. La présente invention vise à fournir un procédé et un dispositif d'insertion d'informations supplémentaires dans des données codées et plus particulièrement compressées. A cette fin, l'invention propose un procédé d'insertion d'une information supplémentaire dans un ensemble de données représentatives de grandeurs physiques, les données ayant été traitées par les étapes de : - partition de l'ensemble en sous-ensembles, - codage entropique de chacun des sous-ensembles, - sélection, pour chacun des sous-ensembles, d'un couple débit et distorsion en fonction d'un débit global ou d'une distorsion globale, - écriture, pour chacun des sous-ensembles, d'un indice représentant le couple débit et distorsion sélectionné, dans un fichier contenant les sousensembles codés, caractérisé en ce qu'il comporte en outre une étape de modification des couples débit et distorsion sélectionnés, en fonction de l'information supplémentaire. Corrélativement, l'invention concerne un dispositif d'insertion d'une information supplémentaire dans un ensemble de données représentatives de grandeurs physiques, les données ayant été traitées par : - des moyens de partition de l'ensemble en sous-ensembles, - des moyens de codage entropique de chacun des sous-ensembles, - des moyens de sélection, pour chacun des sous-ensembles, d'un couple débit et distorsion en fonction d'un débit global ou d'une distorsion globale, - des moyens d'écriture, pour chacun des sous-ensembles, d'un indice représentant le couple débit et distorsion sélectionné, dans un fichier contenant les sous-ensembles codés, caractérisé en ce qu'il comporte en outre des moyens de modification des couples débit et distorsion sélectionnés, en fonction de l'information supplémentaire. Grâce à l'invention, on peut réaliser une insertion d'information supplémentaire, de type fragile, dans des données compressées. Les données ne sont pas directement modifiées par cette insertion, puisque seulement les couples débit et distorsion des sous-ensembles sont modifiés selon l'invention. Selon une caractéristique préférée, le procédé d'insertion comporte, préalablement à l'étape de modification, une étape de test pour vérifier si les couples débit et distorsion sélectionnés sont modifiables selon un critère de modification. Cela permet d'assurer de contrôler la visibilité de l'information supplémentaire insérée dans les données et le débit global après marquage et compression. De plus, cela permet d'assurer la compatibilité du procédé d'insertion avec le précédé de compression et décompression. Selon une caractéristique préférée, le codage entropique est réalisé par plan de bits. Selon une caractéristique préférée, le critère de modification n'est pas vérifié pour un couple débit et distorsion sélectionné si ce couple appartient au premier plan de bit non nul. Ainsi, l'insertion de l'information supplémentaire n'introduit pas une trop grande distorsion dans les données. Selon une caractéristique préférée, le critère de modification n'est pas vérifié pour un couple débit et distorsion sélectionné si ce couple appartient au dernier plan de bit. En effet, cela permet de ne pas créer de situation où le décodage des données serait impossible car non compatible avec les valeurs admissibles. Selon une caractéristique préférée, la modification comporte le remplacement du bit de poids le plus faible de l'indice par un bit d'information dont la valeur est fonction de l'information supplémentaire. Ce type de modification est simple à mettre en oeuvre. Selon des caractéristiques préférées, qui peuvent être combinées, la valeur du bit d'information est aussi fonction d'au moins une caractéristique du sous-ensemble, ou d'au moins une caractéristique des sous-ensembles précédemment traités ou encore d'une clé secrète. Ces caractéristiques permettent de rendre l'information supplémentaire plus difficile à pirater. Selon une caractéristique préférée, le fichier contenant les sousensembles codés comportant plusieurs couches, seuls les couples débit et distorsion correspondant à la première couche sont modifiés en fonction de l'information supplémentaire. La première couche est toujours la première traitée, par exemple dans le cas d'une transmission des données. Ainsi, l'information supplémentaire sera rapidement traitée elle aussi. Selon une autre caractéristique préférée, le fichier contenant les sous-ensembles codés comportant plusieurs couches, les couples débit et distorsion correspondant aux différentes couches sont modifiés en fonction de l'information supplémentaire. Cela permet par exemple de hiérarchiser l'importance des informations supplémentaires, la première couche recevant les informations jugées les plus importantes. Selon une autre caractéristique préférée, pour chacune des couches, les couples débit et distorsion sont modifiés en fonction d'une même information supplémentaire. L'information supplémentaire est ainsi répétée sur chaque couche, ce qui augmente la robustesse de l'insertion. Selon une autre caractéristique préférée, l'information supplémentaire est une information d'authentification. L'invention concerne aussi un procédé d'extraction d'une information supplémentaire insérée dans un ensemble de données représentatives de grandeurs physiques par le procédé d'insertion précédemment présenté, caractérisé en ce qu'il comporte les étapes de : - lecture, pour chacun des sous-ensembles, de l'indice représentant le couple débit et distorsion, - extraction de l'information supplémentaire. L'invention concerne un dispositif d'extraction comportant des moyens de mise en oeuvre des caractéristiques précédentes. Le procédé et le dispositif d'extraction présentent des avantages analogues à ceux qui ont été précédemment décrits. L'invention concerne aussi un appareil numérique incluant le dispositif d'insertion ou d'extraction, ou des moyens de mise en oeuvre du procédé d'insertion ou d'extraction. Cet appareil numérique est par exemple un appareil photographique numérique, un caméscope numérique ou un scanner. Les avantages du dispositif et de l'appareil numérique sont identiques à ceux précédemment exposés. Un moyen de stockage d'information, lisible par un ordinateur ou par un microprocesseur, intégré ou non au dispositif, éventuellement amovible, mémorise un programme mettant en oeuvre) le procédé d'insertion ou d'extraction. Les caractéristiques et avantages de la présente invention apparaîtront plus clairement à la lecture d'un mode préféré de réalisation illustré par les dessins ci-joints, dans lesquels : - la figure 1 représente un mode de réalisation de dispositif d'insertion de message dans des données selon l'invention, - la figure 2 représente un mode de réalisation de dispositif d'extraction de message dans des données selon l'invention, - la figure 3 représente un mode de réalisation de dispositif selon l'invention -la figure 4 représente un mode de réalisation de procédé d'insertion de message dans des données selon l'invention, - la figure 5 représente une image transformée, - la figure 6 illustre un codage entropique mis en oeuvre dans l'invention, - la figure 7 représente un mode de réalisation de procédé d'extraction de message dans des données selon l'invention. En référence à la figure 1, un dispositif d'insertion de message dans des données numériques comporte un circuit 1 de transformation de données. Les données numériques sont plus particulièrement une image et la transformation est par exemple une transformation en odelettes discrète de l'image, qui transforme les coefficients spatiaux de celle-ci en des coefficients spatio-fréquentiels. Il est à noter que la transformation n'est essentielle que si l'on souhaite obtenir une représentation de l'image qui est à la fois compressée et marquée. Si la compression de l'image n'est pas un but recherché, la transformation peut être omise, ou de manière équivalente, être l'identité. Le circuit 1 de transformation est relié à un circuit 2 de quantification qui quantifie les coefficients qu'il reçoit et fournit les coefficients quantifiés à un circuit de partition 3. Il est à noter que la quantification n'est pas essentielle pour l'invention. Le circuit de partition forme des blocs dans les données qu'il reçoit. Le circuit 3 est relié à un circuit 4 de codage entropique progressif des blocs de données. Un mode de réalisation de codage entropique sera détaillé dans la suite en référence à la figure 6. Le circuit 4 fournit les données codées à un circuit 5 d'optimisation du débit et de la distorsion de ces données. Le circuit 5 effectue la sélection, pour chacun des blocs de données, d'un couple débit et distorsion, en fonction d'un débit global ou d'une distorsion globale. Cette sélection revient à ne garder qu'une partie de l'information codée pour chaque bloc. La quantité d'information codée conservée pour chaque bloc est indiquée par un point de troncature, qui est un indice représentant le couple débit et distorsion sélectionné. Le circuit 5 est relié à un circuit 6 de modification du résultat de l'optimisation précédente, en fonction d'un message à insérer et d'une clé secrète K. La modification porte sur le point de troncature de certains blocs, comme on le verra dans la suite. Le circuit 6 est finalement relié à un circuit 7 de formation de train binaire, qui forme un train binaire contenant le message inséré. Les indices des points de troncature sont écrits dans l'entête du fichier contenant le train binaire, dit fichier compressé. Le train binaire contient des couches, dont chacune est une représentation progressive en qualité de l'image contenant pour chaque bloc des données de codage. Ces données de codage sont des informations binaires codées entropiquement qui dépendent du résultat de l'optimisation débit-distorsion. La première couche contient une partie des données de codage pour chaque bloc, et chaque couche suivante contient des détails supplémentaires par rapport à la précédente. On dit alors qu'il y a incrémentation de l'information codée. Bien entendu, il est possible de n'avoir qu'une seule couche. Le fonctionnement du dispositif d'insertion selon l'invention sera détaillé dans la suite. La figure 2 représente un mode de réalisation de dispositif d'extraction de message inséré dans des données par le dispositif précédemment exposé. Ce dispositif comporte un circuit 8 de lecture d'entête de fichier compressé. En effet, le message inséré est dans l'entête du fichier compressé. Le circuit 8 est relié à un circuit d'extraction 9 qui extrait le message inséré. Le fonctionnement du dispositif d'extraction sera détaillé dans la suite. Il est à noter que le but de l'extraction peut être de retrouver le message inséré, ou d'authentifier les données numériques, pour vérifier si elles n'ont pas subi d'altération entre l'insertion du message et son extraction. Comme représenté à la figure 3, un dispositif mettant en oeuvre l'invention est par exemple un micro-ordinateur 10 connecté à différents périphériques, par exemple une caméra numérique 107 (ou un scanner, ou tout moyen d'acquisition ou de stockage d'image) reliée à une carte graphique et fournissant des informations à traiter selon l'invention. Le dispositif 10 comporte une interface de communication 112 reliée à un réseau 113 apte à transmettre des données numériques à traiter ou inversement à transmettre des données traitées par le dispositif. Le dispositif 10 comporte également un moyen de stockage 108 tel que par exemple un disque dur. Il comporte aussi un lecteur 109 de disque 110. Ce disque 110 peut être une disquette, un CD-ROM, ou un DVD-ROM, par exemple. Le disque 110 comme le disque 108 peuvent contenir des données traitées selon l'invention ainsi que le ou les programmes mettant en oeuvre l'invention qui, une fois lu par le dispositif 10, sera stocké dans le disque dur 108. Selon une variante, le programme permettant au dispositif de mettre en oeuvre l'invention, pourra être stocké en mémoire morte 102 (appelée ROM sur le dessin). En seconde variante, le programme pourra être reçu pour être stocké de façon identique à celle décrite précédemment par l'intermédiaire du réseau de communication 113. Le dispositif 10 est relié à un microphone 111. Les données à traiter selon l'invention seront dans ce cas du signal audio. Ce même dispositif possède un écran 104 permettant de visualiser les données à traiter ou de servir d'interface avec l'utilisateur qui peut ainsi paramétrer certains modes de traitement, à l'aide du clavier 114 ou de tout autre moyen (souris par exemple). L'unité centrale 100 (appelée CPU sur le dessin) exécute les instructions relatives à la mise en oeuvre de l'invention, instructions stockées dans la mémoire morte 102 ou dans les autres éléments de stockage. Lors de la mise sous tension, les programmes de traitement stockés dans une mémoire non volatile, par exemple la ROM 102, sont transférés dans la mémoire vive RAM 103 qui contiendra alors le code exécutable de l'invention ainsi que des registres pour mémoriser les variables nécessaires à la mise en oeuvre de l'invention. De manière plus générale, un moyen de stockage d'information, lisible par un ordinateur ou par un microprocesseur, intégré ou non au dispositif, éventuellement amovible, mémorise un programme mettant en oeuvre le procédé selon l'invention. Le bus de communication 101 permet la communication entre les différents éléments inclus dans le micro-ordinateur 10 ou reliés à lui. La représentation du bus 101 n'est pas limitative et notamment l'unité centrale 100 est susceptible de communiquer des instructions à tout élément du microordinateur 10 directement ou par l'intermédiaire d'un autre élément du microordinateur 10. Le fonctionnement des dispositifs d'insertion de marquage et de détection de marquage selon l'invention va maintenant être décrit au moyen d'algorithmes. L'algorithme de la figure 4 représente le fonctionnement général du dispositif d'insertion selon l'invention et comporte des étapes E1 à E19. Cet algorithme peut être mémorisé en totalité ou en partie dans tout moyen de stockage d'information capable de coopérer avec le microprocesseur. Ce moyen de stockage est lisible par un ordinateur ou par un microprocesseur. Ce moyen de stockage est intégré ou non au dispositif, et peut être amovible. Par exemple, il peut comporter une bande magnétique, une disquette ou un CD-ROM (disque compact à mémoire figée). L'étape E1 est une transformation réversible des données, par exemple une transformation en odelettes discrète de l'image, dite DWT (d'après l'anglais Discrete Wavelet Transform), pour transformer les coefficients spatiaux en des coefficients spatio-fréquentiels. Ces coefficients spatiofréquentiels font partie de sous-bandes de fréquences, réparties selon plusieurs niveaux de résolution. L'étape E1 comporte également une quantification scalaire des coefficients. Par exemple, un pas de quantification spécifique est utilisé pour chaque sous-bande. Cette quantification est connue en soi et ne sera pas détaillée ici. Par exemple, la transformation de l'image a pour résultat une image transformée telle que représentée à la figure 5, et qui comporte dix sousbandes de fréquence réparties selon trois niveaux de résolution. L'image transformée est le résultat d'un filtrage selon la direction horizontale et selon la direction verticale de l'image d'origine. Le niveau de plus basse résolution RES3 comporte les sous-bandes LL3, HL3, LH3 et HH3. La sous-bande LL3 de plus basse fréquence, dite aussi sous-bande basse, est une réduction de l'image d'origine. Les autres sousbandes sont des sous-bandes de détail. La sous-bande LL3 comporte les composantes, ou coefficients, de basse fréquence, selon les deux directions, du signal d'image. La sous-bande LH3 comporte les composantes de basse fréquence selon une première direction et de haute fréquence selon une seconde direction, du signal d'image. La sous-bande HL3 comporte les composantes de haute fréquence selon la première direction et les composantes de basse fréquence selon la seconde direction. Enfin, la sous-bande HH3 comporte les composantes de haute fréquence selon les deux directions. Le second niveau de résolution RES2 comporte les sous-bandes HL2, LH2 et HH2 et le niveau de plus haute résolution RES1 comporte les sousbandes HL,, LH1 et HH1. Bien entendu, le nombre de niveaux de résolution, et par conséquent de sous-bandes, peut être choisi différemment, par exemple 13 sous-bandes et quatre niveaux de résolution, pour un signal bi-dimensionnel tel qu'une image. Le nombre de sous-bandes par niveau de résolution peut également être différent. L'étape suivante E2 est la partition de chaque sous bandes en blocs de coefficients. De manière générale, un bloc de coefficients est un groupe de coefficients. Par exemple, les blocs formés sont de forme carrée, et sont en nombre prédéterminé ou de taille prédéterminée. Les blocs situés sur les bords de la sous bande peuvent être rectangulaires et de taille inférieure. L'étape suivante E3 est une initialisation d'un paramètre j à la valeur un, pour considérer un premier bloc parmi les NB blocs BJ formés à l'étape précédente. Les blocs sont considérés dans un ordre quelconque, prédéterminé, par exemple selon le sens de balayage vidéo. L'étape suivante E4 est un codage entropique par plans de bits du bloc courant BJ. L'étape suivante E5 est un test pour vérifier si tous les blocs ont été codés. S'il reste au moins un bloc à coder, l'étape E5 est suivie de l'étape E6 pour considérer un bloc suivant. L'étape E6 est suivie de l'étape E4 précédemment décrite. La figure 6 illustre le codage entropique par plans de bits d'un bloc Bj. Un tel codage est décrit dans l'article intitulé High performance salable image compression with EBCOT de D. Taubman, paru dans IEEE Transactions on image processing , vol. 9, NO 7, juillet 2000, pages 1158 à 1170. Ce codage est progressif, et en outre est de type salable. Chaque coefficient d'un bloc est un nombre réel qui est quantifié, par exemple sur cinq bits à la figure 6. Le plan de bit PB1 contient les bits les plus significatifs, dits MSB (d'après l'anglais Most Significant Bit) des coefficients du bloc Bj. Les plans de bits PB2 à PBs contiennent respectivement les bits de moins en moins significatifs des coefficients du bloc B,. Le plan de bits PB5 contient ainsi les bits les moins significatifs, dits LSB (d'après l'anglais Less Significant Bit) des coefficients du bloc B,. Chaque plan de bits est codé en plusieurs passes, ici deux. Le résultat de la première passe de codage est une partie des données de codage pour le bloc considéré, et le résultat de la seconde passe est une autre partie des données de codage comportant des détails supplémentaires. A chaque passe est associé un couple débit et distorsion qui correspond au débit supplémentaire et à la diminution de distorsion globale pour l'image reconstruite lorsque les données correspondantes sont retenues. Dans l'exemple représenté, le plan de bit PB, contient uniquement des zéros, donc il n'est pas nécessaire d'effectuer les deux passes de codage sur ce plan de bits. Pour prendre en compte cette information, le nombre M, de passes non significatives est égal à deux. La première passe significative est la première passe pour le plan de bits PB2, c'est-à-dire la troisième passe. En référence à nouveau à la figure 4, lorsque tous les blocs ont été codés, alors l'étape E5 est suivie de l'étape E7 à laquelle un paramètre i est initialisé à un et un paramètre m est initialisé à un. Le paramètre i est un entier qui est l'indice de la couche courante parmi les couches précédemment formées. Le paramètre i varie entre 1 et NC, où NC est un entier égal au nombre de couches du train binaire. Le paramètre m est un entier qui est l'indice du bit inséré. Il est à noter que le nombre de bits qu'il est possible d'insérer dans chaque couche est variable, donc le nombre total, ou capacité, est également variable. L'étape E7 est suivie de l'étape E8 à laquelle un algorithme d'optimisation débit-distorsion détermine la quantité de données à conserver dans la couche considérée C" pour chaque bloc codé Bj. Cette quantité de données est associée à un couple débit-distorsion. Cet algorithme est connu en soi, et a pour résultat un point de troncature T,, dans la couche considérée C, et pour le bloc courant B. Ainsi, la couche C, contient le résultat d'un certain nombre de passes de codage pour chaque bloc. La suite de l'algorithme a pour but de modifier les points de troncature en fonction de l'information supplémentaire à insérer. L'étape suivante E9 est une initialisation du paramètre j à un pour considérer le premier point de troncature T,, dans la couche courante Ci. L'étape suivante E10 est un test pour déterminer si le point de troncature T,, est modifiable. Pour cela, on applique un critère prédéterminé. Par exemple, le point de troncature du premier plan de bits non nul codé n'est pas modifiable. En effet, la modification de ce plan de bit pourrait apporter des modifications trop importantes dans l'image. De même, le point de troncature du dernier plan de bit n'est pas modifiable. Il s'agit ici d'une limite physique, qui si elle n'est pas respectée pourrait entraîner une impossibilité de décoder l'image ultérieurement. Les autres points de troncature sont modifiables. Si la réponse est positive à l'étape E10, alors cette étape est suivie de l'étape E11 qui est la modification du point de troncature courant. Celui-ci est modifié par une fonction déterministe. Pour cela, une clé K est utilisée à l'étape E12 pour générer un nombre pseudo-aléatoire binaire k, en utilisant un tirage de loi binaire. Si on note Wm le bit du message à insérer, le bit de poids faible du point de troncature T,, est remplacé par le bit kj (B Wm, où E représente le symbole OU exclusif. Dans ce cas, l'indice modifié T',, est égal à Te 1. Dans l'exemple précédent, la modification dépend du bloc j et de la clé K. En variante, elle peut aussi dépendre des blocs précédemment traités, dans la même couche ou dans les couches précédentes. L'étape E11 est suivie de l'étape E13 qui est la mise à jour de la liste des points de troncature. Cette liste est située dans l'entête de la couche courante C,. A l'étape suivante E14, le paramètre m est incrémenté de une unité pour considérer un bit à insérer suivant. L'étape suivante E15 est un test pour déterminer s'il reste des points de troncature dans la couche courante à considérer. Si la réponse est positive, alors cette étape est suivie de l'étape E16 pour considérer un point de troncature suivant. L'étape E16 est suivie de l'étape E10 précédemment décrite. Lorsque la réponse à l'étape E15 est négative, cela signifie que tous les points de troncature de la couche courante ont été traités. L'étape E15 est alors suivie de l'étape E17 qui est la formation de la couche Ci avec les points de troncature modifiés. L'étape E17 est suivie de l'étape E18 qui est un test pour déterminer s'il reste au moins une couche à traiter. Si la réponse est positive, alors cette étape est suivie de l'étape E19 pour considérer la couche suivante. L'étape E19 est suivie de l'étape E8 précédemment décrite. Lorsque toutes les couches ont été traitées, alors le train binaire contenant le message inséré est formé. On a décrit une insertion de message qui est incrémentale dans les différentes couches. Cela peut correspondre à un message dont une partie est jugée importante et qui est par conséquent insérée dans la première couche. Les autres parties du message, jugée moins importantes, sont insérées dans les couches suivantes. En variante, il est possible d'insérer un message uniquement dans une seule couche, notamment la première couche du train binaire, qui sera de manière générale la première traitée lors de l'extraction du message. Le message sera alors extrait très rapidement. En outre, lors d'une transmission, toutes les couches ne sont pas nécessairement transmises. Dans un tel cas, le fait d'avoir inséré le message dans la première couche uniquement permet de le retrouver après transmission. Cette variante peut notamment être utilisée lorsque le but de l'insertion de message est d'authentifier l'image. Selon une autre variante, il est possible d'insérer un même message dans chacune des couches du train binaire, de façon à obtenir une information redondante et par conséquent à augmenter la robustesse du message inséré. Selon une autre variante, la modification du point de troncature dépend d'au moins une caractéristique du bloc de données associé à ce point de troncature. Cette caractéristique doit pouvoir être retrouvée exactement lors de l'extraction. Par exemple, pour chaque bloc BJ, on considère une clé secrète initiale Ko, le nombre Mj de points de troncature pour lesquels il n'y a pas d'information, et la somme Pj des coefficients du premier plan de bit non nul de ce bloc. On utilise alors la clé K = Ko + Mj + Pj pour faire un tirage pseudo aléatoire binaire. L'insertion est ensuite identique à ce qui a été précédemment décrit. A la place de la somme des coefficients du premier plan de bit non nul du bloc, toute fonction déterministe calculée à partir de ces coefficients peut être utilisée, telle la variance de ces coefficients. Le piratage du message inséré est ainsi plus difficile, puisque l'insertion du message dépend en plus des données codées. Cette variante peut notamment être utilisée lorsque le but de l'insertion de message est d'authentifier l'image. Un autre avantage de cette variante est de permettre de localiser spatialement dans l'image des modifications non souhaitées, apportées ultérieurement à l'image. La encore, cela peut être utile pour l'authentification de l'image. Selon une autre variante, on modifie les deux bits de poids faible des points de troncature. Selon encore une autre variante, la fonction déterministe de modification prend également en compte au moins une caractéristique des blocs précédemment traités. Cette caractéristique peut être le point de troncature, le nombre de plan de bits non significatifs ou la variance des blocs précédemment traités. Ainsi, les blocs sont liés entre eux et le message inséré est plus difficile à pirater. L'algorithme de la figure 7 représente le fonctionnement général du dispositif d'extraction de message selon l'invention et comporte des étapes E20 à E31. Cet algorithme peut être mémorisé en totalité ou en partie dans tout moyen de stockage d'information capable de coopérer avec le microprocesseur. Ce moyen de stockage est lisible par un ordinateur ou par un microprocesseur. Ce moyen de stockage est intégré ou non au dispositif, et peut être amovible. Par exemple, il peut comporter une bande magnétique, une disquette ou un CD-ROM (disque compact à mémoire figée). L'étape E20 est une initialisation à laquelle le paramètre i est initialisé à un et le paramètre m est initialisé à un. Les paramètres i et m ont la même signification qu'à la figure 4. Ainsi, le paramètre i est un entier qui est l'indice d'une couche courante parmi les couches précédemment formées. Le paramètre i varie entre 1 et NC, où NC est un entier égal au nombre de couches du train binaire. Le paramètre m est un entier qui est l'indice du bit inséré. Il est à noter que le nombre de bits qu'il est possible d'insérer dans chaque couche est variable, donc le nombre total, ou capacité, est également variable. L'étape suivante E21 est la lecture de la liste des points de troncature T*, situé dans l'entête de la couche courante CI, L'étape suivante E22 est une initialisation à laquelle le paramètre j est mis à un. Le paramètre j a la même signification qu'à la figure 4 et représente l'indice courant du point de troncature. L'étape suivante E23 est un test pour déterminer si le point de troncature courant T*,, est modifiable. Le critère appliqué est le même qu'à l'insertion. Si la réponse est négative, alors l'étape E23 est suivie de l'étape E24 qui est un test pour vérifier s'il reste des points de troncature à traiter. Si la réponse est positive, alors cette étape est suivie de l'étape E25 pour considérer un point de troncature suivant. L'étape E25 est suivie de l'étape E23 précédemment décrite. Si la réponse est négative à l'étape E24, alors cette étape est suivie de l'étape E26 qui est un test pour déterminer si toutes les couches ont été traitées. Tant qu'il reste au moins une couche à traiter, l'étape E26 est suivie de l'étape E27 pour considérer une couche suivante. L'étape E27 est suivie de l'étape E21 précédemment décrite. Lorsque la réponse est positive à l'étape E23, alors cette étape est suivie de l'étape E28 qui est la lecture du bit qui a été inséré dans le point de troncature courant. Pour cela, comme à l'insertion, une clé K est utilisée à l'étape E29 pour générer un nombre pseudo aléatoire binaire k,. Le nombre binaire est utilisé à l'étape E28 pour extraire un bit inséré w*m. L'extraction dépend de la fonction déterministe qui a été utilisée lors de l'insertion préalable. Avec l'exemple qui a été exposé en référence à la figure 4, l'extraction consiste à lire le bit de poids faible du point de troncature courant T*, j. Si le bit de poids faible vaut un, alors le bit extrait Wm est égal à k,, sinon, le bit extrait Wm est égal à 1-kl. Le bit extrait est mémorisé. L'étape suivante E30 est une incrémentation du paramètre m pour considérer un bit extrait suivant. L'étape E30 est suivie de l'étape E24 précédemment décrite. Lorsqu'à l'étape E26 toutes les couches ont été traitées, il est alors possible de déduire la capacité et l'étape E26 est suivie de l'étape E31 qui est le décodage du message. Par exemple, si l'on sait qu'il est composé de caractères ASCII, on regroupe les bits extraits par groupes de huit bits, et on associe un caractère ASCII à chaque groupe. Il est à noter qu'avec ce procédé, il est toujours possible d'extraire des bits à partir d'un fichier codé et plus particulièrement compressé. La cohérence et la véracité du message extrait dépendent de l'authenticité du fichier traité. Les différentes variantes exposées pour l'insertion de message se transposent pour l'extraction. Il est à noter que le but de l'extraction peut être simplement d'extraire le message ou d'authentifier l'image qui le contenait. Bien entendu, la présente invention n'est nullement limitée aux modes de réalisation décrits et représentés, mais englobe, bien au contraire, toute variante à la portée de l'homme du métier. REVENDICATIONS 1. Procédé d'insertion d'une information supplémentaire dans un ensemble de données représentatives de grandeurs physiques, les données ayant été traitées par les étapes de : - partition (E2) de l'ensemble en sous-ensembles, - codage entropique (E4) de chacun des sous-ensembles, - sélection (E8), pour chacun des sous-ensembles, d'un couple débit et distorsion en fonction d'un débit global ou d'une distorsion globale, - écriture, pour chacun des sous-ensembles, d'un indice (Tij) représentant le couple débit et distorsion sélectionné, dans un fichier contenant les sous-ensembles codés, caractérisé en ce qu'il comporte en outre une étape de modification (EU) des couples débit et distorsion sélectionnés, en fonction de l'information supplémentaire (wm). 2. Procédé d'insertion selon la revendication 1, caractérisé en ce qu'il comporte, préalablement à l'étape de modification, une étape de test (E10) pour vérifier si les couples débit et distorsion sélectionnés sont modifiables selon un critère de modification. 3. Procédé d'insertion selon la revendication 1 ou 2, caractérisé en ce que le codage entropique (E4) est réalisé par plan de bits. 4. Procédé selon les revendications 2 et 3, caractérisé en ce le critère de modification (E10) n'est pas vérifié pour un couple débit et distorsion sélectionné si ce couple appartient au premier plan de bit non nul. 5. Procédé selon les revendications 2 et 3, caractérisé en ce le critère de modification (E10) n'est pas vérifié pour un couple débit et distorsion sélectionné si ce couple appartient au dernier plan de bit. 6. Procédé d'insertion selon l'une quelconque des revendications 1 à 5, caractérisé en ce que la modification (E11) comporte le remplacement du bit de poids le plus faible de l'indice par un bit d'information dont la valeur est fonction de l'information supplémentaire. 7. Procédé d'insertion selon la revendication 6, caractérisé en ce que la valeur du bit d'information est aussi fonction d'au moins une caractéristique du sous ensemble. 8. Procédé d'insertion selon la revendication 6 ou 7, caractérisé en ce que la valeur du bit d'information est aussi fonction d'au moins une caractéristique des sous-ensembles précédemment traités. 9. Procédé d'insertion selon l'une quelconque des revendications 6 à 8, caractérisé en ce que la valeur du bit d'information est aussi fonction d'une clé secrète (K). 10. Procédé d'insertion selon l'une quelconque des revendications 1 à 9, le fichier contenant les sous-ensembles codés comportant plusieurs couches (C, ), caractérisé en ce que seuls les couples débit et distorsion correspondant à la première couche sont modifiés en fonction de l'information supplémentaire. 11. Procédé d'insertion selon l'une quelconque des revendications 1 à 9, le fichier contenant les sous-ensembles codés comportant plusieurs couches (C,), caractérisé en ce que les couples débit et distorsion correspondant aux différentes couches sont modifiés en fonction de l'information supplémentaire. 12. Procédé d'insertion selon la revendication 11, caractérisé en ce que pour chacune des couches, les couples débit et distorsion sont modifiés en fonction d'une même information supplémentaire. 13. Procédé d'insertion selon l'une quelconque des revendications 1 à 12, caractérisé en ce que l'information supplémentaire est une information d'authentification. 14. Procédé d'extraction d'une information supplémentaire insérée dans un ensemble de données représentatives de grandeurs physiques par le procédé selon la revendication 1, caractérisé en ce qu'il comporte les étapes de : - lecture (E21), pour chacun des sous-ensembles, de l'indice représentant le couple débit et distorsion, - extraction (E28) de l'information supplémentaire. 15. Dispositif d'insertion d'une information supplémentaire dans un ensemble de données représentatives de grandeurs physiques, les données ayant été traitées par : - des moyens (3) de partition de l'ensemble en sous-ensembles, - des moyens (4) de codage entropique de chacun des sousensembles, - des moyens (5) de sélection, pour chacun des sous-ensembles, d'un couple débit et distorsion en fonction d'un débit global ou d'une distorsion globale, - des moyens d'écriture, pour chacun des sous-ensembles, d'un indice (T,,) représentant le couple débit et distorsion sélectionné, dans un fichier contenant les sous-ensembles codés, caractérisé en ce qu'il comporte en outre des moyens de modification (6) des couples débit et distorsion sélectionnés, en fonction de l'information supplémentaire (wm). 16. Dispositif d'insertion selon la revendication 15, caractérisé en ce que les moyens de modification (6) comportent des moyens de test pour vérifier si les couples débit et distorsion sélectionnés sont modifiables selon un critère de modification. 17. Dispositif d'insertion selon la revendication 15 ou 16, caractérisé en ce que les moyens (4) de codage entropique sont adaptés à réaliser un codage entropique par plan de bits. 18. Dispositif selon les revendications 16 et 17, caractérisé en ce que les moyens (6) de tests sont adaptés à mettre en oeuvre un critère de modification qui n'est pas vérifié pour un couple débit et distorsion sélectionné si ce couple appartient au premier plan de bit non nul. 19. Dispositif selon les revendications 16 et 17, caractérisé en ce que les moyens (6) de tests sont adaptés à mettre en oeuvre un critère de modification qui n'est pas vérifié pour un couple débit et distorsion sélectionné si ce couple appartient au dernier plan de bit. 20. Dispositif d'insertion selon l'une quelconque des revendications 15 à 19, caractérisé en ce que les moyens de modification (6) sont adaptés à mettre en oeuvre une modification qui comporte le remplacement du bit de poids le plus faible de l'indice par un bit d'information dont la valeur est fonction de l'information supplémentaire. 21. Dispositif d'insertion selon la revendication 20, caractérisé en ce que les moyens (6) de modification sont adaptés à considérer un bit d'information dont la valeur est aussi fonction d'au moins une caractéristique du sous ensemble. 22. Dispositif d'insertion selon la revendication 20 ou 21, caractérisé en ce que les moyens (6) de modification sont adaptés à considérer un bit d'information dont la valeur est aussi fonction d'au moins une caractéristique des sous-ensembles précédemment traités. 23. Dispositif d'insertion selon l'une quelconque des revendications 20 à 22, caractérisé en ce que les moyens de modification (6) sont adaptés à considérer un bit d'information dont la valeur est aussi fonction d'une clé secrète (K). 24. Dispositif d'insertion selon l'une quelconque des revendications 15 à 23, le fichier contenant les sous-ensembles codés comportant plusieurs couches, caractérisé en ce que les moyens de modification (6) sont adaptés à modifier seulement les couples débit et distorsion correspondant à la première couche. 25. Dispositif d'insertion selon l'une quelconque des revendications 15 à 23, le fichier contenant les sous-ensembles codés comportant plusieurs couches, caractérisé en ce que les moyens de modification (6) sont adaptés à modifier les couples débit et distorsion correspondant aux différentes couches. 26. Dispositif d'insertion selon la revendication 25, caractérisé en ce que pour chacune des couches, les moyens de modification (6) sont adaptés à modifier les couples débit et distorsion en fonction d'une même information supplémentaire. 27. Dispositif d'insertion selon l'une quelconque des revendications 15 à 26, caractérisé en ce qu'il est adapté à insérer une information supplémentaire qui est une information d'authentification. 28. Dispositif d'extraction d'une information supplémentaire insérée dans un ensemble de données représentatives de grandeurs physiques par le procédé selon la revendication 15, caractérisé en ce qu'il comporte : - des moyens (8) de lecture, pour chacun des sous-ensembles, de l'indice représentant le couple débit et distorsion, - des moyens (9) d'extraction de l'information supplémentaire. 29. Dispositif (10) d'insertion selon l'une quelconque des revendications 15 à 27, caractérisé en ce que les moyens de partition, codage entropique, sélection, écriture et modification sont incorporés dans : - un microprocesseur (100), - une mémoire morte (102) comportant un programme pour traiter les données, et - une mémoire vive (103) comportant des registres adaptés à enregistrer des variables modifiées au cours de l'exécution dudit programme. 30. Dispositif (10) d'extraction selon la revendication 28, caractérisé en ce que les moyens de lecture et extraction sont incorporés dans : - un microprocesseur (100), - une mémoire morte (102) comportant un programme pour traiter les données, et - une mémoire vive (103) comportant des registres adaptés à enregistrer des variables modifiées au cours de l'exécution dudit programme. 31. Appareil de traitement de signal numérique, caractérisé en ce qu'il comporte des moyens adaptés à mettre en oeuvre le procédé selon l'une quelconque des revendications 1 à 14. 32. Appareil de traitement de signal numérique, caractérisé en ce qu'il comporte le dispositif selon l'une quelconque des revendications 15 à 30.