IP Library Granted Patent US 11,036,783
Granted Patent B2
US 11,036,783 · App. 16/365,577 · Granted Jun 15, 2021

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/951G06K9/00744G06K9/4671Y10S707/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,036,783
App. No.
16/365,577
Granted
Jun 15, 2021
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 (64)

1. A method comprising:

obtaining, by the one or more computing devices, a plurality of query signatures of a query media clip;

determining, by one or more computing devices, that a reference media clip is a possible match to the query media clip;

accessing, by the one or more computing devices, a set of reference signatures of the reference media clip from a reference database;

for each query signature of the plurality of signatures, performing a similarity search between the query signature and the set of reference signatures, wherein performing the similarity search comprises:

determining distances between the query signature and respective reference signatures of the set of reference signatures, and

determining an individual score based on the distances between the query signature and the respective reference signatures of the set of reference signatures;

determining, by the one or more computing devices, an overall score for the reference media clip based on the individual scores for the query signatures of the plurality of signatures;

determining, by the one or more computing devices, that the overall score for the reference media clip satisfies a threshold; and

based on the determining that the overall score satisfies the threshold, providing, by the one or more computing devices, an indication that the reference media clip is a match to the query media clip.

2. The method of claim 1 :

wherein determining that the reference media clip is a possible match to the query media clip comprises determining that a segment occurring at a time range within the reference media clip is a possible match to the query media clip, and

wherein accessing the set of reference signatures of the reference media clip comprises accessing the set of reference signatures based on the reference signatures of the set of reference signatures corresponding to the time range.

3. The method of claim 1 , wherein the individual score for each query signature of the plurality of signatures is a minimum distance of the distances between the query signature and the respective reference signatures.

4. The method of claim 3 , wherein the overall score is an average of the individual scores for the query signatures of the plurality of signatures.

5. The method of claim 1 :

wherein each query signature of the plurality of signatures is an N-dimensional query signature,

wherein each reference signature of the set of reference signatures is an N-dimensional reference signature, and

wherein for each query signature of the plurality of signatures, determining the distances between the query signature and the respective reference signatures of the set of reference signatures comprises determining bit distances between the query signature and the respective reference signatures of the set of reference signatures.

6. The method of claim 1 , further comprising determining, using the plurality of query signatures, a plurality of reference signatures matching at least one of the query signatures, wherein the plurality of reference signatures correspond to plurality of reference media clips, and wherein the reference media clip is one of the plurality of reference media clips.

7. The method of claim 6 , wherein determining that the reference media clip is a possible match to the query media clip comprises determining that, from among the plurality of reference media clips, the reference media clip has the most corresponding reference signatures of the plurality of reference signatures.

8. A non-transitory computer-readable medium having stored therein instructions that are executable to cause a computing system to perform functions comprising:

obtaining a plurality of query signatures of a query media clip;

determining that a reference media clip is a possible match to the query media clip;

accessing a set of reference signatures of the reference media clip from a reference database;

for each query signature of the plurality of signatures, performing a similarity search between the query signature and the set of reference signatures, wherein performing the similarity search comprises:

determining distances between the query signature and respective reference signatures of the set of reference signatures, and

determining an individual score based on the distances between the query signature and the respective reference signatures of the set of reference signatures;

determining an overall score for the reference media clip based on the individual scores for the query signatures of the plurality of signatures;

determining that the overall score for the reference media clip satisfies a threshold, and

based on the determining that the overall score satisfies the threshold, providing an indication that the reference media clip is a match to the query media clip.

9. The non-transitory computer-readable medium of claim 8 :

wherein determining that the reference media clip is a possible match to the query media clip comprises determining that a segment occurring at a time range within the reference media clip is a possible match to the query media clip, and

wherein accessing the set of reference signatures of the reference media clip comprises accessing the set of reference signatures based on the reference signatures of the set of reference signatures corresponding to the time range.

10. The non-transitory computer-readable medium of claim 8 , wherein the individual score for each query signature of the plurality of signatures is a minimum distance of the distances between the query signature and the respective reference signatures.

