IP Library Granted Patent US 9,191,206
Granted Patent B2
US 9,191,206 · App. 14/258,171 · Granted Nov 17, 2015

Multiple transform utilization and application for secure digital watermarking

Inventor: Scott A. Moskowitz (Ft. Lauderdale, FL)
Assignee: Wistaria Trading Ltd
H04L9/14G06T1/005G06T1/0028G06T1/0057G06T1/0064H04L9/0819H04N1/3216H04N1/32187H04N1/32309G06T2201/0051G06T2201/0052G06T2201/0053G06T2201/0061G06T2201/0063G06T2201/0065G06T2201/0083H04L2209/04H04L2209/043H04L2209/046H04N2201/324H04N2201/3233
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,191,206
App. No.
14/258,171
Granted
Nov 17, 2015
Kind
B2
Abstract

Multiple transform utilization and applications for secure digital watermarking. In one embodiment of the present invention, digital blocks in digital information to be protected are transformed into the frequency domain using a fast Fourier transform. A plurality of frequencies and associated amplitudes are identified for each of the transformed digital blocks and a subset of the identified amplitudes is selected for each of the digital blocks using a primary mask from a key. Message information is selected from a message using a transformation table generated with a convolution mask. The chosen message information is encoded into each of the transformed digital blocks by altering the selected amplitudes based on the selected message information.

Claims (52)

1. A method of encoding content with message information, comprising:

receiving, in an encoder, data defining content;

said encoder, using a processor and applying a transform function, that transforms from a time or space domain to a temporal or a spatial frequency domain, to a first contiguous subset of said content in the time or space domain, which results in a first transform having first transform values in the frequency domain, and first transform amplitudes associated with said first transform values;

said encoder selecting, based upon said first transform amplitudes, a first transform values first subset of said first transform values;

said encoder using a primary mask and said first transform values first subset to select a first transform values second subset of said first transform values, wherein said first transform values second subset is a subset of said first transform values first subset; and

said encoder manipulating, depending upon the value of a first bit of said message information, the first transform amplitude associated with said first transform values second subset;

wherein said encoder comprises a processor and memory for storing data in non transient form, said memory storing said primary mask and said message information, and at least one transform function, and said encoder using said processor in said applying and said manipulating;

wherein said content is one of audio, still image, video, and multimedia;

wherein said first bit of said message information has either a first logical value or a second logical value; and

wherein said manipulating changes the first transform amplitudes associated with said first transform values second subset if said first bit of said message information has said first logical value, and does not change the first transform amplitudes associated with said first transform values second subset if said first bit of said message information has said second logical value.

2. The method of claim 1 , further comprising:

said encoder applying said transform function, that transforms from a time or a space domain to a temporal or a spatial frequency domain, to a second contiguous subset of said content in the time or space domain, which results in a second transform having second transform values in the frequency domain, and second transform amplitudes associated with said second transform values;

said encoder selecting, based upon said second transform amplitudes, a second transform values first subset of said second transform values;

said encoder using a primary mask and said second transform values first subset to select a second transform values second subset of said second transform values, wherein said second transform values second subset is a subset of said second transform values first subset; and

said encoder manipulating, depending upon the value of a second bit of said message information, the second transform amplitudes associated with said second transform values second subset of said second transform values.

3. The method of claim 1 wherein said transform function is a fast Fourier transform.

4. The method of claim 1 wherein said selecting, based upon said first transform amplitudes, selects based upon magnitudes of said first transform amplitudes so that the first transform values first subset are those first transform values having first transfer amplitudes that are larger than first transfer amplitudes associated with first transform values not in said first transform values first subset.

5. The method of claim 1 , wherein said manipulation is a fractional change to each one of the first transform amplitudes associated with said first transform values second subset, and the fractional change is the same fraction for each one of said first transform amplitudes associated with said first transform values second subset.

6. The method of claim 1 , wherein:

said content comprises image data;

said first contiguous subset of said content defines a spatially contiguous two dimensional block of image data; and

said encoder applying said transform function applies said transform function to a color channel of said two dimensional block of image data.

7. The method of claim 1 , wherein:

said content comprises image data;

said first contiguous subset of said content defines a spatially contiguous two dimensional block of image data; and

said encoder applying said transform function applies said transform function to said two dimensional block of image data.

8. A system for encoding content with message information, comprising:

a processor; and

memory for storing data in non transient form;

an encoder for encoding said content with said message information;

wherein said memory stores a primary mask, said message information, and at least one transform function;

wherein said encoder is configured to use said processor for applying a transform function to said content and for manipulating said content with said message information;

wherein said encoder is configured to receive data defining said content;

wherein said encoder is configured to apply said transform function, that transforms from a time or a space domain to temporal or spatial frequency domain, to a first contiguous subset of said content in the time or space domain, which results in a first transform having first transform values in the frequency domain, and first transform amplitudes associated with said first transform values;

wherein said encoder is configured to select, based upon said first transform amplitudes, a first transform values first subset of said first transform values;

wherein said encoder is configured to use said primary mask and said first transform values first subset to select a first transform values second subset of said first transform values, wherein said first transform values second subset is a subset of said first transform values first subset;

said encoder is configured to manipulate, depending upon the value of a first bit of said message information, the first transform amplitudes associated with said first transform values second subset of said first transform values;

wherein said content is one of audio, still image, video, and multimedia;

wherein said first bit of said message information has either a first logical value or a second logical value; and

wherein said encoder configured to manipulate, comprises said encoder configured to (1) change the first transform amplitudes associated with said first transform values second subset if said first bit of said message information has said first logical value and (2) to not change the first transform amplitudes associated with said first transform values second subset if said first bit of said message information has said second logical value.

9. The system of claim 8 :

wherein said encoder is configured to apply said transform function, that transforms from a time or a space domain to a temporal or a spatial frequency domain, to a second contiguous subset of said content in the time or space domain, which results in a second transform having second transform values in the frequency domain, and second transform amplitudes associated with said second transform values;

wherein said encoder is configured to select, based upon said second transform amplitudes, a second transform values first subset of said second transform values;

wherein said encoder is configured to use said primary mask and said second transform values first subset to select a second transform values second subset of said second transform values, wherein said second transform values second subset is a subset of said second transform values first subset; and

wherein said encoder is configured to manipulate, depending upon the value of a second bit of said message information, the second transform amplitudes associated with said second transform values second subset of said second transform values.

10. The system of claim 8 wherein said transform function is a fast Fourier transform.

11. The system of claim 8 wherein said encoder configured to select, based upon said first transform amplitudes, selects based upon magnitudes of said first transform amplitudes so that the first transform values first subset are those first transform values having first transfer amplitudes that are larger than first transfer amplitudes associated with first transform values not in said first transform values first subset.

12. The system of claim 8 , wherein the manipulation is a fractional change to each one of the first transform amplitudes associated with said first transform values second subset, and the fractional change is the same fraction for each one of said first transform amplitudes associated with said first transform values second subset.

13. The system of claim 8 , wherein:

said content comprises image data;

said first contiguous subset of said content defines a spatially contiguous two dimensional block of image data; and

said encoder applying said transform function applies said transform function to a color channel of said two dimensional block of image data.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 17, 2015
From: MOSKOWITZ, SCOTT A.
To: WISTARIA TRADING LTD
Reel/Frame 036342/0953 →
Continuity (6)
Continuation 13937106 · Jul 8, 2013
Continuation 12799894 · May 4, 2010
Continuation 11358874 · Feb 21, 2006
Division 09644098 · Aug 23, 2000
Division 09053628 · Apr 2, 1998
Related Publication 20140226811A1 · Aug 14, 2014