Systems and methods for addressing a media database using distance associative hashing
First Claim
1. A computer-implemented method comprising:
- receiving a pixel cue point associated with a frame of an unknown video segment, wherein the pixel cue point includes a set of pixel values corresponding to the frame;
identifying a plurality of bins, wherein a bin facilitates identification of a candidate video segment;
identifying candidate reference data points in a database of reference data points, wherein identified candidate reference data points are similar to the pixel cue point, and wherein a candidate reference data point includes one or more pixel values corresponding to a candidate frame of a candidate video segment;
adding a first token to a first bin associated with a first candidate video segment, wherein the first token is added to the first bin in response to identifying a first candidate reference data point;
adding a second token to a second bin associated with a second candidate video segment, wherein the second token is added to the second bin in response to identifying a second candidate reference data point;
determining that a quantity of tokens in the first bin exceeds a value, wherein the value is associated with a probability that the first candidate video segment matches the unknown video segment;
identifying the unknown video segment as matching the first candidate video segment when the quantity of tokens in the first bin exceeds the value; and
transmitting data associated with the first candidate video segment when the unknown video segment is identified.
2 Assignments
0 Petitions
Accused Products
Abstract
A system, method and computer program utilize a distance associative hashing algorithmic means to provide a highly efficient means to rapidly address a large database. The indexing means can be readily subdivided into a plurality of independently-addressable segments where each such segment can address a portion of related data of the database where the subdivided indexes of said portions reside entirely in the main memory of each of a multiplicity of server means. The resulting cluster of server means, each hosting an addressable sector of a larger database of searchable audio or video information, provides a significant improvement in the latency and scalability of an Automatic Content Recognition system, among other uses.
267 Citations
20 Claims
-
1. A computer-implemented method comprising:
-
receiving a pixel cue point associated with a frame of an unknown video segment, wherein the pixel cue point includes a set of pixel values corresponding to the frame; identifying a plurality of bins, wherein a bin facilitates identification of a candidate video segment; identifying candidate reference data points in a database of reference data points, wherein identified candidate reference data points are similar to the pixel cue point, and wherein a candidate reference data point includes one or more pixel values corresponding to a candidate frame of a candidate video segment; adding a first token to a first bin associated with a first candidate video segment, wherein the first token is added to the first bin in response to identifying a first candidate reference data point; adding a second token to a second bin associated with a second candidate video segment, wherein the second token is added to the second bin in response to identifying a second candidate reference data point; determining that a quantity of tokens in the first bin exceeds a value, wherein the value is associated with a probability that the first candidate video segment matches the unknown video segment; identifying the unknown video segment as matching the first candidate video segment when the quantity of tokens in the first bin exceeds the value; and transmitting data associated with the first candidate video segment when the unknown video segment is identified. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system comprising:
-
one or more processors; and a non-transitory computer-readable medium containing instructions that, when executed by the one or more processors, cause the one or more processors to perform operations including; receiving a pixel cue point associated with a frame of an unknown video segment, wherein the pixel cue point includes a set of pixel values corresponding to the frame; identifying a plurality of bins, wherein a bin facilitates identification of a candidate video segment; identifying candidate reference data points in a database of reference data points, wherein identified candidate reference data points are similar to the pixel cue point, and wherein a candidate reference data point includes one or more pixel values corresponding to a candidate frame of a candidate video segment; adding a first token to a first bin associated with a first candidate video segment, wherein the first token is added to the first bin in response to identifying a first candidate reference data point; adding a second token to a second bin associated with a second candidate video segment, wherein the second token is added to the second bin in response to identifying a second candidate reference data point; determining that a quantity of tokens in the first bin exceeds a value, wherein the value is associated with a probability that the first candidate video segment matches the unknown video segment; identifying the unknown video segment as matching the first candidate video segment when the quantity of tokens in the first bin exceeds the value; and transmitting data associated with the first candidate video segment when the unknown video segment is identified. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computer-program product tangibly embodied in a non-transitory machine-readable storage medium, including instructions that, when executed by one or more processors, cause the one or more processors to:
-
receive a pixel cue point associated with a frame of an unknown video segment, wherein the pixel cue point includes a set of pixel values corresponding to the frame; identify a plurality of bins, wherein a bin facilitates identification of a candidate video segment; identify candidate reference data points in a database of reference data points, wherein identified candidate reference data points are similar to the pixel cue point, and wherein a candidate reference data point includes one or more pixel values corresponding to a candidate frame of a candidate video segment; add first token to a first bin associated with a first candidate video segment, wherein the first token is added to the first bin in response to identifying a first candidate reference data point; add a second token to a second bin associated with a second candidate video segment, wherein the second token is added to the second bin in response to identifying a second candidate reference data point; determine that a quantity of tokens in the first bin exceeds a value, wherein the value is associated with a probability that the first candidate video segment matches the unknown video segment; identify the unknown video segment as matching the first candidate video segment when the quantity of tokens in the first bin exceeds the value; and transmitting data associated with the first candidate video segment when the unknown video segment is identified. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification