WO2012034280A1 - Digital watermarking - Google Patents

Digital watermarking Download PDF

Info

Publication number
WO2012034280A1
WO2012034280A1 PCT/CN2010/076982 CN2010076982W WO2012034280A1 WO 2012034280 A1 WO2012034280 A1 WO 2012034280A1 CN 2010076982 W CN2010076982 W CN 2010076982W WO 2012034280 A1 WO2012034280 A1 WO 2012034280A1
Authority
WO
WIPO (PCT)
Prior art keywords
saturation
block
pixels
processor
patterns
Prior art date
Application number
PCT/CN2010/076982
Other languages
French (fr)
Inventor
Hui-Man Hou
Jian-ming JIN
Yuhong Xiong
Original Assignee
Hewlett-Packard Development Company, L.P.
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 Hewlett-Packard Development Company, L.P. filed Critical Hewlett-Packard Development Company, L.P.
Priority to PCT/CN2010/076982 priority Critical patent/WO2012034280A1/en
Priority to US13/823,562 priority patent/US9159112B2/en
Publication of WO2012034280A1 publication Critical patent/WO2012034280A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/005Robust watermarking, e.g. average attack or collusion attack resistant
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • H04N1/32149Methods relating to embedding, encoding, decoding, detection or retrieval operations
    • H04N1/32203Spatial or amplitude domain methods
    • H04N1/32208Spatial or amplitude domain methods involving changing the magnitude of selected pixels, e.g. overlay of information or super-imposition
    • H04N1/32213Modulating the least significant bits of pixels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • H04N1/32149Methods relating to embedding, encoding, decoding, detection or retrieval operations
    • H04N1/32203Spatial or amplitude domain methods
    • H04N1/32251Spatial or amplitude domain methods in multilevel data, e.g. greyscale or continuous tone data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • H04N1/32149Methods relating to embedding, encoding, decoding, detection or retrieval operations
    • H04N1/32309Methods relating to embedding, encoding, decoding, detection or retrieval operations in colour image data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0051Embedding of the watermark in the spatial domain
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0061Embedding of the watermark in each block of the image, e.g. segmented watermarking

