EP1683104A2 - Image-watermarking method and device - Google Patents

Image-watermarking method and device

Info

Publication number
EP1683104A2
EP1683104A2 EP04805313A EP04805313A EP1683104A2 EP 1683104 A2 EP1683104 A2 EP 1683104A2 EP 04805313 A EP04805313 A EP 04805313A EP 04805313 A EP04805313 A EP 04805313A EP 1683104 A2 EP1683104 A2 EP 1683104A2
Authority
EP
European Patent Office
Prior art keywords
image
sub
coefficients
bands
component
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.)
Withdrawn
Application number
EP04805313A
Other languages
German (de)
French (fr)
Inventor
Alice Parisis
Philippe Carre
Nathalie Laurent
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.)
Orange SA
Original Assignee
France Telecom SA
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 France Telecom SA filed Critical France Telecom SA
Publication of EP1683104A2 publication Critical patent/EP1683104A2/en
Withdrawn 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
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0052Embedding of the watermark in the frequency domain

Definitions

  • the present invention relates to a method and a device for tattooing a mark in an image comprising at least three components. It also relates to a method and a device for detecting a signature inserted in an image comprising at least three components.
  • the invention is in the field of tattooing, or Watermarking in English terminology, images comprising several components such as for example color images. These tattooing techniques can for example be used for the protection of copyright on a digital image.
  • the mark tattooed in an image must be robust to the various manipulations of the image. These manipulations are for example the compression thereof.
  • the mark tattooed in an image must also be imperceptible in order to preserve the quality of the image.
  • the watermarking of a mark in the image is carried out according to an insertion rule taking into account the relative position of three component vectors.
  • the tattooing of the mark is carried out according to a marking force which can be adapted as a function of the colorimetric or texture characteristics of the image.
  • the inventors of the present invention have noticed that the tattoo as presented in this application can, in certain cases, be visible when it is desired to increase the robustness of the brand. Otherwise, the brand tattoo is not very robust when you want to make the tattoo invisible.
  • the invention aims to solve the drawbacks of the prior art by proposing a method and a device for tattooing a mark in an image which is both invisible and more robust than the state of the art.
  • the invention provides a method of watermarking a mark composed of a plurality of binary information in an image comprising at least three components, characterized in that the method comprises the steps of: - decomposition of at least one component of the image into detail sub-bands in different directions and comprising coefficients, each coefficient being characterized by its position in the detail sub-band to which it belongs and its amplitude, - determination , for each position, of information representative of variations of local amplitudes in different directions from the amplitudes of the coefficients at the position in the different detail sub-bands and of the coefficients close to the position in the different detail sub-bands , - determination of a marking force at each position from information representative of variations in amplitudes l ocals in different directions determined for the position, - formation,
  • the invention relates to a device for watermarking a mark composed of a plurality of binary information in an image comprising at least three components, characterized in that the device comprises: - means for breaking down at least one component of the image in sub-bands of details in different directions and comprising coefficients, each coefficient being characterized by its position in the sub-band of details to which it belongs and its amplitude, - means for determining, for each position, information representative of variations in local amplitudes in different directions from the amplitudes of the coefficients at the position in the different detail sub-bands and of the coefficients close to the position in the different detail sub-bands, - means for determination of a marking force at each position from information representative of variations in am local plitudes in different directions determined for the position, - means for forming, for each position and for each component, a vector whose coordinates are the amplitudes of the coefficients at the position in the different sub-bands of details of the component, - means for selecting, for each position,
  • each component of the image is broken down into detail sub-bands in different directions, the information representative of variations in amplitudes is determined for each component and for each position, the marking force is determined at each position of each component.
  • the determination of the information representative of variations in local amplitudes for each component and for each position is broken down into a squaring of the amplitude of each coefficient of each sub-band of details of each component and the calculation of a median value, from the amplitudes squared of the coefficient and the coefficients close to the coefficient, for each coefficient of each sub-band of details of each component.
  • a squaring of the amplitudes of the coefficients we introduce a notion of energy to the coefficients of the sub-band. They can then be considered as indicators of the evolution of energy in the image.
  • the areas of sub-bands comprising large variations in amplitudes are highlighted while avoiding possible detections of contours breaks.
  • the determination of the marking force at each position of each component is carried out by forming a vector whose coordinates are the median values calculated in each detail sub-band, by grouping the vectors whose coordinates are similar in predetermined classes and by assigning a marking force to each position according to the predetermined class to which the vector of the position.
  • the predetermined classes are the class grouping the vectors representative of areas having no variations and / or the class grouping together the vectors representative of areas of the image comprising predominantly horizontal variations, and / or the class grouping the vectors representative of areas of the image comprising predominantly vertical variations and / or the class grouping together the vectors representative of areas of the image comprising predominantly diagonal variations, and / or the class grouping together the vectors representative of zones of very strongly textured image with no preferred direction.
  • the marking force is also affected as a function of the component of the image and the decomposition is a decomposition into Haar wavelets.
  • the decomposition is a decomposition into Haar wavelets.
  • the Haar wavelet is particularly well suited for texture detection because it does not show edge effects on the image while being simple in its implementation.
  • each component of the image is broken down, according to another decomposition into sub-bands, into sub-bands comprising coefficients, each coefficient being characterized by its position in the sub band to which it belongs and its amplitude and in that the method further comprises a step of reconstructing the image from the coefficients of the sub-bands and of the coefficients whose amplitudes have been modified.
  • the invention also relates to a method for detecting a signature inserted in an image comprising at least three components, characterized in that the method comprises the steps of breaking down at least one component of the image into detail sub-bands in different directions and including coefficients, each coefficient being characterized by its position in the detail sub-band to which it belongs and its amplitude; for determining, for each position, information representative of variations in local amplitudes in different directions from the amplitudes of the coefficients at this position in the different detail sub-bands and from the coefficients close to this position in the different sub-bands details and detection of the signature from at least a part of binary information inserted in a plurality of positions of the image and information representative of the variations of local amplitudes in different directions corresponding to the positions of the binary information.
  • the invention provides a device for detecting a signature inserted in an image comprising at least three components, characterized in that the device comprises means for breaking down at least one component of the image into sub-bands of details in different directions and comprising coefficients, each coefficient being characterized by its position in the detail sub-band to which it belongs and its amplitude; means for determining, for each position, information representative of variations in local amplitudes in different directions from the amplitudes of the coefficients at this position in the different detail sub-bands and coefficients close to this position in the different sub-bands -bands of details and means of detection of the signature from at least a portion of binary information inserted in a plurality of positions of the image and information representative of the variations of local amplitudes in different directions corresponding to the positions binary information.
  • the binary information used for the detection is the binary information included at positions of the image for which the information representative of the variations of local amplitudes in different directions correspond to information representative of the variations d 'predetermined local amplitudes.
  • weights are assigned to at least part of the binary information, the weights being assigned according to the information representative of the amplitude variations at the positions corresponding to the positions of the binary information.
  • the invention also relates to the computer program stored on an information medium, said program comprising instructions making it possible to implement the watermarking and / or detection methods of a signature described above, when they are loaded and executed by a computer system.
  • the invention also relates to an information medium comprising at least one image tattooed according to the tattooing method according to the present invention.
  • Fig. 2 represents an algorithm for determining, for a plurality of positions of the image, information representative of variations in local amplitudes in different directions
  • Fig. 3 represents the algorithm for tattooing a mark in a color image
  • Fig. 4 represents a detailed algorithm of the step of inserting binary information at a position of the lowest resolution level of the image to be tattooed
  • Fig. 5 is an example of a mark created by redundancy of a signature generated by a key in a pseudo-random manner
  • Fig. 6 shows a table comprising different marking forces used by the present invention as a function of the information representative of variations in local amplitudes in different directions
  • Fig. 7 shows the algorithm for detecting a signature inserted in an image according to the watermarking algorithm according to the present invention.
  • Fig. 1 represents a block diagram of a device for tattooing a mark in a color image and / or for detecting a signature inserted in a color image.
  • the device 10 for tattooing a mark in a color image and / or for detecting a signature inserted in a color image according to the present invention is for example a computer.
  • the watermarking device 10 can also be integrated into a mobile telephone handset comprising means for capturing images.
  • the watermarking device 10 comprises a communication bus 101 to which are connected a processor 100, a ROM read-only memory 102, a random access memory RAM 103, a screen 104 and a keyboard 105 serving as a man-machine interface, a hard disk 108, a reader recorder 109 of information on a removable medium such as a compact disc and an interface 106 making it possible to transfer tattooed images according to the present invention to a telecommunications network 150 and / or to receive color images to detect whether a mark has been included in these images.
  • ROM ROM 102 stores the programs implementing the invention.
  • the programs according to the present invention are transferred into the random access memory 103 which then contains the executable code of the algorithms which will be described later with reference to FIGS. 2, 3, 4 and 7.
  • the ROM 102 also includes a table which will be described later with reference to FIG. 6.
  • the processor 100 executes the instructions stored in the RAM
  • the tattooing device 10 comprises a screen 104 and a keyboard 105 making it possible to select images to be tattooed according to the present invention or to modify for example the number of classes used by the present invention to determine the variations of local amplitudes in different directions around of a position of the image or to modify the values of the marking forces included in the table of FIG. 6.
  • Fig. 2 represents an algorithm for determining, for a plurality of positions of the image, information representative of variations in local amplitudes in different directions.
  • the processor 100 of the device 10 for watermarking a mark and / or for detecting a signature reads, from ROM ROM 102, the instructions of the program corresponding to steps E200 to E214 of FIG.
  • the image to be tattooed is a color image made up of pixels and has several components. These components are for example chromatic components such as for example the Red, Green and Blue components. Other color components such as yellow, cyan and magenta can also be used.
  • the image can also be represented in the form of a luminance component and two chromatic components.
  • the processor 100 takes a first component of the color image to be processed and performs in step E201 a transformation of this component of the image. This transformation is a decomposition into wavelets or Discret Wavelet Transform in Anglo-Saxon terminology.
  • the wavelet decomposition is preferably a Haar wavelet decomposition.
  • the Haar wavelet is particularly well suited for the determination of information representative of variations of local amplitudes of an image because it does not show edge effects on the image while being simple in its implementation.
  • the decomposition of an image, more precisely of a component of the image is carried out by applying to the image two digital filters, respectively low pass and high pass which filter the signal in a first direction, for example horizontal. After filtering, the two filtered images are decimated by two. Each decimated image is respectively applied to a low pass filter and a high pass which filter them in a second direction, for example vertical. Each resulting filtered signal is then decimated by two to form four resolution sub-bands.
  • a sub-band includes the low frequency coefficients along the two directions of the image signal.
  • This sub-band is conventionally called the low sub-band of the first level of decomposition.
  • the other three so-called detail sub-bands include the high frequency wavelet coefficients in the respective horizontal, vertical and diagonal directions.
  • Each of these detail sub-bands, constructed from the original image, contains information corresponding to a respectively vertical, horizontal and diagonal orientation of the image, in a given frequency band.
  • the decomposition performed is such that a sub-band of a given resolution is distributed into four sub-bands of lower resolution and therefore has four times more coefficients than each of the sub-bands of immediately lower resolution.
  • To four coefficients at a position (2x, 2y) of a sub-band of given resolution corresponds a coefficient in each sub-band of lower resolution obtained at a position (x, y).
  • a coefficient located at a given position (x, y) in a sub-band correspond coefficients to the same position (x, y) in the other respective sub-bands of the same level of decomposition.
  • coefficients located at a given position (x, y) correspond four other coefficients to a position (2x, 2y) in the low frequency sub-band of higher decomposition level.
  • a position of a sub-band corresponds to a position in the original image in the form of a pixel and / or corresponds a position in a sub-band of a different level of decomposition.
  • the low sub-band of the first level of decomposition is decomposed again according to the same decomposition as that described previously to form a low sub-band of second level of decomposition and three sub -bands of details comprising high frequency wavelet coefficients in the respective horizontal, vertical and diagonal directions.
  • the low sub-band of the lowest decomposition level is used to form a new low sub-band of lower decomposition level and three detail sub-bands comprising high-frequency wavelet coefficients in the respective horizontal directions. , vertical and diagonal.
  • the decomposition is carried out on four levels of decomposition to obtain four sub-bands of fourth level of decomposition.
  • the processor 100 For each sub-band of details of the fourth level of decomposition, the high-frequency wavelet coefficients are stored in the respective horizontal, vertical and diagonal directions.
  • the processor 100 considers in step E202 a first sub-band of details in a direction previously obtained.
  • the processor 100 squares the amplitude of each coefficient of the sub-band considered. This makes it possible to introduce a concept of energy to the coefficients of the sub-band. They can then be considered as indicators of the evolution of energy in the image.
  • the processor 100 determines a median value for each coefficient of the sub-band considered whose amplitude has been previously squared.
  • This median value is for example calculated on a support of size three by three, that is to say that the median value is determined from the amplitudes of the coefficients close to the coefficient for which the determination is made. This median calculation has the effect of highlighting the areas of the detail sub-band in a direction which have large variations, that is to say textured areas.
  • the processor 100 goes to the next step E205 and checks whether all the detail subbands have been processed. If not, the processor 100 goes to step E206 and repeats the loop made up of steps E203 to E206 until the three detail sub-bands are processed. When the three detail sub-bands comprising the high frequency wavelet coefficients in the respective horizontal, vertical and diagonal directions have been processed, the processor 100 goes to the next step E207.
  • step E207 the processor 100 forms, for each position (x, y) of detail sub-bands of the fourth level of decomposition, a vector of dimension three representative of the intensity of the local fluctuations.
  • the vector formed has as coordinates the median value determined previously at position (x, y) for the sub-band of details comprising high frequency wavelet coefficients in the horizontal direction, the median value determined previously at position (x, y) for the detail sub-band comprising high-frequency wavelet coefficients in the vertical direction and the median value determined previously at position (x, y) for the detail sub-band comprising coefficients high frequency wavelets in the diagonal direction.
  • the processor 100 defines in step E208 the classes according to which the vectors formed in the previous step will be classified. For example, five classes are defined.
  • the class denoted class 1 groups together the vectors representative of areas not comprising variations, that is to say the vectors whose coordinates are of small value.
  • Class 2 groups the vectors representative of areas of the image comprising predominantly horizontal variations, that is to say the vectors whose median value coordinate calculated in the sub-band of details comprising high-frequency wavelet coefficients according to the direction horizontal has an important value while the median values calculated in the other detail sub-bands are of low value.
  • Class 3 groups the vectors representative of areas of the image comprising predominantly vertical variations, that is to say the vectors whose median value coordinate calculated in the sub-band of details comprising high-frequency wavelet coefficients according to the direction vertical has an important value, while the median values calculated in the other detail sub-bands are of low value.
  • Class 4 groups the vectors representative of areas of the image comprising predominantly diagonal variations, that is to say the vectors whose median value coordinate calculated in the sub-band of details comprising high frequency wavelet coefficients according to the direction diagonal has an important value while the median values calculated in the other detail sub-bands are of low value.
  • Class 5 groups the vectors representative of very strongly textured areas of the image and without preferred direction, that is to say the vectors which each have their coordinates at a significant value.
  • the number of classes can be reduced.
  • classes 2, 3 and 4 may alternatively be grouped into a single class.
  • the number of classes can also be increased.
  • Other classes grouping the vectors representative of areas of the image comprising variations in two directions can also be formed.
  • the use of five classes is preferred according to the present invention and allows precise detection of the textures included in the image to be processed. Even textures whose direction is mainly diagonal can be detected, although conventionally, the energy associated with these diagonals is lower than those associated with other directions.
  • the processor 100 will thus group the vectors whose coordinates are similar in the five predetermined classes.
  • the method used is for example the dynamic cloud method. Of course, other methods can also be used.
  • the processor 100 determines in step E209 an initial center for each of the classes 1 to 5.
  • the processor 100 takes the zero vector denoted gO as the initial center.
  • the processor 100 forms an initial center gl whose coordinates are (MaximumH, 0, 0) where Maximum H is the maximum median value for the detail sub-band comprising high frequency wavelet coefficients in the horizontal direction.
  • the processor 100 forms an initial center g2 whose coordinates are (0, MaximumV, 0) where MaximumV is the maximum median value for the detail sub-band comprising high frequency wavelet coefficients in the vertical direction.
  • the processor 100 forms an initial center g3 whose coordinates are (0, 0, MaximumD) where MaximumD is the maximum median value for the detail sub-band comprising high frequency wavelet coefficients in the diagonal direction.
  • the processor 100 forms an initial center g4 whose coordinates are (MaximumH, MaximumV, MaximumD).
  • the initial centers defined, the processor 100 goes to the next step E210. At this step, the processor 100 constructs a partition of the image into zones by assigning each vector formed in step E207 to the class of which it is closest to the initial center.
  • step E211 the processor 100 determines a new initial center representative of each area from the vectors which have been assigned respectively to each area. This operation carried out, the processor 100 determines whether the quality of the distribution is improved or not. If so, the processor 100 returns to step E210 and repeats steps E210 to E212 as long as the quality of the distribution is improved. When the quality of the distribution is no longer improved, the processor 100 goes to step E213. In step E213, the processor 100 checks whether all the components of the image have been processed. If not, the processor 100 goes to step E214, takes another component and returns to step E201 to process the new component of the color image. When all the components have been processed, a class is associated with each position (x, y) of each detail sub-band of each component.
  • This class corresponds to a local determination of the texture of the image at a position (x, y). It should be noted here that the segmentation as performed by the algorithm of FIG. 2 aims to complete the areas of the image having textures, regardless of the main direction of the textures included in the image. It should be noted here that, as a variant, only one component can be treated. For example, when the image is formed of a luminance component and of chromatic components, the present algorithm is only carried out on the luminance component.
  • the processor 100 of the watermarking device has determined for each position of the sub-bands of details of the lowest level of resolution of the information representative of the variations of the local amplitudes in different directions of the coefficients of the sub-bands of details from the amplitudes of the coefficients respectively at this position and amplitudes of the coefficients close to this position.
  • the processor 100 also determined from the lowest resolution level different texture zones. From these determined texture zones, it is then possible to determine, for the sub-bands of details of higher resolution level and for the original image and for each position of the image, information representative of the variations in local amplitudes according to different directions.
  • the present algorithm defines for each position of an image or of a decomposition sub-band the variations of the local amplitudes of the image or of a sub-band.
  • the present algorithm also makes it possible to assign a class to each position of an image or of a decomposition sub-band.
  • Fig. 3 represents the algorithm for tattooing a mark in a color image.
  • the processor 100 of the device 10 for watermarking a mark in a color image reads, from the ROM ROM 102, the instructions of the program corresponding to steps E300 to E313 of FIG. 3 and loads them into RAM 103 to execute them.
  • the image to be tattooed is a color image made up of pixels and includes. several chromatic components, for example the Red, Green and Blue components.
  • the image can also be represented in the form of a luminance component and two chromatic components.
  • the processor 100 takes a first component of the color image to be processed and performs, in step E301, a transformation of this component of the image.
  • This transformation is a decomposition into wavelets.
  • the decomposition in wavelets is preferably a decomposition in wavelets of Daubechies.
  • the Daubechies wavelets use filters relating to a larger number of samples than the filters used for a decomposition into Haar wavelets. They thus offer better results for the decomposition of the images into sub-bands.
  • the wavelet decomposition is performed on four decomposition levels.
  • the processor 100 goes to the next step E302 and checks whether all the components of the color image have been decomposed into wavelets. If not, the processor 100 goes to step E303, considers the next component and returns to step E301 to decompose a new component of the color image in the same manner as that previously described. The processor 100 repeats the loop made up of steps E301 to E302 until all the components of the image have been broken down.
  • the processor 100 goes to step E304.
  • the processor 100 takes, for each component of the image to be processed, the first corresponding coefficient of each sub-band of details of the last level of decomposition. These first coefficients correspond to the first position (x, y) processed.
  • the processor 100 forms, for the position (x, y) of the detail sub-bands of the last level of decomposition, three-dimensional vectors whose coordinates are the values of the high frequency wavelet coefficients of the sub -bands of details for each component of the image.
  • a vector is determined for each component of the color image to be processed. For example, when the color image is in the form of three Red Green and blue components, the vectors are of the form:
  • Vi (x, y) (CoeffH 4i (x, y), CoeffV 4i (x, y), CoeffD 4i (x, y))
  • i represents the red, green or blue component
  • CoeffH4i (x, y) represents the coefficient of the fourth detail sub-band in the horizontal direction
  • CoeffV4i (x, y) represents the coefficient of the fourth detail sub-band in the vertical direction
  • CoeffD4i (x, y) represents the coefficient of the fourth sub- strip of details in diagonal direction.
  • the vectors formed, the processor 100 goes to step E306 and calculates for the current position (x, y) at Euclidean distance between each of the three vectors taken two by two:
  • step E307 determines for the current position (x, y) the greatest of the distances D RB (x, y), D RG (x, y) and D BG (x, y) previously calculated in step E306.
  • the processor 100 determines for the current position (x, y), the vectors serving as a reference for marking the vector to be marked as well as the vector among the three vectors V R (x, y), Vo (x, y) V B (x, y) which will be used for marking or tattooing. If D RB (x, y)> D RG (x, y) and D RB (x, y)> D BG (x, y), the vector V G (x, y) is chosen or selected as vector VM comprising the mark and the vectors V (x, y) and V B (x, y) are considered as reference vectors denoted respectively Vrefl and Vref2.
  • the vector V B (x, y) is chosen or selected as vector VM comprising the mark and the vectors V (x, y) and V G (x, y) are considered as reference vectors denoted respectively Vrefl and Vref2.
  • the vector V R (x, y) is chosen or selected as vector VM comprising the mark and the vectors V B (x, y) and V G (x, y) are considered as reference vectors denoted respectively Vrefl and Vrefi.
  • step E311 the processor goes to step E311 and checks whether the current position is the last of the positions to be processed. If not, the processor 100 takes in step E312, for each component of the image to be processed, the coefficient at the corresponding next position of each sub-band of details of the last level of decomposition. As long as all the coefficients of the detail sub-bands have not been processed, the processor 100 repeats the loop made up of steps E305 to E312. When all the coefficients of the detail sub-bands have been processed, the processor 100 goes to step E313 and reconstructs the image by taking into account the coefficients marked by the insertion of the mark. This operation carried out, the algorithm stops and resumes at step E300 when a new mark must be tattooed in a new image. Fig.
  • step E 400 represents a detailed algorithm of step E310 of FIG. 3 insertion of binary information at a position of the lowest resolution level of the image to be tattooed.
  • the algorithm of FIG. 4 describes the modification of the coordinates of the vector VM determined in step E309 of FIG. 3 as comprising binary information for a position of the detail sub-bands.
  • the processor 100 determines the binary information to be inserted at the current position during processing. Each position of the detail sub-bands corresponds to binary information to be inserted.
  • a pseudo-random signature S is generated by means of a key. This signature S denoted 50 in FIG. 5 consists of a series of binary information of size N * N.
  • This signature can also be representative of the name of the author, the name of the owner of the image, the content of the image or any type of information.
  • Binary information is shown in Fig. 5 with black or white squares.
  • the black squares of the signatures represent binary information at binary value one while the white squares represent binary information at binary value zero.
  • the signature S contains a limited number of information relative to the number of positions in the detail sub-bands.
  • the signature S is duplicated so that each lowest resolution sub-band position, or each vector VM, is associated with binary information to be inserted. Indeed, the more this signature is redundantly inserted a large number of times in the detail sub-bands, the greater the robustness of the marking.
  • the duplication can be carried out bit by bit like the redundancy noted 51 of FIG.
  • the number of repetitions of the signature 40 is determined by the ratio between the size of the lowest level decomposition sub-band and the size of the signature.
  • the processor therefore determines at this stage the binary information zero or a corresponding one which must be inserted at this position.
  • the processor 100 determines in step E401, among the two reference vectors Vrefl and Vref2, the marking reference vector denoted Vrefm used for the modification of the vector VM determined in step E309 of FIG. 3 as comprising the mark for a position of the detail sub-bands.
  • the marking according to the present invention is carried out by modifying the vector VM so as to bring it closer to the reference vector Vrefl or Vref2 according to the value of the binary information to be inserted and according to certain predefined conventions. More specifically, the vector VM is modified in such a way that the distance from the reference reference vector Vrefm is less than the distance from the other reference vector. For example, the following convention can be taken: If VM is the vector V (x, y) and the value of the binary information to be inserted is zero, the vector VM must be compared to the vector V G (x, y) . The vector Vrefm is then the vector V G (x, y).
  • the vector VM must be compared with the vector V B (x, y).
  • the vector Vrefm is then the vector V B (x, y). If VM is the vector V G (x, y) and the value of the binary information to be inserted is zero, the vector VM must be compared with the vector V R (x, y). The vector Vrefm is then the vector V R (x, y). If VM is the vector V G (x, y) and the value of the binary information to be inserted is one, the vector VM must be compared to the vector V B (x, y).
  • the vector Vrefm is then the vector V B (x, y). If VM is the vector V B (x, y) and the value of the binary information to be inserted is zero, the vector VM must be compared with the vector V R (x, y). The vector Vrefm is then the vector V R (x, y). If VM is the vector V B (x, y) and the value of the binary information to be inserted is one, the vector VM must be compared with the vector V G (x, y). The vector Vrefm is then the vector V BG (x, y). Once the marking reference vector has been determined, the processor 100 goes to the next step E402. At this stage, the processor 100 determines the marking force F of the binary information to be inserted.
  • the processor 100 obtains the class to which the vector determined in step E208 belongs for the current position. As a function of this class and of the vector VM, the processor 100 determines for example from a table stored in ROM ROM 102 of the marking device 10 the strength of marking of the binary information. This table conforms, for example, to the table as shown in FIG. 6.
  • the table in FIG. 6 comprises five lines denoted 61 to 65.
  • Line 61 comprises, for the various components of the image, the marking forces associated with class 1 representative of zones considered to be uniform.
  • Line 62 includes, for the various components of the image, the marking forces associated with class 2 representative of textured areas in a predominantly horizontal direction.
  • Line 63 includes, for the various components of the image, the values representative of the marking forces associated with class 3 representative of textured zones in a predominantly vertical direction.
  • Line 64 includes, for the various components of the image, the values representative of the marking forces associated with class 4 representative of textured areas in a predominantly diagonal direction.
  • Line 65 includes, for the various components of the image, the values representative of the marking forces associated with class 5 representative of highly textured areas.
  • the table in FIG. 6 has as many columns as there are components of the color image. According to our example, the table has three columns denoted 66 to 68. Column 66 corresponds according to our example to the red component of the image to be processed and includes for each of the classes of the algorithm of FIG. 2 a value representative of the marking force for the red component.
  • Column 67 corresponds according to our example to the green component of the image to be processed and includes for each of the classes of the algorithm of FIG. 2 a value representative of the marking force for the green component.
  • Column 68 corresponds according to our example to the blue component of the image to be processed and includes for each of the classes of the algorithm of FIG. 2 a value representative of the marking force for the blue component.
  • the processor 100 determines the component of the image to be processed. This component is the component of the vector which has been determined as a vector VM carrying the mark. For example, if the vector V B (x, y) was determined in step E309 of the algorithm of FIG. 3 as a vector VM comprising the mark, the component determined is the blue component.
  • the processor 100 determines, for the determined component, to which class the position being processed belongs to. This class was previously determined according to the algorithm of FIG. 2. Depending on the determined component and the class to which the position being processed belongs, the processor 100 thus determines the value of the marking force F to be applied to this position. It should be noted that, as a variant, the marking forces can be identical for each of the components. Alternatively, the marking strength can also be determined by determining which class the position being processed belongs to for the other components. The processor 100, according to the present variant, checks whether the classes defined for each of the components to this component are consistent. If for example at this position, the vectors formed in step E207 are all considered to belong to an identical class, the value of the marking force is increased.
  • the processor 100 determines whether the distance between the vector VM comprising the mark and the reference vector of marking Vrefm is greater than the distance between the vector VM comprising the mark and the reference vector Vrefl or Vref2 which was not considered as the reference marking vector. If not, the processor 100 goes to step E405.
  • the processor 100 goes to step E404.
  • the processor 100 modifies the vector VM so that the distance between the vector VM comprising the mark and the marking reference vector Vrefm is less than the distance between the vector VM comprising the mark and the reference vector Vrefl or Vref2 not having been considered as a reference labeling vector. This modification is carried out in such a way as to make the modification of the vector VM minimal. This operation carried out, the processor 100 goes to the next step E405.
  • the vector VM is the vector determined in step E309 of the algorithm of FIG. 3 or the vector VM displaced in step E403, F the marking force and Vrefm the reference marking vector.
  • the marking force F varies between values between zero and one.
  • the marking force is zero, that is to say when the position being processed is in an area considered to be uniform, the marked vector is equal to the vector VM. No mark is inserted for this position. Indeed, the insertion of marks in uniform areas of an image creates visually discernible disturbances.
  • the algorithm according to the invention therefore does not insert any mark at the positions corresponding to the uniform zones.
  • the marking force F is close to unity, the vector VM comprising the mark is almost replaced by the reference marking vector Vrefm.
  • This marking is particularly robust and resists any further processing such as compression of the image.
  • This marking creates disturbances in the discernible image.
  • the marking force F is for example equal to half, the marked vector Vwm is equal to the average of the two vectors VM and Vrefm. This allows a correct compromise between visibility and robustness of the brand for textured areas in a preferred direction.
  • the marking force applied to the green component is, whatever the class to which the position being processed belongs, less than half. Indeed, the green component makes it possible to better protect a brand from possible attacks, but the human visual system is more sensitive to variations in this component. It should be noted here that the marking force applied to the red component or the blue component is more than half when the class to which the position being processed belongs is a texture class. Indeed, the human visual system is less sensitive to variations in these components, the mark can then be inserted with a greater marking force.
  • the vector Vwm calculated, the processor 100 goes to step 406 and modifies the coefficients of the detail sub-bands of the modified component corresponding to the coordinates of the marked vector Vwm.
  • the processor 100 returns to step E311 of the algorithm of FIG. 3.
  • the watermarking of the image is carried out by inserting binary information at each position and the algorithm of FIG. 2 does not define zones which must include the mark, but it allows the determination for each position of an image of information representative of variations in local amplitudes in different directions and of defining a marking force to be applied to each position.
  • Fig. 7 shows the algorithm for detecting a signature inserted in an image according to the watermarking algorithm of a mark according to the present invention.
  • the processor 100 of the device 10 for detecting a signature reads, from the ROM 102, the program instructions corresponding to steps E700 to E716 of FIG. 7 and loads them into RAM 103 to execute them.
  • step E700 the processor 100 determines, for each position of the image in which a mark has been tattooed, information representative of variations in local amplitudes in different directions.
  • This step corresponds to the algorithm of FIG. 2 previously described. It will not be further explained.
  • Step E701 as well as steps E702, E703 and E704 are identical to steps E300, E301, E302 and E303 respectively. They will not be described further.
  • the wavelet decompositions having been carried out, the processor 100 goes to the next step E705.
  • the processor 100 takes, for each component of the image to be processed, the first corresponding coefficient of each sub-band of details of the last level of decomposition.
  • step E706 the processor 100 forms, for the position (x, y) of the detail sub-bands of the last level of decomposition, a vector for each component of the image to be processed. These three-dimensional vectors have as coordinates the values of the high frequency wavelet coefficients of the detail sub-bands for the respective components of the image. This step is identical to step E305 of FIG. 3. It will not be further explained.
  • the vectors formed, the processor 100 goes to step E707 and calculates for the current position (x, y) the Euclidean distance between each of the three vectors determined in step E706 taken two by two. This step is identical to step E306 of FIG. 3. It will not be further explained.
  • step E708 the processor 100 goes to step E708 and determines for the current position (x, y) the greatest of the distances previously calculated in step E707.
  • step E709 the processor 100 determines for the current position (x, y), the vectors serving as a reference Vrefl and Vref2 for the marking of the vector to be marked. These vectors Vrefl and Vref2 are the vectors separated by the greatest distance calculated in step E708.
  • This operation carried out, the processor 100 goes to the next step E710 and determines the vector VM which has been used for watermarking as well as the marking reference vector denoted Vrefm used for the modification of the vector VM.
  • the vector VM is the vector that was not used as a reference vector in the previous step.
  • the reference vector of marking Vrefm is determined by choosing the vector, from the reference vectors Vrefl and Vref2, which is the closest to VM. This operation performed, the processor 100 determines in step E711 the class determined for the current position in step E700. For this, the processor 100 determines the class to which the vector formed in step E700 belongs and having the same component as the vector VM. Five classes are used in the present invention, these classes are identical to classes 1, 2, 3, 4 and 5 explained above with reference to FIG. 2. In the next step E712, the processor 100 determines the marking convention used when tattooing the mark in the image.
  • the marking is carried out by modifying the vector VM so as to bring it closer to the reference vector Vrefl or Vref2 according to the value of the binary information to be inserted.
  • the processor 100 thus deduces according to the convention used if the value of the binary information inserted on the vector VM is equal to one or to zero. This operation performed, the processor 100 stores in step E713 the value of the determined binary information as well as the class determined in the previous step E711. In the next step E714, the processor 100 checks whether each position of the detail subbands has been processed. If not, the processor 100 goes to step E715 and takes for each component of the image to be processed the following coefficient of each sub-band of details of the last level of decomposition.
  • step E706 the processor 100 returns to step E706 previously described and repeats steps E706 to E714 as long as all the positions of the detail sub-bands have been processed.
  • step E716 the processor 100 obtains a signature from the binary information stored in the previous step E713.
  • the signature S has been duplicated so that with each vector VM, binary information is associated. Knowing the duplication rule, the processor 100 obtains at least part of the binary information inserted for each bit of the signature and determines for each bit of the signature its average value.
  • Class 1 groups the non-textured image positions. When binary information is inserted into these non-textured areas, it is inserted with a low value marking force. Given the manipulations that can be carried out on the image comprising the mark, the risk of determining erroneous binary information at this position is significant. In order to guarantee proper detection of the signature, the binary information included or likely to be understood at these positions is therefore not taken into account.
  • the processor 100 weights each binary information by a confidence factor determined as a function of the class corresponding to the position at which the binary information was obtained.
  • the binary information obtained at positions corresponding to class 5 has been inserted with a greater marking force than the other classes.
  • the risk of determining erroneous binary information at positions corresponding to class 5 is low.
  • more weight is given to the binary information obtained at positions corresponding to class 5 when calculating the average values than to other binary information.
  • the processor 100 then calculates the rate of resemblance between the original signature S which it has and the signature obtained S 'from the mean values previously calculated.
  • the calculation of the likelihood rate cc (S, S ') is for example of the form
  • the processor 100 determines whether or not the detected signature corresponds to the original signature. If the likelihood rate is greater than a predetermined threshold equal, for example to the numerical value 0.7, the detected signature then corresponds to the original signature. At the end of this step, the processor 100 returns to step E700 and waits for an image to be processed.
  • a predetermined threshold for example to the numerical value 0.7

Abstract

The invention relates to a method of watermarking an image comprising at least three components. The inventive method comprises the following steps consisting in: breaking down at least one component of the image into detail subbands along different directions and comprising coefficients, each coefficient being characterised by amplitude and the position thereof in the detail subband to which it belongs; for each position, determining information that is representative of local amplitude variations from the amplitudes of the coefficients at said position in the different detail subbands and the coefficients close to said position in the different detail subbands; determining a marking force at each position from the local amplitude variation representative information determined for said position and forming a watermark comprising a plurality of binary information in the image, by inserting each piece of binary information at a position of the image according to the marking force determined for a position corresponding to the position at which the binary information is inserted.

Description

"Procédé et dispositif de tatouage d'une marque dans une image" "Method and device for tattooing a mark in an image"
La présente invention concerne un procédé et un dispositif de tatouage d'une marque dans une image comprenant au moins trois composantes. Elle concerne également un procédé et un dispositif de détection d'une signature insérée dans une image comprenant au moins trois composantes. L'invention se situe dans le domaine du tatouage, ou Watermarking en terminologie anglo-saxonne, des images comprenant plusieurs composantes telles que par exemple les images en couleurs. Ces techniques de tatouage peuvent par exemple être utilisées pour la protection du droit d'auteur sur une image numérique. La marque tatouée dans une image doit être entre autres robuste aux différentes manipulations de l'image. Ces manipulations sont par exemple la compression de celle-ci. La marque tatouée dans une image doit aussi être imperceptible afin de préserver la qualité de l'image. Dans la demande française déposée sous le numéro 0304592 par la présente demanderesse et non encore publiée sont décrits un procédé et un dispositif de tatouage d'une image en couleurs par approche vectorielle en tenant compte de la dimension couleur de cette dernière. Selon cette demande, le tatouage d'une marque dans l'image est effectué selon une règle d'insertion prenant en compte la position relative de trois vecteurs de composantes. Selon cette technique, le tatouage de la marque est effectué selon une force de marquage pouvant être adaptée en fonction des caractéristiques colorimétriques ou de texture de l'image. Les inventeurs de la présente invention ont remarqué que le tatouage tel que présenté dans cette demande peut, dans certains cas, être visible lorsque l'on désire augmenter la robustesse de la marque. Dans le cas contraire, le tatouage de la marque est peu robuste lorsque l'on désire rendre le tatouage invisible. L'invention a pour but de résoudre les inconvénients de l'art antérieur en proposant un procédé et un dispositif permettant le tatouage d'une marque dans une image qui soit à la fois invisible et plus robuste que l'état de la technique. A cette fin, selon un premier aspect, l'invention propose un procédé de tatouage d'une marque composée d'une pluralité d'informations binaires dans une image comprenant au moins trois composantes, caractérisé en ce que le procédé comporte les étapes de : - décomposition d'au moins une composante de l'image en sous-bandes de détails selon différentes directions et comprenant des coefficients, chaque coefficient étant caractérisé par sa position dans la sous-bande de détails à laquelle il appartient et son amplitude, - détermination, pour chaque position, d'informations représentatives de variations d'amplitudes locales selon différentes directions à partir des amplitudes des coefficients à la position dans les différentes sous-bandes de détails et des coefficients proches de la position dans les différentes sous-bandes de détails, - détermination d'une force de marquage à chaque position à partir des informations représentatives de variations d'amplitudes locales selon différentes directions déterminées pour la position, - formation, pour chaque position et pour chaque composante, d'un vecteur dont les coordonnées sont les amplitudes des coefficients à la position dans les différentes sous bandes de détails de la composante, - sélection, pour chaque position, d'un vecteur parmi les vecteurs formés pour la position, - tatouage de la marque dans l'image en modifiant, pour chaque position, l'amplitude des coefficients qui sont les coordonnées du vecteur sélectionné pour la position en fonction de l'information binaire correspondant à la position et selon la force de marquage déterminée pour la position. Corrélativement, l'invention concerne un dispositif de tatouage d'une marque composée d'une pluralité d'informations binaires dans une image comprenant au moins trois composantes, caractérisé en ce que le dispositif comporte : - des moyens de décomposition d'au moins une composante de l'image en sous bandes de détails selon différentes directions et comprenant des coefficients, chaque coefficient étant caractérisé par sa position dans la sous-bande de détails à laquelle il appartient et son amplitude, - des moyens de détermination, pour chaque position, d'informations représentatives de variations d'amplitudes locales selon différentes directions à partir des amplitudes des coefficients à la position dans les différentes sous-bandes de détails et des coefficients proches de la position dans les différentes sous-bandes de détails, - des moyens de détermination d'une force de marquage à chaque position à partir des informations représentatives de variations d'amplitudes locales selon différentes directions déterminées pour la position, - des moyens de formation, pour chaque position et pour chaque composante, d'un vecteur dont les coordonnées sont les amplitudes des coefficients à la position dans les différentes sous bandes de détails de la composante, - des moyens de sélection, pour chaque position, d'un vecteur parmi les vecteurs formés pour la position, - des moyens de tatouage de la marque dans l'image en modifiant, pour chaque position, l'amplitude des coefficients qui sont les coordonnées du vecteur sélectionné pour la position en fonction de l'information binaire correspondant à la position et selon la force de marquage déterminée pour la position. Ainsi, en déterminant des informations représentatives de variations d'amplitudes locales selon différentes directions à chaque position dans les sous- bandes de détails et en déterminant une force de marquage à chaque position à partir des informations représentatives de variations d'amplitudes locales selon les différentes directions déterminées, il est possible d'insérer des informations binaires de manière optimale et ainsi d'obtenir un tatouage d'une marque dans une image à la fois robuste et invisible. En effet, en déterminant des informations représentatives de variations d'amplitudes locales selon différentes directions, il est possible d'ajuster le marquage pour toutes variations d'amplitudes et cela même pour les variations d'amplitudes locales selon les directions diagonales. L'énergie associée à ces directions diagonales étant plus faible que les directions horizontales et verticales, la présente invention prend néanmoins en compte les variations d'amplitudes dans ces directions pour la détermination de la force de marquage à ces positions. Une telle détermination permet ainsi d'ajuster la force de marquage selon chaque direction des variations d'amplitudes. Plus le nombre d'informations insérées dans l'image est important, plus le tatouage de la marque est robuste et plus la force de marquage est adaptée aux particularités locales de l'image, moins la marque insérée est visible. Selon un autre aspect de l'invention, chaque composante de l'image est décomposée en sous-bandes de détails selon différentes directions, les informations représentatives de variations d'amplitudes sont déterminées pour chaque composante et pour chaque position, la force de marquage est déterminée à chaque position de chaque composante. Selon un autre aspect de l'invention, la détermination des informations représentatives de variations d'amplitudes locales pour chaque composante et pour chaque position se décompose en une mise au carré de l'amplitude de chaque coefficient de chaque sous-bande de détails de chaque composante et le calcul d'une valeur médiane, à partir des amplitudes mises au carré du coefficient et des coefficients proches du coefficient, pour chaque coefficient de chaque sous bande de détails de chaque composante. Ainsi, en élevant au carré les amplitudes des coefficients, on introduit une notion d'énergie aux coefficients de la sous-bande. Ils peuvent alors être considérés comme des indicateurs de l'évolution de l'énergie dans l'image. De plus, en calculant pour chaque coefficient sa valeur médiane, les zones de des sous-bandes comprenant de fortes variations d'amplitudes sont mises en évidence tout en évitant des éventuelles détections de ruptures de contours. Selon un autre aspect de l'invention, la détermination de la force de marquage à chaque position de chaque composante est effectuée en formant un vecteur dont les coordonnées sont les valeurs médianes calculées dans chaque sous-bande de détails, en groupant les vecteurs dont les coordonnées sont similaires dans des classes prédéterminées et en affectant une force de marquage à chaque position en fonction de la classe prédéterminée à laquelle appartient le vecteur de la position. Selon un autre aspect de l'invention, les classes prédéterminées sont la classe regroupant les vecteurs représentatifs de zones ne comportant pas de variations et/ou la classe regroupant les vecteurs représentatifs de zones de l'image comportant des variations majoritairement horizontales, et/ou la classe regroupant les vecteurs représentatifs de zones de l'image comportant des variations majoritairement verticales et/ou la classe regroupant les vecteurs représentatifs de zones de l'image comportant des variations majoritairement diagonales, et/ou la classe regroupant les vecteurs représentatifs de zones de l'image très fortement texturées et sans direction privilégiée. Ainsi, en utilisant un nombre important de classes, il est possible de déterminer précisément les variations d'amplitudes locales et ainsi d'adapter en conséquence la force de marquage. Selon un autre aspect de l'invention, la force de marquage est en outre affectée en fonction de la composante de l'image et la décomposition est une décomposition en ondelettes de Haar. Ainsi, il est possible d'ajuster la marque en prenant en compte les propriétés du système visuel humain. De plus, l'ondelette de Haar est particulièrement bien adaptée pour la détection de texture car elle ne fait pas apparaître d'effets de bord sur l'image tout en étant simple dans son implémentation. Selon un autre aspect de l'invention, lors du tatouage de la marque, chaque composante de l'image est décomposée, selon une autre décomposition en sous bandes, en sous bandes comprenant des coefficients, chaque coefficient étant caractérisé par sa position dans la sous bande à laquelle il appartient et son amplitude et en ce que le procédé comporte en outre une étape de reconstruction de l'image à partir des coefficients des sous bandes et des coefficients dont les amplitudes ont été modifiées. L'invention concerne aussi un procédé de détection d'une signature insérée dans une image comprenant au moins trois composantes, caractérisé en ce que le procédé comporte les étapes de décomposition d'au moins une composante de l'image en sous- bandes de détails selon différentes directions et comprenant des coefficients, chaque coefficient étant caractérisé par sa position dans la sous-bande de détails à laquelle il appartient et son amplitude ; de détermination, pour chaque position, d'informations représentatives de variations d'amplitudes locales selon différentes directions à partir des amplitudes des coefficients à cette position dans les différentes sous-bandes de détails et des coefficients proches de cette position dans les différentes sous-bandes de détails et de détection de la signature à partir d'au moins une partie d'informations binaires insérées en une pluralité de positions de l'image et des informations représentatives des variations d'amplitudes locales selon différentes directions correspondantes aux positions des informations binaires. Corrélativement, l'invention propose un dispositif de détection d'une signature insérée dans une image comprenant au moins trois composantes, caractérisé en ce que le dispositif comporte des moyens de décomposition d'au moins une composante de l'image en sous-bandes de détails selon différentes directions et comprenant des coefficients, chaque coefficient étant caractérisé par sa position dans la sous-bande de détails à laquelle il appartient et son amplitude ; des moyens de détermination, pour chaque position, d'informations représentatives de variations d'amplitudes locales selon différentes directions à partir des amplitudes des coefficients à cette position dans les différentes sous-bandes de détails et des coefficients proches de cette position dans les différentes sous-bandes de détails et des moyens de détection de la signature à partir d'au moins une partie d'informations binaires insérées en une pluralité de positions de l'image et des informations représentatives des variations d'amplitudes locales selon différentes directions correspondantes aux positions des informations binaires. Ainsi, en prenant en compte des informations représentatives des variations d'amplitudes locales selon différentes directions correspondantes aux positions des informations binaires, il est possible de déterminer, parmi les informations binaires comprises dans l'image, lesquelles sont susceptibles d'être les plus fiables. Selon un autre aspect de l'invention, les informations binaires utilisées pour la détection sont les informations binaires comprises à des positions de l'image pour lesquelles les informations représentatives des variations d'amplitudes locales selon différentes directions correspondent à des informations représentatives des variations d'amplitudes locales prédéterminées. Selon un autre aspect de l'invention, des pondérations sont affectées à au moins une partie des informations binaires, les pondérations étant affectées en fonction des informations représentatives des variations d'amplitudes aux positions correspondantes aux positions des informations binaires. L'invention concerne aussi le programme d'ordinateur stocké sur un support d'informations, ledit programme comportant des instructions permettant de mettre en œuvre les procédés de tatouage et/ou de détection d'une signature précédemment décrits, lorsqu'ils sont chargés et exécutés par un système informatique. L'invention concerne aussi un support d'information comportant au moins une image tatouée selon le procédé de tatouage selon la présente invention. Les caractéristiques de l'invention mentionnées ci-dessus, ainsi que d'autres, apparaîtront plus clairement à la lecture de la description suivante d'un exemple de réalisation, ladite description étant faite en relation avec les dessins joints, parmi lesquels: la Fig. 1 représente un schéma bloc d'un dispositif de tatouage d'une marque dans une image et/ou de détection d'une signature insérée dans une image en couleurs; la Fig. 2 représente un algorithme de détermination, pour une pluralité de positions de l'image, d'informations représentatives de variations d'amplitudes locales selon différentes directions ; la Fig. 3 représente l'algorithme de tatouage d'une marque dans une image en couleurs ; la Fig. 4 représente un algorithme détaillé de l'étape d'insertion d'une information binaire à une position du niveau de résolution le plus bas de l'image à tatouer ; la Fig. 5 est un exemple de marque créé par redondance d'une signature générée par une clé de manière pseudo aléatoire ; la Fig. 6 représente un tableau comprenant différentes forces de marquage utilisées par la présente invention en fonction des informations représentatives de variations d'amplitudes locales selon différentes directions ; la Fig. 7 représente l'algorithme de détection d'une signature insérée dans une image selon l'algorithme de tatouage selon la présente invention.The present invention relates to a method and a device for tattooing a mark in an image comprising at least three components. It also relates to a method and a device for detecting a signature inserted in an image comprising at least three components. The invention is in the field of tattooing, or Watermarking in English terminology, images comprising several components such as for example color images. These tattooing techniques can for example be used for the protection of copyright on a digital image. Among other things, the mark tattooed in an image must be robust to the various manipulations of the image. These manipulations are for example the compression thereof. The mark tattooed in an image must also be imperceptible in order to preserve the quality of the image. In the French application filed under number 0304592 by the present applicant and not yet published, a method and a device for tattooing a color image by vector approach are described, taking into account the color dimension of the latter. According to this request, the watermarking of a mark in the image is carried out according to an insertion rule taking into account the relative position of three component vectors. According to this technique, the tattooing of the mark is carried out according to a marking force which can be adapted as a function of the colorimetric or texture characteristics of the image. The inventors of the present invention have noticed that the tattoo as presented in this application can, in certain cases, be visible when it is desired to increase the robustness of the brand. Otherwise, the brand tattoo is not very robust when you want to make the tattoo invisible. The invention aims to solve the drawbacks of the prior art by proposing a method and a device for tattooing a mark in an image which is both invisible and more robust than the state of the art. To this end, according to a first aspect, the invention provides a method of watermarking a mark composed of a plurality of binary information in an image comprising at least three components, characterized in that the method comprises the steps of: - decomposition of at least one component of the image into detail sub-bands in different directions and comprising coefficients, each coefficient being characterized by its position in the detail sub-band to which it belongs and its amplitude, - determination , for each position, of information representative of variations of local amplitudes in different directions from the amplitudes of the coefficients at the position in the different detail sub-bands and of the coefficients close to the position in the different detail sub-bands , - determination of a marking force at each position from information representative of variations in amplitudes l ocals in different directions determined for the position, - formation, for each position and for each component, of a vector whose coordinates are the amplitudes of the coefficients at the position in the different sub-bands of details of the component, - selection, for each position, of a vector among the vectors formed for the position, - watermarking of the mark in the image by modifying, for each position, the amplitude of the coefficients which are the coordinates of the vector selected for the position as a function of the binary information corresponding to the position and according to the marking force determined for the position. Correlatively, the invention relates to a device for watermarking a mark composed of a plurality of binary information in an image comprising at least three components, characterized in that the device comprises: - means for breaking down at least one component of the image in sub-bands of details in different directions and comprising coefficients, each coefficient being characterized by its position in the sub-band of details to which it belongs and its amplitude, - means for determining, for each position, information representative of variations in local amplitudes in different directions from the amplitudes of the coefficients at the position in the different detail sub-bands and of the coefficients close to the position in the different detail sub-bands, - means for determination of a marking force at each position from information representative of variations in am local plitudes in different directions determined for the position, - means for forming, for each position and for each component, a vector whose coordinates are the amplitudes of the coefficients at the position in the different sub-bands of details of the component, - means for selecting, for each position, a vector from among the vectors formed for the position, - means for watermarking the mark in the image by modifying, for each position, the amplitude of the coefficients which are the coordinates of the vector selected for the position according to the binary information corresponding to the position and according to the marking force determined for the position. Thus, by determining information representative of variations in local amplitudes in different directions at each position in the detail sub-bands and by determining a marking force at each position from information representative of variations in local amplitudes according to the different determined directions, it is possible to insert binary information optimally and thus obtain a tattoo of a brand in an image that is both robust and invisible. Indeed, by determining information representative of variations in local amplitudes in different directions, it is possible to adjust the marking for all variations in amplitudes and this even for variations in local amplitudes in diagonal directions. The energy associated with these diagonal directions being lower than the horizontal and vertical directions, the present invention nevertheless takes into account the amplitude variations in these directions for the determination of the marking force at these positions. Such a determination thus makes it possible to adjust the marking force in each direction of the amplitude variations. The more information inserted in the image, the more robust the tattoo of the mark and the more the marking force is adapted to the local particularities of the image, the less visible is the inserted mark. According to another aspect of the invention, each component of the image is broken down into detail sub-bands in different directions, the information representative of variations in amplitudes is determined for each component and for each position, the marking force is determined at each position of each component. According to another aspect of the invention, the determination of the information representative of variations in local amplitudes for each component and for each position is broken down into a squaring of the amplitude of each coefficient of each sub-band of details of each component and the calculation of a median value, from the amplitudes squared of the coefficient and the coefficients close to the coefficient, for each coefficient of each sub-band of details of each component. Thus, by squaring the amplitudes of the coefficients, we introduce a notion of energy to the coefficients of the sub-band. They can then be considered as indicators of the evolution of energy in the image. In addition, by calculating its median value for each coefficient, the areas of sub-bands comprising large variations in amplitudes are highlighted while avoiding possible detections of contours breaks. According to another aspect of the invention, the determination of the marking force at each position of each component is carried out by forming a vector whose coordinates are the median values calculated in each detail sub-band, by grouping the vectors whose coordinates are similar in predetermined classes and by assigning a marking force to each position according to the predetermined class to which the vector of the position. According to another aspect of the invention, the predetermined classes are the class grouping the vectors representative of areas having no variations and / or the class grouping together the vectors representative of areas of the image comprising predominantly horizontal variations, and / or the class grouping the vectors representative of areas of the image comprising predominantly vertical variations and / or the class grouping together the vectors representative of areas of the image comprising predominantly diagonal variations, and / or the class grouping together the vectors representative of zones of very strongly textured image with no preferred direction. Thus, by using a large number of classes, it is possible to precisely determine the variations in local amplitudes and thus to adapt the marking force accordingly. According to another aspect of the invention, the marking force is also affected as a function of the component of the image and the decomposition is a decomposition into Haar wavelets. Thus, it is possible to adjust the brand taking into account the properties of the human visual system. In addition, the Haar wavelet is particularly well suited for texture detection because it does not show edge effects on the image while being simple in its implementation. According to another aspect of the invention, during the watermarking of the mark, each component of the image is broken down, according to another decomposition into sub-bands, into sub-bands comprising coefficients, each coefficient being characterized by its position in the sub band to which it belongs and its amplitude and in that the method further comprises a step of reconstructing the image from the coefficients of the sub-bands and of the coefficients whose amplitudes have been modified. The invention also relates to a method for detecting a signature inserted in an image comprising at least three components, characterized in that the method comprises the steps of breaking down at least one component of the image into detail sub-bands in different directions and including coefficients, each coefficient being characterized by its position in the detail sub-band to which it belongs and its amplitude; for determining, for each position, information representative of variations in local amplitudes in different directions from the amplitudes of the coefficients at this position in the different detail sub-bands and from the coefficients close to this position in the different sub-bands details and detection of the signature from at least a part of binary information inserted in a plurality of positions of the image and information representative of the variations of local amplitudes in different directions corresponding to the positions of the binary information. Correlatively, the invention provides a device for detecting a signature inserted in an image comprising at least three components, characterized in that the device comprises means for breaking down at least one component of the image into sub-bands of details in different directions and comprising coefficients, each coefficient being characterized by its position in the detail sub-band to which it belongs and its amplitude; means for determining, for each position, information representative of variations in local amplitudes in different directions from the amplitudes of the coefficients at this position in the different detail sub-bands and coefficients close to this position in the different sub-bands -bands of details and means of detection of the signature from at least a portion of binary information inserted in a plurality of positions of the image and information representative of the variations of local amplitudes in different directions corresponding to the positions binary information. Thus, by taking into account information representative of the variations in local amplitudes in different directions corresponding to the positions of the binary information, it is possible to determine, from the binary information included in the image, which are likely to be the most reliable. . According to another aspect of the invention, the binary information used for the detection is the binary information included at positions of the image for which the information representative of the variations of local amplitudes in different directions correspond to information representative of the variations d 'predetermined local amplitudes. According to another aspect of the invention, weights are assigned to at least part of the binary information, the weights being assigned according to the information representative of the amplitude variations at the positions corresponding to the positions of the binary information. The invention also relates to the computer program stored on an information medium, said program comprising instructions making it possible to implement the watermarking and / or detection methods of a signature described above, when they are loaded and executed by a computer system. The invention also relates to an information medium comprising at least one image tattooed according to the tattooing method according to the present invention. The characteristics of the invention mentioned above, as well as others, will appear more clearly on reading the following description of an exemplary embodiment, said description being made in relation to the accompanying drawings, among which: FIG. . 1 represents a block diagram of a device for tattooing a mark in an image and / or for detecting a signature inserted in a color image; Fig. 2 represents an algorithm for determining, for a plurality of positions of the image, information representative of variations in local amplitudes in different directions; Fig. 3 represents the algorithm for tattooing a mark in a color image; Fig. 4 represents a detailed algorithm of the step of inserting binary information at a position of the lowest resolution level of the image to be tattooed; Fig. 5 is an example of a mark created by redundancy of a signature generated by a key in a pseudo-random manner; Fig. 6 shows a table comprising different marking forces used by the present invention as a function of the information representative of variations in local amplitudes in different directions; Fig. 7 shows the algorithm for detecting a signature inserted in an image according to the watermarking algorithm according to the present invention.
La Fig. 1 représente un schéma bloc d'un dispositif de tatouage d'une marque dans une image en couleurs et/ou de détection d'une signature insérée dans une image en couleurs. Le dispositif de tatouage 10 d'une marque dans une image en couleurs et/ou de détection d'une signature insérée dans une image en couleurs selon la présente invention est par exemple un ordinateur. Le dispositif de tatouage 10 peut aussi être intégré dans un combiné téléphonique mobile comprenant des moyens de capture d'images. Le dispositif de tatouage 10 comporte un bus de communication 101 auquel sont reliés un processeur 100, une mémoire morte ROM 102, une mémoire vive RAM 103, un écran 104 et un clavier 105 servant d'interface homme machine, un disque dur 108, un lecteur enregistreur 109 d'informations sur un support amovible tel qu'un disque compact et une interface 106 permettant de transférer des images tatouées selon la présente invention sur un réseau de télécommunication 150 et/ou de recevoir des images en couleurs pour détecter si une marque a été insérée dans ces images. La mémoire morte ROM 102 mémorise les programmes mettant en œuvre l'invention. Lors de la mise sous tension du dispositif de tatouage 10, les programmes selon la présente invention sont transférés dans la mémoire vive 103 qui contient alors le code exécutable des algorithmes qui seront décrits ultérieurement en référence aux Figs. 2, 3, 4 et 7. La mémoire morte ROM 102 comporte aussi un tableau qui sera décrit ultérieurement en référence à la Fig. 6. Le processeur 100 exécute les instructions mémorisées dans la mémoire viveFig. 1 represents a block diagram of a device for tattooing a mark in a color image and / or for detecting a signature inserted in a color image. The device 10 for tattooing a mark in a color image and / or for detecting a signature inserted in a color image according to the present invention is for example a computer. The watermarking device 10 can also be integrated into a mobile telephone handset comprising means for capturing images. The watermarking device 10 comprises a communication bus 101 to which are connected a processor 100, a ROM read-only memory 102, a random access memory RAM 103, a screen 104 and a keyboard 105 serving as a man-machine interface, a hard disk 108, a reader recorder 109 of information on a removable medium such as a compact disc and an interface 106 making it possible to transfer tattooed images according to the present invention to a telecommunications network 150 and / or to receive color images to detect whether a mark has been included in these images. ROM ROM 102 stores the programs implementing the invention. When the watermarking device 10 is powered up, the programs according to the present invention are transferred into the random access memory 103 which then contains the executable code of the algorithms which will be described later with reference to FIGS. 2, 3, 4 and 7. The ROM 102 also includes a table which will be described later with reference to FIG. 6. The processor 100 executes the instructions stored in the RAM
103 conformément à la présente invention. Le dispositif de tatouage 10 comporte un écran 104 et un clavier 105 permettant de sélectionner des images à tatouer selon la présente invention ou de modifier par exemple le nombre de classes utilisées par la présente invention pour déterminer les variations d'amplitudes locales selon différentes directions autour d'une position de l'image ou de modifier les valeurs des forces de marquage comprises dans le tableau de la Fig. 6. La Fig. 2 représente un algorithme de détermination, pour une pluralité de positions de l'image, d'informations représentatives de variations d'amplitudes locales selon différentes directions. Le processeur 100 du dispositif 10 de tatouage d'une marque et/ou de détection d'une signature lit, à partir de la mémoire morte ROM 102, les instructions du programme correspondant aux étapes E200 à E214 de la Fig. 2 et les charge en mémoire vive 103 pour les exécuter. L'image à tatouer est une image en couleurs constituée de pixels et comporte plusieurs composantes. Ces composantes sont par exemple des composantes chromatiques telles que par exemple les composantes Rouge, Verte et Bleu. D'autres composantes chromatiques telles que le jaune, le cyan et le Magenta peuvent aussi être utilisées. L'image peut aussi être représentée sous la forme d'une composante de luminance et de deux composantes chromatiques. A l'étape E200, le processeur 100 prend une première composante de l'image en couleurs à traiter et effectue à l'étape E201 une transformation de cette composante de l'image. Cette transformation est une décomposition en ondelettes ou Discret Wavelet Transform en terminologie anglo-saxonne. La décomposition en ondelettes est préférentiellement une décomposition en ondelettes de Haar. En effet, l'ondelette de Haar est particulièrement bien adaptée pour la détermination d'informations représentatives de variations d'amplitudes locales d'une image car elle ne fait pas apparaître d'effets de bord sur l'image tout en étant simple dans son implémentation. La décomposition d'une image, plus précisément d'une composante de l'image est effectuée en appliquant à l'image deux filtres numériques respectivement passe- bas et passe-haut qui filtrent le signal selon une première direction, par exemple horizontale. Après filtrage, les deux images filtrées sont décimées par deux. Chaque image décimée est respectivement appliquée à un filtre passe bas et un passe haut qui les filtrent selon une seconde direction, par exemple verticale. Chaque signal filtré résultant est ensuite décimé par deux pour former quatre sous-bandes de résolution. Une sous-bande comporte les coefficients de basse fréquence selon les deux directions du signal d'image. Cette sous-bande est classiquement appelée sous-bande basse de premier niveau de décomposition. Les trois autres sous-bandes dites de détails comportent les coefficients ondelettes hautes fréquences selon les directions respectives horizontales, verticales et diagonales. Chacune de ces sous-bandes de détails, construite à partir de l'image d'origine, contient de l'information correspondant à une orientation respectivement verticale, horizontale et diagonale de l'image, dans une bande de fréquence donnée. La décomposition effectuée est telle qu'une sous-bande d'une résolution donnée est répartie en quatre sous-bandes de résolution inférieure et a donc quatre fois plus de coefficients que chacune des sous-bandes de résolution immédiatement inférieure. A quatre coefficients à une position (2x,2y) d'une sous-bande de résolution donnée correspond un coefficient dans chaque sous-bande de résolution inférieure obtenue à une position (x,y). Ainsi, à un coefficient situé à une position (x,y) donnée dans une sous-bande, correspondent des coefficients à la même position (x,y) dans les autres sous-bandes respectives du même niveau de décomposition. A ces coefficients situés à une position (x,y) donnée correspondent quatre autres coefficients à une position (2x,2y) dans la sous-bande basse fréquence de niveau de décomposition supérieur. Ainsi, à une position d'une sous-bande correspond une position dans l'image originale sous forme de pixel et/ou correspond une position dans une sous-bande d'un niveau de décomposition différent. Lorsque l'image est décomposée en deux niveaux de décomposition, la sous- bande basse du premier niveau de décomposition est décomposée une nouvelle fois selon la même décomposition que celle décrite précédemment pour former une sous- bande basse de second niveau de décomposition et trois sous-bandes de détails comportant des coefficients ondelettes hautes fréquences selon les directions respectives horizontales, verticales et diagonales. A chaque nouvelle décomposition, la sous-bande basse du niveau de décomposition le plus bas est utilisée pour former une nouvelle sous-bande basse de niveau de décomposition inférieur et trois sous-bandes de détails comportant des coefficients ondelettes hautes fréquences selon les directions respectives horizontales, verticales et diagonales. Selon un mode préféré de la présente invention, la décomposition est effectuée sur quatre niveaux de décomposition pour obtenir quatre sous-bandes de quatrième niveau de décomposition. Pour chaque sous-bande de détails du quatrième niveau de décomposition, on mémorise les coefficients ondelettes hautes fréquences selon les directions respectives horizontales, verticales et diagonales. La décomposition effectuée, le processeur 100 considère à l'étape E202 une première sous-bande de détails selon une direction précédemment obtenue. A l'étape suivante E203, le processeur 100 élève au carré l'amplitude de chaque coefficient de la sous-bande considérée. Ceci permet d'introduire une notion d'énergie aux coefficients de la sous-bande. Ils peuvent alors être considérés comme des indicateurs de l'évolution de l'énergie dans l'image. A l'étape suivante E204, le processeur 100 détermine une valeur médiane pour chaque coefficient de la sous-bande considérée dont l'amplitude a été précédemment élevée au carré. Cette valeur médiane est par exemple calculée sur un support de taille trois par trois, c'est-à-dire que la valeur médiane est déterminée à partir des amplitudes des coefficients voisins du coefficient pour lequel la détermination est effectuée. Ce calcul de médiane a pour effet de mettre en évidence les zones de la sous-bande de détails selon une direction qui comportent de fortes variations, c'est-à-dire des zones texturées. Cette opération effectuée, le processeur 100 passe à l'étape suivante E205 et vérifie si toutes les sous-bandes de détails ont été traitées. Dans la négative, le processeur 100 passe à l'étape E206 et réitère la boucle constituée des étapes E203 à E206 jusqu'à ce que les trois sous-bandes de détails soient traitées. Lorsque les trois sous-bandes de détails comprenant les coefficients ondelettes hautes fréquences selon les directions respectives horizontales, verticales et diagonales ont été traitées, le processeur 100 passe à l'étape suivante E207. A l'étape E207, le processeur 100 forme, pour chaque position (x,y) des sous- bandes de détails du quatrième niveau de décomposition, un vecteur de dimension trois représentatif de l'intensité des fluctuations locales. A chaque position (x,y), le vecteur formé a comme coordonnées la valeur médiane déterminée précédemment à la position (x,y) pour la sous-bande de détails comportant des coefficients ondelettes hautes fréquences selon la direction horizontale, la valeur médiane déterminée précédemment à la position (x,y) pour la sous-bande de détails comportant des coefficients ondelettes hautes fréquences selon la direction verticale et la valeur médiane déterminée précédemment à la position (x,y) pour la sous-bande de détails comportant des coefficients ondelettes hautes fréquences selon la direction diagonale. Les vecteurs formés, le processeur 100 définit à l'étape E208 les classes selon lesquelles les vecteurs formés à l'étape précédente vont être classés. Par exemple, cinq classes sont définies. La classe notée classe 1 regroupe les vecteurs représentatifs de zones ne comportant pas de variations, c'est-à-dire les vecteurs dont les coordonnées sont de faible valeur. La classe 2 regroupe les vecteurs représentatifs de zones de l'image comportant des variations majoritairement horizontales, c'est-à-dire les vecteurs dont la coordonnée valeur médiane calculée dans la sous-bande de détails comportant des coefficients ondelettes hautes fréquences selon la direction horizontale a une valeur importante tandis que les valeurs médianes calculées dans les autres sous-bandes de détails sont de faible valeur. La classe 3 regroupe les vecteurs représentatifs de zones de l'image comportant des variations majoritairement verticales, c'est-à-dire les vecteurs dont la coordonnée valeur médiane calculée dans la sous-bande de détails comportant des coefficients ondelettes hautes fréquences selon la direction verticale a une valeur importante, tandis que les valeurs médianes calculées dans les autres sous-bandes de détails sont de faible valeur. La classe 4 regroupe les vecteurs représentatifs de zones de l'image comportant des variations majoritairement diagonales, c'est-à-dire les vecteurs dont la coordonnée valeur médiane calculée dans la sous-bande de détails comportant des coefficients ondelettes hautes fréquences selon la direction diagonale a une valeur importante tandis que les valeurs médianes calculées dans les autres sous-bandes de détails sont de faible valeur. La classe 5 regroupe les vecteurs représentatifs de zones de l'image très fortement texturées et sans direction privilégiée, c'est-à-dire les vecteurs qui ont chacune de leur coordonnées à une valeur importante. II est à remarquer ici que le nombre de classes peut être réduit. En particulier, les classes 2, 3 et 4 peuvent en variante être groupées en une unique classe. En variante, le nombre de classes peut aussi être augmenté. D'autres classes regroupant les vecteurs représentatifs de zones de l'image comportant des variations selon deux directions peuvent aussi être formées. L'utilisation de cinq classes est préférée selon la présente invention et permet une détection précise des textures comprises dans l'image à traiter. Même les textures dont la direction est majoritairement diagonale pourront être détectées, bien que classiquement, l'énergie associée à ces diagonales est plus faible de celles associées aux autres directions. L'étape E208 effectuée, le processeur 100 va ensuite aux étapes E209 à E212 classifier des zones de l'image à traiter, c'est-à-dire grouper les vecteurs dans des zones à partir des classes précédemment définies. Le processeur 100 va ainsi grouper les vecteurs dont les coordonnées sont similaires dans les cinq classes prédéterminées. La méthode utilisée est par exemple la méthode des nuées dynamiques. Bien entendu, d'autres méthodes peuvent aussi être utilisées. Pour cela, le processeur 100 détermine à l'étape E209 un centre initial pour chacune des classes 1 à 5. Pour la classe 1, le processeur 100 prend le vecteur nul noté gO comme centre initial. Pour la classe 2, le processeur 100 forme un centre initial gl dont les coordonnées sont (MaximumH, 0, 0) où Maximum H est la valeur médiane maximale pour la sous-bande de détails comportant des coefficients ondelettes hautes fréquences selon la direction horizontale. Pour la classe 3, le processeur 100 forme un centre initial g2 dont les coordonnées sont (0, MaximumV, 0) où MaximumV est la valeur médiane maximale pour la sous-bande de détails comportant des coefficients ondelettes hautes fréquences selon la direction verticale. Pour la classe 4, le processeur 100 forme un centre initial g3 dont les coordonnées sont (0, 0, MaximumD) où MaximumD est la valeur médiane maximale pour la sous-bande de détails comportant des coefficients ondelettes hautes fréquences selon la direction diagonale. Pour la classe 5, le processeur 100 forme un centre initial g4 dont les coordonnées sont (MaximumH, MaximumV, MaximumD). Les centres initiaux définis, le processeur 100 passe à l'étape suivante E210. A cette étape, le processeur 100 construit une partition de l'image en zones en affectant chaque vecteur formé à l'étape E207 à la classe dont il est le plus proche du centre initial. A l'étape suivante E211, le processeur 100 détermine un nouveau centre initial représentatif de chaque zone à partir des vecteurs qui ont été affectés respectivement à chaque zone. Cette opération effectuée, le processeur 100 détermine si la qualité de la répartition est améliorée ou non. Dans l'affirmative, le processeur 100 retourne à l'étape E210 et réitère les étapes E210 à E212 tant que la qualité de la répartition est améliorée. Lorsque la qualité de la répartition n'est plus améliorée, le processeur 100 passe à l'étape E213. A l'étape E213, le processeur 100 vérifie si toutes les composantes de l'image ont été traitées. Dans la négative, le processeur 100 passe à l'étape E214, prend une autre composante et retourne à l'étape E201 traiter la nouvelle composante de l'image en couleurs. Lorsque toutes les composantes ont été traitées, à chaque position (x,y) de chaque sous-bande de détails de chaque composante est associée une classe. Cette classe correspond à une détermination locale de la texture de l'image à une position (x,y). Il est à remarquer ici que la segmentation telle qu'effectuée par l'algorithme de la Fig. 2 vise à terminer les zones de l'image présentant des textures et cela quelle que soit la direction principale des textures comprises dans l'image. Il est à remarquer ici qu'en variante, une seule composante peut être traitée. Par exemple, lorsque l'image est formée d'une composante luminance et de composantes chromatiques, le présent algorithme n'est effectué que sur la composante luminance. Ainsi, le processeur 100 du dispositif de tatouage a déterminé pour chaque position des sous-bandes de détails du plus bas niveau de résolution des informations représentatives des variations des amplitudes locales selon différentes directions des coefficients des sous-bandes de détails à partir des amplitudes des coefficients respectivement à cette position et des amplitudes des coefficients proches de cette position. Le processeur 100 a aussi déterminé à partir du niveau de résolution le plus bas différentes zones de textures. A partir de ces zones de textures déterminées, il est alors possible de déterminer pour les sous-bandes de détails de niveau de résolution supérieur et pour l'image originale et pour chaque position de l'image des informations représentatives des variations des amplitudes locales selon différentes directions. Ainsi, le présent algorithme définit pour chaque position d'une image ou d'une sous-bande de décomposition les variations des amplitudes locales de l'image ou d'une sous-bande. Le présent algorithme permet aussi d'affecter une classe à chaque position d'une image ou d'une sous-bande de décomposition. La Fig. 3 représente l'algorithme de tatouage d'une marque dans une image en couleurs. Le processeur 100 du dispositif 10 de tatouage d'une marque dans une image en couleurs lit, à partir de la mémoire morte ROM 102, les instructions du programme correspondant aux étapes E300 à E313 de la Fig. 3 et les charge en mémoire vive 103 pour les exécuter. L'image à tatouer est une image en couleurs constituée de pixels et comporte. plusieurs composantes chromatiques, par exemple les composantes Rouge, Verte et Bleu. L'image peut aussi être représentée sous la forme d'une composante de luminance et de deux composantes chromatiques. A l'étape E300, le processeur 100 prend une première composante de l'image en couleurs à traiter et effectue, à l'étape E301, une transformation de cette composante de l'image. Cette transformation est une décomposition en ondelettes. La décomposition en ondelettes est préférentiellement une décomposition en ondelettes de Daubechies. En effet, les ondelettes de Daubechies utilisent des filtres portant sur un plus grand nombre d'échantillons que les filtres utilisés pour une décomposition en ondelettes de Haar. Ils offrent ainsi de meilleurs résultats pour la décomposition des images en sous-bandes. Par exemple, la décomposition en ondelettes est effectuée sur quatre niveaux de décomposition. Il est à remarquer ici que le nombre de niveaux de décomposition choisi pour le tatouage d'une marque dans l'image peut aussi être différent du nombre de niveau de décomposition choisi pour l'algorithme de détermination d'informations représentatives de variations d'amplitudes locales selon différentes directions précédemment décrites en référence à la Fig. 2. Lorsque la décomposition en ondelettes est effectuée, le processeur 100 passe à l'étape suivante E302 et vérifie si toutes les composantes de l'image en couleurs ont été décomposées en ondelettes. Dans la négative, le processeur 100 passe à l'étape E303, considère la composante suivante et retourne à l'étape E301 décomposer une nouvelle composante de l'image en couleurs de la même manière que celle précédemment décrite. Le processeur 100 réitère la boucle constituée des étapes E301 à E302 tant que toutes les composantes de l'image n'ont pas été décomposées. Lorsque toutes les composantes de l'image en couleurs ont été traitées, le processeur 100 passe à l'étape E304. A cette étape, le processeur 100 prend, pour chaque composante de l'image à traiter, le premier coefficient correspondant de chaque sous-bande de détails du dernier niveau de décomposition. Ces premiers coefficients correspondent à la première position (x,y) traitée. A l'étape suivante E305, le processeur 100 forme, pour la position (x,y) des sous-bandes de détails du dernier niveau de décomposition, des vecteurs de dimension trois dont les coordonnées sont les valeurs des coefficients ondelettes hautes fréquences des sous-bandes de détails pour chaque composante de l'image. Ainsi, pour une position (x,y) un vecteur est déterminé pour chaque composante de l'image en couleur à traiter. Par exemple, lorsque l'image en couleurs est sous la forme de trois composantes Rouge Vert et bleu, les vecteurs sont de la forme :103 in accordance with the present invention. The tattooing device 10 comprises a screen 104 and a keyboard 105 making it possible to select images to be tattooed according to the present invention or to modify for example the number of classes used by the present invention to determine the variations of local amplitudes in different directions around of a position of the image or to modify the values of the marking forces included in the table of FIG. 6. Fig. 2 represents an algorithm for determining, for a plurality of positions of the image, information representative of variations in local amplitudes in different directions. The processor 100 of the device 10 for watermarking a mark and / or for detecting a signature reads, from ROM ROM 102, the instructions of the program corresponding to steps E200 to E214 of FIG. 2 and loads them into RAM 103 to execute them. The image to be tattooed is a color image made up of pixels and has several components. These components are for example chromatic components such as for example the Red, Green and Blue components. Other color components such as yellow, cyan and magenta can also be used. The image can also be represented in the form of a luminance component and two chromatic components. In step E200, the processor 100 takes a first component of the color image to be processed and performs in step E201 a transformation of this component of the image. This transformation is a decomposition into wavelets or Discret Wavelet Transform in Anglo-Saxon terminology. The wavelet decomposition is preferably a Haar wavelet decomposition. Indeed, the Haar wavelet is particularly well suited for the determination of information representative of variations of local amplitudes of an image because it does not show edge effects on the image while being simple in its implementation. The decomposition of an image, more precisely of a component of the image is carried out by applying to the image two digital filters, respectively low pass and high pass which filter the signal in a first direction, for example horizontal. After filtering, the two filtered images are decimated by two. Each decimated image is respectively applied to a low pass filter and a high pass which filter them in a second direction, for example vertical. Each resulting filtered signal is then decimated by two to form four resolution sub-bands. A sub-band includes the low frequency coefficients along the two directions of the image signal. This sub-band is conventionally called the low sub-band of the first level of decomposition. The other three so-called detail sub-bands include the high frequency wavelet coefficients in the respective horizontal, vertical and diagonal directions. Each of these detail sub-bands, constructed from the original image, contains information corresponding to a respectively vertical, horizontal and diagonal orientation of the image, in a given frequency band. The decomposition performed is such that a sub-band of a given resolution is distributed into four sub-bands of lower resolution and therefore has four times more coefficients than each of the sub-bands of immediately lower resolution. To four coefficients at a position (2x, 2y) of a sub-band of given resolution corresponds a coefficient in each sub-band of lower resolution obtained at a position (x, y). Thus, to a coefficient located at a given position (x, y) in a sub-band, correspond coefficients to the same position (x, y) in the other respective sub-bands of the same level of decomposition. To these coefficients located at a given position (x, y) correspond four other coefficients to a position (2x, 2y) in the low frequency sub-band of higher decomposition level. Thus, a position of a sub-band corresponds to a position in the original image in the form of a pixel and / or corresponds a position in a sub-band of a different level of decomposition. When the image is decomposed into two levels of decomposition, the low sub-band of the first level of decomposition is decomposed again according to the same decomposition as that described previously to form a low sub-band of second level of decomposition and three sub -bands of details comprising high frequency wavelet coefficients in the respective horizontal, vertical and diagonal directions. At each new decomposition, the low sub-band of the lowest decomposition level is used to form a new low sub-band of lower decomposition level and three detail sub-bands comprising high-frequency wavelet coefficients in the respective horizontal directions. , vertical and diagonal. According to a preferred mode of the present invention, the decomposition is carried out on four levels of decomposition to obtain four sub-bands of fourth level of decomposition. For each sub-band of details of the fourth level of decomposition, the high-frequency wavelet coefficients are stored in the respective horizontal, vertical and diagonal directions. After the decomposition, the processor 100 considers in step E202 a first sub-band of details in a direction previously obtained. In the next step E203, the processor 100 squares the amplitude of each coefficient of the sub-band considered. This makes it possible to introduce a concept of energy to the coefficients of the sub-band. They can then be considered as indicators of the evolution of energy in the image. In the next step E204, the processor 100 determines a median value for each coefficient of the sub-band considered whose amplitude has been previously squared. This median value is for example calculated on a support of size three by three, that is to say that the median value is determined from the amplitudes of the coefficients close to the coefficient for which the determination is made. This median calculation has the effect of highlighting the areas of the detail sub-band in a direction which have large variations, that is to say textured areas. This operation carried out, the processor 100 goes to the next step E205 and checks whether all the detail subbands have been processed. If not, the processor 100 goes to step E206 and repeats the loop made up of steps E203 to E206 until the three detail sub-bands are processed. When the three detail sub-bands comprising the high frequency wavelet coefficients in the respective horizontal, vertical and diagonal directions have been processed, the processor 100 goes to the next step E207. In step E207, the processor 100 forms, for each position (x, y) of detail sub-bands of the fourth level of decomposition, a vector of dimension three representative of the intensity of the local fluctuations. At each position (x, y), the vector formed has as coordinates the median value determined previously at position (x, y) for the sub-band of details comprising high frequency wavelet coefficients in the horizontal direction, the median value determined previously at position (x, y) for the detail sub-band comprising high-frequency wavelet coefficients in the vertical direction and the median value determined previously at position (x, y) for the detail sub-band comprising coefficients high frequency wavelets in the diagonal direction. The vectors formed, the processor 100 defines in step E208 the classes according to which the vectors formed in the previous step will be classified. For example, five classes are defined. The class denoted class 1 groups together the vectors representative of areas not comprising variations, that is to say the vectors whose coordinates are of small value. Class 2 groups the vectors representative of areas of the image comprising predominantly horizontal variations, that is to say the vectors whose median value coordinate calculated in the sub-band of details comprising high-frequency wavelet coefficients according to the direction horizontal has an important value while the median values calculated in the other detail sub-bands are of low value. Class 3 groups the vectors representative of areas of the image comprising predominantly vertical variations, that is to say the vectors whose median value coordinate calculated in the sub-band of details comprising high-frequency wavelet coefficients according to the direction vertical has an important value, while the median values calculated in the other detail sub-bands are of low value. Class 4 groups the vectors representative of areas of the image comprising predominantly diagonal variations, that is to say the vectors whose median value coordinate calculated in the sub-band of details comprising high frequency wavelet coefficients according to the direction diagonal has an important value while the median values calculated in the other detail sub-bands are of low value. Class 5 groups the vectors representative of very strongly textured areas of the image and without preferred direction, that is to say the vectors which each have their coordinates at a significant value. It should be noted here that the number of classes can be reduced. In particular, classes 2, 3 and 4 may alternatively be grouped into a single class. Alternatively, the number of classes can also be increased. Other classes grouping the vectors representative of areas of the image comprising variations in two directions can also be formed. The use of five classes is preferred according to the present invention and allows precise detection of the textures included in the image to be processed. Even textures whose direction is mainly diagonal can be detected, although conventionally, the energy associated with these diagonals is lower than those associated with other directions. Once step E208 has been performed, the processor 100 then goes to steps E209 to E212 to classify areas of the image to be processed, that is to say to group the vectors into areas from the previously defined classes. The processor 100 will thus group the vectors whose coordinates are similar in the five predetermined classes. The method used is for example the dynamic cloud method. Of course, other methods can also be used. For this, the processor 100 determines in step E209 an initial center for each of the classes 1 to 5. For the class 1, the processor 100 takes the zero vector denoted gO as the initial center. For class 2, the processor 100 forms an initial center gl whose coordinates are (MaximumH, 0, 0) where Maximum H is the maximum median value for the detail sub-band comprising high frequency wavelet coefficients in the horizontal direction. For class 3, the processor 100 forms an initial center g2 whose coordinates are (0, MaximumV, 0) where MaximumV is the maximum median value for the detail sub-band comprising high frequency wavelet coefficients in the vertical direction. For class 4, the processor 100 forms an initial center g3 whose coordinates are (0, 0, MaximumD) where MaximumD is the maximum median value for the detail sub-band comprising high frequency wavelet coefficients in the diagonal direction. For class 5, the processor 100 forms an initial center g4 whose coordinates are (MaximumH, MaximumV, MaximumD). The initial centers defined, the processor 100 goes to the next step E210. At this step, the processor 100 constructs a partition of the image into zones by assigning each vector formed in step E207 to the class of which it is closest to the initial center. In the next step E211, the processor 100 determines a new initial center representative of each area from the vectors which have been assigned respectively to each area. This operation carried out, the processor 100 determines whether the quality of the distribution is improved or not. If so, the processor 100 returns to step E210 and repeats steps E210 to E212 as long as the quality of the distribution is improved. When the quality of the distribution is no longer improved, the processor 100 goes to step E213. In step E213, the processor 100 checks whether all the components of the image have been processed. If not, the processor 100 goes to step E214, takes another component and returns to step E201 to process the new component of the color image. When all the components have been processed, a class is associated with each position (x, y) of each detail sub-band of each component. This class corresponds to a local determination of the texture of the image at a position (x, y). It should be noted here that the segmentation as performed by the algorithm of FIG. 2 aims to complete the areas of the image having textures, regardless of the main direction of the textures included in the image. It should be noted here that, as a variant, only one component can be treated. For example, when the image is formed of a luminance component and of chromatic components, the present algorithm is only carried out on the luminance component. Thus, the processor 100 of the watermarking device has determined for each position of the sub-bands of details of the lowest level of resolution of the information representative of the variations of the local amplitudes in different directions of the coefficients of the sub-bands of details from the amplitudes of the coefficients respectively at this position and amplitudes of the coefficients close to this position. The processor 100 also determined from the lowest resolution level different texture zones. From these determined texture zones, it is then possible to determine, for the sub-bands of details of higher resolution level and for the original image and for each position of the image, information representative of the variations in local amplitudes according to different directions. Thus, the present algorithm defines for each position of an image or of a decomposition sub-band the variations of the local amplitudes of the image or of a sub-band. The present algorithm also makes it possible to assign a class to each position of an image or of a decomposition sub-band. Fig. 3 represents the algorithm for tattooing a mark in a color image. The processor 100 of the device 10 for watermarking a mark in a color image reads, from the ROM ROM 102, the instructions of the program corresponding to steps E300 to E313 of FIG. 3 and loads them into RAM 103 to execute them. The image to be tattooed is a color image made up of pixels and includes. several chromatic components, for example the Red, Green and Blue components. The image can also be represented in the form of a luminance component and two chromatic components. In step E300, the processor 100 takes a first component of the color image to be processed and performs, in step E301, a transformation of this component of the image. This transformation is a decomposition into wavelets. The decomposition in wavelets is preferably a decomposition in wavelets of Daubechies. Indeed, the Daubechies wavelets use filters relating to a larger number of samples than the filters used for a decomposition into Haar wavelets. They thus offer better results for the decomposition of the images into sub-bands. For example, the wavelet decomposition is performed on four decomposition levels. It should be noted here that the number of levels of decomposition chosen for the watermarking of a mark in the image may also be different from the number of levels of decomposition chosen for the algorithm for determining information representative of variations in amplitudes local in different directions previously described with reference to FIG. 2. When the wavelet decomposition is carried out, the processor 100 goes to the next step E302 and checks whether all the components of the color image have been decomposed into wavelets. If not, the processor 100 goes to step E303, considers the next component and returns to step E301 to decompose a new component of the color image in the same manner as that previously described. The processor 100 repeats the loop made up of steps E301 to E302 until all the components of the image have been broken down. When all the components of the color image have been processed, the processor 100 goes to step E304. At this stage, the processor 100 takes, for each component of the image to be processed, the first corresponding coefficient of each sub-band of details of the last level of decomposition. These first coefficients correspond to the first position (x, y) processed. In the next step E305, the processor 100 forms, for the position (x, y) of the detail sub-bands of the last level of decomposition, three-dimensional vectors whose coordinates are the values of the high frequency wavelet coefficients of the sub -bands of details for each component of the image. Thus, for a position (x, y) a vector is determined for each component of the color image to be processed. For example, when the color image is in the form of three Red Green and blue components, the vectors are of the form:
Vi(x,y)=(CoeffH4i(x,y), CoeffV4i(x,y), CoeffD4i(x,y)) où i représente la composante rouge, verte ou bleu CoeffH4i(x,y) représente le coefficient de la quatrième sous-bande de détails selon la direction horizontale, CoeffV4i(x,y) représente le coefficient de la quatrième sous-bande de détails selon la direction verticale et CoeffD4i(x,y) représente le coefficient de la quatrième sous-bande de détails selon la direction diagonale. Les vecteurs formés, le processeur 100 passe à l'étape E306 et calcule pour la position (x,y) courante à distance euclidienne entre chacun des trois vecteurs pris deux à deux :Vi (x, y) = (CoeffH 4i (x, y), CoeffV 4i (x, y), CoeffD 4i (x, y)) where i represents the red, green or blue component CoeffH4i (x, y) represents the coefficient of the fourth detail sub-band in the horizontal direction, CoeffV4i (x, y) represents the coefficient of the fourth detail sub-band in the vertical direction and CoeffD4i (x, y) represents the coefficient of the fourth sub- strip of details in diagonal direction. The vectors formed, the processor 100 goes to step E306 and calculates for the current position (x, y) at Euclidean distance between each of the three vectors taken two by two:
DRB(x,y) = |VR(x.y)-VB(x,y)| DRG(x,y) = |VR(x,y)-VG(x,y)| DBo(x,y) = |VB(x,y)-VG(x,y)| Cette opération effectuée, le processeur 100 passe à l'étape E307 et détermine pour la position (x,y) courante la plus grande des distances DRB(x,y), DRG(x,y) et DBG(x,y) calculées précédemment à l'étape E306. Aux étapes suivantes E308 et E309, le processeur 100 détermine pour la position (x,y) courante, les vecteurs servant de référence pour le marquage du vecteur à marquer ainsi que le vecteur parmi les trois vecteurs VR(x,y), Vo(x,y) VB(x,y) qui va être utilisé pour le marquage ou le tatouage. Si DRB(x,y) > DRG(x,y) et DRB(x,y) > DBG(x,y), le vecteur VG(x,y) est choisi ou sélectionné comme vecteur VM comportant la marque et les vecteurs V (x,y) et VB(x,y) sont considérés comme vecteurs de référence notés respectivement Vrefl et Vref2. Si DRG(x,y) > DRB(x,y) et DRG(x,y) > DBG(x,y), le vecteur VB(x,y) est choisi ou sélectionné comme vecteur VM comportant la marque et les vecteurs V (x,y) et VG(x,y) sont considérés comme vecteurs de référence notés respectivement Vrefl et Vref2. Si DBG(x,y) > Dr<B(x,y) et DBG(x,y) > DRG(x,y), le vecteur VR(x,y) est choisi ou sélectionné comme vecteur VM comportant la marque et les vecteurs VB(x,y) et VG(x,y) sont considérés comme vecteurs de référence notés respectivement Vrefl et Vrefi. Ces opérations effectuées, le processeur 100 passe à l'étape suivante E310 et insère une information binaire à la position courante (x,y) sur le vecteur VM précédemment déterminé comme devant comporter l'information binaire. Cette étape d'insertion d'une information binaire sur le vecteur VM correspondant à une position sera explicitée plus en détail en regard de la Fig. 4. Cette opération effectuée, le processeur passe à l'étape E311 et vérifie si la position courante est la dernière des positions à traiter. Dans la négative, le processeur 100 prend à l'étape E312, pour chaque composante de l'image à traiter, le coefficient à la position suivante correspondante de chaque sous-bande de détails du dernier niveau de décomposition. Tant que tous les coefficients des sous-bandes de détails n'ont pas été traités, le processeur 100 réitère la boucle constituée des étapes E305 à E312. Lorsque tous les coefficients des sous-bandes de détails ont été traités, le processeur 100 passe à l'étape E313 et reconstruit l'image en prenant en compte les coefficients marqués par l'insertion de la marque. Cette opération effectuée, l'algorithme s'arrête et reprend à l'étape E300 lorsqu'une nouvelle marque doit être tatouée dans une nouvelle image. La Fig. 4 représente un algorithme détaillé de l'étape E310 de la Fig. 3 d'insertion d'une information binaire à une position du niveau de résolution le plus bas de l'image à tatouer. L'algorithme de la Fig. 4 décrit la modification des coordonnées du vecteur VM déterminé à l'étape E309 de la Fig. 3 comme comportant une information binaire pour une position des sous-bandes de détails. A l'étape E400, le processeur 100 détermine l'information binaire à insérer à la position courante en cours de traitement. A chaque position des sous-bandes de détails correspond une information binaire à insérer. On génère par l'intermédiaire d'une clé une signature pseudo aléatoire S. Cette signature S notée 50 en Fig. 5 est constituée d'une série d'informations binaires d' une taille N*N . Cette signature peut aussi être représentative du nom de l'auteur, du nom du propriétaire de l'image, du contenu de l'image ou de tout type d'informations. Les informations binaires sont représentées en Fig. 5 par des carrés noirs ou blancs. Les carrés noirs des signatures représentent une information binaire à la valeur binaire un tandis que les carrés blancs représentent une information binaire à la valeur binaire zéro. La signature S comporte un nombre limité d'information par rapport au nombre de positions dans les sous-bandes de détails. La signature S est dupliquée de manière à ce que à chaque position de sous-bande de résolution la plus basse, ou à chaque vecteur VM soit associée une information binaire à insérer. En effet, plus cette signature sera insérée de manière redondante un nombre de fois important dans les sous-bandes de détails, plus la robustesse du marquage sera grande. La duplication peut être effectuée bit à bit comme la redondance notée 51 de la Fig. 5 ou signature par signature comme cela est illustré en 52 de la fig. 5. Le nombre de répétitions de la signature 40 est déterminé par le rapport entre la taille de la sous-bande de décomposition du niveau le plus bas et la taille de la signature. Ainsi, pour chaque position des sous-bandes de détails correspond une valeur binaire à insérer. Le processeur détermine donc à cette étape l'information binaire zéro ou un correspondante qui doit être insérée à cette position. Cette opération effectuée, le processeur 100 détermine à l'étape E401, parmi les deux vecteurs de référence Vrefl et Vref2, le vecteur de référence de marquage noté Vrefm utilisé pour la modification du vecteur VM déterminé à l'étape E309 de la Fig. 3 comme comportant la marque pour une position des sous-bandes de détails. En effet, le marquage selon la présente invention est effectué en modifiant le vecteur VM de manière à le rapprocher du vecteur de référence Vrefl ou Vref2 selon la valeur de l'information binaire à insérer et selon certaines conventions prédéfinies. Plus précisément, le vecteur VM est modifié d'une façon telle que la distance du vecteur de référence de marquage Vrefm soit inférieure à la distance de l'autre vecteur de référence. Par exemple, la convention suivante peut être prise : Si VM est le vecteur V (x,y) et la valeur de l'information binaire à insérer est à zéro, le vecteur VM doit être rapproché du vecteur VG(x,y). Le vecteur Vrefm est alors le vecteur VG(x,y). Si VM est le vecteur VR(x,y) et la valeur de l'information binaire à insérer est à un, le vecteur VM doit être rapproché du vecteur VB(x,y). Le vecteur Vrefm est alors le vecteur VB(x,y). Si VM est le vecteur VG(x,y) et la valeur de l'information binaire à insérer est à zéro, le vecteur VM doit être rapproché du vecteur VR(x,y). Le vecteur Vrefm est alors le vecteur VR(x,y). Si VM est le vecteur VG(x,y) et la valeur de l'information binaire à insérer est à un, le vecteur VM doit être rapproché du vecteur VB(x,y). Le vecteur Vrefm est alors le vecteur VB(x,y). Si VM est le vecteur VB(x,y) et la valeur de l'information binaire à insérer est à zéro, le vecteur VM doit être rapproché du vecteur VR(x,y). Le vecteur Vrefm est alors le vecteur VR(x,y). Si VM est le vecteur VB(x,y) et la valeur de l'information binaire à insérer est à un, le vecteur VM doit être rapproché du vecteur VG(x,y). Le vecteur Vrefm est alors le vecteur VBG(x,y). Le vecteur de référence de marquage déterminé, le processeur 100 passe à l'étape suivante E402. A cette étape, le processeur 100 détermine la force de marquage F de l'information binaire à insérer. Pour cela, le processeur 100 obtient la classe à laquelle appartient le vecteur déterminé à l'étape E208 pour la position courante. En fonction de cette classe et du vecteur VM, le processeur 100 détermine par exemple à partir d'une table mémorisée en mémoire morte ROM 102 du dispositif de marquage 10 la force de marquage de l'information binaire. Cette table est par exemple conforme à la table telle que représentée en Fig. 6. La table de la Fig. 6 comporte cinq lignes notées 61 à 65. La ligne 61 comporte, pour les différentes composantes de l'image, les forces de marquage associées à la classe 1 représentative de zones considérées comme uniformes. La ligne 62 comporte, pour les différentes composantes de l'image, les forces de marquage associées à la classe 2 représentative de zones texturées selon une direction majoritairement horizontale. La ligne 63 comporte, pour les différentes composantes de l'image, les valeurs représentatives des forces de marquage associées à la classe 3 représentative de zones texturées selon une direction majoritairement verticale. La ligne 64 comporte, pour les différentes composantes de l'image, les valeurs représentatives des forces de marquage associées à la classe 4 représentative de zones texturées selon une direction majoritairement diagonale. La ligne 65 comporte, pour les différentes composantes de l'image, les valeurs représentatives des forces de marquage associées à la classe 5 représentative de zones fortement texturées. La table de la Fig. 6 comporte autant de colonnes qu'il existe de composantes de l'image en couleurs. Selon notre exemple, la table comporte trois colonnes notées 66 à 68. La colonne 66 correspond selon notre exemple à la composante rouge de l'image à traiter et comprend pour chacune des classes de l'algorithme de la Fig. 2 une valeur représentative de la force de marquage pour la composante rouge. La colonne 67 correspond selon notre exemple à la composante verte de l'image à traiter et comprend pour chacune des classes de l'algorithme de la Fig. 2 une valeur représentative de la force de marquage pour la composante verte. La colonne 68 correspond selon notre exemple à la composante bleue de l'image à traiter et comprend pour chacune des classes de l'algorithme de la Fig. 2 une valeur représentative de la force de marquage pour la composante bleue. Le processeur 100 détermine la composante de l'image à traiter. Cette composante est la composante du vecteur qui a été déterminé comme vecteur VM comportant la marque. Par exemple, si le vecteur VB(x,y) a été déterminé à l'étape E309 de l'algorithme de la Fig. 3 comme vecteur VM comportant la marque, la composante déterminée est la composante bleue. Le processeur 100 détermine ensuite, pour la composante déterminée, à quelle classe appartient la position en cours de traitement. Cette classe a été préalablement déterminée selon l'algorithme de la Fig. 2. En fonction de la composante déterminée et de la classe à laquelle appartient la position en cours de traitement, le processeur 100 détermine ainsi la valeur de la force F de marquage à appliquer à cette position. Il est à remarquer qu'en variante, les forces de marquage peuvent être identiques pour chacune des composantes. La force de marquage peut aussi être déterminée en variante en déterminant à quelle classe appartient la position en cours de traitement pour les autres composantes. Le processeur 100, selon la présente variante, vérifie si les classes définies pour chacune des composantes à cette composante sont cohérentes. Si par exemple à cette position, les vecteurs formés à l'étape E207 sont tous considérés comme appartenant à une classe identique, la valeur de la force de marquage est augmentée. Si par contre, la composante déterminée est la seule des composantes considérée comme comprenant des informations représentatives de variations d'amplitudes locales selon au moins une direction, la valeur de la force de marquage est réduite. Cette opération effectuée, le processeur 100 passe ensuite à l'étape suivante E403. A cette étape, le processeur 100 détermine si la distance entre le vecteur VM comportant la marque et le vecteur référence de marquage Vrefm est supérieure à la distance entre le vecteur VM comportant la marque et le vecteur référence Vrefl ou Vref2 n'ayant pas été considéré comme vecteur référence de marquage. Dans la négative, le processeur 100 passe à l'étape E405. Si la distance entre le vecteur VM comportant la marque et le vecteur référence de marquage Vrefm est supérieure à la distance entre le vecteur VM comportant la marque et le vecteur référence Vrefl ou Vref2 n'ayant pas été considéré comme vecteur référence de marquage, le processeur 100 passe à l'étape E404. A cette étape, le processeur 100 modifie le vecteur VM de manière à ce que la distance entre le vecteur VM comportant la marque et le vecteur référence de marquage Vrefm soit inférieure à la distance entre le vecteur VM comportant la marque et le vecteur référence Vrefl ou Vref2 n'ayant pas été considéré comme vecteur référence de marquage. Cette modification est effectuée de telle façon à rendre la modification du vecteur VM minimale. Cette opération effectuée, le processeur 100 passe à l'étape suivante E405. A l'étape E405, le processeur 100 calcule le vecteur marqué Vwm selon la formule : Vwm= Vrefm-(l-F)*(Vrefm-VM). Il est à remarquer ici que le vecteur VM est le vecteur déterminé à l'étape E309 de l'algorithme de la Fig. 3 ou le vecteur VM déplacé à l'étape E403, F la force de marquage et Vrefm le vecteur référence de marquage. Conformément aux valeurs indiquées dans le tableau de la Fig. 6, la force de marquage F varie entre des valeurs comprises entre zéro et un. Lorsque la force de marquage est nulle, c'est-à-dire lorsque la position en cours de traitement est dans une zone considérée comme uniforme, le vecteur marqué est égal au vecteur VM. Aucune marque n'est insérée pour cette position. En effet, l'insertion de marques dans des zones uniformes d'une image crée des perturbations visuellement discernables. L'algorithme selon l'invention n'insère donc aucune marque aux positions correspondantes aux zones uniformes. Lorsque la force de marquage F est proche de l'unité, le vecteur VM comportant la marque est quasiment remplacé par le vecteur référence de marquage Vrefm. Ce marquage est particulièrement robuste et résiste à tout traitement ultérieur tel qu'une compression de l'image. Ce marquage créé par contre des perturbations dans l'image discernable. En effectuant un tel marquage lorsque l'insertion est effectuée dans une zone de l'image fortement texturée, le marquage reste néanmoins invisible pour l'œil. Lorsque la force de marquage F est par exemple égale à un demi, le vecteur marqué Vwm est égal à la moyenne des deux vecteurs VM et Vrefm. Ceci permet un compromis correct entre la visibilité et la robustesse de la marque pour des zones texturées selon une direction privilégiée. Il est à remarquer ici que la force de marquage appliquée sur la composante verte est, quelle que soit la classe à laquelle appartient la position en cours de traitement, inférieure à la moitié. En effet, la composante verte permet de mieux protéger une marque d'éventuelles attaques mais le système visuel humain est plus sensible aux variations dans cette composante. Il est à remarquer ici que la force de marquage appliquée sur la composante rouge ou la composante bleue est supérieure à la moitié lorsque la classe à laquelle appartient la position en cours de traitement est une classe de texture. En effet, le système visuel humain est moins sensible aux variations dans ces composantes, la marque peut alors être insérée avec une force de marquage plus importante. Le vecteur Vwm calculé, le processeur 100 passe à l'étape 406 et modifie les coefficients des sous-bandes de détails de la composante modifiée correspondants aux coordonnées du vecteur marqué Vwm. Cette opération effectuée, le processeur 100 retourne à l'étape E311 de l'algorithme de la Fig. 3. Il est à remarquer ici que le tatouage de l'image est effectué en insérant une information binaire à chaque position et l'algorithme de la Fig. 2 ne définit pas des zones qui doivent comporter la marque, mais il permet la détermination pour chaque position d'une image d'informations représentatives de variations d'amplitudes locales selon différentes directions et de définir une force de marquage à appliquer sur chaque position. La Fig. 7 représente l'algorithme de détection d'une signature insérée dans une image selon l'algorithme de tatouage d'une marque selon la présente invention. Le processeur 100 du dispositif 10 de détection d'une signature lit, à partir de la mémoire morte ROM 102, les instructions du programme correspondant aux étapes E700 à E716 de la Fig. 7 et les charge en mémoire vive 103 pour les exécuter. A l'étape E700, le processeur 100 détermine, pour chaque position de l'image dans laquelle une marque a été tatouée, des informations représentatives de variations d'amplitudes locales selon différentes directions. Cette étape correspond à l'algorithme de la Fig. 2 précédemment décrit. Elle ne sera pas plus explicitée. Cette opération effectuée, le processeur 100 passe à l'étape suivante E701. L'étape E701 ainsi que les étapes E702, E703 et E704 sont identiques respectivement aux étapes E300, E301, E302 et E303. Elles ne seront pas plus décrites. Les décompositions en ondelettes ayant été effectuées, le processeur 100 passe à F étape suivante E705. A cette étape, le processeur 100 prend, pour chaque composante de l'image à traiter, le premier coefficient correspondant de chaque sous-bande de détails du dernier niveau de décomposition. Ces premiers coefficients correspondent à la première position (x,y) traitée. A l'étape suivante E706, le processeur 100 forme, pour la position (x,y) des sous-bandes de détails du dernier niveau de décomposition, un vecteur pour chaque composante de l'image à traiter. Ces vecteurs, de dimension trois, ont comme coordonnées les valeurs des coefficients ondelettes hautes fréquences des sous- bandes de détails pour les composantes respectives de l'image. Cette étape est identique à l'étape E305 de la Fig. 3. Elle ne sera pas plus explicitée. Les vecteurs formés, le processeur 100 passe à l'étape E707 et calcule pour la position (x,y) courante la distance euclidienne entre chacun des trois vecteurs déterminés à l'étape E706 pris deux à deux. Cette étape est identique à l'étape E306 de la Fig. 3. Elle ne sera pas plus explicitée. Cette opération effectuée, le processeur 100 passe à l'étape E708 et détermine pour la position (x,y) courante la plus grande des distances calculées précédemment à l'étape E707. A l'étape suivante E709, le processeur 100 détermine pour la position (x,y) courante, les vecteurs servant de référence Vrefl et Vref2 pour le marquage du vecteur à marquer. Ces vecteurs Vrefl et Vref2 sont les vecteurs séparés par la plus grande distance calculée à l'étape E708. Cette opération effectuée, le processeur 100 passe à l'étape suivante E710 et détermine le vecteur VM qui a été utilisé pour le tatouage ainsi que le vecteur de référence de marquage noté Vrefm utilisé pour la modification du vecteur VM. Le vecteur VM est le vecteur n'ayant pas été utilisé comme vecteur de référence à l'étape précédente. Le vecteur de référence de marquage Vrefm est déterminé en choisissant le vecteur, parmi les vecteurs de référence Vrefl et Vref2, qui est le plus proche de VM. Cette opération effectuée, le processeur 100 détermine à l'étape E711 la classe déterminée pour la position courante à l'étape E700. Pour cela, le processeur 100 détermine la classe à laquelle appartient le vecteur formé à l'étape E700 et ayant la même composante que le vecteur VM. Cinq classes sont utilisées dans la présente invention, ces classes sont identiques aux classes 1, 2, 3, 4 et 5 explicitées précédemment en référence à la Fig. 2. A l'étape suivante E712, le processeur 100 détermine la convention de marquage utilisée lors du tatouage de la marque dans l'image. En effet et selon la présente invention, le marquage est effectué en modifiant le vecteur VM de manière à le rapprocher du vecteur de référence Vrefl ou Vref2 selon la valeur de l'information binaire à insérer. Le processeur 100 déduit ainsi selon la convention utilisée si la valeur de l'information binaire insérée sur le vecteur VM est égale à un ou à zéro. Cette opération effectuée, le processeur 100 mémorise à l'étape E713 la valeur de l'information binaire déterminée ainsi que la classe déterminée à l'étape précédente E711. A l'étape suivante E714, le processeur 100 vérifie si chaque position des sous- bandes de détails a été traitée. Dans la négative, le processeur 100 passe à l'étape E715 et prend pour chaque composante de l'image à traiter le coefficient suivant de chaque sous-bande de détails du dernier niveau de décomposition. Ces coefficients correspondent à la position suivante à traiter. Cette opération effectuée, le processeur 100 retourne à l'étape E706 précédemment décrite et réitère les étapes E706 à E714 tant que toutes les positions des sous-bandes de détails ont été traitées. Lorsque toutes les positions ont été traitées, le processeur 100 passe à l'étape E716. A cette étape, le processeur 100 obtient une signature à partir des informations binaires mémorisées à l'étape précédente E713. Lors du tatouage de la marque dans l'image, la signature S a été dupliquée de manière à ce qu'à chaque vecteur VM, une information binaire soit associée. Connaissant la règle de duplication, le processeur 100 obtient au moins une partie des informations binaires insérées pour chaque bit de la signature et détermine pour chaque bit de la signature sa valeur moyenne. En effet, seules les informations binaires qui ont été insérées à des positions correspondantes aux classes 2, 3, 4 et 5 sont utilisées pour le calcul de la valeur moyenne. La classe 1 regroupe les positions de l'image non texturées. Lorsque des informations binaires sont insérées dans ces zones non texturées, elles le sont avec une force de marquage de faible valeur. Compte tenu des manipulations qui peuvent être effectuées sur l'image comprenant la marque, le risque de détermination d'une information binaire erronée à cette position est important. Afin de garantir une bonne détection de la signature, les informations binaires comprises ou susceptibles d'être comprises à ces positions ne sont donc pas prises en compte. En variante, lors du calcul de la valeur moyenne de chaque bit de la signature, le processeur 100 pondère chaque information binaire par un facteur de confiance déterminé en fonction de la classe correspondant à la position à laquelle l'information binaire a été obtenue. Selon cette variante, les informations binaires obtenues à des positions correspondantes à la classe 5 ont été insérées avec une force de marquage plus importante que les autres classes. Compte tenu des manipulations qui peuvent être effectuées sur l'image comprenant la marque, le risque de détermination d'une information binaire erronée à des positions correspondantes à la classe 5 est faible. Afin de garantir une meilleure détection de la signature, il est alloué lors du calcul des valeurs moyennes un poids plus important aux informations binaires obtenues à des positions correspondantes à la classe 5 qu'aux autres informations binaires. Le processeur 100 calcule ensuite le taux de ressemblance entre la signature originale S dont il dispose et la signature obtenue S' à partir des valeurs moyennes précédemment calculées. Le calcul du taux de vraisemblance cc(S, S') est par exemple de la formeDR B (x, y) = | V R (xy) -V B (x, y) | D RG (x, y) = | V R (x, y) -V G (x, y) | D B o (x, y) = | V B (x, y) -V G (x, y) | This operation carried out, the processor 100 goes to step E307 and determines for the current position (x, y) the greatest of the distances D RB (x, y), D RG (x, y) and D BG (x, y) previously calculated in step E306. In the following steps E308 and E309, the processor 100 determines for the current position (x, y), the vectors serving as a reference for marking the vector to be marked as well as the vector among the three vectors V R (x, y), Vo (x, y) V B (x, y) which will be used for marking or tattooing. If D RB (x, y)> D RG (x, y) and D RB (x, y)> D BG (x, y), the vector V G (x, y) is chosen or selected as vector VM comprising the mark and the vectors V (x, y) and V B (x, y) are considered as reference vectors denoted respectively Vrefl and Vref2. If D RG (x, y)> D RB (x, y) and D RG (x, y)> D BG (x, y), the vector V B (x, y) is chosen or selected as vector VM comprising the mark and the vectors V (x, y) and V G (x, y) are considered as reference vectors denoted respectively Vrefl and Vref2. If D BG (x, y)> Dr <B (x, y) and D BG (x, y)> D RG (x, y), the vector V R (x, y) is chosen or selected as vector VM comprising the mark and the vectors V B (x, y) and V G (x, y) are considered as reference vectors denoted respectively Vrefl and Vrefi. Once these operations have been carried out, the processor 100 goes to the next step E310 and inserts binary information at the current position (x, y) on the vector VM previously determined as having to include the binary information. This step of inserting binary information on the vector VM corresponding to a position will be explained in more detail with reference to FIG. 4. Once this has been done, the processor goes to step E311 and checks whether the current position is the last of the positions to be processed. If not, the processor 100 takes in step E312, for each component of the image to be processed, the coefficient at the corresponding next position of each sub-band of details of the last level of decomposition. As long as all the coefficients of the detail sub-bands have not been processed, the processor 100 repeats the loop made up of steps E305 to E312. When all the coefficients of the detail sub-bands have been processed, the processor 100 goes to step E313 and reconstructs the image by taking into account the coefficients marked by the insertion of the mark. This operation carried out, the algorithm stops and resumes at step E300 when a new mark must be tattooed in a new image. Fig. 4 represents a detailed algorithm of step E310 of FIG. 3 insertion of binary information at a position of the lowest resolution level of the image to be tattooed. The algorithm of FIG. 4 describes the modification of the coordinates of the vector VM determined in step E309 of FIG. 3 as comprising binary information for a position of the detail sub-bands. In step E400, the processor 100 determines the binary information to be inserted at the current position during processing. Each position of the detail sub-bands corresponds to binary information to be inserted. A pseudo-random signature S is generated by means of a key. This signature S denoted 50 in FIG. 5 consists of a series of binary information of size N * N. This signature can also be representative of the name of the author, the name of the owner of the image, the content of the image or any type of information. Binary information is shown in Fig. 5 with black or white squares. The black squares of the signatures represent binary information at binary value one while the white squares represent binary information at binary value zero. The signature S contains a limited number of information relative to the number of positions in the detail sub-bands. The signature S is duplicated so that each lowest resolution sub-band position, or each vector VM, is associated with binary information to be inserted. Indeed, the more this signature is redundantly inserted a large number of times in the detail sub-bands, the greater the robustness of the marking. The duplication can be carried out bit by bit like the redundancy noted 51 of FIG. 5 or signature by signature as illustrated in 52 of FIG. 5. The number of repetitions of the signature 40 is determined by the ratio between the size of the lowest level decomposition sub-band and the size of the signature. Thus, for each position of the detail sub-bands corresponds a binary value to be inserted. The processor therefore determines at this stage the binary information zero or a corresponding one which must be inserted at this position. This operation carried out, the processor 100 determines in step E401, among the two reference vectors Vrefl and Vref2, the marking reference vector denoted Vrefm used for the modification of the vector VM determined in step E309 of FIG. 3 as comprising the mark for a position of the detail sub-bands. Indeed, the marking according to the present invention is carried out by modifying the vector VM so as to bring it closer to the reference vector Vrefl or Vref2 according to the value of the binary information to be inserted and according to certain predefined conventions. More specifically, the vector VM is modified in such a way that the distance from the reference reference vector Vrefm is less than the distance from the other reference vector. For example, the following convention can be taken: If VM is the vector V (x, y) and the value of the binary information to be inserted is zero, the vector VM must be compared to the vector V G (x, y) . The vector Vrefm is then the vector V G (x, y). If VM is the vector V R (x, y) and the value of the binary information to be inserted is one, the vector VM must be compared with the vector V B (x, y). The vector Vrefm is then the vector V B (x, y). If VM is the vector V G (x, y) and the value of the binary information to be inserted is zero, the vector VM must be compared with the vector V R (x, y). The vector Vrefm is then the vector V R (x, y). If VM is the vector V G (x, y) and the value of the binary information to be inserted is one, the vector VM must be compared to the vector V B (x, y). The vector Vrefm is then the vector V B (x, y). If VM is the vector V B (x, y) and the value of the binary information to be inserted is zero, the vector VM must be compared with the vector V R (x, y). The vector Vrefm is then the vector V R (x, y). If VM is the vector V B (x, y) and the value of the binary information to be inserted is one, the vector VM must be compared with the vector V G (x, y). The vector Vrefm is then the vector V BG (x, y). Once the marking reference vector has been determined, the processor 100 goes to the next step E402. At this stage, the processor 100 determines the marking force F of the binary information to be inserted. For this, the processor 100 obtains the class to which the vector determined in step E208 belongs for the current position. As a function of this class and of the vector VM, the processor 100 determines for example from a table stored in ROM ROM 102 of the marking device 10 the strength of marking of the binary information. This table conforms, for example, to the table as shown in FIG. 6. The table in FIG. 6 comprises five lines denoted 61 to 65. Line 61 comprises, for the various components of the image, the marking forces associated with class 1 representative of zones considered to be uniform. Line 62 includes, for the various components of the image, the marking forces associated with class 2 representative of textured areas in a predominantly horizontal direction. Line 63 includes, for the various components of the image, the values representative of the marking forces associated with class 3 representative of textured zones in a predominantly vertical direction. Line 64 includes, for the various components of the image, the values representative of the marking forces associated with class 4 representative of textured areas in a predominantly diagonal direction. Line 65 includes, for the various components of the image, the values representative of the marking forces associated with class 5 representative of highly textured areas. The table in FIG. 6 has as many columns as there are components of the color image. According to our example, the table has three columns denoted 66 to 68. Column 66 corresponds according to our example to the red component of the image to be processed and includes for each of the classes of the algorithm of FIG. 2 a value representative of the marking force for the red component. Column 67 corresponds according to our example to the green component of the image to be processed and includes for each of the classes of the algorithm of FIG. 2 a value representative of the marking force for the green component. Column 68 corresponds according to our example to the blue component of the image to be processed and includes for each of the classes of the algorithm of FIG. 2 a value representative of the marking force for the blue component. The processor 100 determines the component of the image to be processed. This component is the component of the vector which has been determined as a vector VM carrying the mark. For example, if the vector V B (x, y) was determined in step E309 of the algorithm of FIG. 3 as a vector VM comprising the mark, the component determined is the blue component. The processor 100 then determines, for the determined component, to which class the position being processed belongs to. This class was previously determined according to the algorithm of FIG. 2. Depending on the determined component and the class to which the position being processed belongs, the processor 100 thus determines the value of the marking force F to be applied to this position. It should be noted that, as a variant, the marking forces can be identical for each of the components. Alternatively, the marking strength can also be determined by determining which class the position being processed belongs to for the other components. The processor 100, according to the present variant, checks whether the classes defined for each of the components to this component are consistent. If for example at this position, the vectors formed in step E207 are all considered to belong to an identical class, the value of the marking force is increased. If, on the other hand, the determined component is the only component considered to include information representative of variations in local amplitudes in at least one direction, the value of the marking force is reduced. This operation carried out, the processor 100 then passes to the next step E403. At this stage, the processor 100 determines whether the distance between the vector VM comprising the mark and the reference vector of marking Vrefm is greater than the distance between the vector VM comprising the mark and the reference vector Vrefl or Vref2 which was not considered as the reference marking vector. If not, the processor 100 goes to step E405. If the distance between the vector VM comprising the mark and the reference vector of marking Vrefm is greater than the distance between the vector VM comprising the mark and the reference vector Vrefl or Vref2 not having been considered as reference vector of marking, the processor 100 goes to step E404. At this stage, the processor 100 modifies the vector VM so that the distance between the vector VM comprising the mark and the marking reference vector Vrefm is less than the distance between the vector VM comprising the mark and the reference vector Vrefl or Vref2 not having been considered as a reference labeling vector. This modification is carried out in such a way as to make the modification of the vector VM minimal. This operation carried out, the processor 100 goes to the next step E405. In step E405, the processor 100 calculates the vector marked Vwm according to the formula: Vwm = Vrefm- (1F) * (Vrefm-VM). It should be noted here that the vector VM is the vector determined in step E309 of the algorithm of FIG. 3 or the vector VM displaced in step E403, F the marking force and Vrefm the reference marking vector. According to the values indicated in the table in Fig. 6, the marking force F varies between values between zero and one. When the marking force is zero, that is to say when the position being processed is in an area considered to be uniform, the marked vector is equal to the vector VM. No mark is inserted for this position. Indeed, the insertion of marks in uniform areas of an image creates visually discernible disturbances. The algorithm according to the invention therefore does not insert any mark at the positions corresponding to the uniform zones. When the marking force F is close to unity, the vector VM comprising the mark is almost replaced by the reference marking vector Vrefm. This marking is particularly robust and resists any further processing such as compression of the image. This marking, however, creates disturbances in the discernible image. By carrying out such a marking when the insertion is carried out in an area of the highly textured image, the marking nevertheless remains invisible to the eye. When the marking force F is for example equal to half, the marked vector Vwm is equal to the average of the two vectors VM and Vrefm. This allows a correct compromise between visibility and robustness of the brand for textured areas in a preferred direction. It should be noted here that the marking force applied to the green component is, whatever the class to which the position being processed belongs, less than half. Indeed, the green component makes it possible to better protect a brand from possible attacks, but the human visual system is more sensitive to variations in this component. It should be noted here that the marking force applied to the red component or the blue component is more than half when the class to which the position being processed belongs is a texture class. Indeed, the human visual system is less sensitive to variations in these components, the mark can then be inserted with a greater marking force. The vector Vwm calculated, the processor 100 goes to step 406 and modifies the coefficients of the detail sub-bands of the modified component corresponding to the coordinates of the marked vector Vwm. This operation carried out, the processor 100 returns to step E311 of the algorithm of FIG. 3. It should be noted here that the watermarking of the image is carried out by inserting binary information at each position and the algorithm of FIG. 2 does not define zones which must include the mark, but it allows the determination for each position of an image of information representative of variations in local amplitudes in different directions and of defining a marking force to be applied to each position. Fig. 7 shows the algorithm for detecting a signature inserted in an image according to the watermarking algorithm of a mark according to the present invention. The processor 100 of the device 10 for detecting a signature reads, from the ROM 102, the program instructions corresponding to steps E700 to E716 of FIG. 7 and loads them into RAM 103 to execute them. In step E700, the processor 100 determines, for each position of the image in which a mark has been tattooed, information representative of variations in local amplitudes in different directions. This step corresponds to the algorithm of FIG. 2 previously described. It will not be further explained. This operation carried out, the processor 100 passes to the next step E701. Step E701 as well as steps E702, E703 and E704 are identical to steps E300, E301, E302 and E303 respectively. They will not be described further. The wavelet decompositions having been carried out, the processor 100 goes to the next step E705. At this stage, the processor 100 takes, for each component of the image to be processed, the first corresponding coefficient of each sub-band of details of the last level of decomposition. These first coefficients correspond to the first position (x, y) processed. In the next step E706, the processor 100 forms, for the position (x, y) of the detail sub-bands of the last level of decomposition, a vector for each component of the image to be processed. These three-dimensional vectors have as coordinates the values of the high frequency wavelet coefficients of the detail sub-bands for the respective components of the image. This step is identical to step E305 of FIG. 3. It will not be further explained. The vectors formed, the processor 100 goes to step E707 and calculates for the current position (x, y) the Euclidean distance between each of the three vectors determined in step E706 taken two by two. This step is identical to step E306 of FIG. 3. It will not be further explained. This operation performed, the processor 100 goes to step E708 and determines for the current position (x, y) the greatest of the distances previously calculated in step E707. In the next step E709, the processor 100 determines for the current position (x, y), the vectors serving as a reference Vrefl and Vref2 for the marking of the vector to be marked. These vectors Vrefl and Vref2 are the vectors separated by the greatest distance calculated in step E708. This operation carried out, the processor 100 goes to the next step E710 and determines the vector VM which has been used for watermarking as well as the marking reference vector denoted Vrefm used for the modification of the vector VM. The vector VM is the vector that was not used as a reference vector in the previous step. The reference vector of marking Vrefm is determined by choosing the vector, from the reference vectors Vrefl and Vref2, which is the closest to VM. This operation performed, the processor 100 determines in step E711 the class determined for the current position in step E700. For this, the processor 100 determines the class to which the vector formed in step E700 belongs and having the same component as the vector VM. Five classes are used in the present invention, these classes are identical to classes 1, 2, 3, 4 and 5 explained above with reference to FIG. 2. In the next step E712, the processor 100 determines the marking convention used when tattooing the mark in the image. Indeed and according to the present invention, the marking is carried out by modifying the vector VM so as to bring it closer to the reference vector Vrefl or Vref2 according to the value of the binary information to be inserted. The processor 100 thus deduces according to the convention used if the value of the binary information inserted on the vector VM is equal to one or to zero. This operation performed, the processor 100 stores in step E713 the value of the determined binary information as well as the class determined in the previous step E711. In the next step E714, the processor 100 checks whether each position of the detail subbands has been processed. If not, the processor 100 goes to step E715 and takes for each component of the image to be processed the following coefficient of each sub-band of details of the last level of decomposition. These coefficients correspond to the next position to be processed. Once this operation has been carried out, the processor 100 returns to step E706 previously described and repeats steps E706 to E714 as long as all the positions of the detail sub-bands have been processed. When all the positions have been processed, the processor 100 goes to step E716. At this step, the processor 100 obtains a signature from the binary information stored in the previous step E713. When watermarking the mark in the image, the signature S has been duplicated so that with each vector VM, binary information is associated. Knowing the duplication rule, the processor 100 obtains at least part of the binary information inserted for each bit of the signature and determines for each bit of the signature its average value. In fact, only the binary information which has been inserted at positions corresponding to classes 2, 3, 4 and 5 is used for the calculation of the average value. Class 1 groups the non-textured image positions. When binary information is inserted into these non-textured areas, it is inserted with a low value marking force. Given the manipulations that can be carried out on the image comprising the mark, the risk of determining erroneous binary information at this position is significant. In order to guarantee proper detection of the signature, the binary information included or likely to be understood at these positions is therefore not taken into account. As a variant, during the calculation of the average value of each bit of the signature, the processor 100 weights each binary information by a confidence factor determined as a function of the class corresponding to the position at which the binary information was obtained. According to this variant, the binary information obtained at positions corresponding to class 5 has been inserted with a greater marking force than the other classes. Given the manipulations which can be carried out on the image comprising the mark, the risk of determining erroneous binary information at positions corresponding to class 5 is low. In order to guarantee better detection of the signature, more weight is given to the binary information obtained at positions corresponding to class 5 when calculating the average values than to other binary information. The processor 100 then calculates the rate of resemblance between the original signature S which it has and the signature obtained S 'from the mean values previously calculated. The calculation of the likelihood rate cc (S, S ') is for example of the form
Le processeur 100, en fonction de la corrélation ainsi calculée, détermine si la signature détectée correspond ou non à la signature originale. Si le taux de vraisemblance est supérieur à un seuil prédéterminé égal, par exemple à la valeur numérique 0,7, la signature détectée correspond alors à la signature originale. A la fin de cette étape, le processeur 100 retourne à l'étape E700 et attend une image à traiter. Bien entendu, la présente invention n'est nullement limitée aux modes de réalisation décrits ici, mais englobe, bien au contraire, toute variante à la portée de l'homme du métier. The processor 100, as a function of the correlation thus calculated, determines whether or not the detected signature corresponds to the original signature. If the likelihood rate is greater than a predetermined threshold equal, for example to the numerical value 0.7, the detected signature then corresponds to the original signature. At the end of this step, the processor 100 returns to step E700 and waits for an image to be processed. Of course, the present invention is not limited to the embodiments described here, but encompasses, quite the contrary, any variant within the reach of ordinary skill in the art.

