IP Library Granted Patent US 12,114,002
Granted Patent B2
US 12,114,002 · App. 17/359,335 · Granted Oct 8, 2024

Embedding video watermarks without visible impairments

Inventors: W. Leo Hoarty (Morgan Hill, CA); Kyoungsoo Moon (Irvine, CA); Brian Reed (Stamford, CT); Zeev Neumeier (Berkeley, CA)
Assignee: INSCAPE DATA, INC.
H04N19/467G06T1/0028H04N1/32309G06T2201/0051G06T2201/0053G06T2201/0061G06T2201/0083
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 12,114,002
App. No.
17/359,335
Granted
Oct 8, 2024
Kind
B2
Abstract

Methods, devices, and computer-program products are provided for adding and decoding data to a digital video signal in a visually imperceptible manner. For example, an encoded video frame can be obtained, and one or more blocks of the encoded video frame can be decoded. Binary data can be added to a subset of pixels from a set of pixels of the one or more blocks. For instance, a pixel component can be modulated to add the binary data. The one or more blocks can be re-encoded using at least one coding mode. The re-encoded one or more blocks can be added to the encoded video frame.

Claims (46)

1. A method comprising:

detecting, in a video frame, a watermark based on pixel values of pixels of a first set of pixels, the first set of pixels corresponding to a first region of the video frame, wherein the detected watermark comprises data that was encoded based on modifications to luminance and/or chrominance values of pixels;

identifying, within the first set of pixels, one or more subsets of pixels that correspond to a first pixel value and one or more subsets of pixels that correspond to a second pixel value;

assigning a first symbol to the one or more subsets of pixels that correspond to the first pixel value and a second symbol to the one or more subsets of pixels that correspond to the second pixel value; and

generating, based on the first symbol and the second symbol, a first sequence of symbols corresponding to the data.

2. The method of claim 1 , wherein the first region of the video frame includes a top row of the video frame.

3. The method of claim 1 , further comprising:

replacing, based on the first sequence of symbols, a video frame to be displayed with a replacement video frame.

4. The method of claim 3 , wherein the replacement video frame is stored in local memory.

5. The method of claim 1 , further comprising:

displaying, in response to decoding the first sequence of symbols, a graphical user interface over the video frame.

6. The method of claim 5 , wherein the graphical user interface includes video information associated with content of the video frame.

7. A system comprising:

one or more processors; and

a non-transitory computer-readable medium storing instructions that, when executed by the one or more processors, cause the one or more processors to perform operations including:

detecting, in a video frame, a watermark based on pixel values of pixels of a first set of pixels, the first set of pixels corresponding to a first region of the video frame, wherein the detected watermark comprises data that was encoded based on modifications to luminance and/or chrominance values of pixels;

identifying, within the first set of pixels, one or more subsets of pixels that correspond to a first pixel value and one or more subsets of pixels that correspond to a second pixel value;

assigning a first symbol to the one or more subsets of pixels that correspond to the first pixel value and a second symbol to the one or more subsets of pixels that correspond to the second pixel value; and

generating, based on the first symbol and the second symbol, a first sequence of symbols corresponding to the data.

8. The system of claim 7 , wherein the first region of the video frame includes a top row of the video frame.

9. The system of claim 7 , wherein the operations further include:

replacing, based on the first sequence of symbols, a video frame to be displayed with a replacement video frame.

10. The system of claim 9 , wherein the replacement video frame is stored in local memory.

11. The system of claim 7 , wherein the operations further include:

displaying, in response to decoding the first sequence of symbols, a graphical user interface over the video frame.

12. The system of claim 11 , wherein the graphical user interface includes video information associated with content of the video frame.

13. A non-transitory computer-readable medium storing instructions that, when executed by one or more processors, cause the one or more processors to perform operations including:

detecting, in a video frame, a watermark based on pixel values of pixels of a first set of pixels, the first set of pixels corresponding to a first region of the video frame, wherein the detected watermark comprises data that was encoded based on modifications to luminance and/or chrominance values of pixels;

identifying, within the first set of pixels, one or more subsets of pixels that correspond to a first pixel value and one or more subsets of pixels that correspond to a second pixel value;

assigning a first symbol to the one or more subsets of pixels that correspond to the first pixel value and a second symbol to the one or more subsets of pixels that correspond to the second pixel value; and

generating, based on the first symbol and the second symbol, a first sequence of symbols corresponding to the data.

14. The non-transitory computer-readable medium of claim 13 , wherein the first region of the video frame includes a top row of the video frame.

15. The non-transitory computer-readable medium of claim 13 , wherein the operations further include:

replacing, based on the first sequence of symbols, a video frame to be displayed with a replacement video frame.

16. The non-transitory computer-readable medium of claim 15 , wherein the replacement video frame is stored in local memory.

17. The non-transitory computer-readable medium of claim 13 , wherein the operations further include:

displaying, in response to decoding the first sequence of symbols, a graphical user interface over the video frame.

18. The method of claim 1 , further comprising:

generating, based on symbols assigned to one or more subsets of pixels of a second region, a second sequence of symbols, the second region being a different region of the video frame from the first region; and

modifying the first sequence of symbols to include the second sequence of symbols.

19. The system of claim 7 , wherein the instructions further comprise:

generating, based on symbols assigned to one or more subsets of pixels of a second region, a second sequence of symbols, the second region being a different region of the video frame from the first region; and

modifying the first sequence of symbols to include the second sequence of symbols.

20. The non-transitory computer-readable medium of claim 13 , wherein the instructions further comprise:

generating, based on symbols assigned to one or more subsets of pixels of a second region, a second sequence of symbols, the second region being a different region of the video frame from the first region; and

modifying the first sequence of symbols to include the second sequence of symbols.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 20, 2024
From: HOARTY, W. LEO; MOON, KYOUNGSOO; REED, BRIAN; NEUMEIER, ZEEV
To: INSCAPE DATA, INC.
Reel/Frame 068341/0360 →
Continuity (4)
Continuation 16404685 · May 6, 2019
Continuation In Part 15704242 · Sep 14, 2017
Provisional Application 62394390 · Sep 14, 2016
Related Publication 20210400296A1 · Dec 23, 2021