Brevet FR2834854A1 — publié le 20030718

10. Signal destiné à transporter un programme d'ordinateur selon la revendication 9. L'invention concerne un procédé et un système permettant notamment d'estimer les transformations géométriques inconnues survenues sur des données, par exemple une image, une séquence audio ou une vidéo. Elle trouve son application pour corriger les déformations survenues lors de la transmission d'images et/ou pour obtenir des informations sur le tatouage porteur de message. L'invention est utilisée par exemple en Watermarking. En effet, une transformation géométrique sur une image rend la plupart du temps le tatouage illisible. En tatouant un motif de référence dans l'image il est ainsi possible d'estimer, dans un lecteur de tatouage par exemple, la transformation géométrique survenue, puis de l'inverser avant d'effectuer le décodage du tatouage porteur de message. En tatouage, la résistance aux transformations géométriques est un problème crucial. La détection du tatouage est souvent rendue impossible lorsque l'image reçue est déformée par rapport à l'image originale. Des modifications de la géométrie de l'image surviennent en effet fréquemment lors de la diffusion ou de l'exploitation de l'_uvre. C'est le cas notamment des découpages ou des changements d'échelle qui peuvent être liés aux changements de format. Les conversions analogique/numérique et numérique/analogique peuvent introduire une déformation sur l'image ou un > Proceedings of 2nd Information Hiding Workshop visant à empécher une détection correcte du tatouage. Différentes méthodes visant à contrer l'effet néfaste des modifications géométriques ont donc été développées. Elles sont classées en cinq catégories: 1) Le tatouage d'un motif de référence connu à l'émission et à la réception Une méthode simple qui utilise un motif de référence est décrite dans le brevet FR 2.792.797. Dans cette invention, un motif de référence appelé cotatouage est ajouté à l'image. A la réception, la recherche du maximum de l'autocorrélation entre l'image reçue et le motif de référence 0 permet de déterminer les coordonnées de l'origine de l'image initiale. Cette méthode est résistante aux décalages, aux découpes et aux translations de l'image, c'est-à-dire à des déformations globales de l'image. Elle devient inefficace lorsque la transformation géométrique est plus compliquée, par exemple une rotation, un changement d'échelle ou zoom, une déformation de tapis, etc. S.Pereira et T.Pun ont proposé dans le document intitulé >, Proceedings of International Workshop on information, une méthode plus générale de cotatouage permettant de résister à des transformations affines de l'image. Cette méthode est toutefois limitée et ne permet de recaler l'image que pour des transformations géométriques affines. Une autre méthode proposée par S.Voloshynovsky, F. Deguillaume, T. Pun dans le document Proceedings of ICIP 01, permet de résister à des transformations plus complexes, globales etiou locales. Un motif de référence est tatoué orthogonalement au message, qui lui consiste en un motif symétrique et périodique. Le décodage du tatouage et l'estimation de la transformation se font conjointement. Deux tatouages sont insérés: le tatouage porteur de message w1 et un tatouage de référence w2 (cotatouage). Le tatouage porteur de message consiste en un bloc de taille Kx, Ky symétrisé et périodisé de façon à obtenir un bloc de la taille de l'image. L'estimation se fait dans le domaine de Fourier: le fait que wl soit périodique implique la présence de pics réqulièrement espacés dans le domaine de Fourier. Pour chaque bloc de l' image, on considère que la déformation locale peut être approximée par une transformation géométrique affine (combinaison de rotation, changement d'échelle non uniforme et translation). Au décodage, on recherche pour chaque bloc, la transformation affine qui minimise l'écart entre le tatouage de référence et l'image déformée, sous réserve que cette transformation soit plausible (on élimine par exemple les étirements trop importants). Cette méthode est efficace pour recaler les tatouages mais elle est complexe car elle nécessite une recherche exhaustive de paramètres pour chaque bloc de l'image. De plus, eile est fondée sur une approximation (une transformation locale non linéaire ne se réduit pas à une succession de transformations affines) et ne prend pas en compte les corrélations existant entre paramètres estimés pour des blocs voisins. 2) le tatouage dans un espace invariant par transformation géométrique O'Ruanaidh et T.Pun dans la référence intitulée ' Signal Processing, vol 66 N 3, p 303-317, proposent d'effectuer le tatouage dans un espace invariant par rotation, translation, mise à l'écheile, pour s'affranchir des transformations géométriques éventuellement réalisées sur l 'image. Ceci est obten u en ti rant parti des p ropriétés de la transfo rmée de Fourier-Mellin. L'avantage de cette méthode est de permettre la résistance aux transformations géométriques sans avoir besoin de synchronisation préalable. L'inconvénient est que les propriétés d'invariance ne sont plus respectées lorsqu'on remplace la translation circulaire par une découpe de l'image. De plus, cette méthode est complexe et coûteuse en temps de calcul et peut présenter des problèmes de calcuis numériques. D'autre part, la densité d'information enfouie dans l'image varie fortement. 3) Le tatouage dans un référentiel lié à l'image Une autre solution consiste à choisir un référentiel lié à l'image pour l'enfouissement et la détection du tatouage. Lorsque la géométrie de l' i mage sera déformée, le réfé rentiel se ra modifié de la même façon et il se ra alors possible de retrouver la marque sans avoir besoin d'une synchronisation extérieure. La méthode décrite dans le document > de P.Bas, J.M Chassery et B.Macq, Proceedings of SPIE - janvier 2000, utilise un référentiel local lié à un ensemble de zones caractéristiques de l'image. Ces zones peuvent être en particulier définies par des points d'intérêt, tels que ceux obtenus par un détecteur de Harris décrit dans le document Vision Conf, p.147-151 -1988. 4) L'insertion redondante du tatouage dans l'image. 5) La recherche exhaustive de toutes les transformations possibles. L'idée de l'invention consiste notamment à estimer des déformations locales ou considérées comme locales introduites dans des données, telles que des images, de l'audio, de la vidéo etc., I'estimation pouvant être effectuée globalement ou localement. L'invention concerne un procédé pour déterminer au sein d'un dispositif tel qu'un lecteur de tatouage, les variations géométriques locales survenues dans des données, les données comportant un motif de référence X, caractérisé en ce qu'il comporte au moins les étapes suivantes: modéliser les variations géométriques locales à l'aide d'une variable d'indices J. ladite variable permettant de mettre en correspondance les échantillons des données déformées avec ceux des données originales, estimer les variations locales en utilisant le motif de référence X inclus, un modèle de déformation locale des données et les données déformées. Le dispositif est par exemple un récepteur de décodage de tatouage. Le procédé estime globalement ou locaiement par exemple les variations géométriques locales. Le modèle de déformation locale est par exemple un modèle de Markov. Les données peuvent être de type audio, vidéo, ou des images. Selon une variante de réalisation, le procédé comporte une étape o les données estimées des déformations locales sont utilisées pour déduire une information sur le tatouage et/ou corriger les données. L'invention concerne aussi un dispositif permettant d'estimer des o variations géométriques locales survenues dans des données, lesdites données comportant un motif de référence X. Il est caractérisé en ce qu'il comporte au moins un microprocesseur adapté à estimer les variations géométriques locales survenues dans les données en utilisant le motif de référence inclus, un modèle de déformation locale des données et les données déformées, les variations géométriques locales des données déformées étant modélisées à l'aide d'une variable d'indices J permettant de mettre en correspondance les échantillons des données déformées avec ceux des données originales Les variations géométriques locales des données sont survenues par exemple lors de leur transfert ou encore au cours de leur stockage. Le microprocesseur est par exemple adapté à déterminer les variations géométriques locales pour des données de type audio, vidéo ou des images. Il peut aussi être adapté à corriger les déformations induites dans des images reçues par un lecteur de tatouage et/ou à produire une information sur le tatouage. L'invention présente notamment les avantages suivants: Ie taux de décodage correct du tatouage est grandement amélioré, une estimation optimale des transformations géométriques survenues sur les données support au cours de leur transmission, de leur stockage, etc. à partir du motif de synchronisation connu. À Une complexité de l'estimation faible, comparée à un algorithme de recherche exhaustive. D'autres caractéristiques et avantages de l'invention apparatront mieux à la lecture de la description qui suit, donnée à titre illustratif et nullement limitatif en regard des figures annexées qui représentent: Ia figure 1 un schéma bloc d'un exemple de lecteur de tatouage selon l'invention, Ia figure 2 un exemple de valeurs prises par la variable d'indice lors d'une transformation de jitter À Ia figure 3 la variable d'indices lorsque le jitter est une chane de Markov, Ia figure 4 un exemple de motif de synchronisation, Ia figure 5 un schéma d'insertion du tatouage porteur de message et du tatouage de synchronisation, 15. Ia figure 6 un schéma d'insertion du tatouage porteur de message et du tatouage de synchronisation, - À Ia figure 7 un modèle de canai à jitter et bruit tonal combiné, Ia figure 8 le bruit géométrique et tonal, Ia figure 9 un exemple d'algorithme de Viterbi, 20. Ia figure 10 un autre exemple d'algorithme de Viterbi, De manière à mieux faire comprendre le procédé selon l'invention, la description qui suit est donnée pour un type de données support particulier, les images fixes, sachant que le procédé s'applique généralement 2 à tout type de données support: À à une dimension, audio par exemple, À à deux dimensions, image fixe par exemple, à trois dimensions, séquences d'images ou volumes 3D par exemple, etc. La figure 1 représente un schéma bloc d'un lecteur de tatouage selon l'invention. Les données déformées 1 sont reçues dans un lecteur de tatouage ou récepteur connu de l'Homme du métier. Ce dernier comprend un processeur 2 adapté pour estimer les déformations introduites dans les données, il est par exemple programmé pour mettre en _uvre les étapes des différentes variantes du procédé décrit ci-après. Les déformations estimées 3 sont ensuite utilisées par exemple soit pour en déduire une information 4 sur le tatouage porteur de message lui-même, soit pour corriger 5 les déformations. La figure 2 représente un exemple de valeurs prises par la variable d'indice (définie ci-après) caractérisant une déformation lors d'une o transformation de jitter sur une image. L'image de gauche I correspond à l'image originale et l'image de droite Z à l'image déformée. Les flèches Jy traduisent les correspondances entre les différentes lignes des images. Quelques définitions et notations utilisé dans la description sont aussi données: L'expression > fait référence à des données dans lesquelles le tatouage est inséré, ces données peuvent être de type audio, vidéo, etc Le terme , peut désigner alors un pixel, une ligne, une colonne d'une image, un échantillon de signal audio (cas de données audio), une image entière (cas de la vidéo, lorsque la transformation supprime ou dupplique des images de la séquence vidéo) Le mot À I: image originale (données support). I(x,y) représente la valeur du pixel d'abscisse x et d'ordonnée y. 30. (n,k): taille de I (n est la hauteur de l'image et k sa largeur) X: motif de cotatouage À Iw: image tatouée. À Z: image éventueilement tatouée et éventuellement altérée reçue par le lecteur / détecteur de tatouage. 5. (n',k'): taille de Z (n' est la hauteur de l'image et k' sa largeur) À Zy dénote la ligne N y de l'image Z J: variable d'indice modélisant la déformation géométrique subie par l' image. Cette variable permet de mettre en correspondance les échantillons de données déformées reçues par un récepteur avec ceux lO des données originales, il se présente par exemple sous la forme d'un champ vectoriel, À La probabilité d'une variable Y est notée: P(Y) À La probabilité jointe d'un ensembie de variables Y.... Yq est notée P(Y,;;Yq) 15. La probabilité d'une variable Y conditionnellement à une variable Y2 est notée P(Y/Y2). La formule de Bayes donne la relation entre la probabilité conditionnelle et la probabilité jointe: ( 2) pyz) À Ya b désigne le vecteur formé des composantes (a,a+1,...,b) du vecteur Y À ArgmaxLf(x)] désigne la valeur de x pour laquelle la valeur de f(x) est maximale. De plus dans le cadre de la description, on généralise le modèle de Markov de la manière suivante: la donnée de la variable d'indice J (matrice de la taille de l'image) caractérise de façon unique toute tranfsormation géométrique. Cependant, pour qu'une transformation géométrique soit réaliste, c'est-à-dire ne déforme pas trop l'image, J prend certaines valeurs uniquement. En particulier, les composantes de J doivent être corrélées, par exemple. Autrement dit, les valeurs J(x+dx, y+ dy) pour des variations o dx et dy sont suffisamment > dépendront directement de J(x,y), valeur prise par la variable d'indice en x,y. Par exemple, J(x+dx, y+dy) sera généralement proche de J(x, y) pour la plupart des modèles réalistes de transformations. Il existe un grand nombre de modèles permettant d'exprimer la corrélation locale entre composantes de J. Le modèle le plus simple, pour des données à 2 dimensions, est celui des champs de Markov. Dans ce modèle, la valeur J(x, y) dépend uniquement des valeurs de J dans un voisinage local, c'est-àdire des valeurs de J(x+dx, o y+dy) pour dx, dy petits. A une dimension, le modèle correspondant est celui des chanes de Markov, o J(x+dx) ne dépend que de la valeur prise par J(x). C'est ce modèle qui est utilisé dans le procédé à titre illustratif et nullement limitatif pour décrire un exemple de réalisation du procédé selon l'invention. Le modèle de Markov présente notamment comme avantage d'être puissant et de s'appliquer à un grand nombre de déformations. Notons que l'on distingue les chanes/champs de Markov homogènes (o les lois de probabilité conditionnelles sont indépendantes de la position du pixel considéré), des chanes/champs de Markov inhomogènes (o les lois conditionnelles varient spatialement). Cependant, il peut s'avérer utile de considérer des cas o les corrélations entre pixels sont étendues et plus complexes. Dans la description, I'expression , est utilisée pour désigner tout modèle de déformation géométrique o les composantes de la variab le d' indice sont locale ment ou g lobalement corrélées. La figure 3 représente le graphe d'états associés avec les probabilités de transition entre états pour un modèle de Markov, dans le cas particulier o la transformation géométrique est un jitter, o la probabilité de suppression d'une ligne ou colonne (PsuP) et la probabilité d'insertion dune ligne ou colonne (pins) sont égales (pins=Psup=P) Description du motif de synchronisation ou cotatouage Le motif de synchronisation dans le cas de l'image fixe est par exemple une matrice X de la taille de l'image 1. Dans u ne réal lsation particu liè re de l' invention, la matrice est obtenue par simulation d'une loi gaussienne de moyenne nulle et de variance CT2, chaque élément de la matrice étant indépendant des autres éléments. La valeur numérique de â2 détermine la robustesse ainsi que la visibilité du procédé. Le motif de synchronisation X est ensuite tatoué dans l'image I pour obtenir l'image marquée Iw. lo Dans une réalisation particulière de l'invention, le motif est ajouté à l'image de la façon suivante Iw(x,y) = I(x,y) + X(x,y) pour toutes les coordon nées (x, y) des pixels de l' i mage. Dans une autre réalisation de l'invention, le motif est additionné à l'image de façon adaptative afin d'augmenter la robustesse tout en diminuant la visibilité: 1w(x,y) = I(x,y)+(x,y)*X(x,y); y(x,y) étant un coefficient de pondération de la force du tatouage dépendant par exemple des carac- téristiques locales de l'image (variance, texture...) afin d'obtenir une meilleure invisibilité. Le motif de synchronisation X(x,y) est de plus connu par l'appareil détectant et/ou décodant les tatouages. Un exemple de motif de cotatouage (motif de synchronisation) est donné en Figure 4. Dans cet exemple, chaque valeur est arrondie à l'entier le plus proche. Insertion du tatouage porteur L'insertion du tatouage porteur de message est effectuée soit avant 1'insertion du motif de synchronisation par exemple suivant les étapes données à la figure 5 soit après selon les étapes données à la figure 6. A la figure 5 le motif de synchronisation 1 est tatoué avant le tatouage de message 2 pour donner 1'image tatouée 3. A la figure 6 le tatouage porteur de message est tatoué 4 avant le motif de synchronisation 5 pour donner 1'image tatouée 8. Toute technique de tatouage peut être utilisée pour introduire le message. Canal de tatouage Comme il a été mentionnée précédemment, lors de l'exploitation, de la transmission ou encore du stockage de l'image (plus généralement des données reçues par un lecteur de tatouage), cette dernière peut subir des modifications. Ces modifications peuvent être de nature tonale (la valeur des p ixe ls est mod ifiée) eVou géométrique (la géométrie de l' image est modifiée et la localisation des pixels diffère entre l'image originale et l'image modifiée). Les modifications opérées sur l'image dégradent généralement aussi le tatouage enfoui. Ces modifications sont en général aléatoires et inconnues lo rs de l'écritu re d u tatouage et l'ensemb le de ces modifications est désigné sous le nom " canal de tatouage ''. Les déformations introduites sur i'image consistent par exemple en un jitter de lignes ou de colonnes, tel que décrit dans le document " > de F.Petitcolas, R.J. Anderson et M.G.Kuhn - 1998 - Procoedings of 2nd Information Hiding Workshop, combiné à un bruit tonal de variance notée ob2. Ce bruit tonal, dans le cas d'une méthode additive de tatouage peut être par exemple provoqué par l'image elle-même qui est considérée comme un vecteur aléatoire. Le jitter de lignes, respectivement de colonnes, duplique aléatoirement certaines lignes, respectivement certaines colonnes, de l'image. La probabilité de suppression d'une ligne est notée PsuP et la probabilité d'insertion d'une ligne est notée pins. Modélisation du canal de tatouage avec déformations géométriques Les déformations et les transformations géométriques peuvent être modélisées en utilisant une variable aléatoire appelée . Dans le cas de l'image fixe, cette variable est un champ vectoriel à deux dimensions de la taille de l'image et notée J(x,y)=[JX(x,y),JY(x,y) ]. Cette variable indique, pour chaque pixel en position (x,y) de l'image modifiée Z. la position (x',y') du pixel correspondant dans l'image originale I o x'=JX(x,y) indique l'abscisse dans l'image originale et y'=JY(x,y) indique l'ordonnée. Ceci est équivalent à la formule suivante: Z(x,y) = I(JX(x,y),JY(x,y)). Modélisation du canal de jitter Dans le cas du jitter de ligne, JX(x,y) est déterministe et égal à x; JY(x,y) est aléatoire et ne dépend que de y. Dans le cas du jitter de colonne, JY(x,y) est déterministe et égal à y; Jx(x,y) est aléatoire et ne dépend que de x. Dans ce cas précis, seule une des composantes de la variable d'indice est aléatoire et c'est cette dernière composante qui est prise en compte par la suite. Les notations utiiisées sont J(x) ou Jx (cas d'un jitter de colonnes) ou J(y) ou Jy (cas d'un jitter de lignes). Afin de mieux faire comprendre le procédé selon l'invention les différentes étapes explicitées par la suite sont relatives au cas particulier de du jitter de lignes. Le cas du jitter de colonnes est totalement symétrique, en remplaçant la variable x par y et inversement. On a pour le jitter de lignes: Zy = I(Jy) c'est à dire que la ligne N y de l'image reçue Z correspond à la ligne N Jy de l'image originale 1. On peut montrer dans le cas du jitter que J(y) est une chane de Markov, selon une méthode décrite dans le document ' - juillet 2001 - Proceedings of SPIE, Image Security Technologies and Applications, volume 4472. Les probabilités de transition de cette chane de Markov dans le cas du jitter (voir Figure 3), sont données par: À P(Jy=i/Jy-1=i) = Pins (duplication d'une ligne) À P(Jy=i/Jy 1=i-1) = (1 -Pins)(l -Psup) (cas normal) À P(Jy=i/Jy-1=i-2) = (1-pin5)(1-p5up)psup (suppression d'une ligne) À P(Jy=i/Jy-1=i-3) = (1pjn5)(1-p5up)psup2 (suppression de 2 lignes) À.... À P(Jy=i/Jy 1=ij-1) = (1-pjn5)(1-p5Up)pSup (suppression de j lignes) Etc. l o Le procédé de l'invention s'applique également pour d'autres valeurs des probabilités de transition. La variable d'indice doit de préférence respecter cette condition de "Markovianité" pour conduire à des résultats optimaux. Modélisation du canal combiné jitter + bruit additif Le canal de tatouage est modélisé de façon réaliste par un canal combiné formé d'un jitter suivi d'un bruit tonal, selon la figure 7. Dans l'exemple de réalisation particulière et non limitative décrite par la suite, le type de bruit tonal considéré est un bruit additif gaussien blanc de variance notée et par l'absence de ces liens entre les valeurs prises par le bruit tonal. Si Uj est la valeur de l'échantillon N i originel et Vj la valeur de i'échantillon N i bruité, la condition de bruit blanc s'exprime par: Ptonaf Vi,Vj Ui,Uj) = Prona(Vi /Ui)P(Vj /Uj) On notera P(Zy/ly=m) la probabilité liée au bruit tonal pour l'indice y. Plus précisément: P(Zy /] y = m) = Pronal(Zy /Xm) Dans le cas particulier o le bruit tonal est blanc et additif et suit une loi gaussienne de moyenne nulle et de variance rb2 on a: _ Ptonal(X) = e 2ô É b et la probabilité d'avoir en sortie la valeur Vk en position k sachant qu'on a la valeur Uk en entrée en position k est (Vi -U;)2 P(Vi/Uj)=Ptona,(Vi-Ui)= e 2ab 6b lo D'autre, part, dans le cas du jitter, on doit calculer la contribution du bruit tonal sur une ligne entière de longueur k pixels. Dans le cas d'un bruit blanc identiquement distribué on a: x2 Ptonal(X) = 1 e 2cb b et la probabilité d'avoir en sortie la valeur Vk en position k sachant qu'on a la valeur Uk en entrée en position k est (Vj -Uj)2 P(Vj /Uj) = Ptonal (Vj - Ui) =-e 2cb2 Jcsb D'autre, part, dans le cas du jitter, on doit calculer la contribution du bruit tonal sur une ligne entière de longueur k pixels. Dans le cas d'un bruit blanc identiquement distribué on a: É(Z(iyX(i,Jy))2 p(Zy/Ty =m)= r|Ptonal(Z(i,y)-X(i,iy))= 2Ob2 1=1 (6b)k Après avoir introduit certaines conventions et hypothèses la suite de la description décrit les différentes mises en _uvre par le procédé selon l'invention. Estimation des transformations géométriques Le lecteur de tatouage reçoit une image tatouée Z qui a éventuellement subi des déformations géométriques qui sont inconnues à la réception. A partir de Z. le procédé consiste à déterminer les déformations éventuelles afin par exemple de détecter eVou décoder le tatouage présent. Le décodage eVou la détection se trouvent améliorés lorsque la 0 transformation géométrique est partiellement ou totalement connue. Le but de l'invention est notamment de fournir un procédé permettant d'estimer de façon optimale la réalisation particulière du jitter survenue sur l'image, donc d'estimer la valeur prise par J(y) pour toutes les valeurs possibles de y (dans le cas d'un jitter de lignes). On notera J l'ensemble des valeurs J(y) pour tous les y. Pour cela, le procédé met en ceuvre une méthode faisant appel par exemple à un modèle de Markov, ou plus généralement de type de Markov, comme il a été exposé ci-avant. -L'idée est d'estimer, soit de façon globale la variable d'indice J (en tenant compte notamment des corrélations locales entre composantes de J), soit d'estimer chaque composante de J une part une.Deux variantes de réalisation sont exposées ci-après à titre illustratif et nullement limitatif: le premier procédé est nommé procédé forward - backward et le deuxième procédé Viterbi. Première variante de réalisation = Procédé forward - backward La variante du procédé dite > consiste notamment à rechercher pour chaque composante Jy de la variable d'indice J. la valeur qui est a posteriori la plus probable compte tenu de l'observation de l'image reçue Z. et de la conaissance du motif de cotatouage X, c'est-à dire: Jy = Argmax(P(Jy =m/Z;X)) m o y est l'estimation recherchée pour la ligne N y de l'image déformée. En appliquant la formule de Bayes, on obtient de façon équivalente: y =AIgmax(P(]y =m;Z/X)) (équation fw.1) m Pour simplifier l'écriture, la variabie X n'est plus mentionnée dans les notations. Toutes lesprobabilités mentionnées doivent donc s'entendre conditionnellement à X. Notations: soit ccy(m) la quantité cly(m)=P(Z,y;Jy=m) cy(m) représente la probabilité d'observer les y premieres lignes de l'image recue (Z,y)' et d'avoir la ligne N y de l'image reçue correspondant à la ligne N m de l'image originale, Et,By(m) la quantité y(m)=P(Zy+,,n/Jy=m). By(m) correspond a la probabilite d'observer les n'-y dernières lignes de l'image recue (Zy+1,n'), SOUS l'hypothèse que la ligne N y de l'image reçue correspond à la ligne N m de l'image originale. P(Jy=m;Z /X) s'exprime par exemple en fonction de oy(m) et By(m), en effet p(-Jy =m;Z/X)=P(]y =m;Z1;y;zy+1;nt/x) P(Z y+1;n' / J y = m; Z1;y; X) P(Jy = m; Z1;y / X) (équ ation fw.2) P(Zy+1;n, /Jy =m;XiD(Jy =m;Z1;y /X) = ay (m),By (m) La première ligne d'équation est simplement un développement du terme recherché. La seconde ligne est obtenue à l'aide de la formule de Bayes. Dans la troisième ligne, le premier terme vient du fait que, puisque le bruit additif est blanc, la valeur observée pour les lignes y+1 à n' de l'image reçues dépend uniquement de la variable d'indice en y et de la valeur du tatouage original; et est indépendante des valeurs prises par les lignes 1à y. Dans le cas d'un modèle de Markov, il est possible de calculer de manière récursive ccy(m) et y(m), ce qui rend le calcul moins complexe comparé à un calcul direct. Etape 1 = Calcul de cc"(m) cy(m) est initialisé de ia façon suivante en y=1 (ligne N 1 de l'image reçue), pour toutes les valeurs de m entre 1 et n (hauteur de l'image origine): c, (m) = P(Z'/J, = m)P(J, = m) lO puis ay(m) est calculé récursivement pour toutes ies valeurs de y entre 2 et n' (hauteur de l'image reçue) et pour toutes les valeurs de m entre 1 et n. cy+ ('n) = P(Z,y+; y+1 = m) = p(zy+; z,y; y+, = m) j=m j_O ( y+; 1,y;]y j; ]y+' =m) = p(Zy+, /Z,y;]y = j;ly+l = m)(]y+1 = m/ZJ,y;.Jy = j)P(Z1'y;]y = i) j=0 = p(zy+' /]y+, = mi(]y+, = m/]y = j)P(Z,Y;]Y = i) j=0 j-m j=0 Etape 2 = Calcul de y(m) y(m) est initialisé à 1 en y=n' pour toutes les valeurs de m entre 1 et n. y(m) est initialisé de la façon suivante en y=n'-1, pour toutes les valeurs de m entre 1 et n: j=n lné-(m)= ÉP(Znt/Jn' = i)Pkn'= j/In'- =m) j=m puis y(m) est calculé récursivement pour toutes les valeurs de y entre 1 et n'-2 et pour toutes les valeurs de m entre 1 et n. j =n y(m)=,P(Zy+/Jy+ = j)P( Jy+ = j/Jy =m)[y+(j) 3y-1(m)=p(2;yn/Jy-1=m) =P(Zy;zy+1,n/Jy-1 =m) = P(Zy;Zy+1n;Jy =j/Jy_l=m) j=m = P(zy+1,n/zy; Jy=j/Jy-1=mi(zy/Jy =j;Jy-1=mi(Jy =j/Jy_1=m) j=m P(Zy+1,n/Jy j>(Zy/Jy=j> (Jy =j/Jy_1=m) j=m = y(mi(zy/Jy=j>(Jy=j/Jy-1 =m) j=m Etape 3 = Calcul final Le procédé calcule ensuite la quantité y(m) pour tous les y de 1 à n' et pour tous les m de 1 à n y (m) = y (m)By (m) En utilisant les équations fw1 et fw2 on obtient la valeur estimée de Jy pour tous les y entre 1 et n' qui s'exprime par la relation Jy = Argmax (\y (m)) m=L,n c'est à dire que l'on prend pour valeur de Jy la valeur de m pour laquelle lo y(m) est maximale. Deuxième variante de réalisation = Procédé Viterbi La variante de mise en oeuvre du procédé dite > correspond à rechercher la valeur de la variable d'indice J qui est globalement la plus probable compte tenu de l'observation de l'image reçue, c'est à dire: J = Algmax(P( =Kz;x)) K o J est l'estimation recherchée pou r l' ensemble des lignes de l' i mage déformée, En appliquant la formule de Bayes, on obtient de façon équivalente: J = Argmax(P( = K;z/x)) (équation vit 1) K Notons Vy(m) la quantité (comme dans la description du procédé forward-backward, ies probabilités doivent s'entendre ici conditionnellement àX) Vy(m)=MaxP'ZI Y;'Y =m;] Y-l' Jly-l et le vecteur aléatoire associé Ay(m), de probabilité Vy(m): Ap,m' = ArgMaxPZ.Y;]Y = m;, y_) Jl y-l La variable P(Z1,y;Jy=m;J1,y-1) correspond à la probabilité conjointe d'observer les y premières lignes de l'image reçue et d'avoir les y premières composantes de la variable d'indice qui prennent une certaine valeur (en particulier la ligne N y de l'image reçue correspond à la ligne N m de l'image d'origine). Vy(m) correspond à la valeur maximale prise par cette probabilité, lorsque llon " essaie " toutes les valeurs a priori possibles pour J1,y-, Ay(m) correspond alors à la valeur des y-l premières composantes de la variable d'indice (J,y-1) qui maximisent cette probabilité. On peut exprimer l'équation vit.l en fonction de Ay(m): Argm (P(J = K;Z/X) )= Argmax(Pt];n = Ki,n;Zl,n /X)) = Argmax(Pt J1;n -! = KI,n'-; Jn = n'; Zt,n'/ X)) = ArgmaxArgmax (P(];n-i =K 1,n'-T;]n' =m;Z (n' / x))>l KI,n'-!) = Argm ( Ant(m)) m Vy(m) est initialisé en y=1 pour tous les m de 1 à n V' (m) = P(Z, / J.' = m)P( J. = m) Le procédé calcule de manière récursive par exemple, Vy(m) pour tous les y de 2 à n' et pour tous les m de 1 à n de la façon suivante (voir Figure 9): Sur la figure la flèche F' correspond à une copie, la flèche F2 au cas > et la flèche F3 à une suppression. On obtient alors Ay(m) comme le vecteur associé. La valeur estimée de J est alors donnée en n par JD' = Argmax (Vn, (m)) m=l,,n c'est à dire que l'on prend pour valeur de Jn la valeur de m pour laquelle Vn (m) est maximale. Les autres valeurs de Jy (y > de la manière suivante (figure 10): Jy = ly (Jy+I) Une fois les valeurs estimées des variables d'indices correspondant à des déformations introduites dans l'image originale, le procédé les utilise par exemple pour obtenir par exemple l'image rectifiée désignée par Z'. Inversion de la transformation de jitter Le procédé utilise la variable d'indices estimée J afin d'inverser la transformation de jitter sur l'image Z. pour obtenir l'image rectifiée Z'. Comme la transformation de jitter n'est pas strictement inversible, puisque certaines lignes ou colonnes de l'image sont supprimées, donc définitivement perdues, plusieurs procédés sont possibles pour inverser le jitter. Un des procédés possible est le suivant: soit j l'ordonnée d'une ligne de l'image originale. soit {a1....am} I'ensemble de toutes les composantes de la variable d'indice J telles que: vie {l..m} Jai i On obtient la ligne N j de Z' de la façon suivante: Si m> 1, la ligne N j est obtenue de Z' est obtenue en faisant la moyenne des lignes N {Ja,...Jam} de l'image reçue Z. Si m=0 (la ligne N j a été supprimée par le jitter), on obtient la ligne N j de Z' par interpolation entre la ligne N j-1 et N j+1 deZ'. Une autre solution consiste à adapter le module de lecture du tatouage porteur en fonction de la valeur estimée du jitter. Par exemple, si la ligne N j de l'image originale a été supprimée, I'information de suppression est fournie au détecteur afin que celui ci n'en tienne pas compte dans l'estimation du tatouage (décodage souple). Sans sortir du cadre de l'invention les étapes décrites ci-dessus s'appliquent pour estimer les déformations locales introduites dans des données audio au cours de leur transmission ou de leur stockage. Par exemple le procédé et le dispositif selon l'invention s'applique par exemple dans les domaines suivants: À Tatouage: o. Applications de gestion des droits d'auteurs: contrôle automatique de diffusion, traçage d'utilisation de contenu (fingerprint), protection contre les copies sauvages (DVD notamment), Applications de sécurité: authentification de la source des données, protection de données confidentielles, 25. Applications méta-données: le tatouage permet d'insérer dans l'_uvre une étiquette persistante. Cette technique peut être utilisée pour l'audimétrie, la gestion de contribution dans les studio de télévision ou en post-production, I'indexation et la gestion de bases de données hétérogènes, la transmission de données annexes (sous- titres...) compatible avec tous les standards TV etc., À Communications À L'invention peut être utilisoe dans le domaine des communications numériques, lorsque 1'on cherche à s'affranchir d'un jitter de phase afin de diminuer le taux d'erreur en réception, Restauration d'image L'invention peut être utilisée pour compenser les déformations géométriques sur une image, dans une application autre que le lo tatouage (archivage d'images et de vidéo au format analogique). REVENDICATIONS 1 - Procédé pour déterminer au sein d'un dispositif tel qu'un lecteur de tatouage, les variations géométriques locales survenues dans des données, les données comportant un motif de référence X, caractérisé en ce qu'il comporte au moins les étapes suivantes: modéliser ies variations géométriques locales à l'aide d'une variable d'indices J. ladite variable permettant de mettre en correspondance les échantillons des données déformées avec ceux des données originales, estimer les variations locales en utilisant le motif de référence X inclus, un modèle de déformation locale des données et les données déformées. 2 - P rocédé selon la revendication 1 caracté risé en ce q u ' il esti me globale me nt les variations géométriq u es locales. 3 - Procédé selon la revendication 1 caractérisé en ce qu'il estime localement les variations géométriques locales. 4- Procédé selon l'une des revendications 1 à 3 caractérisé en ce que le modèle de déormation locale est un modèle de Markov. - Procédé selon l'une des revendications 1 à 4 caractérisé en ce que les données sont des données audio ou de type vidéo ou des images. 6 - Procédé selon l'une des revendications 1 à 5 caractérisé en ce que les données estimées des déformations locales sont utilisées pour déduire une information sur le tatouage eVou corriger les données reçues. 7 - Dispositif permettant d'estimer des variations géométriques locales survenues dans des données, lesdites données comportant un motif de référence X, caractérisé en ce qu'il comporte au moins un microprocesseur adapté à estimer les variations géométriques locales en utilisant le motif de référence inclus, un modèle de déformation locale des données et les don nées déformées, les variations géométriq ues locales d es donn ées déformées étant modélisées à l'aide d'une variable d'indices J permettant de mettre en correspondance les échantillons des données déformées avec ceux des données originales. 8 - Dispositif selon la revendication 7 caractérisé en ce que le microprocesseur est adapté à déterminer les variations géométriques locales lo pour des données de type audio, vidéo ou des images. 9 - Dispositif selon l'une des revendications 7 et 8 caractérisé en ce que le microprocesseur est adapté à corriger les déformations induites dans des images reçues par un lecteur de tatouage eVou à produire une information