Claims

REVENDICATIONS
1) Procédé de tatouage d'une marque composée d'une pluralité d'informations binaires dans une image comprenant au moins trois composantes, caractérisé en ce que le procédé comporte les étapes de : - décomposition (E201) d'au moins une composante de l'image en sous-bandes de détails selon différentes directions et comprenant des coefficients, chaque coefficient étant caractérisé par sa position dans la sous-bande de détails à laquelle il appartient et son amplitude, - détermination, (E204) pour chaque position, d'informations représentatives de variations d'amplitudes locales selon différentes directions à partir des amplitudes des coefficients à la position dans les différentes sous-bandes de détails et des coefficients proches de la position dans les différentes sous-bandes de détails, - détermination (E402) d'une force de marquage à chaque position à partir des informations représentatives de variations d'amplitudes locales selon différentes directions déterminées pour la position, - formation (E305), pour chaque position et pour chaque composante, d'un vecteur dont les coordonnées sont les amplitudes des coefficients à la position dans les différentes sous bandes de détails de la composante, - sélection (E309), pour chaque position, d'un vecteur parmi les vecteurs formés pour la position, - tatouage (E310) de la marque dans l'image en modifiant, pour chaque position, l'amplitude des coefficients qui sont les coordonnées du vecteur sélectionné pour la position en fonction de l'information binaire correspondant à la position et selon la force de marquage déterminée pour la position. 1) Method for watermarking a mark composed of a plurality of binary information in an image comprising at least three components, characterized in that the method comprises the steps of: - decomposition (E201) of at least one component of the image in detail sub-bands in different directions and comprising coefficients, each coefficient being characterized by its position in the detail sub-band to which it belongs and its amplitude, - determination, (E204) for each position, d information representative of variations in local amplitudes in different directions from the amplitudes of the coefficients at the position in the different detail sub-bands and the coefficients close to the position in the different detail sub-bands, - determination (E402) a marking force at each position from information representative of variations in local amplitudes in different directions determined for the position, - formation (E305), for each position and for each component, of a vector whose coordinates are the amplitudes of the coefficients at the position in the different sub-bands of details of the component, - selection (E309) , for each position, of a vector among the vectors formed for the position, - watermarking (E310) of the mark in the image by modifying, for each position, the amplitude of the coefficients which are the coordinates of the vector selected for the position according to the binary information corresponding to the position and according to the marking force determined for the position.
2) Procédé selon la revendication 1 , caractérisé en ce que chaque composante de l'image est décomposée en sous-bandes de détails selon différentes directions, les informations représentatives de variations d'amplitudes sont déterminées pour chaque composante et pour chaque position, la force de marquage est déterminée à chaque position de chaque composante. 2) Method according to claim 1, characterized in that each component of the image is broken down into sub-bands of details in different directions, the information representative of amplitude variations are determined for each component and for each position, the force marking is determined at each position of each component.
3) Procédé selon la revendication 2, caractérisé en ce que l'étape de détermination des informations représentatives de variations d'amplitudes locales pour chaque composante et pour chaque position se décompose en sous étapes de : - mise au carré de (E203) l'amplitude de chaque coefficient de chaque sous- bande de détails de chaque composante, - calcul (E204) d'une valeur médiane à partir des amplitudes mises au carré du coefficient et des coefficients proches du coefficient, pour chaque coefficient de chaque sous-bande de détails de chaque composante. 3) Method according to claim 2, characterized in that the step of determining information representative of variations in local amplitudes for each component and for each position is broken down into sub-steps of: - squaring of (E203) l amplitude of each coefficient of each sub-band of details of each component, - calculation (E204) of a median value from the amplitudes squared of the coefficient and coefficients close to the coefficient, for each coefficient of each sub-band of details of each component.
4) Procédé selon la revendication 3, caractérisé en ce que l'étape de détermination de la force de marquage à chaque position de chaque composante se décompose en sous étapes de : - formation d'un vecteur dont les coordonnées sont les valeurs médianes calculées dans chaque sous-bande de détails, - groupement des vecteurs dont les coordonnées sont similaires dans des classes prédéterminées, - affectation d'une force de marquage à chaque position en fonction de la classe prédéterminée à laquelle appartient le vecteur de la position. 4) Method according to claim 3, characterized in that the step of determining the marking force at each position of each component is broken down into sub-steps of: - formation of a vector whose coordinates are the median values calculated in each detail sub-band, - grouping of vectors whose coordinates are similar in predetermined classes, - assignment of a marking force to each position as a function of the predetermined class to which the vector of the position belongs.
5) Procédé selon la revendication 4, caractérisé en ce que les classes prédéterminées sont la classe regroupant les vecteurs représentatifs de zones ne comportant pas de variations et/ou la classe regroupant les vecteurs représentatifs de zones de l'image comportant des variations majoritairement horizontales, et/ou la classe regroupant les vecteurs représentatifs de zones de l'image comportant des variations majoritairement verticales et/ou la classe regroupant les vecteurs représentatifs de zones de l'image comportant des variations majoritairement diagonales, et/ou la classe regroupant les vecteurs représentatifs de zones de l'image très fortement texturées et sans direction privilégiée. 5) Method according to claim 4, characterized in that the predetermined classes are the class grouping the vectors representative of areas having no variations and / or the class grouping together the vectors representative of areas of the image comprising predominantly horizontal variations, and / or the class grouping the vectors representative of areas of the image comprising predominantly vertical variations and / or the class grouping together the vectors representative of areas of the image comprising predominantly diagonal variations, and / or the class grouping together the representative vectors very strongly textured image areas with no preferred direction.
6) Procédé selon la revendication 4 ou 5, caractérisé en ce que la force de marquage est en outre affectée (E406) en fonction de la composante de l'image et en ce que la décomposition est une décomposition en ondelettes de Haar. 7) Procédé selon l'une quelconque des revendications 1 à 6, caractérisé en ce que lors de l'étape de tatouage de la marque chaque composante de l'image est décomposée, selon une autre décomposition en sous-bandes (E301), en sous-bandes comprenant des coefficients, chaque coefficient étant caractérisé par sa position dans la sous-bande à laquelle il appartient et son amplitude et en ce que le procédé comporte en outre une étape de reconstruction (E313) de l'image à partir des coefficients des sous-bandes et des coefficients dont les amplitudes ont été modifiées.6) Method according to claim 4 or 5, characterized in that the marking force is also affected (E406) depending on the component of the image and in that the decomposition is a decomposition into Haar wavelets. 7) Method according to any one of claims 1 to 6, characterized in that during the tattooing step of the mark each component of the image is decomposed, according to another decomposition into sub-bands (E301), into sub-bands comprising coefficients, each coefficient being characterized by its position in the sub-band to which it belongs and its amplitude and in that the method also comprises a step of reconstruction (E313) of the image from the coefficients sub-bands and coefficients whose amplitudes have been modified.
8) Procédé de détection d'une signature insérée dans une image comprenant au moins trois composantes, caractérisé en ce que le procédé comporte les étapes de : - décomposition d'au moins une composante de l'image en sous-bandes de détails selon différentes directions et comprenant des coefficients, chaque coefficient étant caractérisé par sa position dans la sous-bande de détails à laquelle il appartient et son amplitude, - détermination, pour chaque position, d'informations représentatives de variations d'amplitudes locales selon différentes directions à partir des amplitudes des coefficients à cette position dans les différentes sous-bandes de détails et des coefficients proches de cette position dans les différentes sous-bandes de détails, - détection de la signature à partir d'au moins une partie d'informations binaires insérées en une pluralité de positions de l'image et des informations représentatives des variations d'amplitudes locales selon différentes directions correspondantes aux positions des informations binaires.8) Method for detecting a signature inserted in an image comprising at least three components, characterized in that the method comprises the steps of: - decomposition of at least one component of the image into sub-bands of details according to different directions and comprising coefficients, each coefficient being characterized by its position in the sub-band of details to which it belongs and its amplitude, - determination, for each position, of information representative of variations in local amplitudes in different directions from amplitudes of the coefficients at this position in the different detail sub-bands and of the coefficients close to this position in the different detail sub-bands, - detection of the signature from at least part of the binary information inserted in a plurality of positions of the image and information representative of the variations in local amplitudes according to dif different directions corresponding to the positions of binary information.
9) Procédé selon la revendication 8, caractérisé en ce que les informations binaires utilisées pour la détection sont les informations binaires comprises à des positions de l'image pour lesquelles les informations représentatives des variations d'amplitudes locales selon différentes directions correspondent à des informations représentatives des variations d'amplitudes locales prédéterminées. 10) Procédé selon la revendication 9, caractérisé en ce que des pondérations sont affectées à au moins une partie des informations binaires, les pondérations étant affectées en fonction des informations représentatives des variations d'amplitudes aux positions correspondantes aux positions des informations binaires. 11) Dispositif de tatouage d'une marque composée d'une pluralité d'informations binaires dans une image comprenant au moins trois composantes, caractérisé en ce que le dispositif comporte : - des moyens de décomposition d'au moins une composante de l'image en sous bandes de détails selon différentes directions et comprenant des coefficients, chaque coefficient étant caractérisé par sa position dans la sous-bande de détails à laquelle il appartient et son amplitude, - des moyens de détermination, pour chaque position, d'informations représentatives de variations d'amplitudes locales selon différentes directions à partir des amplitudes des coefficients à la position dans les différentes sous-bandes de détails et des coefficients proches de la position dans les différentes sous-bandes de détails, - des moyens de détermination d'une force de marquage à chaque position à partir des informations représentatives de variations d'amplitudes locales selon différentes directions déterminées pour la position, - des moyens de formation, pour chaque position et pour chaque composante, d'un vecteur dont les coordonnées sont les amplitudes des coefficients à la position dans les différentes sous bandes de détails de la composante, - des moyens de sélection, pour chaque position, d'un vecteur parmi les vecteurs formés pour la position, - des moyens de tatouage de la marque dans l'image en modifiant, pour chaque position, l'amplitude des coefficients qui sont les coordonnées du vecteur sélectionné pour la position en fonction de l'information binaire correspondant à la position et selon la force de marquage déterminée pour la position.9) Method according to claim 8, characterized in that the binary information used for the detection is the binary information included at positions of the image for which the information representative of the variations of local amplitudes in different directions correspond to representative information variations of predetermined local amplitudes. 10) Method according to claim 9, characterized in that weights are assigned to at least part of the binary information, the weights being assigned according to information representative of the amplitude variations at the positions corresponding to the positions of the binary information. 11) Device for watermarking a mark composed of a plurality of binary information in an image comprising at least three components, characterized in that the device comprises: - means for breaking down at least one component of the image in detail sub-bands in different directions and comprising coefficients, each coefficient being characterized by its position in the detail sub-band to which it belongs and its amplitude, - means for determining, for each position, information representative of variations in local amplitudes in different directions from the amplitudes of the coefficients at the position in the different detail sub-bands and the coefficients close to the position in the different detail sub-bands, - means for determining a force marking at each position from information representative of variations in local amplitudes according to different di rections determined for the position, - means for forming, for each position and for each component, a vector whose coordinates are the amplitudes of the coefficients at the position in the different sub-bands of details of the component, - means for selection, for each position, of a vector from among the vectors formed for the position, - means for watermarking the mark in the image by modifying, for each position, the amplitude of the coefficients which are the coordinates of the vector selected for the position according to the binary information corresponding to the position and according to the marking force determined for the position.
12) Dispositif de détection d'une signature insérée dans une image comprenant au moins trois composantes, caractérisé en ce que le dispositif comporte : - des moyens de décomposition d'au moins une composante de l'image en sous- bandes de détails selon différentes directions et comprenant des coefficients, chaque coefficient étant caractérisé par sa position dans la sous-bande de détails à laquelle il appartient et son amplitude, - des moyens de détermination, pour chaque position, d'informations représentatives de variations d'amplitudes locales selon différentes directions à partir des amplitudes des coefficients à cette position dans les différentes sous-bandes de détails et des coefficients proches de cette position dans les différentes sous-bandes de détails, - des moyens de détection de la signature à partir d'au moins une partie d'informations binaires insérées en une pluralité de positions de l'image et des informations représentatives des variations d'amplitudes locales selon différentes directions correspondantes aux positions des informations binaires.12) Device for detecting a signature inserted in an image comprising at least three components, characterized in that the device comprises: - means for breaking down at least one component of the image into sub-bands of details according to different directions and comprising coefficients, each coefficient being characterized by its position in the sub-band of details to which it belongs and its amplitude, - means for determining, for each position, information representative of variations in local amplitudes according to different directions from amplitudes of the coefficients at this position in the different detail sub-bands and coefficients close to this position in the different detail sub-bands, - means for detecting the signature from at least part of the information bits inserted in a plurality of positions of the image and information representative of the variations of local amplitudes in different directions corresponding to the positions of the binary information.
13) Programme d'ordinateur stocké sur un support d'informations, ledit programme comportant des instructions permettant de mettre en œuvre le procédé de tatouage selon l'une quelconque des revendications 1 à 7, lorsqu'il est chargé et exécuté par un système informatique.13) Computer program stored on an information medium, said program comprising instructions making it possible to implement the watermarking method according to any one of claims 1 to 7, when it is loaded and executed by a computer system .
14) Programme d'ordinateur stocké sur un support d'informations, ledit programme comportant des instructions permettant de mettre en œuvre le procédé de détection selon l'une quelconque des revendications 8 à 10, lorsqu'il est chargé et exécuté par un système informatique.14) Computer program stored on an information medium, said program comprising instructions making it possible to implement the detection method according to any one of claims 8 to 10, when it is loaded and executed by a computer system .
15) Support d'informations, caractérisé en ce que ledit support d'informations comporte au moins une image tatouée selon l'une quelconque des revendications 1 à15) Information carrier, characterized in that said information carrier comprises at least one tattooed image according to any one of claims 1 to
7. 7.
EP04805313A 2003-11-10 2004-10-26 Image-watermarking method and device Withdrawn EP1683104A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0313171 2003-11-10
PCT/FR2004/002756 WO2005048189A2 (en) 2003-11-10 2004-10-26 Image-watermarking method and device

