Three-dimensional wavelet based video fingerprinting
First Claim
1. A method for fingerprinting a video having a plurality of video segments, comprising:
- receiving a first video segment having a plurality of video frames;
performing a three-dimensional transform on the plurality of frames to generate a three-dimensional wavelet, wherein the three-dimensional wavelet represents spatial information within the video frames and sequential characteristics between the video frames;
quantizing coefficients of the three-dimensional wavelet to generate a video fingerprint representing visual content of the first video segment;
storing the video fingerprint to a non-transitory computer readable storage medium; and
storing an association between an identifier of the first video segment and features of the video fingerprint to the non-transitory computer readable storage medium.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system generates and compares fingerprints for videos in a video library. The video fingerprints provide a compact representation of the spatial and sequential characteristics of the video that can be used to quickly and efficiently identify video content. Because the fingerprints are based on spatial and sequential characteristics rather than exact bit sequences, visual content of videos can be effectively compared even when there are small differences between the videos in compression factors, source resolutions, start and stop times, frame rates, and so on. Comparison of video fingerprints can be used, for example, to search for and remove copyright protected videos from a video library. Further, duplicate videos can be detected and discarded in order to preserve storage space.
38 Citations
20 Claims
-
1. A method for fingerprinting a video having a plurality of video segments, comprising:
-
receiving a first video segment having a plurality of video frames; performing a three-dimensional transform on the plurality of frames to generate a three-dimensional wavelet, wherein the three-dimensional wavelet represents spatial information within the video frames and sequential characteristics between the video frames; quantizing coefficients of the three-dimensional wavelet to generate a video fingerprint representing visual content of the first video segment; storing the video fingerprint to a non-transitory computer readable storage medium; and storing an association between an identifier of the first video segment and features of the video fingerprint to the non-transitory computer readable storage medium. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A non-transitory computer-readable storage medium storing instructions for fingerprinting a video having a plurality of video segments, the instructions when executed by a processor cause the processor to perform steps including:
-
receiving a first video segment having a plurality of video frames; performing a three-dimensional transform on the plurality of frames to generate a three-dimensional wavelet, wherein the three-dimensional wavelet represents spatial information within the video frames and sequential characteristics between the video frames; quantizing coefficients of the three-dimensional wavelet to generate a video fingerprint representing visual content of the first video segment; storing the video fingerprint to a memory; and storing an association between an identifier of the first video segment and features of the video fingerprint to the memory. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A computer system for generating a video fingerprint comprising:
-
one or more processors; and a non-transitory computer readable storage medium storing computer-executable program modules executable by the one or more processors, the computer-executable program modules comprising; an input module adapted to receive a video; a segmenting module adapted to segment the video into a plurality of video segments including a first video segment, each segment including at least two frames; a transform module adapted to perform a three-dimensional transform on the first video segment to generate a three-dimensional wavelet, wherein the three dimensional wavelet represents spatial characteristics and sequential characteristics of the at least two frames associated with the first video segment; a quantizing module adapted to quantize coefficients of the three-dimensional wavelet to generate a video fingerprint representing visual content of the transformed first video segment; and an output module adapted to store the video fingerprint to a memory and to store an association between an identifier of the first video segment and features of the video fingerprint. - View Dependent Claims (20)
-
Specification