Tatouage d Images par Insertions Aveugle et Informée et Détection par Corrélation Linéaire Saighi Abdelhamid, Salim Chitroub FEI, USTHB Alger, 16000, Algérie asaighi@usthb.dz schitroub@usthb.dz 13 décembre 2014 Résumé L article présente deux systèmes de tatouage d images. Le premier système ne fait pas référence à l image originale dans le processus d insertion de la marque. La détection se fait par corrélation linéaire. Le deuxième système utilise, par contre, l image originale dans la phase d insertion de la marque. La détection se fait aussi par corrélation linéaire. Les deux systèmes ont été testés face à différentes attaques et leurs performances discutées et comparées 1 Introduction Le tatouage est une forme de communication. On souhaite transmettre un message d un émetteur à un récepteur. Pour cette raison, on peut considèrer les systèmes de tatouage comme faisant partie des systèmes de communication. Cox et al. [1] ont été les premiers à utiliser cette approche dans les problèmes de tatouage. Dans cette article, nous avons implémenté deux algorithmes de tatouage d images différents. La différence entre ces deux algorithmes réside dans l utilisation faite de l image hôte dans les modèles utilisés. En effet, dans le premier modèle, l image hôte est considérée comme étant un bruit pur. Dans le second modèle, l image hôte est aussi considérée comme un bruit, mais ce bruit est fourni au codeur de canal comme information. Pour illustrer ces principes, nous présentons dans la section 2 un premier algorithme de tatouage à insertion aveugle et détection par corrélation linéaire. La section 3 présente un second algorithme de tatouage à insertion informée et détection par corrélation linéaire. La section 4 reporte les résultats obtenus. La section 5 est une conclusion. 2 Insertion aveugle et détection par corrélation linéaire Ce système utilise un schéma d insertion aveugle, c est à dire que l image originale n est pas utilisée pendant la phase d insertion. La détection se fait en utilisant la corrélation linéaire comme métrique de détection. Les algorithmes utilisés dans les phases d insertion et de détection sont les suivants : Insertion 1. Générer un motif de référence aléatoire. C est un motif de même dimension que l image originale dont les éléments sont distribués aléatoirement dans l intervalle [-1, 1] selon une loi Gaussienne. La détection se fait par une corrélation linéaire. La clé du tatouage est la graine utilisée par le générateur de nombres pseudo-aléatoires pour générer l image de référence aléatoire. 2. Générer le message selon que nous insérons un 1 ou un 0. Pour un 1, laisser le motif de ré- 1
férence aléatoire inchangé. Pour un 0, prendre son négatif pour obtenir le message. 3. Multiplier le message par une constante α, utilisée pour régler la force du tatouage. Pour des valeurs plus grande de α, un tatouage plus robuste sera obtenu, au détriment de la qualité de l image. 4. Ajouter le message à l image originale pour obtenir l image tatouée. Détection : 1. Calculer la corrélation linéaire entre l image tatouée et le motif de référence initial qui peut être recréée à partir de la graine qui a agi en tant que clé du tatouage. 2. Décider du type de message du tatouage, selon le résultat de la corrélation linéaire. Si la valeur de la corrélation linéaire est supérieure à un certain seuil, on dit que le message était un 1. Si la valeur de la corrélation linéaire est inférieure à la valeur négative du seuil, nous disons que le message était un 0. Si la valeur de la corrélation linéaire est entre ces deux valeurs du seuil, nous disons qu aucun message n avait été inséré. 3 Insertion informée et détection par corrélation linéaire Ce système est une extension du système d insertion aveugle, qui vise une efficacité de 100% dans la détection du tatouage, en contrôlant la valeur du paramètre α. Les algorithmes des processus d insertion et de détection sont : Insertion : 1. Choisir un motif de référence aléatoire. C est une image de même dimension que l image originale, dont les éléments sont distribués aléatoirement dans l intervalle [-1, 1] selon une loi Gaussienne. La clé du tatouage est la graine utilisée dans la génération du motif de référence par le générateur de nombres pseudo-aléatoires. 2. Générer le message selon que nous insérons un 1 ou un 0. Pour un 1, laisser le motif de référence aléatoire inchangé. Pour un 0, prendre son négatif pour obtenir le message. 3. Calculer la constante α à l aide de la corrélation linéaire entre l image tatouée et le message. Le but est de garantir que la valeur de la corrélation linéaire utilisée dans détection est toujours supérieure au seuil de détection. De cette façon, nous obtenons une valeur différente pour α pour chaque image. 4. Multiplier le message par une constante α, utilisée pour contrôler la force du tatouage. 5. Ajouter le message mis à l échele à l image originale pour obtenir l image tatouée. Détection : 1. Calculer la corrélation linéaire entre l image tatouée et le motif de référence recréée à partir de la graine qui a agi en tant que clé de tatouage. 2. Décider du type de message du tatouage, selon le résultat de la corrélation. Si la valeur de la corrélation linéaire est supérieure à un certain seuil, on dit que le message était un 1. Si la valeur de la corrélation linéaire est inférieure à la valeur négative du seuil, nous disons que le message était un 0. Si la valeur de la corrélation linéaire est entre ces deux valeurs du seuil, nous disons qu aucun message n avait été inséré. 4 Résultats et analyse 4.1 Insertion aveugle et détection par corrélation linéaire Le premier algorithme proposé a été implémenté sous l environnement Matlab R2013a. Pour tester son efficacité, une base de 400 images a été utilisée. L éxécution de l algorithme d insertion, avec un coefficient α = 1, a génèré un total de 800 images, dont la moitiè est marquée par un 1 et l autre moitiè par un 0. La valeur de la corrélation linéaire pour chacune de ces images tatouées ainsi que pour les images non-tatouées avait ensuite été calculée. Les 2
résultas, sous forme d histogramme sont donnés par la figure 1. L axe des x représente la valeur de la corrélation linéaire, alors que l axe des y est le pourcentage d images ayant une valeur spécifique de la corrélation linéaire. Sur l histogramme, les images tatouées avec un 0 ont une valeur centrée sur -1, celles tatouées avec un 1 ont une valeur centrée sur 1, tandis que les images non-tatouées ont une valeur centrée sur 0. On constate que les trois tracès se chevauchent aussi bien pour les points compris entre -1 et 0 que pour les points compris entre 0 et 1. Cela signifie que le choix du seuil sera difficile, car quelle que soit le seuil choisi, il y aura toujours quelques images non-tatouées qui seront classés comme étant tatouées (faux positifs), tandis que d autres images tatouées seront classées non-tatouées (faux négatifs). L idéal serait que les trois tracès ne se chevauchent pas et soit suffisamment espacé pour permettre un choix du seuil qui ne donne pas de faux positifs ni de faux négatifs. Le motif de référence est très important pour tout système de tatouage, et surtout pour ce type de sys- tème qui n utilise pas l information contenue dans l image originale, durant l insertion. Afin d illustrer cela, le même test que ci-dessus a été effectuée, après avoir appliqué un filtre passe-bas (5 X 5) au motif de référence, avant de l ajouter à chacune des images. Les résultats sont présentés sur la figure 2. L axe des abscisses correspond à la valeur de la corrélation linéaire, tandis que l axe des ordonnées est le pourcentage d images avec une valeur spécifique de la corrélation linéaire. Comme la figure 2 le montre, le chevauchement des trois tracès représentant le pourcentage d images en tant que fonction de la valeur de la corrélation pour les trois groupes d images (1 inséré, 0 inséré, non-tatouée) est beaucoup plus important que dans le test précédent, ce qui rend impossible, dans la pratique, de choisir un seuil approprié qui n entraîne pas un taux élevé de faux positifs. La valeur de α est également cruciale pour ce type de système, car elle permet de moduler la force du tatouage en espaçant davantage les valeurs de la corrélation linéaire. Ce qui diminue le chevauche- Figure 1: Valeurs de la détection pour les images tatouées Figure 2: Valeurs de la détection pour les images tatouées après avoir appliqué un filtre passe-bas au motif 3
ment entre les tracès correspondant aux trois groupes d images. Un test a été effectué sur la série des 400 images originales, avec une valeur de 2 pour α. Les résultats étaient, comme nous pouvons le voir sur la figure 3, plus concluants. Le tracé de la corrélation correspondant au premier groupe d images (marquées avec un 0) s est déplacé vers -2, tandis que le tracé correspondant au deuxième groupe d images (tatouées avec un 1) s est déplacé vers 2. Le tracé correspondant au troisième groupe d images (nontatouées) est resté entre 0 et 1. Ici, on constate q il ya une séparation claire entre les trois tracès, et le choix d un seuil, pour classer les images tatouées et non-tatouées, sera par conséquent plus aisé. Nous avons aussi testé la robustesse du système en exécutant une version modifiée du test initial sur les 400 images originales, dans lequel, nous avons ajouté un bruit gaussien aléatoire dans l intervalle [- 10,10] à chacun des pixels des images tatouées, pour voir comment cela pourrait affecter la détection de la marque. Les résultats sont donnés sur la figure 4. Comme prévu, les trois tracès se rapprochent plus que dans le test effectué sur les images originales. Ceci engendre un chevauchement plus important des tracés et rend le choix d un seuil plus difficile. Ce système n est donc pas robuste vis-à-vis d un bruit additif. 4.2 Insertion informée et détection par corrélation linéaire Pour tester l efficacité de ce système, nous avons utilisé 400 images. Nous avons exécuté l algorithme pour produire 800 images tatouées avec 1 ou 0. Nous avons ensuite calculé la corrélation linéaire pour chacune de ces images ainsi que pour les images originales non-tatouées. La figure 5 présente les résultats. L abscisse est la valeur de la corrélation linéaire, l ordonnée est le pourcentage d images avec une valeur spécifique de la corrélation linéaire. L histogramme montre que les trois tracès représentant les images ayant éte marquées par un 1, un 0 ou non-marquées Figure 3: Valeurs de la détection pour les imagestatouées avec α = 2 Figure 4: Valeurs de la détection pour les imagestatouées après ajout de bruit gaussien 4
sont bien espacés et ne présentent aucun chevauchement. Ceci est du au fait que la valeur de α est adjustée de façon dynamique pour produire des imagestatouées avec une valeur de détection égale à 1. Donc, les images ayant été marquées par un 1 ont une valeur de détection de 1 et celles ayant eu un 0 inséré ont une valeur de détection de -1. Les valeurs de détection des images originales sont centrées sur 0. L histogramme montre aussi que les images tatouées n ont pas toutes une valeur de détection égale à 1 ou -1 comme prévu pour un algorithme à valeur de détection fixe. Ceci est du essentiellement aux erreurs introduites durant les opérations d arrondissage et de troncature des valeurs pour les convertir en entiers. Ce système a une efficacité de 100% et un seuil peut être choisi pour permettre une détection de la marque avec un taux de faux positif égal à zéro. Même en présense d un bruit additif, ce système reste robuste. En effet, nous avons modifié le test cidessus pour ajouter un bruit gaussien dans l intervalle [-10,10] à chacun des pixels des images tatouées, pour voir l effet sur les trois tracès. Les résultas sont montrés sur la figure 6. Il n y a, essentiellement, aucune différence entre la figure 5 et la figure 6, ce qui indique que la présence de bruit n a pas beaucoup affecté les valeurs détectées. Pour cela, on peut dire que ce système est complètement robuste pour le bruit additif, ce qui n était pas le cas pour le système à insertion aveugle. Dans l ensemble, le système à insertion informée a une meilleure performance, en termes d efficacité et de robustesse, que le système à insertion aveugle. Références [1] I. J. Cox, M. L. Miller, J. A. Bloom, and J. Fridrich, Digital Watermarking and Steganography, 2nd ed. Elsevier, 2008. 5 Conclusion Dans cet article, deux systèmes de tatouage d images ont été proposés. Le premier utilise un schéma aveugle de tatouage pour l insertion de la marque dans l image originale. Le second est un tatouage informé qui fait usage de l image originale pour l insertion de la marque dans l image originale. Ces algorithmes ont été testés sur des images réelles avec différentes attaques. Les résultats des simulations montrent que le deuxième algorithme est plus performant en termes d efficacité et de robustesse. Figure 5: Valeurs de la détection pour les images tatouées 5
Figure 6: Valeurs de la détection pour les images tatouées après avoir ajouté du bruit à ces images 6