Definitions

  • Digital image watermarking methods are used to embed information into a digital image.
  • the watermark should be visible, for example if it is a copyright notice or the like.
  • it is desirable that the watermark is imperceptible to a human observer so that the watermarking method can be used for steganographic purposes.
  • imperceptible digital watermarking include copyright protection systems, in which a device analyses a watermark retrieved from the digital signal to be copied before deciding whether the copy should be made depending on the analysis.
  • Another application is source tracing, in which a unique watermark is embedded into a digital signal identifying a point of origin. If a copy is found then the unique watermark can be retrieved from the copy and used to identify the point of origin.
  • Figure 1 shows a flowchart for a method for embedding digital watermark data into greyscale image data
  • Figures 2a and 2b show a first set of saturation patterns for use in the method of Figure 1 ;
  • Figures 3a to 3d show a second set of saturation patterns for use in the method of Figure 1 ;
  • Figure 4 shows a plot of various relationships between luminance and saturation values for use in the method of Figure 1 ;
  • Figure 5 shows a flow chart of a method for extracting digital watermark data embedded in image data
  • Figure 6 shows a system for performing the method of Figure 1 and/or the method of Figure 5.
  • a key feature of a digital watermarking method is the perceptibility of the watermark. Specifically, for watermarking methods that are to be used for steganographic purposes, the watermark should be imperceptible.
  • the watermark should be robust. In other words, it should still be possible to extract the watermark after the digital signal has been through a variety of processing steps.
  • a method for embedding, using a processor, digital watermark data into image data representing a number of pixels, each of which has respective saturation values comprising the following steps: a) using said processor, dividing the image into blocks of pixels of a predefined size; b) for each block, using said processor to select one of a plurality of saturation patterns representing the binary value of one or more bits of the digital watermark data corresponding to the block; and c) for each block, using said processor to embed the binary value of the one or more bits of corresponding digital watermark data into the block by adjusting the saturation of pixels within each block in accordance with the selected pattern.
  • This embodiment exploits the fact that the human eye is inherently less sensitive to changes in saturation than it is to changes in luminance. However, such changes can be detected by digital cameras and scanners. Thus, by changing the saturation within the blocks it is possible to embed a watermark that is not perceptible to human beings but that is robust to a variety of processes, including printing, scanning and capture by digital photography.
  • the image data is greyscale image data.
  • Figure 1 shows a flowchart for a method for embedding digital watermark data into greyscale image data.
  • the first step 1 in this method is to transform the luminance values of the pixels in the greyscale image data so that each of the luminance values falls within a predefined range of luminance values.
  • the predefined range of luminance values includes a lower limit that is higher than zero and an upper limit that is lower than a full scale luminance value.
  • the luminance values of the pixels in the image data may be transformed such that each luminance value lower than the lower limit of the predefined range of luminance values is set to the lower limit and each luminance value higher than the upper limit of the predefined range of luminance values is set to the upper limit.
  • the transformed image data is divided into non-overlapping square blocks with T pixels on each side.
  • a typical value for T is 16 pixels.
  • Each of these blocks will be used to store one or more bits of watermark information separately.
  • step 3 one of a plurality of saturation patterns is selected to represent one or more bits of watermark data. This step will be repeated until saturation patterns have been selected to represent every bit of the watermark data.
  • Each of the patterns is a square block of pixels with T pixels on each side to match the blocks that the greyscale image data has been divided into.
  • a first example of a pair of suitable saturation patterns is shown in Figures 2a and 2b.
  • a first pattern 30 representing a binary zero has a set of pixels forming its perimeter 31 a that have saturation values higher than those pixels forming a central region 31 b.
  • a second pattern 32 representing a binary one has a set of pixels forming its perimeter 33a that have saturation values lower than those pixels forming a central region 33b.
  • the saturation will gradually change from the perimeter 31 a, 33a to the centre 31 b, 33b, but step changes are shown in the figures for ease of illustration. The mechanism used to cause the gradual change will be explained below.
  • the first pattern 30 For embedding a binary zero of watermark data the first pattern 30 will be selected, whereas to embed a binary one of watermark data the second pattern 32 will be selected.
  • the assignment of binary values to the first and second patterns 30 and 32 is arbitrary, and in other embodiments the first pattern 30 could represent a binary one whilst the second pattern 32 could represent a binary zero.
  • the plurality of saturation patterns may comprise a first saturation pattern in which the saturation of pixels is graduated from the perimeter of the block to the centre such that pixels at the centre have a higher saturation and a second saturation pattern in which the saturation of pixels is graduated from the perimeter of the block to the centre such that pixels at the centre have a lower saturation, each of the first and second saturation patterns representing a different one of a binary one and a binary zero.
  • Figures 3a to 3d show another scheme of saturation patterns for representing the watermark data.
  • an elongate central region is positioned in one of four orientations relative to the perimeter so that the four saturation patterns can represent four different values.
  • a first pattern 40 comprises a set of pixels forming a perimeter region 41 a in which an elongate central region 41 b is oriented horizontally so as to extend between opposing sides of the pattern 40.
  • a second pattern 42 is shown in Figure 3b and comprises a set of pixels forming a perimeter region 43a in which an elongate central region 43b is oriented vertically so as to extend between opposing sides of the pattern 42.
  • the two elongate central regions 41 b and 43b are disposed orthogonally to one another.
  • a third pattern 44 comprises a set of pixels forming a perimeter region 45a in which an elongate central region 45b is oriented diagonally so as to extend between diagonally opposing corners of the pattern 44.
  • a fourth pattern 46 is shown in Figure 3d and comprises a set of pixels forming a perimeter region 47a in which an elongate central region 47b is oriented diagonally so as to extend between diagonally opposing corners of the pattern 46.
  • the two elongate central regions 45b and 47b are disposed orthogonally to one another.
  • the four patterns 40, 42, 44, 46 shown in Figures 3a to 3d can represent the four binary values 00, 01 , 10, 1 1 . Therefore, they can be used to embed the watermark data into the greyscale image data at a higher density than the simpler patterns 30, 32 shown in Figures 2a and 2b. Of course, it is arbitrary which of the four patterns 40, 42, 44, 46 represents each of the four binary values 00, 01 , 10, 1 1 .
  • the saturation will gradually change from the perimeter 41 a, 43a, 45a, 47a to the centre 41 b, 43b, 45b and 47b but step changes are shown in the figures for ease of illustration.
  • the change in saturation could be such that the centres 41 b, 43b, 45b and 47b are more highly saturated than the perimeters 41 a, 43a, 45a, 47a if desired.
  • the plurality of saturation patterns may comprise first to fourth saturation patterns in which the saturation of pixels is graduated from the perimeter of the block to the centre to define an elongate region in which the pixels have differing saturation values to the pixels in the perimeter of the block, the elongate regions of the first and second saturation patterns extending between opposing sides of the block and being orthogonal to each other, and the elongate regions of the third and fourth saturation patterns extending between diagonally opposing corners of the block and being orthogonal to each other, wherein each of the first to fourth saturation patterns represents a respective one of the binary values: 00, 01 , 10, 1 1 .
  • step 4 is performed, in which the saturation values of the blocks into which the greyscale image data was divided in step 2 are adjusted in accordance with the saturation patterns.
  • an original saturation (os) value is first calculated. This depends on the average luminance value of the pixels within the block such that the value of os is low for a high average luminance value and the value of os is high for a low average luminance value.
  • si is a constant representing the saturation at a luminance value of ti (the lower limit of the transformed luminance range)
  • s 2 is a constant representing the saturation at a luminance value of t 2 (the upper limit of the transformed luminance range).
  • Typical values for si and s 2 are 0.7 and 0.2 respectively.
  • the relationship defined by the equation for os is shown by the line labelled os in Figure 4. Setting a value for os depending on the average luminance value in this way means that changes in saturation are not particularly apparent to a human observer.
  • the saturation values of the pixels should be os+sar if the saturation at the centre of the block is to increase (as in Figure 2b).
  • the saturation values of the pixels at the centre of the block should be os-sar if the saturation at the centre of the block is to decrease (as in Figure 2a). The saturation therefore gradually varies from os a the perimeter to os+sar or os-sar at the centre as appropriate.
  • the degree of adjustment of the saturation of pixels within each block may be determined by calculating an original block saturation value (os) using the following formula: where alv is the average luminance value, ti and t 2 are lower and upper limits of a range of luminance values of the image data, and si and s 2 represent values of os when alv is equal to the ti and t 2 luminance values respectively; and then calculating a saturation adjustment range using the following formula: where sar is the saturation adjustment range, and san and sar 2 represent values of sar when alv is equal to the ti and t 2 luminance values respectively, the degree of adjustment being equal to the value of sar.
  • the graduation is performed by calculating the hue, saturation and intensity (HSI) colour vector for each pixel (the hue and saturation being zero for greyscale pixels) from its red, green, blue (RGB) value.
  • the saturation is then gradually increased from os at the perimeter to os+scr or os-scr at the centre.
  • the digital watermark data is embedded into the saturation value of the greyscale image data in a manner that is imperceptible to human observers but can be detected by a machine.
  • the final step is to adjust the hue of each pixel in the greyscale image data. This is done in step 5 of Figure 1 .
  • a cyan hue is selected because human eyes are not particularly sensitive to this colour.
  • a new HSI vector is formed for each pixel, which is used to calculate a new RGB value for each pixel.
  • the method may further comprise adjusting a hue value for each pixel in the image data to a predefined value.
  • a method for extracting, using a processor, digital watermark data embedded in image data representing a number of pixels, each of which has a respective saturation value comprising the following steps: a) using said processor, dividing the image into blocks of pixels of a predefined size; b) for each block, using said processor to compare the saturation of pixels within the block with a plurality of saturation patterns, each representing a different binary value, and to select a matching saturation pattern that most closely matches the saturation of pixels within the block; and c) for each block, using said processor to assign the binary value represented by the matching saturation pattern to one or more bits of the digital watermark data corresponding to the block.
  • the method provides a way of recovering watermark data that has been embedded in image data using the method described above in relation to Figure 1 .
  • a flowchart illustrating the method of recovering the watermark data is shown in Figure 5.
  • image data Prior to performing the method of extraction, image data is first captured.
  • the image data may be captured using a scanner or a digital camera, or it may simply be an image file (for example a JPEG file). If captured by scanner or digital camera then the image data may have been printed after the watermark data has been embedded using the method described above with reference to Figure 1 .
  • step 50 the image data containing the watermark data to be extracted is divided into square, non-overlapping blocks. These blocks will be the same size as the blocks into which the image was divided during the embedding process (step 2 of Figure 1 ). Thus, a typical size is 16 x 16 pixels.
  • each of these blocks is then compared in step 51 with a set of saturation patterns to find which of these most closely matches the saturation of the pixels within the block.
  • the average saturation of the central T/2 x T/2 i.e. 8 x 8 pixels for a 16 x 16 pixel block
  • the block can be said to match the pattern 30 of Figure 2a. If, on the other hand, the average saturation of the central pixels is higher than the average saturation of the perimeter pixels then the block can be said to match the pattern 32 of Figure 2b.
  • step 51 the corresponding binary value of each saturation pattern can be assigned in step 52 to the respective bits of the binary watermark data. For example, if a block matches the saturation pattern 30 of Figure 2a then a binary zero can be assigned, whereas if the block matches the saturation pattern 32 of Figure 2b then a binary one can be assigned. In this way, the watermark data can be reconstituted.
  • the plurality of saturation patterns may comprise a first saturation pattern in which the average saturation of an outer group of pixels disposed around the perimeter of the block is lower than the average saturation of an inner group of pixels surrounded by the first group of pixels, and a second saturation pattern in which the average saturation of an outer group of pixels disposed around the perimeter of the block is higher than the average saturation of an inner group of pixels surrounded by the first group of pixels, each of the first and second saturation patterns representing a different one of a binary one and a binary zero.
  • the plurality of saturation patterns may comprise first to fourth saturation patterns in which an outer group of pixels disposed around the perimeter of the block surrounds an inner group of pixels defining an elongate region in which the pixels have differing saturation values to the pixels in the outer region, the elongate regions of the first and second saturation patterns extending between opposing sides of the block and being orthogonal to each other, and the elongate regions of the third and fourth saturation patterns extending between diagonally opposing corners of the block and being orthogonal to each other, wherein each of the first to fourth saturation patterns represents a respective one of the binary values: 00, 01 , 10, 1 1 .
  • the above methods for embedding and extracting watermark data can be embodied as computer programs, for example on computer-readable media.
  • a computer program comprising a set of computer- readable instructions adapted, when executed on a computer device, to cause said computer device to embed digital watermark data into image data representing a number of pixels, each of which has respective saturation values, by a method comprising the following steps: a) using said processor, dividing the image into blocks of pixels of a predefined size; b) for each block, using said processor to select one of a plurality of saturation patterns representing the binary value of one or more bits of the digital watermark data corresponding to the block; and c) for each block, using said processor to embed the binary value of the one or more bits of corresponding digital watermark data into the block by adjusting the saturation of pixels within each block in accordance with the selected pattern.
  • a computer program comprising a set of computer- readable instructions adapted, when executed on a computer device, to cause said computer device to extract digital watermark data embedded in image data representing a number of pixels, each of which has a respective saturation value, by a method comprising the following steps: a) using said processor, dividing the image into blocks of pixels of a predefined size; b) for each block, using said processor to compare the saturation of pixels within the block with a plurality of saturation patterns, each representing a different binary value, and to select a matching saturation pattern that most closely matches the saturation of pixels within the block; and c) for each block, using said processor to assign the binary value represented by the matching saturation pattern to one or more bits of the digital watermark data corresponding to the block.
  • the above methods for embedding and extracting watermark data can also be embodied in systems for embedding and extracting watermark data.
  • a system comprising a processor and a memory, the processor being adapted to execute a set of computer-readable instructions stored in the memory, thereby to embed digital watermark data into image data representing a number of pixels, each of which has respective saturation values, by a method comprising the following steps: a) using said processor, dividing the image into blocks of pixels of a predefined size; b) for each block, using said processor to select one of a plurality of saturation patterns representing the binary value of one or more bits of the digital watermark data corresponding to the block; and c) for each block, using said processor to embed the binary value of the one or more bits of corresponding digital watermark data into the block by adjusting the saturation of pixels within each block in accordance with the selected pattern.
  • a system comprising a processor and a memory, the processor being adapted to execute a set of computer-readable instructions stored in the memory, thereby to extract digital watermark data embedded in image data representing a number of pixels, each of which has a respective saturation value, by a method comprising the following steps: a) using said processor, dividing the image into blocks of pixels of a predefined size; b) for each block, using said processor to compare the saturation of pixels within the block with a plurality of saturation patterns, each representing a different binary value, and to select a matching saturation pattern that most closely matches the saturation of pixels within the block; and c) for each block, using said processor to assign the binary value represented by the matching saturation pattern to one or more bits of the digital watermark data corresponding to the block.
  • FIG. 6 Such a system is shown in Figure 6.
  • this will be a computer system 60 adapted to perform the method of embedding and/or the method of extracting watermark data described above.
  • the system 60 comprises a processor 61 coupled to memory 62. Within the memory are stored two software modules 63 and 64.
  • the software module 63 comprises computer- readable instructions to enable the processor 61 to perform the method for embedding digital watermark data into greyscale image data described above.
  • the software module 64 comprises computer-readable instructions to enable the processor 61 to perform the method for extracting digital watermark data from image data described above.
  • the computer system 60 is coupled to a printer 65 for printing an image from image data into which watermark data has been embedded using the above method.
  • the computer system 60 may also be coupled to a network so that image data comprising the watermark data may be transmitted to other computer systems, for example by e-mail.
  • the computer system 60 is also coupled to a scanner 66 and digital camera 67, which provide means by which the software module 64 can capture image data for the purpose of extracting embedded watermark data.
  • a digital image watermarking method based on block saturation adjustment of a greyscale image is disclosed. Since human eyes are more sensitive to luminance information than to chrominance, adjusting the pixels' chrominance value of a greyscale image slightly would not cause evident difference for human visual system. These chrominance adjustments as well as a predefined hue, which are called pseudo colour added to the greyscale image, can hide information. By adjusting the block pixels' saturation value from edge to centre according to pattern selected from a plurality of saturation patterns, one or more bits can be embedded to the block. The saturation adjustments and gradients are generated according to the block characteristics. While comparing the saturation values in each block with the plurality of saturation patterns, the best matched pattern is found and its representing bits form the watermark information, which can be detected from scanners or cameras acquired images.

