Three-dimensional wavelet based video fingerprinting
First Claim
1. A method for fingerprinting a video, comprising:
- receiving the video;
segmenting the video into a plurality of video segments including a first video segment, the first video segment having a plurality of video frames;
performing a three-dimensional transform on the plurality of video frames in the first video segment 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 the three-dimensional wavelet to generate a first video fingerprint;
storing a video fingerprint sequence to a non-transitory computer readable storage medium, wherein each video fingerprint in the video fingerprint sequence is associated with a different video segment in the plurality of video segments;
comparing the video fingerprint sequence to a reference fingerprint sequence; and
determining a similarity between the video fingerprint sequence and the reference fingerprint sequence based on the comparison.
2 Assignments
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.
218 Citations
21 Claims
-
1. A method for fingerprinting a video, comprising:
-
receiving the video; segmenting the video into a plurality of video segments including a first video segment, the first video segment having a plurality of video frames; performing a three-dimensional transform on the plurality of video frames in the first video segment 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 the three-dimensional wavelet to generate a first video fingerprint; storing a video fingerprint sequence to a non-transitory computer readable storage medium, wherein each video fingerprint in the video fingerprint sequence is associated with a different video segment in the plurality of video segments; comparing the video fingerprint sequence to a reference fingerprint sequence; and determining a similarity between the video fingerprint sequence and the reference fingerprint sequence based on the comparison. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. 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 at least two frames in 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 the three-dimensional wavelet to generate a first video fingerprint; an output module adapted to store a video fingerprint sequence to a non-transitory computer readable storage medium, wherein each video fingerprint in the video fingerprint sequence is associated with a different video segment in the plurality of video segments; and a comparison module adapted to compare the video fingerprint sequence to a reference fingerprint sequence and determine a similarity between the video fingerprint sequence and the reference fingerprint sequence based on the comparison. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A non-transitory computer-readable storage medium storing instructions for fingerprinting a video, the instructions when executed by a processor cause the processor to perform steps including:
-
receiving the video; segmenting the video into a plurality of video segments including a first video segment, the first video segment having a plurality of video frames; performing a three-dimensional transform on the plurality of video frames in the first video segment 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 the three-dimensional wavelet to generate a first video fingerprint; storing a video fingerprint sequence to a non-transitory computer readable storage medium, wherein each video fingerprint in the video fingerprint sequence is associated with a different video segment in the plurality of video segments; comparing the video fingerprint sequence to a reference fingerprint sequence; and determining a similarity between the video fingerprint sequence and the reference fingerprint sequence based on the comparison. - View Dependent Claims (18, 19, 20, 21)
-
Specification