CA2284866C - Cocktail watermarking on images - Google Patents
Cocktail watermarking on images Download PDFInfo
- Publication number
- CA2284866C CA2284866C CA002284866A CA2284866A CA2284866C CA 2284866 C CA2284866 C CA 2284866C CA 002284866 A CA002284866 A CA 002284866A CA 2284866 A CA2284866 A CA 2284866A CA 2284866 C CA2284866 C CA 2284866C
- Authority
- CA
- Canada
- Prior art keywords
- image
- coefficients
- transform coefficients
- subset
- watermark
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 claims description 24
- 230000003247 decreasing effect Effects 0.000 claims description 12
- 230000001131 transforming effect Effects 0.000 claims description 11
- 238000013459 approach Methods 0.000 abstract description 8
- 230000000295 complement effect Effects 0.000 abstract description 5
- 238000002474 experimental method Methods 0.000 abstract description 3
- 238000001228 spectrum Methods 0.000 abstract description 2
- 238000013507 mapping Methods 0.000 description 8
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 241000282376 Panthera tigris Species 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/0021—Image watermarking
- G06T1/005—Robust watermarking, e.g. average attack or collusion attack resistant
- G06T1/0071—Robust watermarking, e.g. average attack or collusion attack resistant using multiple or alternating watermarks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/32—Circuits 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/32101—Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
- H04N1/32144—Display, 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/32—Circuits 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/32101—Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
- H04N1/32144—Display, 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/32149—Methods relating to embedding, encoding, decoding, detection or retrieval operations
- H04N1/32154—Transform domain methods
- H04N1/3217—Transform domain methods using wavelet transforms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/32—Circuits 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/32101—Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
- H04N1/32144—Display, 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/32149—Methods relating to embedding, encoding, decoding, detection or retrieval operations
- H04N1/32154—Transform domain methods
- H04N1/32187—Transform domain methods with selective or adaptive application of the additional information, e.g. in selected frequency coefficients
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/32—Circuits 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/32101—Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
- H04N1/32144—Display, 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/32149—Methods relating to embedding, encoding, decoding, detection or retrieval operations
- H04N1/32288—Multiple embedding, e.g. cocktail embedding, or redundant embedding, e.g. repeating the additional information at a plurality of locations in the image
- H04N1/32304—Embedding different sets of additional information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
- H04N19/467—Embedding additional information in the video signal during the compression process characterised by the embedded information being invisible, e.g. watermarking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/63—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/2389—Multiplex stream processing, e.g. multiplex stream encrypting
- H04N21/23892—Multiplex stream processing, e.g. multiplex stream encrypting involving embedding information at multiplex stream level, e.g. embedding a watermark at packet level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/835—Generation of protective data, e.g. certificates
- H04N21/8358—Generation of protective data, e.g. certificates involving watermark
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2201/00—General purpose image data processing
- G06T2201/005—Image watermarking
- G06T2201/0052—Embedding of the watermark in the frequency domain
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2201/00—General purpose image data processing
- G06T2201/005—Image watermarking
- G06T2201/0081—Image watermarking whereby both original and watermarked images are required at decoder, e.g. destination-based, non-blind, non-oblivious
Abstract
A novel image protection scheme named "cocktail watermarking" improves over current spread-spectrum watermarking approaches. Two watermarks, which play complementary roles, are simultaneously embedded into an original image. The new watermarking scheme has the characteristic that, no matter what an attack is, at least one watermark typically survives well and can be detected.
Results of extensive experiments indicate that our cocktail watermarking scheme is effective in resisting various attacks.
Results of extensive experiments indicate that our cocktail watermarking scheme is effective in resisting various attacks.
Description
COCKTAIL WATERMARKING ON IMAGES
Background This invention relates to embedding information in an image.
Conventionally, hand-written signatures, seals, or other markings are used by artists and authors to identify documents or images as their work, for example to claim a l0 copyright or other ownership right on their work. However, digital technology for manipulating images has made it difficult to mark images in a way that the marking cannot be removed or obliterated. Additionally, owing to the popularity of Internet, the use and transfer of digitized media including media bearing digitized images has increased. Therefore, it is imperative to protect works from intentional or unwitting use which is contrary to an owner's rights. A commonly used method for identifying a work is to insert a watermark into the original work.
Watermarks which are embedded in an original work are expected to tolerate attacks of any kind. Detection of a valid watermark in a work enables an owner of the work to identify the work as their own. It is desirable to be able to detect such a watermark, even if the work is modified, for example by processing an image.
Summary The invention is directed to a novel image protection scheme named "cocktail watermarking". To improve over current spread-spectrum watermarking approaches, two watermarks, which play complementary roles, are simultaneously embedded into an original image. The new watermarking scheme has the characteristic that, no matter what an attack is, at least one watermark typically survives well and can be detected. Results of extensive experiments indicate that our cocktail watermarking scheme is effective in resisting various attacks.
In one aspect, in general, the invention is a method for adding information to a first image including the following steps. The method includes transforming the first image to form a set of transform coefficients which represent the image. A first subset of the transform coefficients is selected and each of this first subset is modified such that the magnitude of each of the coefficients more likely to be increased than decreased. A
second subset of the transform coefficients is selected and modified such that the magnitude of each of the coefficients is more likely to be decreased than increased.
The method then includes forming a second image using the modified first and second subsets of transform coefficients.
The invention can include one or more of the following features:
Transforming the first image is done by computing a wavelet transform of the image, and the second image is formed by taking an inverse wavelet transform of modified wavelet transform coefficients The magnitude of each of the coefficients in the first and the second subsets is greater than a just noticeable difference value for that coefficient.
Modifying each of the first subset of transform coefficients includes increasing the magnitude of each of said first set of coefficients, and modifying each of the second subset of transform coefficients includes decreasing the magnitude of each of said second set of coefficients.
Background This invention relates to embedding information in an image.
Conventionally, hand-written signatures, seals, or other markings are used by artists and authors to identify documents or images as their work, for example to claim a l0 copyright or other ownership right on their work. However, digital technology for manipulating images has made it difficult to mark images in a way that the marking cannot be removed or obliterated. Additionally, owing to the popularity of Internet, the use and transfer of digitized media including media bearing digitized images has increased. Therefore, it is imperative to protect works from intentional or unwitting use which is contrary to an owner's rights. A commonly used method for identifying a work is to insert a watermark into the original work.
Watermarks which are embedded in an original work are expected to tolerate attacks of any kind. Detection of a valid watermark in a work enables an owner of the work to identify the work as their own. It is desirable to be able to detect such a watermark, even if the work is modified, for example by processing an image.
Summary The invention is directed to a novel image protection scheme named "cocktail watermarking". To improve over current spread-spectrum watermarking approaches, two watermarks, which play complementary roles, are simultaneously embedded into an original image. The new watermarking scheme has the characteristic that, no matter what an attack is, at least one watermark typically survives well and can be detected. Results of extensive experiments indicate that our cocktail watermarking scheme is effective in resisting various attacks.
In one aspect, in general, the invention is a method for adding information to a first image including the following steps. The method includes transforming the first image to form a set of transform coefficients which represent the image. A first subset of the transform coefficients is selected and each of this first subset is modified such that the magnitude of each of the coefficients more likely to be increased than decreased. A
second subset of the transform coefficients is selected and modified such that the magnitude of each of the coefficients is more likely to be decreased than increased.
The method then includes forming a second image using the modified first and second subsets of transform coefficients.
The invention can include one or more of the following features:
Transforming the first image is done by computing a wavelet transform of the image, and the second image is formed by taking an inverse wavelet transform of modified wavelet transform coefficients The magnitude of each of the coefficients in the first and the second subsets is greater than a just noticeable difference value for that coefficient.
Modifying each of the first subset of transform coefficients includes increasing the magnitude of each of said first set of coefficients, and modifying each of the second subset of transform coefficients includes decreasing the magnitude of each of said second set of coefficients.
The method may further include computing a set of random numbers. Increasing the magnitude of each of the first subset of coefficients then includes increasing the magnitude of each of the coefficients according to a different one of the random numbers, and decreasing the magnitude of each of the second subset of coefficients includes decreasing the magnitude of each of the coefficients according to a different one of the random numbers.
The method can further include accepting a third image, which may be a processed version of the second image. The method then includes transforming the third image to form a set of transform coefficients which represent said third image and computing a difference between the transform coefficients of the first image and the transform coefficients of the third image. An indicator that the third image is a processed version of the second image is then determined from the computed difference.
According to the present invention, there is also provided a method for detecting information from a third image, comprising:
accepting a third image;
transforming the third image to form a plurality of transform coefficients which represent said third image;
computing a difference between transform coefficients of a first image and the transform coefficients of the third image; and determining an indicator that the third image is either a modified version of a second image if the indicator is larger than or equal to a pre-set threshold or an un-watermarked image if the indicator is smaller than a pre-set threshold.
In another general aspect of the invention, a method for detecting information embedded in an image includes the following. The method includes accepting an image and transforming the accepted image to form a set of transform coefficient which represent the accepted image. The method also includes accepting an original image and transforming the original image to form a set of transform coefficients which represent the original image. A difference between the transform coefficients of the original image and the transform coefficients of the accepted image are computed.
Multiple estimates of a watermark sequence are determined such that each estimate is determined from a different subset of the computed differences between transform coefficients. Multiple indicators that the watermark sequence was encoded in the accepted image are computed, 3a each indicator being associated with a different one of the determined estimates of the watermark sequence. The method then includes determining an overall indicator that the watermark sequence was encoded in the accepted image from the plurality of indicators.
Other features and advantages of the invention are apparent from the following description, and from the claims.
Description of Drawings FIG 1 is a block diagram showing encoding of a watermark and subsequent detection of the watermark;
FIG. 2A is a block diagram of an encoder, which encodes a watermark sequence into an original image;
FIG. 2B is a block diagram of a detector, which detects a watermark sequence encoded in an image; and FIG. 3 is an illustration of steps of an encoding process.
Description Referring to FIG. l, an original image I(x,y) 100 is processed by an encoder 110 in order to mark the image with so-called "watermark" to produce a watermarked image I~m~(x,y) 130. This watermarked image is distributed, for example, over electronic distribution media or channels such as on magnetic disks or over the Internet. During distribution, watermarked image I~m~(x,y) 130 may be modified either inadvertently or intentionally such that the resulting image is not identical to watermarked image I~m~(x,y). Such a modification is often referred to as an "attack" alluding to an intentional modification aimed at removing a watermark. Here we refer to an attack as any modification, intentional or not. In FIG. l, this modification is represented by attack 150, which takes watermarked image I~m~(x,y) 130 and produces attacked watermarked image I*(x,y) 170. A detector 180 processes attacked watermarked image I*(x,y) 170, along with additional information produced during the encoding phase (described further below), to produce a scalar quantity, Sim 190, which indicates whether the input to detector 180 is indeed a modified version of watermarked image I~m~(x,y) 130. That is, detector 180 determines whether its input is attacked watermarked image I*(x,y) 120 as shown in FIG. 1 as opposed to a version of original image I(x,y) 100 or that was not watermarked by encoder 100, or marked with a different watermark. Detector 180 makes use of original image I(x,y) 100 as well as other information produced by encoder 110, such as a random watermark sequence N 120 and a mapping m(x,y) 122 which identifies where in watermarked image I~m~(x,y) 130 watermark sequence N 120 is "hidden."
This other information is not distributed along with the watermarked image, thereby making it difficult to remove the watermark from the distributed image.
A desirable property of the combination of encoder 110 and detector 180 is that the determination of whether the input to detector 180 is an attacked watermarked image should be robust to a variety of types of attacks 150.
Typical types of attacks 150 include median filtering, resealing, sharpening, histogram equalization, dithering, compression, photocopying, and blurring. A property of many types of attacks is that the coefficients of a wavelet transform of an attacked image are either mostly increased in magnitude (that is, significantly more than one half of 3'0 the coefficients are increased in magnitude), or are mostly decreased in magnitude, compared to the corresponding coefficients of the image prior to the attack. Although not limited to attacks with such characteristics, the approach embodied in this invention is particularly well matched to attacks with this property.
Referring to FIG. 2A, encoder 110 includes a number of logical modules. An overall approach used in encoder 110 is to hide two complementary watermarks in original image I(x,y) 100 to produce watermarked image I~~'~(x,y) 130. The complementary watermarks are chosen such that under typical attacks, at least one of the watermarks survives and is easily detectable by detector 180 (FIG. 1). We refer to this general approach of applying two, or more, watermarks to an image as "cocktail" watermarking.
Encoder 110 accepts original image I(x,y) 100. In the discussion that follows, original image 100 is made up of 128 by 128 grayscale pixels. In alternative embodiments, other sizes of images, and black-and-white or color images are processed using the same approach. Encoder 110 applies two watermarks in the original image I(x,y) 100 in the transform domain by modifying a selected subset of transform coefficients of the image to encode a watermark sequence. In this embodiment, encoder 110 uses a wavelet transform 210 to compute a wavelet representation made up of wavelet coefficients H(x,y) 212. In other embodiments, other transforms are used, for example, a discrete cosine transform. After computing the wavelet representation, encoder 110 modifies a subset of wavelet coefficients H(x,y) 212 at a wavelet modulator 215 to produce a modified representation made up of modulated wavelet coefficients H~m~(x,y) 216. The encoder applies an inverse wavelet transform 220 to the modulated wavelet coefficients 216 to 3'0 produce watermarked image I~m~(x,y) 130.
Turning now to FIG. 2B, detector 180 inputs attacked watermarked image I*(x,y) 170 which is either watermarked image I~m~(x,y) 130 or an attacked version of that watermarked image. Detector 180 produces a scalar quantity Sim 190, indicates whether the image was indeed processed (watermarked) by encoder 110. In order to compute Sim 190, the detector makes use of original image I(x,y), 100, attacked watermarked image I* (x, y) 170, as well as several other quantities computed by encoder 110, which are described below, that were computed during the encoding process.
Referring back to FIG. 2A, encoder 110 encodes watermark sequence N 120 into original image I(x,y) 100.
Encoder 110 applies the watermark sequence as two separate watermarks: as a positive watermark M(P) (x,y) produced by a positive watermark generator 21.4, and as a negative watermark M(n) (x, y) produced by a negative watermark generator 218. The outputs of watermark generators 214 and 218 are passed to wavelet modulator ZI5 which modifies wavelet coefficients H(x,y) 212 of the original image.
Watermark sequence N 120 is passed to the detector for use in determining whether the attacked watermarked image indeed encodes that watermark sequence. In addition, mapping m(x,y) 122 is passed from the encoder to the detector. This mapping identifies which wavelet coefficients were modified during the encoding stage. In addition, a weighting sequence w 124 is passed from the encoder to the detector. Weighting sequence w 124, generated as a Gaussian sequence, is related to the degree to which watermark sequence N 120 is encoded into the original image.
Turning to FIG. 3, the process carried out by encoder 110 is illustrated as a sequence of three transformations.
First, original image I(x,y) 100 is transformed using wavelet transform 210 (FIG. 2A) to produce wavelet coefficients H(x,y) 212. The wavelet transform produces the same number of coefficients as in the original image, in 7a this case 128 by 128. Using conventional wavelet transform techniaues, the wavelet coefficients are arranged in terms of nested sets of coefficients each associated with different spatial scales: three sets of 64 by 64 coefficients 302 represent three orientations of a first spatial scale; three sets of 32 by 32 coefficients 304 represent the next scale; three sets of 16 by 16 coefficients 306 represent the next; and a final set of 16 by 16 coefficients 308 represent a remaining image at the final spatial scale. Although illustrated with the scale and orientation structure, wavelet coefficients H(x,y) are indexed by a "position" (x, y) where the x and y indices each range over 128 values spanning all the scales and orientations of the wavelet transform coefficients.
Referring still to FIG. 3, in the next transformation, wavelet coefficients H(x,y) 212 are modulated by the encoder to produce H~m~(x,y) 216. In general, most of the coefficient values are unchanged in this transformation, thereby avoiding a significant degradation of the original image. A sequence of coefficients 322 (the positions of which are illustrated with the plus signs) are modulated according to the positive watermark, and a sequence of coefficients 320 (the positions of which are illustrated with the minus signs) are modulated according to the negative watermark. The selection of these sequences and the details of modulating the coefficients are described below. The positions of these modulated coefficients are encoded in mapping m(x,y) 122 which is passed from encoder 110 to detector 180.
In the final transformation carried out by encoder 110, modulated wavelet coefficients 216 are passed to inverse wavelet transform 220 to produce watermarked image I~'°? (x,y) 130.
Turning back to FIG. 2A, wavelet coefficients H(x,y) 212 are passed to a coefficient selector 230 which determines the sequence of positions of coefficients to modulate 320 and 322 (see FIG. 3). In order to reduce the perceptual effects of the encoding procedure, coefficient selector 230 chooses a subset of the wavelet coefficients such that each of the selected coefficients is greater in magnitude than the just noticeable difference (JND) for that coefficient. The just noticeable difference for a coefficient is the least amount by which the coefficient may be changed for the change to be perceptible in the corresponding image. In this embodiment which makes use of the wavelet transform, the JND for each coefficient is computed independently of the original image, and depends on the spatial scales of the wavelet coefficients. Of coefficients with sufficiently large magnitude, half are used for the positive watermark and half are used for the negative watermark. Coefficient selector 230 passes a length, k, which is one half the number of selected coefficients to a watermark sequence generator 232.
Watermark generator 232 generates a random sequence watermark sequence N = (nl, . . . , nk) 120, each element of which is independently chosen from a Gaussian distribution with mean zero and variance 1 (i.e., ni~N(0,1)). Encoder 110 passes watermark sequence 120 to both positive watermark generator 214 and negative watermark generator 218 as well as subsequently to detector 180.
Returning to coefficient selector 230, after having selected the coefficients with sufficiently large magnitude, coefficient selector 230 determines a randomized sequence of those selected coefficients. Coefficient selector sends the positions and values of the sequence of coefficients to positive and negative watermark generators 214 and 218, respectively. Each of the watermark generators uses alternating elements in the sequence. That is, the positive and negative watermarks are interleaved.
The method can further include accepting a third image, which may be a processed version of the second image. The method then includes transforming the third image to form a set of transform coefficients which represent said third image and computing a difference between the transform coefficients of the first image and the transform coefficients of the third image. An indicator that the third image is a processed version of the second image is then determined from the computed difference.
According to the present invention, there is also provided a method for detecting information from a third image, comprising:
accepting a third image;
transforming the third image to form a plurality of transform coefficients which represent said third image;
computing a difference between transform coefficients of a first image and the transform coefficients of the third image; and determining an indicator that the third image is either a modified version of a second image if the indicator is larger than or equal to a pre-set threshold or an un-watermarked image if the indicator is smaller than a pre-set threshold.
In another general aspect of the invention, a method for detecting information embedded in an image includes the following. The method includes accepting an image and transforming the accepted image to form a set of transform coefficient which represent the accepted image. The method also includes accepting an original image and transforming the original image to form a set of transform coefficients which represent the original image. A difference between the transform coefficients of the original image and the transform coefficients of the accepted image are computed.
Multiple estimates of a watermark sequence are determined such that each estimate is determined from a different subset of the computed differences between transform coefficients. Multiple indicators that the watermark sequence was encoded in the accepted image are computed, 3a each indicator being associated with a different one of the determined estimates of the watermark sequence. The method then includes determining an overall indicator that the watermark sequence was encoded in the accepted image from the plurality of indicators.
Other features and advantages of the invention are apparent from the following description, and from the claims.
Description of Drawings FIG 1 is a block diagram showing encoding of a watermark and subsequent detection of the watermark;
FIG. 2A is a block diagram of an encoder, which encodes a watermark sequence into an original image;
FIG. 2B is a block diagram of a detector, which detects a watermark sequence encoded in an image; and FIG. 3 is an illustration of steps of an encoding process.
Description Referring to FIG. l, an original image I(x,y) 100 is processed by an encoder 110 in order to mark the image with so-called "watermark" to produce a watermarked image I~m~(x,y) 130. This watermarked image is distributed, for example, over electronic distribution media or channels such as on magnetic disks or over the Internet. During distribution, watermarked image I~m~(x,y) 130 may be modified either inadvertently or intentionally such that the resulting image is not identical to watermarked image I~m~(x,y). Such a modification is often referred to as an "attack" alluding to an intentional modification aimed at removing a watermark. Here we refer to an attack as any modification, intentional or not. In FIG. l, this modification is represented by attack 150, which takes watermarked image I~m~(x,y) 130 and produces attacked watermarked image I*(x,y) 170. A detector 180 processes attacked watermarked image I*(x,y) 170, along with additional information produced during the encoding phase (described further below), to produce a scalar quantity, Sim 190, which indicates whether the input to detector 180 is indeed a modified version of watermarked image I~m~(x,y) 130. That is, detector 180 determines whether its input is attacked watermarked image I*(x,y) 120 as shown in FIG. 1 as opposed to a version of original image I(x,y) 100 or that was not watermarked by encoder 100, or marked with a different watermark. Detector 180 makes use of original image I(x,y) 100 as well as other information produced by encoder 110, such as a random watermark sequence N 120 and a mapping m(x,y) 122 which identifies where in watermarked image I~m~(x,y) 130 watermark sequence N 120 is "hidden."
This other information is not distributed along with the watermarked image, thereby making it difficult to remove the watermark from the distributed image.
A desirable property of the combination of encoder 110 and detector 180 is that the determination of whether the input to detector 180 is an attacked watermarked image should be robust to a variety of types of attacks 150.
Typical types of attacks 150 include median filtering, resealing, sharpening, histogram equalization, dithering, compression, photocopying, and blurring. A property of many types of attacks is that the coefficients of a wavelet transform of an attacked image are either mostly increased in magnitude (that is, significantly more than one half of 3'0 the coefficients are increased in magnitude), or are mostly decreased in magnitude, compared to the corresponding coefficients of the image prior to the attack. Although not limited to attacks with such characteristics, the approach embodied in this invention is particularly well matched to attacks with this property.
Referring to FIG. 2A, encoder 110 includes a number of logical modules. An overall approach used in encoder 110 is to hide two complementary watermarks in original image I(x,y) 100 to produce watermarked image I~~'~(x,y) 130. The complementary watermarks are chosen such that under typical attacks, at least one of the watermarks survives and is easily detectable by detector 180 (FIG. 1). We refer to this general approach of applying two, or more, watermarks to an image as "cocktail" watermarking.
Encoder 110 accepts original image I(x,y) 100. In the discussion that follows, original image 100 is made up of 128 by 128 grayscale pixels. In alternative embodiments, other sizes of images, and black-and-white or color images are processed using the same approach. Encoder 110 applies two watermarks in the original image I(x,y) 100 in the transform domain by modifying a selected subset of transform coefficients of the image to encode a watermark sequence. In this embodiment, encoder 110 uses a wavelet transform 210 to compute a wavelet representation made up of wavelet coefficients H(x,y) 212. In other embodiments, other transforms are used, for example, a discrete cosine transform. After computing the wavelet representation, encoder 110 modifies a subset of wavelet coefficients H(x,y) 212 at a wavelet modulator 215 to produce a modified representation made up of modulated wavelet coefficients H~m~(x,y) 216. The encoder applies an inverse wavelet transform 220 to the modulated wavelet coefficients 216 to 3'0 produce watermarked image I~m~(x,y) 130.
Turning now to FIG. 2B, detector 180 inputs attacked watermarked image I*(x,y) 170 which is either watermarked image I~m~(x,y) 130 or an attacked version of that watermarked image. Detector 180 produces a scalar quantity Sim 190, indicates whether the image was indeed processed (watermarked) by encoder 110. In order to compute Sim 190, the detector makes use of original image I(x,y), 100, attacked watermarked image I* (x, y) 170, as well as several other quantities computed by encoder 110, which are described below, that were computed during the encoding process.
Referring back to FIG. 2A, encoder 110 encodes watermark sequence N 120 into original image I(x,y) 100.
Encoder 110 applies the watermark sequence as two separate watermarks: as a positive watermark M(P) (x,y) produced by a positive watermark generator 21.4, and as a negative watermark M(n) (x, y) produced by a negative watermark generator 218. The outputs of watermark generators 214 and 218 are passed to wavelet modulator ZI5 which modifies wavelet coefficients H(x,y) 212 of the original image.
Watermark sequence N 120 is passed to the detector for use in determining whether the attacked watermarked image indeed encodes that watermark sequence. In addition, mapping m(x,y) 122 is passed from the encoder to the detector. This mapping identifies which wavelet coefficients were modified during the encoding stage. In addition, a weighting sequence w 124 is passed from the encoder to the detector. Weighting sequence w 124, generated as a Gaussian sequence, is related to the degree to which watermark sequence N 120 is encoded into the original image.
Turning to FIG. 3, the process carried out by encoder 110 is illustrated as a sequence of three transformations.
First, original image I(x,y) 100 is transformed using wavelet transform 210 (FIG. 2A) to produce wavelet coefficients H(x,y) 212. The wavelet transform produces the same number of coefficients as in the original image, in 7a this case 128 by 128. Using conventional wavelet transform techniaues, the wavelet coefficients are arranged in terms of nested sets of coefficients each associated with different spatial scales: three sets of 64 by 64 coefficients 302 represent three orientations of a first spatial scale; three sets of 32 by 32 coefficients 304 represent the next scale; three sets of 16 by 16 coefficients 306 represent the next; and a final set of 16 by 16 coefficients 308 represent a remaining image at the final spatial scale. Although illustrated with the scale and orientation structure, wavelet coefficients H(x,y) are indexed by a "position" (x, y) where the x and y indices each range over 128 values spanning all the scales and orientations of the wavelet transform coefficients.
Referring still to FIG. 3, in the next transformation, wavelet coefficients H(x,y) 212 are modulated by the encoder to produce H~m~(x,y) 216. In general, most of the coefficient values are unchanged in this transformation, thereby avoiding a significant degradation of the original image. A sequence of coefficients 322 (the positions of which are illustrated with the plus signs) are modulated according to the positive watermark, and a sequence of coefficients 320 (the positions of which are illustrated with the minus signs) are modulated according to the negative watermark. The selection of these sequences and the details of modulating the coefficients are described below. The positions of these modulated coefficients are encoded in mapping m(x,y) 122 which is passed from encoder 110 to detector 180.
In the final transformation carried out by encoder 110, modulated wavelet coefficients 216 are passed to inverse wavelet transform 220 to produce watermarked image I~'°? (x,y) 130.
Turning back to FIG. 2A, wavelet coefficients H(x,y) 212 are passed to a coefficient selector 230 which determines the sequence of positions of coefficients to modulate 320 and 322 (see FIG. 3). In order to reduce the perceptual effects of the encoding procedure, coefficient selector 230 chooses a subset of the wavelet coefficients such that each of the selected coefficients is greater in magnitude than the just noticeable difference (JND) for that coefficient. The just noticeable difference for a coefficient is the least amount by which the coefficient may be changed for the change to be perceptible in the corresponding image. In this embodiment which makes use of the wavelet transform, the JND for each coefficient is computed independently of the original image, and depends on the spatial scales of the wavelet coefficients. Of coefficients with sufficiently large magnitude, half are used for the positive watermark and half are used for the negative watermark. Coefficient selector 230 passes a length, k, which is one half the number of selected coefficients to a watermark sequence generator 232.
Watermark generator 232 generates a random sequence watermark sequence N = (nl, . . . , nk) 120, each element of which is independently chosen from a Gaussian distribution with mean zero and variance 1 (i.e., ni~N(0,1)). Encoder 110 passes watermark sequence 120 to both positive watermark generator 214 and negative watermark generator 218 as well as subsequently to detector 180.
Returning to coefficient selector 230, after having selected the coefficients with sufficiently large magnitude, coefficient selector 230 determines a randomized sequence of those selected coefficients. Coefficient selector sends the positions and values of the sequence of coefficients to positive and negative watermark generators 214 and 218, respectively. Each of the watermark generators uses alternating elements in the sequence. That is, the positive and negative watermarks are interleaved.
Positive watermark generator 214 generates positive watermark M~p~(x,y) such that the magnitude of the corresponding selected wavelet coefficients is, in general increased. On the other hand, 'negative watermark generator 218 generates negative watermark M~n~(x,y) such that the magnitude of the corresponding selected wavelet coefficients is, in general, decreased.
Positive watermark generator 214 generates positive watermark M~P~(x,y) as follows. First, it sorts watermark sequence N 120. Values from the watermark sequence are used in turn; nbottom refers to the largest (most positive) value in the sequence that has not yet been used, and ntop refers to the smallest (most negative) values that has not yet been used. For evexy other of the coefficient sequence, (xP,yP) generated by coefficient selector 230 (that is positions 322 in FIG. 3) positive watermark generator 214 computes M(P> (XP, YP) _ '~ (XP, YP) X W X nbottom if H (XP, YP) 0 - ~(XP,YP) X W X ntop if H(Xp,YP)<0 In this way M~P~(xP,yP) will typically (but not necessarily due to the random nature of N 120) have the same sign as H (xP, yP) and therefore when added to H (xp, yp) will increase its magnitude.
Negative watermark generator 218 generates negative watermark M~n~(x,y) in a complementary manner. For every other of the coefficient sequence generated by coefficient selector 230, that is, the coefficients not used by the positive watermark generator, (xn,yn), negative watermark generator 218 computes Mcn~ (xn, Yn) = JND (xp, yP) X w X ntap if H (xP, yp) 0 - ~TND (XP, yP) X W X nbottom if H (Xp, yp) < 0 so that M~n~(xn,yn) will typically (but not necessarily due to the random nature of N) have the opposite sign then H (Xn, Yn) Positive watermark generator 214 and negative watermark generator 218 pass the indices of the selected elements of watermark sequence 120 to a mapping module 222 which generates mapping m(x,y) 122 such that m(xP,yP)=i at the position that uses ni in the positive watermark and m (xn, yn) =-i at the position that uses ni in the negative watermark.
Referring still to FIG. 2A, wavelet modulator 215 accepts positive and negative watermarks MIP)(xp,yp) and M(n)(xn,yn} and their positions. For each position to be modified by the positive watermark, wavelet modulator 215 computes H(m) (xPrYP) - H(xP~YP} + M(P) (xprYp) and for each position to be modified by the negative watermark, it computes HIm> (xnrYn) - H(xnrYn) + M(n> (xnrYn) and leave the remaining coefficients unchanged H(m> (x~ y) _ H (3C. y) .
Referring now to FIG. 28, detector 180 accepts attacked watermarked image I*(x,y) 170. Detector 180 also receives original image I(x,y) 100, mapping m(x,y) 122 and watermark sequence N 1.20. Detector 180 applies wavelet transform 260 to original image I(x,y) 100 to compute wavelet coefficients H(x,y) 262 and applies wavelet transform 264 to attacked watermarked image I*(x,y) 170 to compute wavelet coefficients H*(x,y) 266. Wavelet transforms 260 and 264 perform the same function as wavelet transform 210 (FIG. 2A) in encoder 110. Detector 180 then computes a difference between these sets of wavelet coefficients at module 270 by computing DIFF (x, y) - ( H* (x, y) - H (x, y) } / ( JND (x, y) x w ) for each position in the transforms.
Detector 180 passes the computed difference to a positive watermark estimator 280 and a negative watermark estimator 284. Positive watermark estimator 280 accepts mapping m(x,y) 122 to select the positions at which the watermark sequence was encoded as a positive watermark and determine N(P~*, an estimate of watermark sequence 120 as encoded in the positive watermark. Specifically, n~p~*i =
DIFF(xp,yp) for the position (xp,yp) that satisfies m(xp,yp)=i. Similarly, negative watermark estimator computes N~n~ * such that n~n~ *i = DIFF (xn, yn) for the position that satisfies m (xn, yn) =-i .
Detector 180 computes a similarity between each of N(p~
and N(n~* and watermark sequence 120 to produce scalar similarities Sim~P~ and Sim~n~, respectively. In particular, detector 180 computes Sim~p~ = N ~ N(p~ * / sqrt (N(p~ * ~ N~p~ *) and Slm(n~ = N ~ N(nl* ~ gqrt (N(n~* ~ N(n~*) where ~ signifies an inner product between the corresponding sequences. Then detector 180 takes the maximum of Sim~P~
and Sim(n~ to determine Sim 190. The larger the value of Sim 190, the more certain that its input is indeed a modified version of watermarked image I~m~(x,y) 130.
In an alternative embodiment, detector 180 performs a relocation step prior to computing the difference between the wavelet coefficients of the original image and the attacked watermarked image. The relocation step involves the detector using Fi('"~(x,y), the wavelet coefficients of the watermarked image (prior to attack), which it either receives from the encoder or alternatively that it recomputes from the original image it receives from the encoder, The coefficients of H('~~ (x, y) and H* (x, y) are each sorted by magnitude and the coefficients of H*(x,y) are relocated such that the kth largest coefficient of H*(x,y) is moved to the position of the kth largest coefficient of H~m~(x.,y) for all positions in the transformed images.
In experiment using the above approaches, a tiger image of size 128 x 128 was used for hiding watermarks. The length k of a hidden watermark sequence N depends on the original image and the wavelet-based visual model which determined the JND values for the wavelet coefficients.
Using the tiger image, a total 2714 wavelet coefficients of the possible 16,348=1282 were selected by coefficient selector 230 (FIG. 2A). The peak signal-to-noise ratio (PSNR) of the watermarked image was 34.5 dB. 32 different attacks 150 (FIG. 1) were to test the watermarking approach. The results show that typically, one of Sim(P) or Sim(n) is significantly greater than the other, indicating that one watermark may be destroyed while the other one survives well. Some attacks severely damaged the watermarked image, but the embedded watermarks can still be extracted with high detector response. Also, the detector response was generally increased using the relocation step described above as compared to not performing relocation.
It is to be understood that while the invention has been described in conjunction with the detailed description thereof, the foregoing description is intended only to illustrate particular embodiments of the invention and not to limit the scope of the invention, which is defined by the scope of the appended claims. Other aspects, advantages, and modifications are within the scope of the following claims.
Positive watermark generator 214 generates positive watermark M~P~(x,y) as follows. First, it sorts watermark sequence N 120. Values from the watermark sequence are used in turn; nbottom refers to the largest (most positive) value in the sequence that has not yet been used, and ntop refers to the smallest (most negative) values that has not yet been used. For evexy other of the coefficient sequence, (xP,yP) generated by coefficient selector 230 (that is positions 322 in FIG. 3) positive watermark generator 214 computes M(P> (XP, YP) _ '~ (XP, YP) X W X nbottom if H (XP, YP) 0 - ~(XP,YP) X W X ntop if H(Xp,YP)<0 In this way M~P~(xP,yP) will typically (but not necessarily due to the random nature of N 120) have the same sign as H (xP, yP) and therefore when added to H (xp, yp) will increase its magnitude.
Negative watermark generator 218 generates negative watermark M~n~(x,y) in a complementary manner. For every other of the coefficient sequence generated by coefficient selector 230, that is, the coefficients not used by the positive watermark generator, (xn,yn), negative watermark generator 218 computes Mcn~ (xn, Yn) = JND (xp, yP) X w X ntap if H (xP, yp) 0 - ~TND (XP, yP) X W X nbottom if H (Xp, yp) < 0 so that M~n~(xn,yn) will typically (but not necessarily due to the random nature of N) have the opposite sign then H (Xn, Yn) Positive watermark generator 214 and negative watermark generator 218 pass the indices of the selected elements of watermark sequence 120 to a mapping module 222 which generates mapping m(x,y) 122 such that m(xP,yP)=i at the position that uses ni in the positive watermark and m (xn, yn) =-i at the position that uses ni in the negative watermark.
Referring still to FIG. 2A, wavelet modulator 215 accepts positive and negative watermarks MIP)(xp,yp) and M(n)(xn,yn} and their positions. For each position to be modified by the positive watermark, wavelet modulator 215 computes H(m) (xPrYP) - H(xP~YP} + M(P) (xprYp) and for each position to be modified by the negative watermark, it computes HIm> (xnrYn) - H(xnrYn) + M(n> (xnrYn) and leave the remaining coefficients unchanged H(m> (x~ y) _ H (3C. y) .
Referring now to FIG. 28, detector 180 accepts attacked watermarked image I*(x,y) 170. Detector 180 also receives original image I(x,y) 100, mapping m(x,y) 122 and watermark sequence N 1.20. Detector 180 applies wavelet transform 260 to original image I(x,y) 100 to compute wavelet coefficients H(x,y) 262 and applies wavelet transform 264 to attacked watermarked image I*(x,y) 170 to compute wavelet coefficients H*(x,y) 266. Wavelet transforms 260 and 264 perform the same function as wavelet transform 210 (FIG. 2A) in encoder 110. Detector 180 then computes a difference between these sets of wavelet coefficients at module 270 by computing DIFF (x, y) - ( H* (x, y) - H (x, y) } / ( JND (x, y) x w ) for each position in the transforms.
Detector 180 passes the computed difference to a positive watermark estimator 280 and a negative watermark estimator 284. Positive watermark estimator 280 accepts mapping m(x,y) 122 to select the positions at which the watermark sequence was encoded as a positive watermark and determine N(P~*, an estimate of watermark sequence 120 as encoded in the positive watermark. Specifically, n~p~*i =
DIFF(xp,yp) for the position (xp,yp) that satisfies m(xp,yp)=i. Similarly, negative watermark estimator computes N~n~ * such that n~n~ *i = DIFF (xn, yn) for the position that satisfies m (xn, yn) =-i .
Detector 180 computes a similarity between each of N(p~
and N(n~* and watermark sequence 120 to produce scalar similarities Sim~P~ and Sim~n~, respectively. In particular, detector 180 computes Sim~p~ = N ~ N(p~ * / sqrt (N(p~ * ~ N~p~ *) and Slm(n~ = N ~ N(nl* ~ gqrt (N(n~* ~ N(n~*) where ~ signifies an inner product between the corresponding sequences. Then detector 180 takes the maximum of Sim~P~
and Sim(n~ to determine Sim 190. The larger the value of Sim 190, the more certain that its input is indeed a modified version of watermarked image I~m~(x,y) 130.
In an alternative embodiment, detector 180 performs a relocation step prior to computing the difference between the wavelet coefficients of the original image and the attacked watermarked image. The relocation step involves the detector using Fi('"~(x,y), the wavelet coefficients of the watermarked image (prior to attack), which it either receives from the encoder or alternatively that it recomputes from the original image it receives from the encoder, The coefficients of H('~~ (x, y) and H* (x, y) are each sorted by magnitude and the coefficients of H*(x,y) are relocated such that the kth largest coefficient of H*(x,y) is moved to the position of the kth largest coefficient of H~m~(x.,y) for all positions in the transformed images.
In experiment using the above approaches, a tiger image of size 128 x 128 was used for hiding watermarks. The length k of a hidden watermark sequence N depends on the original image and the wavelet-based visual model which determined the JND values for the wavelet coefficients.
Using the tiger image, a total 2714 wavelet coefficients of the possible 16,348=1282 were selected by coefficient selector 230 (FIG. 2A). The peak signal-to-noise ratio (PSNR) of the watermarked image was 34.5 dB. 32 different attacks 150 (FIG. 1) were to test the watermarking approach. The results show that typically, one of Sim(P) or Sim(n) is significantly greater than the other, indicating that one watermark may be destroyed while the other one survives well. Some attacks severely damaged the watermarked image, but the embedded watermarks can still be extracted with high detector response. Also, the detector response was generally increased using the relocation step described above as compared to not performing relocation.
It is to be understood that while the invention has been described in conjunction with the detailed description thereof, the foregoing description is intended only to illustrate particular embodiments of the invention and not to limit the scope of the invention, which is defined by the scope of the appended claims. Other aspects, advantages, and modifications are within the scope of the following claims.
Claims (7)
1. ~A method for adding information to a first image comprising:
transforming the first image to form a plurality of transform coefficients which represent said first image;
selecting a first subset of the transform coefficients;
modifying each of the first subset of transform coefficients such that the magnitude of each of the coefficients is more likely to be increased than decreased;
selecting a second subset of the transform coefficients;
modifying each of the second subset of transform coefficients such that the magnitude of each of the coefficients is more likely to be decreased than increased;
and forming a second image using the modified first subset of transform coefficients and the modified second subset of transform coefficients.
transforming the first image to form a plurality of transform coefficients which represent said first image;
selecting a first subset of the transform coefficients;
modifying each of the first subset of transform coefficients such that the magnitude of each of the coefficients is more likely to be increased than decreased;
selecting a second subset of the transform coefficients;
modifying each of the second subset of transform coefficients such that the magnitude of each of the coefficients is more likely to be decreased than increased;
and forming a second image using the modified first subset of transform coefficients and the modified second subset of transform coefficients.
2. ~The method of claim 1 wherein transforming the first image includes computing a plurality of wavelet coefficients from the first image.
3. ~The method of claim 2 wherein the magnitude of each of the coefficients in the first and the second subsets is greater than a multiple of a just noticeable difference value for that coefficient.
4. The method of claim 3, wherein modifying each of the first subset of transform coefficients includes increasing the magnitude of each of said first set of coefficients, and modifying each of the second subset of transform coefficients includes decreasing the magnitude of each of said second set of coefficients.
5. The method of claim 4, further comprising computing a plurality of random numbers, and wherein increasing the magnitude of each of the first subset of coefficients includes increasing the magnitude of each of said first set of coefficients according to a different one of the random numbers, and wherein decreasing the magnitude of each of the second subset of coefficients includes decreasing the magnitude of each of said second set of coefficients according to a different one of the random numbers.
6. A method for detecting information from a third image, comprising:
accepting a third image;
transforming the third image to form a plurality of transform coefficients which represent said third image;
computing a difference between transform coefficients of a first image and the transform coefficients of the third image; and determining an indicator that the third image is either a modified version of a second image if the indicator is larger than or equal to a pre-set threshold or an un-watermarked image if the indicator is smaller than a pre-set threshold.
accepting a third image;
transforming the third image to form a plurality of transform coefficients which represent said third image;
computing a difference between transform coefficients of a first image and the transform coefficients of the third image; and determining an indicator that the third image is either a modified version of a second image if the indicator is larger than or equal to a pre-set threshold or an un-watermarked image if the indicator is smaller than a pre-set threshold.
7. A method for detecting information embedded in an image comprising:
accepting an image;
transforming the accepted image to form a plurality of transform coefficient which represent the accepted image;
accepting an original image;
transforming the original image to form a plurality of transform coefficients which represent the original image;
computing a difference between the transform coefficients of the original image and the transform coefficients of the accepted image;
determining a plurality of estimates of a watermark sequence, each estimate being determined from a different subset of the computed differences between transform coefficients;
computing a plurality of indicators that the watermark sequence was encoded in the accepted image, each indicator being associated with a different one of the determined estimates of the watermark sequence; and determining an overall indicator that the watermark sequence was encoded in the accepted image from the plurality of indicators.
accepting an image;
transforming the accepted image to form a plurality of transform coefficient which represent the accepted image;
accepting an original image;
transforming the original image to form a plurality of transform coefficients which represent the original image;
computing a difference between the transform coefficients of the original image and the transform coefficients of the accepted image;
determining a plurality of estimates of a watermark sequence, each estimate being determined from a different subset of the computed differences between transform coefficients;
computing a plurality of indicators that the watermark sequence was encoded in the accepted image, each indicator being associated with a different one of the determined estimates of the watermark sequence; and determining an overall indicator that the watermark sequence was encoded in the accepted image from the plurality of indicators.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/377,236 | 1999-08-19 | ||
US09/377,236 US6654479B1 (en) | 1999-08-19 | 1999-08-19 | Cocktail watermarking on images |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2284866A1 CA2284866A1 (en) | 2001-02-19 |
CA2284866C true CA2284866C (en) | 2005-03-29 |
Family
ID=23488297
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002284866A Expired - Fee Related CA2284866C (en) | 1999-08-19 | 1999-10-05 | Cocktail watermarking on images |
Country Status (4)
Country | Link |
---|---|
US (2) | US6654479B1 (en) |
EP (1) | EP1077570A3 (en) |
CA (1) | CA2284866C (en) |
TW (1) | TW451591B (en) |
Families Citing this family (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6636615B1 (en) | 1998-01-20 | 2003-10-21 | Digimarc Corporation | Methods and systems using multiple watermarks |
US6516079B1 (en) | 2000-02-14 | 2003-02-04 | Digimarc Corporation | Digital watermark screening and detecting strategies |
US7724919B2 (en) | 1994-10-21 | 2010-05-25 | Digimarc Corporation | Methods and systems for steganographic processing |
US6590996B1 (en) | 2000-02-14 | 2003-07-08 | Digimarc Corporation | Color adaptive watermarking |
US6744906B2 (en) | 1995-05-08 | 2004-06-01 | Digimarc Corporation | Methods and systems using multiple watermarks |
US6763123B2 (en) | 1995-05-08 | 2004-07-13 | Digimarc Corporation | Detection of out-of-phase low visibility watermarks |
US7224819B2 (en) | 1995-05-08 | 2007-05-29 | Digimarc Corporation | Integrating digital watermarks in multimedia content |
US6721440B2 (en) | 1995-05-08 | 2004-04-13 | Digimarc Corporation | Low visibility watermarks using an out-of-phase color |
US6718046B2 (en) | 1995-05-08 | 2004-04-06 | Digimarc Corporation | Low visibility watermark using time decay fluorescence |
US7006661B2 (en) | 1995-07-27 | 2006-02-28 | Digimarc Corp | Digital watermarking systems and methods |
US20030056103A1 (en) | 2000-12-18 | 2003-03-20 | Levy Kenneth L. | Audio/video commerce application architectural framework |
US7054463B2 (en) | 1998-01-20 | 2006-05-30 | Digimarc Corporation | Data encoding using frail watermarks |
US6986048B1 (en) * | 2000-01-24 | 2006-01-10 | Koninklijke Philips Electronics N.V. | Protecting content from illicit reproduction by proof of existence of a complete data set using security identifiers |
US7127744B2 (en) | 2000-03-10 | 2006-10-24 | Digimarc Corporation | Method and apparatus to protect media existing in an insecure format |
US8091025B2 (en) | 2000-03-24 | 2012-01-03 | Digimarc Corporation | Systems and methods for processing content objects |
US7738673B2 (en) | 2000-04-19 | 2010-06-15 | Digimarc Corporation | Low visible digital watermarks |
US8027509B2 (en) | 2000-04-19 | 2011-09-27 | Digimarc Corporation | Digital watermarking in data representing color channels |
US6804377B2 (en) | 2000-04-19 | 2004-10-12 | Digimarc Corporation | Detecting information hidden out-of-phase in color channels |
JP2003536337A (en) * | 2000-06-23 | 2003-12-02 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | Method and apparatus for embedding a watermark |
US7822969B2 (en) * | 2001-04-16 | 2010-10-26 | Digimarc Corporation | Watermark systems and methods |
US8094869B2 (en) | 2001-07-02 | 2012-01-10 | Digimarc Corporation | Fragile and emerging digital watermarks |
US7213757B2 (en) | 2001-08-31 | 2007-05-08 | Digimarc Corporation | Emerging security features for identification documents |
US20030068068A1 (en) * | 2001-09-28 | 2003-04-10 | Nam-Deuk Kim | Content based digital watermarking using wavelet based directionality measures |
PT1456810E (en) | 2001-12-18 | 2011-07-25 | L 1 Secure Credentialing Inc | Multiple image security features for identification documents and methods of making same |
US7728048B2 (en) | 2002-12-20 | 2010-06-01 | L-1 Secure Credentialing, Inc. | Increasing thermal conductivity of host polymer used with laser engraving methods and compositions |
US7389421B2 (en) * | 2002-04-18 | 2008-06-17 | Microsoft Corporation | Countermeasure against estimation-based attacks of spread-spectrum watermarks |
US7824029B2 (en) | 2002-05-10 | 2010-11-02 | L-1 Secure Credentialing, Inc. | Identification card printer-assembler for over the counter card issuing |
KR100888589B1 (en) * | 2002-06-18 | 2009-03-16 | 삼성전자주식회사 | Method and apparatus for extracting watermark from repeatedly watermarked original information |
GB2390246A (en) * | 2002-06-27 | 2003-12-31 | Univ Bristol | Method of characterising attacks on a watermarked object |
US7702125B2 (en) * | 2003-02-05 | 2010-04-20 | Digimarc Corporation | Watermarking systems and methods |
US7175957B2 (en) * | 2003-03-20 | 2007-02-13 | Ricoh Company, Ltd. | Electrophotographic photoconductor, and image forming process, image forming apparatus and process cartridge for an image forming apparatus using the same |
DE602004030434D1 (en) | 2003-04-16 | 2011-01-20 | L 1 Secure Credentialing Inc | THREE-DIMENSIONAL DATA STORAGE |
WO2005104011A1 (en) * | 2004-03-26 | 2005-11-03 | New Jersey Institute Of Technology | System and method for reversible data hiding based on integer wavelet spread spectrum |
JP2006165643A (en) * | 2004-12-02 | 2006-06-22 | Kddi Corp | Communication system, delay insertion server, backup server, and communication control apparatus |
EP1959388A1 (en) * | 2007-02-05 | 2008-08-20 | Tata Consultancy Services Limited | A system and apparatus for evaluating the reliability of a watermarking technique for a video sequence |
US20090060257A1 (en) * | 2007-08-29 | 2009-03-05 | Korea Advanced Institute Of Science And Technology | Watermarking method resistant to geometric attack in wavelet transform domain |
US9984369B2 (en) * | 2007-12-19 | 2018-05-29 | At&T Intellectual Property I, L.P. | Systems and methods to identify target video content |
US8199969B2 (en) | 2008-12-17 | 2012-06-12 | Digimarc Corporation | Out of phase digital watermarking in two chrominance directions |
US9117268B2 (en) | 2008-12-17 | 2015-08-25 | Digimarc Corporation | Out of phase digital watermarking in two chrominance directions |
US9544516B2 (en) * | 2008-12-26 | 2017-01-10 | Digimarc Corporation | Method and apparatus for sensor characterization |
US8345569B2 (en) * | 2009-11-23 | 2013-01-01 | Dialogic Corporation | Multiple watermarks for fidelity assessment |
US10664940B2 (en) | 2010-03-05 | 2020-05-26 | Digimarc Corporation | Signal encoding to reduce perceptibility of changes over time |
US8971567B2 (en) | 2010-03-05 | 2015-03-03 | Digimarc Corporation | Reducing watermark perceptibility and extending detection distortion tolerances |
US8477990B2 (en) | 2010-03-05 | 2013-07-02 | Digimarc Corporation | Reducing watermark perceptibility and extending detection distortion tolerances |
KR102094510B1 (en) | 2015-08-25 | 2020-03-27 | 삼성전자주식회사 | Method, Appratus and System of Inserting Watermark Data |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5721788A (en) * | 1992-07-31 | 1998-02-24 | Corbis Corporation | Method and system for digital image signatures |
US5748763A (en) * | 1993-11-18 | 1998-05-05 | Digimarc Corporation | Image steganography system featuring perceptually adaptive and globally scalable signal embedding |
EP0766468B1 (en) * | 1995-09-28 | 2006-05-03 | Nec Corporation | Method and system for inserting a spread spectrum watermark into multimedia data |
US5905819A (en) * | 1996-02-05 | 1999-05-18 | Eastman Kodak Company | Method and apparatus for hiding one image or pattern within another |
JP2002511201A (en) * | 1996-09-13 | 2002-04-09 | パーデュー・リサーチ・ファウンデーション | Signal authentication using watermarks |
JPH1132200A (en) * | 1997-07-09 | 1999-02-02 | Matsushita Electric Ind Co Ltd | Watermark data insertion method and watermark data detection method |
US6108434A (en) * | 1997-09-12 | 2000-08-22 | Signafy, Inc. | Counteracting geometric distortions for DCT based watermarking |
JP2003529225A (en) | 1998-01-20 | 2003-09-30 | ディジマーク コーポレイション | Multiple watermark technology |
US6373974B2 (en) * | 1998-03-16 | 2002-04-16 | Sharp Laboratories Of America, Inc. | Method for extracting multiresolution watermark images to determine rightful ownership |
US6041143A (en) * | 1998-04-14 | 2000-03-21 | Teralogic Incorporated | Multiresolution compressed image management system and method |
US6359998B1 (en) * | 1998-04-23 | 2002-03-19 | 3Com Corporation | Method and apparatus for wavelet-based digital watermarking |
US6154571A (en) * | 1998-06-24 | 2000-11-28 | Nec Research Institute, Inc. | Robust digital watermarking |
US5991426A (en) * | 1998-12-18 | 1999-11-23 | Signafy, Inc. | Field-based watermark insertion and detection |
US6385329B1 (en) * | 2000-02-14 | 2002-05-07 | Digimarc Corporation | Wavelet domain watermarks |
-
1999
- 1999-08-19 US US09/377,236 patent/US6654479B1/en not_active Expired - Lifetime
- 1999-10-05 CA CA002284866A patent/CA2284866C/en not_active Expired - Fee Related
- 1999-10-07 TW TW088117278A patent/TW451591B/en active
- 1999-10-08 EP EP99307970A patent/EP1077570A3/en not_active Withdrawn
-
2003
- 2003-06-06 US US10/455,928 patent/US6788801B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US6788801B2 (en) | 2004-09-07 |
EP1077570A2 (en) | 2001-02-21 |
EP1077570A3 (en) | 2003-04-16 |
US6654479B1 (en) | 2003-11-25 |
TW451591B (en) | 2001-08-21 |
US20030198363A1 (en) | 2003-10-23 |
CA2284866A1 (en) | 2001-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2284866C (en) | Cocktail watermarking on images | |
Lin et al. | A robust DCT-based watermarking for copyright protection | |
Bas et al. | Using the fractal code to watermark images | |
Joseph et al. | Robust watermarking based on DWT SVD | |
US7958365B2 (en) | Using classification techniques in digital watermarking | |
US6721438B1 (en) | Image processing apparatus, image processing method, and storage medium | |
US20020191812A1 (en) | Object edge watermarking | |
Hana et al. | A robust multiple watermarking scheme based on the DWT | |
WO2003056515A1 (en) | Digital watermarking | |
Lin et al. | A DCT-based image watermarking with threshold embedding | |
Ma et al. | Color image watermarking using local quaternion Fourier spectral analysis | |
Bae et al. | A study on the robustness of watermark according to frequency band | |
JP2001086316A (en) | Method for adding information to image and detecting information embedded in image | |
Mabtoul et al. | A robust digital image watermarking method using dual tree complex wavelet transform | |
US20040062394A1 (en) | Method and a device for detecting a watermark in digital data | |
Bahrushin et al. | Multi-Layer, Fully Reversible Watermarking Scheme Using Odd-Even Modification of Fourier Magnitude | |
Schlauweg et al. | Self-synchronizing robust texel watermarking in Gaussian scale-space | |
CN117172998A (en) | Watermark image processing method and device, electronic equipment and storage medium | |
Ramashri et al. | Content Based Image Authentication Using DWT and DCT | |
Sharma et al. | Steganalysis of Reversible Digital Watermarking Algorithm Based on LWT and SVD | |
Wang et al. | Adaptive watermarking algorithm of image based on the human visual system | |
Kumari et al. | Color image watermarking using wavelet transform based on HVS channel | |
CN117635411A (en) | Digital watermark processing method based on mixed domain decomposition technology | |
Nasir et al. | Robust multiple watermarking in color images with correlation coefficient detector | |
Dongfeng et al. | A Binary Digital Watermarking Scheme Based On The Orthogonal Vector And ICA-SCS Denoising |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
MKLA | Lapsed |