WO1999045696A1 - Procede de dissimulation d'informations binaires dans une image numerique - Google Patents

Procede de dissimulation d'informations binaires dans une image numerique Download PDF

Info

Publication number
WO1999045696A1
WO1999045696A1 PCT/FR1999/000485 FR9900485W WO9945696A1 WO 1999045696 A1 WO1999045696 A1 WO 1999045696A1 FR 9900485 W FR9900485 W FR 9900485W WO 9945696 A1 WO9945696 A1 WO 9945696A1
Authority
WO
WIPO (PCT)
Prior art keywords
document
information
digital
initial
image
Prior art date
Application number
PCT/FR1999/000485
Other languages
English (en)
Inventor
Jean-Luc Dugelay
Original Assignee
Institut Eurecom
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institut Eurecom filed Critical Institut Eurecom
Priority to EP99938027A priority Critical patent/EP0985313A1/fr
Priority to US09/423,266 priority patent/US6643383B1/en
Publication of WO1999045696A1 publication Critical patent/WO1999045696A1/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/0028Adaptive watermarking, e.g. Human Visual System [HVS]-based watermarking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • H04N1/32149Methods relating to embedding, encoding, decoding, detection or retrieval operations
    • H04N1/32203Spatial or amplitude domain methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • H04N1/32149Methods relating to embedding, encoding, decoding, detection or retrieval operations
    • H04N1/32203Spatial or amplitude domain methods
    • H04N1/32208Spatial or amplitude domain methods involving changing the magnitude of selected pixels, e.g. overlay of information or super-imposition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • H04N1/32149Methods relating to embedding, encoding, decoding, detection or retrieval operations
    • H04N1/32267Methods relating to embedding, encoding, decoding, detection or retrieval operations combined with processing of the image
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3225Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to an image, a page or a document
    • H04N2201/3233Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to an image, a page or a document of authentication information, e.g. digital signature, watermark
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3269Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of machine readable codes or marks, e.g. bar codes or glyphs
    • H04N2201/327Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of machine readable codes or marks, e.g. bar codes or glyphs which are undetectable to the naked eye, e.g. embedded codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)

Abstract

