IP Library Granted Patent US 8,135,168
Granted Patent B2
US 8,135,168 · App. 12/521,083 · Granted Mar 13, 2012

System for embedding data

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 8,135,168
App. No.
12/521,083
Granted
Mar 13, 2012
Kind
B2
Abstract

A method and system for embedding data in video frames is described, the method comprising receiving marking information, representing the marking information as a 2-coordinate vector, denoted ω , where the 2-coordinates are denoted, respectively, α, β, such that ω =(α, β), providing a video frame to be marked, the video frame including a plurality of pixels, each pixel of the plurality of pixels being represented as p, where p=(x, y), x and y including coordinates of pixel p, the plurality of pixels being represented as a triad of color elements, denoted, respectively, as R, G, and B, and marking the video frame by transforming each pixel among the plurality of pixels as follows R′(p)=R(p)+R>, G′(p)=G(p)+G>, and B′(p)=B(p)+B>, where R> represents a dot product operation on p and ω R, G> represents a dot product operation on p and ω G, and B> represents a dot product operation on p and ω B.

Claims (76)

1. A method comprising:

at a marking information receiver, receiving marking information;

at a processor, representing the marking information as a 2-coordinate vector, denoted ω, where the 2-coordinates are denoted, respectively, α, β, such that ω=(α, β);

providing a video frame to be marked, the video frame comprising a plurality of pixels, each pixel of the plurality of pixels being represented as p, where p=(x, y), x and y comprising coordinates of pixel p, the plurality of pixels being represented as a triad of color elements, denoted, respectively, as R, G, and B; and

at a video frame marker, marking the video frame by transforming each pixel among the plurality of pixels as follows:

R ′( p )= R ( p )+< p,ω R >:

G ′( p )= G ( p )+< p,ω G >; and

B ′( p )= B ( p )+< p,ω B >,

where:

<p, ω R > represents a dot product operation on p and ω R ;

<p, ω G > represents a dot product operation on p and ω G ; and

<p, ω B > represents a dot product operation on p and ω B ,

wherein R(p), G(p) and B(p), respectively, are pixel p's original red, green, and blue component, and R′(p), G′(p) and B′(p) respectively, are pixel p's red, green, and blue component after data marking, and ω equals information to inject, represented as a 2-coordinate vector (α, β).

2. The method according to claim 1 and wherein the marking information comprises information identifying a rendering device.

3. The method according to claim 2 and wherein the information identifying a rendering device comprises a unique device identifier.

4. The method according to claim 1 and wherein the marking information comprises a copyright mark.

5. The method according to claim 1 and wherein the marking information comprises access rights data.

6. The method according to claim 5 and wherein the access rights data comprise playback/copying permission.

7. The method according to claim 1 and wherein the at least one color element comprises a Red-Green-Blue color element.

8. The method according to claim 1 and wherein the at least one color element comprises a chrominance/luminance color element.

9. The method according to claim 8 and wherein the chrominance/luminance color element comprises a YCbCr chrominance/luminance color element.

10. The method according to claim 8 and wherein the chrominance/luminance color element comprises a YPbPr chrominance/luminance color element.

11. The method according to claim 8 and wherein the chrominance/luminance color element comprises a YDbDr chrominance/luminance color element.

12. The method according to claim 8 and wherein the chrominance/luminance color element comprises a xvYCC chrominance/luminance color element.

13. The method according to claim 1 and wherein R′(p), G′(p), and B′(p) do not exceed a maximum value allowed for each said color element in a color representation system.

14. The method according to claim 13 and wherein any of R′(p), G′(p), and B′(p) are truncated to ensure that any of R′(p), G′(p), and B′(p) do not exceed the maximum value.

15. The method according to claim 13 and wherein the color representation system comprises a Red-Green-Blue color representation system.

16. The method according to claim 13 and wherein the color representation system comprises a chrominance/luminance color representation system.

17. The method according to claim 1 and wherein R′(p), G′(p), and B′(p) do not fall below a minimum value allowed for each said color element in a color representation system.

18. The method according to claim 17 and wherein any of R′(p), G′(p), and B′(p) are truncated to ensure that any of R′(p), G′(p), and B′(p) do not exceed the minimum value.

19. The method according to claim 17 and wherein the color representation system comprises a Red-Green-Blue color representation system.

20. The method according to claim 17 and wherein the color representation system comprises a chrominance/luminance color representation system.

21. The method according to claim 1 and wherein the representing the marking information as a 2-coordinate vector comprises:

expressing the marking information as a string of bits;

subdividing the string of bits into a plurality of sub-strings of bits; and

translating the each one of the plurality of sub-strings of bits into a corresponding 2-coordinate vector.

22. The method according to claim 21 and wherein each one of the plurality of sub-strings of bits comprises a three bit string of bits.

23. The method according to claim 21 and wherein each one of the plurality of sub-strings of bits comprises a two bit string of bits.

24. A system comprising:

