FR2812496A1 - Procede d'insertion et de decodage d'un signal de marquage - Google Patents
Procede d'insertion et de decodage d'un signal de marquage Download PDFInfo
- Publication number
- FR2812496A1 FR2812496A1 FR0009778A FR0009778A FR2812496A1 FR 2812496 A1 FR2812496 A1 FR 2812496A1 FR 0009778 A FR0009778 A FR 0009778A FR 0009778 A FR0009778 A FR 0009778A FR 2812496 A1 FR2812496 A1 FR 2812496A1
- Authority
- FR
- France
- Prior art keywords
- sub
- signal
- marking
- resolution
- objects
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/0021—Image watermarking
- G06T1/0092—Payload characteristic determination in a watermarking scheme, e.g. number of bits to be embedded
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/0021—Image watermarking
- G06T1/005—Robust watermarking, e.g. average attack or collusion attack resistant
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2201/00—General purpose image data processing
- G06T2201/005—Image watermarking
- G06T2201/0065—Extraction of an embedded watermark; Reliable detection
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Editing Of Facsimile Originals (AREA)
- Image Processing (AREA)
Abstract
Un proc ed e d'insertion d'un signal de marquage dans un ensemble de donn ees repr esentatives de grandeurs physiques, comprend une etape de d ecomposition (E1) de l'ensemble de donn ees en plusieurs sous-ensembles d'objets (o) et à plusieurs niveaux de r esolution (r).Il comprend une etape de d etermination (E7), pour chaque sous-partie comprenant un sous-ensemble d'objets (O) à une r esolution donn ee (R), d'un sous-signal de marquage à ins erer dans la sous-partie, d etermin e en fonction dudit signal de marquage (W) et d'un sous-signal de marquage à ins erer dans au moins une deuxième sous-partie comprenant ledit sous-ensemble d'objets (O) à une r esolution strictement inf erieure.Ce proc ed e d'insertion d'un signal de marquage dans une repr esentation multi-r esolution et multi-objets offre la possibilit e de d ecoder le signal de marquage à partir d'une sous-partie quelconque de la repr esentation.
Description
La présente invention concerne un procédé d'insertion d'un signal de
marquage dans un ensemble de données représentatives de grandeurs physiques
telles qu'une image numérique.
Elle concerne également un procédé de décodage d'un tel signal de marquage. Corrélativement, la présente invention concerne un dispositif d'insertion et un dispositif de décodage d'un signal de marquage inséré dans un ensemble de données représentatives de grandeurs physiques telles q'une image numérique. Plus précisément, la présente invention concerne le domaine du tatouage (en anglais "watermarking") des images ou vidéos numériques qui sont
représentées dans un format multi-résolution et multi-objet.
La technique de tatouage consiste à insérer un signal de marquage
indélébile directement dans les données numérisées.
Cette insertion d'une marque est assimilée à l'encodage d'une
information supplémentaire dans les données numériques.
Une insertion d'une telle marque dans une image permet d'identifier
le contenu de l'image et de gérer les droits d'auteur associés à ce contenu.
Lorsqu'une image originale est décomposée en plusieurs objets et suivant plusieurs niveaux de résolution spatiale, il est utile de pouvoir associer un
signal de marquage à chaque sous-partie de l'image comprenant un sous-
ensemble d'objets à une résolution donnée.
Dans le contexte par exemple de la création d'un serveur de données numériques qui peut fournir une sous-partie d'un document contenant un ensemble d'objets à différentes résolutions, il est utile de pouvoir associer un signal de
marquage à chaque sous-partie du document transmis.
La présente invention propose un procédé d'insertion permettant
d'associer un signal de marquage à une représentation multi-résolution et multi-
objet d'un ensemble de données numériques représentant par exemple une image
numérique, qui soit compatible avec l'extraction ultérieure de différentes sous-
parties de cet ensemble de données numériques.
A cet effet, la présente invention vise un procédé d'insertion d'un signal de marquage dans un ensemble de données représentatives de grandeurs physiques, comprenant une étape de décomposition de l'ensemble de données en
plusieurs sous-ensembles d'objets et à plusieurs niveaux de résolution.
Conformément à l'invention, ce procédé d'insertion d'un signal de marquage comprend une étape de détermination, pour chaque sous-partie comprenant un sous-ensemble d'objets à une résolution donnée, d'un sous- signal de marquage à insérer dans ladite sous-partie, déterminé en fonction dudit signal de marquage et d'un sous-signal de marquage à insérer dans au moins une deuxième sous-partie comprenant ledit sous- ensemble d'objets à une résolution
strictement inférieure.
Ainsi, pour déterminer le sous-signal de marquage à insérer dans une souspartie de l'ensemble de données, on tient compte à la fois du signal de marquage global à insérer et du ou des sous-signaux de marquage insérés dans des sous-parties comprenant le même sous-ensemble d'objets à des résolutions inférieures. Différentes portions du signal de marquage peuvent être insérées dans chaque sous-partie comprenant un même sousensemble d'objets à des
résolutions différentes.
On peut ainsi insérer un signal de marquage ou tatouage dans une représentation multi-résolution et multi-objet d'une image numérique en suivant
l'arborescence de cette représentation.
Ce procédé d'insertion conforme à l'invention offre la possibilité de décoder tout ou partie du signal de marquage à partir d'une sous-partie
quelconque de la représentation de l'ensemble de données.
Selon une caractéristique préférée de l'invention, le sous-signal de
marquage est constitué d'une portion du signal de marquage distincte du sous-
signal de marquage à insérer dans au moins une deuxième sous-partie
comprenant ledit sous-ensemble d'objets à une résolution strictement inférieure.
En insérant ainsi des portions disjointes du signal de marquage global dans différentes sous-parties de l'ensemble de données, on maximise la quantité d'information décodable à partir d'une branche de la représentation
arborescente de l'ensemble de données.
Selon une autre caractéristique préférée de l'invention, le procédé d'insertion comporte en outre une étape d'évaluation de la capacité de chaque sous-partie, et à l'étape de détermination, le sous-signal de marquage a une
longueur égale à la capacité de ladite sous-partie.
Classiquement, dans les techniques d'insertion d'un signal de marquage dans un ensemble de données numériques, la notion de capacité correspond au nombre de bits qu'on peut insérer et décoder ultérieurement dans
une partie de l'image.
Bien entendu, il existe un compromis entre la capacité, la robustesse du signal de marquage aux traitements classiques appliqués aux données numériques, tels que compression, décompression, transmission et changement de format, et la visibilité de ce signal de marquage qui doit à la fois être imperceptible, préserver la qualité perceptuelle des données numériques et être
indélébile, c'est-à-dire statistiquement indécelable dans les données numériques.
La capacité d'une sous-partie d'un ensemble de données numériques dépend typiquement de la modélisation de ces données et de la méthode mise en
oeuvre pour l'insertion et l'extraction du signal de marquage.
Cependant, pour une méthode donnée d'évaluation de capacité, il est possible de déterminer la capacité maximale de la sous-partie considérée et ainsi la longueur maximale du sous-signal de marquage qu'il est possible d'insérer dans
cette sous-partie.
Selon un mode de réalisation particulièrement pratique de l'invention, l'étape de détermination pour une sous-partie comprenant un sous-ensemble d'objets à une résolution donnée R, d'un sous-signal de marquage de longueur P, comprend les étapes suivantes: - recherche dans le signal de marquage du dernier bit lu lors d'une
étape de détermination d'un sous-signal de marquage pour une deuxième sous-
partie comprenant ledit sous-ensemble d'objets à une résolution directement inférieure R-1; et - lecture, dans un sens de lecture prédéterminé, des P bits
succédant au dernier bit lu dans le signal de marquage.
Ainsi, en insérant le signal de marquage dans un ordre
correspondant à la hiérarchie "parent-enfant" des objets de la représentation multi-
objet et multi-résolution, on peut maximiser la quantité d'information décodable à
partir d'une sous-partie de l'ensemble de données marquées.
Corrélativement, la présente invention concerne un dispositif d'insertion d'un signal de marquage dans un ensemble de données représentatives de grandeurs physiques, comprenant des moyens de décomposition en plusieurs sous-ensemble d'objets et à plusieurs niveaux de résolution de l'ensemble de
données.
Conformément à l'invention, ce dispositif d'insertion d'un signal de marquage comprend des moyens de détermination, pour chaque sous-partie comprenant un sous-ensemble d'objets à une résolution donnée, d'un soussignal de marquage à insérer dans ladite sous-partie, déterminé en fonction dudit signal de marquage et d'un sous-signal de marquage à insérer dans au moins une deuxième sous-partie comprenant ledit sousensemble d'objets à une résolution
strictement inférieure.
Ce dispositif d'insertion présente des avantages et des caractéristiques semblables à celles décrites précédemment pour le procédé
d'insertion qu'il met en ceuvre.
Selon un autre aspect de l'invention, un procédé de décodage d'un signal de marquage dans un ensemble de données représentatives de grandeurs physiques, comprend les étapes suivantes: - choix d'une sous-partie comprenant un sous-ensemble d'objets à une résolution donnée R; acquisition de la capacité de ladite sous-partie;
- extraction du sous-signal de marquage inséré dans ladite sous-
partie;
- identification d'une deuxième sous-partie comprenant ledit sous-
ensemble d'objets à une résolution directement inférieure R-1 si elle existe; et - réitération des étapes d'acquisition, d'extraction et d'identification
sur ladite deuxième sous-partie.
Ce procédé de décodage permet à partir d'une sous-partie choisie de manière quelconque à partir de l'ensemble de données décomposé en plusieurs objets et sur plusieurs niveaux de résolution spatiale, d'extraire les sous-signaux de marquage insérés dans les différentes sousparties de l'ensemble de données
contenant le même sous-ensemble d'objets à des niveaux de résolution inférieurs.
Selon une caractéristique préférée de l'invention, ce procédé de
décodage comporte en outre une étape d'ordonnancement des bits des sous-
signaux de marquage extraits pour chaque sous-partie dans un ordre de résolution
croissante desdites sous-parties.
Par conséquent, lorsque l'insertion du signal de marquage a été
réalisée dans un ordre correspondant à la hiérarchie de la décomposition multi-
objet et multi-résolution, on peut reconstituer au moins une partie du signal de
marquage inséré dans l'ensemble de données.
Corrélativement, la présente invention concerne également un dispositif de décodage d'un signal de marquage d'un ensemble de données représentatives de grandeurs physiques, comprenant:
- des moyens de choix d'une sous-partie comprenant un sous-
ensemble d'objets à une résolution donnée R; - des moyens d'acquisition de la capacité de ladite sous-partie; - des moyens d'extraction du soussignal de marquage inséré dans ladite sous-partie; et - des moyens d'identification d'une deuxième sous-partie
comprenant ledit sous-ensemble à une résolution directement inférieure R1.
Ce dispositif de décodage présente des avantages et caractéristiques analogues à celles décrites précédemment pour le procédé de
décodage qu'il met en oeuvre.
La présente invention vise également un appareil de traitement de données, tel qu'un serveur d'informations, adapté à transmettre un ensemble de
données représentatives d'une image numérique, décomposé en plusieurs sous-
ensembles d'objets et à plusieurs niveaux de résolution, cet appareil de traitement
de données comprenant un dispositif d'insertion conforme à l'invention.
De manière analogue, la présente invention vise un appareil de traitement de données adapté à requérir au moins un sous-ensemble d'objets à une résolution donnée issu d'une décomposition d'un ensemble de données représentatives d'une image numérique, cet appareil de traitement de données
comprenant un dispositif de décodage conforme à l'invention.
Enfin, la présente invention vise un programme d'ordinateur lisible par un microprocesseur et comprenant des portions de code logiciel ou des instructions de programme adaptées à mettre en oeuvre le procédé d'insertion
conforme à l'invention et/ou le procédé de décodage conforme à l'invention.
D'autres particularités et avantages de l'invention apparaîtront encore
dans la description ci-après.
Aux dessins annexés, donnés à titre d'exemples non limitatifs: - les figures la et lb illustrent le principe du procédé d'insertion d'un signal de marquage conforme à l'invention dans une image numérique; - la figure 2 est un exemple de représentation arborescente d'une image numérique décomposée en objets et sur plusieurs niveaux de résolution; - les figures 3a et 3b illustrent un exemple de signal de marquage qui peut être inséré conformément au procédé d'insertion de l'invention; - la figure 4 est un algorithme illustrant le procédé d'insertion conforme à l'invention; - la figure 5 est un algorithme illustrant la décomposition pyramidale de l'image; - la figure 6 est un algorithme illustrant l'estimation de la capacité dans un mode de réalisation de l'invention; - la figure 7 est un algorithme illustrant l'insertion d'un signal de marquage selon un mode de mise en oeuvre de l'invention; - la figure 8 est un algorithme illustrant le procédé de décodage conforme à un mode de réalisation de l'invention; la figure 9 est un algorithme d'extraction du signal de marquage utilisé dans le procédé de décodage illustré à la figure 8; et - la figure 10 est un schéma bloc illustrant un dispositif adapté à
mettre en oeuvre le procédé d'insertion et/ou de décodage conforme à l'invention.
On va décrire tout d'abord, en référence aux figures la et lb, le principe du procédé d'insertion d'un signal de marquage conforme à l'invention dans une image numérique. Le procédé d'insertion conforme à l'invention permet de marquer ou
tatouer un ensemble de données représentatives de grandeurs physiques.
Dans la suite de la description, on s'intéressera plus particulièrement
au tatouage d'une image numérique.
Bien entendu, le procédé d'insertion conforme à l'invention peut également s'appliquer à une séquence vidéo définie comme une succession
d'images numériques.
Dans un contexte client/serveur, le serveur est adapté à fournir une image numérique à de multiple résolutions et ayant un nombre d'objets divers en
fonction de la requête d'un client.
Par exemple, on considère trois clients ayant chacun une requête spécifique. Le client 1 demande par exemple tous les objets de l'image à la résolution 1. Le client 2 demande également tous les objets de l'image mais à une résolution inférieure, ici à une résolution 1/2. Enfin, le client 3 demande seulement
une partie des objets à la résolution 1.
Bien entendu, un client pourrait également demander divers objets à
des résolutions différentes.
Lorsque l'on souhaite marquer l'une ou l'autre de ces images
demandées par un client, une solution directe consisterait à choisir d'abord le sous-
ensemble d'objets à la résolution demandée par le client, puis à insérer un signal
de marquage directement dans ce sous-ensemble.
Cette solution directe est possible, mais elle consomme du temps au moment de l'envoi des données suite à une requête d'un client, et nécessite
plusieurs implémentations du procédé d'insertion d'un signal de marquage.
Conformément à l'invention, le procédé d'insertion d'un signal de marquage permet d'insérer ce signal de marquage directement dans la représentation multi-objet et multi-résolution de l'image, au moment de la création
de cette représentation ou de son stockage.
Comme cela sera décrit explicitement en relation avec le procédé d'insertion, le signal de marquage est inséré de telle sorte que ce signal ou une partie de ce signal soit lisible à partir de tout sous- ensemble d'objets à une
résolution donnée.
Ainsi, I'opération d'insertion du signal de marquage n'est plus
nécessaire à chaque requête d'un client au serveur.
La figure lb illustre de manière schématique l'arbre sous-jacent à la
représentation multi-objet et multi-résolution de l'image de la figure la.
On considère ici la décomposition de l'image numérique sur deux
niveaux de résolution.
On obtient ainsi un arbre à deux niveaux, chaque niveau
correspondant à un niveau de résolution (pleine/demie).
Au niveau de résolution 1, on trouve les objets de basse résolution.
Ainsi l'objet 1 est-il constitué à ce niveau de la maison et du garage.
Au niveau de résolution 2, on trouve des objets de haute résolution héritant des objets de basse résolution. Ainsi, I'objet 1 se trouve séparé en deux
objets au niveau de résolution 2 (maison/garage).
Dans la suite de la description, on nommera les objets de basse
résolution, des objets "parents" et les objets de haute résolution, héritant des objets
de basse résolution, des objets "enfants".
On va décrire ici le principe du procédé d'insertion conforme à l'invention, mis en oeuvre sur une représentation arborescente par ordre de
résolution croissante des objets de l'image.
Ainsi, à la figure 2, trois niveaux de résolutions sont représentés du
moins fin (résolution 1) au plus fin (résolution 3).
Selon la convention décrite précédemment, les objets de la résolution
n-I sont des objets "parents" des objets de la résolution n.
Réciproquement, les objets de la résolution n sont des objets
"enfants" des objets de la résolution n-1.
Les objets "parents" et les objets "enfants" sont reliés par des
branches de la représentation arborescente.
Dans ce type de décomposition multi-résolution et multi-objet, il est nécessaire de disposer de l'information des objets "parents" pour reconstruire les
objets "enfants".
Ainsi, pour reconstruire un objet 01 l à la résolution 3, on a besoin de l'objet 011 à la résolution 2 et de l'objet 01 à la résolution 1. Conformément à l'invention, on associe à chaque objet et à chaque niveau de résolution une capacité C. La détermination de cette capacité de chaque sous-partie de l'image comprenant un ensemble d'objets à une résolution donnée sera décrite
ultérieurement en référence à la figure 6.
En fonction de cette capacité, on va associer à chaque sous-partie un
signal de marquage.
Conformément à l'invention, ce sous-signal de marquage est déterminé en fonction d'un signal de marquage global et du ou des sous-signaux de marquage insérés dans des objets "parents", c'est-à-dire dans des sousparties comprenant le même sous-ensemble d'objets à une résolution strictement inférieure. On considère ici un signal de marquage sur soixante quatre bits qui se décomposent de la manière suivante: identification du créateur de l'image sur seize bits; - identification du fournisseur de l'image (en anglais "provider") sur seize bits; identification de l'objet ID sur seize bits; et
- informations supplémentaires diverses sur seize bits.
La figure 2 illustre le principe d'insertion incrémentale, c'est-à-dire dans l'ordre des données du signal de marquage dans chaque branche de l'arbre
de la représentation de l'image numérique.
En pratique, pour le signal de marquage tel que décrit précédemment, on définit un sens de lecture prédéterminé de ce signal de marquage, et on ordonne les informations contenues dans ce signal de marquage
par ordre d'importance décroissante suivant ce sens de lecture.
Ainsi ici dans cet exemple, à la résolution 1, l'objet 01 a une capacité C de seize bits, permettant d'insérer l'ensemble de l'information du signal de
marquage relative au créateur de l'image.
Au niveau de résolution 2, I'objet 011 a une capacité C de trente-
deux bits permettant d'insérer ensuite l'ensemble de l'information du signal de
marquage relative au fournisseur et à l'identification de l'objet ID.
En revanche, I'autre sous-partie de la résolution 2 contenant l'objet
012, a une capacité inférieure C égale à vingt bits.
Dans ce cas, il est possible seulement d'insérer l'information relative
au fournisseur et un quart de l'information relative à l'identification de l'objet.
La suite de l'information relative à l'identification de l'objet ID sera insérée seulement sur l'objet 0121 issu de la décomposition de l'objet 012 à la
résolution 2.
A la suite de cette insertion d'un signal de marquage, lorsque l'on souhaite décoder ce signal, I'information décodée sera éventuellement dépendante
de l'objet considéré et de la résolution choisie.
Ainsi, à partir de l'objet 01 1 à la résolution 2, on peut décoder l'ensemble de l'information relative au créateur, au fournisseur et à l'identification
de l'objet.
En revanche, à partir de l'objet 012 à la résolution 2, on peut également décoder l'information relative au créateur et au fournisseur de l'image,
mais on ne pourra pas accéder à l'identification de l'objet ID.
Dans ce dernier cas, le décodage du signal de marquage ne fournira
qu'une présomption d'identification.
Il est par conséquent important, au moment de l'insertion du signal de marquage, de réaliser celle-ci dans un ordre d'importance décroissante des
informations à insérer.
A cet effet, on va décrire en référence aux figures 3a et 3b, une structure possible d'un signal de marquage permettant d'identifier le contenu de
I'image et de gérer les droits d'auteur associés à ce contenu.
Ce type de signal de marquage est proposé dans le cadre de la
norme MPEG-4 (Motion Picture Expert Group).
Ce type de contenu est appelé "plaque d'immatriculation" (en anglais
"licence plate") d'un document numérique.
La figure 3a illustre les champs nécessaires proposés dans l'identifiant du contenu selon la norme MPEG-4, et la figure 3b illustre les champs supplémentaires facultatifs. Les champs nécessaires sont: le type de contenu sur huit bits (vidéo, audio, image fixe etc), le type d'identifiant du contenu sur huit bits (ISAN, ISNB, etc), la taille de l'identifiant sur huit bits suivi de l'identifiant lui-même de longueur variable, et enfin l'indication du nombre d'informations supplémentaires sur huit
bits.
Si une information supplémentaire est associée à ce signal de marquage, les champs supplémentaires tel qu'illustrés à la figure 3b, spécifient le
langage utilisé sur vingt-quatre bits.
Typiquement, le langage utilisé peut contenir un ensemble de
descripteurs (titre, auteur, etc.) auxquels on va associer une valeur définie.
Le champ suivant spécifie sur huit bits la taille du nom, descripteur suivi du nom lui-même (par exemple "titre d'un film") sur un nombre de bits variable. Enfin, le champ suivant spécifie la taille de la valeur sur huit bits,
descripteur suivi de la valeur du champ (par exemple "Titanic").
Plusieurs descripteurs avec leur valeur associée peuvent être ainsi
définis dans les champs supplémentaires.
On va décrire à présent, en référence à la figure 4, le procédé d'insertion d'un signal de marquage dans une image numérique selon un mode
de réalisation de l'invention.
On considère ici une première étape de construction E1 d'une
représentation arborescente d'une image.
Un tel exemple de construction sera décrit ultérieurement en
référence à la figure 5.
Dans ce mode de réalisation, et de manière nullement limitative,
cette étape de construction E1 est ici réalisée de manière préalable.
On peut cependant envisager, pour optimiser le procédé d'insertion du point de vue calculatoire, de réaliser cette étape de construction et l'étape de
détermination du signal de marquage simultanément.
On effectue ensuite une étape d'initialisation E2 du niveau de résolution considéré, r = 1, qui correspond à la résolution la plus grossière de
l'image à marquer.
On initialise aussi un indice d'ordre de parcours des objets o à une valeur 0. Cette étape d'initialisation E3 sera refaite pour chaque niveau de
résolution traitée.
Il est clair qu'on suppose qu'on dispose d'un ordre de parcours des objets dans la représentation arborescente d'une image telle qu'illustrée à la figure 2, et d'une méthode systématique permettant d'associer un indice
discriminant à chaque objet de cette représentation arborescente.
Une étape de test E4 permet de vérifier si l'indice du niveau de
résolution r est égal à 1.
Dans l'affirmative, une étape d'initialisation E5 d'un indice de
lecture des bits du signal de marquage est mise en oeuvre.
Cet indice de lecture lo,r dépend à la fois de l'objet o et de la
résolution r.
Ici, à l'étape d'initialisation E5 mise en oeuvre pour les objets à la
résolution la plus grossière, l'indice de lecture lo,0 = 0.
Une étape d'estimation de la capacité E6 est ensuite mise en oeuvre pour évaluer la capacité de chaque sous-partie considérée comprenant
un objet o à une résolution r.
Cette capacité Co,r peut être calculée de différentes façons.
Un exemple de calcul de capacité sera décrit ultérieurement en
référence à la figure 6.
Ensuite, après cette étape d'évaluation de la capacité E6, une étape de détermination d'un sous-signal de marquage de longueur égale à cette
capacité Co,r est mise en ceuvre.
Une étape de recherche E7, de l'indice de lecture permet de retrouver le dernier bit lu dans le signal de marquage global, lors de la détermination d'un sous-signal de marquage pour une autre sous-partie comprenant le même sous-ensemble d'objets à une résolution directement
inférieure r-1.
Au premier niveau de résolution, cet indice 1o,r-1 est égal à 0.
Cet indice de lecture est ensuite mis à jour pour chaque objet à chaque résolution en fonction de sa capacité, comme cela sera décrit dans les
étapes suivantes.
Cette indice de lecture Io,r permet de pointer sur le bit suivant du
signal de marquage qu'on doit lire et insérer dans l'objet considéré.
Une étape d'insertion E8 proprement dite permet de lire, dans un sens de lecture prédéterminé, les Co,r bits succédant au dernier bit lu dans le
signal de marquage pointé par l'indice de lecture lo,r-1.
On insère ensuite ces bits du signal de marquage dans l'objet
courant traité o.
On insère ainsi des portions disjointes du signal de marquage dans
chaque branche de la décomposition arborescente telle qu'illustrée à la figure 2.
Un exemple d'un algorithme d'insertion sera décrit ultérieurement
en référence à la figure 7.
Une étape de mise à jour E9 est ensuite mise en oeuvre pour mettre à jour l'indice de lecture courant lo,r en fonction de la capacité de l'objet traité Co,r et donc du nombre de bits qui ont été insérés à la résolution courante r: I o,r= I o,r-1 + Cor Ce nouvel indice de lecture 1o,r est mémorisé dans une étape de
mémorisation El0 pour chaque objet o à chaque résolution r.
L'ensemble des étapes décrites précédemment sont ensuite réitérées pour chaque objet et à chaque niveau de résolution de la
représentation pyramidale de l'image.
En pratique, une étape de test Ell permet de vérifier si l'objet
courant est le dernier objet à la résolution r de la décomposition.
Dans la négative, on considère dans une étape E12 I'objet suivant
o = o + 1 et on réitère sur cet objet l'ensemble des étapes E6 à E 1.
* En revanche, lorsqu'on a traité le dernier objet à la résolution r, on vérifie dans une étape de test E13 si la résolution courante r est égale à la
résolution maximale, ici en référence à la figure 2, égale à la résolution 3.
Dans la négative, on considère dans une étape E14 la résolution suivante r = r + 1 et on réitère pour ce niveau de résolution, I'ensemble des
étapes E3 à E13.
Le procédé d'insertion d'un signal de marquage ainsi décrit s'arrête lorsque tout les objets ont étés traités à tous les niveaux de résolution de la décomposition. On va décrire maintenant en référence à la figure 5, un exemple de construction d'une représentation multi-résolution et multi-objet d'une image numérique telle qu'elle peut être mise en oeuvre lors de l'étape de construction
E1 du procédé d'insertion conforme à l'invention.
On utilise ici une méthode d'analyse multi-objets et multi-
résolutions fondée sur une décomposition en ondelettes.
On suppose que l'image I qui doit être marquée a déjà été codée et décodée. Bien entendu, il pourrait être judicieux d'effectuer le codage en
même temps que la construction de l'arborescence multi-résolution et multi-
objet. En particulier, on peut appliquer toute méthode connue de
compression d'images numériques à partir d'une décomposition en ondelettes.
On décompose tout d'abord l'ensemble des données numérique représentative de l'image par une décomposition en ondelettes (DWT ou Discret
Wavelet Transform).
Cette décomposition d'un signal numérique permet de décomposer
ce signal sur plusieurs niveaux de résolution, de manière à obtenir des sous-
bandes de fréquence à plusieurs niveaux de résolution.
Bien entendu, d'autres types de décomposition multi-résolution connus pourraient être utilisés, par exemple des pyramides Gaussiennes/Laplaciennes. Dans le cas particulier d'une décomposition en sous-bandes de fréquence, la décomposition consiste à créer, à partir d'un signal numérique, un
jeu de sous-bandes contenant chacune un spectre limité de fréquence.
Les sous-bandes peuvent être de différentes résolutions.
La résolution d'une sous-bande correspond au nombre
d'échantillons par unité de longueur utilisés pour représenter cette sousbande.
Dans le cas particulier d'un signal numérique représentatif d'une image, une sous-bande de fréquence peut elle-même être considérée comme une image, c'est-à-dire comme un tableau bidimensionnel de valeurs
numériques représentatives d'une image.
La décomposition en ondelettes discrète sur N niveaux de
résolution est bien connue et ne sera pas décrite ici.
L'étape de construction comporte ensuite une étape d'initialisation
E21 d'un indice de résolution i.
Cet indice i est initialisé à la valeur maximale N des niveaux de
résolution obtenus après décomposition spectrale.
On considère ensuite une sous-bande basse Si, du niveau de
résolution i.
Dans une telle décomposition en ondelettes, cette sous-bande basse Si est une reproduction fidèle à une résolution plus faible de l'image d'origine.
Elle est donc particulièrement bien adaptée à la segmentation.
L'étape de segmentation E22 de la sous-bande basse Si permet de créer une partition de l'image en plusieurs sous-parties comprenant chacune un
sous-ensemble d'objets de l'image.
Chaque sous-partie, appelée également région, est non vide, les sousparties étant sans intersection et la réunion des sous-parties correspondant
à l'image traitée.
En pratique, la procédure de segmentation peut être légèrement
différente suivant le niveau de résolution i auquel on se trouve.
Au premier niveau de résolution, on peut effectuer une
segmentation indépendante des autres niveaux de résolution.
N'importe quel procédé de segmentation connu de l'homme du
métier peut être utilisé.
Le but de la segmentation est de fournir un certain nombre d'objets
ou régions, correspondant si possible à des unités sémantiques de l'image.
En revanche, à partir du second niveau de résolution, on doit assurer une certaine cohérence dans la construction de l'arborescence telle
qu'illustrée à la figure 2.
Un exemple de segmentation assistée d'un niveau de résolution sur un autre est décrit notamment dans la demande de brevet FR 99 15 293
déposée le 3 décembre 1999.
Cette segmentation cohérente de l'image n'a pas besoin pour la
compréhension de l'invention d'être décrite plus en détail ici.
A l'issue de cette étape de segmentation E22 de la sous-bande basse Si, I'ensemble des sous-parties extraites à ce niveau de résolution sont
rangées dans la structure en arbre dans une étape d'extraction E23.
Notons que si l'étape de détermination et l'étape d'insertion d'un signal de marquage décrites en référence à la figure 4 étaient mises en oeuvre simultanément à l'étape de décomposition décrite ici, la détermination du signal de marquage et son insertion pourraient être réalisées directement à l'issue de
cette étape d'extraction E23 des différents objets de la structure arborescente.
Lors de la construction de cette structure pyramidale, au premier
niveau de résolution, chaque objet extrait est une racine de l'arbre.
A partir des niveaux de résolution supérieurs, chaque objet extrait
est associé à un noeud parent auquel il se rattache.
Une étape de synthèse E24 permet de reconstituer la sous-bande
basse fréquence Si _ au niveau de résolution i-1 directement inférieure.
On considère ensuite l'indice suivant du niveau de résolution i = i-1
dans une étape de mise à jour E25.
Une étape de test E26 permet de vérifier si cet indice i est
strictement supérieur à 0 ou non.
Dans l'affirmative, on réitère sur la sous-bande basse Si l'ensemble
des étapes E22 à E26.
Sinon, lorsque l'indice i est nul, I'ensemble des niveaux de résolution a été considéré et la procédure de construction de la représentation
pyramidale de l'image est arrêtée.
On dispose ainsi à l'issue de cette étape de construction El, d'un
arbre contenant tous les objets de l'image à différents niveaux de résolution.
Chaque sous-partie de la décomposition comprend ainsi un sous-
ensemble d'objets correspondant à un certain nombre de coefficients dans la
décomposition spectrale en ondelettes.
Ces coefficients sont en réalité tous les coefficients de toutes les sousbandes de fréquence de ce niveau de résolution dans la zone délimitée par l'objet. C'est sur cet ensemble de coefficients que pourra ensuite être déterminée et insérée l'information du signal de marquage, comme décrit
précédemment en référence aux étapes E6 à E14 de la figure 4.
On va décrire à présent, en référence à la figure 6, un exemple d'évaluation de la capacité d'une sous-partie de la décomposition comprenant un objet O à un niveau de résolution donnée, R. De nombreuses méthodes de calcul de la capacité peuvent être mises en oeuvre, une capacité maximale pouvant être déterminée pour chacune
de ces méthodes.
La méthode proposée ici est une méthode par modulation et
détection statistique.
Cette méthode présente l'avantage de pouvoir être appliquée sur un support de forme arbitraire d'un objet et quel que soit le format du masque de I'objet (par exemple, le masque de l'objet peut éventuellement comporter des trous).
Le principe de l'insertion par modulation est le suivant.
Soit un ensemble de coefficient X = {Xi, 1 < i < P} à moduler.
On suppose que ces coefficients Xi sont identiquement distribués et de préférence homogènes, c'est-à-dire issus de la même sous-bande de signal
de fréquence.
L'opération de modulation peut être formalisée de la manière suivante: X'i =Xi + s ai wi, 1< i < P o W = {wi} est une séquence pseudo-aléatoire de moyenne nulle, ai est la valeur maximale de la modification acceptable (JND ou Just Noticeable
Différence) sur Xi, et s vaut + 1 si le bit inséré est 1 et -1 si le bit inséré est 0.
On pourrait également effectuer une modification d'amplitude
constante sur tous les coefficients.
Ainsi, la modification d'amplitude peut être constante ai = d.
La détection est basée sur la corrélation entre la séquence de coefficients modulés X' et le signal pseudo-aléatoire W parfois appelé porteuse. On peut relier théoriquement la probabilité de détection correcte à la quantité q suivante: d47 q=- (X drx La validité de la détection et la robustesse du signal de marquage inséré dépendent de l'écart-type cx du signal X et du nombre d'échantillons utilisés P. Il est clair qu'inversement, si on fixe une valeur théorique minimale qmin qui correspond à une probabilité de détection correcte fixée, par exemple qmin = 3, 291 pour une probabilité de détection de 0, 9995, on peut en déduire facilement le nombre d'échantillons P permettant de satisfaire cette contrainte: P > qmllillrx d A partir de l'écart-type ou de la variance cyx de l'ensemble des coefficients X d'une sous-partie donnée, on peut déduire le nombre minimum de points Pmin nécessaires pour insérer un bit avec une probabilité de détection correcte fixée: Pmin - in d d Ainsi, en référence à la figure 6, pour évaluer la capacité associée à un objet O à un niveau de résolution donné de la décomposition de l'image numérique, une étape d'estimation E30 permet de calculer tout d'abord le cardinal de la sous-partie contenant l'objet O. Ce cardinal Card (O) correspond au nombre d'échantillons
disponibles dans la sous-partie analysée.
On estime ensuite la variance de l'ensemble des coefficients de
cette sous-partie dans une étape d'estimation E31.
L'estimation de la variance d'un signal, bien connue de l'homme du
métier, ne sera pas décrite ici.
On peut ensuite calculer, à partir de l'équation décrite précédemment, le nombre minimum de points Pmin nécessaires pour insérer un bit avec une probabilité de détection donnée dans une étape de calcul E32. Le calcul de la capacité C associée à la sous-partie traitée est ensuite réalisé dans une étape de calcul E33. Dans ce cas, le calcul de cette capacité C se fait directement en divisant le cardinal Card (O) par le nombre
minimum de points Pmin calculé.
La capacité est alors égale: C- Card(O) P. Pmiii
Bien entendu, toute méthode de calcul de la capacité d'une sous-
partie peut être utilisée ici.
L'étape d'insertion des bits du signal de marquage à insérer dans une sous-partie comprenant un objet O est ensuite décrite en référence à la
figure 7.
Pour cet objet O, une première étape E40 consiste éventuellement à calculer un ensemble d'amplitudes maximales de modification correspondant à
chaque pixel de l'objet traité.
Ce calcul peut être fait en utilisant des règles de masquage psychovisuel qui permettent de prédire la visibilité de la modification d'un pixel
en fonction du contenu spectral de son voisinage.
Toute méthode connue de l'homme de métier peut être utilisée ici.
Ce calcul d'amplitude pourrait être réalisé au préalable et les amplitudes calculées pourraient être mémorisées dans une table. L'étape de calcul E40 serait alors remplacée par une étape de lecture des amplitudes
mémorisées dans cette table.
Alternativement, on peut considérer une valeur faible par défaut pour cette amplitude de modulation et appliquer ainsi une modification
d'amplitude constante sur chaque pixel.
En outre, on a mémorisé, lors de l'étape d'estimation de la capacité E6, le nombre de points nécessaires Pmin, pour insérer un bit et la capacité C
globale associée à cet objet.
De manière connue, pour chaque bit bk à insérer, on choisit un ensemble de Pmin points parmi l'ensemble des coefficients représentatifs de l'objet. Bien entendu, on pourrait choisir un nombre de points P supérieur
au nombre de points minimum Pmin calculés pour maximiser la capacité.
Cette étape de choix E41 peut se faire de préférence par tirage
pseudo-aléatoire à partir d'une clé Kt, ou en appliquant une règle déterministe.
Une étape de modulation E43 est ensuite mise en oeuvre sur chaque coefficient à partir des amplitudes de modulation calculées à l'étape E40
et du tirage pseudo-aléatoire réalisé à l'étape E42.
Ainsi, pour chaque point traité, la modulation fait intervenir une
valeur pseudo-aléatoire Wi associée à une amplitude de modulation ai.
Une étape de mise à jour E44 permet d'incrémenter le compteur de
bits k = k + 1 de manière à répéter l'opération pour tous les bits bk à insérer.
On vérifie dans une étape de test E45 que le compteur de bits k est
strictement inférieur à la capacité C de l'objet traité.
Dans l'affirmative, on réitère pour ce bit à insérer l'ensemble des
étapes E41 à E45 du procédé d'insertion.
Notons qu'il est nécessaire de mémoriser les points utilisés pour le marquage de façon à découper le support de l'objet en C sous-ensembles
complémentaires de points non nécessairement connexes et de cardinal Pmin.
Selon un autre aspect de l'invention, on va maintenant décrire en référence aux figures 8 et 9, le procédé de décodage d'un signal de marquage dans une image numérique, ce signal de marquage ayant été inséré
conformément au procédé d'insertion décrit précédemment.
Ce procédé de décodage est mis en oeuvre à partir d'une sous-
partie comprenant un sous-ensemble d'objet O à une résolution donnée R. Cette étape de choix E50 d'une sous-partie peut être mise en oeuvre dans un contexte client/serveur grâce à une requête par un client d'un
objet de l'image à une résolution donnée.
Une étape d'initialisation E51 permet d'initialiser un indice de niveau de décomposition r à la valeur R correspondant à la résolution R de
l'objet O choisi.
Une étape d'acquisition de la capacité E52 est ensuite mise en oeuvre sur la sous-partie choisie. L'estimation de la capacité peut être réalisée comme décrit
précédemment en référence à la figure 6.
Il est également possible de remplacer cette estimation par une étape de lecture de la capacité, si l'on suppose que la capacité CO,R de l'objet O
à la résolution R a été transmise au décodeur.
Remarquons que la transmission de la capacité permet d'accroître
la robustesse du décodage.
En effet, I'estimation de la capacité au décodeur peut éventuellement être erronée si l'image a subi des distorsions, dues par exemple à la perte de certains paquets lors de la transmission dans un système client/serveur. Une étape de décodage proprement dite E53 est ensuite mise en oeuvre afin d'extraire l'ensemble des bits insérés dans l'objet O. Cette extraction sera explicitée ultérieurement en référence à la
figure 9.
Ensuite, une étape de mémorisation E54 des bits décodés est mise
en oeuvre.
Notons qu'il est important de mémoriser, en parallèle à cet ensemble de bits décodés, le niveau de résolution correspondant r afin de
pouvoir reconstruire le signal de marquage à la fin du procédé de décodage.
Les étapes suivantes du procédé de décodage permettent d'identifier une autre sous-partie comprenant le même sous-ensemble d'objet O
à une résolution directement inférieure.
On considère ainsi ce niveau de résolution inférieur r = r- 1 à une
étape E55.
On vérifie dans une étape de test E56 que le niveau de résolution
ainsi obtenu existe bien dans la décomposition.
En pratique, on compare l'indice du niveau de résolution r à la
valeur 0.
Si cet indice r est strictement positif, c'est-à-dire si on ne se trouve pas au niveau de résolution minimum, on reconstruit dans une étape de reconstruction E57 la sous-partie comprenant le même sous-ensemble d'objets O à une résolution inférieure, c'est-à-dire que l'on reconstruit l'objet parent de l'objet courant O.
Les étapes d'extraction E52 à E57 sont réitérées sur cette sous-
partie de résolution directement inférieure de manière à extraire les bits encodés
dans cette sous-partie.
Lorsqu'à l'issue de l'étape de test E56, on a traité tous les niveaux de résolution, c'est-à-dire que l'indice de résolution r = 1, on passe au décodage proprement dit du tatouage dans une étape d'ordonnancement E58 des bits des
sous-signaux de marquage extraits pour chaque sous-partie.
Dans cette étape d'ordonnancement E58, les bits des sous-signaux sont ordonnés dans un ordre de résolution croissante des sous-parties décodées. Cet ordre de résolutions croissantes correspond en fait à l'ordre d'encodage des bits du signal de marquage tel qu'inséré selon le procédé
d'insertion décrit précédemment.
Une étape de décodage E59 permet de décoder le message
proprement dit.
Lors de cette opération de décodage, on regroupe de manière
classique les bits décodés en fonction de la structuration du tatouage.
En se référant à l'exemple de la figure 2, on regroupe les seize premiers bits pour obtenir une information sur le créateur de l'image, puis par exemple les seize bits suivants s'ils sont accessibles pour obtenir une
information sur le fournisseur d'images.
On remarque que ce procédé de décodage peut être mis en oeuvre
à partir d'un objet O quelconque à une résolution R quelconque.
Dans le cas o plusieurs objets ont le même objet parent, il est avantageux du point de vue calculatoire d'utiliser pour décoder le signal de
marquage l'objet ayant la capacité la plus élevée.
Ainsi, en référence à l'exemple de la figure 2, si l'on dispose au niveau du procédé de décodage à la fois de l'objet 011 et de l'objet 012 à la résolution 2, il est avantageux de décoder le signal de marquage à partir de l'objet 011 ayant une capacité C égale à 32 bits supérieure à la capacité C égale à 20 bits de l'autre objet 012. On va décrire un mode plus particulier d'extraction d'un sous-signal
de marquage en référence à la figure 9.
Une étape d'initialisation E60 permet d'initialiser un indice de bit k à
la valeur 0.
Afin de pouvoir décoder le signal de marquage inséré dans un objet 0, il est nécessaire de connaître ou de réestimer le nombre Pmin de coefficients
utilisés pour insérer un bit d'information.
Pour une plus grande fiabilité du procédé de décodage, il est préférable de transmettre ce nombre Pmin tel que calculé lors de l'étape
d'insertion illustrée à la figure 7.
Il est également nécessaire de connaître la clé secrète Kt utilisée lors du tirage pseudo-aléatoire réalisé à l'étape E42 du procédé d'insertion décrit
à la figure 7.
On peut alors, à partir de cette même clé Kt, effectuer le même
tirage pseudo-aléatoire lors d'une étape E61.
Alternativement, si une règle de choix déterministe a été utilisée lors de l'insertion, on utilise la même règle pour trouver un sous-ensemble de
points à décoder dans une étape de choix E62.
Par contre, la connaissance des amplitudes de modulation ai n'est
pas nécessaire au niveau du décodeur.
En pratique, on applique dans une étape de calcul E63 un test statistique de détection sur la corrélation entre le signal modulé contenant le signal de marquage X' et le signal pseudo-aléatoire inséré W. Soit Yi = X'i Wi et t =- E[Y] (O'y o E [Y] est la moyenne de Y, et cy correspond à l'écart type de ce signal. La valeur de test t est une estimation pratique de la valeur théorique q estimée pendant l'étape d'estimation de la capacité telle que décrite
en référence à la figure 6.
La détection se fait par exemple sur le signe de la quantité calculée lors d'une étape de comparaison E64. En pratique, si t est strictement supérieur à 0, on décode la valeur 1
à l'étape d'extraction E65.
Sinon, on décode la valeur 0 à l'étape d'extraction E66.
Chaque étape de stockage E67 permet de mémoriser les bits décodés dans un espace mémoire M comme expliqué précédemment en
référence à la figure 8.
On incrémente dans une étape E68 I'indice de bits k = k + 1.
On vérifie dans une étape de test E69 que cet indice de bits k est
strictement inférieur à la capacité C associée à l'objet O décodé.
Dans l'affirmative, on réitère l'ensemble des étapes E61 à E68 du
procédé d'extraction afin d'extraire le bit suivant du message.
Lorsque l'ensemble des bits ont été décodés, le message global peut être décodé dans une étape E59 comme décrit précédemment en référence
à la figure 8.
Ce procédé d'insertion et de décodage d'un signal de marquage dans un ensemble de données représentatif d'une image peut être mis en oeuvre
dans un dispositif du type de celui représenté à la figure 10.
Ici, le dispositif 10 est un ordinateur.
L'ensemble des moyens de décomposition multi-objets et multi-
résolution, de détermination d'un signal de marquage, d'évaluation d'une capacité associée à chaque objet et de création d'un signal de marquage sont incorporés dans un micro-processeur 100, dans une mémoire morte 102 adaptée à mémoriser un programme pour insérer un signal de marquage dans un ensemble de données, et dans une mémoire vive 103 comportant des registres adaptés à mémoriser les variables modifiées lors de l'exécution de ce programme. Cette mémoire vive 103 peut par exemple comporter des registres adaptés à mémoriser l'indice de résolution r, l'indice d'objet o, la capacité
associée à cet objet Cor l'indice de lecture Io,r ainsi que les différentes sous-
parties de la décomposition multi-objets et multi-résolution mise en oeuvre sur l'image I. Alternativement, les moyens de choix d'une souspartie, les moyens d'acquisition de la capacité, les moyens d'extraction du sous-signal de marquage, les moyens d'identification d'une sous-partie de résolution inférieure, et les moyens d'ordonnancement de bits du dispositif du décodage conforme à l'invention sont également incorporés dans le micro-processeur 100, la mémoire
morte 102 et la mémoire vive 103.
Afin de permettre l'exécution du programme de décodage d'un signal de marquage, la mémoire vive peut comporter des registres adaptés notamment à mémoriser l'indice de résolution r ainsi qu'un espace mémoire M permettant de mémoriser les bits extraits avant l'ordonnancement de ces bits et
le décodage proprement dit du signal de marquage.
Bien entendu, cet ordinateur 10 peut comporter un écran 104 permettant de visualiser les données à marquer et de servir d'interface avec l'utilisateur qui pourra paramétrer le programme d'insertion ou de décodage, à l'aide par exemple du clavier 114 ou de tout autre moyen, par exemple une souris. L'ordinateur 10 est connecté à différents périphériques, par exemple une caméra numérique 107, qui, par le biais d'une carte graphique,
peut fournir une image numérique à marquer conformément à l'invention.
Bien entendu, d'autres périphériques pourraient être utilisés tel
qu'un scanner, ou tout autre moyen d'acquisition ou de stockage d'images.
Alternativement, I'ordinateur 10 peut être relié à un microphone 111. Les données numériques sont alors représentatives d'un signal audio, ce signal pouvant être décomposé sur plusieurs niveaux de résolution et en différents objets, chaque objet pouvant correspondre à une séquence audio
s'étendant entre deux instants de temps donné.
Les données fournies par le microphone 111 sont transférées à
l'ordinateur au moyen d'une carte entrée-sortie 106.
L'ordinateur 10 peut comporter en outre une interface de communication 112 reliée à un réseau 113 capable de transmettre des données
numériques à marquer.
Cet ordinateur 10 comporte également un moyen de stockage 108 tel que par exemple un disque dur.
Il comporte également un lecteur de disque 109.
Le disque lu 110 peut être une disquette, un CD-ROM ou un DVD-
ROM. Le disque 110 ou encore le disque dur 108 peuvent contenir des données à traiter conformément à l'invention ainsi que le ou les programmes mettant en oeuvre l'invention qui, une fois lus par le dispositif 10, seront stockés
dans le disque dur 108.
Selon une variante de l'invention, le programme permettant à l'ordinateur de mettre en oeuvre l'invention pourra également être stocké en
mémoire morte 102 (en anglais ROM ou Read Only Memory).
En seconde variante, le programme pourra être reçu pour être
stocké de façon identique par l'intermédiaire du réseau de communication 113.
L'unité centrale 100 exécute les instructions relatives à la mise en oeuvre de l'invention, instructions stockées dans la mémoire morte 102 ou dans
tout autre élément de stockage de l'ordinateur 10.
Lors de la mise sous tension, le programme d'insertion ou de décodage stocké dans une mémoire non volatile, par exemple la mémoire morte 102, est transféré dans la mémoire vive 103 (en anglais RAM ou Random Access Memory) qui contiendra alors le code exécutable de l'invention ainsi que des registres adaptés à mémoriser les variables nécessaires à la mise en oeuvre
de l'invention.
Le bus de communication 101 permet la communication entre les
différents éléments inclus dans le micro-ordinateur 10 ou reliés à lui.
La représentation du bus 101 n'est pas limitative et notamment I'unité centrale 100 est susceptible de communiquer des informations à tout élément du micro-ordinateur 10 directement ou par l'intermédiaire d'un autre
élément du micro-ordinateur.
De manière générale, un moyen de stockage d'information, lisible par un ordinateur ou par un micro-processeur, intégré ou non à cet ordinateur, et éventuellement amovible, est adapté à mémoriser un programme mettant en oeuvre le procédé d'insertion et/ou le procédé de décodage conforme à I'invention. Bien entendu, dans le contexte d'un réseau client/serveur, il est avantageux que le dispositif d'insertion conforme à l'invention soit incorporé dans un appareil de traitement de données adapté à transmettre un ensemble de données représentatives d'une image numérique, tel qu'un serveur
*d'informations.
Réciproquement, dans ce même contexte client/serveur, le dispositif de décodage est de préférence incorporé dans un appareil de données adapté à requérir au moins un sous-ensemble d'objets à une résolution donnée issue d'une décomposition d'un ensemble de données représentatives d'une
image numérique stockée sur le serveur.
Ainsi, le procédé d'insertion conforme à l'invention permet d'insérer un signal de marquage dans une représentation multi-objet et multirésolution d'une image, une fois pour toute, au moment de la création ou du stockage de
cette représentation.
Ensuite, lorsque des sous-parties de cette image sont requises, le décodage du signal de marquage peut être réalisé à partir de n'importe laquelle
des sous-parties de cette image.
Bien entendu, de nombreuses modifications peuvent être apportées aux exemples de réalisation décrits précédemment sans sortir du
cadre de l'invention.
En particulier, le procédé d'insertion décrit précédemment n'est pas
limité à une application dans un contexte client/serveur.
Il peut également être utilisé pour insérer un signal de marquage dans des images numériques pouvant être stockées dans une base de données, mémorisée par exemple sur un disque dur, et consultable localement sur un ordinateur.
Claims (18)
1. Procédé d'insertion d'un signal de marquage dans un ensemble de données représentatives de grandeurs physiques, comprenant une étape de décomposition (El) de l'ensemble de données en plusieurs sous-ensembles d'objets (o) et à plusieurs niveaux de résolution (r), caractérisé en ce qu'il comprend: - une étape de détermination (E7), pour chaque souspartie comprenant un sous-ensemble d'objets (O) à une résolution donnée (R), d'un sous-signal de marquage à insérer dans ladite sous-partie, déterminé en fonction dudit signal de marquage (W) et d'un sous-signal de marquage à insérer dans au moins une deuxième sous-partie comprenant ledit sous-ensemble
d'objets (O) à une résolution strictement inférieure.
2. Procédé d'insertion conforme à la revendication 1, caractérisé en ce que le sous-signal de marquage est constitué d'une portion dudit signal de marquage (W) distincte du sous-signal de marquage à insérer dans au moins une deuxième sous-partie comprenant ledit sous-ensemble d'objets (O) à une
résolution strictement inférieure.
3. Procédé d'insertion conforme à l'une des revendications 1 ou 2,
caractérisé en ce qu'il comporte en outre une étape d'évaluation (E6) de la capacité (Co,r) de chaque sous-partie, et en ce qu'à l'étape de détermination (E7), le sous-signal de marquage a une longueur égale à la capacité (CO,R) de
ladite sous-partie.
4. Procédé d'insertion conforme à l'une des revendications 1 à 3,
caractérisé en ce que l'étape de détermination pour une sous-partie comprenant un sous-ensemble d'objets (O) à une résolution donnée (R), d'un sous-signal de marquage de longueur P, comprend les étapes suivantes: recherche (E5, E7, E10) dans le signal de marquage du dernier bit lu (Io,R-1) lors d'une étape de détermination d'un sous- signal de marquage pour une deuxième sous-partie comprenant ledit sous- ensemble d'objets (O) à une résolution directement inférieure (R-1); et - lecture (E7, E8), dans un sens de lecture prédéterminé, des P
bits succédant au dernier bit lu dans le signal de marquage (W).
5. Procédé d'insertion conforme à l'une des revendications 1 à 4,
caractérisé en ce que le signal de marquage (W) comprend plusieurs séries de bits représentant respectivement une information du signal de marquage, les séries de bits étant ordonnées, suivant un sens de lecture prédéterminé du signal de marquage, par ordre d'importance décroissante desdites informations.
6. Procédé d'insertion conforme à l'une des revendications 1 à 5,
caractérisé en ce que l'étape de décomposition (El) en plusieurs sous-
ensembles d'objets (o) et à plusieurs niveaux de résolution (r) de l'ensemble de
données et l'étape de détermination (E7) sont mises en oeuvre simultanément.
7. Procédé de décodage d'un signal de marquage dans un ensemble de données représentatives de grandeurs physiques, caractérisé en ce qu'il comprend: - choix (E50) d'une sous-partie comprenant un sous-ensemble d'objets (O) à une résolution donnée (R); - acquisition (E52) de la capacité (CO,R) de ladite sous-partie; - extraction (E53, E54) du sous- signal de marquage inséré dans ladite sous-partie; - identification (E57) d'une deuxième sous-partie comprenant ledit sous-ensemble d'objets (O) à une résolution directement inférieure (R-1) si elle existe; et - réitération des étapes d'acquisition (E52), d'extraction (E53,
E54) et d'identification (E57) sur ladite deuxième sous-partie.
8. Procédé de décodage conforme à la revendication 7, caractérisé en qu'il comporte en outre une étape d'ordonnancement (E58) des bits des sous-signaux de marquage extraits pour chaque sous-partie dans un ordre de
résolution croissante desdites sous-parties.
9. Dispositif d'insertion d'un signal de marquage dans un ensemble de données représentatives de grandeurs physiques, comprenant des moyens de décomposition (100, 102, 103) en plusieurs sous-ensembles d'objets (o) et à plusieurs niveaux de résolution (r) de l'ensemble de données, caractérisé en qu'il
comprend des moyens de détermination (100, 102, 103), pour chaque sous-
partie comprenant un sous-ensemble d'objets (O) à une résolution donnée (R), d'un sous-signal de marquage à insérer dans ladite sous-partie, déterminé en fonction dudit signal de marquage (W) et d'un sous-signal de marquage à insérer dans au moins une deuxième sous-partie comprenant ledit sous-ensemble
d'objets (O) à une résolution strictement inférieure.
10. Dispositif d'insertion conforme à la revendication 9, caractérisé en ce qu'il comporte en outre des moyens d'évaluation (100, 102, 103) de la capacité (Co,r) de chaque sous-partie et en ce que les moyens de détermination (100, 102, 103) sont adaptés à déterminer un sous-signal de marquage de
longueur égale à la capacité (Co,r) de chaque sous-partie.
11. Dispositif d'insertion conforme à l'une des revendications 9 ou
10, caractérisé en ce que les moyens de détermination (100, 102, 103) comprennent, pour une sous-partie comprenant un sous-ensemble d'objets (O) à une résolution donnée (R): - des moyens de recherche (100, 102, 103) dans le signal de
marquage du dernier bit lu (Io,R-1) lors d'une étape de détermination d'un sous-
signal de marquage pour une deuxième sous-partie comprenant le sous-
ensemble d'objets (O) à une résolution directement inférieure (R-1); et des moyens de lecture (100, 102, 103), dans un sens de lecture prédéterminé, adaptés à lire les bits succédant au dernier bit lu dans le signal de
marquage (W).
12. Dispositif d'insertion conforme à l'une des revendications 9 à 11
caractérisé en ce qu'il comprend des moyens de création (100, 102, 103) d'un signal de marquage (W) comprenant plusieurs séries de bit représentant respectivement une information du signal de marquage, les séries de bit étant ordonnées suivant un sens de lecture prédéterminé du signal de marquage, par
ordre d'importance décroissante desdites informations.
13. Dispositif d'insertion conforme à l'une des revendications 9 à 12,
caractérisé en ce que les moyens de décomposition, les moyens de détermination et éventuellement les moyens d'évaluation et de création sont incorporés dans: - un microprocesseur (100); - une mémoire morte (102) adaptée à mémoriser un programme pour insérer un signal de marquage dans un ensemble de données; et - une mémoire vive (103) comportant des registres adaptés à
mémoriser les variables modifiées lors de l'exécution de ce programme.
14. Dispositif de décodage d'un signal de marquage d'un ensemble de données représentatives de grandeurs physiques, caractérisé en ce qu'il comprend: - des moyens de choix (100, 102, 103) d'une sous-partie comprenant un sous-ensemble d'objets (O) à une résolution donnée (R); des moyens d'acquisition (100, 102, 103) de la capacité (COR) de ladite sous-partie; - des moyens d'extraction (100, 102, 103) du sous-signal de marquage inséré dans ladite sous-partie; et - des moyens d'identification (100, 102, 103) d'une deuxième sous-partie comprenant ledit sous-ensemble d'objets (O) à une résolution
directement inférieure (R-1).
15. Dispositif de décodage conforme à la revendication 14, caractérisé en ce qu'il comprend en outre des moyens d'ordonnancement (100,
102, 103) des bits des sous-signaux de marquage extraits pour chaque sous-
partie adaptés à ordonner les bits dans un ordre de résolution croissante
desdites sous-parties.
16. Dispositif de décodage conforme à l'une des revendications 14
ou 15, caractérisé en ce que les moyens de choix, d'acquisition, d'extraction, d'identification, et éventuellement d'ordonnancement, sont incorporés dans: - un microprocesseur (100); - une mémoire morte (102) adaptée à mémoriser un programme de décodage d'un signal de marquage; et une mémoire vive (103) comportant des registres adaptés à
mémoriser les variables modifiées lors de l'exécution de ce programme.
17. Appareil de traitement de données adapté à transmettre un ensemble de données représentatives d'une image numérique, décomposé en plusieurs sous-ensembles d'objets (o) et à plusieurs niveaux de résolution (r), caractérisé en ce qu'il comprend un dispositif d'insertion conforme à l'une des
revendications 9 à 13.
18. Appareil de traitement de données adapté à requérir au moins un sousensemble d'objets (O) à une résolution donnée (R), issu d'une décomposition d'un ensemble de données représentatives d'une image numérique, caractérisé en ce qu'il comprend un dispositif de décodage conforme
à l'une des revendications 14 à 16.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0009778A FR2812496B1 (fr) | 2000-07-26 | 2000-07-26 | Procede d'insertion et de decodage d'un signal de marquage |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0009778A FR2812496B1 (fr) | 2000-07-26 | 2000-07-26 | Procede d'insertion et de decodage d'un signal de marquage |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2812496A1 true FR2812496A1 (fr) | 2002-02-01 |
FR2812496B1 FR2812496B1 (fr) | 2005-04-29 |
Family
ID=8852920
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR0009778A Expired - Fee Related FR2812496B1 (fr) | 2000-07-26 | 2000-07-26 | Procede d'insertion et de decodage d'un signal de marquage |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR2812496B1 (fr) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0932298A2 (fr) * | 1998-01-27 | 1999-07-28 | Canon Kabushiki Kaisha | Procédé de génération de filigrane électronique, système de distribution d'information électronique, dispositif d'enregistrement d'image et support d'enregistrement pour ceci |
-
2000
- 2000-07-26 FR FR0009778A patent/FR2812496B1/fr not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0932298A2 (fr) * | 1998-01-27 | 1999-07-28 | Canon Kabushiki Kaisha | Procédé de génération de filigrane électronique, système de distribution d'information électronique, dispositif d'enregistrement d'image et support d'enregistrement pour ceci |
Non-Patent Citations (2)
Title |
---|
BRISBANE E.A.: "REGION-BASED WATERMARKING FOR IMAGES", INFORMATION SECURITY. SECOND INTERNATIONAL WORKSHOP PROCEEDINGS, 6 November 1999 (1999-11-06) - 7 November 1999 (1999-11-07), BERLIN DE, pages 154 - 166, XP000978126 * |
NICHOLSON E.A.: "WATERMARKING IN THE MPEG-4 CONTEXT", 4TH EUROPEAN CONFERENCE .PROCEEDINGS MULTIMEDIA APPLICATIONS SERVICES AND TECHNIQUES, 26 May 1999 (1999-05-26) - 28 May 1999 (1999-05-28), BERLIN DE, pages 472 - 492, XP000978125 * |
Also Published As
Publication number | Publication date |
---|---|
FR2812496B1 (fr) | 2005-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
FR2816153A1 (fr) | Procede de controle prealable de la detectabilite d'un signal de marquage | |
FR2785426A1 (fr) | Procede et dispositif d'insertion et de detection d'une marque dans des donnees numeriques | |
FR2826823A1 (fr) | Procede et dispositif de traitement d'un signal numerique code | |
FR2803710A1 (fr) | Procede et dispositif d'insertion d'un signal de marquage dans une image | |
FR2816154A1 (fr) | Insertion d'information supplementaire dans des donnees numeriques | |
FR2817440A1 (fr) | Insertion de messages dans des donnees numeriques | |
FR2842983A1 (fr) | Transcodage de donnees | |
FR2812502A1 (fr) | Insertion et extraction de message dans des donnees numeriques | |
FR2787604A1 (fr) | Procede d'insertion d'une marque secrete et d'authentification d'un signal numerique | |
FR3059801A1 (fr) | Procede d’enregistrement d’un contenu multimedia, procede de detection d’une marque au sein d’un contenu multimedia, dispositifs et programme d’ordinateurs correspondants | |
FR2792150A1 (fr) | Procedes et dispositis de codage et de decodage de signaux numeriques, et systemes les mettant en oeuvre | |
FR2825224A1 (fr) | Procede et dispositif de compression et ou d'indexation d'images numeriques | |
FR2782861A1 (fr) | Transcodage geometrique d'un signal numerique | |
FR2901037A1 (fr) | Procede et dispositif de generation de motifs structurels de reference aptes a representer des donnees hierarchisees | |
FR2812496A1 (fr) | Procede d'insertion et de decodage d'un signal de marquage | |
FR2821947A1 (fr) | Procede et dispositif de validation de parametres definissant une image | |
FR2792153A1 (fr) | Procede de determination d'une partition pour inserer un signal de marquage et procede de decodage associe | |
FR2829858A1 (fr) | Procede et dispositif de traitement d'un signal numerique | |
FR2782224A1 (fr) | Procede et dispositif d'insertion et de decodage d'une marque dans des donnees numeriques | |
FR2792152A1 (fr) | Procede et dispositif d'insertion d'un signal de marquage dans une image | |
FR2848703A1 (fr) | Insertion et extraction d'un message dans une image | |
FR2795274A1 (fr) | Codage et decodage de signal numerique, avec decomposition et sous bandes de frequence et segmentation | |
FR2817697A1 (fr) | Procede et dispositif de traitement d'un ensemble de donnees representatives de grandeurs physiques | |
FR2846836A1 (fr) | Codage de donnees avec modele d'amplitude et parcours parmi les donnees et decodage correspondant | |
FR2832875A1 (fr) | Codage et decodage de signal numerique |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ST | Notification of lapse |
Effective date: 20140331 |