Publications (1)

Publication Number Publication Date
EP1683104A2 true EP1683104A2 (en) 2006-07-26

Family

ID=34586259

Family Applications (1)

Application Number Title Priority Date Filing Date
EP04805313A Withdrawn EP1683104A2 (en) 2003-11-10 2004-10-26 Image-watermarking method and device

Country Status (3)

Country Link
US (1) US7729505B2 (en)
EP (1) EP1683104A2 (en)
WO (1) WO2005048189A2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040070267A (en) * 2001-12-21 2004-08-06 코닌클리케 필립스 일렉트로닉스 엔.브이. Increasing integrity of watermarks using robust features
FR2853748A1 (en) * 2003-04-11 2004-10-15 France Telecom METHOD FOR TATOTING A VECTOR-APPROACHING COLOR IMAGE, METHOD FOR DETECTING A TATTOO MARK, DEVICES, IMAGE AND CORRESPONDING COMPUTER PROGRAMS
FR3059446B1 (en) * 2016-11-25 2019-07-05 Institut Mines-Telecom / Telecom Bretagne METHOD OF INSERTING DATA TO THE STREAM IN A TATUE DATA BASE AND ASSOCIATED DEVICE.
CN113574837A (en) 2019-03-12 2021-10-29 思杰系统有限公司 Tracking image senders on client devices
US11537690B2 (en) * 2019-05-07 2022-12-27 The Nielsen Company (Us), Llc End-point media watermarking

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6590996B1 (en) * 2000-02-14 2003-07-08 Digimarc Corporation Color adaptive watermarking
US6332030B1 (en) * 1998-01-15 2001-12-18 The Regents Of The University Of California Method for embedding and extracting digital data in images and video
US6385329B1 (en) * 2000-02-14 2002-05-07 Digimarc Corporation Wavelet domain watermarks
US6993149B2 (en) * 2001-09-25 2006-01-31 Digimarc Corporation Embedding digital watermarks in spot colors
US6633654B2 (en) * 2000-06-19 2003-10-14 Digimarc Corporation Perceptual modeling of media signals based on local contrast and directional edges
US6940993B2 (en) * 2000-12-13 2005-09-06 Eastman Kodak Company System and method for embedding a watermark signal that contains message data in a digital image
US7072487B2 (en) * 2001-01-26 2006-07-04 Digimarc Corporation Watermark detection using adaptive color projections
US7376242B2 (en) * 2001-03-22 2008-05-20 Digimarc Corporation Quantization-based data embedding in mapped data
US20030068068A1 (en) * 2001-09-28 2003-04-10 Nam-Deuk Kim Content based digital watermarking using wavelet based directionality measures
FR2846828B1 (en) * 2002-10-31 2005-03-11 France Telecom METHOD FOR TATOTING A VIDEO SIGNAL, SYSTEM AND DATA CARRIER FOR IMPLEMENTING SAID METHOD, METHOD FOR EXTRACTING THE TATTOO OF A VIDEO SIGNAL, SYSTEM FOR IMPLEMENTING SAID METHOD
US7203669B2 (en) * 2003-03-17 2007-04-10 Intel Corporation Detector tree of boosted classifiers for real-time object detection and tracking
FR2853748A1 (en) 2003-04-11 2004-10-15 France Telecom METHOD FOR TATOTING A VECTOR-APPROACHING COLOR IMAGE, METHOD FOR DETECTING A TATTOO MARK, DEVICES, IMAGE AND CORRESPONDING COMPUTER PROGRAMS
FR2853792A1 (en) * 2003-04-11 2004-10-15 France Telecom Digital video sequence tattooing process, involves selecting optimal tattooed displacement vector, based on preset criteria, such that modified coordinates of displacement vector are coordinates of optimal vector

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2005048189A2 *

