EP4026085A1 - Method for inserting information into an image and corresponding device - Google Patents

Method for inserting information into an image and corresponding device

Info

Publication number
EP4026085A1
EP4026085A1 EP20761865.3A EP20761865A EP4026085A1 EP 4026085 A1 EP4026085 A1 EP 4026085A1 EP 20761865 A EP20761865 A EP 20761865A EP 4026085 A1 EP4026085 A1 EP 4026085A1
Authority
EP
European Patent Office
Prior art keywords
image
elements
information
columns
symbols
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.)
Pending
Application number
EP20761865.3A
Other languages
German (de)
French (fr)
Inventor
Gaëtan LE GUELVOUIT
Valérie DENIS
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fondation B Com
Original Assignee
Fondation B Com
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fondation B Com filed Critical Fondation B Com
Publication of EP4026085A1 publication Critical patent/EP4026085A1/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/0028Adaptive watermarking, e.g. Human Visual System [HVS]-based watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/005Robust watermarking, e.g. average attack or collusion attack resistant
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0051Embedding of the watermark in the spatial domain
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0061Embedding of the watermark in each block of the image, e.g. segmented watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0065Extraction of an embedded watermark; Reliable detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0083Image watermarking whereby only watermarked image required at decoder, e.g. source-based, blind, oblivious

Landscapes

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

Abstract

A method for inserting information into a first image comprising N1 rows x M1 columns of elements comprises the following steps: a) obtaining (E21), from the first image, a second image comprising N0 rows x M0 columns of elements, with N0≤N1 and M0≤M1, b) generating (E22), from the second image, initial information comprising N0 rows x M0 columns of elements, c) obtaining, from the generated initial information, intermediate information comprising N4 rows x M4 columns of elements, such that N4≥N1 and M4≥M1 on the one hand, and N4=kx.N0 and M4=ky.M0 on the other hand, kx and ky being integers greater than or equal to 1, the elements of the intermediate information being organised into blocks, d) obtaining (E23) the information to be inserted from the intermediate information, comprising, for at least one block of intermediate information: - generating a sequence of symbols representative of a noise, comprising as many symbols as there are elements included in the block, at least one of the symbols not being zero, such that the result of a predetermined function applied to the symbols is equal to a chosen value, - adding each symbol to the corresponding element of the block, and e) inserting (E24) the obtained information into the first image.

Description

