IP Library Granted Patent US 11,334,615
Granted Patent B2
US 11,334,615 · App. 16/553,658 · Granted May 17, 2022

Media fingerprinting and identification system

Inventors: Prashant Ramanathan (Mountain View, CA); Jose Pio Pereira (Cupertino, CA); Shashank Merchant (Sunnyvale, CA); Mihailo M. Stojancic (San Jose, CA)
Assignee: Roku, Inc.
G06F16/48G06F16/2255G06F16/285G06F16/41G06F16/783G06F16/7847G06F16/9014G06F16/951G06V10/462G06V20/46Y10S707/913
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 11,334,615
App. No.
16/553,658
Granted
May 17, 2022
Kind
B2
Abstract

The overall architecture and details of a scalable video fingerprinting and identification system that is robust with respect to many classes of video distortions is described. In this system, a fingerprint for a piece of multimedia content is composed of a number of compact signatures, along with traversal hash signatures and associated metadata. Numerical descriptors are generated for features found in a multimedia clip, signatures are generated from these descriptors, and a reference signature database is constructed from these signatures. Query signatures are also generated for a query multimedia clip. These query signatures are searched against the reference database using a fast similarity search procedure, to produce a candidate list of matching signatures. This candidate list is further analyzed to find the most likely reference matches. Signature correlation is performed between the likely reference matches and the query clip to improve detection accuracy.

Claims (40)

1. A computer-implemented method for video fingerprinting that is robust to video distortion, the method comprising:

determining, for respective sub-regions of a set of sub-regions that each include pixels of a frame of a query video, using a video fingerprinting system, respective intensity values corresponding to pixels included within the respective sub-regions, wherein boundaries of the set of sub-regions are defined such that some of the sub-regions include different numbers of pixels, and wherein the query video is a distorted version of a reference video corresponding to the query video;

determining, for the respective sub-regions of the set of sub-regions, using the video fingerprinting system, respective sub-region values based on the respective intensity values;

generating, using the video fingerprinting system, fingerprint data for the frame based on the respective sub-region values; and

identifying the reference video corresponding to the query video using the fingerprint data and a reference database.

2. The computer-implemented method of claim 1 , wherein the query video is a cropped version of the reference video, is encoded at a different quality than a quality at which the reference video is encoded, or includes an image overlay.

3. The computer-implemented method of claim 1 , wherein determining, for respective sub-regions of the set of sub-regions, respective sub-region values based on the respective intensity values comprises computing, for respective sub-regions of the set of sub-regions, L respective sub-region values based on the respective intensity values, wherein L is an integer that is greater than one.

4. The computer-implemented method of claim 3 , wherein generating the fingerprint data for the frame based on the respective sub-region values comprises deriving a descriptor from the L sub-region values for the respective sub-regions.

5. The computer-implemented method of claim 4 , wherein generating the fingerprint data for the frame based on the respective sub-region values further comprises determining a signature using the descriptor.

6. The computer-implemented method of claim 4 , wherein deriving the descriptor from the L sub-region values for the set of sub-regions comprises concatenating the L sub-region values for the set of sub-regions.

7. The computer-implemented method of claim 1 , wherein, for a given sub-region of the set of sub-regions, determining the respective intensity values corresponding to pixels included within the given sub-region comprises:

subdividing the sub-region into an M×M grid of pixels, wherein M is an integer that is greater than one; and

for each sub-grid area of the M×M grid of pixels, combining intensity values of pixels of the sub-grid area to produce a re-sampled intensity value,

wherein the sub-region value for the given sub-region is determined based on the re-sampled intensity value.

8. A video fingerprinting system comprising:

a processing unit; and

a non-transitory computer-readable medium having stored therein instructions that are executable by one or more computers to cause the video fingerprinting system to perform functions comprising:

determining, for respective sub-regions of a set of sub-regions that each include pixels of a frame of a query video, respective intensity values corresponding to pixels included within the respective sub-regions, wherein boundaries of the set of sub-regions are defined such that some of the sub-regions include different numbers of pixels, and wherein the query video is a distorted version of a reference video corresponding to the query video,

determining, for the respective sub-regions of the set of sub-regions, respective sub-region values based on the respective intensity values,

generating fingerprint data for the frame based on the respective sub-region values, and