11. The non-transitory computer-readable medium of claim 10 , wherein the overall score is an average of the individual scores for the query signatures of the plurality of signatures.

12. The non-transitory computer-readable medium of claim 8 :

wherein each query signature of the plurality of signatures is an N-dimensional query signature,

wherein each reference signature of the set of reference signatures is an N-dimensional reference signature, and

wherein for each query signature of the plurality of signatures, determining the distances between the query signature and the respective reference signatures of the set of reference signatures comprises determining bit distances between the query signature and the respective reference signatures of the set of reference signatures.

13. The non-transitory computer-readable medium of claim 8 , wherein the functions further comprise determining, using the plurality of query signatures, a plurality of reference signatures matching at least one of the query signatures, wherein the plurality of reference signatures correspond to plurality of reference media clips, and wherein the reference media clip is one of the plurality of reference media clips.

14. The non-transitory computer-readable medium of claim 8 , wherein determining that the reference media clip is a possible match to the query media clip comprises determining that, from among the plurality of reference media clips, the reference media clip has the most corresponding reference signatures of the plurality of reference signatures.

15. A computing system comprising:

a processing unit; and

a computer-readable medium having stored therein instructions that are executable to cause the computing system to perform functions comprising:

obtaining a plurality of query signatures of a query media clip,

determining that a reference media clip is a possible match to the query media clip,

accessing a set of reference signatures of the reference media clip from a reference database,

for each query signature of the plurality of signatures, performing a similarity search between the query signature and the set of reference signatures, wherein performing the similarity search comprises:

determining distances between the query signature and respective reference signatures of the set of reference signatures; and

determining an individual score based on the distances between the query signature and the respective reference signatures of the set of reference signatures;

determining an overall score for the reference media clip based on the individual scores for the query signatures of the plurality of signatures,

determining that the overall score for the reference media clip satisfies a threshold, and

based on the determining that the overall score satisfies the threshold, providing an indication that the reference media clip is a match to the query media clip.

16. The computing system of claim 15 :

wherein determining that the reference media clip is a possible match to the query media clip comprises determining that a segment occurring at a time range within the reference media clip is a possible match to the query media clip, and

wherein accessing the set of reference signatures of the reference media clip comprises accessing the set of reference signatures based on the reference signatures of the set of reference signatures corresponding to the time range.

17. The computing system of claim 15 , wherein the individual score for each query signature of the plurality of signatures is a minimum distance of the distances between the query signature and the respective reference signatures.

18. The computing system of claim 15 :

wherein each query signature of the plurality of signatures is an N-dimensional query signature,

wherein each reference signature of the set of reference signatures is an N-dimensional reference signature, and

wherein for each query signature of the plurality of signatures, determining the distances between the query signature and the respective reference signatures of the set of reference signatures comprises determining bit distances between the query signature and the respective reference signatures of the set of reference signatures.

19. The computing system of claim 15 , wherein the functions further comprise determining, using the plurality of query signatures, a plurality of reference signatures matching at least one of the query signatures, wherein the plurality of reference signatures correspond to plurality of reference media clips, and wherein the reference media clip is one of the plurality of reference media clips.

20. The computing system of claim 15 , wherein determining that the reference media clip is a possible match to the query media clip comprises determining that, from among the plurality of reference media clips, the reference media clip has the most corresponding reference signatures of the plurality of reference signatures.

Assignments (11)
SECURITY INTEREST Recorded Sep 18, 2024
From: ROKU, INC.
To: CITIBANK, N.A.
Reel/Frame 068982/0377 →
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 →
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 →
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 Mar 26, 2019
From: RAMANATHAN, PRASHANT; PEREIRA, JOSE PIO; MERCHANT, SHASHANK; STOJANCIC, MIHAILO M.
To: ZEITERA, LLC
Reel/Frame 048706/0813 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 26, 2019
From: ZEITERA, LLC
To: GRACENOTE, INC.
Reel/Frame 048706/0842 →