Procédé d’insertion d’une information dans une image et dispositif correspondant Method of inserting information into an image and corresponding device
Domaine technique de l'invention Technical field of the invention
La présente invention concerne de manière générale le domaine technique du tatouage numérique d’une image ou d’une séquence vidéo. The present invention relates generally to the technical field of digital watermarking of an image or of a video sequence.
Elle concerne en particulier un procédé et dispositif d’insertion d’une information (encore appelée tatouage ou marque d’identification) dans une image. Un but de cette technique est par exemple d’identifier l’auteur de l’image tatouée, grâce à l’information insérée. It relates in particular to a method and device for inserting information (also called watermark or identification mark) into an image. One aim of this technique is, for example, to identify the author of the tattooed image, thanks to the information inserted.
Etat de la technique State of the art
Il a été proposé d’insérer dans une image ou des images d’une séquence vidéo, un tatouage numérique, c’est-à-dire une information imperceptible et donc indétectable, identifiant l’image ou la vidéo en question. Cette information doit pouvoir être retrouvée malgré les transformations que peut subir l’image dans laquelle elle a été insérée. Différentes techniques existent. Celles-ci s’expriment toutes sous la forme d’une fonction traduisant l’addition d’un tatouage W à une image I tel que IW=I+W, IW étant l’image tatouée (voir I. J. Cox, M. L. Miller et J. A. Bloom, Digital watermarking, Sec. 3.3, Communication-based models of watermarking, p. 68, Morgan Kaufman Publishers.) It has been proposed to insert into an image or images of a video sequence, a digital watermark, that is to say imperceptible and therefore undetectable information, identifying the image or video in question. This information must be able to be found despite the transformations that the image in which it has been inserted may undergo. Different techniques exist. These are all expressed in the form of a function translating the addition of a watermark W to an image I such that IW = I + W, IW being the watermarked image (see IJ Cox, ML Miller and JA Bloom, Digital watermarking, Sec. 3.3, Communication-based models of watermarking, p. 68, Morgan Kaufman Publishers.)
Pour que le tatouage soit robuste au changement d’échelle comme un agrandissement, il est connu de calculer l’information à insérer dans une dimension fixe et réduite, puis de l’agrandir à la taille de l’image à tatouer. Cette technique est par exemple décrite dans le manuel : I. J. Cox, M. L. Miller et J. A. Bloom, Digital watermarking, Sec. 9.1.6, Preinverting distortions in the embedder, p. 304, Morgan Kaufman Publishers. In order for the tattoo to be robust to scaling like an enlargement, it is known to calculate the information to be inserted in a fixed and reduced dimension, then to enlarge it to the size of the image to be tattooed. This technique is for example described in the manual: I. J. Cox, M. L. Miller and J. A. Bloom, Digital watermarking, Sec. 9.1.6, Preinverting distortions in the embedder, p. 304, Morgan Kaufman Publishers.
Toutefois, l’étape d’agrandissement de cette solution génère des zones d’aplats uniformes dans l’image tatouée, une fois le tatouage inséré, quelle que soit la méthode d’agrandissement utilisée. Ces zones (en particulier les transitions de luminosité entre deux aplats adjacents) sont facilement visibles, ce qui rend le tatouage détectable. However, the magnification step of this solution generates uniform solid areas in the watermarked image, once the watermark is inserted, regardless of the magnification method used. These areas (in particular the luminosity transitions between two adjacent solid areas) are easily visible, which makes the watermark detectable.
Présentation de l'invention Presentation of the invention
Dans ce contexte, l’invention propose un procédé d’insertion d’une information dans une première image comprenant N1 lignes x M1 colonnes d’éléments, N1 et M1 étant des entiers non nuis, ledit procédé comprenant les étapes suivantes : a) une obtention à partir de la première image, d’une deuxième image comprenant NO lignes x MO colonnes d’éléments, N0 et MO étant des entiers non-nuls tels que N0£N1 et M0£M1 , b) une génération, à partir de la deuxième image, d’une information initiale comprenant NO lignes x MO colonnes d’éléments, c) une obtention à partir de l’information initiale générée, d’une information intermédiaire comprenant N4 lignes x M4 colonnes d’éléments, de façon que N4³N1 et M4³M1 d’une part, et N4=kx.N0 et M4=ky.M0 d’autre part, N4 et M4 étant des entiers non nuis, kx et ky étant des entiers supérieurs ou égaux à 1 , lesdits éléments de l’information intermédiaire étant organisés en blocs, d) une obtention de ladite information à insérer à partir de l’information intermédiaire, comprenant pour au moins un bloc de l’information intermédiaire,In this context, the invention proposes a method of inserting information in a first image comprising N1 rows x M1 columns of elements, N1 and M1 being non-harmful integers, said method comprising the following steps: a) obtaining from the first image, a second image comprising NO rows x MO columns of elements, N0 and MO being non-zero integers such as N0 £ N1 and M0 £ M1, b) a generation, from the second image, initial information comprising NO lines x MO columns of elements, c) obtaining from the generated initial information, intermediate information comprising N4 lines x M4 columns of elements, so that N4³N1 and M4³M1 on the one hand, and N4 = kx.N0 and M4 = ky.M0 on the other hand, N4 and M4 being undamaged integers, kx and ky being integers greater than or equal to 1, said elements of the intermediate information being organized in blocks, d) obtaining said information to be inserted from the intermediate information, comprising at least one block of the intermediate information,
- une génération d’une séquence de symboles représentative d’un bruit, comprenant autant de symboles que d’éléments compris dans ledit bloc, au moins l’un des symboles étant non nul, de façon que le résultat d’une fonction prédéterminée appliquée auxdits symboles soit égal à une valeur choisie, a generation of a sequence of symbols representative of a noise, comprising as many symbols as there are elements included in said block, at least one of the symbols being non-zero, so that the result of a predetermined function applied to said symbols is equal to a chosen value,
- un ajout de chaque symbole à l’élément correspondant dudit bloc, et e) une insertion de ladite information obtenue dans la première image. - an addition of each symbol to the corresponding element of said block, and e) an insertion of said information obtained in the first image.
L’invention a pour avantage de permettre l’insertion d’une information robuste au changement d’échelle de l’image sans laquelle elle a été insérée, et ne générant pas d’aplat dans l’image tatouée. The invention has the advantage of allowing the insertion of information that is robust to the change in scale of the image without which it was inserted, and that does not generate a solid in the watermarked image.
Par exemple, le résultat peut être une somme. For example, the result can be a sum.
La fonction prédéterminée peut être une mesure de tendance centrale. The predetermined function may be a measure of central tendency.
Par exemple, la fonction prédéterminée peut être est la médiane. For example, the predetermined function can be is the median.
Par exemple, la fonction prédéterminée peut être la moyenne. For example, the predetermined function can be the average.
En variante, la fonction prédéterminée (appliquée aux symboles) peut être la somme (des symboles). Alternatively, the predetermined function (applied to the symbols) may be the sum (of the symbols).
L’information intermédiaire est par exemple obtenue à partir de l’information initiale au moyen d’une méthode d’agrandissement (par exemple au moyen d’une méthode d’interpolation au plus proche voisin). The intermediate information is, for example, obtained from the initial information by means of a magnification method (for example by means of a method of interpolation to the nearest neighbor).
Selon un mode de mise en oeuvre, ladite valeur choisie est égale à zéro ; par ailleurs, on peut prévoir par exemple que kx ou ky est supérieur ou égal à 2. Selon un mode de mise en oeuvre, si N4>N1 ou si M4>M1 , l’obtention de l’information à insérer comprend en outre, suite à l’ajout de chaque symbole à l’élément correspondant dudit bloc, une réduction de la taille de l’information intermédiaire de façon à obtenir respectivement N4=N1 ou M4=M1 . According to one embodiment, said chosen value is equal to zero; moreover, provision can be made, for example, for kx or ky to be greater than or equal to 2. According to one embodiment, if N4> N1 or if M4> M1, obtaining the information to be inserted further comprises, following the addition of each symbol to the corresponding element of said block, a reduction of the size of the intermediate information so as to obtain respectively N4 = N1 or M4 = M1.
Selon un mode de mise en oeuvre, ladite séquence de symboles représentative du bruit comprend p symboles, tel que p1 symboles sont générés aléatoirement ou pseudo-aléatoirement et p2 symboles sont calculés de façon que le résultat de la fonction prédéterminée appliquée aux p symboles, soit égal à ladite valeur choisie, p, p1 et p2 étant des entiers tels que p=p1 +p2. According to one embodiment, said sequence of symbols representative of the noise comprises p symbols, such that p1 symbols are generated randomly or pseudo-randomly and p2 symbols are calculated so that the result of the predetermined function applied to the p symbols, namely equal to said chosen value, p, p1 and p2 being integers such that p = p1 + p2.
L’invention propose également, selon autre aspect, un procédé d’extraction d’une information formée d’une pluralité éléments comprenant N0 lignes et MO colonnes, insérée dans une image comprenant N2 lignes x M2 colonnes d’éléments à l’aide du procédé d’insertion selon l’un des modes de mise en oeuvre décrits ci- dessus, N0, MO, N2 et M2 étant des entiers non nuis, tels quel N2>N0 et M2>M0, ledit procédé d’insertion comprenant les étapes suivantes : f) une obtention à partir de ladite image, d’une nouvelle image comprenant N3 lignes et M3 colonnes d’éléments, avec N3³N2 et M3³M2 d’une part, et N3=nx.N0 et M3=ny.M0 d’autre part, N3 et M3 étant des entiers positifs non nuis, nx et ny étant des entiers supérieurs à 1 , les éléments de ladite nouvelle image étant organisés en blocs, g) une obtention d’une image réduite à partir de la nouvelle image, l’image réduite comprenant N0 lignes x MO colonnes d’éléments, chaque élément de l’image réduite étant obtenu à partir des éléments d’un bloc correspondant dans la nouvelle image, et pour chaque élément de l’image réduite à obtenir : The invention also proposes, according to another aspect, a method of extracting information formed from a plurality of elements comprising N0 rows and MO columns, inserted into an image comprising N2 rows x M2 columns of elements using the insertion method according to one of the embodiments described above, N0, MO, N2 and M2 being non-harmful integers, such as N2> N0 and M2> M0, said insertion method comprising the steps following: f) obtaining from said image, a new image comprising N3 rows and M3 columns of elements, with N3³N2 and M3³M2 on the one hand, and N3 = nx.N0 and M3 = ny.M0 d ' on the other hand, N3 and M3 being positive undamaged integers, nx and ny being integers greater than 1, the elements of said new image being organized in blocks, g) obtaining a reduced image from the new image, the reduced image comprising N0 rows x MO columns of elements, each element of the reduced image being obtained from the elements of a block c corresponding in the new image, and for each element of the reduced image to be obtained:
- une détermination de la valeur de l’élément considéré en appliquant ladite fonction prédéterminée aux valeurs des éléments du bloc de la nouvelle image correspondant audit élément, la valeur dudit élément considéré correspondant au résultat de l’application de la fonction, et h) une extraction de l’information à partir de l’image réduite. a determination of the value of the element considered by applying said predetermined function to the values of the elements of the block of the new image corresponding to said element, the value of said element considered corresponding to the result of the application of the function, and h) a extracting information from the reduced image.
L’invention propose également, selon un autre aspect, un dispositif d’insertion d’une information dans une première image comprenant N1 lignes x M1 colonnes d’éléments, N1 et M1 étant des entiers non nuis, le dispositif étant configuré pour mettre en oeuvre les étapes suivantes : i) une obtention à partir de la première image, d’une deuxième image comprenant NO lignes x MO colonnes d’éléments, N0 et MO étant des entiers non-nuls tels que N0£N1 et M0£M1 , j) une génération, à partir de la deuxième image, d’une information initiale comprenant NO lignes x MO colonnes d’éléments, k) une obtention à partir de l’information initiale générée, d’une information intermédiaire comprenant N4 lignes x M4 colonnes d’éléments, de façon que N4³N1 et M4³M1 d’une part, et N4=kx.N0 et M4=ky.M0 d’autre part, N4 et M4 étant des entiers non nuis, kx et ky étant des entiers supérieurs ou égaux à 1 , lesdits éléments de l’information intermédiaire étant organisés en blocs, The invention also proposes, according to another aspect, a device for inserting information into a first image comprising N1 lines x M1 columns of elements, N1 and M1 being non-harmful integers, the device being configured to put in implements the following steps: i) obtaining from the first image, a second image comprising NO rows x MO columns of elements, N0 and MO being non-zero integers such as N0 £ N1 and M0 £ M1, j) generation, from the second image, initial information comprising NO lines x MO columns of elements, k) obtaining from the generated initial information, intermediate information comprising N4 lines x M4 columns of elements, so that N4³N1 and M4³M1 on the one hand, and N4 = kx.N0 and M4 = ky.M0 on the other hand, N4 and M4 being undamaged integers, kx and ky being integers greater than or equal to 1, said elements of the intermediate information being organized in blocks,
L) une obtention de ladite information à insérer à partir de l’information intermédiaire, comprenant pour au moins un bloc de l’information intermédiaire L) obtaining said information to be inserted from the intermediate information, comprising at least one block of the intermediate information
- une génération d’une séquence de symboles représentative d’un bruit, comprenant autant de symboles que d’éléments compris dans ledit bloc, au moins l’un des symboles étant non nul, de façon que le résultat d’une fonction prédéterminée appliquée auxdits symboles soit égal à une valeur choisie, a generation of a sequence of symbols representative of a noise, comprising as many symbols as there are elements included in said block, at least one of the symbols being non-zero, so that the result of a predetermined function applied to said symbols is equal to a chosen value,
- un ajout de chaque symbole à l’élément correspondant dudit bloc, et m) une insertion de ladite information obtenue dans la première image. - an addition of each symbol to the corresponding element of said block, and m) an insertion of said information obtained in the first image.
L’invention propose également, selon un autre aspect, un dispositif d’extraction d’une information formée d’une pluralité éléments comprenant N0 lignes et MO colonnes, insérée dans une image comprenant N2 lignes x M2 colonnes d’éléments à l’aide du procédé d’insertion selon l’une des revendications 1 à 7, N0, MO, N2 et M2 étant des entiers non nuis, tels quel N2>N0 et M2>M0, le dispositif étant configuré pour mettre en oeuvre les étapes suivantes : n) une obtention à partir de ladite image, d’une nouvelle image comprenant N3 lignes et M3 colonnes d’éléments, avec N3³N2 et M3³M2 d’une part, et N3=nx.N0 et M3=ny.M0 d’autre part, N3 et M3 étant des entiers positifs non nuis, nx et ny étant des entiers supérieurs à 1 , les éléments de ladite nouvelle image étant organisés en blocs, o) une obtention d’une image réduite à partir de la nouvelle image, l’image réduite comprenant N0 lignes x MO colonnes d’éléments, chaque élément de l’image réduite étant obtenu à partir des éléments d’un bloc correspondant dans la nouvelle image, et pour chaque élément de l’image réduite à obtenir : - une détermination de la valeur de l’élément considéré en appliquant ladite fonction prédéterminée aux valeurs des éléments du bloc de la nouvelle image correspondant audit élément, la valeur dudit élément considéré correspondant au résultat de l’application de la fonction, et p) une extraction de l’information à partir de l’image réduite. The invention also proposes, according to another aspect, a device for extracting information formed from a plurality of elements comprising N0 rows and MO columns, inserted into an image comprising N2 rows x M2 columns of elements using of the insertion method according to one of claims 1 to 7, N0, MO, N2 and M2 being undamaged integers, such as N2> N0 and M2> M0, the device being configured to implement the following steps: n) obtaining from said image, a new image comprising N3 rows and M3 columns of elements, with N3³N2 and M3³M2 on the one hand, and N3 = nx.N0 and M3 = ny.M0 on the other hand , N3 and M3 being positive undamaged integers, nx and ny being integers greater than 1, the elements of said new image being organized in blocks, o) obtaining a reduced image from the new image, l ' reduced image comprising N0 rows x MO columns of elements, each element of the reduced image being obtained from the elements of a block c corresponding in the new image, and for each element of the reduced image to be obtained: a determination of the value of the element considered by applying said predetermined function to the values of the elements of the block of the new image corresponding to said element, the value of said element considered corresponding to the result of the application of the function, and p) a extracting information from the reduced image.
L’invention propose également selon un autre aspect, un support d’enregistrement lisible par un ordinateur, sur lequel est enregistré un programme d’ordinateur comprenant des instructions de code de programme pour l’exécution des étapes du procédé tel que décrit ci-avant. The invention also provides, according to another aspect, a recording medium readable by a computer, on which is recorded a computer program comprising program code instructions for the execution of the steps of the method as described above. .
Bien entendu, les différentes caractéristiques, variantes et formes de réalisation de l'invention peuvent être associées les unes avec les autres selon diverses combinaisons dans la mesure où elles ne sont pas incompatibles ou exclusives les unes des autres. Of course, the different characteristics, variants and embodiments of the invention can be associated with each other in various combinations insofar as they are not incompatible or mutually exclusive.
Description détaillée de l'invention Detailed description of the invention
De plus, diverses autres caractéristiques de l'invention ressortent de la description annexée effectuée en référence aux dessins qui illustrent des formes, non limitatives, de réalisation de l'invention et où : In addition, various other characteristics of the invention emerge from the appended description given with reference to the drawings which illustrate non-limiting embodiments of the invention and in which:
- la figure 1 illustre un exemple d’application d’un mode de mise en oeuvre des procédés d’insertion et d’extraction d’information selon l’invention ; - Figure 1 illustrates an example of application of an embodiment of the information insertion and extraction methods according to the invention;
- la figure 2 représente un mode de mise en oeuvre d’un procédé d’insertion selon l’invention ; - Figure 2 shows an embodiment of an insertion method according to the invention;
- la figure 3 illustre le mode de mise en oeuvre de la figure 2 ; - Figure 3 illustrates the embodiment of Figure 2;
- la figure 4 représente plus en détail une étape du mode de mise en oeuvre de la figure 2 ; - Figure 4 shows in more detail a step of the embodiment of Figure 2;
- la figure 5 illustre un élément mis en oeuvre dans l’étape représentée dans la figure 4 ; - Figure 5 illustrates an element implemented in the step shown in Figure 4;
- la figure 6 illustre un bloc mis en oeuvre dans l’étape représentée dans la figure- Figure 6 illustrates a block implemented in the step shown in the figure
4 ; 4;
- la figure 7 illustre le bloc de la figure 6, après l’ajout d’un bruit ; - Figure 7 illustrates the block of Figure 6, after adding noise;
- la figure 8 représente un exemple de rendu d’une information à insérer ; - Figure 8 shows an example of rendering of information to be inserted;
- la figure 9 représente un mode de mise en oeuvre d’un procédé d’extraction selon l’invention ; et - Figure 9 shows an embodiment of an extraction process according to the invention; and
- la figure 10 représente un mode de réalisation d’un dispositif selon l’invention. La figure 1 décrit un exemple d’application d’un mode de mise en œuvre des procédés d’insertion et d’extraction d’information selon l’invention. Une première étape E10 met en œuvre un procédé d’insertion d’une information dans une image. Cette information peut par exemple être une marque permettant de reconnaître l’auteur de l’image à des fins de protection de l’image par le droit d’auteur. En variante, l’information (appelé ci-après « tatouage ») peut être insérée dans une ou plusieurs images d’une séquence vidéo. - Figure 10 shows an embodiment of a device according to the invention. FIG. 1 describes an example of application of an embodiment of the methods of inserting and extracting information according to the invention. A first step E10 implements a method of inserting information into an image. This information can for example be a mark making it possible to recognize the author of the image for the purposes of protecting the image by copyright. As a variant, the information (hereinafter called “watermark”) can be inserted into one or more images of a video sequence.
Une fois l’information insérée dans l’image, cette dernière peut être transmise lors d’une étape E11 puis réceptionnée par un client à l’étape E12. L’image peut alors être transformée par le client, qui peut opérer par exemple un changement d’échelle, étape E13. Once the information has been inserted into the image, the latter can be transmitted during a step E11 and then received by a client at step E12. The image can then be transformed by the customer, who can for example operate a change of scale, step E13.
L’information qui a été insérée à l’étape E10 est extraite de l’image transformée, étape E14, puis analysée, par exemple pour identifier l’auteur de l’image, étape E15. The information that was inserted in step E10 is extracted from the transformed image, step E14, then analyzed, for example to identify the author of the image, step E15.
La figure 2 illustre plus en détail un exemple de mise en œuvre du procédé d’insertion d’une information au sein d’une image, étape E10. FIG. 2 illustrates in more detail an example of the implementation of the method of inserting information into an image, step E10.
On considère une image l(D1) formées de plusieurs éléments, par exemple des pixels, répartis en N1 lignes et en M1 colonnes, N1 et M1 étant des entiers non nuis représentant les dimensions D1 de l’image l(D1 ). Ces dimensions peuvent s’exprimer sous forme d’un produit N1 x M1 pixels. Par exemple les dimensions D1 peuvent être égales à 3840 x 2160 pixels. We consider an image l (D1) formed of several elements, for example pixels, distributed in N1 lines and in M1 columns, N1 and M1 being undamaged integers representing the dimensions D1 of the image l (D1). These dimensions can be expressed as an N1 x M1 pixel product. For example, the dimensions D1 can be equal to 3840 × 2160 pixels.
On obtient à partir de cette image, une autre image l(D0) formés d’éléments répartis en N0 lignes et en MO colonnes, N0 et MO étant des entiers non nuis représentant les dimensions D0 de l’image l(D0). Il vient N0£N1 et/ou M0£M1 , correspondant au format d’image 16/9. From this image, we obtain another image l (D0) formed of elements distributed in N0 rows and MO columns, N0 and MO being non-harmful integers representing the dimensions D0 of the image l (D0). It comes N0 £ N1 and / or M0 £ M1, corresponding to the 16: 9 aspect ratio.
Les dimensions D0 sont prédéterminées, par exemple égales à 640 x 360 pixels, correspondant à la définition dite 360p. De préférence, les dimensions D0 sont choisies de façon que le rapport entre le nombre de lignes et de colonnes corresponde à un format d’image standard tel que le format d’image 16/9. Par exemple, ces dimensions D0 peuvent impliquer un nombre de pixels correspondant à une définition standard SD, soit 480p. Plus généralement, dans le contexte de l’invention décrit ci- dessous, les dimensions D0 sont choisies suffisamment petites de façon que le tatouage reste robuste aux réductions de l’image dans des formats de qualité acceptable du point de vue d’un spectateur, et suffisamment grandes pour que l’énergie du tatouage reste faible comparée à l’énergie de l’image hôte. On rappelle que classiquement, dans le domaine du traitement du signal, l’énergie d’une image correspond à la variance des valeurs des pixels par rapport à une valeur constante. The dimensions D0 are predetermined, for example equal to 640 × 360 pixels, corresponding to the so-called 360p definition. Preferably, the dimensions D0 are chosen so that the ratio between the number of rows and columns corresponds to a standard image format such as the 16/9 image format. For example, these dimensions D0 can imply a number of pixels corresponding to a standard definition SD, ie 480p. More generally, in the context of the invention described below, the dimensions D0 are chosen sufficiently small so that the watermark remains robust to image reductions in formats of acceptable quality from the viewpoint of a viewer, and large enough that the energy of the watermark remains low compared to the energy of the host image. It will be recalled that conventionally, in the field of signal processing, the energy of an image corresponds to the variance of the values of the pixels with respect to a constant value.
A partir de cette image l(D0), un tatouage W(D0) (ou information initiale) est généré, étape E22. Le tatouage W(D0) est également formé de pixels répartis en lignes et en colonnes. Des méthodes de calcul d’un tatouage à une taille donnée à partir d’une image ayant cette même taille sont connues de l’homme du métier. Des méthodes de calcul sont décrites par exemple dans le manuel Digital watermarking mentionné ci-avant. C’est cette information initiale qui sera par la suite extraite afin d’être analysée. From this image I (D0), a watermark W (D0) (or initial information) is generated, step E22. The watermark W (D0) is also formed of pixels distributed in rows and columns. Methods of calculating a tattoo at a given size from an image having this same size are known to those skilled in the art. Calculation methods are described for example in the Digital watermarking manual mentioned above. It is this initial information that will subsequently be extracted for analysis.
A partir de ce tatouage W(D0), un tatouage agrandi W(D4) est obtenu de façon à avoir N4 lignes et M4 colonnes (dimensions D4), étape 23, selon un mode de mise en oeuvre du procédé de l’invention. Il vient N4³N1 et M4³M1 d’une part, et N4=kx.N0 et M4=ky.M0 d’autre part, N4 et M4 étant des entiers non nuis, kx et ky étant des entiers supérieurs ou égaux à 1 . Cette étape 23 est décrite plus en détail ci-après. From this watermark W (D0), an enlarged watermark W (D4) is obtained so as to have N4 rows and M4 columns (dimensions D4), step 23, according to an embodiment of the method of the invention. There comes N4³N1 and M4³M1 on the one hand, and N4 = kx.N0 and M4 = ky.M0 on the other hand, N4 and M4 being undesirable integers, kx and ky being integers greater than or equal to 1. This step 23 is described in more detail below.
De préférence, les dimensions N4 et M4 sont légèrement supérieures à N1 et M1. Par exemple, si N1 =rx.N0 et M1 =ry.M0 (rx et ry étant des nombres supérieurs à 1 ), on peut choisir N4 et M4 tels que N4=(E(rx)+1 ).N0 et M4=(E(ry)+1).M0, E(.) correspondant à la fonction « partie entière ». Par exemple si D1 =3840*2160 pixels, on peut avoir D4=4480 * 2520 pixels. Preferably, the dimensions N4 and M4 are slightly greater than N1 and M1. For example, if N1 = rx.N0 and M1 = ry.M0 (rx and ry being numbers greater than 1), we can choose N4 and M4 such that N4 = (E (rx) +1) .N0 and M4 = (E (ry) +1) .M0, E (.) Corresponding to the function “whole part”. For example if D1 = 3840 * 2160 pixels, we can have D4 = 4480 * 2520 pixels.
Si N4>N1 ou M4>M1 , l’étape 23 comprend en outre une réduction des dimensions D4 du tatouage W(D4) de façon que N4=N1 et M4=M1 . If N4> N1 or M4> M1, step 23 further comprises a reduction of the dimensions D4 of the watermark W (D4) so that N4 = N1 and M4 = M1.
Finalement, le tatouage agrandi W(D4) est inséré dans l’image l(D1 ), étape 24, de façon à obtenir l’image tatouée IW(D1 ). L’insertion du tatouage agrandi W(D4) dans l’image l(D1 ) se fait par exemple par addition, c’est-à-dire en additionnant les valeurs des pixels du tatouage W(D4) aux valeurs des pixels correspondant dans l’image l(D1 ). Le tatouage agrandi une fois inséré, se superpose donc à l’image. Finally, the enlarged watermark W (D4) is inserted into the image 1 (D1), step 24, so as to obtain the watermarked image IW (D1). The insertion of the enlarged watermark W (D4) in the image l (D1) is done for example by addition, that is to say by adding the values of the pixels of the watermark W (D4) to the values of the corresponding pixels in image l (D1). The enlarged tattoo once inserted is therefore superimposed on the image.
L’image l(D1) peut être une image fixe ou l’une des images d’une séquence vidéo, plusieurs images (voire l’ensemble des images) de la séquence vidéo pouvant être tatouées. The image l (D1) can be a still image or one of the images of a video sequence, several images (or even all of the images) of the video sequence being able to be watermarked.
En variante, l’image peut être une composante couleur, telle que la luminance ou une composante de chrominance. Chaque composante couleur est formée d’éléments, un élément correspondant à la composante couleur d’un pixel. La figure 3 illustre schématiquement les changements de dimensions mis en œuvre au cours des différentes étapes. On considère pour cette figure, à des fins de simplification, que la première image l(D1) est formée de 4*4 pixels. A l’étape E21 , la deuxième image l(D0) à la deuxième dimension D0, dont la valeur est égale 2*2 pixels, est obtenu à partir de la première image l(D1 ). Alternatively, the image can be a color component, such as luminance or a chrominance component. Each color component is made up of elements, one element corresponding to the color component of a pixel. FIG. 3 schematically illustrates the changes in dimensions implemented during the various stages. For this figure, it is considered, for the sake of simplification, that the first image 1 (D1) is formed of 4 * 4 pixels. In step E21, the second image l (D0) at the second dimension D0, the value of which is equal to 2 * 2 pixels, is obtained from the first image l (D1).
Le tatouage W(D0) formée de 2*2 pixels est généré à partir de cette image l(D0), étape E22. Puis le tatouage est agrandi aux dimensions D4. Si N4>N1 ou M4>M1 , l’étape 23 comprend en outre, comme illustré sur la figure 3, une réduction des dimensions de façon à avoir N4=N1 et M4=M1 . The watermark W (D0) formed of 2 * 2 pixels is generated from this image I (D0), step E22. Then the tattoo is enlarged to the dimensions D4. If N4> N1 or M4> M1, step 23 further comprises, as illustrated in FIG. 3, a reduction in the dimensions so as to have N4 = N1 and M4 = M1.
Enfin, le tatouage W(D1) est inséré dans l’image l(D1). On obtient alors l’image tatouée IW(D1 ) formé de 4*4 pixels, étape 24. Finally, the watermark W (D1) is inserted in the image l (D1). We then obtain the watermarked image IW (D1) formed of 4 * 4 pixels, step 24.
La figure 4 illustre plus en détail l’étape de redimensionnement du tatouage, E23. Le redimensionnement s’effectue en deux temps. On considère un élément ayant la valeur v appartenant au tatouage à la deuxième dimension W(D0,v), comme illustré sur le figure 5. En utilisant une méthode d’agrandissement connue par exemple la méthode d’interpolation dite du Plus Proche Voisin ou PPV (en anglais : "Nearest Neighbour interpolation"), avec un facteur d’agrandissement entier sx pour les lignes et sy les colonnes, on obtient un bloc V de sx*sy éléments v, à l’étape E230. Par exemple, à des fins de simplification, on considère ici un facteur d’agrandissement tel que sx=sy=3, de façon que le bloc résultant comprend 3*3 éléments, soit neuf éléments en tout comme illustré sur la figure 6. On obtient le tatouage agrandi W(D4,V) (information intermédiaire). FIG. 4 illustrates in more detail the step of resizing the watermark, E23. The resizing is done in two stages. We consider an element having the value v belonging to the watermark in the second dimension W (D0, v), as illustrated in FIG. 5. Using a known magnification method for example the so-called Closest Neighbor interpolation method or PPV (in English: “Nearest Neighbor interpolation”), with an integer enlargement factor sx for the rows and sy the columns, we obtain a block V of sx * sy elements v, at step E230. For example, for the sake of simplification, we consider here a magnification factor such that sx = sy = 3, so that the resulting block comprises 3 * 3 elements, that is to say nine elements in all as illustrated in FIG. 6. obtains the enlarged watermark W (D4, V) (intermediate information).
Puis pour au moins un bloc V du tatouage agrandi, un bruit b est alors généré avec autant de symboles b[i] que d’éléments dans le bloc V (i étant un entier tel que 1<i£(sx*sy)). Au moins l’un de ces symboles b[i] est différent de zéro. Le bruit et en particulier la distribution du bruit, est généré de façon que le résultat d’une fonction prédéterminée appliquée aux symboles b[i] soit égal à une même valeur choisie pour le bloc considéré, quelles que soient les valeurs prises par ces symboles b[i]. Then for at least one block V of the enlarged watermark, a noise b is then generated with as many symbols b [i] as there are elements in the block V (i being an integer such as 1 <i £ (sx * sy)) . At least one of these symbols b [i] is different from zero. The noise and in particular the distribution of the noise, is generated so that the result of a predetermined function applied to the symbols b [i] is equal to the same value chosen for the block considered, whatever the values taken by these symbols. bi].
Dans l’exemple décrit, la fonction prédéterminée est une mesure de tendance centrale (appliquée aux symboles b[i]), ici la moyenne des symboles b[i] ou, en variante, la médiane des symboles b[i]. In the example described, the predetermined function is a measure of central tendency (applied to the symbols b [i]), here the average of the symbols b [i] or, alternatively, the median of the symbols b [i].
Par exemple, les valeurs prises par les symboles peuvent être comprise entre -50 et 50, soit dans l’intervalle [-50 ; 50] Par exemple, la distribution du bruit peut être une distribution gaussienne. For example, the values taken by the symbols can be between -50 and 50, that is to say in the interval [-50; 50] For example, the noise distribution can be a Gaussian distribution.
De préférence, ladite valeur résultante est choisie de façon que l’énergie du tatouage agrandi ne dépasse pas un seuil prédéterminé relatif à l’énergie de l’image hôte. Dans la suite de la description, il est considéré sauf indication contraire que cette valeur choisie est nulle. Dans ce cas notamment, la fonction prédéterminée (appliquée aux symboles b[i]) peut être la somme des symboles b[i]. Preferably, said resulting value is chosen so that the energy of the enlarged watermark does not exceed a predetermined threshold relating to the energy of the host image. In the remainder of the description, it is considered, unless otherwise indicated, that this chosen value is zero. In this case in particular, the predetermined function (applied to the symbols b [i]) can be the sum of the symbols b [i].
De préférence, le bruit est ajouté à l’ensemble des blocs du tatouage, de façon que l’image tatouée ait une meilleure qualité visuelle. Les blocs sont alors traités successivement selon un ordre de traitement prédéterminé. Preferably, the noise is added to all the blocks of the watermark, so that the watermarked image has a better visual quality. The blocks are then processed successively according to a predetermined processing order.
Le bruit peut être produit à l’aide d’un générateur de nombres aléatoires ou pseudo-aléatoires («random or pseudorandom numbers generator » (P)RNG en anglais). Les générateurs pseudo-aléatoires produisent une séquence de bits mélangés qui dépend d’une graine initiale (« seed » en anglais). Celle-ci doit être initialisée avec une valeur différente à chaque utilisation. Cette valeur initiale peut être par exemple l’heure du système utilisé, en millisecondes. Chaque exécution du programme utilisera une graine différente, ce qui produira une séquence aléatoire différente. A l’inverse, la réutilisation de la même graine aboutit à la même séquence de bits pseudo-aléatoire. Les générateurs aléatoires produisent des séquences de bits de façon complètement aléatoire, les bits étant choisis indépendamment et uniformément au hasard. Chaque séquence de bits issue d’une nouvelle génération est donc différente des précédentes. The noise can be produced using a random or pseudorandom numbers generator (P) RNG. Pseudo-random generators produce a sequence of mixed bits that depend on an initial seed. This must be initialized with a different value each time it is used. This initial value can be for example the time of the system used, in milliseconds. Each run of the program will use a different seed, resulting in a different random sequence. Conversely, reusing the same seed results in the same pseudo-random bit sequence. Random generators produce sequences of bits in a completely random fashion, the bits being chosen independently and uniformly at random. Each sequence of bits from a new generation is therefore different from the previous ones.
De préférence, selon un mode de mise en oeuvre de l’invention, si la séquence de bruit comporte p symboles (p est un entier supérieur à 1 , qui est égale dans cet exemple à sx*sy), seuls p1 symboles avec p1 <p (p1 étant un entier supérieur ou égal à 1 ) sont générés à l’aide du générateur décrit ci-dessus. Les p2 symboles restants (p2 étant un entier supérieur ou égal à 1 , avec p2<p) sont déterminés ou calculés de façon que le résultat de la fonction prédéterminée appliquée aux p symboles soit égal à la valeur choisie pour le bloc considéré. Il vient p1 +p2=p. Par exemple, si p=9, p1 peut être choisi égal à 7 et p2 égal à 2. Preferably, according to one embodiment of the invention, if the noise sequence comprises p symbols (p is an integer greater than 1, which is equal in this example to sx * sy), only p1 symbols with p1 < p (p1 being an integer greater than or equal to 1) are generated using the generator described above. The remaining p2 symbols (p2 being an integer greater than or equal to 1, with p2 <p) are determined or calculated so that the result of the predetermined function applied to the p symbols is equal to the value chosen for the block considered. It comes p1 + p2 = p. For example, if p = 9, p1 can be chosen equal to 7 and p2 equal to 2.
La fonction prédéterminée comprend de préférence une addition, ; comme déjà indiqué, la fonction prédéterminée est par exemple une mesure de tendance centrale (telle qu’une moyenne ou une médiane), ou, en variante, une variance, cette liste n’étant pas limitative. Dans ce cas, la valeur choisie correspond donc à une somme, résultant de l’addition des symboles b[i]. The predetermined function preferably comprises an addition,; as already indicated, the predetermined function is for example a measure of central tendency (such as an average or a median), or, alternatively, a variance, this list not being limiting. In this case, the chosen value therefore corresponds to a sum, resulting from the addition of the symbols b [i].
Si la valeur choisie est égale à zéro, dans ce cas, si la fonction appliquée est la moyenne, alors la moyenne (et donc la somme) des valeurs prises par les composantes du bruit pour le bloc considéré est nulle. La moyenne des composantes du bruit pour toute l’image est par conséquent nulle également. If the value chosen is equal to zero, in this case, if the applied function is the average, then the average (and therefore the sum) of the values taken by the noise components for the block considered is zero. The average of the noise components for the whole image is therefore also zero.
Les composantes du bruit sont respectivement ajoutées à chaque élément du bloc V de façon à obtenir le tatouage agrandi et bruité W(D4,V,b) tel qu’illustré sur la figure 7. Si D4=D1 , l’information peut être insérée dans l’image à tatouer l(D1 ). Si D4>D1 , l’information doit être réduite avant d’être insérée dans l’image. Les inventeurs ont noté que le fait de passer par des dimensions D4 supérieures à celles de l’image D1 , puis de réduire ces dernières avant l’insertion du tatouage, rendait l’impact visuel du tatouage sur l’image tatouée, plus acceptable visuellement car homogène. The noise components are respectively added to each element of block V so as to obtain the enlarged and noisy watermark W (D4, V, b) as illustrated in figure 7. If D4 = D1, the information can be inserted. in the tattoo image l (D1). If D4> D1, the information must be reduced before being inserted into the image. The inventors noted that the fact of going through dimensions D4 greater than those of the image D1, then of reducing the latter before the insertion of the tattoo, made the visual impact of the tattoo on the tattooed image, more visually acceptable. because homogeneous.
D’un bloc à l’autre et d’une image à l’autre, les composantes du bruit peuvent prendre des valeurs différentes. Cela est possible en changeant de générateur de bruit ou la graine initiale comme expliqué ci-avant. Ainsi à partir d’un même tatouage initial aux dimensions D0, il est possible de générer plusieurs tatouages à insérer dans différentes images constituant une séquence vidéo. L’information de tatouage varie donc au cours du temps, les rendant ainsi très difficilement détectable, car ne suivant pas un motif régulier. Par contre, l’énergie du tatouage n’a pas été réduite car les valeurs initiales des éléments n’ont en moyenne pas été altérées. From block to block and from frame to frame, the noise components can take on different values. This is possible by changing the noise generator or the initial seed as explained above. Thus from the same initial tattoo with dimensions D0, it is possible to generate several tattoos to be inserted into different images constituting a video sequence. The tattoo information therefore varies over time, making them very difficult to detect because they do not follow a regular pattern. On the other hand, the energy of the watermark was not reduced because the initial values of the elements were on average not altered.
L’invention porte également sur une image tatouée selon un mode de mise en œuvre décrit ci-avant. The invention also relates to a watermarked image according to an embodiment described above.
La figure 8 représente un exemple de rendu pour un tatouage W(D4,V) formé de quatre éléments après agrandissement et le tatouage agrandi obtenu W(D4,V,b), après insertion du bruit de l’étape E231 . Dans cet exemple, le bruit généré suit une loi normale. On note que la transition entre les éléments a disparu après l’ajout du bruit, limitant ainsi les apparitions d’aplats adjacents dans l’image tatouée. FIG. 8 represents an example of rendering for a watermark W (D4, V) formed of four elements after enlargement and the enlarged watermark obtained W (D4, V, b), after insertion of the noise of step E231. In this example, the noise generated follows a normal law. Note that the transition between the elements has disappeared after the addition of noise, thus limiting the appearance of adjacent solids in the watermarked image.
La figure 9 représente un mode de mise en œuvre d’une extraction d’un tatouage d’une image tatouée selon l’invention, étape E14. On considère qu’un changement d’échelle a été réalisé sur l’image tatouée considérée IW(D2,V,b), l’image tatouée dont on doit extraire le tatouage, ayant de nouvelles dimensions D2, soit N2 lignes et M2 colonnes, N2 et M2 étant des entiers positifs non nuis. A l’étape E201 , on cherche à ramener la valeur des dimensions de l’image tatouée IW(D2,V,b) aux valeurs des dimensions D0. En effet, c’est dans ces dimensions que le tatouage peut être extrait. FIG. 9 represents an embodiment of an extraction of a watermark from a watermarked image according to the invention, step E14. It is considered that a change of scale has been carried out on the watermarked image considered IW (D2, V, b), the watermarked image from which the watermark must be extracted, having new dimensions D2, i.e. N2 rows and M2 columns , N2 and M2 being positive non-harmful integers. In step E201, an attempt is made to reduce the value of the dimensions of the watermarked image IW (D2, V, b) to the values of the dimensions D0. Indeed, it is in these dimensions that the tattoo can be extracted.
Si D2<D0, l’image tatouée IW(D2,V,b) est agrandie à la valeur de la deuxième dimension D0, par exemple à l’aide de la méthode d’interpolation dite du Plus Proche Voisin. On obtient alors une image tatouée redimensionnée IW(D0,v,b). Le changement d’échelle qui a été réalisé sur l’image tatouée pour amener ses dimensions à des valeurs inférieures aux dimensions D0 ont fortement dégradés la qualité visuelle de l’image, D0 ayant été de préférence choisi pour correspondre à une définition standard. If D2 <D0, the watermarked image IW (D2, V, b) is enlarged to the value of the second dimension D0, for example using the so-called Closest Neighbor interpolation method. We then obtain a scaled watermarked image IW (D0, v, b). The change of scale which was carried out on the watermarked image to bring its dimensions to values less than the D0 dimensions strongly degraded the visual quality of the image, D0 having been preferably chosen to correspond to a standard definition.
Si D2>D0, et N2¹nx.N0 ou M2¹ny.M0, l’image tatouée IW(D2,V,b) est dans un premier temps agrandie à des dimensions D3 (N3 lignes et M3 colonnes, N3 et M3 étant des entiers supérieurs à 1 ). Ces dimensions ont donc des valeurs supérieures aux valeurs des dimensions D2, et de préférence les plus proches, de façon que N3=nx.N0 et M3=ny.M0 (nx et ny étant des entiers supérieurs à 1 ). Cet agrandissement peut être par exemple réalisé à l’aide d’un algorithme bilinéaire. Ainsi si les valeurs des nouvelles dimensions sont D2= 960*800 pixels, celles des deuxièmes dimensions D0=640*360 pixels, alors l’image tatouée sera agrandie aux dimensions D3 ayant pour valeurs 1920*1080 pixels. If D2> D0, and N2¹nx.N0 or M2¹ny.M0, the watermarked image IW (D2, V, b) is initially enlarged to dimensions D3 (N3 rows and M3 columns, N3 and M3 being higher integers to 1). These dimensions therefore have values greater than the values of the dimensions D2, and preferably the closest, so that N3 = nx.N0 and M3 = ny.M0 (nx and ny being integers greater than 1). This enlargement can for example be carried out using a bilinear algorithm. Thus if the values of the new dimensions are D2 = 960 * 800 pixels, those of the second dimensions D0 = 640 * 360 pixels, then the watermarked image will be enlarged to the dimensions D3 having 1920 * 1080 pixels as values.
Si D2>D0 et N2=nx.N0 et N2=ny.M0, la dimension de l’image tatouée IW(D2,V,b) n’est pas agrandie. Les dimensions D3 correspondent aux dimensions D2. If D2> D0 and N2 = nx.N0 and N2 = ny.M0, the dimension of the watermarked image IW (D2, V, b) is not enlarged. Dimensions D3 correspond to dimensions D2.
Puis dans un second temps, une fois les dimensions de l’image tatouée ramenées à des multiples des dimensions D0, ces dimensions D3 de l’image tatouées peuvent être réduites aux dimensions D0 à l’aide de la fonction prédéterminée. Cette étape va permettre l’extraction du tatouage aux dimensions D0, dans le but notamment de l’analyser, étape E201. Pour obtenir la valeur du nouvel élément v, la fonction prédéterminée qui a été utilisée lors de l’insertion du tatouage à l’étape E 10, est appliquée sur les valeurs des éléments de chaque bloc V de l’image tatouée aux dimensions égales à D3. Par exemple, la fonction prédéterminée peut comprendre une addition de termes, comme la moyenne. La valeur d’un pixel du tatouage après réduction, est dans ce cas une somme moyennée des valeurs des pixels du bloc V correspondant du tatouage aux dimensions D3. Ces valeurs de pixels du bloc V incluent les valeurs des composantes de bruits qui ont été ajoutées lors de l’insertion du tatouage. La somme résultant de la moyenne de ces composantes de bruit va être proche, voire égale, à la valeur choisie, par exemple zéro. Dans ce cas la valeur du pixel du tatouage après réduction est alors proche d’une somme moyennée des valeurs des pixels du bloc V avant l’insertion des composantes du bruit. Elle lui est égale si les transformations subies par l’image tatouée n’ont pas eu d’impact sur les valeurs des composantes de bruit ajoutées à l’étape E10. Then secondly, once the dimensions of the watermarked image have been reduced to multiples of the dimensions D0, these dimensions D3 of the watermarked image can be reduced to the dimensions D0 using the predetermined function. This step will allow the extraction of the watermark with dimensions D0, in particular with the aim of analyzing it, step E201. To obtain the value of the new element v, the predetermined function which was used during the insertion of the watermark in step E 10, is applied to the values of the elements of each block V of the watermarked image with dimensions equal to D3. For example, the predetermined function may include an addition of terms, such as the mean. The value of a pixel of the watermark after reduction is in this case an average sum of the values of the pixels of the block V corresponding to the watermark with dimensions D3. These pixel values of the V block include the values of the noise components that were added during the insertion. tattoo. The sum resulting from the average of these noise components will be close to, or even equal, to the chosen value, for example zero. In this case the value of the pixel of the watermark after reduction is then close to an average sum of the values of the pixels of the block V before the insertion of the noise components. It is equal to it if the transformations undergone by the watermarked image have not had an impact on the values of the noise components added at step E10.
Si la valeur choisie à laquelle est égale le résultat de l’application de la fonction prédéterminée aux valeurs des éléments du bloc est non nulle, l’étape E201 peut également comprendre pour chaque bloc traité, une soustraction de ladite valeur choisie à la valeur de l’élément obtenue après la réduction des dimensions. On obtient alors une valeur finale de cet élément v correspondant à une somme moyennée, des valeurs des pixels du bloc V avant l’insertion des composantes du bruit. If the chosen value to which is equal the result of the application of the predetermined function to the values of the elements of the block is not zero, step E201 can also comprise for each processed block, a subtraction of said chosen value from the value of the element obtained after the reduction of dimensions. We then obtain a final value of this element v corresponding to an averaged sum of the values of the pixels of the block V before the insertion of the noise components.
L’application de la fonction prédéterminée, pour réduire des dimensions, permet de fortement diminuer (voir d’annuler) le bruit qui avait été ajouté lors de l’insertion du tatouage. On peut alors retrouver au moment l’extraction, le tatouage W(D0), avec pour chacun de ses éléments, des valeurs proches de celles prises à la sortie de l’étape E22. Il est alors possible de l’analyser. The application of the predetermined function, to reduce dimensions, makes it possible to greatly reduce (or even cancel) the noise that had been added during the insertion of the watermark. At the time of extraction, we can then find the watermark W (D0), with for each of its elements, values close to those taken at the end of step E22. It is then possible to analyze it.
Lorsque tous les blocs de l’image à traiter l’ont été selon un ordre prédéterminé, on obtient une image tatouée à la deuxième dimension D0, le bruit qui avait été ajouté lors de l’insertion du tatouage ayant été fortement diminué par l’application de la fonction prédéterminée lors du passage des dimensions D3 aux dimensions D0. When all the blocks of the image to be processed have been processed in a predetermined order, a watermarked image in the second dimension D0 is obtained, the noise which had been added during the insertion of the watermark having been greatly reduced by the application of the predetermined function when changing from dimensions D3 to dimensions D0.
Il est alors possible d’extraire le tatouage selon une méthode connue décrite par exemple dans le manuel Digital watermarking mentionné ci-avant, étape E202 puis de l’analyser étape E14. It is then possible to extract the watermark according to a known method described for example in the Digital watermarking manual mentioned above, step E202, then to analyze step E14.
La figure 10 illustre une manière particulière, parmi plusieurs possibles, de réaliser un dispositif DIS configuré pour mettre en oeuvre un mode de réalisation d’un procédé d’assistance selon l’invention. Le dispositif DIS comprend une mémoire vive, par exemple une mémoire RAM, une unité de traitement mR équipée par exemple d'un processeur, et pilotée par un programme d'ordinateur stocké dans une mémoire morte, par exemple une mémoire ROM ou un disque dur. A l'initialisation, les instructions de code du programme d'ordinateur sont par exemple chargées dans la mémoire vive RAM avant d'être exécutées par le processeur de l'unité de traitement mR. La figure 10 illustre seulement une manière particulière, parmi plusieurs possibles, de réaliser le dispositif DIS afin qu’il effectue certaines étapes du procédé selon l’invention. En effet, ces étapes peuvent être réalisées indifféremment sur une machine de calcul reprogrammable (un ordinateur PC, un processeur DSP ou un microcontrôleur) exécutant un programme comprenant une séquence d’instructions, ou sur une machine de calcul dédiée (par exemple un ensemble de portes logiques comme un FPGA ou un ASIC, ou tout autre module matériel). FIG. 10 illustrates a particular way, among several possible, of producing a DIS device configured to implement an embodiment of an assistance method according to the invention. The device DIS comprises a random access memory, for example a RAM memory, an mR processing unit equipped for example with a processor, and controlled by a computer program stored in a read only memory, for example a ROM memory or a hard disk . On initialization, the code instructions of the computer program are for example loaded into the random access memory RAM before being executed by the processor of the processing unit mR. FIG. 10 illustrates only one particular way, among several possible, of producing the device DIS so that it performs certain steps of the method according to the invention. Indeed, these steps can be performed either on a reprogrammable computing machine (a PC computer, a DSP processor or a microcontroller) executing a program comprising a sequence of instructions, or on a dedicated computing machine (for example a set of logic gates such as an FPGA or ASIC, or any other hardware module).
Dans le cas où le moyen de traitement est réalisé avec une machine de calcul reprogrammable, le programme correspondant (c'est-à-dire la séquence d’instructions) pourra être stocké dans un médium de stockage amovible ou non, ce médium de stockage étant lisible partiellement ou totalement par un ordinateur ou un processeur. In the case where the processing means is produced with a reprogrammable computing machine, the corresponding program (that is to say the sequence of instructions) may be stored in a storage medium, which may or may not be removable, this storage medium being partially or fully readable by a computer or processor.
L’invention porte donc également sur le programme d’ordinateur comportant des instructions pour la mise en œuvre du procédé selon l’un des modes de mise en œuvre ci-avant, lorsque ledit programme est exécuté par un processeur. The invention therefore also relates to the computer program comprising instructions for implementing the method according to one of the above implementation modes, when said program is executed by a processor.
Il va de soi que les modes de mise en œuvre et de réalisation qui ont été décrits ci-dessus ont été donnés à titre purement indicatif et nullement limitatif, et que de nombreuses modifications peuvent être facilement apportées par l’homme de l’art sans pour autant sortir du cadre de l’invention. It goes without saying that the embodiments and embodiments which have been described above have been given purely as an indication and in no way limiting, and that numerous modifications can be easily made by those skilled in the art without however departing from the scope of the invention.

Claims

Revendications Claims
1. Procédé d’insertion d’une information dans une première image comprenant N1 lignes x M1 colonnes d’éléments, N1 et M1 étant des entiers non nuis, ledit procédé comprenant les étapes suivantes : a) une obtention (E21 ) à partir de la première image, d’une deuxième image comprenant NO lignes x MO colonnes d’éléments, NO et MO étant des entiers non-nuls tels que N0£N1 et M0£M1 , b) une génération (E22), à partir de la deuxième image, d’une information initiale com prenant NO lignes x MO colonnes d’éléments, c) une obtention à partir de l’information initiale générée, d’une information intermédiaire comprenant N4 lignes x M4 colonnes d’éléments, de façon que N4³N1 et M4³M1 d’une part, et N4=kx.N0 et M4=ky.M0 d’autre part, N4 et M4 étant des entiers non nuis, kx et ky étant des entiers supérieurs ou égaux à 1 , lesdits éléments de l’information intermé diaire étant organisés en blocs, d) une obtention (E23) de ladite information à insérer à partir de l’information intermé diaire, comprenant pour au moins un bloc de l’information intermédiaire, 1. Method for inserting information into a first image comprising N1 rows x M1 columns of elements, N1 and M1 being non-harmful integers, said method comprising the following steps: a) obtaining (E21) from the first image, of a second image comprising NO rows x MO columns of elements, NO and MO being non-zero integers such as N0 £ N1 and M0 £ M1, b) a generation (E22), from the second image, of an initial information comprising NO lines x MO columns of elements, c) an obtaining from the initial information generated, of an intermediate information comprising N4 lines x M4 columns of elements, so that N4³N1 and M4³M1 on the one hand, and N4 = kx.N0 and M4 = ky.M0 on the other hand, N4 and M4 being undamaged integers, kx and ky being integers greater than or equal to 1, said elements of l 'intermediate information being organized in blocks, d) obtaining (E23) said information to be inserted from the intermediate information, comprising ant for at least one block of intermediate information,
- une génération d’une séquence de symboles représentative d’un bruit, comprenant au tant de symboles que d’éléments compris dans ledit bloc, au moins l’un des symboles étant non nul, de façon que le résultat d’une fonction prédéterminée appliquée auxdits symboles soit égal à une valeur choisie, a generation of a sequence of symbols representative of a noise, comprising both symbols and elements included in said block, at least one of the symbols being non-zero, so that the result of a predetermined function applied to said symbols is equal to a chosen value,
- un ajout de chaque symbole à l’élément correspondant dudit bloc, et e) une insertion (E24) de ladite information obtenue dans la première image. - an addition of each symbol to the corresponding element of said block, and e) an insertion (E24) of said information obtained in the first image.
2. Procédé selon la revendication 1 , dans lequel la fonction prédéterminée est une me sure de tendance centrale. 2. The method of claim 1, wherein the predetermined function is a measure of central tendency.
3. Procédé selon la revendication 1 , dans lequel la fonction prédéterminée est la mé diane. 3. The method of claim 1, wherein the predetermined function is the mean.
4. Procédé selon la revendication 1 , dans lequel la fonction prédéterminée est la moyenne. 4. The method of claim 1, wherein the predetermined function is the mean.
5. Procédé selon la revendication 1 , dans lequel ladite valeur choisie est égale à zéro, kx ou ky étant supérieur ou égal à 2. 5. The method of claim 1, wherein said selected value is equal to zero, kx or ky being greater than or equal to 2.
6. Procédé selon la revendication 1 , dans lequel l’information intermédiaire est obtenue à partir de l’information initiale au moyen d’une méthode d’agrandissement. 6. The method of claim 1, wherein the intermediate information is obtained from the initial information by means of a magnification method.
7. Procédé selon la revendication 1 , dans lequel si N4>N1 ou si M4>M1 , l’obtention de l’information à insérer comprend en outre, suite à l’ajout de chaque symbole à l’élément correspondant dudit bloc, une réduction de la taille de l’information intermédiaire de façon à obtenir respectivement N4=N1 ou M4=M1. 7. The method of claim 1, wherein if N4> N1 or if M4> M1, obtaining the information to be inserted further comprises, following the addition of each symbol to the corresponding element of said block, a reduction of the size of the intermediate information so as to obtain respectively N4 = N1 or M4 = M1.
8. Procédé selon la revendication 1 , dans lequel ladite séquence de symboles représen tative du bruit comprend p symboles, tel que p1 symboles sont générés aléatoirement ou pseudo-aléatoirement et p2 symboles sont calculés de façon que le résultat de la fonction prédéterminée appliquée aux p symboles, soit égal à ladite valeur choisie, p, p1 et p2 étant des entiers tels que p=p1 +p2. 8. The method of claim 1, wherein said sequence of symbols representative of the noise comprises p symbols, such that p1 symbols are generated randomly or pseudo-randomly and p2 symbols are calculated so that the result of the predetermined function applied to the p symbols, or equal to said chosen value, p, p1 and p2 being integers such that p = p1 + p2.
9. Procédé d’extraction d’une information formée d’une pluralité éléments comprenant NO lignes et MO colonnes, insérée dans une image comprenant N2 lignes x M2 colonnes d’éléments à l’aide du procédé d’insertion selon l’une des revendications 1 à 8, NO, MO, N2 et M2 étant des entiers non nuis, tels quel N2>N0 et M2>M0, ledit procédé d’insertion comprenant les étapes suivantes : f) une obtention à partir de ladite image, d’une nouvelle image comprenant N3 lignes et M3 colonnes d’éléments, avec N3³N2 et M3³M2 d’une part, et N3=nx.N0 et M3=ny.M0 d’autre part, N3 et M3 étant des entiers positifs non nuis, nx et ny étant des entiers su périeurs à 1 , les éléments de ladite nouvelle image étant organisés en blocs, g) une obtention (E201 ) d’une image réduite à partir de la nouvelle image, l’image réduite comprenant NO lignes x MO colonnes d’éléments, chaque élément de l’image réduite étant obtenu à partir des éléments d’un bloc correspondant dans la nouvelle image, et pour chaque élément de l’image réduite à obtenir : 9. A method of extracting information formed from a plurality of elements comprising NO rows and MO columns, inserted into an image comprising N2 rows x M2 columns of elements using the insertion method according to one of the following. claims 1 to 8, NO, MO, N2 and M2 being non-harmful integers, such as N2> N0 and M2> M0, said method of insertion comprising the following steps: f) obtaining from said image, of a new image comprising N3 rows and M3 columns of elements, with N3³N2 and M3³M2 on the one hand, and N3 = nx.N0 and M3 = ny.M0 on the other hand, N3 and M3 being undamaged positive integers, nx and ny being integers greater than 1, the elements of said new image being organized in blocks, g) obtaining (E201) a reduced image from the new image, the reduced image comprising NO rows x MO columns elements, each element of the reduced image being obtained from the elements of a corresponding block in the new image, and for each element of the reduced image to obtain:
- une détermination de la valeur de l’élément considéré en appliquant ladite fonction pré déterminée aux valeurs des éléments du bloc de la nouvelle image correspondant audit élément, la valeur dudit élément considéré correspondant au résultat de l’application de la fonction, et h) une extraction (E202) de l’information à partir de l’image réduite. a determination of the value of the element considered by applying said predetermined function to the values of the elements of the block of the new image corresponding to said element, the value of said element considered corresponding to the result of the application of the function, and h) an extraction (E202) of the information from the reduced image.
10. Dispositif d’insertion d’une information dans une première image comprenant N1 lignes x M1 colonnes d’éléments, N1 et M1 étant des entiers non nuis, le dispositif étant configuré pour mettre en œuvre les étapes suivantes : i) une obtention à partir de la première image, d’une deuxième image comprenant NO lignes x MO colonnes d’éléments, NO et MO étant des entiers non-nuls tels que N0£N1 et M0£M1 , j) une génération, à partir de la deuxième image, d’une information initiale comprenant NO lignes x MO colonnes d’éléments, k) une obtention à partir de l’information initiale générée, d’une information intermédiaire comprenant N4 lignes x M4 colonnes d’éléments, de façon que N4³N1 et M4³M1 d’une part, et N4=kx.N0 et M4=ky.M0 d’autre part, N4 et M4 étant des entiers non nuis, kx et ky étant des entiers supérieurs ou égaux à 1 , lesdits éléments de l’information intermé diaire étant organisés en blocs, 10. Device for inserting information into a first image comprising N1 lines x M1 columns of elements, N1 and M1 being undamaged integers, the device being configured to implement the following steps: i) obtaining at from the first image, from a second image comprising NO rows x MO columns of elements, NO and MO being non-zero integers such as N0 £ N1 and M0 £ M1, j) one generation, from the second image, of an initial information comprising NO lines x MO columns of elements, k) an obtaining from the initial information generated, of an intermediate information comprising N4 lines x M4 columns of elements, so that N4³N1 and M4³M1 on the one hand, and N4 = kx.N0 and M4 = ky.M0 on the other hand, N4 and M4 being non-harmful integers, kx and ky being integers greater than or equal to 1, said information elements intermediary being organized in blocks,
L) une obtention de ladite information à insérer à partir de l’information intermédiaire, com prenant pour au moins un bloc de l’information intermédiaire L) obtaining said information to be inserted from the intermediate information, including at least one block of the intermediate information
- une génération d’une séquence de symboles représentative d’un bruit, comprenant au tant de symboles que d’éléments compris dans ledit bloc, au moins l’un des symboles étant non nul, de façon que le résultat d’une fonction prédéterminée appliquée auxdits symboles soit égal à une valeur choisie, a generation of a sequence of symbols representative of a noise, comprising both symbols and elements included in said block, at least one of the symbols being non-zero, so that the result of a predetermined function applied to said symbols is equal to a chosen value,
- un ajout de chaque symbole à l’élément correspondant dudit bloc, et m) une insertion de ladite information obtenue dans la première image. - an addition of each symbol to the corresponding element of said block, and m) an insertion of said information obtained in the first image.
11 . Dispositif d’extraction d’une information formée d’une pluralité éléments comprenant NO lignes et MO colonnes, insérée dans une image comprenant N2 lignes x M2 colonnes d’éléments à l’aide du procédé d’insertion selon l’une des revendications 1 à 8, NO, MO, N2 et M2 étant des entiers non nuis, tels quel N2>N0 et M2>M0, le dispositif étant configuré pour mettre en œuvre les étapes suivantes : n) une obtention à partir de ladite image, d’une nouvelle image comprenant N3 lignes et M3 colonnes d’éléments, avec N3³N2 et M3³M2 d’une part, et N3=nx.N0 et M3=ny.M0 d’autre part, N3 et M3 étant des entiers positifs non nuis, nx et ny étant des entiers su périeurs à 1 , les éléments de ladite nouvelle image étant organisés en blocs, o) une obtention d’une image réduite à partir de la nouvelle image, l’image réduite com prenant NO lignes x MO colonnes d’éléments, chaque élément de l’image réduite étant obtenu à partir des éléments d’un bloc correspondant dans la nouvelle image, et pour chaque élément de l’image réduite à obtenir : 11. Device for extracting information formed from a plurality of elements comprising NO rows and MO columns, inserted into an image comprising N2 rows x M2 columns of elements using the insertion method according to one of claims 1 to 8, NO, MO, N2 and M2 being undamaged integers, such as N2> N0 and M2> M0, the device being configured to implement the following steps: n) obtaining from said image, from a new image comprising N3 rows and M3 columns of elements, with N3³N2 and M3³M2 on the one hand, and N3 = nx.N0 and M3 = ny.M0 on the other hand, N3 and M3 being non-harmful positive integers, nx and ny being integers greater than 1, the elements of said new image being organized in blocks, o) obtaining a reduced image from the new image, the reduced image comprising NO rows x MO columns of elements, each element of the reduced image being obtained from the elements of a corresponding block in the new image, and for each element of the reduced image to obtain :
- une détermination de la valeur de l’élément considéré en appliquant ladite fonction pré déterminée aux valeurs des éléments du bloc de la nouvelle image correspondant audit élément, la valeur dudit élément considéré correspondant au résultat de l’application de la fonction, et p) une extraction de l’information à partir de l’image réduite. a determination of the value of the element considered by applying said predetermined function to the values of the elements of the block of the new image corresponding to said element, the value of said element considered corresponding to the result of the application of the function, and p) an extraction of information from the reduced image.
12. Support d’enregistrement lisible par un ordinateur, sur lequel est enregistré un programme d’ordinateur comprenant des instructions de code de programme pour l’exécution des étapes du procédé selon l’une quelconque des revendications 1 à 9. 12. A computer readable recording medium, on which is recorded a computer program comprising program code instructions for carrying out the steps of the method according to any one of claims 1 to 9.
EP20761865.3A 2019-09-06 2020-09-02 Method for inserting information into an image and corresponding device Pending EP4026085A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1909841A FR3100648B1 (en) 2019-09-06 2019-09-06 Method of inserting information into an image and corresponding device
PCT/EP2020/074457 WO2021043817A1 (en) 2019-09-06 2020-09-02 Method for inserting information into an image and corresponding device

