The disclosure describes methods for adaptive prediction filtering for digital watermarking applications. The predictive filter is designed to predict the digital watermark signal. In one implementation, there are two stages of prediction filtering. A first stage operates on a suspect signal before detecting any watermark in that signal. This stage adapts the predictive filter to local signal characteristics. A second stage uses known watermark signal elements to adapt a non-linear filter used in extracting message symbols from the suspect signal. This stage produces detection statistics based on a comparison of expected and measured message symbol values, and uses these statistics to adapt the parameters of a predictive filter. This adapted prediction filter is then applied to extract message symbol estimates.
|
1. A method of digital watermark detection comprising:
computing signal characteristics of a host digitally watermarked signal;
adapting parameters of digital watermark prediction in the watermarked signal based on the signal characteristics; the adapting of parameters including selecting locations in the host digitally watermarked signal from which the digital watermark is predicted based on the signal characteristics.
6. A method of digital watermark detection comprising:
computing observed values of a variable, unknown watermark signal in a host digitally watermarked signal;
comparing the observed values of the variable, unknown watermark signal with known watermark signal values at corresponding portions of the watermarked signal;
based on comparing the observed with the known values, adapting digital watermark prediction used to extract a message from the unknown watermark signal such that the prediction is adapted according to an extent of the agreement between the observed and known values.
16. A method of digital watermark embedding in a digital watermarking system where a digital watermark is extracted by predicting a digital watermark based on application of a predictive filter to values of signal elements in a digitally watermarked signal, the method comprising:
computing an initial value of a digitally watermarked signal element in a host signal;
adjusting a relationship between the initial value of the digitally watermarked signal element and other elements in the digitally watermarked signal used as input to the predictive filter to extract the digital watermark such that an embedded signal watermark is optimized for extraction by prediction with the prediction filter based on desired embedding constraints; and
repeating the computing and adjusting to optimize embedding of additional data in the watermarked signal.
2. The method of
3. The method of
4. The method of
5. A computer readable, tangible medium on which is stored instructions for performing the method of
7. The method of
8. The method of
9. The method of
10. The method of
11. The method of
12. The method of
13. The method of
14. The method of
15. A computer readable, tangible medium on which is stored instructions for performing the method of
17. The method of
18. The method of
19. The method of
20. A computer readable, tangible medium on which is stored instructions for performing the method of
|
This application claims the benefit of U.S. Provisional Application 60/351,502, filed Jan. 22, 2002, which is hereby incorporated by reference.
The invention relates to digital watermarking.
Digital watermarking is a process for modifying physical or electronic media to embed a hidden machine-readable code into the media. The media may be modified such that the embedded code is imperceptible or nearly imperceptible to the user, yet may be detected through an automated detection process. Most commonly, digital watermarking is applied to media signals such as images, audio signals, and video signals. However, it may also be applied to other types of media objects, including documents (e.g., through line, word or character shifting), software, multi-dimensional graphics models, and surface textures of objects.
Digital watermarking systems typically have two primary components: an encoder that embeds the watermark in a host media signal, and a decoder that detects and reads the embedded watermark from a signal suspected of containing a watermark (a suspect signal). The encoder embeds a watermark by subtly altering the host media signal. The reading component analyzes a suspect signal to detect whether a watermark is present. In applications where the watermark encodes information, the reader extracts this information from the detected watermark.
Several particular watermarking techniques have been developed. The reader is presumed to be familiar with the literature in this field. Particular techniques for embedding and detecting imperceptible watermarks in media signals are detailed in the assignee's co-pending application Ser. No. 09/503,881 (now U.S. Pat. No. 6,614,914) and U.S. Pat. No. 6,122,403, which are herein incorporated by reference.
The disclosure describes methods for adaptive prediction filtering for digital watermarking applications. The predictive filter is designed to predict the digital watermark signal. In one implementation, there are two stages of prediction filtering. A first stage operates on a suspect signal before detecting any watermark in that signal. This stage adapts the predictive filter to local image characteristics. A second stage uses known watermark signal elements to adapt a non-linear filter used in extracting message symbols from the suspect signal. This stage produces detection statistics based on a comparison of expected and measured message symbol values, and uses these statistics to adapt the parameters of a predictive filter. This adapted prediction filter is then applied to extract message symbol estimates.
In one implementation, the first adaptive filter stage selects a filter for use in detecting a watermark and determining geometric synchronization. The second adaptive filter selects a filter (e.g., non-linear filter parameters) for use in extracting values of unknown message symbols from the variable portion of a digital watermark signal. The results produced in analyzing the known watermark signal may be used to refine the adaptive filter used in the geometric synchronization stage. In addition, the results produced in analyzing the known watermark signal may be used to as an indicator of watermark signal reliability to isolate areas of the suspect signal in which to perform watermark synchronization and message signal extraction.
The watermark embedder may be designed for a particular application by training the embedder on a test set of signal content with known watermark signals. Using the known signals, the training program can derive the appropriate non-linear embedding function and corresponding prediction filter. The non-linear embedding function for images, for example, adjusts each pixel relative to its neighbors so as to optimize the chances of accurate message symbol recovery as a function of the corresponding non-linear prediction filter and perceptual quality constraints.
Finally, the above techniques may be used to optimize and detect fragile watermarks to detect host signal alteration and copying.
Further features will become apparent with reference to the following detailed description.
In the context of this document, predictive filtering refers to a signal processing method used in digital watermarking to predict the digital watermark signal in a potentially corrupted version of a watermarked signal. This signal may be an image, audio, or video signal. For the sake of illustration, we use the example of a watermark embedded in an image.
Though the details of digital watermark embedding vary from one method to the next, a large class of digital watermark embedding functions may be represented as a function that adjusts the value of a host signal sample up or down relative to its neighbors to represent a binary one or zero, respectively. The prediction filter analyzes the values of a local neighborhood of samples around a sample to predict whether that sample location represents an embedded one or zero (or other message symbol).
Our adaptive prediction filter uses attributes of the host signal or known watermark to adapt the filter operation to the received signal. Initially, when the watermark detector receives a signal suspected of containing a hidden watermark, it uses attributes of the host signal to select the appropriate prediction filter to make an initial detection of the watermark. The predictive filter operates on small groups of contiguous samples. Since the suspect host signal attributes often change across these sample groups, the predictive filter may also change to adapt to the changing attributes of the host signal.
To make an initial detection, the detector searches for a known portion of the watermark signal. This portion has known characteristics that facilitate detection and calibration of the detector in the received signal to compensate for geometric distortion. (Or temporal distortions for media with a temporal component like audio and video).
Once the detector has made an initial detection of the digital watermark and has geometrically aligned the host signal samples, it adapts the predictive filter for watermark message symbol decoding based on known parts of the watermark signal. These known parts of the watermark signal correspond to sample locations where the change in the sample value relative to its neighbors due to the watermark is known. For example, it may be known that the embedder adjusted the sample up relative to its neighbors or down relative to its neighbors. Knowing the expected adjustment at these locations enables the detector to select the predictive filter that most accurately predicts that adjustment.
In the case of a watermarked image, the known watermark locations are interspersed with variable watermark locations. In particular, the known watermark locations are interleaved with or even overlap areas in the image where a variable watermark signal is embedded. This embedding protocol enables the detector to change the predictive filter adaptively in different areas based on the analysis of the known watermark signal in those areas.
After selecting the appropriate prediction filter for each region in the host signal, the detector proceeds to apply that predictive filter to extract estimates of an unknown, variable message signal. This variable message can be used to carry information unique to the particular signal, such as an identifier or control instruction. Virtually any type of data may be carried in the variable message, limited by the variable message capacity. This capacity is limited by the constraints of the application, including the robustness of the message to survive intentional and un-intentional corruption and the desired perceptual quality of the host signal.
In some applications, the process of the adaptive filter can be performed iteratively as the detector extracts symbols from the variable watermark signal. For example, in one implementation, variable message symbols are error correction encoded along with error detection symbols, such as a Cyclic Redundancy Check (CRC). After decoding the variable message symbols and verifying their accuracy with the error detection bits, the decoded part of the watermark signal now becomes a known watermark signal. The detector can then use this newly discovered known watermark signal to further adapt the predictive filter in the same manner as described above for the known watermark signal.
In many applications, there is no need to go to the extent of adapting the predictive filter on decoded portions of the variable watermark signal. However, this process can be useful in applications where a detailed analysis of the entire watermark signal is used to detect corruption of the host signal. This application of digital watermarking is sometimes referred to as “fragile” or “semi-fragile” watermarking because the watermark is designed to degrade in response to certain types of processing, enabling the watermark to indicate whether that type of processing has occurred. For example, a fragile watermark can be used to detect whether a copy has been made to a document, or whether a music or video file has been compressed.
The predictive filter can be designed so that it is efficiently adapted using the techniques described above. The primary function of the predictive filter is to analyze the relative values of a sample and its surrounding neighbors. In our implementation for watermarked image data, the predictive filter compares the value of a center pixel with each of its eight immediate neighbors. This comparison provides an intermediate output which may be weighted or un-weighted. For example, in some versions of the predictive filter, certain neighboring sample locations may be given no weight, while others may be given greater weight by multiplication of a scale factor. The comparison between the center value and neighbor value may provide a difference value, or simply a sign value indicating whether the neighbor is greater or less than the pixel value at the center. The predictive filter sums the intermediate value for the neighbors to compute a predictor indicating the extent to which the center pixel is greater or less than its neighbors.
One way to implement this filter efficiently is to use a look up table. The look up table receives the result of the compare operations on the center pixel and each of the neighbors, and applies the appropriate combination of them to yield the predictor value. This implementation enables the predictive filter to be adapted efficiently by changing the weighting parameters and method of combining the intermediate values to calculate the predictor value.
The following sections describe an example implementation in more detail.
In the watermark detector, the process begins by partitioning an input image into blocks. Next, the detector analyzes the image signal 100 to extract features from each block (102). Examples include variance, the distribution of neighboring pixel differences, and edge count. Many others are possible.
For each block, the detector chooses an appropriate non-linear filter for the measured local image characteristics (104). The appropriate non-linear filters have been defined by training the watermark system on a set of expected similar image samples.
The training set consists of a set of typical images for a particular application. For example, we might expect that in a typical usage scenario, a watermarked document is placed upon a flatbed scanner for authentication. If we can restrict the variance in the training set to some degree, we expect to be more successful in choosing the appropriate non-linear filter.
For all images in the training set, our training program partitions the images into blocks and extracts relevant image features (e.g., variance, edginess, etc., etc.) from each block. Since the images are training samples, we know a great deal about them including the embedded watermark pattern. By trying possible filter candidates on the training set, our training program finds a non-linear filter that when applied to each image block yields good correlation with the watermark pattern. One way to accomplish this is through trial and error at the watermark synchronization stage. The training program applies each non-linear filter and executes the watermark synchronization process, which entails performing correlation between the known watermark pattern and the filtered image blocks of images in the training set. The better the correlation value, the better the filter. Another way to perform this training process is during the read stage, assuming that the detector is able to achieve synchronization. The next section describes that procedure. We point out that a combination of the two approaches may be used.
Next, the training process generalizes the non-linear filters found in the previous step. By matching image characteristics to the choice of non-linear filters, the training process derives a general mapping between image characteristics and non-linear filters, and stores these mappings in the watermark detector.
In one example application, we tried two types of multi-axis non-linear filters. In each case, the axes refer to the direction between a center pixel of interest and one of the neighbors. One type of filter returns as an intermediate result, the difference between the average of the vertical neighbors (top and bottom axes) and the center pixel, and the difference between the average of the horizontal neighbors (left and right axes) and the center pixel. If the sign of the two intermediate results agree, the output of the filter provides an estimate of the pixel value, namely either an upward or downward adjustment. If the sign does not agree, the output of the filter provides no estimate. This filter may be altered by analyzing different axes, including diagonal axes, and weighting the contribution of each axes. A second type of filter compares the center pixel with each of its neighbors to produce intermediate results. It then weights and sums these intermediate results to provide an estimate of the pixel value.
We have observed that the first type of provides better detection in high variance images, while the second type provides better detection in less variance images.
This first stage of adaptive filtering provides a synchronized suspect image (106). For more details on a synchronization process see U.S. Pat. No. 6,122,403 and U.S. application Ser. No. 09/503,881 (now U.S. Pat. No. 6.614.914), incorporated above.
After the synchronization stage, the detector has identified the known watermark signal. The variable watermark, which includes a multi-bit watermark payload and error correction bits per block, is still unknown.
After correcting for affine distortion of the block with the synchronization parameters (rotation, scale, translation, differential scale, etc.), the detector has transformed the suspect image so that it is in the watermark coordinate system, meaning that it is aligned with the original watermarked image.
The detector includes bins based upon the absolute value of pixel differences. In an eight-bit single channel image, for example, the minimum absolute value difference is 0 and the maximum is 255. One bin, for example, collects pixel differences between 10 and 15. The following table provides an example of the bin structure.
Bin Number
Absolute Difference
1
|d| <= 2
2
2 < |d| <= 4
3
4 < |d| <= 6
4
6 < |d| <= 8
5
8 < |d| <= 10
6
10 < |d| <= 12
7
12 < |d| <= 14
8
14 < |d| <= 16
9
16 < |d| <= 20
10
|d| > 20
The detector divides the image into blocks. For each block and each pixel in the block, the detector performs the following operations:
1. Compute the difference between the center pixel and its left-hand neighbor. In accordance with the absolute value of this difference, find the appropriate bin (108).
2. Extract the polarity of the just calculated difference. If the polarity of the difference agrees with the polarity of the known watermark at that location, add 1 to the bin's agreement buffer. If it disagrees add a −1 to the same buffer. In either case add 1 to the bin's count buffer (110).
3. Repeat steps 1 and 2 for the other 7 surrounding pixels. In some cases it may be a good idea to treat the diagonal neighbors and the cross-wise neighbors separately.
For each block and each bin, the detector divides the bin's agreement buffer value by its count buffer value to get the bin correlation value.
In practice, there are cases where bins do not receive enough counts to be statistically reliable. Such bins are consolidated with neighboring bins and statistics are calculated using the conglomerate.
The detector includes a look-up table version of a filter that has an output for every possible pixel difference in an image of appropriate resolution.
1. For example, in an 8-bit image the table would have output values for every pixel difference between −255 and +255.
2. Recall that each bin is associated with a range of pixel differences. For the range of positive pixel differences that correspond to a particular bin, the detector assigns filter output values proportionate to the bin's measured correlation. The detector assigns the opposite value to the corresponding mirrored negative range of the filter (112).
Finally, the detector loops back through the block and applies the adapted filter to each pixel difference to extract the unknown portion of the watermark (114). The detector repeats this process for all of the blocks.
In this case, the procedure as a whole can be called matched filtering according to recovery statistics. It is as if each bin has a different watermark signal power, and the detector is matching its prediction filter to the associated signal power in each bin.
The same principle can be applied to other filter types. For example, instead of looking at neighboring pixel differences, we can consider the distribution of differences between the center pixel and various averages of its neighbors.
Although we have treated the pixel differences as independent entities, it is not necessary and may be sub-optimal to do so in some cases. The other pixel differences in the neighborhood may also be taken into account when deciding the contribution from each axis. Bayesian statistical updates can be made to the detector filter over time.
It is important to note that the watermark message reading procedure can be implemented efficiently in conjunction with the adaptive prediction filter. Since the prediction filter has computed the relative pixel values of each pixel and its neighbors, there is no need to loop back through the data once the filter has been defined.
One way to perform the binning is to create another look-up-table that runs between 0 and 255. A consecutive range of entries in the look up table indexes the appropriate bin.
This version of the detector also uses this look up table to index a discrete set of signatures, one per bin. (We note that the term “signature” in a first implementation represents a map or collection of data. In another implementation, a signature represents a demodulation of watermark chips into error correction encoded raw message symbols.).
When a difference is calculated it is assigned to the appropriate signature, and the right bit within it is incremented or decremented. When the detector is done calculating statistics on the current block, it combines the signatures, weighting them proportionately to the corresponding bin's measured correlation.
Fragile Watermark Applications
The statistics generated by analyzing expected and observed watermark signal can be used to authenticate a document.
Using the above method, the statistics indicating the differences between the expected and observed message bits can be extended to all of the message bits in the watermark, including both the known and variable message portions of the watermark message payload.
In some cases the filters derived above will be different for authentic documents than for counterfeit documents. Training sets of originals and counterfeit documents may be used to provide a characterization of what the bin correlation statistics are for the originals and certain types of counterfeits a priori. These characterizations are then built into the detector, which classifies a document as an original or counterfeit based on the observed statistics of the differences between the known and observed watermark signal.
By applying a filter based upon the a priori bin correlation statistics of the original, the detector can maximize the correlation strength, and hence detection metric, of original documents relative to counterfeit documents. This works particularly well if the watermark signal is almost always stronger in originals than in counterfeits.
Another possibility is to store the a priori bin correlation statistics of both originals and copies. When a candidate sample is to be authenticated, the detector calculates the bin statistics as described above. The document is more likely to be an original if its statistics more closely resemble those of the class of originals than any of the classes of copies. For cases where we do not know the counterfeit statistics, the detector is preferably programmed to check whether the document's measured statistics are close enough to the set of originals.
The above authentication method works particularly well in applications where the set of possible originals is relatively small, there are several likely counterfeiting methods, the originals and each type of counterfeit have their own characteristic bin correlation statistics.
Using the authentication method, it is possible, given an unknown document, to determine with relatively high probability whether the document is an original or a counterfeit (and in addition the type of counterfeit). This method extends to other signal types like video, audio and digital photographs, and can be used to detect alterations due to malicious attack (e.g., cropping, swapping, averaging, etc.) as well due to channel processing (compression, digital to analog, and analog to digital conversion).
Watermark Embedder Enhancements
A similar analysis of a known watermark signal can be used at the embedder to optimize the watermark for certain applications. For example, the embedder can modify the natural watermark bin correlation statistics of the host signal at the embedder to create a semi-fragile watermark in that host signal. In particular, the watermark signal is tuned to have properties that are likely to change in response to a particular type of alteration (e.g., a scan and print operation, compression, etc.).
By creating an unnatural, peaky distribution of the watermark statistics at the embedder, we expect that the distribution will spread in an amount commensurate with the number of reproductions of the digital image. The detector is designed to detect this spreading by measuring the distribution of the expected vs. observed watermark signal differences (as. for example. shown in block 138 of
Below, we describe a possible implementation with an accompanying illustration in
1. Begin with a pre-watermarked image and make modifications to that image (130).
2. Modify on a sparse array so that we do not have inter-symbol interference, and so that we do not distort the robust portion of the mark (e.g., the robust portion may be a separate signal component to carry a robust payload, such as a content identifier and/or index to a database) (132).
3. Define an illegal interval for pixel differences, something like 0-L (134).
4. For all cases where the pixel change due to the watermark signal is in agreement with the observed pixel difference and that pixel difference is within the illegal interval, adjust the center pixel so that its new difference is outside the illegal interval (greater than L or less than 0.) (136).
5. The correlation will now be negative within the illegal interval and more positive outside of it.
Some refinements include:
Another watermarking embedding enhancement is to use the parameters of the adaptive prediction filters in the detector to optimize the watermark signal in the embedder to improve detection for a given amount of perceptual degradation and watermark capacity as shown in
The embedder can adapt the host signal watermark for optimal detection for a particular non-linear predictive filter or class of filters, such as the look up table implementation described above. Further, the watermark payload can be encoded with an index that indicates the optimal type of prediction filter to use in analyzing suspect signals. This approach may be applied for fragile watermarking schemes where the watermark payload carrying the filter information is robustly embedded and then extracted in suspect signals to adapt the detector to the optimal filter.
The use of adaptive prediction filtering may be used in a number of digital watermarking protocols to improve detection of digital watermark layers that carry different information or perform different functions. One such protocol is where the digital watermark is comprised of two or more layers of digital watermarks, each carrying different information. One example is provided above, where the known watermark detected in the initial detection and synchronization stage is a first layer and the unknown, variable-message carrying watermark is a second layer. Another example provided above is the use of a robust watermark (e.g., to carry a robust payload such as a content identifier and/or index to a database) and a second, semi-fragile watermark in a sparse array.
An additional example is a protocol with a first watermark layer that employs a fixed protocol and carries a variable message indicating the protocol of a second watermark layer. This protocol enables the protocol of the second layer to be extensible with different coding formats (error correction and/or repetition coding), payload length and payload symbol mapping to host signal elements. Another example is a protocol with a first watermark layer that includes a variable payload per content item, but is repeated in blocks or tiles across each content item, such as an image, frame or audio clip. The second or subsequent layer carries a payload that varies from block to block to provide a block identifier within a particular content item, such as an image, frame or audio clip. An advantage of this approach is that it enables individual blocks to be uniquely identified in cases where the content is cropped, spatially scaled, or geometrically/temporally distorted in some other way after embedding the digital watermark. In particular, in images of geographic information, each block within an image may be associated with unique coordinates referenced in the variable block watermark payload, such as unique geographic coordinates. In large medical images, each block within the image may have a unique block identifier or set of coordinates that identifies that block within a much larger image. As these images are manipulated and saved in derivatives, the digital watermark detector is able to identify where individual blocks came from within the original larger image.
Another enhancement based on adaptive detection is to iterate watermark message decoding over two or more iterations, each time using message symbol reliability statistics to refine the message decoding from the previous iteration. As an example, consider a protocol where the accuracy of portions of the message is evaluated with error detection checking (e.g., using a sub-portion of the message bits in a particular portion to do error checking, such as with a CRC check). With each iteration, the detector evaluates the reliability of the portions of the watermark, such as using error detection or checking whether certain fixed, false positive message bits agree with expected values. If certain portions are detected unreliably (e.g., they fail error detection), then the message data decoded reliably is used in a subsequent iteration along with the data decode unreliably to decode the digital watermark message. In the subsequent iteration or iterations, the reliably decoded data is weighted more heavily in the process of adapting the prediction filters used to extract the embedded message symbols. This approach improves detection in cases where digital watermark message data has been corrupted due to distortions of the host signal after embedding.
In the subsequent iteration or iterations, the reliably decoded data is used as the primary source in terms of updating the adaptive filter. However, there may not be enough of this data relative to the total amount of variable data in order to get an accurate statistical characterization of what the filter should be. A secondary source for updating the adaptive filter consists of our best estimate for the remaining payload bits. Although some of these bits will be in error as indicated by the error detection process, the majority of the bits should be error free. The secondary source of bits is used in conjunction with the primary, but with a smaller weighting factor due to the fact that the source is less reliable. This iterative method is particularly useful when either no synchronization signal is used, or when the per element statistics of the synchronization signal are sufficiently different than the statistics of the variable data.
Concluding Remarks
Having described and illustrated the principles of the technology with reference to specific implementations, it will be recognized that the technology can be implemented in many other, different, forms. To provide a comprehensive disclosure without unduly lengthening the specification, applicants incorporate by reference the patents and patent applications referenced above.
The methods, processes, and systems described above may be implemented in hardware, software or a combination of hardware and software. For example, the auxiliary data encoding processes may be implemented in a programmable computer or a special purpose digital circuit. Similarly, auxiliary data decoding may be implemented in software, firmware, hardware, or combinations of software, firmware and hardware. The methods and processes described above may be implemented in programs executed from a system's memory (a computer readable medium, such as an electronic, optical or magnetic storage device).
The particular combinations of elements and features in the above-detailed embodiments are exemplary only; the interchanging and substitution of these teachings with other teachings in this and the incorporated-by-reference patents/applications are also contemplated.
Patent | Priority | Assignee | Title |
10007964, | May 20 2015 | Digimarc Corporation | Image processing methods and arrangements |
10198782, | Sep 15 2016 | Digimarc Corporation | Detecting conflicts between multiple different encoded signals within imagery |
10217182, | Oct 29 2015 | Digimarc Corporation | Construction of signal maps for images with encoded signals |
10242434, | May 05 2016 | Digimarc Corporation | Compensating for geometric distortion of images in constrained processing environments |
10275847, | Oct 29 2015 | Digimarc Corporation | Detecting conflicts between multiple different signals within imagery |
10303988, | Aug 14 2015 | Digimarc Corporation | Visual search methods and systems |
10373299, | May 05 2016 | Digimarc Corporation | Compensating for geometric distortion of images in constrained processing environments |
10552933, | May 20 2015 | Digimarc Corporation | Image processing methods and arrangements useful in automated store shelf inspections |
10565415, | Feb 23 2016 | Digimarc Corporation | Scanner with control logic for resolving package labeling conflicts |
10748231, | Oct 29 2015 | Digimarc Corporation | Detecting conflicts between multiple different signals within imagery |
10783618, | May 05 2016 | Digimarc Corporation | Compensating for geometric distortion of images in constrained processing environments |
10789438, | Feb 08 2019 | Digimarc Corporation | Detecting conflicts between multiple different encoded signals within imagery, using only a subset of available image data |
10872392, | Nov 07 2017 | Digimarc Corporation | Generating artistic designs encoded with robust, machine-readable data |
10880451, | Jun 08 2018 | Digimarc Corporation | Aggregating detectability metrics to determine signal robustness |
10896307, | Nov 07 2017 | Digimarc Corporation | Generating and reading optical codes with variable density to adapt for visual quality and reliability |
10929943, | Sep 15 2016 | Digimarc Corporation | Detecting conflicts between multiple different encoded signals within imagery |
10958807, | Feb 08 2018 | Digimarc Corporation | Methods and arrangements for configuring retail scanning systems |
10972628, | Oct 13 2014 | Digimarc Corporation | Methods for estimating watermark signal strength, an embedding process using the same, and related arrangements |
11036949, | Feb 23 2016 | Digimarc Corporation | Scanner with control logic for resolving package labeling conflicts |
11062108, | Nov 07 2017 | Digimarc Corporation | Generating and reading optical codes with variable density to adapt for visual quality and reliability |
11113781, | Jul 01 2016 | Digimarc Corporation | Image-based pose determination |
11127105, | Jul 16 2015 | Digimarc Corporation | Signal processors and methods for estimating geometric transformations of images for digital data extraction |
11188997, | Oct 29 2015 | Digimarc Corporation | Detecting conflicts between multiple different signals within imagery |
11250226, | Feb 08 2019 | Digimarc Corporation | Detecting conflicts between multiple different encoded signals within imagery, using only a subset of available image data |
11250534, | Oct 29 2015 | Digimarc Corporation | Determining detectability measures for images with encoded signals |
11250535, | Feb 08 2019 | Digimarc Corporation | Detecting conflicts between multiple different encoded signals within imagery, using only a subset of available image data, and robustness checks |
11348209, | May 05 2016 | Digimarc Corporation | Compensating for geometric distortion of images in constrained processing environments |
11386281, | Jul 16 2009 | Digimarc Corporation | Coordinated illumination and image signal capture for enhanced signal detection |
11410263, | May 25 2020 | Digimarc Corporation | Methods and arrangements for enhanced digital signal detection |
11449698, | Feb 23 2016 | Digimarc Corporation | Scanner with control logic for resolving package labeling conflicts |
11587195, | May 20 2015 | Digimarc Corporation | Image processing methods and arrangements useful in automated store shelf inspections |
11676238, | Oct 29 2015 | Digimarc Corporation | Detecting conflicts between multiple different signals within imagery |
11763413, | May 25 2020 | Digimarc Corporation | Methods and arrangements for enhanced digital signal detection |
11831833, | Feb 08 2018 | Digimarc Corporation | Methods and arrangements for triggering detection, image correction or fingerprinting |
7369677, | Apr 26 2005 | IP ACQUISITIONS, LLC | System reactions to the detection of embedded watermarks in a digital host content |
7616776, | Apr 26 2005 | IP ACQUISITIONS, LLC | Methods and apparatus for enhancing the robustness of watermark extraction from digital host content |
7688996, | Jan 22 2002 | DIGIMARC CORPORATION AN OREGON CORPORATION | Adaptive prediction filtering for digital watermarking |
7720253, | Sep 14 2006 | Microsoft Technology Licensing, LLC | Visual perception model for hi-fidelity image watermarking |
7788684, | Oct 15 2002 | IP ACQUISITIONS, LLC | Media monitoring, management and information system |
7945781, | Nov 18 1993 | DIGIMARC CORPORATION AN OREGON CORPORATION | Method and systems for inserting watermarks in digital signals |
7992003, | Nov 18 1993 | DIGIMARC CORPORATION AN OREGON CORPORATION | Methods and systems for inserting watermarks in digital signals |
8005258, | Apr 26 2005 | IP ACQUISITIONS, LLC | Methods and apparatus for enhancing the robustness of watermark extraction from digital host content |
8051295, | Apr 20 2001 | DIGIMARC CORPORATION AN OREGON CORPORATION | Benchmarks for digital watermarking |
8103049, | Apr 26 2005 | Verance Corporation | System reactions to the detection of embedded watermarks in a digital host content |
8140848, | Jul 01 2004 | DIGIMARC CORPORATION AN OREGON CORPORATION | Digital watermark key generation |
8184851, | Nov 18 1993 | Digimarc Corporation | Inserting watermarks into portions of digital signals |
8259938, | Jun 24 2008 | VOBILE INC | Efficient and secure forensic marking in compressed |
8280103, | Apr 26 2005 | Verance Corporation | System reactions to the detection of embedded watermarks in a digital host content |
8301893, | Aug 13 2003 | DIGIMARC CORPORATION AN OREGON CORPORATION | Detecting media areas likely of hosting watermarks |
8315427, | Jan 22 2002 | Digimarc Corporation | Adaptive prediction filtering for encoding/decoding digital signals in media content |
8335744, | Sep 26 2008 | Pitney Bowes Inc | System and method for paper independent copy detection pattern |
8340348, | Apr 26 2005 | Verance Corporation | Methods and apparatus for thwarting watermark detection circumvention |
8346567, | Jun 24 2008 | Verance Corporation | Efficient and secure forensic marking in compressed domain |
8391545, | Apr 16 1998 | Digimarc Corporation | Signal processing of audio and video data, including assessment of embedded data |
8451086, | Feb 16 2000 | Verance Corporation | Remote control signaling using audio watermarks |
8483426, | May 07 1996 | Digimarc Corporation | Digital watermarks |
8533481, | Nov 03 2011 | IP ACQUISITIONS, LLC | Extraction of embedded watermarks from a host content based on extrapolation techniques |
8538066, | Apr 26 2005 | Verance Corporation | Asymmetric watermark embedding/extraction |
8549307, | Jul 01 2005 | Verance Corporation | Forensic marking using a common customization function |
8600053, | Jul 01 2004 | Digimarc Corporation | Message key generation |
8600103, | Jul 01 2004 | Digimarc Corporation | Message encoding |
8615104, | Nov 03 2011 | Verance Corporation | Watermark extraction based on tentative watermarks |
8681978, | Jun 24 2008 | VOBILE INC | Efficient and secure forensic marking in compressed domain |
8682026, | Nov 03 2011 | Verance Corporation | Efficient extraction of embedded watermarks in the presence of host content distortions |
8726304, | Sep 13 2012 | Verance Corporation | Time varying evaluation of multimedia content |
8745403, | Nov 23 2011 | Verance Corporation | Enhanced content management based on watermark extraction records |
8745404, | May 28 1998 | Verance Corporation | Pre-processed information embedding system |
8761391, | Jul 01 2004 | Digimarc Corporation | Digital watermark key generation |
8781967, | Jul 07 2005 | Verance Corporation | Watermarking in an encrypted domain |
8791789, | Feb 16 2000 | Verance Corporation | Remote control signaling using audio watermarks |
8806517, | Oct 15 2002 | IP ACQUISITIONS, LLC | Media monitoring, management and information system |
8811655, | Apr 26 2005 | Verance Corporation | Circumvention of watermark analysis in a host content |
8838977, | Sep 16 2010 | Verance Corporation | Watermark extraction and content screening in a networked environment |
8838978, | Sep 16 2010 | Verance Corporation | Content access management using extracted watermark information |
8862582, | Nov 15 2007 | AT&T Intellectual Property I, L.P. | System and method of organizing images |
8869222, | Sep 13 2012 | Verance Corporation | Second screen content |
8923548, | Nov 03 2011 | Verance Corporation | Extraction of embedded watermarks from a host content using a plurality of tentative watermarks |
9009482, | Jul 01 2005 | VOBILE INC | Forensic marking using a common customization function |
9055239, | Oct 08 2003 | IP ACQUISITIONS, LLC | Signal continuity assessment using embedded watermarks |
9106964, | Sep 13 2012 | Verance Corporation | Enhanced content distribution using advertisements |
9117270, | May 28 1998 | Verance Corporation | Pre-processed information embedding system |
9153006, | Apr 26 2005 | Verance Corporation | Circumvention of watermark analysis in a host content |
9189955, | Feb 16 2000 | Verance Corporation | Remote control signaling using audio watermarks |
9208334, | Oct 25 2013 | Verance Corporation | Content management using multiple abstraction layers |
9251322, | Oct 08 2003 | IP ACQUISITIONS, LLC | Signal continuity assessment using embedded watermarks |
9251549, | Jul 23 2013 | Verance Corporation | Watermark extractor enhancements based on payload ranking |
9262794, | Mar 14 2013 | VOBILE INC | Transactional video marking system |
9323902, | Dec 13 2011 | Verance Corporation | Conditional access using embedded watermarks |
9460505, | Aug 22 2013 | Digimarc Corporation | Detection of weak specks from imagery |
9544516, | Dec 26 2008 | DIGIMARC CORPORATION AN OREGON CORPORATION | Method and apparatus for sensor characterization |
9547753, | Dec 13 2011 | IP ACQUISITIONS, LLC | Coordinated watermarking |
9558526, | Oct 08 2003 | IP ACQUISITIONS, LLC | Signal continuity assessment using embedded watermarks |
9559839, | Jul 01 2004 | Digimarc Corporation | Message key generation |
9571606, | Aug 31 2012 | Verance Corporation | Social media viewing system |
9596521, | Mar 13 2014 | Verance Corporation | Interactive content acquisition using embedded codes |
9607131, | Sep 16 2010 | Verance Corporation | Secure and efficient content screening in a networked environment |
9648282, | Oct 15 2002 | IP ACQUISITIONS, LLC | Media monitoring, management and information system |
9704211, | Oct 08 2003 | IP ACQUISITIONS, LLC | Signal continuity assessment using embedded watermarks |
9716807, | Oct 13 2014 | Digimarc Corporation | Methods for estimating watermark signal strength, an embedding process using the same, and related arrangements |
9959587, | Jul 16 2015 | Digimarc Corporation | Signal processors and methods for estimating geometric transformations of images for digital data extraction |
9990688, | Oct 08 2003 | IP ACQUISITIONS, LLC | Signal continuity assessment using embedded watermarks |
Patent | Priority | Assignee | Title |
4237484, | Aug 08 1979 | Bell Telephone Laboratories, Incorporated | Technique for transmitting digital data together with a video signal |
4313197, | Apr 09 1980 | Bell Telephone Laboratories, Incorporated | Spread spectrum arrangement for (de)multiplexing speech signals and nonspeech signals |
4855697, | Jun 27 1988 | Cascade Microtech, Inc. | Coaxial transmission line to microstrip transmission line launcher |
4907156, | Jun 30 1987 | University of Chicago | Method and system for enhancement and detection of abnormal anatomic regions in a digital image |
4972471, | May 15 1989 | Encoding system | |
5101432, | Mar 17 1986 | TELEHUBLINK CORPORATION | Signal encryption |
5175710, | Dec 14 1990 | Multi-dimensional data processing and display | |
5319735, | Dec 17 1991 | Raytheon BBN Technologies Corp | Embedded signalling |
5659726, | Feb 23 1995 | Regents of the University of California, The | Data embedding |
5699079, | Nov 21 1995 | RPX Corporation | Restoration filter for truncated pixels |
5768426, | Nov 18 1993 | DIGIMARC CORPORATION AN OREGON CORPORATION | Graphics processing system employing embedded code signals |
5825892, | Oct 28 1996 | RPX Corporation | Protecting images with an image watermark |
5832119, | Nov 18 1993 | DIGIMARC CORPORATION AN OREGON CORPORATION | Methods for controlling systems using control signals embedded in empirical data |
5841886, | Nov 18 1993 | DIGIMARC CORPORATION AN OREGON CORPORATION | Security system for photographic identification |
5841978, | Mar 17 1994 | DIGIMARC CORPORATION AN OREGON CORPORATION | Network linking method using steganographically embedded data objects |
5848155, | Sep 04 1996 | NEC Corporation | Spread spectrum watermark for embedded signalling |
5850481, | Mar 17 1994 | DIGIMARC CORPORATION AN OREGON CORPORATION | Steganographic system |
5859920, | Nov 30 1995 | Intellectual Ventures Fund 83 LLC | Method for embedding digital information in an image |
5862260, | Nov 18 1993 | DIGIMARC CORPORATION AN OREGON CORPORATION | Methods for surveying dissemination of proprietary empirical data |
5889868, | Jul 02 1996 | Wistaria Trading Ltd | Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data |
5933798, | Jul 16 1996 | CIVOLUTION B V | Detecting a watermark embedded in an information signal |
6031914, | Aug 30 1996 | DIGIMARC CORPORATION AN OREGON CORPORATION | Method and apparatus for embedding data, including watermarks, in human perceptible images |
6122403, | Jul 27 1995 | DIGIMARC CORPORATION AN OREGON CORPORATION | Computer system linked by using information in data objects |
6154571, | Jun 24 1998 | NEC Corporation | Robust digital watermarking |
6157330, | Jan 27 1997 | U S PHILIPS CORPORATION | Embedding supplemental data in an encoded signal, such as audio / video watermarks |
6233684, | Feb 28 1997 | CONTENTGUARD HOLDINGS, INC | System for controlling the distribution and use of rendered digital works through watermaking |
6243480, | Apr 30 1998 | Thomson Licensing | Digital authentication with analog documents |
6259801, | Jan 21 1999 | NEC PERSONAL COMPUTERS, LTD | Method for inserting and detecting electronic watermark data into a digital image and a device for the same |
6272176, | Jul 16 1998 | NIELSEN COMPANY US , LLC, THE | Broadcast encoding system and method |
6310962, | Aug 20 1997 | Samsung Electronics Co., Ltd.; SAMSUNG ELECTRONICS CO , LTD | MPEG2 moving picture encoding/decoding system |
6330673, | Oct 14 1998 | Microsoft Technology Licensing, LLC | Determination of a best offset to detect an embedded pattern |
6341350, | Sep 02 1997 | Sony Corporation | Device and method for processing image data, transmitting medium, and recording medium |
6345100, | Oct 14 1998 | Microsoft Technology Licensing, LLC | Robust watermark method and apparatus for digital signals |
6359985, | Jun 16 1995 | MediaSec Technologies GmbH | Procedure for marking binary coded data sets |
6424725, | May 16 1996 | DIGIMARC CORPORATION AN OREGON CORPORATION | Determining transformations of media signals with embedded code signals |
6442284, | Mar 19 1999 | DIGIMARC CORPORATION AN OREGON CORPORATION | Watermark detection utilizing regions with higher probability of success |
6516079, | Feb 14 2000 | DIGIMARC CORPORATION AN OREGON CORPORATION | Digital watermark screening and detecting strategies |
6535617, | Feb 14 2000 | DIGIMARC CORPORATION AN OREGON CORPORATION | Removal of fixed pattern noise and other fixed patterns from media signals |
6557103, | Apr 13 1998 | The United States of America as represented by the Secretary of the Army | Spread spectrum image steganography |
6563936, | Sep 07 2000 | Transpacific Information, LLC | Spatio-temporal channel for images employing a watermark and its complement |
6614914, | May 16 1996 | DIGIMARC CORPORATION AN OREGON CORPORATION | Watermark embedder and reader |
6681027, | Jul 12 2002 | Zylux Acoustic Corp. | Magnetic core for speaker |
6681029, | Nov 18 1993 | DIGIMARC CORPORATION AN OREGON CORPORATION | Decoding steganographic messages embedded in media signals |
6757405, | Nov 30 1998 | Kabushiki Kaisha Toshiba | Digital watermark embedding device, digital watermark detection device and recording medium recording computer readable program for realizing functions of two devices |
6760463, | May 08 1995 | DIGIMARC CORPORATION AN OREGON CORPORATION | Watermarking methods and media |
6763121, | Jun 14 2000 | HEWLETT-PACKARD DEVELOPMENT COMPANY L P | Halftone watermarking method and system |
6782116, | Nov 04 2002 | Thomson Licensing | Apparatus and methods for improving detection of watermarks in content that has undergone a lossy transformation |
6952774, | May 22 1999 | Microsoft Technology Licensing, LLC | Audio watermarking with dual watermarks |
6988202, | May 08 1995 | DIGIMARC CORPORATION AN OREGON CORPORATION | Pre-filteriing to increase watermark signal-to-noise ratio |
7013023, | Jan 18 2001 | Canon Kabushiki Kaisha | Method and device for sending and receiving digital images using an image watermark for decoding |
7076082, | Mar 22 2001 | DIGIMARC CORPORATION AN OREGON CORPORATION | Media signal filtering for use in digital watermark reading |
20010032313, | |||
20020029338, | |||
20020054355, | |||
20020057823, | |||
20020078359, | |||
20020087863, | |||
20020090110, | |||
20020126870, | |||
20020157005, | |||
20030072467, | |||
20030091213, | |||
20030219144, | |||
20040030899, | |||
20040101160, | |||
EP855829, | |||
WO139121, | |||
WO213138, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Jan 21 2003 | Digimarc Corporation | (assignment on the face of the patent) | / | |||
Apr 28 2003 | BRADLEY, BRETT A | Digimarc Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 014069 | /0383 | |
Aug 01 2008 | DIGIMARC CORPORATION A DELAWARE CORPORATION | DMRC LLC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 025217 | /0508 | |
Aug 01 2008 | DMRC LLC | DMRC CORPORATION | MERGER SEE DOCUMENT FOR DETAILS | 025227 | /0808 | |
Sep 03 2008 | DMRC CORPORATION | Digimarc Corporation | MERGER SEE DOCUMENT FOR DETAILS | 025227 | /0832 | |
Oct 24 2008 | L-1 SECURE CREDENTIALING, INC FORMERLY KNOWN AS DIGIMARC CORPORATION | DIGIMARC CORPORATION FORMERLY DMRC CORPORATION | CONFIRMATION OF TRANSFER OF UNITED STATES PATENT RIGHTS | 021785 | /0796 | |
Apr 30 2010 | DIGIMARC CORPORATION A DELAWARE CORPORATION | DIGIMARC CORPORATION AN OREGON CORPORATION | MERGER SEE DOCUMENT FOR DETAILS | 024369 | /0582 |
Date | Maintenance Fee Events |
Nov 22 2010 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Dec 20 2010 | ASPN: Payor Number Assigned. |
Nov 24 2014 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
Nov 15 2018 | M1553: Payment of Maintenance Fee, 12th Year, Large Entity. |
Date | Maintenance Schedule |
Jun 12 2010 | 4 years fee payment window open |
Dec 12 2010 | 6 months grace period start (w surcharge) |
Jun 12 2011 | patent expiry (for year 4) |
Jun 12 2013 | 2 years to revive unintentionally abandoned end. (for year 4) |
Jun 12 2014 | 8 years fee payment window open |
Dec 12 2014 | 6 months grace period start (w surcharge) |
Jun 12 2015 | patent expiry (for year 8) |
Jun 12 2017 | 2 years to revive unintentionally abandoned end. (for year 8) |
Jun 12 2018 | 12 years fee payment window open |
Dec 12 2018 | 6 months grace period start (w surcharge) |
Jun 12 2019 | patent expiry (for year 12) |
Jun 12 2021 | 2 years to revive unintentionally abandoned end. (for year 12) |