Landscapes

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

Abstract

A method for embedding, using a processor, digital watermark data into image data representing a number of pixels, each of which has respective saturation values is disclosed. The method comprises the following steps: a) using said processor, dividing the image into blocks of pixels of a predefined size; b) for each block, using said processor to select one of a plurality of saturation patterns representing the binary value of one or more bits of the digital watermark data corresponding to the block; and c) for each block, using said processor to embed the binary value of the one or more bits of corresponding digital watermark data into the block by adjusting the saturation of pixels within each block in accordance with the selected pattern.

Description

DIGITAL WATERMARKING
Background
Digital image watermarking methods are used to embed information into a digital image. In some cases, the watermark should be visible, for example if it is a copyright notice or the like. In other cases, it is desirable that the watermark is imperceptible to a human observer so that the watermarking method can be used for steganographic purposes.
Traditional digital image watermarking methods add the information to be embedded to the middle frequency coefficients of the discrete cosine transform domain in a greyscale image or to the luminance domain of a colour image.
Applications of imperceptible digital watermarking include copyright protection systems, in which a device analyses a watermark retrieved from the digital signal to be copied before deciding whether the copy should be made depending on the analysis. Another application is source tracing, in which a unique watermark is embedded into a digital signal identifying a point of origin. If a copy is found then the unique watermark can be retrieved from the copy and used to identify the point of origin.
Brief Description of the Drawings
Embodiments will now be described with reference to the accompanying drawings, in which:
Figure 1 shows a flowchart for a method for embedding digital watermark data into greyscale image data; Figures 2a and 2b show a first set of saturation patterns for use in the method of Figure 1 ;
Figures 3a to 3d show a second set of saturation patterns for use in the method of Figure 1 ;
Figure 4 shows a plot of various relationships between luminance and saturation values for use in the method of Figure 1 ;
Figure 5 shows a flow chart of a method for extracting digital watermark data embedded in image data; and
Figure 6 shows a system for performing the method of Figure 1 and/or the method of Figure 5.
Detailed Description
As can be seen from the above discussion, a key feature of a digital watermarking method is the perceptibility of the watermark. Specifically, for watermarking methods that are to be used for steganographic purposes, the watermark should be imperceptible.
Another key requirement is that the watermark should be robust. In other words, it should still be possible to extract the watermark after the digital signal has been through a variety of processing steps.
However, the traditional techniques mentioned above are not suitable for images that will go through printing and scanning processes or, in particular, for images that will be captured by photographic processes. All of these processes will result in an image that is considerably different to the original, for instance due to the addition of noise. It has been found that to make watermarks applied using traditional techniques sufficiently robust that they survive such processing, it is necessary to increase the intensity of the watermark to the point where it becomes perceptible to a human observer. In one embodiment, there is provided a method for embedding, using a processor, digital watermark data into image data representing a number of pixels, each of which has respective saturation values, the method comprising the following steps: a) using said processor, dividing the image into blocks of pixels of a predefined size; b) for each block, using said processor to select one of a plurality of saturation patterns representing the binary value of one or more bits of the digital watermark data corresponding to the block; and c) for each block, using said processor to embed the binary value of the one or more bits of corresponding digital watermark data into the block by adjusting the saturation of pixels within each block in accordance with the selected pattern.
This embodiment exploits the fact that the human eye is inherently less sensitive to changes in saturation than it is to changes in luminance. However, such changes can be detected by digital cameras and scanners. Thus, by changing the saturation within the blocks it is possible to embed a watermark that is not perceptible to human beings but that is robust to a variety of processes, including printing, scanning and capture by digital photography.
Typically, the image data is greyscale image data.
Figure 1 shows a flowchart for a method for embedding digital watermark data into greyscale image data. The first step 1 in this method is to transform the luminance values of the pixels in the greyscale image data so that each of the luminance values falls within a predefined range of luminance values. In this embodiment, the predefined range of luminance values includes a lower limit that is higher than zero and an upper limit that is lower than a full scale luminance value.
Changes in saturation are visible to a human observer at high luminance values, whereas changes in saturation at very low luminance values are very difficult to detect. The purpose of this transformation is therefore to map luminance values into a region where changes of saturation remain imperceptible to a human observer and can be detected by a machine. Thus, the range of luminance values is transformed from the original upper and lower limits of 0 to 255 to new upper and lower limits of ti to t2 respectively. A typical value for ti is 50 and for t2 is 200. Many mathematical functions may be used to perform the transformation. In one example, luminance values lower than ti are set to ti and luminance values higher than t2 are set to t2.
Thus, the luminance values of the pixels in the image data may be transformed such that each luminance value lower than the lower limit of the predefined range of luminance values is set to the lower limit and each luminance value higher than the upper limit of the predefined range of luminance values is set to the upper limit.
Then, in step 2, the transformed image data is divided into non-overlapping square blocks with T pixels on each side. A typical value for T is 16 pixels. Each of these blocks will be used to store one or more bits of watermark information separately.
In step 3, one of a plurality of saturation patterns is selected to represent one or more bits of watermark data. This step will be repeated until saturation patterns have been selected to represent every bit of the watermark data. Each of the patterns is a square block of pixels with T pixels on each side to match the blocks that the greyscale image data has been divided into. A first example of a pair of suitable saturation patterns is shown in Figures 2a and 2b.
In Figure 2a, a first pattern 30 representing a binary zero has a set of pixels forming its perimeter 31 a that have saturation values higher than those pixels forming a central region 31 b. In Figure 2b, a second pattern 32 representing a binary one has a set of pixels forming its perimeter 33a that have saturation values lower than those pixels forming a central region 33b. In reality, in patterns 30 and 32 the saturation will gradually change from the perimeter 31 a, 33a to the centre 31 b, 33b, but step changes are shown in the figures for ease of illustration. The mechanism used to cause the gradual change will be explained below.
For embedding a binary zero of watermark data the first pattern 30 will be selected, whereas to embed a binary one of watermark data the second pattern 32 will be selected. Of course, the assignment of binary values to the first and second patterns 30 and 32 is arbitrary, and in other embodiments the first pattern 30 could represent a binary one whilst the second pattern 32 could represent a binary zero.
Thus, the plurality of saturation patterns may comprise a first saturation pattern in which the saturation of pixels is graduated from the perimeter of the block to the centre such that pixels at the centre have a higher saturation and a second saturation pattern in which the saturation of pixels is graduated from the perimeter of the block to the centre such that pixels at the centre have a lower saturation, each of the first and second saturation patterns representing a different one of a binary one and a binary zero.
Figures 3a to 3d show another scheme of saturation patterns for representing the watermark data. In these an elongate central region is positioned in one of four orientations relative to the perimeter so that the four saturation patterns can represent four different values.
In Figure 3a, a first pattern 40 comprises a set of pixels forming a perimeter region 41 a in which an elongate central region 41 b is oriented horizontally so as to extend between opposing sides of the pattern 40. A second pattern 42 is shown in Figure 3b and comprises a set of pixels forming a perimeter region 43a in which an elongate central region 43b is oriented vertically so as to extend between opposing sides of the pattern 42. The two elongate central regions 41 b and 43b are disposed orthogonally to one another. In Figure 3c, a third pattern 44 comprises a set of pixels forming a perimeter region 45a in which an elongate central region 45b is oriented diagonally so as to extend between diagonally opposing corners of the pattern 44. A fourth pattern 46 is shown in Figure 3d and comprises a set of pixels forming a perimeter region 47a in which an elongate central region 47b is oriented diagonally so as to extend between diagonally opposing corners of the pattern 46. The two elongate central regions 45b and 47b are disposed orthogonally to one another.
Between them, the four patterns 40, 42, 44, 46 shown in Figures 3a to 3d can represent the four binary values 00, 01 , 10, 1 1 . Therefore, they can be used to embed the watermark data into the greyscale image data at a higher density than the simpler patterns 30, 32 shown in Figures 2a and 2b. Of course, it is arbitrary which of the four patterns 40, 42, 44, 46 represents each of the four binary values 00, 01 , 10, 1 1 .
Again, in patterns 40, 42, 44 and 46 the saturation will gradually change from the perimeter 41 a, 43a, 45a, 47a to the centre 41 b, 43b, 45b and 47b but step changes are shown in the figures for ease of illustration. Of course, the change in saturation could be such that the centres 41 b, 43b, 45b and 47b are more highly saturated than the perimeters 41 a, 43a, 45a, 47a if desired.
Thus, the plurality of saturation patterns may comprise first to fourth saturation patterns in which the saturation of pixels is graduated from the perimeter of the block to the centre to define an elongate region in which the pixels have differing saturation values to the pixels in the perimeter of the block, the elongate regions of the first and second saturation patterns extending between opposing sides of the block and being orthogonal to each other, and the elongate regions of the third and fourth saturation patterns extending between diagonally opposing corners of the block and being orthogonal to each other, wherein each of the first to fourth saturation patterns represents a respective one of the binary values: 00, 01 , 10, 1 1 . When suitable saturation patterns have been selected to represent watermark data then step 4 is performed, in which the saturation values of the blocks into which the greyscale image data was divided in step 2 are adjusted in accordance with the saturation patterns.
In order to adjust the saturation value for each block, an original saturation (os) value is first calculated. This depends on the average luminance value of the pixels within the block such that the value of os is low for a high average luminance value and the value of os is high for a low average luminance value. A suitable formula for calculating a value for os is: os = sl - (alv - tl )- ^1 S \
('2 - where alv is the average luminance value of the pixels in the block, si is a constant representing the saturation at a luminance value of ti (the lower limit of the transformed luminance range), and s2 is a constant representing the saturation at a luminance value of t2 (the upper limit of the transformed luminance range). Typical values for si and s2 are 0.7 and 0.2 respectively. The relationship defined by the equation for os is shown by the line labelled os in Figure 4. Setting a value for os depending on the average luminance value in this way means that changes in saturation are not particularly apparent to a human observer.
It is then necessary to calculate a saturation adjustment range, sar. It is easier for a human observer to detect changes in saturation at high luminance values than it is at low luminance values. Therefore, a formula for calculating sar that depends on the average luminance value of the block, resulting in a larger adjustment at low luminance values is used. A suitable formula is:
Figure imgf000009_0001
where san and sar2 represent values of sar when alv is equal to the ti and t2 luminance values respectively. Typical values for san and sar2 are 0.5 and 0.1 respectively. Figure 4 shows the relationship between saturation and luminance for os+scr and os-scr. As can be seen, the change from the original saturation value, os, is much larger at low luminance values than it is at higher values.
Once the value for sar has been calculated for a block, its saturation can be adjusted by graduating the saturation in accordance with the saturation pattern selected for that block. The result of the graduation is that at the centre of the block, the saturation values of the pixels should be os+sar if the saturation at the centre of the block is to increase (as in Figure 2b). On the other hand, the saturation values of the pixels at the centre of the block should be os-sar if the saturation at the centre of the block is to decrease (as in Figure 2a). The saturation therefore gradually varies from os a the perimeter to os+sar or os-sar at the centre as appropriate.
Thus, the degree of adjustment of the saturation of pixels within each block may be determined by calculating an original block saturation value (os) using the following formula:
Figure imgf000010_0001
where alv is the average luminance value, ti and t2 are lower and upper limits of a range of luminance values of the image data, and si and s2 represent values of os when alv is equal to the ti and t2 luminance values respectively; and then calculating a saturation adjustment range using the following formula:
Figure imgf000010_0002
where sar is the saturation adjustment range, and san and sar2 represent values of sar when alv is equal to the ti and t2 luminance values respectively, the degree of adjustment being equal to the value of sar.
The graduation is performed by calculating the hue, saturation and intensity (HSI) colour vector for each pixel (the hue and saturation being zero for greyscale pixels) from its red, green, blue (RGB) value. The saturation is then gradually increased from os at the perimeter to os+scr or os-scr at the centre.
In this way, the digital watermark data is embedded into the saturation value of the greyscale image data in a manner that is imperceptible to human observers but can be detected by a machine.
The final step is to adjust the hue of each pixel in the greyscale image data. This is done in step 5 of Figure 1 . A cyan hue is selected because human eyes are not particularly sensitive to this colour. Using the cyan hue, adjusted saturation values and original luminance values, a new HSI vector is formed for each pixel, which is used to calculate a new RGB value for each pixel.
Thus, the method may further comprise adjusting a hue value for each pixel in the image data to a predefined value.
In another embodiment, there is provided a method for extracting, using a processor, digital watermark data embedded in image data representing a number of pixels, each of which has a respective saturation value, the method comprising the following steps: a) using said processor, dividing the image into blocks of pixels of a predefined size; b) for each block, using said processor to compare the saturation of pixels within the block with a plurality of saturation patterns, each representing a different binary value, and to select a matching saturation pattern that most closely matches the saturation of pixels within the block; and c) for each block, using said processor to assign the binary value represented by the matching saturation pattern to one or more bits of the digital watermark data corresponding to the block.
The method provides a way of recovering watermark data that has been embedded in image data using the method described above in relation to Figure 1 . A flowchart illustrating the method of recovering the watermark data is shown in Figure 5.
Prior to performing the method of extraction, image data is first captured. The image data may be captured using a scanner or a digital camera, or it may simply be an image file (for example a JPEG file). If captured by scanner or digital camera then the image data may have been printed after the watermark data has been embedded using the method described above with reference to Figure 1 .
In step 50, the image data containing the watermark data to be extracted is divided into square, non-overlapping blocks. These blocks will be the same size as the blocks into which the image was divided during the embedding process (step 2 of Figure 1 ). Thus, a typical size is 16 x 16 pixels.
Each of these blocks is then compared in step 51 with a set of saturation patterns to find which of these most closely matches the saturation of the pixels within the block. For example, to compare with the saturation patterns of Figures 2a and 2b, the average saturation of the central T/2 x T/2 (i.e. 8 x 8 pixels for a 16 x 16 pixel block) can be compared with the average saturation of the remaining pixels on the perimeter surrounding the central pixels. If the average saturation of the central pixels is lower than the average saturation of the perimeter pixels then the block can be said to match the pattern 30 of Figure 2a. If, on the other hand, the average saturation of the central pixels is higher than the average saturation of the perimeter pixels then the block can be said to match the pattern 32 of Figure 2b.
When the blocks have each been matched to saturation patterns then, in step 51 , the corresponding binary value of each saturation pattern can be assigned in step 52 to the respective bits of the binary watermark data. For example, if a block matches the saturation pattern 30 of Figure 2a then a binary zero can be assigned, whereas if the block matches the saturation pattern 32 of Figure 2b then a binary one can be assigned. In this way, the watermark data can be reconstituted. Thus, the plurality of saturation patterns may comprise a first saturation pattern in which the average saturation of an outer group of pixels disposed around the perimeter of the block is lower than the average saturation of an inner group of pixels surrounded by the first group of pixels, and a second saturation pattern in which the average saturation of an outer group of pixels disposed around the perimeter of the block is higher than the average saturation of an inner group of pixels surrounded by the first group of pixels, each of the first and second saturation patterns representing a different one of a binary one and a binary zero.
Alternatively, the plurality of saturation patterns may comprise first to fourth saturation patterns in which an outer group of pixels disposed around the perimeter of the block surrounds an inner group of pixels defining an elongate region in which the pixels have differing saturation values to the pixels in the outer region, the elongate regions of the first and second saturation patterns extending between opposing sides of the block and being orthogonal to each other, and the elongate regions of the third and fourth saturation patterns extending between diagonally opposing corners of the block and being orthogonal to each other, wherein each of the first to fourth saturation patterns represents a respective one of the binary values: 00, 01 , 10, 1 1 .
The above methods for embedding and extracting watermark data can be embodied as computer programs, for example on computer-readable media.
Thus, there is provided a computer program comprising a set of computer- readable instructions adapted, when executed on a computer device, to cause said computer device to embed digital watermark data into image data representing a number of pixels, each of which has respective saturation values, by a method comprising the following steps: a) using said processor, dividing the image into blocks of pixels of a predefined size; b) for each block, using said processor to select one of a plurality of saturation patterns representing the binary value of one or more bits of the digital watermark data corresponding to the block; and c) for each block, using said processor to embed the binary value of the one or more bits of corresponding digital watermark data into the block by adjusting the saturation of pixels within each block in accordance with the selected pattern.
In addition, there is provided a computer program comprising a set of computer- readable instructions adapted, when executed on a computer device, to cause said computer device to extract digital watermark data embedded in image data representing a number of pixels, each of which has a respective saturation value, by a method comprising the following steps: a) using said processor, dividing the image into blocks of pixels of a predefined size; b) for each block, using said processor to compare the saturation of pixels within the block with a plurality of saturation patterns, each representing a different binary value, and to select a matching saturation pattern that most closely matches the saturation of pixels within the block; and c) for each block, using said processor to assign the binary value represented by the matching saturation pattern to one or more bits of the digital watermark data corresponding to the block.
The above methods for embedding and extracting watermark data can also be embodied in systems for embedding and extracting watermark data.
Thus, there is provided a system comprising a processor and a memory, the processor being adapted to execute a set of computer-readable instructions stored in the memory, thereby to embed digital watermark data into image data representing a number of pixels, each of which has respective saturation values, by a method comprising the following steps: a) using said processor, dividing the image into blocks of pixels of a predefined size; b) for each block, using said processor to select one of a plurality of saturation patterns representing the binary value of one or more bits of the digital watermark data corresponding to the block; and c) for each block, using said processor to embed the binary value of the one or more bits of corresponding digital watermark data into the block by adjusting the saturation of pixels within each block in accordance with the selected pattern.
In addition, there is provided a system comprising a processor and a memory, the processor being adapted to execute a set of computer-readable instructions stored in the memory, thereby to extract digital watermark data embedded in image data representing a number of pixels, each of which has a respective saturation value, by a method comprising the following steps: a) using said processor, dividing the image into blocks of pixels of a predefined size; b) for each block, using said processor to compare the saturation of pixels within the block with a plurality of saturation patterns, each representing a different binary value, and to select a matching saturation pattern that most closely matches the saturation of pixels within the block; and c) for each block, using said processor to assign the binary value represented by the matching saturation pattern to one or more bits of the digital watermark data corresponding to the block.
Such a system is shown in Figure 6. Typically, this will be a computer system 60 adapted to perform the method of embedding and/or the method of extracting watermark data described above. The system 60 comprises a processor 61 coupled to memory 62. Within the memory are stored two software modules 63 and 64. The software module 63 comprises computer- readable instructions to enable the processor 61 to perform the method for embedding digital watermark data into greyscale image data described above. The software module 64 comprises computer-readable instructions to enable the processor 61 to perform the method for extracting digital watermark data from image data described above.
The computer system 60 is coupled to a printer 65 for printing an image from image data into which watermark data has been embedded using the above method. The computer system 60 may also be coupled to a network so that image data comprising the watermark data may be transmitted to other computer systems, for example by e-mail. The computer system 60 is also coupled to a scanner 66 and digital camera 67, which provide means by which the software module 64 can capture image data for the purpose of extracting embedded watermark data.
According to one embodiment, a digital image watermarking method based on block saturation adjustment of a greyscale image is disclosed. Since human eyes are more sensitive to luminance information than to chrominance, adjusting the pixels' chrominance value of a greyscale image slightly would not cause evident difference for human visual system. These chrominance adjustments as well as a predefined hue, which are called pseudo colour added to the greyscale image, can hide information. By adjusting the block pixels' saturation value from edge to centre according to pattern selected from a plurality of saturation patterns, one or more bits can be embedded to the block. The saturation adjustments and gradients are generated according to the block characteristics. While comparing the saturation values in each block with the plurality of saturation patterns, the best matched pattern is found and its representing bits form the watermark information, which can be detected from scanners or cameras acquired images.

Claims

We claim:
1 . A method for embedding, using a processor, digital watermark data into image data representing a number of pixels, each of which has respective saturation values, the method comprising the following steps: a) using said processor, dividing the image into blocks of pixels of a predefined size; b) for each block, using said processor to select one of a plurality of saturation patterns representing the binary value of one or more bits of the digital watermark data corresponding to the block; and c) for each block, using said processor to embed the binary value of the one or more bits of corresponding digital watermark data into the block by adjusting the saturation of pixels within each block in accordance with the selected pattern.
2. A method according to claim 1 , further comprising using said processor, transforming luminance values of the pixels in the image data prior to performing step (a) so that each of the luminance values falls within a predefined range of luminance values.
3. A method according to claim 2, wherein the predefined range of luminance values includes a lower limit that is higher than zero and an upper limit that is lower than a full scale luminance value.
4. A method according to claim 3, wherein the luminance values of the pixels in the image data are transformed such that each luminance value lower than the lower limit is set to the lower limit and each luminance value higher than the upper limit is set to the upper limit.
5. A method according to claim 1 , wherein the plurality of saturation patterns comprises a first saturation pattern in which the saturation of pixels is graduated from the perimeter of the block to the centre such that pixels at the centre have a higher saturation and a second saturation pattern in which the saturation of pixels is graduated from the perimeter of the block to the centre such that pixels at the centre have a lower saturation, each of the first and second saturation patterns representing a different one of a binary one and a binary zero.
6. A method according to claim 1 , wherein the plurality of saturation patterns comprises first to fourth saturation patterns in which the saturation of pixels is graduated from the perimeter of the block to the centre to define an elongate region in which the pixels have differing saturation values to the pixels in the perimeter of the block, the elongate regions of the first and second saturation patterns extending between opposing sides of the block and being orthogonal to each other, and the elongate regions of the third and fourth saturation patterns extending between diagonally opposing corners of the block and being orthogonal to each other, wherein each of the first to fourth saturation patterns represents a respective one of the binary values: 00, 01 , 10, 1 1 .
7. A method according to claim 1 , further comprising adjusting a hue value for each pixel in the image data to a predefined value.
8. A method according to claim 1 , wherein the degree of adjustment of the saturation of pixels within each block is determined by calculating an original block saturation value (os) using the following formula:
Figure imgf000018_0001
where alv is the average luminance value, ti and t2 are lower and upper limits of a range of luminance values of the image data, and si and s2 represent values of os when alv is equal to the ti and t2 luminance values respectively; and then calculating a saturation adjustment range using the following formula:
Figure imgf000018_0002
where sar is the saturation adjustment range, and san and sar2 represent values of sar when alv is equal to the ti and t2 luminance values respectively, the degree of adjustment being equal to the value of sar.
9. A method for extracting, using a processor, digital watermark data embedded in image data representing a number of pixels, each of which has a respective saturation value, the method comprising the following steps: a) using said processor, dividing the image into blocks of pixels of a predefined size; b) for each block, using said processor to compare the saturation of pixels within the block with a plurality of saturation patterns, each representing a different binary value, and to select a matching saturation pattern that most closely matches the saturation of pixels within the block; and c) for each block, using said processor to assign the binary value represented by the matching saturation pattern to one or more bits of the digital watermark data corresponding to the block.
10. A method according to claim 9, wherein the plurality of saturation patterns comprises a first saturation pattern in which the average saturation of an outer group of pixels disposed around the perimeter of the block is lower than the average saturation of an inner group of pixels surrounded by the first group of pixels, and a second saturation pattern in which the average saturation of an outer group of pixels disposed around the perimeter of the block is higher than the average saturation of an inner group of pixels surrounded by the first group of pixels, each of the first and second saturation patterns representing a different one of a binary one and a binary zero.
1 1 . A method according to claim 9, wherein the plurality of saturation patterns comprises first to fourth saturation patterns in which an outer group of pixels disposed around the perimeter of the block surrounds an inner group of pixels defining an elongate region in which the pixels have differing saturation values to the pixels in the outer region, the elongate regions of the first and second saturation patterns extending between opposing sides of the block and being orthogonal to each other, and the elongate regions of the third and fourth saturation patterns extending between diagonally opposing corners of the block and being orthogonal to each other, wherein each of the first to fourth saturation patterns represents a respective one of the binary values: 00, 01 , 10, 1 1 .
12. A system comprising a processor and a memory, the processor being adapted to execute a set of computer-readable instructions stored in the memory, thereby to embed digital watermark data into image data representing a number of pixels, each of which has respective saturation values, by a method comprising the following steps: a) using said processor, dividing the image into blocks of pixels of a predefined size; b) for each block, using said processor to select one of a plurality of saturation patterns representing the binary value of one or more bits of the digital watermark data corresponding to the block; and c) for each block, using said processor to embed the binary value of the one or more bits of corresponding digital watermark data into the block by adjusting the saturation of pixels within each block in accordance with the selected pattern.
13. A system comprising a processor and a memory, the processor being adapted to execute a set of computer-readable instructions stored in the memory, thereby to extract digital watermark data embedded in image data representing a number of pixels, each of which has a respective saturation value, by a method comprising the following steps: a) using said processor, dividing the image into blocks of pixels of a predefined size; b) for each block, using said processor to compare the saturation of pixels within the block with a plurality of saturation patterns, each representing a different binary value, and to select a matching saturation pattern that most closely matches the saturation of pixels within the block; and c) for each block, using said processor to assign the binary value represented by the matching saturation pattern to one or more bits of the digital watermark data corresponding to the block.
14. A computer program comprising a set of computer-readable instructions adapted, when executed on a computer device, to cause said computer device to embed digital watermark data into image data representing a number of pixels, each of which has respective saturation values, by a method comprising the following steps: a) using said processor, dividing the image into blocks of pixels of a predefined size; b) for each block, using said processor to select one of a plurality of saturation patterns representing the binary value of one or more bits of the digital watermark data corresponding to the block; and c) for each block, using said processor to embed the binary value of the one or more bits of corresponding digital watermark data into the block by adjusting the saturation of pixels within each block in accordance with the selected pattern.
15. A computer program comprising a set of computer-readable instructions adapted, when executed on a computer device, to cause said computer device to extract digital watermark data embedded in image data representing a number of pixels, each of which has a respective saturation value, by a method comprising the following steps: a) using said processor, dividing the image into blocks of pixels of a predefined size; b) for each block, using said processor to compare the saturation of pixels within the block with a plurality of saturation patterns, each representing a different binary value, and to select a matching saturation pattern that most closely matches the saturation of pixels within the block; and c) for each block, using said processor to assign the binary value represented by the matching saturation pattern to one or more bits of the digital watermark data corresponding to the block.
PCT/CN2010/076982 2010-09-16 2010-09-16 Digital watermarking WO2012034280A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/CN2010/076982 WO2012034280A1 (en) 2010-09-16 2010-09-16 Digital watermarking
US13/823,562 US9159112B2 (en) 2010-09-16 2010-09-16 Digital watermarking using saturation patterns

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2010/076982 WO2012034280A1 (en) 2010-09-16 2010-09-16 Digital watermarking