Publications (1)

Publication Number Publication Date
EP4026085A1 true EP4026085A1 (en) 2022-07-13

Family

ID=69104619

Family Applications (1)

Application Number Title Priority Date Filing Date
EP20761865.3A Pending EP4026085A1 (en) 2019-09-06 2020-09-02 Method for inserting information into an image and corresponding device

Country Status (4)

Country Link
US (1) US20220292624A1 (en)
EP (1) EP4026085A1 (en)
FR (1) FR3100648B1 (en)
WO (1) WO2021043817A1 (en)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2222348C (en) * 1996-12-25 2002-10-29 International Business Machines Corporation Data hiding method and system using statistical properties

Also Published As

Publication number Publication date
FR3100648A1 (en) 2021-03-12
FR3100648B1 (en) 2021-09-24
US20220292624A1 (en) 2022-09-15
WO2021043817A1 (en) 2021-03-11

Similar Documents

Publication Publication Date Title
Jung et al. A new histogram modification based reversible data hiding algorithm considering the human visual system
Goyal et al. Fast and enhanced algorithm for exemplar based image inpainting
EP1223764B1 (en) Image data processing method
EP2122570B1 (en) System for embedding data
Abdullah et al. Recursive reversible image watermarking using enhancement of difference expansion techniques
TW201339876A (en) Digital watermark embedded and extraction method in spatial domain image
EP4026085A1 (en) Method for inserting information into an image and corresponding device
EP1590766A1 (en) Embedding multiple watermarks
EP1330110B1 (en) Method and system for watermark decoding
Sabeti et al. Steganalysis of pixel-value differencing steganographic method
EP3380983B1 (en) Method for the identification of security processors
EP1416737A1 (en) Method, system and data support for video watermarking, method and system for extracting this watermaking
EP1668632A1 (en) Watermarking of multimedia signals
EP2364489B1 (en) Method and device for embedding a binary sequence in a compressed video stream
Kim et al. A high capacity data hiding method using PVD and LSB
CN110659511A (en) Information hiding method and device for remote sensing image
EP1683104A2 (en) Image-watermarking method and device
FR2786011A1 (en) METHOD OF COMPARISON OF RECORDED IMAGES SHAPED OF PIXELS REPRESENTING EQUIPOTENTIALS OF AT LEAST ONE INTEGRATED CIRCUIT CHIP
EP1679899A1 (en) Method and apparatus for reducing the artefacts in a digital image
EP1289261A1 (en) Method for inserting binary messages into digital images
Lee et al. Adaptive image inpainting algorithm based on POCS and patch stationarity
Lenka et al. Improvement of Exemplar Based Inpainting by Enhancement of Patch Prior
Dabah et al. Crowdfunding as an Innovative Mechanism for Financing Start-Ups–The Ninvesti and TwiizaPlatforms as a Model
Ganguly et al. Disjunctive Edge Map based Image Sterilization for Destruction of Steganograms in Spatial Domain
Tai et al. Digital image watermarking based on VSS in BTC domain

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20220303

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)