Endpoint based video fingerprinting
First Claim
1. A method for fingerprinting an input video having a sequence of video frames, the method performed by a computer system, the method comprising:
- identifying, by the computer system, a plurality of discontinuities in features of audio-visual content of the input video, wherein the sequence of video frames includes frames associated with one or more associated discontinuities and frames not associated with discontinuities;
generating, by the computer system, an encoded data representation representing the sequence of video frames, wherein the frames associated with the one or more associated discontinuities are represented by first values in the encoded data representation, and wherein frames not associated with the discontinuities are represented by second values in the encoded data representation, the second values different than the first values, and wherein the first values and the second values are arranged in a sequence in the encoded data representation corresponding to the sequence of video frames;
segmenting, by the computer system, the encoded data representation;
generating, by the computer system, a plurality of fingerprints, each fingerprint comprising an encoded data segment corresponding to a segment of the input video;
indexing the plurality of fingerprints by;
generating a signature for a fingerprint of the plurality of fingerprints according to a first hash process; and
dividing the signature into a plurality of signature blocks, each signature block stored in a hash table according to a second hash process, wherein the first hash process and the second hash process are different; and
storing the hash table to a 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 temporal locations of discontinuities in the video that can be used to quickly and efficiently identify video content. Discontinuities can be, for example, shot boundaries in the video frame sequence or silent points in the audio stream. Because the fingerprints are based on structural discontinuity 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. Furthermore, duplicate videos can be detected and discarded in order to preserve storage space.
218 Citations
19 Claims
-
1. A method for fingerprinting an input video having a sequence of video frames, the method performed by a computer system, the method comprising:
-
identifying, by the computer system, a plurality of discontinuities in features of audio-visual content of the input video, wherein the sequence of video frames includes frames associated with one or more associated discontinuities and frames not associated with discontinuities; generating, by the computer system, an encoded data representation representing the sequence of video frames, wherein the frames associated with the one or more associated discontinuities are represented by first values in the encoded data representation, and wherein frames not associated with the discontinuities are represented by second values in the encoded data representation, the second values different than the first values, and wherein the first values and the second values are arranged in a sequence in the encoded data representation corresponding to the sequence of video frames; segmenting, by the computer system, the encoded data representation; generating, by the computer system, a plurality of fingerprints, each fingerprint comprising an encoded data segment corresponding to a segment of the input video; indexing the plurality of fingerprints by; generating a signature for a fingerprint of the plurality of fingerprints according to a first hash process; and dividing the signature into a plurality of signature blocks, each signature block stored in a hash table according to a second hash process, wherein the first hash process and the second hash process are different; and storing the hash table to a 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 an input video having a sequence of video frames, the instructions when executed causing a processor to perform steps comprising:
-
identifying a plurality of discontinuities in features of audio-visual content of the input video, wherein the sequence of video frames includes frames associated with one or more associated discontinuities and frames not associated with discontinuities; generating an encoded data representation representing the sequence of video frames, wherein the frames associated with the one or more associated discontinuities are represented by first values in the encoded data representation, and wherein frames not associated with the discontinuities are represented by second values in the encoded data representation, the second values different than the first values, and wherein the first values and the second values are arranged in a sequence in the encoded data representation corresponding to the sequence of video frames; segmenting, by the computer system, the encoded data representation; generating a plurality of fingerprints, each fingerprint comprising an encoded data segment corresponding to a segment of the input video; indexing the plurality of fingerprints by; generating a signature for a fingerprint of the plurality of fingerprints according to a first hash process; and dividing the signature into a plurality of signature blocks, each signature block stored in a hash table according to a second hash process, wherein the first hash process and the second hash process are different; and storing the hash table to a computer readable storage medium. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A system for fingerprinting an input video having a sequence of video frames, the system comprising:
-
a non-transitory computer-readable medium storing executable instructions; and a processor configured to execute the instructions to perform steps comprising; identifying a plurality of discontinuities in features of audio-visual content of the input video, wherein the sequence of video frames includes frames associated with one or more associated discontinuities and frames not associated with discontinuities; generating an encoded data representation representing the sequence of video frames, wherein the frames associated with the one or more associated discontinuities are represented by first values in the encoded data representation, and wherein frames not associated with the discontinuities are represented by second values in the encoded data representation, the second values different than the first values, and wherein the first values and the second values are arranged in a sequence in the encoded data representation corresponding to the sequence of video frames; segmenting, by the computer system, the encoded data representation; generating a plurality of fingerprints, each fingerprint comprising an encoded data segment corresponding to a segment of the input video; indexing the plurality of fingerprints by; generating a signature for a fingerprint of the plurality of fingerprints according to a first hash process; and dividing the signature into a plurality of signature blocks, each signature block stored in a hash table according to a second hash process, wherein the first hash process and the second hash process are different; and storing the hash table to a computer readable storage medium.
-
Specification