Video fingerprinting based on fourier transform of histogram
First Claim
1. A content device comprising:
- a non-transitory memory storing instructions; and
a processing device in communication with the non-transitory memory and configured to execute the instructions, the executed instructions causing the processing device to perform operations comprising;
receiving streaming video content from a content provider;
capturing a frame of the streaming video content; and
fingerprinting the captured frame of the streaming video content by;
generating a one-dimensional histogram function of pixel values based on pixel data for an entirety of the captured frame, the one-dimensional histogram function comprising an X axis representing specific pixel values and a Y axis representing a number of pixels at each respective specific pixel value;
transforming the histogram function with a Fast Fourier Transform (FFT) to generate a plurality of complex values for the captured frame;
for each of the plurality of complex values, generating a corresponding bit by assigning a binary one (“
1”
) when a real part of the respective complex value is greater than zero (“
0”
) and assigning a binary zero (“
0”
) when the real part of the respective complex value is less than or equal to zero; and
concatenating a number of the bits to generate a fingerprint for the captured frame.
10 Assignments
0 Petitions
Accused Products
Abstract
A content device and method is disclosed to include a processing device to process streaming video content. A fingerprinter receives captured frames of the streaming video content and, for each frame of a plurality of the captured frames, generates a one-dimensional histogram function of pixel values and transforms the histogram function with a Fast Fourier Transform (FFT), to generate a plurality of complex values for the frame. The fingerprinter further, for each of the plurality of complex values, assigns a binary one (“1”) when a real part of the complex value is greater than zero (“0”) and assigns a binary zero (“0”) when the real part is less than or equal to zero, to generate a plurality of bits. The fingerprinter further concatenates a specific number of the bits to generate a fingerprint for the frame.
22 Citations
18 Claims
-
1. A content device comprising:
-
a non-transitory memory storing instructions; and a processing device in communication with the non-transitory memory and configured to execute the instructions, the executed instructions causing the processing device to perform operations comprising; receiving streaming video content from a content provider; capturing a frame of the streaming video content; and fingerprinting the captured frame of the streaming video content by; generating a one-dimensional histogram function of pixel values based on pixel data for an entirety of the captured frame, the one-dimensional histogram function comprising an X axis representing specific pixel values and a Y axis representing a number of pixels at each respective specific pixel value; transforming the histogram function with a Fast Fourier Transform (FFT) to generate a plurality of complex values for the captured frame; for each of the plurality of complex values, generating a corresponding bit by assigning a binary one (“
1”
) when a real part of the respective complex value is greater than zero (“
0”
) and assigning a binary zero (“
0”
) when the real part of the respective complex value is less than or equal to zero; andconcatenating a number of the bits to generate a fingerprint for the captured frame. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method comprising:
-
receiving, at a processing device of a content device, streaming video content from a content provider; capturing, by the processing device, a frame of the streaming video content; and fingerprinting, by the processing device, the captured frame of the streaming video content by; generating a one-dimensional histogram function of pixel values based on pixel data for an entirety of the captured frame, the one-dimensional histogram function comprises an X axis representing specific pixel values and a Y axis representing a number of pixels at each respective specific pixel value; transforming the histogram function with a Fast Fourier Transform (FFT) to generate a plurality of complex values for the captured frame; for each of the plurality of complex values, generating a corresponding bit by assigning a binary one (“
1”
) when a real part of the respective complex value is greater than zero (“
0”
) and assigning a binary zero (“
0”
) when the real part of the respective complex value is less than or equal to zero; andconcatenating a number of the bits to generate a fingerprint for the captured frame. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
Specification