a marking information receiver receiving at a processor a 2-coordinate vector;

the 2-coordinate vector, denoted ω, where the 2-coordinates are denoted, respectively, α, β, such that ω=(α, β), the 2-coordinate vector representing the marking information;

a video frame to be marked, the video frame comprising a plurality of pixels, each pixel of the plurality of pixels being represented as p, where p=(x, y), x and y comprising coordinates of pixel p, the plurality of pixels being represented as a triad of color elements, denoted, respectively, as R, G, and B; and

a video frame marker operative to mark the video frame by transforming each pixel among the plurality of pixels as follows:

R ′( p )= R ( p )+< p,ω R >;

G ′( p )= G ( p )+< p,ω G >; and

B ′( p )= B ( p )+< p,ω B >,

where:

<p, ω R > represents a dot product operation on p and ω R ;

<p, ω G > represents a dot product operation on p and ω G ; and

<p, ω B > represents a dot product operation on p and ω B ,

wherein R(p), G(p) and B(p), respectively, are pixel p's original red, green, and blue component, and R′(p), G′(p) and B′(p) respectively, are pixel p's red, green, and blue component after data marking, and co equals information to inject, represented as a 2-coordinate vector (α, β).

25. A non-transitory computer storage medium, storing software to implement receiving a video stream, comprising:

a video stream comprising a plurality of video frames, each of the plurality of video frames comprising a plurality of pixels, each pixel of the plurality of pixels being represented as p, where p=(x, y), x and y comprising coordinates of pixel p, the plurality of pixels being represented as a triad of color elements, denoted, respectively, as R, G, and B,

wherein:

marking information has been utilized to transform each pixel among the plurality of pixels, the marking information represented as a 2-coordinate vector, denoted ω, where the 2-coordinates are denoted, respectively, α, β, such that ω=(α, β), as follows:

R ′( p )= R ( p )+< p,ω R >;

G ′( p )= G ( p )+< p,ω G >; and

B ′( p )= B ( p )+< p,ω B >,

where:

<p, ω R > represents a dot product operation on p and ω R ;

<p, ω G > represents a dot product operation on p and ω G ; and

<p, ω B > represents a dot product operation on p and ω B ,

wherein R(p), G(p) and B(p), respectively, are pixel p's original red, green, and blue component, and R′(p), G′(p) and B′(p) respectively, are pixel p's red, green, and blue component after data marking, and co equals information to inject, represented as a 2-coordinate vector (α, β).

26. A system comprising:

means for receiving marking information;

means for representing the marking information as a 2-coordinate vector, denoted ω, where the 2-coordinates are denoted, respectively, α, β, such that ω=(α, β);

means for providing a video frame to be marked, the video frame comprising a plurality of pixels, each pixel of the plurality of pixels being represented as p, where p=(x, y), x and y comprising coordinates of pixel p, the plurality of pixels being represented as a triad of color elements, denoted, respectively, as R, G, and B; and

means for marking the video frame by transforming each pixel among the plurality of pixels as follows:

R ′( p )= R ( p )+< p,ω R >;

G ′( p )= G ( p )+< p,ω G >; and

B ′( p )= B ( p )+< p,ω B >,

where:

<p, ω R > represents a dot product operation on p and ω R ;

<p, ω G > represents a dot product operation on p and ω G ; and

<p, ω B > represents a dot product operation on p and ω B ,

wherein R(p), G(p) and B(p), respectively, are pixel p's original red, green, and blue component, and R′(p), G′(p) and B′(p) respectively, are pixel p's red, green, and blue component after data marking, and ω equals information to inject, represented as a 2-coordinate vector (α, β).

Assignments (5)
CORRECTIVE ASSIGNMENT TO CORRECT THE 26 APPLICATION NUMBERS ERRONEOUSLY RECORDED AGAINST ON THE ATTACHED LIST PREVIOUSLY RECORDED AT REEL: 048513 FRAME: 0297. ASSIGNOR(S) HEREBY CONFIRMS THE CHANGE OF NAME. Recorded Mar 18, 2021
From: NDS LIMITED
To: SYNAMEDIA LIMITED
Reel/Frame 056623/0708 →
CHANGE OF NAME Recorded Mar 6, 2019
From: NDS LIMITED
To: SYNAMEDIA LIMITED
Reel/Frame 048513/0297 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 5, 2018
From: BEAUMARIS NETWORKS LLC; CISCO SYSTEMS INTERNATIONAL S.A.R.L.; CISCO TECHNOLOGY, INC.; CISCO VIDEO TECHNOLOGIES FRANCE
To: NDS LIMITED
Reel/Frame 047420/0600 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 22, 2013
From: NDS LIMITED
To: CISCO TECHNOLOGY, INC.
Reel/Frame 030258/0465 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 25, 2010
From: GEYZEL, ZEEV; DORRENDORF, LEONID
To: NDS LIMITED
Reel/Frame 023987/0768 →