Institut de la Francophonie
pour l’Informatique
Université Claude Bernard
Lyon 1
MEMOIRE DE STAGE DE FIN D’ETUDES
MASTER EN INFORMATIQUE
SPECIALITE SYSTEMES ET RESEAUX
TATOUAGE AVEUGLE ET ROBUSTE DE
MAILLAGES 3D DANS LE DOMAINE SPECTRAL
Stagiaire
: HO Thi Phuong
Responsables de stage : Florence DENIS
Guillaume LAVOUE
Kai WANG
Ce stage a été réalisé au sein de l’équipe M2disco
du laboratoire d'informatique en image et systèmes d'information
Lyon, Mars – Novembre, 2009
Table de matières
1 Introduction ................................................................................................. 10
1.1
Problématique ............................................................................................................................. 10
1.2
Motivation ................................................................................................................................... 11
1.3
Objectifs ....................................................................................................................................... 11
1.4
Contribution ................................................................................................................................. 11
1.5
Environnement de stage .............................................................................................................. 11
1.6
Plan du rapport ............................................................................................................................ 11
2 Etat de l’art.................................................................................................... 13
2.1
Tatouage ...................................................................................................................................... 13
2.1.1 Principe et applications .................................................................................................................. 13
2.1.2 Propriété du tatouage .................................................................................................................... 14
2.2
Maillages ...................................................................................................................................... 16
2.2.1 Domaine spectral ........................................................................................................................... 17
2.2.2 Métriques de distorsion ................................................................................................................. 19
2.3
Traitement des maillages – les attaques sur le tatouage .............................................................. 20
2.3.1 Attaques géométriques ................................................................................................................. 20
2.3.2 Attaques sur la connectivité : ........................................................................................................ 21
2.3.3 Autres attaques .............................................................................................................................. 22
2.4
Techniques de tatouage robuste de maillages 3D ........................................................................ 22
2.4.1 Difficultés ....................................................................................................................................... 22
2.4.2 Tatouage robuste de maillages ...................................................................................................... 23
3 Harmoniques variétés .............................................................................. 32
3.1
Harmoniques variétés et algorithme bande par bande ................................................................ 32
3.1.1 Harmoniques variétés .................................................................................................................... 32
3.1.2 Calcul bande par bande ................................................................................................................. 34
3.2
Amélioration de l’implémentation de l’algorithme bande par bande ........................................... 35
3.2.1 Problème avec l’implémentation originale et amélioration .......................................................... 35
3.3
Exactitude des valeurs et vecteurs propres .................................................................................. 37
3.3.1 Comparaison entre le résultat de MEPP et celui de Graphite ....................................................... 37
3.3.2 Comparaison entre le résultat de MEPP et celui de Matlab .......................................................... 38
3.3.3 Comparaison entre les résultats de MEPP ..................................................................................... 39
2
3.3.4
Conclusion des comparaisons ........................................................................................................ 39
3.4
Stabilité des valeurs et vecteurs propres ...................................................................................... 39
3.4.1 Cohérence entre une bande étroite et une bande large ............................................................... 39
3.4.2 Cohérence entre une bande entière et des bandes successives ................................................... 40
3.5
Robustesse de la transformée ...................................................................................................... 41
3.5.1 Comparaison entre les matrices de discrétisation ......................................................................... 41
3.5.2 Robustesse ..................................................................................................................................... 42
4 Tatouage de maillages 3D dans le domaine spectral ..................... 50
4.1
Tatouage utilisant la technique d’étalement de spectre - généralités .......................................... 50
4.1.1 Principe de tatouage sur des données audiovisuelles ................................................................... 50
4.1.2 Avantage et inconvénients ............................................................................................................ 52
4.2
Tatouage utilisant l’étalement de spectre sur des maillages 3D ................................................... 52
4.2.1 Difficultés et solutions ................................................................................................................... 52
4.2.2 Application de différentes techniques de modulation .................................................................. 55
4.2.3 Identification du seuil de détection du tatouage........................................................................... 56
4.3
Méthode de Piva et col. [35] sur des maillages 3D ....................................................................... 58
4.3.1 Adaptation de méthode de Piva et col. [35] sur des maillages 3D ................................................ 58
4.3.2 Temps de calcul.............................................................................................................................. 61
4.3.3 Analyse de l’imperceptibilité ......................................................................................................... 62
4.3.4 Efficacité de l’algorithme ............................................................................................................... 64
4.3.5 Analyse de la robustesse ................................................................................................................ 64
5 Conclusion..................................................................................................... 66
5.1
Résumé des contributions ............................................................................................................ 66
5.2
Perspectives ................................................................................................................................. 66
6 Référence ...................................................................................................... 68
3
Remerciements
Je tiens particulièrement à remercier professeurs Florence DENIS, Guillaume LAVOUE mes
responsables de stage, pour l’encadrement, l’aide, les conseils précieux pendant 9 mois de mon
stage.
Je tiens également à remercier Kai WANG, un thésard dans l’équipe M2disco qui a travaillé avec
moi pendant ce stage, et m’a beaucoup aidé non seulement dans la théorie mais aussi dans le
développement grâce à ses explications, ses conseils utiles et les documents à consulter.
J’adresse mes sincères remerciements à tous les professeurs de l’Institut de la Francophonie pour
l’Informatique (IFI) pour m’avoir enseigné et me donnée les cours intéressants pendant mes
études au niveau master. Je profite de cette occasion pour dire remercier à tous les personnels de
l’IFI qui m’ont apporté de l’aide.
Finalement, je voudrais remercier ma famille, mes parents et mes amis qui sont toujours près de
moi et m’ont apporté de courage dans les moments difficiles.
4
Résumé
Les progrès dans les technologies d’acquisition et de modélisation 3D permettent de produire
facilement des objets 3D. La représentation la plus utilisée pour modéliser un objet 3D est le
maillage 3D, c’est-à-dire un ensemble de polygones permettant de représenter des portions d’une
surface 3D. Il y a de plus en plus d’outils qui permettent de manipuler ces données. On a donc
besoin d’une technique pour protéger le droit d’auteur de ces maillages 3D. Le tatouage est
apparu comme une solution à cette demande.
La transformée en Harmoniques variétés est récemment apparue comme un outil efficace
d’analyse spectrale des maillages. Elle commence à être utilisée dans quelques algorithmes de
tatouage.
L’objectif de ce travail est double. Il s’agit d’étudier, d’implémenter et d’évaluer la robustesse des
Harmoniques variétés. D’autre part, il vise à proposer un algorithme de tatouage aveugle et
robuste de maillages 3D dans le domaine spectral en utilisant la technique d’étalement de spectre
sur des amplitudes spectrales obtenues par ce type de décomposition. La robustesse des
Harmoniques variétés a été démontrée mais celle de notre algorithme devra être améliorée dans
le futur.
5
Abstract
3D scanning and modeling technologies now allow to produce easily representations of 3D
objects that use different structures. One of these structures is the 3D mesh that is a set of
polygons which represent an appropriate approximation of a 3D surface. There are more and
more tools for manipulating these data. We therefore need a technique to protect the copyright
of 3D meshes. Watermarking appears as a good candidate to solve this emerging problem.
Manifold Harmonics transform has been recently introduced as an efficient spectral analysis tool
of 3D meshes. It begins to be used in some watermarking algorithms.
This work has two objectives. The first objective is to study and implement the Manifold
Harmonics transform, and evaluate its robustness. The second is to propose a blind and robust
mesh watermarking algorithm in the spectral domain by applying the spread spectrum technique
on the Manifold Harmonics spectral amplitudes. The robustness of the Manifold Harmonics
transform has been demonstrated but the robustness of our watermarking algorithm has to be
improved in the future.
6
Liste de figures
Figure 1 : Exemple d’un maillage (extrait de [1]). ...................................................................................... 10
Figure 2 : Modèle général du système de tatouage (extrait de [4]). .......................................................... 13
Figure 3 : Compromis entre trois propriétés importantes du tatouage ..................................................... 14
Figure 4 : Illustration des deux systèmes de décodeur du tatouage (extraite de [6]). ............................... 14
Figure 5 : Illustration des tatouages aveugle et non aveugle. .................................................................... 16
Figure 6 : Exemple illustrant la valence d’un sommet et le degré d’une facette (extrait de [15]) .............. 17
Figure 7 : Illustration de l’analyse en ondelettes (extrait de [15]). ............................................................ 17
Figure 8 : Angles αij et βij opposés à l’arête (vi,vj). ..................................................................................... 19
Figure 9 : Exemple de quelques attaques sur la géométrie : (a) objet original, (b) après la transformation
de similarité, (c) après l’ajout de bruit, (d) après le lissage, (e) après la quantification. .................... 21
Figure 10 : Exemple de la déformation locale basant sur l’esquisse (a) et celle sur l’articulation (b) ......... 21
Figure 11 : L’objet original et des objets obtenus après quelques attaques (coupe - résultat de
Meshbenchmark [13] d’autres attaques - extrait de [1]). ................................................................. 22
Figure 12 : Illustration de la méthode de Cho et col. [17]. ......................................................................... 24
Figure 13 : Les sous maillages générés grâce aux méthodes. (a) de Ohbuchi et col. [21], (b) Cayre et col.
[22], (c) Alface et Macq [27], (d) Cotting et col. [29] ......................................................................... 25
Figure 14 : Etapes du tatouage en divisant l’objet en plusieurs patchs (extraite de [21]) .......................... 26
Figure 15 : Insérer bit 0 dans (xi, yi, zi) dans la méthode de Cayre et col. [22] (extraite de [22]) ............... 27
Figure 16 : Choix des amplitudes spectrales de Wang et col. [26] ............................................................. 30
Figure 17 : Représentation des bases de la transformée en Harmoniques variétés (extrait de [10]). ........ 33
Figure 18 : Géométries reconstruites à partir d’une surface avec le nombre différent m des coefficients
Harmoniques variétés (extrait de [9]). .............................................................................................. 33
Figure 19 : Illustration de l’algorithme bande par bande. ......................................................................... 34
Figure 20 : Illustration des deux problèmes de l’implémentation : la répétition et la perte des valeurs
propres. ............................................................................................................................................ 35
Figure 21 : Illustration du changement de l’implémentation..................................................................... 36
Figure 22 : Objet Bunny original et objet Bunny bruité avec l’intensité 0.005. .......................................... 43
Figure 23 : Corrélation entre les amplitudes spectrales de l’objet original et celles de l’objet attaqué par
l’ajout de bruit intensité k (k ∈ {0.0005, 0.001, 0.003, 0.005}). ......................................................... 43
Figure 24 : Objet Bunny original et objet Bunny simplifié avec un taux de 97,5%. .................................... 43
Figure 25 : Corrélation entre les amplitudes spectrales de l’objet original et celles de l’objet simplifié. ... 44
Figure 26 : Objet Bunny original et objet Bunny lissé en 50 itérations en fixant le taux de déformation à
0,03. ................................................................................................................................................. 44
Figure 27 : Corrélation entre les amplitudes spectrales de l’objet original et celles de l’objet lissé. .......... 44
Figure 28 : Objet Bunny original et objet Bunny attaqué par la transformation de similarité. .................. 45
Figure 29 : Corrélation entre les amplitudes spectrales de l’objet original et celles de l’objet attaqué par la
transformation de similarité. ............................................................................................................ 45
Figure 30 : Objet Bunny original et trois objets Bunny coupés avec un taux de 50%. ................................ 45
Figure 31 : Corrélation entre les amplitudes spectrales de l’objet original et celles de l’objet coupé. ....... 46
Figure 32 : Corrélation entre n amplitudes spectrales de l’objet Bunny d’origine et celles de l’objet
attaqué par l’ajout de bruit intensité k (n < 3000, k ∈ {0.0005, 0.001, 0.003, 0.005}). ...................... 47
Figure 33 : Corrélation entre les amplitudes spectrales de l’objet Bunny d’origine et celles de l’objet
simplifié............................................................................................................................................ 47
Figure 34 : Corrélation entre les amplitudes spectrales de l’objet Bunny d’origine et celles de l’objet lissé.
......................................................................................................................................................... 48
7
Figure 35 : Corrélation entre les amplitudes spectrales de l’objet Bunny d’origine et celles de l’objet
attaqué par la transformation de similarité. ..................................................................................... 48
Figure 36 : Corrélation entre les amplitudes spectrales de l’objet Bunny d’origine et celles de l’objet
coupé. .............................................................................................................................................. 49
Figure 37 : Tatouage aveugle des données audiovisuelles. ....................................................................... 50
Figure 38 : Première idée de l’insertion du tatouage basé sur la corrélation pour les maillages 3D. ......... 53
Figure 39 : Détection du tatouage aveugle basé sur la corrélation pour les maillages 3D.......................... 53
Figure 40 : Insertion itérative du tatouage basée sur la corrélation pour les maillages 3D. ....................... 54
Figure 41 : Taux de modification des amplitudes spectrales k=a'[i]/a[i] causée par la transformation de
similarité sur l'objet Bunny (i=1.200). ............................................................................................... 55
Figure 42 : Corrélation entre une image tatouée et de différents tatouages aléatoires (extrait de [69]). .. 56
Figure 43 : Corrélation entre l’objet Bunny tatoué par notre algorithme et simplifié avec le taux de 10% et
les 30.000 tatouages différents (la seule corrélation avec le tatouage exact numéro 42 est supérieure
à 0,104). ........................................................................................................................................... 56
Figure 44 : Corrélation entre l’objet Bunny tatoué par notre algorithme et ajouté du bruit avec l’intensité
de 0,40% et les 30.000 tatouages différents (la seule corrélation avec le tatouage numéro 26550 est
supérieure à 0,1). ............................................................................................................................. 57
Figure 45 : Modification de la corrélation entre l’objet et le tatouage à chaque itération de modulation de
notre méthode sur l’objet Bunny...................................................................................................... 60
Figure 46 : Corrélation entre l’objet Bunny tatoué et les 30000 aléatoires tatouages (tatouage exact
numéro 42). ...................................................................................................................................... 64
Figure 47 : Corrélation entre l’objet Rabbit tatoué et les 30000 aléatoires tatouages (tatouage exact
numéro 42). ...................................................................................................................................... 64
8
Listes de tableaux
Tableau 1 : Comparaison des propriétés de quelques algorithmes (en bleu : extrait de [15], en blanc : des
comparaisons ajoutées).................................................................................................................... 31
Tableau 2 : Comparaison de la robustesse de quelques algorithmes (en bleu : extrait de [15], en blanc :
des comparaisons ajoutées) ............................................................................................................. 31
Tableau 3 : Algorithme bande par bande d’origine ................................................................................... 35
Tableau 4 : La répétition de valeur propre 332.8754 dans le résultat obtenu par l’implémentation
originale (une bande contient 100 valeurs propres sous MEPP). ...................................................... 35
Tableau 5 : Perte de valeur propre -1259.0661 dans le calcul sous MEPP ................................................. 36
Tableau 6 : Implémentation améliorée de l’algorithme bande par bande................................................. 37
Tableau 7 : Comparaison entre des valeurs propres calculées sous Graphite et MEPP (N.A. signifie nonapplicable) ........................................................................................................................................ 38
Tableau 8 : Comparaison entre des vecteurs propres calculés sous Graphite et MEPP (N.A. signifie nonapplicable). ....................................................................................................................................... 38
Tableau 9: Comparaison entre le résultat de MEPP et celui de Matlab ..................................................... 39
Tableau 10 : Comparaison entre les vecteurs propres obtenus entre le calcul des bandes étroites et celui
de la bande large .............................................................................................................................. 40
Tableau 11 : Comparaison entre les vecteurs propres obtenus entre le calcul des bandes étroites et celui
de la bande large .............................................................................................................................. 40
Tableau 12 : Les RMS des amplitudes spectrales obtenues dans tests sur l’objet Bunny avec le solveur
Taucs. ............................................................................................................................................... 42
Tableau 13 : Corrélation entre des objets originaux et 60000 tatouages aléatoires. ................................. 61
Tableau 14 : Algorithme d’insertion .......................................................................................................... 61
Tableau 15 : Temps de calcul avec l’objet Rabbit (70658 sommets). ......................................................... 62
Tableau 16 : La distance MRMS entre l’objet tatoué et l’objet original. .................................................... 62
Tableau 17 : L’objet Horse tatoué. ............................................................................................................ 62
Tableau 18 : Les objets tatoué : Rabbit, Bunny et Venus. .......................................................................... 63
Tableau 19 : Corrélation entre l’objet tatoué et attaqué et le tatouage ((*) signifie que l’on réussit à
détecter le tatouage dans l’objet attaqué). ...................................................................................... 65
Tableau 20 : Taux de bits détectés du tatouage de l’algorithme de Wang et col. [26] ............................... 65
9
1 Introduction
Le développement de l’Internet rend plus facile la transmission de données visuelles. On a donc
besoin de protéger les droits de propriétés de ces contenus. Le tatouage est apparu pour
répondre à cette demande. Grâce au tatouage, on peut insérer une marque (un tatouage) dans le
contenu pour l’identifier ou en prouver la propriété. Cette information doit être imperceptible et
survivre à différentes attaques. Idéalement, le tatouage est aveugle, c’est-à-dire que l’on peut
l’extraire ou détecter la marque sans besoin du document original.
De nombreuses recherches ont déjà été réalisées sur le tatouage des images naturelles et du son
mais le tatouage de maillages 3D est un domaine récent. Un maillage est un ensemble de
polygones servant à donner une approximation linéaire par morceau de la surface d’un objet 3D
réel. Un maillage contient deux informations : la géométrie et la connectivité. La géométrie est
constituée des coordonnées des sommets. La connectivité traduit les relations d’adjacence entre
ces sommets.
Figure 1 : Exemple d’un maillage (extrait de [1]).
1.1 Problématique
Ce stage a pour objectif de répondre à cette question « Comment tatouer des maillages 3D en se
basant sur des coefficients spectraux ? » Il y a trois contraintes pratiques concernant la méthode
de tatouage :
Aveugle
Invisibilité
Robustesse
Nous avons choisi la décomposition en Harmoniques variétés pour calculer les coefficients
spectraux du maillage. La robustesse de ce type d’analyse a été vérifiée [12] sur des maillages de
petite taille avec des nombres de coefficients spectraux limités à 40. Mais on ne sait pas si les
coefficients spectraux dans une bande beaucoup plus large de l’ordre de 1000 à 3000 sont
stables. C’est une autre question à laquelle on doit répondre dans le cadre de ce stage.
10
Pour répondre à ces questions, il faut acquérir des connaissances concernant :
Connaissances fondamentales sur les maillages, sur les techniques de tatouage
Méthode de transformation pour calculer les coefficients spectraux
Tatouage dans le domaine spectral et technique d’étalement de spectre
1.2 Motivation
Les techniques de tatouage dans le domaine transformé ont généralement l’avantage d’éviter les
problèmes de désynchronisation car certaines caractéristiques du signal dans ce domaine sont
invariantes à rotation ou translation de celui-ci. Dans le cas des maillages 3D, pour construire une
méthode robuste, nous avons choisi, parmi plusieurs types d’analyses spectrales, la transformée
en Harmoniques variétés en raison de sa robustesse [12] et de la robustesse de l’algorithme de
tatouage de Liu et col. [25] utilisant cette analyse par rapport à ceux utilisant l’analyse
Laplacienne combinatoire [21], [31].
La technique d’étalement de spectre est une méthode très robuste pour le tatouage des images à
2 dimensions. De plus, son imperceptibilité est bonne car le tatouage est distribué sur une gamme
spectrale très large. Par conséquent, il nous a semblé intéressant d’étudier cette méthode pour la
modulation en espérant que l’on pourra obtenir les mêmes performances avec les maillages 3D.
1.3 Objectifs
Ce stage a pour but d’élaborer une méthode de tatouage aveugle et robuste basée sur la
transformée en Harmoniques variétés. Un autre objectif de ce stage est de réaliser au préalable
une analyse de la robustesse des coefficients spectraux calculés par l’analyse en Harmoniques
variétés.
1.4 Contribution
Du point de vue théorique, les contributions de ce stage sont une analyse de la robustesse de la
transformée en Harmoniques variétés et une méthode de tatouage aveugle et robuste utilisant la
technique d’étalement de spectre sur des maillages 3D.
La transformée en Harmoniques variétés est déjà implémentée sous Graphite, un projet de
l’équipe ALICE ( ). Au laboratoire d'informatique en
image et systèmes d'information (LIRIS), l’équipe M2Disco est en train de développer MEPP
(Mesh Processing Platform), un outil de traitement de maillages 3D. Une première partie du stage
a consisté à transférer l’implémentation des Harmoniques variétés de Graphite à MEPP. Nous
avons aussi amélioré cette implémentation et ajouté un module de tatouage à MEPP.
1.5 Environnement de stage
Dans le cadre d’un programme d’échange de recherche entre l’institut de la francophonie pour
l’informatique et l’université Claude Bernard Lyon 1, ce stage a été réalisé dans le laboratoire
LIRIS au sein de l’équipe M2disco et sous la direction de Mme Florence Denis, M. Guillaume
Lavoué et M. Kai Wang.
1.6 Plan du rapport
Le présent document est organisé comme suit :
11
Le chapitre 2 présente les connaissances fondamentales concernant le tatouage est les maillages
3D nécessaires à la bonne compréhension des chapitres suivants. Ce chapitre aborde aussi les
métriques de distorsion, le tatouage des maillages 3D et les quelques attaques auxquelles le
tatouage robuste doit survivre.
Le chapitre 3 décrit l’amélioration de l’implémentation de l’analyse en Harmoniques variété sous
MEPP ainsi que l’analyse de son exactitude et de sa robustesse.
Le chapitre 4 présente la méthode de tatouage que nous avons développée utilisant la technique
d’étalement de spectre. Dans ce chapitre, on analyse aussi la robustesse et l’exactitude de ces
méthodes.
12
2 Etat de l’art
2.1 Tatouage
2.1.1 Principe et applications
Selon Cox et col. [5], le principe du tatouage est de modifier imperceptiblement un contenu pour
insérer une information concernant le document. Le contenu original est appelé le contenu hôte.
L’objectif du tatouage est donc de permettre l’accès au contenu hôte, qui pourra être authentifié
ou protégé grâce au message inséré.
Contenu hôte
Insertion du tatouage
Contenu tatoué
Extraction du
tatouage
Tatouage extrait
Tatouage
Figure 2 : Modèle général du système de tatouage (extrait de [4]).
Le tatouage peut être appliqué dans différents domaines [4], [5] comme la surveillance de
diffusion, la protection de copyright, l’authentification de contenu ...
Surveillance de diffusion
Dans le domaine de la radiodiffusion ou de la télédiffusion, l’annonceur paie une certaine somme
pour la diffusion de sa publicité pendant un certain temps. Cela peut être trente minutes, une
heure voire deux heures par jour. Et l’annonceur doit vérifier si le temps payé est bien respecté.
Il existe deux systèmes de surveillance : passif et actif. La surveillance passive essaie de
reconnaître le contenu diffusé tandis que la surveillance active se base sur l’information diffusée
avec le contenu. Le tatouage est une des solutions pour la surveillance active : il est implémenté
dans nombreuses entreprises.
Protection de copyright
En général, un tatouage peut être inséré dans un contenu hôte pour démontrer le droit du
propriétaire du contenu. Pour prouver la propriété du document, ce tatouage devra être robuste
et sûr, par exemple si deux personnes insèrent successivement leurs tatouages dans une même
image, on devra pouvoir trouver le vrai propriétaire.
Authentification de contenu
Pour authentifier le contenu, on peut utiliser la signature digitale et le tatouage. L’inconvénient de
la signature digitale est d’être stockée dans les métadonnées. Elle est donc facilement perdue
dans l’usage normal. Etant inséré directement dans le contenu, le tatouage peut éviter cet
13
inconvénient. Le message d’authentification doit être éliminé quand le contenu est un peu
modifié. Autrement dit, le tatouage doit être fragile.
Le tatouage peut être appliqué sur plusieurs types de données audiovisuelles : signaux audio,
signaux vidéo, images naturelles, images ou objets synthétiques de 2 ou 3 dimensions. Ce dernier
type inclut les maillages 3D, support dans le cadre de ce stage.
2.1.2
Propriété du tatouage
La capacité
La robustesse
L’imperceptibilité
Figure 3 : Compromis entre trois propriétés importantes du tatouage
Capacité du tatouage
La capacité [6] est le nombre de bits qui pourront être insérés dans un contenu hôte. Il s’agit
d’une propriété importante du tatouage.
On parle de tatouage « zéro bit », lorsque la capacité est équivalente à 0. Dans ce cas, on parle de
tatouage détectable car on va seulement détecter la présence d’une marque dans le document.
Dans les autres cas, on parle de tatouage lisible, c'est-à-dire que la marque peut être extraite.
Contenu tatoué
Détecteur
Clé K
Oui / non
Tatouage
(a) Tatouage détectable : le décodeur vérifie si le contenu est tatoué
Contenu tatoué
Décodeur
Tatouage {bi}
Clé K
(b) Tatouage lisible : le décodeur extrait le tatouage multi-bits {bi}, i = 1..N
Figure 4 : Illustration des deux systèmes de décodeur du tatouage (extraite de [6]).
Insertions multiples
Dans quelques applications, on a besoin d’insérer plusieurs tatouages dans un même signal hôte.
Un exemple de ces applications est le système de protection des droits d’auteur et du contrôle de
14
copie. Le contenu doit contenir deux tatouages : l’un avec l’identité de l’auteur et l’autre
indiquant le nom du client. D’une part, il faut que l’insertion de plusieurs tatouages n’influence
pas la qualité du signal hôte. D’autre part, la présence des tatouages suivants ne doit pas affecter
l’extraction ou la détection des tatouages précédemment insérés.
Robustesse
La robustesse [6] est l’aptitude du message caché à survivre à des manipulations non
malveillantes sur le contenu tatoué. Les manipulations non malveillantes sont des traitements
ordinaires qui ne visent pas à enlever le tatouage. Elles incluent de nombreuses opérations
comme l’ajout de bruit, la rotation, la compression …
Tatouage sécurisé
Dans le cas des manipulations malveillantes, les attaqueurs peuvent connaître l’algorithme
d’insertion. Ils peuvent également avoir accès à plusieurs versions tatouées d’un même document
ou à plusieurs documents tatoués avec la même marque. Ils essaient alors d’éliminer le tatouage
par un traitement adapté. Un tatouage sécurisé doit donc rester après des manipulations à la fois
malveillantes et non malveillantes du document. La perte du message caché est acceptée
seulement dans le cas où la qualité du contenu attaqué est trop dégradée.
En général, il n’est pas facile de concevoir un algorithme assurant en même temps une capacité
importante, une bonne robustesse aux attaques, voire une bonne sécurité tout en restant
imperceptible.
Tatouage semi-fragile
Le tatouage est semi-fragile s’il survit à un nombre limité des manipulations bien définies.
Tatouage fragile
Le tatouage est fragile si le message caché est perdu ou irrémédiable changé quand le contenu
tatoué est modifié. Ce type du tatouage s’applique dans l’authentification de données.
Aveugle et non aveugle
Un algorithme de tatouage est dit aveugle si on n’a pas besoin du contenu original pour détecter
ou extraire le message inséré. Dans le cas contraire, il est non-aveugle. En général, les algorithmes
aveugles sont moins robustes que les algorithmes non aveugles car le contenu inconnu doit être
considéré comme un bruit ordinaire. En particulier, la présence du contenu original du côté de
l’extraction peut considérablement faciliter la synchronisation du tatouage, ainsi augmenter la
robustesse du tatouage.
15
Décodeur
Contenu tatoué
Tatouage {bi}
Clé K
(a) Le système de l’extraction de tatouage aveugle
Contenu original
Décodeur
Contenu tatoué
Tatouage {bi}
Clé K
(b) Le système de l’extraction de tatouage non aveugle
Figure 5 : Illustration des tatouages aveugle et non aveugle.
2.2 Maillages
La technologie des scanners 3D [1], [16] produit facilement des représentations des objets 3D qui
utilisent différentes structures de données. L’une de ces structures est le maillage 3D, c’est-à-dire
un ensemble de polygones permettant de représenter des portions d’une surface 3D.
Les maillages sont définis par trois éléments combinatoires ou primitives géométriques : des
sommets, des facettes et des arêtes. La connectivité est la relation d’adjacence entre les
sommets. La géométrie est caractérisée par les coordonnées des sommets. Un maillage de L
sommets et de N arêtes peut être alors considéré comme un signal S = { ܸ, E} :
ܸ ⊂ Rଷ : ܸ ൌ ሼݒ ൌ ሺݔ , ݕ , ݖ ሻ, i ൌ 1. . Lሽ, ሺݔ , ݕ , ݖ ሻ ݁݊݊݀ݎܿ ݏ݈݁ ݐݏé݁ݒ ݐ݁݉݉ݏ ݑ݀ ݏ
ܧൌ ቄ݁ ൌ ቀଵ , ଶ ቁ , ݆ ൌ 1. . ܰ, 1 ଵ ܮ, 1 ଶ ܮ, ଵ ് ଶ ቅ
ሺሻ
ሺሻ
ሺሻ
ሺሻ
ሺሻ
ሺሻ
Codant des coordonnées des sommets, ܸ représente la géométrie. Etant un ensemble des arêtes,
ܧexprime la connectivité. La connectivité peut être aussi modélisée par une liste de ܯfacettes :
ܨൌ ቄ݂ ൌ ቀଵ , ଶ , . . , ቁ , ݆ ൌ 1. . ܯቅ
ሺሻ
ሺሻ
ሺሻ
Le voisinage d’un anneau ou le 1-voisinage (en anglais one-ring neighbors) d’un sommet ݒ est
l’ensemble des sommets qui sont directement connectés à ݒ par une arête.
ሼݒ : ݒ ് ݒ , ݒ ܸ א, ሺݒ , ݒ ሻ ܧ אሽ
La valence d’un sommet est le nombre de ses voisins d’un anneau. Le degré d’une facette est le
nombre des arêtes la composant.
16
Figure 6 : Exemple illustrant la valence d’un sommet et le degré d’une facette (extrait de [15])
2.2.1 Domaine spectral
Analyse multi-résolution
L’analyse multi-résolution permet de représenter des objets de façon hiérarchique avec différents
niveaux d’approximation et de détails [30].
Lounsbery et col. [8] ont introduit la transformée en ondelettes sur des maillages. Quatre
triangles sont groupés en un seul triangle, en conservant trois sommets parmi les six initiaux dans
le niveau de résolution plus grossier. Des vecteurs de coefficients d’ondelettes sont créés reliant
chacun le point milieu des deux sommets survivants et le sommet supprimé correspondant.
Figure 7 : Illustration de l’analyse en ondelettes (extrait de [15]).
17
Analyse spectrale
Karni et Gotsman [7] ont introduit un outil d’analyse spectrale Laplacienne de maillages 3D qui
consiste à décomposer le maillage sur une base de fonctions dépendant de la connectivité du
maillage. Pour un maillage comportant L sommets, il faut construire la matrice Laplacienne D de
dimension L x L en basant sur la connectivité. Karni et Gotsman [7] ont proposé la matrice
Laplacienne combinatoire D :
1
ܦ ൌ ൝െሾ݈݁ܿ݊݁ܽݒሺݐ݁݉݉ݏ ሻሿିଵ
0
݅ ݅ݏൌ ݆ ݈݁݁ܿ݊݁ܽݒ ݐሺ݅ ݐ݁݉݉ݏሻ ് 0
ݏݐ݆݊݁ܿܽ݀ܽ ݐ݊ݏ ݆ ݐ݁ ݅ ݏݐ݁݉݉ݏ ݏ݈݁ ݅ݏ
݀ܽ݊݀ ݏᇱ ܽݏܽܿ ݏ݁ݎݐݑ
Puis, il faut calculer les valeurs propres et les vecteurs propres de D:
ݑܦൌ λݑ
Ensuite, grâce à la matrice E constituée par les vecteurs propres de la matrice D, les vecteurs
spectraux sont calculés respectivement comme la projection du vecteur de coordonnées
ݔൌ ሺݔଵ , ݔଶ , … , ݔ ሻ (idem pour des vecteurs ݕൌ ሺݕଵ , ݕଶ , … , ݕ ሻ et ݖൌ ሺݖଵ , ݖଶ , … , ݖ ሻ)
ݔ ൌ ݔܧ
Enfin, les amplitudes spectrales sont calculées comme :
ܿ ൌ ටݔ ଶ ݕ ଶ ̃ݖ ଶ
Après Karni et Gotsman [7], plusieurs variantes ont été proposées pour la décomposition
spectrale, par exemple la matrice Kirchhoff [11].
݈݁ܿ݊݁ܽݒሺݐ݁݉݉ݏ ሻ
ܭ ൌ ൝
െ1
0
݅ ݅ݏൌ ݆
ݏݐ݆݊݁ܿܽ݀ܽ ݐ݊ݏ ݆ ݐ݁ ݅ ݏݐ݁݉݉ݏ ݏ݈݁ ݅ݏ
݀ܽ݊݀ ݏᇱ ܽݏܽܿ ݏ݁ݎݐݑ
Il existe aussi des solutions consistant à construire la matrice en basant sur non seulement la
connectivité mais également de la géométrie des maillages par exemple la modélisation par
éléments finis (en anglais Finite Element Modeling) [10] ou la matrice des cotangentes des angles
C [11] :
ۓ
ۖ
ۖ
אଵି௩௦ሺሻ
െܥ
݅ ݅ݏൌ ݆
ܥ ൌ ܿ݃݊ܽݐ൫ߙ ൯ ܿ݃݊ܽݐ൫ߚ ൯
۔
ݏݐ݆݊݁ܿܽ݀ܽ ݐ݊ݏ ݆ ݐ݁ ݅ ݏݐ݁݉݉ݏ ݏ݈݁ ݅ݏ
2
ۖ
ۖ
0
݀ܽ݊݀ ݏᇱ ܽݏܽܿ ݏ݁ݎݐݑ
ە
ߙ et ߚ sont des angles opposés à l’arête (vi, vj).
18
Figure 8 : Angles αij et βij opposés à l’arête (vi,vj).
Parmi ces matrices, l’analyse avec la matrice basée sur la géométrie surtout avec la modélisation
par éléments finis est plus robuste contre les attaques sur la connectivité. Cette comparaison sera
détaillée dans la partie [3.5.1].
La robustesse de ce type d’analyse a été vérifiée [12] sur des maillages de petite taille avec des
nombres de valeurs propres limités à 40. Le problème majeur de ce type d’analyse est la
complexité du calcul et le nombre élevé de valeurs propres calculées. Karni et Gotsman [7] ont
proposé de diviser l’objet en plusieurs sous maillages (patchs). Pour réduire le nombre de valeurs
propres, Vallet et col. [9], [10] ont appliqué un algorithme bande par bande (en anglais band by
band) pour calculer plusieurs valeurs propres en plusieurs fois en divisant le spectre en plusieurs
bandes. Cette idée sera détaillée dans la partie [3].
2.2.2 Métriques de distorsion
Pour mesurer l’imperceptibilité du tatouage, il faut trouver une méthode pour évaluer la
distorsion introduite. Autrement dit, il faut mesurer la différence entre deux maillages S et S’.
Distance de Hausdorff
Pour mesurer la distance de Hausdorff [2], [14] entre deux maillages S et S’, il faut d’abord
mesurer la distance d’un sommet p du maillage ܵ ൌ ሼܸ, ܧሽ au ܵԢ ൌ ሼܸԢ, ܧԢሽ :
݁ሺ, ܵ ᇱ ሻ ൌ min ݀ሺ, ᇱ ሻ
Ԣ ܸ אԢ
݀ሺ, ᇱ ሻ représente la distance euclidienne entre deux sommets p et p’ :
݀ሺ, ᇱ ሻ ൌ ඥሺ ݔെ ݔԢሻଶ ሺ ݕെ ݕԢሻଶ ሺ ݖെ ݖԢሻଶ
En pratique, pour calculer une distance entre un sommet p et la surface S’, il faut d’abord
effectuer un échantillonnage dense sur S’ pour obtenir l’ensemble de p’, afin d’assurer la
précision du calcul. Puis, on mesure la distance ܧሺܵ, ܵ ᇱ ሻ :
ܧሺܵ, ܵ ᇱ ሻ ൌ max ݁ሺ, ܵԢሻ
ܸא
19
En fin, on obtient la distance de Hausdorff entre deux maillages S et S’ par :
ܧு ሺܵ, ܵ ᇱ ሻ ൌ max ሼܧሺܵ, ܵ ᇱ ሻ, ܧሺܵ ᇱ , ܵሻሽ
Distance moyenne
En dehors de la distance Hausdorff, on peut choisir aussi l’erreur moyenne quadratique maximale
(en anglais MRMS – maximum root mean square error) entre M et M’ :
1
݀ோெௌ ሺܵ, ܵԢሻ ൌ ඨ
ඵ ݀ሺ, ܵԢሻଶ ݀ܵ
݁ݎ݅ܣሺܵሻ אௌ
݀ோெோௌ ሺܯ, ܯԢሻ ൌ ݉ܽݔ൫݀ெோௌ ሺܯ, ܯԢሻ, ݀ெோௌ ሺܯԢ, ܯሻ൯
Ces deux distances sont implémentées dans l’outil METRO [14].
2.3 Traitement des maillages – les attaques sur le tatouage
En général, on peut classifier les attaques en deux types : les attaques sur la géométrie et celles
sur la connectivité [13], [15].
2.3.1 Attaques géométriques
Ce type d’attaque a pour but de modifier les positions des sommets de l’objet en compte trois
types différents : la transformation de similarité, les attaques de traitement du signal et la
déformation locale.
Transformation de similarité
La transformation de similarité est la transformation la plus fréquemment appliquée aux objets
3D. Elle inclut la translation, la rotation, la mise à l’échelle uniforme et toutes les combinaisons
entre ces trois opérations.
Traitement du signal :
Ce type d’attaque inclut l’ajout de bruit, le lissage, la compression.
L’ajout de bruit : un bruit peut être ajouté sur des coordonnées des sommets de l’objet.
Le bruit suit le plus souvent une loi uniforme ou normale.
Le lissage : le lissage est une opération qui sert à réduire le bruit. Il est utile en particulier
pour les objets acquis par scanner 3D.
La compression : il n’existe pas de standard de compressions largement utilisé pour les
maillages [16]. La compression des maillages est réalisée le plus souvent soit par
simplification du maillage que nous classerions dans les attaques de la connectivité, soit
simplement la quantification des coordonnées des sommets. Avec R bit de quantification,
des coordonnées xi (yi ou zi) sont quantifiées sur 2R niveaux.
20
(a)
(b)
(c)
(d)
(e)
Figure 9 : Exemple de quelques attaques sur la géométrie : (a) objet original, (b) après la transformation de similarité,
(c) après l’ajout de bruit, (d) après le lissage, (e) après la quantification.
Déformation locale :
Dans ce type d’attaque, une ou plusieurs parties de l’objet sont modifiées. Au contraire de
l’illustration dans la [Figure 10], dans la réalité, la déformation locale est quelquefois
imperceptible si on n’a pas l’objet original mais elle peut affecter beaucoup le tatouage.
Objet original
Après la déformation
Objet original
(a)
Après la déformation
(b)
Figure 10 : Exemple de la déformation locale basant sur l’esquisse (a) et celle sur l’articulation (b)
2.3.2 Attaques sur la connectivité :
Ce type d’attaque a pour but de changer les relations d’adjacence entre les sommets de l’objet.
Les arêtes ainsi que les coordonnées des sommets sont modifiées.
La simplification : ce traitement sert à réduire la complexité de l’objet.
La subdivision : au contraire de la simplification, dans la subdivision, des sommets et des
arêtes sont ajoutés à l’objet pour créer des surfaces lisses et améliorer la visualisation. Elle
augmente la qualité perceptuelle du modèle.
Le remaillage : l’objet est remaillé pour améliorer la qualité géométrique du maillage.
La coupe : on enlève quelques parties d’un objet.
21
Objet original
Trois objets obtenus après subdivision
Objet original
Objet original
Deux objets obtenus après simplification
Après une coupe
Objet original
Après remaillage
Figure 11 : L’objet original et des objets obtenus après quelques attaques (coupe - résultat de Meshbenchmark [13]
d’autres attaques - extrait de [1]).
2.3.3 Autres attaques
Réarrangement des sommets ou des facettes : ce type d’attaque a pour but de réordonner
des sommets ou des facettes de l’objet dans le fichier. Il ne cause aucun changement de la
forme de l’objet. Un tatouage robuste de maillages 3D doit être invariant à ce type d’attaque.
2.4 Techniques de tatouage robuste de maillages 3D
2.4.1 Difficultés
Par rapport au tatouage sur des images 2D, le tatouage sur des maillages est plus difficile à mettre
en œuvre [15].
On peut considérer une image 2D comme une matrice dont chaque élément est un pixel. Cette
considération signifie que chaque pixel a déjà un ordre dans l’image. Cet ordre intrinsèque peut
être utilisé pour synchroniser le tatouage. Au contraire, les ordres des éléments d’un maillage ne
sont pas robustes. On peut réordonner les facettes ou les sommets sans changer la géométrie de
22
l’objet ni sa connectivité et il sera donc nécessaire de trouver un mécanisme de synchronisation
du tatouage indépendant de l’ordre des éléments dans le fichier.
Par ailleurs, beaucoup de méthodes efficaces en tatouage d’image utilisent le domaine spectral.
Mais dans le cas des maillages 3D, on manque d’outils efficaces d’analyse spectrale.
En fin, beaucoup de types d’attaques sont possibles. Le réarrangement des sommets ou des
facettes ne change pas la forme de l’objet mais il peut causer la désynchronisation du tatouage. Il
est de même pour la transformation de similarité qui modifie les coordonnées des sommets sans
modifier la forme de l’objet ni sa connectivité. Un tatouage qu’il soit robuste ou fragile doit
résister à ces deux types d’attaques. La simplification ou le remaillage modifient en même temps
la géométrie et la connectivité de l’objet : ils peuvent donc altérer les primitives utilisées pour la
synchronisation et l’insertion du tatouage.
2.4.2
Tatouage robuste de maillages
2.4.2.1 Méthodes dans le domaine spatial
Pour insérer un tatouage dans le domaine spatial, la plupart des algorithmes utilise des primitives
composées de la géométrie et de la connectivité de l’objet. La fragilité aux attaques sur la
connectivité rend ces algorithmes non aveugles.
Pour arriver à la robustesse contre la transformation de similarité, on ajoute souvent un
prétraitement de normalisation.
Zafeiriou et col. [20] ont proposé un algorithme de tatouage dans le système de coordonnées
sphériques. Avant de faire l’insertion ou l’extraction, il faut faire la normalisation avec la
translation et l’alignement. Puis, on convertit l’objet au système de coordonnées sphériques
ሺݎ, ߠ, ߮ሻ. Ensuite, les sommets de l’objet sont séparés en plusieurs groupe par la discrétisation
dans le domaine ߠ. Pour chaque groupe, on construit l’histogramme des erreurs de prédiction qui
est calculée en basant sur des voisinages des sommets. En supposant que la distribution des
erreurs prédictions est gaussienne, on change la partie gauche ou droite de l’histogramme pour
insérer des bits du tatouage.
Cho et col. [17] ont eu la même idée d’utiliser le système des coordonnées sphériques. Pour
insérer le tatouage, d’abord il faut construire l’histogramme des distances entre des sommets et
le centre gravité de l’objet. Ensuite, on divise cet histogramme en plusieurs groupes selon des
gammes des distances. En supposant que des distances ont une distribution uniforme, on modifie
soit la valeur moyenne, soit la variance de la distribution de chaque groupe. La valeur moyenne
(ou la variance) est augmentée pour insérer un bit +1 et réduite pour insérer un bit -1.
23
Figure 12 : Illustration de la méthode de Cho et col. [17].
Les deux méthodes de Zafeiriou et col. [20] et de Cho et col. [17] sont robustes à la plupart des
attaques sur les maillages tatoués, sauf les attaques de connectivité anisotropes.
Wang et col. [19] ont introduit une méthode aveugle en utilisant des moments volumiques
comme des primitives. Les moments volumiques d’une surface 3D fermée sont définis comme
݉ ൌ න න න ݔ ݕ ݖ ߩሺݔ, ݕ, ݖሻ ݀ ܿ݁ݒܽ ݖ݀ݕ݀ݔ, ݏ݁ݎ݀ݎ ݏ݁݀ ݐ݊ݏ ݎ ݐ݁ ݍ
ߩሺݔ, ݕ, ݖሻ ൌ ቄ
1 ݅ݏሺݔ, ݕ, ݖሻ ݁ ݐݏà ݈’݅݊ݐé݉ݎ݂݁ ݂݁ܿܽݎݑݏ ݈ܽ ݁݀ ݎݑ݁݅ݎé݁
0
݊݊݅ݏ
Avant l’insertion ou l’extraction, d’abord, il faut normaliser le maillage. Ensuite, il faut diviser
l’objet en plusieurs patches. Pour le faire, chaque sommet ݒ ൌ ሺݔ , ݕ , ݖ ሻ est transformé au
système de coordonnée cylindrique
ݕ
ݒ ൌ ሺ݄ , ݎ , ߠ ሻ ൌ ൭ݖ , ටݔଶ ݕଶ , ܿ ݃݊ܽݐ൬ ൰൱
ݔ
Des patches sont générés par la discrétisation des domaines ݄, ߠ avec les pas ݄௦௧ , ߠ௦௧ . Puis, les
moments des sous maillages sont quantifiés par la version modifiée du schéma de Costa scalaire
[18].
2.4.2.2 Méthodes dans le domaine transformé
Tatouage basé sur l’analyse fréquentielle directe
24
Il y a deux problèmes liés à l’analyse fréquentielle directe. Le premier est que le temps du calcul
est trop long. Une solution proposée [21], [22] est de diviser l’objet en plusieurs patchs pour
réduire la complexité. La méthode de division de Ohbuchi et col. [21] se compose de deux étapes.
La première étape est d’identifier un couple de sommets graines qui sont les centres des deux
premiers patchs. La seconde étape est de générer des patchs à partir des sommets graines en
ajoutant leurs sommets adjacents dont les distances sont inférieures à une distance topologique
prédéfinie. La génération de patchs par Cayre et col. [22] utilise le logiciel MiTeS [22]. Par contre,
l’analyse spectrale est basée sur les fonctions de bases fixes crées par la projection Tutte et le
mappage. Alface et Macq [27] ont proposé une autre méthode de segmentation par la
triangulation de la surface originale en basant sur des points caractéristiques robustes (en anglais
robust feature points). Cotting et col. [29] ont utilisé l’analyse en composantes principales pour
séparer l’objet en nuages de points qui n’ont pas d’information de connectivité. Par conséquent,
la construction de la matrice de l’analyse spectrale n’utilise pas la connectivité de l’objet original
mais celle entre un sommet et ses k voisins les plus proches.
(a)
(b)
(c)
(d)
Figure 13 : Les sous maillages générés grâce aux méthodes. (a) de Ohbuchi et col. [21], (b) Cayre et col. [22], (c) Alface
et Macq [27], (d) Cotting et col. [29]
Une autre solution pour le problème du temps de calcul est de calculer un faible nombre de
valeurs et vecteurs propres. Ohbuchi et col. [21] ont utilisé la méthode d’Arnoldi. Pour obtenir m
vecteurs et valeurs propres, il faut demander à l’algorithme de calculer 2m vecteurs et valeurs
propres, 2m اn, où n est le nombre de sommets de l’objet.
Le second problème est que l’analyse dépend complètement de la connectivité de l’objet. Ce
problème rend le tatouage fragile aux attaques sur la connectivité. Une solution proposée [21],
[27], [29], est d’ajouter une opération de rééchantillonnage dans l’extraction pour restaurer la
25