Also Published As

Publication number Publication date
WO2005048189A2 (en) 2005-05-26
US7729505B2 (en) 2010-06-01
WO2005048189A3 (en) 2007-11-29
US20070140523A1 (en) 2007-06-21

Similar Documents

Publication Publication Date Title
Shen et al. A robust associative watermarking technique based on vector quantization
US9639910B2 (en) System for embedding data
FR2785426A1 (en) Insertion and detection of hidden watermark in digital image or audio data uses decoded component coefficients that are modulated by signal representing watermarking information to form watermark coefficients
EP1473944A2 (en) Digital video watermarking method with adaptive selection of the watermarking area, watermarking detection method, device, corresponding computer readable storage medium and computer program product.
CA3043090C (en) Character recognition process
EP3832535A1 (en) Method for detecting at least one visible element of interest in an input image by means of a convolutional neural network
FR2905188A1 (en) Input image e.g. palm imprint image, density converting method for e.g. image processing improving system, involves converting minimum local and maximum local values into minimum and maximum common values, and reconstructing input image
EP1416737B1 (en) Method, system and data support for video watermarking, method and system for extracting this watermaking
EP1683104A2 (en) Image-watermarking method and device
WO2003098936A2 (en) Method of extracting a watermark
Manaf et al. Genetic audio steganography
Zamani et al. A novel approach for audio watermarking
EP1330110B1 (en) Method and system for watermark decoding
FR2853748A1 (en) METHOD FOR TATOTING A VECTOR-APPROACHING COLOR IMAGE, METHOD FOR DETECTING A TATTOO MARK, DEVICES, IMAGE AND CORRESPONDING COMPUTER PROGRAMS
FR2775812A1 (en) METHOD FOR DISSIMULATING BINARY INFORMATION IN A DIGITAL IMAGE
FR2769733A1 (en) PROCESS FOR AUTOMATICALLY EXTRACTING PRINTED OR HANDWRITED INSCRIPTIONS ON A BACKGROUND, IN A MULTI-LEVEL DIGITAL IMAGE
FR2986890A1 (en) METHOD FOR INSERTING A DIGITAL MARK IN AN IMAGE, AND CORRESPONDING METHOD FOR DETECTING A DIGITAL MARK IN AN IMAGE TO BE ANALYZED
WO2006037867A1 (en) Method and device for determining reference points in an image
EP2763426B1 (en) Method for recognizing video contents or pictures in real-time
FR2829343A1 (en) METHOD FOR INSERTING BINARY MESSAGES INTO A DIGITAL IMAGE
TWI447669B (en) System and method for removing watermarks from an image
FR2929431A1 (en) METHOD AND DEVICE FOR CLASSIFYING SAMPLES REPRESENTATIVE OF AN IMAGE DIGITAL SIGNAL
Arulmurugan et al. Robaust Image Watermarking in Contourlet Domain Using Genetic Algorithm
FR3100648A1 (en) Method of inserting information into an image and corresponding device
JP2007525127A (en) Digital watermark detection by correlation shape analysis

Legal Events

Date Code Title Description
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

17P Request for examination filed

Effective date: 20060418

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LI LU MC NL PL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL HR LT LV MK

DAX Request for extension of the european patent (deleted)
PUAK Availability of information related to the publication of the international search report

Free format text: ORIGINAL CODE: 0009015

17Q First examination report despatched

Effective date: 20080821

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: FRANCE TELECOM

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: ORANGE

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

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20150501