Protecting images with an image watermark
First Claim
1. A method for imparting a watermark onto a digitized image, said method comprising:
- providing a digitized image having at least one image plane, said image plane being represented by an image array having a plurality of pixels, said pixel having at least one color component, said watermark being formed using a distinct watermarking plane represented by an array having a plurality of distinct watermarking elements, each of said distinct watermarking elements having an array position and having one-to-one positional correspondence with said image pixels, and multiplying said brightness data associated with said at least one color component by a predetermined brightness multiplying factor, wherein said brightness multiplying factor is a corresponding distinct watermarking element, and said watermark has a invisibility classification.
3 Assignments
0 Petitions
Accused Products
Abstract
A robust means of watermarking a digitized image with a highly random sequence of pixel brightness multipliers is presented. The random sequence is formed from ‘robust-watermarking-parameters’ selected and known only by the marker and/or the marking entity. A watermarking plane is generated having an element array with one-to-one element positional correspondence with the pixels of the digitized image being marked. Each element of the watermarking plane is assigned a random value dependent upon a robust random sequence and a specified brightness modulation strength. The so generated watermarking plane is imparted onto the digitized image by multiplying the brightness value or values of each pixel by its corresponding element value in the watermarking plane. The resulting modified brightness values impart the random and relatively invisible watermark onto the digitized image. Brightness modulation is the essence of watermark imparting. Detection of an imparted watermark requires knowing the watermarking plane with which the watermark was imparted. Regeneration of the watermarking plane requires knowledge of the robust-marking-parameters used in its formulation. This is generally only known to the marker and/or marking entity. Once regenerated, the watermarking plane is used together with a verifying image located in a ‘visualizer’ to demonstrate the existence of the watermark. The process of watermark detection is enhanced by application of a blurring filter to the marked image before detection is attempted.
-
Citations
91 Claims
-
1. A method for imparting a watermark onto a digitized image, said method comprising:
-
providing a digitized image having at least one image plane, said image plane being represented by an image array having a plurality of pixels, said pixel having at least one color component, said watermark being formed using a distinct watermarking plane represented by an array having a plurality of distinct watermarking elements, each of said distinct watermarking elements having an array position and having one-to-one positional correspondence with said image pixels, and multiplying said brightness data associated with said at least one color component by a predetermined brightness multiplying factor, wherein said brightness multiplying factor is a corresponding distinct watermarking element, and said watermark has a invisibility classification. - View Dependent Claims (2, 3, 4, 17, 45, 61)
-
-
5. A method for imparting a watermark onto a digitized image comprising the steps of:
-
providing said digitized image comprised of a plurality of pixels, wherein each of said pixels includes brightness data that represents a brightness of at least one color; and
altering said brightness data associated with a plurality of said pixels maintaining the hue and saturation of said pixel. - View Dependent Claims (6, 7, 8, 9, 10, 46, 62, 63, 75)
-
-
11. A method for imparting a watermark onto a digitized image comprising the steps of:
-
providing said digitized image comprised of a plurality of pixels, wherein each of said pixels includes brightness data that represents a brightness of at least one color, with said image having I rows and J columns, and a pixel in row i and column j having a brightness Y(i, j); and
for a plurality i and at least one j adding to or subtracting from the brightness Y(i, j) a random value ε
(i, j), wherein 1≦
i≦
I and 1≦
j≦
J are the row and column indices of a pixel location in the image. - View Dependent Claims (12, 47, 48, 49, 50, 51, 53, 54, 64, 68, 69, 73, 82, 83, 84, 85, 86)
-
-
13. A method for generating a watermarked image, the method comprising:
-
imparting a watermark onto a digitized image having a plurality of original pixels, each of said pixels having at least one original pixel brightness value;
providing said digitized watermarking plane comprising a plurality of watermarking elements, each element having a watermark brightness multiplying factor and having one-to-one positional correspondence with said original pixels; and
producing a watermarked image by multiplying said original brightness of each of said original pixels by said brightness multiplying factor of a corresponding one of said watermark elements.
-
-
14. A method comprising:
forming a watermarking plane including a plurality of elements each having a brightness adding or subtracting factor, including the steps of;
generating a secure random sequence of integers having a first plurality of bits;
linearly remapping said random sequence to form a remapped sequence of brightness multiplying factors to provide a desired modulation strength;
computing a discrete Fourier transform of said remapped sequence to form a Fourier sequence having frequency coordinates;
expanding said frequency coordinates to form an expanded sequence;
computing an inverse discrete Fourier transform of said expanded sequence to obtain a watermarking sequence of values; and
deriving said brightness adding or subtracting values of said elements of said watermarking plane based upon said watermarking sequence of values.
-
15. A method for detecting a watermark in a marked image, said method comprising:
providing said marked image marked by a watermarking plane, said marked image having at least one color plane including a plurality of image pixels, said watermarking plane having a plurality of watermarking elements, wherein each of said image pixels has at least one brightness value and each of said watermarking elements has a brightness adding and/or subtracting factor, including the steps of;
(a) reconstructing said watermarking plane;
(b) aligning said watermarking plane with said marked image such that each watermarking element has a corresponding image pixel;
(c) providing a selector array and a visualizer image of equal size, wherein said selector array has a plurality of selector elements each having at least one counter, and wherein said visualizer image has a plurality of visualizer pixels each having at least one brightness value, and wherein said visualizer pixels represent a recognizable pattern when displayed;
(d) resetting said at least one counter to zero;
(e) placing said selector in an initial position by aligning said selector elements with a plurality of corresponding image pixels and a plurality of corresponding watermarking elements;
(f) choosing a selector element and identifying a corresponding watermarking element;
(g) identifying a first plurality of watermarking elements that neighbor said corresponding watermarking element;
(h) generating a first average that represents an average of brightness multiplying factors of said first plurality of watermarking elements;
(i) choosing a color plane of said marked image and finding a corresponding image pixel;
(j) identifying a first plurality of neighboring pixels that neighbor said corresponding image pixel;
(k) generating a second average that represents an average of brightness values of said first plurality of neighboring pixels;
(l) updating said at least one counter based upon first and second comparison operations, wherein said first comparison operation compares said first average with said brightness multiplying factor of said corresponding watermarking element and said second comparison operation compares said second average with said brightness value of said corresponding pixel;
(m) repeating steps (i) through (l) for all color planes;
(n) repeating steps (f) through (m) for all selector elements;
(o) choosing a new selector position that does not overlap any previous selector position;
(p) repeating steps (f) through (o) for all non-overlapping selector positions; and
(q) generating a visual representation indicating detection of said watermark in said marked image utilizing said at least one counter of said selector array and said visualizer pixels.
-
16. A method for detecting a watermarking plane comprising the steps of:
-
providing an image having a plurality of image pixels, u(i, j), with said image having I rows and J columns, and a pixel in row i and column j having at least one component, marked by a watermarking plane;
said watermarking plane having a plurality of watermarking elements, w(i, j), with said watermarking plane having I rows and J columns, and an element in row i and column j having a brightness multiplying factor;
aligning said watermarking plane with said image;
identifying a subset of said image elements;
for each pixel, u(i, j), of said subset of image pixels, generating a first value representing a relationship between an attribute of said pixel u(i, j) and an attribute of image pixels that neighbor said pixel u(i, j);
identifying a watermarking element, w(i, j), that corresponds to said pixel u(i, j) and watermarking elements that correspond to said image pixels that neighbor said image pixel u(i, j);
generating a second value representing a relationship between an attribute of said watermarking element w(i, j) and an attribute of the identified watermarking elements; and
generating a coincidence value representing a likelihood that said image is marked by said watermarking plane based upon said first and second values.
-
-
18. A method for imparting a watermark onto a digitized image comprising the steps of:
-
providing said digitized image comprised of a plurality of image pixels with said digitized image having I rows and J columns, and a pixel in row i and column j having at least one component, Y(i, j); and
adding to or subtracting from said brightness data associated with at least one of said pixels a predetermined brightness adding factor in the range of 0 to Y(i, j), or brightness subtracting factor in the range of 0 to Y(i, j), wherein said brightness adding or subtracting factor has a relationship with a number taken from a random number sequence, said relationship is a linear remapping to provide a desired modulation strength, and said modulation strength is less than or equal to 50 percent.
-
-
19. A method for imparting a watermark onto a digitized image comprising the steps of:
-
providing said digitized image comprised of a plurality of image pixels with said image having I rows and J columns, and a pixel in row i and column j having at least one component, Y(i, j); and
adding to or subtracting from said brightness data associated with at least one of said pixels by a predetermined brightness adding or subtracting factor in the range of 0 to Y(i, j), wherein said brightness adding or subtracting factor has a relationship with a number taken from a random number sequence, said relationship is a linear remapping to provide a desired modulation strength, said sequence is formed from a plurality of robust watermarking parameters, and said parameters comprise a cryptographic key, two coefficients and an initial value of said random number generator.
-
-
20. A method for detecting a watermark, said method comprising:
-
providing a marked image having a plurality of image pixels said marked image being marked by a watermarking plane, having a plurality of watermark elements;
aligning said watermarking plane with said marked image, and generating a coincidence value by averaging a detection coincidence for each selector element of a group of selector elements taken from said image pixels. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29, 55, 70, 74, 87)
-
-
30. A method for detecting a watermark imparted on an image, said method comprising:
-
providing said image having at least one image plane, said image plane being represented by an image array having a plurality of image elements, said watermark being formed using a watermarking plane represented by a watermarking array having a plurality of watermarking elements, each of said watermarking elements having a first array position and having one-to-one positional correspondence with said image elements;
computing a first statistically related variable for each element of at least one first grouping of a first selector array of elements taken from said image elements, wherein each of said image elements has a second array position;
computing a second statistically related variable for each element of at least one second grouping of a second selector array of elements taken from said watermarking elements, wherein each element of said second selector array of elements has one-to-one positional correspondence with said first selector array, and wherein said correspondence forms combinations of corresponding elements;
comparing to determine an affirmative and non-affirmative likeness of said first and second statistically related variables for each of said combinations of corresponding elements; and
forming at least one comparison array having one-to-one correspondence with said at least one first grouping and having a plurality of comparison elements, wherein each of said comparison elements contains a positive detection indication for each element of said first grouping when said step of comparing results in an affirmative likeness, and a negative detection indication for each element of said first grouping when said step of comparing results in a non-affirmative likeness. - View Dependent Claims (31, 32, 33, 34, 35, 36, 37, 38, 40, 41, 42, 52, 56, 57, 71, 88)
-
-
39. A method comprising generating a visual representation of a data array of data elements having a data array size, including the steps of:
-
providing a visualizer pattern of visualizer pixels represented by a visualizer array of visualizer pixels, said visualizer array having a visualizer array size equal to said data array size;
forming a visualizer-coincidence image of image pixels represented by an image array having an image array size equal to said visualizer array size;
setting each said visualizer-coincidence pixel to the color of said corresponding visualizer pixel if a value of said corresponding data element is above a predetermined threshold and to another color if said value is below said predetermined threshold; and
displaying said visualizer-coincidence image to form said visual representation.
-
-
43. A method for demonstrating an existence of a watermark in a marked image, said image having a plurality of image pixels, said method comprising:
-
providing a visualizer pattern represented by an array of visualizer elements, each of said visualizer elements corresponding with one pixel of a plurality of visualizer pixels and having a first value if said one pixel has a first color and a second value if said one pixel has a second color, said visualizer array having a visualizer array size;
implementing a watermark detection scheme and computing a coincidence value for each of said image pixels within a plurality of pixel selector arrays taken from among said image pixels, each of said pixel selector arrays having a selector array size equal to said visualizer array size;
forming a detection array from a plurality of coincidence values, wherein said detection array has a detection array size equal to said visualizer size; and
computing a coincidence detection value for each of said visualizer elements such that said detection value represents a visualizer. - View Dependent Claims (58, 89)
-
-
44. A method for detecting a watermark in a marked image having a plurality of image pixels, said marked image marked by a watermarking plane having a plurality of watermarking elements, said method comprising:
-
providing a visualizer pattern having a plurality of visualizer pixels and a visualizer size;
aligning said watermarking plane with said marked image such that each said image pixel has a corresponding watermarking element;
generating a statistically related variable for each image element in a plurality of groupings of image elements in relationship with said corresponding watermarking element;
wherein each of said groupings has a grouping size equal to said visualizer size;
averaging said variable for each element in a like position of all of said groupings to obtain a composite detection success value; and
displaying detection success values by a plurality of visualizer-coincidence pixels having a size equal to said visualizer size, each said visualizer-coincidence pixel having a same color as said corresponding visualizer pixel when said corresponding success value indicates detection success and another color otherwise. - View Dependent Claims (59, 72, 90)
-
-
65. A method for detecting a watermark in a marked image, said method comprising:
-
providing said marked image having said watermark;
altering said marked image employing a blurring filter in producing a filtered image; and
employing a watermark detection method upon said filtered image to detect said watermark.
-
-
66. A method for detecting a watermark in a marked image, said method comprising:
-
providing said marked image having said watermark;
processing the marked image and producing a screened image;
altering said screened image employing a blurring filter in producing a filtered image; and
employing a watermark detection method upon said filtered image to detect said watermark. - View Dependent Claims (67)
-
-
76. A method of generating a visual representation of a data array of data elements having a data array size, said method comprising:
-
providing a visualizer pattern of visualizer pixels represented by a visualizer array of visualizer elements, said visualizer array having a visualizer array size equal to said data array size, wherein each of said visualizer elements has a first logical value if a corresponding visualizer pixel is a first color and a complementary logical value if said corresponding visualizer pixel has a second color;
forming a data image of image pixels represented by an image array having an image array size equal to said data array size, wherein an image pixel has a corresponding data element and a corresponding visualizer pixel;
setting said data pixel to a color of said corresponding visualizer pixel if a value of said data element is above a predetermined threshold and to another color if said value is below said predetermined threshold; and
displaying said data image to form said visual representation. - View Dependent Claims (77, 78, 79, 80, 81)
-
-
91. A method for detecting a watermarking plane comprising the steps of:
-
providing an image having a plurality of image pixels, u(i, j), with said image having I rows and J columns, and a pixel in row i and column j having at least one component, marked by a watermarking plane;
said watermarking plane having a plurality of watermarking elements, w(i, j), with said watermarking plane having I rows and J columns, and an element in row i and column j having a brightness multiplying factor;
aligning said watermarking plane with said image;
identifying a subset of said image elements; and
for each pixel, u(i, j), of said subset of image pixels, employing a detection scheme in determining a probability of watermark detection based on a property of uniform distribution of the random brightness multiplying factors or the random brightness adding or subtracting factors.
-
Specification