1. Field of the Invention
The present invention relates to a method and system for identifying and tracking media contents, including Video DNA (VNDA) fingerprints ingestion from media contents, VDNA hash-based query from index engine and multi-dimensional content identification in query engine. Specifically, the present invention relates to facilitating accurately and fast identification of media contents.
2. Description of the Related Art
Media contents sharing on the Internet has been through a tremendous boost in recent years, websites hosting video contents are becoming so popular that they even take over a very large proportion of the Internet traffic. Present online media contents are easily accessible via different terminals, from personal computers, tablets, mobile devices etc, and different channels such as online video websites which are authorized by content owners, UGC (User Generated Content) websites, P2P (Point-to-Point) networks and so on.
Some of the distinct characteristics of online media contents include a) massive distribution amount, b) multiple content sources, c) high speed propagation over the whole network, and d) rapid updates of the contents, which make it a tough challenge for content owners attempting to protect and track the usage of their contents on the Internet. Although it is a trend that content owners apply Internet and online media sites or terminals as one of their content distribution channels, there are a number of issues they concern which have no significant solutions by conventional methods as in traditional video content distribution channels. Such issues that content owners concern include:
On the top of the above said issues, illegal copies of video contents are seen mostly on UGC websites and P2P networks. UGC websites are protected by safe harbor of the DMCA (Digital Millennium Copyright Act), in order to protect video contents, content owners are required to discover illegal contents presented on UGC websites and post take down notices.
Conventional method of searching and discovering video content copies includes:
There are several disadvantages about this method:
Although there are some means to help to improve the disadvantages mentioned above, yet most of them require human operations intervened, for example to increase the accuracy of video identification from the text based search results, they are required to manually check the contents of the video, which determines that such methods are not scalable, let alone to optimize with limited resources to handle massive amount of information on the Internet.
Ways to automatically identify and track the video contents is hence desirable, so that no or few human operations are involved in the whole process. With the help of a mature media fingerprinting technology, given required content and metadata from content owners, the system is able to identify any number or format of media contents.
An object of the invention is to overcome at least some of the drawbacks relating to the prior arts as mentioned above.
An object of the present invention is to automatically identify media contents, by using VDNA fingerprints and combination of multiple optimization techniques, it is possible to match input media content with the registered content in a fast and accurate way. The present invention comprises steps of ingesting VDNA fingerprints from input media contents, quick hash-based query across VDNA registered index engine, and performing multi-dimensional content identification in query engines to obtain best matched results of the input media content.
Conventional fingerprinting belongs to the so-called watermarking method or non-content based method (such as enforcement data, protection code, etc which are added into the content), where arbitrary information (or called fingerprint to some extend) is hidden into the original content. In watermarking, the “Watermark” (also called “fingerprint”) is the additional information to be inserted into the image/video/audio content and it is independent of the image/video/audio content. However in the present invention, the fingerprint is deterministically extracted based on the content.
The ingestion of fingerprints out from media contents takes advantage of the high speed processing of the computers to ingest characteristic values of each frame of image and audio from media contents, as is called “VDNA or Video DNA”, which are registered in VDDB (video DNA database) for reference and query. Such process is similar to collecting and recording human fingerprints. One of the remarkable uses of VDNA technology is to rapidly and accurately identify media contents, so that to protect copyright contents from being illegally used on the Internet.
Due to the fact that VDNA technology is entirely based on the media content itself, which means in between media content and generated VDNA, there is an one-to-one mapping relationship. Compared to the conventional method of using digital watermark technology to identify video contents, VDNA technology does not require to pre-process the media content to embed watermark information. VDNA technology greatly adapts the characteristics of current online media contents: massive distribution amount, multiple content sources, high speed propagation over the whole network, and rapid updates of the contents, making it much easier and more effective for content owners to track their registered contents over the Internet.
Based on statistical research on the matching rates of key frames between input media contents and master media contents, it can be concluded that given only a set of sampled fingerprints ingested from the input media content, it is highly possible to get a list of candidate matched master content ranked by hit-rate of similarity, if all master media contents are fingerprinted and indexed beforehand. This is the optimization idea behind index servers. Using index server to pre-process the input media content can save a lot of processing efforts by rapidly generating best matched media candidate list instead of thoroughly comparing every master media contents in detail at the first place.
The basic building block of VDNA fingerprint identification algorithm is calculation and comparison of Hamming Distance of fingerprints between input and master media contents. A score will be given after comparing input media content with each of top ranked media contents outputted by index server. A learning-capable mechanism will then help to decide whether or not the input media content is identified with reference to the identification score, media metadata, and identification history.
In order to optimize the speed and accuracy of content identification, some methods are applied also in this process, such as using triangle principle to predict some special matching scenarios, and adding timeline information or other dimensional information to improve content matching accuracy.
In summary, the present invention takes advantage of the properties of computers: high speed, automatic, huge capacity and persistent, and identifies input media contents from registered media contents which makes it possible for content owners to automatically, accurately and rapidly protect registered media contents online.
In other aspect, the present invention also provides a system and a set of methods with features and advantages corresponding to those discussed above.
All these and other introductions of the present invention will become much clear when the drawings as well as the detailed descriptions are taken into consideration.
For the full understanding of the nature of the present invention, reference should be made to the following detailed descriptions with the accompanying drawings in which:
Like reference numerals refer to like parts throughout the several views of the drawings.
The present invention now will be described more fully hereinafter with reference to the accompanying drawings, in which some examples of the embodiments of the present inventions are shown. Indeed, these inventions may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided by way of example so that this disclosure will satisfy applicable legal requirements. Like numbers refer to like elements throughout.
Conventional fingerprinting belongs to the so-called watermarking method or non-content based method (such as enforcement data, protection code, etc which are added into the content), where arbitrary information (or called fingerprint to some extend) is hidden into the original content. In watermarking, the “Watermark” (also called “fingerprint”) is the additional information to be inserted into the image/video/audio content and it is independent of the image/video/audio content. However in the present invention, the fingerprint is deterministically extracted based on the content.
The interface accepts media content query requests, which comes along with ingested VDNA fingerprints of the input media content. The input media contents can be of any format of audio, video or image contents, which will be processed by dedicated VDNA ingestion tool, so that a set of VDNA fingerprints are ingested from the contents. The VDNA ingestion algorithm can be various and different. Take image content as an example, the ingestion algorithm can be as simple as the following a) divide the input image into certain amount of equal sized squares, b) compute average value of the RGB (red, green, blue) values from each pixel in each square, c) in this case the VDNA fingerprint of this image is the 2 dimensional vector of the values from all divided squares. The smaller a square is divided, the more accurate the fingerprint can achieve, yet at the same time it will consume more storage. In more complex version of the VDNA ingestion algorithm, other factors such as brightness, alpha value of the image, image rotation, clipping or flipping of the screen, or even audio fingerprint values will be considered.
The interface component is also equipped with a database of metadata information (102-1) of all registered media contents. When providing content query requests, the users can also provide metadata of the input media content, and the interface can perform first stage simple filtration based on the provided metadata, such as media type, etc.
Component 103 represents the index engine of the system, although drawn in
Component 104 is the query engine, which performs VDNA fingerprint level match between each one of VDNA fingerprints ingested from input media content and all VDNA fingerprints of every candidate media content output from index engine. There are also scalability requirements for the design of query engine as the same index engine, because the number of registered media contents by content owner may vary in different magnitude, the amount of registered VDNA fingerprints can be massive. In such condition, distributed query engines are also required to enforce computing capability of the system.
The basic building block of VDNA fingerprint identification algorithm is calculation and comparison of Hamming Distance of fingerprints between input and master media contents. A score will be given after comparing input media content with each of top ranked media contents outputted by index server. A learning-capable mechanism will then help to decide whether or not the input media content is identified with reference to the identification score, media metadata, and identification history.
In order to optimize the speed and accuracy of content identification, some methods are applied also in this process, such as using triangle principle to predict some special matching scenarios, and adding timeline information or other dimensional information to improve content matching accuracy. Such optimization techniques will be introduced later.
Block 202-1 and 202-2 are the symbols of the indexing process of the engine. Items on the row of 202-1 represent the hashed samples of the input content fingerprints, which are indexed and hit with some items in the database of registered VDNA fingerprints. The hit result is shown in row 202-2, where there may be some overlapping hits on the same sample. The hit results are then calculated so that every hit media content has a score representing the hit rate. The first certain number of the best scored media contents or the media contents with score higher than a certain rate will be listed in order by score and output as a candidate match contents for later process.
Blocks 302-1, 302-2 and 302-3 demonstrate the Hamming Distance comparison process between a sample master VDNA fingerprint and a sample VDNA fingerprint from input media content. The result of the whole comparison process is illustrated in 303, where the media content with highest score is considered to be a most possible match. To this point, the input media content can be successfully identified.
There are some other methods to optimize the speed and accuracy of the identification process. One of them is using triangle principle on Hamming Distance to save a lot of time and efforts without calculating Hamming Distance between the sample fingerprint and a master fingerprint which can be predicted being in low score.
Another method to greatly improve accuracy of identification is adding information on other dimensions such as timeline, or other detail of images in the matching process, as illustrated in
|d(M2,S)|<=|d(M1,S)|+|d(M1,M2)|
During query processing, sample VDNA fingerprint is to compare with multiple candidates of master VDNA fingerprints. Each distance |d(M−n, S)| calculated by comparing each said pair of VDNA fingerprints is used to determine the result of query. If distance |d(M−n, S)| is below a certain threshold, master VDNA fingerprint M−n is considered matching sample VDNA fingerprint S.
However, due to compact design of VDNA fingerprint and algorithm complexity, VDNA fingerprint compare is a time consuming calculation. Triangle Principle is applied in query engines to optimize this process. According to Triangle Principle, if the distance sum of |d(M1, S)| and |d(M1, M−n)| is less than a threshold, distance |d(M−n, S)| can also be concluded less than said threshold, meaning master VDNA fingerprint M−n matches sample VDNA fingerprint S. Moreover, distances between master VDNA fingerprints M1 and M2 . . . M−n can be pre-calculated once and stored in the system, to eliminate the time cost during query process. Therefore in the time of query, the only necessary calculation between VDNA fingerprints is to determine distance between master VDNA fingerprint M1 and sample VDNA fingerprint S. With the resulting distance |d(M1, S)| from said calculation, it is considerably faster to deduce matching results between sample VDNA fingerprint S and other candidate master VDNA fingerprints M2, M3, . . . M−n. Applying Triangle Principle in query process is able to tremendously boost performance of the query engines.
Formula |d(M−n, S)|>=∥d(M1,M−n)|−|d(M1,S)∥ can be deduced from the Triangle Principle. Said formula explains that if the absolute value of the difference between the 2 distances |d(M1,M−n)| and |d(M1,S)| is equal or greater than a threshold, then the distance |d(M−n, S)| calculated between master VDNA fingerprint M−n and sample VDNA fingerprint S must be equal or greater than said threshold, which means master VDNA fingerprint M−n does not match sample VDNA fingerprint S.
The aforementioned applications of Triangle Principle can also be extended to apply in index search, where M2, M3 . . . M−n can be all registered master VDNA fingerprints, instead of the list of candidates output from index search. Using the illustrated VDNA fingerprint compare method, it is able to implement quick filtering on mass quantity of master VDNA fingerprints, so as to generate a more accurate and broader coverage candidate list.
In implementation, M1 may or may not be a VDNA fingerprint extracted from an actual master content, it can be constructed based on calculation of actual master VDNA fingerprint set, so as to improve performance of the algorithm using Triangle Principle. For instance, if the thresholds for bin1 are thr1 and thr2, it is a reasonable attempt to construct a VDNA fingerprint M1 so that as many as other master VDNA fingerprints can fit in this category that their distances to M1 are within thresholds thr1 and thr2.
In addition, the fingerprints M1, M2 . . . M−n should be extracted from timely equal master clips, instead of the entire master content. That is, if the length of each timely equal master clip is defined as 10 seconds, then a 10-minute master video is to be disassembled to 60 master clips, which in turn are extracted to master VDNA fingerprints M1, M2 . . . M60.
In conclusion, a Video DNA (VDNA) method and system for multi-dimensional content matching include:
A Video DNA (VDNA) method for identifying and matching content characteristics comprises ingesting the aforementioned VDNA fingerprints from input media contents and quick hash-based query across the aforementioned VDNA registered index engine, and identifying contents in query engines by using triangle principle to obtain best matched results of the aforementioned input media content.
The triangle principle is utilized for VDNA fingerprint comparison of the content identification comprising:
Optimization method of pre-calculated distances among the master VDNA fingerprints in actual implementation comprising:
The triangle principle can also be extended to index search, wherein the M2, M3 . . . M−n can be all registered the master VDNA fingerprints, instead of the list of candidates output from the index search.
The aforementioned input media contents can be any format of audio, video or image contents, which have characteristics matchable by algorithms based on Hamming Distance.
The aforementioned index engines are a set of database engines wherein processed aforementioned VDNA fingerprints of all registered media contents are stored as keys in database table entities.
The aforementioned index engine can be a set of distributed engines which stores hashed aforementioned VDNA fingerprints of all the aforementioned registered media contents.
The aforementioned index engine can be a set of distributed engines which are scalable and extensible as presented in volumes of the aforementioned registered media contents.
A set of samples of the aforementioned VDNA fingerprints ingested from the aforementioned input media content will be processed using hash functions to quickly match with the aforementioned keys registered in the aforementioned index engine, and the result of process will be a list of matched candidate contents ranked by matching rate with the aforementioned input media content.
The aforementioned query engine performs thorough content identification on the aforementioned VDNA fingerprints level to match the aforementioned input media content with the top ranked candidates listed by the aforementioned index engine.
The aforementioned query engine uses triangle principle to greatly increase the speed of the aforementioned content identification.
The aforementioned query engine can be a set of distributed engines which stores the aforementioned VDNA fingerprints of all the aforementioned registered media contents.
The aforementioned query engine can be a set of distributed engines which are scalable and extensible as presented in volumes of the aforementioned registered media contents.
A Video DNA (VDNA) method for identifying and matching content characteristics comprises ingesting the aforementioned VDNA fingerprints from input media contents and quick hash-based query across the aforementioned VDNA registered index engine, and performing multi-dimensional content identification in query engines to obtain best matched results of the aforementioned input media content.
The aforementioned multi-dimensional content identification means to apply information other than content fingerprints to increase speed and accuracy of the aforementioned identification.
The aforementioned multi-dimensional content identification considers media content timeline as an additional dimension to increase speed and accuracy of the aforementioned identification.
The aforementioned multi-dimensional content identification considers images and audio respectively inside a video clip as different dimensions to increase speed and accuracy of the aforementioned identification.
The aforementioned matched result can contain metadata of the matched content such as title etc, the offset of the input content as to the original registered media content, and quality of the input content, for example HD/DVD quality, VHS quality or camera quality.
With the help of identifying not only media content frame fingerprints but also the aforementioned content timeline, the aforementioned method enables identification of the aforementioned input media contents which are incomplete, modified or in various playback speeds.
A Video DNA (VDNA) system called VDDB (video DNA database) for identifying and matching content characteristics comprises subsystem ingesting the aforementioned VDNA fingerprints from input media contents and quick hash-based query across the aforementioned VDNA registered index engine, and subsystem performing multi-dimensional content identification in query engines to obtain best matched results of the aforementioned input media content.
The aforementioned VDDB comprises an interface which accepts the aforementioned VDNA fingerprints and metadata information of the aforementioned input media contents.
The aforementioned VDDB comprises distributed index servers which processes the aforementioned sampled VDNA fingerprints of the aforementioned input media content using hash functions to quickly match with the aforementioned fingerprints of master media contents registered in the aforementioned index engine, and the result of process will be a list of matched candidate contents ranked by matching rate with the aforementioned input media content.
The aforementioned VDDB comprises the aforementioned distributed query engines which performs the aforementioned complete VDNA query on each one of the top ranked candidates by using Hamming Distance as core algorithm, and timeline information to improve the aforementioned content identification speed and accuracy.
The method and system of the present invention are based on the proprietary architecture of the aforementioned VDNA® and VDDB® platforms, developed by Vobile, Inc, Santa Clara, Calif.
The method and system of the present invention are not meant to be limited to the aforementioned experiment, and the subsequent specific description utilization and explanation of certain characteristics previously recited as being characteristics of this experiment are not intended to be limited to such techniques.
Many modifications and other embodiments of the present invention set forth herein will come to mind to one ordinary skilled in the art to which the present invention pertains having the benefit of the teachings presented in the foregoing descriptions. Therefore, it is to be understood that the present invention is not to be limited to the specific examples of the embodiments disclosed and that modifications, variations, changes and other embodiments are intended to be included within the scope of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.
The present application is a continuation-in-part of U.S. application Ser. No. 13/118,516, filed May 30, 2011, entitled “VIDEO DNA (VDNA) METHOD AND SYSTEM FOR MULTI-DIMENSIONAL CONTENT MATCHING” and which is incorporated herein by reference and for all purposes.
Number | Date | Country | |
---|---|---|---|
Parent | 13118516 | May 2011 | US |
Child | 14722653 | US |