identifying the reference video corresponding to the query video using the fingerprint data and a reference database.

9. The video fingerprinting system of claim 8 , wherein the query video is a cropped version of the reference video, is encoded at a different quality than a quality at which the reference video is encoded, or includes an image overlay.

10. The video fingerprinting system of claim 8 , wherein determining, for respective sub-regions of the set of sub-regions, respective sub-region values based on the respective intensity values comprises computing, for respective sub-regions of the set of sub-regions, L respective sub-region values based on the respective intensity values, wherein L is an integer that is greater than one.

11. The video fingerprinting system of claim 10 , wherein generating the fingerprint data for the frame based on the respective sub-region values comprises deriving a descriptor from the L sub-region values for the respective sub-regions.

12. The video fingerprinting system of claim 11 , wherein generating the fingerprint data for the frame based on the respective sub-region values further comprises determining a signature using the descriptor.

13. The video fingerprinting system of claim 11 , wherein deriving the descriptor from the L sub-region values for the set of sub-regions comprises concatenating the L sub-region values for the set of sub-regions.

14. The video fingerprinting system of claim 8 , wherein, for a given sub-region of the set of sub-regions, determining the respective intensity values corresponding to pixels included within the given sub-region comprises:

subdividing the sub-region into an M×M grid of pixels, wherein M is an integer that is greater than one; and

for each sub-grid area of the M×M grid of pixels, combining intensity values of pixels of the sub-grid area to produce a re-sampled intensity value,

wherein the sub-region value for the given sub-region is determined based on the re-sampled intensity value.

15. A non-transitory computer-readable medium having stored therein instructions that are executable by one or more computers to cause a video fingerprinting system to perform functions comprising:

determining, for respective sub-regions of a set of sub-regions that each include pixels of a frame of a query video, respective intensity values corresponding to pixels included within the respective sub-regions of the set of sub-regions, wherein boundaries of the set of sub-regions are defined such that some of the sub-regions include different numbers of pixels, and wherein the query video is a distorted version of a reference video corresponding to the query video,

determining, for the respective sub-regions of the set of sub-regions, respective sub-region values based on the respective intensity values,

generating fingerprint data for the frame based on the respective sub-region values, and

identifying the reference video corresponding to the query video using the fingerprint data and a reference database.

16. The non-transitory computer-readable medium of claim 15 , wherein the query video is a cropped version of the reference video, is encoded at a different quality than a quality at which the reference video is encoded, or includes an image overlay.

17. The non-transitory computer-readable medium of claim 15 , wherein determining, for respective sub-regions of the set of sub-regions, respective sub-region values based on the respective intensity values comprises computing, for respective sub-regions of the set of sub-regions, L respective sub-region values based on the respective intensity values, wherein L is an integer that is greater than one.

18. The non-transitory computer-readable medium of claim 17 , wherein generating the fingerprint data for the frame based on the respective sub-region values comprises deriving a descriptor from the L sub-region values for the respective sub-regions.

19. The non-transitory computer-readable medium of claim 18 , wherein generating the fingerprint data for the frame based on the respective sub-region values further comprises determining a signature using the descriptor.

20. The non-transitory computer-readable medium of claim 18 , wherein deriving the descriptor from the L sub-region values for the set of sub-regions comprises concatenating the L sub-region values for the set of sub-regions.