Publications (1)

Publication Number Publication Date
WO2012034280A1 true WO2012034280A1 (en) 2012-03-22

Family

ID=45830931

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2010/076982 WO2012034280A1 (en) 2010-09-16 2010-09-16 Digital watermarking

Country Status (2)

Country Link
US (1) US9159112B2 (en)
WO (1) WO2012034280A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105848010A (en) * 2016-03-31 2016-08-10 天津大学 Mobile device video watermark embedding and extracting method based on block combination

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105992072A (en) * 2015-07-24 2016-10-05 乐视云计算有限公司 Watermark processing method, watermark extracting method and corresponding devices
CN105069756B (en) * 2015-08-10 2018-02-16 深圳市华星光电技术有限公司 Image enchancing method
US11132758B2 (en) * 2016-09-14 2021-09-28 Inscape Data, Inc. Embedding data in video without visible impairments
US11082710B2 (en) * 2016-09-14 2021-08-03 Inscape Data, Inc. Embedding video watermarks without visible impairments
US10360651B1 (en) * 2016-09-14 2019-07-23 Inscape Data, Inc. Compatible adaptive video watermarking
JP6825432B2 (en) * 2017-03-13 2021-02-03 富士通株式会社 Analysis program, analysis method and analysis equipment
CN110770725B (en) * 2018-06-30 2022-05-31 华为云计算技术有限公司 Data processing method and device
CN112789650B (en) * 2019-09-06 2024-03-12 谷歌有限责任公司 Detecting translucent image watermarks

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101297320A (en) * 2005-10-26 2008-10-29 皇家飞利浦电子股份有限公司 A method of embedding data in an information signal

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4783838A (en) * 1984-12-26 1988-11-08 Konishiroku Photo Industry Co., Ltd. Image processing method and apparatus therefor
US5204948A (en) * 1989-09-08 1993-04-20 Advantest Corporation Method and apparatus for evaluating color image signals
US6590996B1 (en) 2000-02-14 2003-07-08 Digimarc Corporation Color adaptive watermarking
EP0921675B1 (en) * 1997-12-03 2006-07-05 Kabushiki Kaisha Toshiba Method of processing image information and method of preventing forgery of certificates or the like
US5946414A (en) * 1998-08-28 1999-08-31 Xerox Corporation Encoding data in color images using patterned color modulated image regions
US6141441A (en) * 1998-09-28 2000-10-31 Xerox Corporation Decoding data from patterned color modulated image regions in a color image
US7334247B1 (en) 1999-03-29 2008-02-19 The Directv Group, Inc. Method and apparatus for watermarking received television content
JP2001148776A (en) * 1999-11-18 2001-05-29 Canon Inc Image processing unit and method and storage medium
US7142689B2 (en) * 2000-01-31 2006-11-28 Canon Kabushiki Kaisha Image processing apparatus for determining specific images
JP3872267B2 (en) * 2000-09-12 2007-01-24 インターナショナル・ビジネス・マシーンズ・コーポレーション Digital watermarking method and system having scaling tolerance
JP2002281283A (en) 2001-03-21 2002-09-27 Sharp Corp Information embedding method, information detecting method and recording medium having recorded programs
JP4104469B2 (en) * 2003-02-25 2008-06-18 株式会社リコー Image processing apparatus and image processing method
HUP0301368A3 (en) * 2003-05-20 2005-09-28 Amt Advanced Multimedia Techno Method and equipment for compressing motion picture data
JP4783003B2 (en) * 2003-11-28 2011-09-28 株式会社東芝 Personal authentication medium issuing device and personal authentication medium issuing method
CN101609546B (en) * 2005-08-04 2012-05-23 日本电信电话株式会社 Digital watermark detecting method, digital watermark detecting device
US20080056529A1 (en) * 2006-09-06 2008-03-06 Bhattacharjya Anoop K Systems and Methods for Image Watermarking
JP2008067233A (en) 2006-09-08 2008-03-21 C4 Technology Inc Digital-watermarking embedding method, program, and computer-readable recording medium
JP4905142B2 (en) * 2007-01-15 2012-03-28 富士通株式会社 Image processing apparatus, printed matter, and image processing program
US7953275B1 (en) * 2007-08-20 2011-05-31 Adobe Systems Incorporated Image shader for digital image modification
US8009862B2 (en) 2007-11-27 2011-08-30 Seiko Epson Corporation Embedding data in images
US20090323125A1 (en) * 2008-06-27 2009-12-31 Kabushiki Kaisha Toshiba Image generating apparatus
US8064100B2 (en) * 2008-12-05 2011-11-22 Xerox Corporation Watermark encoding and detection using narrow band illumination

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101297320A (en) * 2005-10-26 2008-10-29 皇家飞利浦电子股份有限公司 A method of embedding data in an information signal

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ZHANG, LI ZHI ET AL.: "Color image watermarking based on HSI space", JOURNAL OF SICHUAN UNIVERSITY (NATURAL SCIENCE EDITION), vol. 45, no. 1, February 2008 (2008-02-01), pages 76 - 78 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105848010A (en) * 2016-03-31 2016-08-10 天津大学 Mobile device video watermark embedding and extracting method based on block combination
CN105848010B (en) * 2016-03-31 2018-12-25 天津大学 The insertion of mobile device video watermark and extracting method based on piecemeal combination