L'invention concerne un procédé pour dissimuler une information numérique primaire (Iinf1) dans un document numérique initial, notamment un document multimedia initial (Iorig), caractérisé en ce qu'il comporte des étapes consistant à: décomposer le document initial (Iorig) à priori, en déterminant un document numérique de référence (Iref) fonction du document numérique initial (Iorig), notamment par une méthode fractale, et une information numérique secondaire (Iinf2) fonction de l'information numérique primaire à cacher, tels que la somme du document numérique de référence (Iref) et de ladite information numérique secondaire (Iinf2) soit un document modifié (I'orig) sensiblement égale au document numérique initial (Iorig); insérer l'information numérique secondaire (Iinf2) ainsi déterminée dans ledit document initial, en calculant une image modifiée (I'orig) constituée par la somme dudit document numérique de référence (Iref) et de ladite information numérique secondaire (Iinf2), de façon à obtenir un document numérique modifié (I'orig) proche du document initial (Iorig) mais intégrant de façon sensiblement indiscernable l'information numérique primaire (Iinf1) à dissimuler. Le procédé selon l'invention permet de façon duale, d'extraire l'information numérique cachée dans un document multimédia. Le procédé selon l'invention, basé sur la notion d'auto-similarité, permet, sous certaines conditions, que l'information introduite ne soit pas visible, résiste à des manipulations de l'image, et enfin puisse être extraite sans connaissance des documents originaux.

Description

Procédé de dissimulation d'informations binaires dans une image numérique
La présente invention concerne un procédé permettant de cacher une information numérique dans un document numérique multimédia, telle qu'une information représentant une image, un texte ou le logo d'une société en niveaux de gris, puis de retrouver à partir du document modifié, l'information préalablement dissimulée. L'invention concerne également l'utilisation de ce procédé dans diverses applications pouvant tirer avantage du procédé de dissimulation d'informations dans une image numérique.
ETAT DE LA TECHNIQUE
L'imagerie numérique est sans doute le premier domaine d'application du multimédia dans lequel il y a un grand besoin de pouvoir inscrire, d'une manière cachée, une information numérique dans une image. Il existe déjà une pluralité de techniques consistant à cacher une information numérique dans une image, et ce pour des applications principalement de type « watermarking » en terminologie anglo-saxonne, consistant à marquer des documents numériques afin de prouver leur originalité ou leur origine.
Il existe par ailleurs des techniques d'encryptage qui ont le plus souvent pour objectif et pour résultat que le document encrypté est totalement illisible, ce qui écarte ce type de technique du champ de la présente invention, dans laquelle on cherche dans certaines applications à sécuriser un document tout en préservant sa bonne lisibilité.
De façon générale, toutes les techniques connues à ce jour de dissimulation d'informations dans une image comportent un ou plusieurs inconvénients, parmi les suivants: - elles dégradent l'image visuellement et de manière mal contrôlée;
- elles manquent de robustesse vis à vis des transformations de base que peut subir l'image, ce qui empêche l'extraction fiable de l'information qu'on a voulu y cacher;
- certaines techniques nécessitent le recours à l'image originale pour pouvoir extraire l'information, donc l'image modifiée par dissimulation d'informations ne s'autosufifit pas pour retrouver l'information cachée. Or il est important, dans maintes applications, de pouvoir disposer d'une technique d'extraction aveugle de l'information qui se trouve inscrite dans l'image BUTS DE L'INVENTION:
L'invention a pour but de proposer un procédé de dissimulation d'une information numérique dans un document, permettant de résoudre la plupart des inconvénients des procédés connus.
Plus spécifiquement, l'invention a pour but de proposer un procédé de dissimulation permettant de cacher de l'information dans une image fixe en niveaux de gris, en couleurs ou une image dans une vidéo, ou de façon tout à fait générale dans un document multimédia, sans dégrader le document de façon perceptible (ou audible, dans le cas de document multimédia audio). En particulier, dans le cas de dissimulation d'information dans des images, il est important de ne pas dégrader les images visuellement, ou du moins de contrôler à priori la perturbation entre des bornes prédéfinies.
Le but visant à éviter des dégradations perceptibles du document nécessite de résoudre un paradoxe apparent car en général, plus on essaie de rajouter de l'information à une image préexistante, plus on aura tendance à la dégrader, au sens de sa modification.
Un autre but de l'invention est de proposer un processus d'insertion de l'information à cacher qui soit robuste, c'est-à-dire en particulier tel que même après un grand nombre de perturbations plausibles et non destructives du document, il soit possible de retrouver l'information cachée, sans l'aide des documents originaux.
Un autre but de l'invention est de proposer un procédé de dissimulation d'information qui soit évolutif, c'est-à-dire qu'il puisse être aisément corrigé pour rester robuste vis-à-vis de nouvelles perturbations du document ou non prises en compte précédemment. Dans la suite de la description, on s'attachera, à titre d'illustration, au problème de la dissimulation d'informations dans des images numériques, étant entendu que le problème et sa solution sont étendus, selon l'invention, à tout type de document multimédia (image, son, vidéo, ...).
En outre, dans le domaine de la dissimulation d'informations dans des images, la sécurisation d'images, dite « watermarking », est l'utilisation la plus répandue, mais il doit être bien compris que le problème résolu par la présente invention n'est pas limité à une telle utilisation, puisqu'il consiste à dissimuler une information numérique de type
2 quelconque (non exclusivement sécuritaire) dans un document multimédia.. En fait, comme cela apparaîtra dans la suite, l'utilisation particulière du principe de l'invention sera déterminée principalement par des caractéristiques de l'information à dissimuler elle-même. Afin d'atteindre les buts fixés, l'invention propose un procédé pour dissimuler une information numérique primaire (Imfi) dans un document numérique initial, notamment un document multimédia initial (long), caractérisé en ce qu'il comporte des étapes consistant à:
- décomposer à priori le document initial (lon ) , en déterminant un document numérique de référence (Iref) fonction du document numérique initial (long), et une information numérique secondaire (Iinf2) fonction de l'information numérique primaire à cacher, tels que la somme du document numérique de référence (Iref) et de ladite information numérique secondaire (Iin ∑) soit un document modifié (IOήg) sensiblement égal au document numérique initial (long);
- insérer l'information numérique secondaire (Imα) ainsi déterminée dans ledit document initial, en calculant une image modifiée (IOrig) constituée par la somme dudit document numérique de référence (Iref) et de ladite information numérique secondaire (Iinf2), de façon à obtenir un document numérique modifié (IOrig) proche du document initial (long) mais intégrant de façon sensiblement indiscernable l'information numérique primaire (Ii„n) à dissimuler.
Selon d'autres caractéristiques du procédé de l'invention, la valeur de chaque pixel du document modifié (IOrig) est comprise entre (ou égale à, ou comprise entre, ou plus généralement repérée par rapport à) sa valeur calculée dans le document numérique de référence (Iref) et sa valeur donnée dans le document initial (Iorig).
En outre, pour déterminer le document numérique de référence (Iref) à partir du document initial (long), on peut en particulier utiliser la méthode des fractales, qui consiste a:
- découper le document initial (long) en un ensemble de primitives RANGE(i) couvrant la totalité du document initial;
- extraire du document initial (Iorig) un ensemble de primitives DOMAIN(j), de façon à constituer un dictionnaire de primitives DOMAIN (j) de base (Dbase); - à partir du dictionnaire de primitives DOMAIN de base, déterminer un dictionnaire (Dfinal) de primitives DOMAIN supplémentaires, en appliquant aux primitives de base, un ensemble de transformations géométriques et/ou photométriques locales; apparier chacune des primitives de base RANGE(i) avec une primitive DOMAINφ du dictionnaire de primitives (Dbase), de telle manière que chaque primitive RANGE(i) soit égale à la transformée d'une primitive DOMAIN(j) par une transformation élémentaire wj, plus une erreur (ε_), ladite erreur permettant de dissimuler l'information numérique à cacher (linfi), l'image composée de l'ensemble des primitives RANGE calculées à partir d'une primitive DOMAIN du dictionnaire (Dfinal) étant notée Wlong (ou l'attracteur A dans le cas particulier ou le contexte choisi caractérise un code IFS contractif comme il sera expliqué plus loin).
Dans un autre mode de réalisation, on pourra avantageusement utiliser une autre méthode d'analyse ou de codage avec perte permettant de dériver le document numérique de référence Iref à partir d'un document initial Iorig. Pour une application en imagerie numérique, par exemple, une telle méthode pourra être basée sur un codage Jpeg, ou encore associée à une diminution de la résolution du document initial I orig.
Pour déterminer l'information numérique secondaire (I^) à partir de l'information numérique primaire à cacher (Iinfi), on calcule, avec la méthode d'analyse fractale, la différence GAP = Iorig - loήg ( ou GAP = I 0rig - A pour un code contractif), entre le document initial (long) et l'attracteur (A) défini à partir du code fractal W associé à l'image initiale Iorig, et pour chaque point (x,y) du document initial, on détermine l'information numérique secondaire à cacher (Iinβ) à partir de ladite différence GAP entre le document initial long (donnée) et le document numérique de référence Iref (calculé) . On établit ensuite un lien binaire conventionnel entre GAP et l'information numérique à cacher Ijnfi afin de déterminer la valeur exacte de l'information numérique secondaire 1^ à cacher dans le document numérique de référence I ref pour déterminer le document modifié V0g. Ainsi, s'il y a correspondance d'après le critère utilisé pour un point donné (x,y) du document, on aura Iin 2 = GAP pour ce pixel; dans le cas contraire, on ne tient pas compte de l'information à cacher pour ce pixel. On observe ainsi, et c'est une caractéristique et un avantage important de l'invention, que les points porteurs d'information permettent ainsi de rapprocher le document modifié IOrig = I ref + 1 inG du document initial I orig •
Dans un exemple de réalisation, le lien binaire est établi selon la règle suivante permettant de dériver, en tout point, la valeur de l'information numérique secondaire Iinf2(x, y)
Iinβ(x, y) = Inf (GAP(x, y) ; 0) ou Sup(GAP(x,y) ; 0) selon que Iinfι est respectivement égal à 0 ou à 1. Cette formule s'écrit également de la manière suivante :
Si GAP (x,y) < 0 et Iinfι (x,y) = 0 ou GAP (x,y) >0 et Iinfi(x,y) = 1 alors Iinf2 (x,y) = GAP (x,y) sinon Iinf2 (x,y) = 0
Dans un mode de réalisation particulier, lorsque le GAP apparaît avec une valeur plus importante que celle d'un seuil déterminé, on pourra choisir I ;nβ (x, y) = GAP(x, y) quelle que soit la valeur de I ;nfi (x, y). Il est bien évident que, à l'extraction, un mécanisme associé évite de traiter les GAP' dont la valeur excède le seuil considéré.
Le procédé d'extraction selon l'invention permet d'extraire d'un document numérique (IOrig) présumé porteur d'une information numérique dissimulée selon le procédé ci-dessus, l'information numérique primaire Ijnfi qui est susceptible d'y être inscrite. A cet effet, le procédé comporte des étapes consistant à:
- calculer un code d' autosimilarité W associé à l'image modifiée rorig en utilisant de préférence le même contexte que celui utilisé lors de l'opération d'insertion; - récupérer l'information l'^ pour chaque pixel à partir de rorig et de W en calculant I'j^ = IOrig - A', dans le cas particulier où le code utilisé est contractif. ;
- tester l'information I'^ récupérée et en déduire I'jnf2 en fonction du lien binaire conventionnel retenu entre GAP(x, y) et Ijnfi, lors de l'insertion..
Dans le cas particulier de la formule conventionnelle précédente, l'analyse conduira, si I'inf2 est positive, à en déduire que l'information dissimulée est égale à 1 et, dans le cas contraire, à en déduire que l'information dissimulée est égale à 0 pour le pixel considéré, de sorte qu'on extrait très simplement l'information numérique dissimulée à partir du document numérique modifié (IOrig)-
L'invention sera mieux comprise à la lecture de la description suivante en référence aux dessins ci-annexés , dans lesquels:
- la figure 1 représente une vue schématique des principales étapes de la phase d'insertion d'information dans un document;
- la figure 2 représente une vue schématique des principales étapes du procédé d'extraction d'information à partir d'un document où elle a été préalablement insérée; - la figure 3 représente sur un exemple d'image les étapes d'une transformation locale établissant la correspondance entre une zone « DOMAIN » de l'image en une zone « RANGE » de l'image;
Principe de l'invention:
Comme cela va être décrit de manière plus détaillée plus loin, le principe de l'invention repose sur la construction, à partir d'un document initial long , d'un document numérique de référence Iref au moyen d'une approximation, par exemple réalisée au moyen d'un codage avec perte de l'image. Dans le mode de réalisation préféré de l'invention, un codage de type fractal est utilisé, fondé sur l'emploi d' autosimilarités (issues de la théorie des fractales) pour introduire dans l'image une information binaire sans s'exposer aux inconvénients des procédés connus de dissimulation d'image.
Alors que la notion d'autosimilarité est essentiellement utilisée en traitement d'images à des fins de compression (par exemple en codage fractal), on décrit ici comment cette notion peut être utilisée pour calculer de manière adéquate une image de référence (Iref) pour la phase d'insertion d'une information binaire (par exemple visuelle) dans un document numérique, par exemple une image en niveaux de gris , et pour calculer une image de référence (I'ref) pour la phase d'extraction de l'information préalablement cachée dans le document numérique. Si le terme « image » apparaît bien commode pour la clarté de l'exposé, afin de désigner un fichier multimédia qui, dans un mode de réalisation particulier, est associé à une information visuelle comme un logo, il faudra bien évidemment l'interpréter également comme désignant toutes sortes de fichiers, vidéos, musicaux, etc...
6 Plus précisément, il est indiqué comment l'insertion, d'une part, et l'extraction de cette
« information additionnelle », d'autre part, peuvent être réalisées.
H est également précisé dans quelle mesure cette information sera préservée dans le cas d'une manipulation non « destructive » de l'image. L'invention n'est pas limitée au domaine des informations binaires dans une image en niveaux de gris, mais sera retenue dans la description détaillée par voie d'exemple.
L'extension de cette approche pour dissimuler des informations autres que binaires d'une part, et sur des supports autres que des images fixes en niveaux de gris d'autre part, est également évoquée plus loin. L' autosimilarité implique de décrire une image non plus en termes de « pixels » associés à un niveau de gris mais sous la forme : telle zone est « similaire » à telle autre modulo une transformation donnée.
Nous appellerons dans la suite de ce document « contexte » le choix d'un certain nombre de primitives de découpage de l'image, la manière de les disposer, le critère d'appariement (c'est-à-dire la distance entre l'image de référence Iref et l'image initiale Iorig), ainsi que l'ensemble des transformations autorisées entre primitives.
Limage initiale à traiter, que nous appellerons Iorig, est découpée en un ensemble de primitives, que l'on appellera « RANGE » ou Cible, qui doivent couvrir la totalité de l'image
(avec éventuellement un recouvrement). D'autre part, un dictionnaire de base Dbase, constitué de primitives « DOMAIN » ou Source, est construit. Les éléments de ce dictionnaire sont également (par défaut) extraits de l'image elle-même, mais n'ont pas besoin de couvrir toute l'image à traiter. _ n'y a pas de contrainte particulière sur la répartition des primitives « DOMAIN ». Le dictionnaire ainsi construit, est ensuite enrichi en utilisant des transformations géométriques et photométriques pour former un dictionnaire final Dfinal de transformations autorisées. A noter que des éléments peuvent être ajoutés dans le dictionnaire Dfinal, tenus secrets vis-à-vis d'utilisateurs externes, et connus uniquement du logiciel d'insertion/extraction d'information.
Typiquement on utilisera des transformations de type affine pour créer de nouvelles primitives (mais d'autres transformations plus complexes peuvent également être utilisées). Les transformations peuvent inclure des opérations géométriques (telles qu'une isométrie (i.e. symétries, rotations, réflexions), ou des transformations photométriques, par exemple sur les valeurs de luminance. En particulier, le contexte permettra de définir si des codes contractifs (définis plus loin) sont utilisés.
Il est à noter que pour la mise en œuvre du procédé par l'intermédiaire d'un logiciel, le contexte défini est déclaré au logiciel chargé d'exécuter les calculs relatifs à l 'insertion/extraction d'information dissimulée.
Η s'agit ensuite d'apparier chacune des primitives « RANGE » avec une primitive « DOMAIN » du dictionnaire (comme illustré dans la figure 3) selon un critère de distance, par exemple l'erreur quadratique minimum (E.Q.M.) bien connue d'un homme du métier A l'inverse, on peut avoir intérêt dans certains cas à éloigner l'image de référence Iref de l'image initiale Iorig, afin de cacher (potentiellement) plus d'information dans l'écart existant, pixel à pixel, entre les deux images. On utilisera usuellement la distance euclidienne, mais d'autres distances peuvent être utilisées.
En indexant par i les primitives « range », nous noterons Wj la transformation qui lui est associée (i.e. : la transformation qui définit un élément du dictionnaire de base, plus une transformation). Nous appellerons W, l'union des transformations locales wj, WI l'image composée de l'ensemble des primitives « range » représentées approximativement à partir d'un élément de Dfinal, et A l'attracteur associé à W s'il existe. On rappelle à cet égard que si le code choisi est contractif, il est possible, en utilisant le théorème du collage, de considérer l'attracteur A (c'est-à-dire l'image obtenue en itérant n fois la transformation W à partir de n'importe quelle image initiale Iinjt : A ≈ Wn(I}njt) ), à la place de la transformation WI, qui est la réunion des blocs « range » approximés à partir de long: WI est la transformée de long par la transformation W appliquée une fois: WI = W(Iori ). Ainsi, selon le choix du contexte et du dictionnaire de transformations affines, on calculera, suivant l'enseignement de l'invention, l'image I ref par l'une des deux formules : lorsque le code est contractif on pourra utiliser l'attracteur A, et dans le cas contraire on choisira Iref = W(Iorig)
Il est rappelé qu'une transformation W contractive donnée définit son attracteur A, puisque la transformation W appliquée n fois à une image quelconque donne l'image A.
Illustration: dans un exemple de mise en œuvre de l'invention, le contexte (tel que défini plus haut) est ici celui classiquement utilisé en compression d'image: les primitives sont des blocs carrés : de taille 8 x 8 pixels pour les « RANGE », et 16 x 16 pixels pour les
«DOMAIN ». Les transformations autorisées des domaines sont: le sous-échantillonnage par 2 ; la rotation à 0° (c'est-à-dire l'identité), 90°, 180°, 270° ; les symétries en ce qui concerne les transformations géométriques; et un décalage et mise à l'échelle sur les valeurs de luminance.
En d'autres termes, chaque transformation locale Wj peut s'écrire sous la forme:
fai bi 0 x \ l ui = ci di 0 y +1 vil
Figure imgf000011_0001
\0 0 si z / [o
où ai, bi, ci, di représentent la transformation géométrique (sous/sur-échantillonnage, plus rotation/réflexion, ... ) ; (x,y) représentent les coordonnées du point de l'image et z le niveaux de gris associé ; (uι,Vj) représente le déplacement nécessaire pour mettre en correspondance la position de la primitive « DOMAIN » avec la primitive « RANGE » concernée ; s; et Oj représentent respectivement la mise à l'échelle et le décalage sur les valeurs de luminance.
Visibilité: afin d'assurer l'invisibilité de l'information rajoutée dans l'image originale et de ne pas dégrader l'image support elle-même (nous l'appellerons dans la suite de ce document Iorig), l'invention prévoit de ne pas exposer le problème sous sa forme classique, à savoir: comment ajouter une information sans quelle soit visible, mais plutôt d'exprimer le problème sous un angle nouveau, à savoir: comment parvenir à une décomposition permettant de décrire une image originale Iorig en deux éléments: une première image (Iref) calculée et essentiellement liée à l'image originale, notée 1^; et une seconde image, notée Iinf2, essentiellement liée à l'information à dissimuler, notée Iinfi
Nous noterons la première image Iref = W rig (ou A, si W est contractif, ce qui sera l'hypothèse retenue pour la suite) et la seconde 1^. L'objectif étant que la somme des images A + Ijnβ (soit l'image modifiée IOrig) soit aussi proche que possible, d'un point de vue visuel ou auditif, de l'image initiale Iorig-
Plus précisément, par la proximité de rorig par rapport à Iorig, on exprime le fait que l'image I'orig modifiée par insertion d'une information numérique sera comprise, pixel à pixel, dans un intervalle borné d'une part par l'image initiale Iorig, qui est donnée, et d'autre part par l'image de référence Iref, qui est calculée, le mode de calcul étant défini à partir du contexte (défini plus haut). Si l'on suppose que le codage porte sur la luminance de l'image (niveaux
9 de gris), cette dernier sera, pour chaque pixel de roπg , comprise entre (ou égale à, ou repérée par) sa valeur dans Iref et sa valeur dans long-
Description de l'insertion d'une information dans une image:
En se référant à la figure 1, l'on constate que l'image ou le document modifié rg est obtenue par addition d'une part du document numérique de référence Iref, ou si on utilise un codage par IFS, et d'autre part, de l'information numérique secondaire Iιnf2, qui est elle- même obtenue par relation basée sur l'information numérique primaire Iιπf 1 à dissimuler, et de la différence point à point (notée GAP), entre le document initial long, et le document numérique de référence (Iref; ).
Dans le cas d'un codage fractal utilisant un contexte contractif, on va maintenant décrire la détermination du document numérique de référence Iref à partir du document intial long, et, d'autre part, la détermination de l'information numérique secondaire Iιnf2 à partir de l'information numérique primaire Imfi que l'on souhaite inscrire dans le document initial. Ces déterminations doivent être telles que le document modifié rong = A + jβ, soit suffisamment proche du document initial Ioπg afin d'éviter une trop grande dégradation du document modifié. roπg doit apparaître autant que possible proche de Ioπg, et néanmoins offrir suffisamment d'espace pour enfouir l'information à cacher. Ce compromis est réglable par ajustement de la position de Iref par rapport à Ioπg.
Détermination de Iref (A) à partir de I0rig:
On se réfère aux figures 1 et 3. Pour déterminer le document numérique de référence (Iref) à partir du document initial (long), on utilise la méthode des fractales qui consiste à découper le document initial (Ioπg) en un ensemble de primitives RANGE(i), lesquelles couvrent la totalité du document initial.
On extrait ensuite du document initial (Ioπg) un ensemble de primitives DOMAIN(j), de façon à constituer un dictionnaire de primitives DOMAIN(j) de base (Dbase). A partir du dictionnaire de primitives DOMAIN de base, on détermine un dictionnaire (Dfinal) de primitives DOMAIN supplémentaires, en appliquant aux primitives de base un ensemble de
10 transformations géométriques et/ou photométriques locales w, Dans certains modes de réalisation, il est même envisageable d'inclure dans Dfinal des éléments secrets afin de renforcer la sécurité du mécanisme d'insertion. Par la suite, chacune des primitives de base RANGE(i) pourra être appariée avec une primitive DOMAIN(j) comprise dans le domaine de primitives ( Dfinal), de telle manière que chaque primitive RANGE(i) soit égale à la transformée d'une primitive DOMAIN(j) par une transformation locale w„ plus une erreur (ε,) permettant de dissimuler l'information numérique à cacher (Imfi). L'image composée de l'ensemble des primitives RANGE remplacées par un élément du dictionnaire (Dfinal) est l'image de référence Iref . On arrive ainsi à une description de l'image au moyen d'un code IFS qui est assez étroitement dépendant du contexte déterminé, c'est à dire du découpage en primitives qui est choisi, ainsi que du jeu de transformations affines. Comme il a été précisé, lorsque le contexte est choisi de telle sorte que le code IFS présente la caractéristique d'être contractif, l'image I ref qui est recherchée est simplement l'image attracteur A qui correspond à la limite de la suite W n (Io) (ou encore Imιt) , dans laquelle Io ou Imιt représente une image quelconque, par exemple noire. Dans l'hypothèse où le code IFS associé au contexte n'est pas contractif, alors l'image I ref est simplement déduit de la formule I ref = W(
A ong )
Choix du contexte : Le contexte est en général choisi en fonction des critères suivants:
- la robustesserecherchée : les transformations géométriques autorisées entre blocs « DOMAIN » et « RANGE » permettront ensuite de « sauvegarder » l'information ajoutée si l'on opère ces mêmes transformations (bien ou malveillantes) sur l'image modifiée. La contrainte principale réside dans le fait qu'il sera indispensable d'utiliser le même contexte cohérent lors de l'extraction de l'information ajoutée, que celui utilisé pour la procédure d'insertion.
- l'éloignement (et positionnement) entre Ioπg et A recherché : plus A sera numériquement éloigné, c'est-à-dire différent de Ioπg, plus la place pour cacher une information supplémentaire sera importante, mais les risques de visibilité de l'insertion d'information dans l'image d'origine augmenteront.
i l - la « stabilité du code » (en l'absence de manipulations parasites): c'est à dire assurer que A' sera proche de A, puisque les deux images long et V0ήg sont similaires.,
Détermination de l'information numérique secondaire Iinf2 à partir de l'information numérique primaire Ii„fià dissimuler
Soit linfo l'information binaire initiale que l'on souhaite ajouter dans limage originale; le contenu de Iin o dépendra pour beaucoup de l'utilisation visée par ce procédé d'insertion/extraction. Si Ij„ro et Iorig ne présentent pas de la même taille, alors l'information lin» doit être transformée en une image I;nfi de taille identique à long- On considérera donc que l'information réelle à dissimuler dans l'image Iorig est Iinfi qui sera donc l'information numérique primaire à dissimuler. Le passage de l'information binaire initiale Iinro, de taille quelconque, à l'information numérique primaire Ijnπ , proprement mise en forme, est représentée dans la figure 1 par une étape notée (0).
On définit alors une grandeur Ijnβ l'information numérique secondaire - qui est en réalité l'image de l'information numérique primaire I^π « modulée » en fonction de la valeur du GAP entre l'image d'origine ou le document initial Iorig et le document de référence calculée Iref. La détermination de l'information numérique secondaire Iιnf2 sera faite de la manière suivante:
A l'étape notée (1), on calcule la différence des images Iorig et Iref . Cette différence est notée GAP: GAP = Iorig - , c'est à dire égale à 10rig - A. dans le cas d'un code IFS contractif. On choisit un critère de correspondance entre GAP et l'information numérique primaire à cacher 1^. A titre d'exemple, on retiendra comme critère la solution suivante, qui n'est nullement limitative:
si (GAP(x,y) < 0 et Iinn(x,y) = 0) Ou (GAP(x,y) > 0 et Iinfι(x,y) = 1) alors Imf2(x,y) = GAP(x,y) sinon Iinα(x,y) = 0
12 laquelle s'écrit d'une manière concise :
nβ(x, y) = Inf ( GAP(x, y) ; 0 ) ou Sup (GAP(x, y), 0 ) selon que Iιnfi est respectivement égal à 0 ou à 1.
Les opérateurs inf et sup représentent respectivement les opérateurs mathématiques rendant respectivement la plus petite et la plus grande des valeurs considérées.
Ce critère de correspondance entre GAP et Imfi permet d'établir un lien binaire entre GAP qui est codé par son signe (positif ou négatif), et l'information numérique à cacher au pixel considéré, qui vaut 1 ou 0. En effet, on s'aperçoit sans difficulté que lorsque I mfi = 0, seules les valeurs de GAP qui seront négatives seront ajoutées au document de référence I ref, et seront porteurs d'information. Inversement, lorsque I ιnfi=l, seules les valeurs positives de GAP seront ajoutées au document de référence et seront par conséquent porteurs d'informations. Dans tous les autres cas, la valeur de Iιnf2 sera fixée à 0, ce qui reviendra à renvoyer la valeur approximée du document de référence Iref pour construire l'image modifiée roπg. On observe que, assez curieusement avec l'invention, les pixels qui seront « porteurs » de l'information numérique primaire tendront à « éloigner » qualitativement l'image de I ref et à la rapprocher de roπg. On peut introduire différentes variantes sur cette façon de moduler Iιn 2 entre 0 et la valeur du GAP, en prenant d'autres valeurs de bornes, par exemple 1 et 1,2 fois la valeur de GAP, au lieu de 0 et une fois la valeur de GAP.
Remarque: du fait de cette convention, il est à noter qu'en moyenne, seul un point sur deux (au moins) de l'information à ajouter ïmn sera réellement pris en compte. Il est possible de le garantir en inversant si besoin est l'information binaire à insérer. Il faut néanmoins relativiser cette première remarque d'un point sur deux. En effet, nous pouvons considérer une image intermédiaire Imιd où chaque point serait la valeur moyenne de long et Lef ; puis modifier le critère de correspondance afin de construire Iιnf2 comme suit : Iιn 2(X,Y) = +GAP/2 si (GAP(x,y) < 0 et l___n(x,y) = 0) ou (GAP(x,y) > 0 et Iιnfι(X,Y) = 1) ou, -GAP/2 sinon. Ce qui peut s'écrire également I mf2 = -ABS(GAP/2) ou + ABS(GAP/2)
13 selon que I in i est respectivement égal à 0 ou à 1, avec ABS étant l'opérateur mathématique renvoyant la valeur absolue.
Ainsi chaque point de IOrig sera porteur d'une information de Ij„fi. Cependant, en contrepartie, la « force » d'insertion sera divisée par un facteur 2 par rapport à la convention précédemment proposée. Enfin, il sera évidemment nécessaire de modifier en conséquence les conventions utilisées lors de la phase d'extraction.
Notons également que le critère de construction de Ijnf2 peut être facilement modifié pour faire en sorte que l'image I'0πg soit la « plus proche possible » de long • Néanmoins, il y a là un compromis à faire entre visibilité de l'insertion et nombre de points de l'information binaire à insérer, réellement pris en compte (et dans quelle proportion). Ce compromis est à définir en fonction de l'utilisation visée par le procédé de dissimulation. On peut par exemple, décider de forcer à GAP tous points associé à une différence (GAP) supérieure à un certain seuil en valeur absolue, ou bien encore fixer en fonction d'un bon équilibre local que des points de IOrig soient affectés (même si le critère de correspondance n'est pas vérifié) à la valeur de Iorig, de façon à éviter les concentrations de zones en moyenne trop proches de Iref; mais dans ce cas, ces même points ne pourront plus être porteurs d'information dissimulée.
La visibilité du procédé d'insertion sera fonction de Iorig - I'orig: la visibilité sera d'autant plus grande que la différence entre l'image d'origine et l'image modifiée par insertion sera élevée.
On va maintenant décrire le procédé d'extraction de l'information cachée I'jnβ à partir d'une image modifiée IOrig- Pour cela, on se réfère à la figure 2. De manière duale à l'insertion, l'extraction sera réalisée de la manière suivante, tel que schématisé en figure 2.
- Calcul du code d'auto-similarité W' associé à IOrig en utilisant le même contexte que celui utilisé lors de l'opération d'insertion; ceci donne dans l'étape indiquée (1 '), un document de référence, noté rref dans le cas général, ou A' en cas de calcul de I'ref par méthode fractale au moyen d'un code IFS contractif.
- Récupération de I __Ώ. , c'est à dire du GAP' à partir de IOrig et de A', de la manière suivante:
14 I' inf 2 — — T A' oπg — Λ A '
H est à noter que A' est à IOrig ce qu'était A à Iorig dans la phase d'insertion d'information dans lon . Donc on essaie de reconstruire une image de référence A' à partir de l'image modifiée IOrig. Notons que d'une part, les codes IFS associés aux images Iorig et A sont identiques
(le premier par construction, et le second par définition d'un attracteur), et d'autre part, chaque point-image de IOrig est inclus dans l'intervalle défini par sa valeur dans long et dans A.
Détermination de l'information numérique primaire l'in i à partir de l'information numérique secondaire I'inβî l'infi peut se calculer à partir de I'inf2 de la manière suivante :de manière duale par rapport à l'opération d'insertion, le test utilisé est le suivant: si I'inf2(x,y) > seuil prédéterminé, alors I'inπ (x,y) = 1 sinon si I'inf2(x,y) < seuil alors I'infi (x,y) = 0 sinon « on ne sait pas dire » (car le pixel (x,y) ne contient pas d'information cachée)
Par défaut, le seuil prédéterminé est fixé à 0, mais comme indiqué pour l'étape d'extraction d'information, on peut utiliser d'autres seuils « plus larges » afin de limiter les risques de se tromper en chaque point (x,y) ; mais dans ce cas on diminue d'autant le nombre d'informations binaires récupérées sur l'ensemble de ce que l'on a dissimulé. Le seuil est à régler en fonction de la modulation adoptée pour l'insertion. Ces réglages du paramétrage relèvent du savoir-faire de l'homme de métier.
Le procédé d'insertion et d'extraction a été particulièrement décrit en relation avec la méthode d'analyse fractale, avec ou sans code contractif, qui apporte de bons résultats. Il faut cependant observer que, dans le cas particulier de l'imagerie numérique, le procédé de l'invention est utilisable avec d'autres méthodes d'approximation, par exemple un codage avec pertes, comme Jpeg ou Giff, ou encore un simple procédé de réduction de la résolution.
A titre d'illustration, on décrira ci-après l'application directe de l'invention à un procédé d'insertion dans le cas d'un codage Gif. Dans ce cas, le document initial et le document numérique de référence sont respectivement une image initiale Iorig et une image de référence Iref.
15 Le procédé d'insertion consiste, comme pour l'analyse fractale, à d'abord dériver le l'image de référence Iref à partir d'une image initiale Iorig , qui est une image visuelle. Le principe du codage Jpeg est bien connu de l'homme du métier et ne sera donc pas décrit plus avant. La caractéristique essentielle, pour être applicable à l'invention, consiste en le fait que l'image approximée qui en résulte I ref est une image ayant subi une perte d'informations par rapport à l'image I orig de manière à permettre l'inscription des données de I j^. , c'est à dire l'information numérique secondaire. Une fois l'image I ref déterminée, on peut calculer par soustraction le Gap(x,y) en chaque point comme dans le cas de l'analyse fractale. Ce Gap(x,y) est ensuite « modulé » en fonction de l'information numérique à inscrire Imfi(x,y) dans l'image I 0rig de manière à constituer IOri - cet effet, on utilise un critère ou une loi de correspondance entre GAP(x,y) et linπ(x,y) permettant de dériver la valeur de I inβ (x,y).
Dans un mode de réalisation préféré, on décidera que :
I inf2 (x, y) = inf( GAP, SEUIL) ou sup (GAP, SEUIL), selon que I inπ(x, y) = 1, sera respectivement égal à 0 ou à 1 , ou inversement.
fi apparaît que la valeur du paramètre SEUIL sert à des fins de réglage, et permet d'influer la distribution des points qui seront porteurs d'informations. Dans un mode préféré, la valeur du paramètre SEUIL est fixé à la valeur numérique 0, de sorte que l'on est en présence d'une simple correspondance entre Imfi(x, y) et le signe de GAP(x, y), assurant une distribution uniforme des points porteurs d'informations pour les valeurs « 0 » et « 1 » de I inn(x, y). Dans un autre mode de réalisation, on pourra également choisir que I ;nf2 = -ABS(GAP/2) ou + ABS (GAP/2) selon que I inπ est respectivement égal à 0 ou à 1, avec ABS étant l'opérateur mathématique renvoyant la valeur absolue.
Pour achever le procédé d'insertion, il suffit ensuite d'ajouter, pixel par pixel, la valeur de l'information numérique secondaire I ιnf2(x, y) à l'image de référence I ref dérivée du codage Jpeg. De cette manière on obtient le document modifiée, c'est à dire l'image rorig qui est très proche de l'image originale Iorig. En effet, l'invention présente cette particularité caractéristique que les points qui sont porteurs d'informations - car significatifs lors du
16 procédé d'extraction - sont justement les points qui permettent de se rapprocher de l'image I orig , en s'éloignant de l'image I ref , contrairement à une approche classique suivant laquelle on ajoute de l'information en dégradant encore la qualité de l'image. En effet, une approche classique aurait conduit à ajouter de l'information éloignant davantage l'image rg de l'image initiale I g. En premier lieu, le choix du codage avec pertes, produit déjà une image dégradée I ref et, en second lieu, l'ajout supplémentaire d'une information numérique suivant une approche classique aurait conduit à éloigner encore l'image construite roπg de l'image originale. Au contraire, avec l'invention, il pourra être avantageux de choisir un contexte permettant d'éloigner suffisamment Iref de I oπg- En effet, cet éloignement n'est pas très préjudiciable puisque, dans un second temps, à l'image I ref est ajoutée, , pixel par pixel, Imf2(x, y) qui sera, une fois sur deux, égale à une information (le gap) qui permettra de rapprocher I ref de l'image originale I oπg. Ainsi, contrairement à l'approche classique qui tend à dégrader substantiellement l'image initiale Ioπg, l'invention opère successivement un éloignement, puis un rapprochement de la construction de roπg de manière à aboutir, finalement, à une image rg qui reste suffisament proche de I oπg, tout en permettant l'inscription d'un grand nombre de données.
Pour obtenir l'extraction aveugle de l'information numérique I' mfi inscrite dans une image l'ong ayant éventuellement fait l'objet d'un nombre de transformations, le procédé, appliqué au codage Jpeg, comprend les étapes suivantes :
On dérive d'abord une image I'ref à partir de l'image roπg suivant le même codage avec pertes, tel que Jpeg, que celui qui fût utilisé lors de l'insertion.
L'image I'ref étant déterminée, on peut alors calculer l'écart I'ml = GAP'(x, y) = roπg (x,y) - I'ref(x, y), lequel I'mβ = GAP'(x,y) est en principe égal, ou très proche de I ιnf2 qui fût inséré lors du procédé d'insertion.
Le procédé comprend ensuite une phase d'analyse de la valeur de GAP'(x, y), en relation avec la loi de correspondance entre GAP et I ιnfi qui fut préalablement utilisée lors du procédé d'inscription. Cette analyse aboutit alors à la valeur de I'mfi(x,y) pour chaque pixel.
17 Plus particulièrement, si la loi de correspondance utilisée lors de l'inscription était :
Si I infl(x, y) = 0 , alors I inf2(x, y) = Inf (GAP(x, y) ; 0) et Si I infi(x, y) = 1 , alors I inf2(x,y) = Sup (GAP(x,y) 0)
Alors il suffira, dans le procédé d'extraction, de rechercher le signe de la valeur GAP'(x,y) pour obtenir directement la valeur de I' inπ . Si l'on a utilisé une loi de correspondance utilisant une valeur de SEUIL non nulle, alors il suffit simplement de comparer la valeur de GAP'(x, y) par rapport à ce seuil pour déterminer directement la valeur adéquate de I' infi(x, y).
En général, la stabilité et la robustesse du procédé d'extraction permettra d'identifier immédiatement l'information numérique primaire I'infi obtenue à l'extraction, avec l'information numérique primaire I ιnfi qui fut introduite à l'insertion, même lorsque l'image aura subi certaines modifications. On arrive ainsi à obtenir l'extraction la plus délicate qui est l'extraction aveugle de l'information numérique, même si, bien évidemment, le procédé de l'invention est utilisable en cas d'extraction non aveugle. Bien entendu, l'homme du métier pourra appliquer avantageusement le principe de l'invention à d'autres formes de codage que celles qui furent exposées, le codage fractal et le codage Jpeg. On pourrait ainsi, d'une manière immédiate, permettre l'inscription et l'extraction aveugle d'une image avec une méthode d'analyse par réduction de la résolution de l'image.
Bien naturellement, il est commode de décrire l'invention avec des variables I^π, I o, et GAP présentant uniquement deux variables (x, y). H importe cependant d'observer que l'utilisation de ce jeu de double variables n'est aucunement limitatif, et que l'homme du métier pourra avantageusement appliquer l'enseignement de l'invention à d'autres réalisations multivariables.
AVANTAGES DE L'INVENTION:
L'invention telle qu'elle vient d'être décrite répond aux buts fixés, présente plusieurs avantages par rapport aux procédés connus, et notamment:
18 Robustesse vis à vis de manipulations bien/malveillantes:
Considérons maintenant que l'image sur laquelle on souhaite récupérer l'information cachée ne soit plus, rg mais I'Ong, suite à une manipulation bien ou malveillante.
Grâce à l'utilisation des autosimilarités de l'image et des fractales pour le calcul de Iref, l'information extraite est « stable » si l'on opère des manipulations géométriques et/ou photométriques précédemment « autorisées » lors de la recherche des similarités entre primitives « range » et « domain » (i.e. incluses dans le contexte). En d'autres termes, il sera possible de dissimuler une information dans une image, puis de faire subir des transformations autorisées (faisant partie du dictionnaire Dfinal) à l'image modifiée, tout en restant capable d'extraire à nouveau l'information dissimulée à partir de l'image transformée. Il est important de considérer que pour augmenter la robustesse du procédé selon l'information, il suffit de définir un plus grand nombre de transformations autorisées dans le contexte. Des exemples de transformations classiques de l'image sont citées ci- dessous.
Transformations photométriques.
Si limage rg est modifiée en une image I'Ong, telle que pour chaque primitive « domain » l'on ait I'Ong = c IOng + β alors T'mβ = rmf2, signifiant que l'insertion d'information résiste à des transformations photométrique affines.
Transformations géométriques.
Si l'on utilise le contexte décrit précédemment, en cas de rotation à 0°, 90°, 180°, 270° degrés I m 2 subira la même modification R que l'image I' elle-même (i.e :I ma = R(I'mf2) En cas de changement d'échelle H, nous aurons: I"ιnf2 = H^'mπ).
19 En cas de décalage (i.e. : translation),... les parties de l'image éventuellement supprimées entraîneront la suppression de F inf 2 pour les mêmes zones, mais le reste de l'information dissimulée demeurera dans son ensemble. Plus généralement, il suffit que: signe <Tf(I,linf2(x,y) } = signe (rinf2(x,y)) pour garantir que I"infi(x,y) = I'infi(x,y). où signe (X) = O si X=O; +1 si X>O et -1 si X<O; et l'attaque Tf : l"oήg = Tf{r0rig> La prise en compte du signe de l'information rajoutée pendant une transformation plutôt que la valeur exacte du GAP entraîne plus de robustesse, puisqu'on a enfoui dans l'image une information plus importante que celle dont on a réellement besoin pour l'extraction de Iinf ι .
EXTENSIONS DE L'INVENTION
L'invention telle que décrite plus haut en termes généraux peut aisément être étendue et appliquée à des situations spécifiques, comme indiqué dans les exemples ci-dessous.
Par exemple, le principe de l'invention peut être adapté aux Images en couleurs. Selon le système de couleurs utilisé, il sera éventuellement nécessaire d'opérer un changement de repère pour passer dans un repère de type Luminance/chrominance (ou également sous la forme: luminance, teinte, saturation). Cette opération est inversible ; dans le cas d'images RVB (Rouge Vert Bleu), il faudra donc passer en Luminance/ Chrominance, puis réaliser l'opération d'insertion, et enfin réaliser l'opération inverse pour revenir en RVB. Une fois la composante de luminance isolée, les opérations d'insertion et d'extraction peuvent se réaliser exactement comme décrit précédemment dans le cas des images en niveaux de gris. Notons, que l'information ajoutée restera présente lors d'une conversion d'une image couleur IOrig en une image I"orig en niveaux de gris.
Egalement, le principe de l'invention peut être adapté aux images Vidéo. Deux possibilités existent: soit opérer image par image, et ce en insérant l'information additionnelle de la manière décrite précédemment pour les images fixes, soit étendre l'approche utilisée pour estimer le code IFS en utilisant une primitive spatio-temporelle au lieu d'une primitive spatiale (typiquement, des cubes plutôt que des blocs carrés). Notons qu'une vidéo comporte bien évidemment potentiellement beaucoup plus de place pour d'une
20 part, dissimuler plus d'informations et d'autre part, la dissimuler de manière plus robuste en augmentant la redondance. H est envisageable par exemple d'insérer la convention binaire d'image en image.
En outre, le principe de l'invention peut être adapté à l'insertion d'une information autre que binaire.
Il est par ailleurs envisageable d'insérer une information autre que binaire à l'aide de la technique des plans de bits : l'information en niveaux de gris sera classiquement décomposée comme une somme pondérée (par puissance de 2) d'images binaires. Dans le cas, d'une information Ijnf o sur 255 niveaux de gris de taille k x k, l'information binaire à insérer sera donc de taille 8k x 8k. Si la place réservée à l'information à cacher est suffisante, le principe peut également être étendu à des informations couleurs.
Enfin, l'invention peut être adaptée à la dissimulation de signaux audio numérisés, dans un document, ou inversement.
APPLICATIONS INDUSTRIELLES DE L'INVENTION:
De nombreuses utilisations de ce procédé sont d'ores et déjà envisageables : la signature, l'intégrité, la non-répudiation, la traçabilité, voire la correction d'erreurs, et les points de contrôle de réseau. Selon l'utilisation visée, le procédé présenté peut être utilisé tel quel, modulo la définition d'un contexte adéquat; de définir le type d'information à dissimuler (i.e. : le « design » de la marque), ainsi que le paramétrage des opérateurs d'insertion et extraction. Des exemples d'application sont donnés ci-dessous à titre indicatif.
Signature. Il s'agit pour un auteur, une société ou autre de protéger un document tel qu'une image. Cela peut se faire en insérant comme information binaire le logo de la société ou bien par exemple le visage de l'auteur.
Intégrité. _ s'agit ici de pouvoir identifier si une image a été sensiblement modifiée ou non. Pour cela, l'information à dissimuler sera liée aux caractéristiques de l'image elle- même: histogramme des niveaux de gris (sous forme d'image binaire), carte des contours (en superposition de l'image), ou encore un motif spécifique... Notons néanmoins la difficulté suivante : les caractéristiques d'une image seront modifiées par le fait même de dissimuler dans l'image elle-même ses caractéristiques.
21 Non-répudiation. Il s'agit ici d'insérer automatiquement une trace de l'auteur lorsque celui-ci envoie une image vers une tierce personne : un logo identifiant la personne
(empreinte digitale, signature numérique,... ) et/ou, la machine à partir de laquelle celui-ci transmet l'image (fax, PC, terminal mobile Multimédia,... ). Traçabilité. L'utilisation peut être étendue ou automatisée de telle sorte que l'on sache par exemple à l'aide d'une trace si telle ou telle image a été ou non précédemment photocopiée, imprimée,...
Point de contrôle de réseau: l'invention pourra être utilisée pour éviter que des images interdites transitent sur des réseaux (comme Internet) en profitant de transformations simples effectuées juste avant des points de contrôle automatiques implantés sur le réseau, et effectuées en sens inverse juste après
D'autres utilisations comme la correction d'erreurs peuvent également être envisagées. Le principe consisterait à insérer dans les zones d'images considérées comme peu importantes, des informations sur la ou les zones considérées elles comme très importantes. En cas de perte partielle/totale des zones importantes, une récupération partielle de celles-ci serait alors possible à partir de l'information dissimulée dans les zones initialement considérées comme peu importantes.
22

Claims

REVENDICATIONS
1. Procédé pour dissimuler une information numérique primaire (IMI) dans un document numérique initial, notamment un document multimédia initial (Iorig), caractérisé en ce qu'il comporte des étapes consistant à:
- décomposer le document initial (long) a priori, en déterminant un document numérique de référence (Iref) fonction du document numérique initial (Iorig), et une information numérique secondaire (Iinβ) fonction de l'information numérique primaire à cacher ( i), tels que la somme du document numérique de référence (Iref) et de ladite information numérique secondaire (Iin 2) soit un document modifié (IOrig) sensiblement égale au document numérique initial (Iorig);
- insérer l'information numérique secondaire (Imβ) ainsi déterminée dans ledit document initial, en calculant une image modifiée (IOrig) constituée par la somme dudit document numérique de référence (Iref) et de ladite information numérique secondaire (J_inβ), de façon à obtenir un document numérique modifié (IOrig) proche du document initial (Iorig) mais intégrant de façon sensiblement indiscernable l'information numérique primaire (Ijnfi) à dissimuler.
2. Procédé selon la revendication 1, caractérisé en ce que la valeur de chaque pixel du document modifié (IOrig) est comprise entre sa valeur dans le document numérique de référence (Iref) et sa valeur dans le document initial (Iorig);
3. Procédé selon la revendication 1 ou la revendication 2, caractérisé en ce que pour déterminer le document numérique de référence (Iref) à partir du document initial (Iorig), on utilise la méthode des fractales, consistant à:
- découper le document initial (Iorig) en un ensemble de primitives RANGE(i) couvrant la totalité du document initial;
- extraire du document initial (Iorig) un ensemble de primitives DOMAIN(j), de façon à constituer un dictionnaire de primitives DOMAIN(j) de base (Dbase);
23 - à partir du dictionnaire de primitives DOMAIN de base, déterminer un dictionnaire (Dfinal) de primitives DOMAIN supplémentaires, en appliquant aux primitives de base, un ensemble de transformations géométriques et/ou photométriques locales W;;
- apparier chacune des primitives de base RANGE(i) avec un élément du dictionnaire (Dfinal), de telle manière que chaque primitive RANGE(i) soit égale à la transformée d'une primitive DOMAINφ par une transformation locale Wj, plus une erreur (ε permettant de dissimuler l'information numérique à cacher (IMI), l'image composée de l'ensemble des primitives RANGE approximées à partir d'une primitive DOMAIN constituant l'image de référence, notée I ref .
4. Procédé selon la revendication 1 ,2 ou 3, caractérisé en ceque le code associé à l'analyse fractal est contractif, et que pour déterminer l'information numérique secondaire à cacher (Im ) à partir de l'information numérique primaire à cacher (Iinπ), on calcule la différence GAP = Iorig - A entre le document initial (Iorig) et l'attracteur (A) défini à partir du code fractal (W) associé au document initial (Iori )? et pour chaque point (x,y) du document initial, on détermine l'information numérique secondaire à cacher (Iinβ) à partir de ladite différence GAP et de l'information primaire à cacher;
- pour déterminer l'information numérique secondaire à cacher (Iinπ), on établit un critère de lien binaire par convention entre GAP et l'information numérique à cacher Iinπ, et s'il y a correspondance d'après le critère utilisé pour un point donné (x,y) du document, on aura Iinβ = GAP pour ce pixel; dans le cas contraire, on ne tient pas compte de l'information à cacher pour ce pixel.
5. Procédé selon la revendication 4, caractérisé en ce que le lien binaire est établi selon la règle suivante:
Si GAP (x,y) < 0 et Iinfl (x,y) = 0 ou GAP (χ,y) >0 et Iinfi(x,y) = 1 alors Iin 2 (x,y) = GAP (x,y) sinon Iinβ (x,y) = 0
24
6. Procédé pour extraire d'un document numérique IOrig présumé porteur d'une information numérique dissimulée selon le procédé de la revendication 1 , caractérisé en ce que l'extraction de l'information dissimulée I'infi comporte des étapes consistant à:
- calculer un code d'autosimilarité W' associé à IOrig en utilisant le même contexte que celui utilisé lors de l'opération d'insertion;
- récupérer l'information dissimulée I'inβ à partir de rorig et de A' en calculant I'in = T x' oπ •g - • A"•' - ,
- tester l'information I'i„ 2 récupérée, et si elle est positive, en déduire que l'information dissimulée est égale à 1, dans le cas contraire, en déduire que l'information dissimulée Vm- f_ est égale à 0 pour le pixel considéré, de sorte qu'on extrait l'information numérique dissimulée à partir du document numérique modifié IOrig-
7. Procédé selon la revendication 6, caractérisé en ce que pour tester l'information
(I'inβ) - à partir de l'information I'inβ récupérée , calculer l'information initialement dissimulée rinfι, en appliquant la règle suivante: si l'information récupérée I'inβ(x,y) est supérieur à un seuil prédéterminé S, alors l'information dissimulée I'infi(x,y) = 1 sinon si l'information récupérée I'inβ(x,y) est inférieure au seuil (-S), alors rinfl (x,y) = 0 sinon, en déduire que l'information récupérée I'j^ au point (x,y) ne porte pas d'information dissimulée.
8. Procédé de dissimulation d'une information numérique primaire I ύifi dans un document initial long comportant les étapes suivantes :
détermination d'un document de référence I ref au moyen d'un procédé d'approximation avec pertes, détermination de l'écart GAP formé par la différence entre le document initial long et le document de référence I ref ;
25 détermination d'une information numérique secondaire I ___n calculée en fonction dudit écart GAP suivant une loi de correspondance entre ce dernier et la valeur de l'information numérique primaire I inπ ; ajout de ladite information numérique secondaire Ilnβ au document de référence I ref afin de produire un document modifié IOrig sensiblement proche du document initial I orig. .
9. Procédé selon la revendication 8 caractérisé en ce que la dite information numérique secondaire Iinβ (x,y) est déterminée par la formule suivante :
I jnβ (x, y) = inf (GAP(x, y) ; SEUIL) ou sup (GAP(x, y), SEUIL) , selon que I infι(x, y) est respectivement égal à 0 ou à 1 , ou inversement, avec SEUIL égal à un valeur prédéterminée.
10. Procédé selon la revendication 9 caractérisé en ce que la valeur de SEUIL est fixée à zéro en sorte que ladite valeur à inscrire I in (x,y) est respectivement égale à GAP(x,y) ou 0 selon que le point est porteur d'une information ou non, rapprochant ainsi considérablement l'image IOrig de l'image originale long.
11. Procédé selon la revendication 8 caractérisé en ce que la dite information numérique secondaire 1^ (x,y) est déterminée par la formule suivante :
I inβ = - ABS (GAP/2) ou + ABS (GAP/2) selon que I in ι est égal à 0 ou 1.
12. Procédé d'extraction d'une information numérique primaire I infi d'un document à tester IOrig comportant les étapes suivantes :
- détermination d'un document numérique de référence F ref au moyen d'un procédé d'approximation avec pertes, détermination de l'écart GAP' entre ledit document à tester IOrig et le document de référence F ref ; déduction de la valeur de l'information numérique primaire à partir d'une comparaison dudit GAP par rapport à une valeur de seuil, par exemple égale à 0. .
26
13. Procédé d'insertion ou d'extraction selon l'une quelconque des revendications 8 à 12, caractérisé en ce qu'il est appliquée à de l'imagerie numérique et que le procédé d'analyse est un procédé de codage avec pertes tel que Jpeg, ou par réduction de la résolution de l'image, ou encore par analyse fractale.
27
PCT/FR1999/000485 1998-03-05 1999-03-04 Procede de dissimulation d'informations binaires dans une image numerique WO1999045696A1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP99938027A EP0985313A1 (fr) 1998-03-05 1999-03-04 Procede de dissimulation d'informations binaires dans une image numerique
US09/423,266 US6643383B1 (en) 1998-03-05 1999-04-04 Method for hiding binary data in a digital image

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9804083A FR2775812A1 (fr) 1998-03-05 1998-03-05 Procede de dissimulation d'informations binaires dans une image numerique
FR98/04083 1998-03-05

Publications (1)

Publication Number Publication Date
WO1999045696A1 true WO1999045696A1 (fr) 1999-09-10

Family

ID=9524767

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR1999/000485 WO1999045696A1 (fr) 1998-03-05 1999-03-04 Procede de dissimulation d'informations binaires dans une image numerique

Country Status (4)

Country Link
US (1) US6643383B1 (fr)
EP (1) EP0985313A1 (fr)
FR (1) FR2775812A1 (fr)
WO (1) WO1999045696A1 (fr)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3957249B2 (ja) * 2000-01-06 2007-08-15 本田技研工業株式会社 電子化データ管理システムおよび方法
US7043051B2 (en) * 2001-02-21 2006-05-09 Lg Electronics Inc. Proprietary watermark system for secure digital media and content distribution
US7058201B2 (en) * 2001-03-28 2006-06-06 Lg Electronics Inc. Method of embedding watermark into digital image
JP2003032639A (ja) * 2001-05-09 2003-01-31 Monolith Co Ltd 画像処理方法と装置およびそれらに利用可能なコンテンツ記録方法
KR100493284B1 (ko) * 2001-05-11 2005-06-03 엘지전자 주식회사 디지털 미디어의 복제 제어 방법 및 시스템
US7280689B2 (en) * 2002-07-05 2007-10-09 Qdesign U.S.A., Inc. Anti-compression techniques for visual images
US7266693B1 (en) 2007-02-13 2007-09-04 U.S. Bancorp Licensing, Inc. Validated mutual authentication
US10943030B2 (en) 2008-12-15 2021-03-09 Ibailbonding.Com Securable independent electronic document
RU2530339C1 (ru) * 2013-05-21 2014-10-10 Государственное казенное образовательное учреждение высшего профессионального образования Академия Федеральной службы охраны Российской Федерации (Академия ФСО России) Способ встраивания информации в изображение, сжатое фрактальным методом, на основе сформированной библиотеки доменов
US11755758B1 (en) * 2017-10-30 2023-09-12 Amazon Technologies, Inc. System and method for evaluating data files

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5751854A (en) * 1992-08-03 1998-05-12 Ricoh Company, Ltd. Original-discrimination system for discriminating special document, and image forming apparatus, image processing apparatus and duplicator using the original-discrimination system
US5502576A (en) * 1992-08-24 1996-03-26 Ramsay International Corporation Method and apparatus for the transmission, storage, and retrieval of documents in an electronic domain
US5636292C1 (en) * 1995-05-08 2002-06-18 Digimarc Corp Steganography methods employing embedded calibration data
US5943422A (en) * 1996-08-12 1999-08-24 Intertrust Technologies Corp. Steganographic techniques for securely delivering electronic digital rights management control information over insecure communication channels
US5673316A (en) * 1996-03-29 1997-09-30 International Business Machines Corporation Creation and distribution of cryptographic envelope
AU2435297A (en) * 1996-04-02 1997-11-07 Theodore G Handel Data embedding
US5974548A (en) * 1996-07-12 1999-10-26 Novell, Inc. Media-independent document security method and apparatus
US5946414A (en) * 1998-08-28 1999-08-31 Xerox Corporation Encoding data in color images using patterned color modulated image regions

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DAVERN P ET AL: "FRACTAL BASED IMAGE STEGANOGRAPHY", INFORMATION HIDING. INTERNATIONAL WORKSHOP PROCEEDINGS, 30 May 1996 (1996-05-30), pages 279 - 294, XP002048612 *
PUATE JOAN, JORDAN FRED: "Using Fractal Compression Scheme to Embed a Digital Signature into an Image", VIDEO TECHNIQUES AND SOFTWARE FOR FULL-SERVICE NETWORKS, 21 November 1996 (1996-11-21), pages 108 - 118, XP002085678 *

Also Published As

Publication number Publication date
EP0985313A1 (fr) 2000-03-15
US6643383B1 (en) 2003-11-04
FR2775812A1 (fr) 1999-09-03

Similar Documents

Publication Publication Date Title
EP0997042B1 (fr) Procede de marquage d&#39;un signal numerique video compresse
Piva An overview on image forensics
US6664976B2 (en) Image management system and methods using digital watermarks
Barni et al. Watermark embedding: Hiding a signal within a cover image
AU2010201199B2 (en) Desynchronized fingerprinting method and system for digital multimedia data
US20020124024A1 (en) Image management system and methods using digital watermarks
EP3552129B1 (fr) Procédé d&#39;enregistrement d&#39;un contenu multimédia, procédé de détection d&#39;une marque au sein d&#39;un contenu multimédia, dispositifs et programme d&#39;ordinateurs correspondants
EP0985313A1 (fr) Procede de dissimulation d&#39;informations binaires dans une image numerique
Mani et al. A survey on digital image forensics: Metadata and image forgeries
CA2416198C (fr) Procede et systeme de decodage de tatouage d&#39;images
FR2790124A1 (fr) Procede de marquage d&#39;un document multimedia, tel qu&#39;une image, par generation d&#39;une empreinte externe
EP1289261A1 (fr) Procédé d&#39;insertion de messages binaires dans une image numérique
EP4091098A1 (fr) Procédé de traitement d&#39;une image candidate
FR2846827A1 (fr) Dispositif pour le marquage et la restitution de signaux multimedia
Aboalsamh et al. Steganalysis of JPEG images: an improved approach for breaking the F5 algorithm
Raju et al. DATA HIDING IN ENCRYPTED IMAGES USING MSB PREDICTION WITH IOT INTERFACE.
FR3109657A1 (fr) dispositif de sécurité à base d’une image en niveau de gris
FR3105529A1 (fr) Procédé de segmentation d’une image d’entrée représentant un document comportant des informations structurées
Sun et al. A new general binary image watermarking in DCT domain
Patel Digital watermarking using decision tree on color images
CH694233A5 (fr) Procédé d&#39;application et de reconnaissance d&#39;un filigrane numérique surimprimé.
FR3132368A3 (fr) Image sécurisée
Aboalsamh et al. An improved steganalysis approach for breaking the F5 algorithm
Sharma et al. Digital Image Steganographic Approach (DISA) to Enhance Quality and Imperceptibility
Dokheekh et al. Breaking the F5 Algorithm: An Improved Approach

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CA JP US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

WWE Wipo information: entry into national phase

Ref document number: 09423266

Country of ref document: US

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 1999938027

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1999938027

Country of ref document: EP

WWW Wipo information: withdrawn in national office

Ref document number: 1999938027

Country of ref document: EP