Assignments (11)
SECURITY INTEREST Recorded Sep 18, 2024
From: ROKU, INC.
To: CITIBANK, N.A.
Reel/Frame 068982/0377 →
RELEASE (REEL 054066 / FRAME 0064) Recorded May 11, 2023
From: CITIBANK, N.A.
To: A. C. NIELSEN COMPANY, LLC; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE MEDIA SERVICES, LLC; THE NIELSEN COMPANY (US), LLC; NETRATINGS, LLC
Reel/Frame 063605/0001 →
RELEASE (REEL 053473 / FRAME 0001) Recorded May 11, 2023
From: CITIBANK, N.A.
To: A. C. NIELSEN COMPANY, LLC; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE MEDIA SERVICES, LLC; THE NIELSEN COMPANY (US), LLC; NETRATINGS, LLC
Reel/Frame 063603/0001 →
TERMINATION AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT (REEL/FRAME 056982/0194) Recorded Feb 22, 2023
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: ROKU, INC.; ROKU DX HOLDINGS, INC.
Reel/Frame 062826/0664 →
PATENT SECURITY AGREEMENT SUPPLEMENT Recorded Jun 29, 2021
From: ROKU, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 056982/0194 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 30, 2021
From: GRACENOTE, INC.
To: ROKU, INC.
Reel/Frame 056103/0786 →
PARTIAL RELEASE OF SECURITY INTEREST Recorded Apr 20, 2021
From: CITIBANK, N.A.
To: THE NIELSEN COMPANY (US), LLC; GRACENOTE, INC.
Reel/Frame 056973/0280 →
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENTS LISTED ON SCHEDULE 1 RECORDED ON 6-9-2020 PREVIOUSLY RECORDED ON REEL 053473 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SUPPLEMENTAL IP SECURITY AGREEMENT. Recorded Oct 7, 2020
From: A.C. NIELSEN (ARGENTINA) S.A.; A.C. NIELSEN COMPANY, LLC; ACN HOLDINGS INC.; ACNIELSEN CORPORATION; ACNIELSEN ERATINGS.COM; AFFINNOVA, INC.; ART HOLDING, L.L.C.; ATHENIAN LEASING CORPORATION; CZT/ACN TRADEMARKS, L.L.C.; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; NETRATINGS, LLC; NIELSEN AUDIO, INC.; NIELSEN CONSUMER INSIGHTS, INC.; NIELSEN CONSUMER NEUROSCIENCE, INC.; NIELSEN FINANCE CO.; NIELSEN FINANCE LLC; NIELSEN INTERNATIONAL HOLDINGS, INC.; NIELSEN MOBILE, LLC; NMR INVESTING I, INC.; TCG DIVESTITURE INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC; VIZU CORPORATION; VNU MARKETING INFORMATION, INC.; NMR LICENSING ASSOCIATES, L.P.; NIELSEN HOLDING AND FINANCE B.V.; THE NIELSEN COMPANY B.V.; VNU INTERNATIONAL B.V.
To: CITIBANK, N.A
Reel/Frame 054066/0064 →
SUPPLEMENTAL SECURITY AGREEMENT Recorded Jun 9, 2020
From: A. C. NIELSEN COMPANY, LLC; ACN HOLDINGS INC.; ACNIELSEN CORPORATION; ACNIELSEN ERATINGS.COM; AFFINNOVA, INC.; ART HOLDING, L.L.C.; ATHENIAN LEASING CORPORATION; CZT/ACN TRADEMARKS, L.L.C.; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; NETRATINGS, LLC; NIELSEN AUDIO, INC.; NIELSEN CONSUMER INSIGHTS, INC.; NIELSEN CONSUMER NEUROSCIENCE, INC.; NIELSEN FINANCE CO.; NIELSEN FINANCE LLC; NIELSEN INTERNATIONAL HOLDINGS, INC.; NIELSEN MOBILE, LLC; NIELSEN UK FINANCE I, LLC; NMR INVESTING I, INC.; TCG DIVESTITURE INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC; VIZU CORPORATION; VNU MARKETING INFORMATION, INC.; NMR LICENSING ASSOCIATES, L.P.; NIELSEN HOLDING AND FINANCE B.V.; THE NIELSEN COMPANY B.V.; VNU INTERNATIONAL B.V.
To: CITIBANK, N.A.
Reel/Frame 053473/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 28, 2019
From: RAMANATHAN, PRASHANT; PEREIRA, JOSE PIO; MERCHANT, SHASHANK; STOJANCIC, MIHAILO M.
To: ZEITERA, LLC
Reel/Frame 050199/0665 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 28, 2019
From: ZEITERA, LLC
To: GRACENOTE, INC.
Reel/Frame 050199/0728 →
Continuity (11)
Continuation 16355727 · Mar 16, 2019
Continuation 15265002 · Sep 14, 2016
Continuation 15073858 · Mar 18, 2016
Continuation 14885110 · Oct 16, 2015
Continuation 14711054 · May 13, 2015
Continuation 14059688 · Oct 22, 2013
Continuation 13719603 · Dec 19, 2012
Continuation 13463137 · May 3, 2012
Continuation 12772566 · May 3, 2010
Provisional Application 61185670 · Jun 10, 2009
Related Publication 20190384786A1 · Dec 19, 2019