Also Published As

Publication number Publication date
US9159112B2 (en) 2015-10-13
US20130188824A1 (en) 2013-07-25

Similar Documents

Publication Publication Date Title
US9159112B2 (en) Digital watermarking using saturation patterns
US7995790B2 (en) Digital watermark detection using predetermined color projections
EP1282073A2 (en) Technique of embedding and detecting digital watermark
US20030076979A1 (en) Method of embedding digital watermark, method of extracting embedded digital watermark and apparatuses for the same
US8160295B2 (en) Image-processing device and image-processing method for embedding code patterns in image information
CN112241929B (en) Watermark embedding method, watermark detecting method, watermark embedding device, watermark detecting device and electronic equipment
Gourrame et al. A zero-bit Fourier image watermarking for print-cam process
EP1041815B1 (en) Image processing apparatus, image processing method, and storage medium
Juarez-Sandoval et al. Digital image ownership authentication via camouflaged unseen-visible watermarking
CN112070648A (en) Watermark embedding method, watermark extracting method, watermark embedding device, watermark extracting device and electronic equipment
Wan et al. Robust image watermarking based on two-layer visual saliency-induced JND profile
CN111127291A (en) Image watermark embedding and extracting method and system based on spatial frequency domain JND conversion
Lee et al. Digital watermarking based on JND model and QR code features
CN116579908B (en) Method and device for implanting encrypted hidden information into image
CN112541853A (en) Data processing method, device and equipment
Murali et al. Detection Of digital photo image forgery
CN112106100B (en) Method and apparatus for encoding watermark into digital image, method and apparatus for detecting watermark in digital image, computer program product
Hosam et al. A hybrid ROI-embedding based watermarking technique using DWT and DCT transforms
JP3478781B2 (en) Image processing apparatus, image processing method, and storage medium
Ramaiya et al. Digital security using watermarking techniques via discrete wavelet transform
CN115187443B (en) Watermark embedding and detecting method and device based on spatial domain residual error feature fusion
CN113344763B (en) Robust watermarking algorithm based on JND and oriented to screen shooting
CN112767227B (en) Image watermarking method capable of resisting screen shooting
JP6920719B2 (en) Digital watermarking device and method
Kumar et al. Security of finger prints with video watermarking techniques based on dwt and svd

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10857136

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 13823562

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10857136

Country of ref document: EP

Kind code of ref document: A1