JP7116786B2 - 自動コンテンツ認識によるコールドマッチング - Google Patents

自動コンテンツ認識によるコールドマッチング Download PDF

Info

Publication number
JP7116786B2
JP7116786B2 JP2020515170A JP2020515170A JP7116786B2 JP 7116786 B2 JP7116786 B2 JP 7116786B2 JP 2020515170 A JP2020515170 A JP 2020515170A JP 2020515170 A JP2020515170 A JP 2020515170A JP 7116786 B2 JP7116786 B2 JP 7116786B2
Authority
JP
Japan
Prior art keywords
broadcast
media device
fingerprint
media
frame
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020515170A
Other languages
English (en)
Other versions
JP2020533918A (ja
Inventor
ジュイクン チェン
Original Assignee
ロク インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ロク インコーポレイテッド filed Critical ロク インコーポレイテッド
Publication of JP2020533918A publication Critical patent/JP2020533918A/ja
Application granted granted Critical
Publication of JP7116786B2 publication Critical patent/JP7116786B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/217Database tuning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • H04N21/4316Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations for displaying supplemental content in a region of the screen, e.g. an advertisement in a separate window
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44213Monitoring of end-user related data
    • H04N21/44222Analytics of user selections, e.g. selection of programs or purchase activity
    • H04N21/44224Monitoring of user activity on external systems, e.g. Internet browsing
    • H04N21/44226Monitoring of user activity on external systems, e.g. Internet browsing on social networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/466Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/4667Processing of monitored end-user data, e.g. trend analysis based on the log file of viewer selections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/812Monomedia components thereof involving advertisement data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8455Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Social Psychology (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Description

本開示は、自動コンテンツ認識に関し、具体的には、自動コンテンツ認識によるコールドマッチングに関する。
今日ではメディア装置がますます一般的になってきており、テレビなどの家庭内に欠かせないものからメディアの消費者と共に移動するモバイル装置にまで及ぶことができる。テレビ、セットトップボックス、携帯電話機、ラップトップ及びタブレットなどのメディア装置は、様々なソースからのメディアコンテンツにアクセスしてこれらを検索することができる。例えば、メディア装置は、衛星、無線放送、或いは有線又は無線接続からのストリーミングシステムを介してメディアコンテンツを受け取ることができる。メディア装置の使用が増加し続けるにつれ、メディア装置がメディアコンテンツに接続することも増えた。この増加とともに新たなメディアコンテンツ市場が出現し、古いメディアコンテンツ市場は、メディア消費者とコンテキスト的に関連するメディアコンテンツを理解して提供するように適応してきた。
本開示の1つの態様は、自動コンテンツ認識によるコールドマッチングのための方法を提供する。この方法は、データ処理ハードウェアにおいて、放送メディアストリームの放送フレームを示す放送フィンガープリントを受け取るステップを含む。方法は、データ処理ハードウェアにおいて、対応するメディア装置におけるメディア装置ストリームのメディア装置フレームを示すメディア装置フィンガープリントを受け取るステップも含む。方法は、データ処理ハードウェアが、メディア装置ストリームのシーケンシャルメディア装置フレームに対応する複数のメディア装置フィンガープリントを含む探索ブロックが、少なくとも1つの放送フィンガープリントとの一致相関を有する少なくとも1つのメディア装置フィンガープリントを含んでいると判定するステップをさらに含む。一致相関は、ピアソンの相関係数に基づく。方法は、データ処理ハードウェアが、少なくとも1つの放送フィンガープリントとの一致相関を有する少なくとも1つのメディア装置フィンガープリントを一致メディア装置フレームに対応するものとして識別するステップも含む。
本開示の実装は、以下の任意の特徴うちの1つ又は2つ以上を含むことができる。いくつかの実装では、方法が、複数の放送フィンガープリントとの一致相関を有する少なくとも1つのメディア装置フィンガープリントを探索ブロックが含んでいるかどうかをデータ処理ハードウェアが判定するステップを含む。複数の放送フィンガープリントとの一致相関を有する少なくとも1つのメディア装置フィンガープリントを探索ブロックが含んでいる場合、方法は、データ処理ハードウェアが、探索ブロックの少なくとも1つのメディア装置フィンガープリントに対応する、各放送フィンガープリントが放送メディアストリームのシーケンシャルに隣接する放送フレームの放送フィンガープリントである放送フィンガープリントセットを決定するステップと、データ処理ハードウェアが、一致相関を探索ブロックと放送フィンガープリントセットとの間のピアソンの相関係数として決定するステップとを含む。方法は、データ処理ハードウェアが、放送フィンガープリントセットの一致放送フィンガープリントとの間に最大のピアソンの相関係数を有する探索ブロックの少なくとも1つのメディア装置フィンガープリントのメディア装置フィンガープリントに対応するメディア装置フレームを一致メディア装置フレームとして決定するステップをさらに含む。
方法の様々な実装では、方法の各フィンガープリントが、対応するメディアストリームのフレームの少なくとも1つのピクセル値、対応するフレームのグレースケール値の合計を表す平均ピクセル値、又は対応するフレーム内のサブフレームの複数の平均ピクセル値を表す。いくつかの例では、対応するフレーム内のサブフレームの複数の平均ピクセル値を表す各フィンガープリントが、対応するフレームの4×4配列を定める16個のサブフレームの各平均ピクセル値に対応する16個の整数ベクトルとして表される。
方法のいくつかの実装では、放送フレームが放送メディアコンテンツの第1の期間に対応し、メディア装置フレームがメディア装置コンテンツの第2の期間に対応する。第1の期間は、第2の期間よりも長い。方法は、データ処理ハードウェアが、一致メディア装置フレームを、フレーム番号及び関連する放送チャンネルを含むフレームデータに関連付けるステップをさらに含む。方法は、少なくとも1つの放送フィンガープリントとの一致相関を有する少なくとも1つのメディア装置フィンガープリントを探索ブロックが含んでいる場合、データ処理ハードウェアが、探索ブロックと複数の放送フィンガープリントによって定められるデータベース構造とを比較するステップをさらに含むことができる。データベース構造は、二分探索木である。
本開示の別の態様は、自動コンテンツ認識によるコールドマッチングのためのシステムを提供する。このシステムは、データ処理ハードウェアと、データ処理ハードウェアと通信するメモリハードウェアとを含む。メモリハードウェアは、データ処理ハードウェア上で実行された時にデータ処理ハードウェアに動作を実行させる命令を記憶する。これらの動作は、放送メディアストリームの放送フレームを示す放送フィンガープリントを受け取るステップと、対応するメディア装置におけるメディア装置ストリームのメディア装置フレームを示すメディア装置フィンガープリントを受け取るステップとを含む。動作は、メディア装置ストリームのシーケンシャルメディア装置フレームに対応する複数のメディア装置フィンガープリントを含む探索ブロックが、少なくとも1つの放送フィンガープリントとの一致相関を有する少なくとも1つのメディア装置フィンガープリントを含んでいると判定するステップも含む。一致相関は、ピアソンの相関係数に基づく。動作は、少なくとも1つの放送フィンガープリントとの一致相関を有する少なくとも1つのメディア装置フィンガープリントを一致メディア装置フレームに対応するものとして識別するステップをさらに含む。
いくつかの実装では、動作が、複数の放送フィンガープリントとの一致相関を有する少なくとも1つのメディア装置フィンガープリントを探索ブロックが含んでいるかどうかを判定するステップをさらに含む。複数の放送フィンガープリントとの一致相関を有する少なくとも1つのメディア装置フィンガープリントを探索ブロックが含んでいる場合、動作は、探索ブロックの少なくとも1つのメディア装置フィンガープリントに対応する、各放送フィンガープリントが放送メディアストリームのシーケンシャルに隣接する放送フレームの放送フィンガープリントである放送フィンガープリントセットを決定するステップと、一致相関を探索ブロックと放送フィンガープリントセットとの間のピアソンの相関係数として決定するステップとを含む。動作は、放送フィンガープリントセットの一致放送フィンガープリントとの間に最大のピアソンの相関係数を有する探索ブロックの少なくとも1つのメディア装置フィンガープリントのメディア装置フィンガープリントに対応するメディア装置フレームを一致メディア装置フレームとして決定するステップをさらに含む。
システムの様々な実装では、方法の各フィンガープリントが、対応するメディアストリームのフレームの少なくとも1つのピクセル値、対応するフレームのグレースケール値の合計を表す平均ピクセル値、又は対応するフレーム内のサブフレームの複数の平均ピクセル値を表す。いくつかの例では、対応するフレーム内のサブフレームの複数の平均ピクセル値を表す各フィンガープリントが、対応するフレームの4×4配列を定める16個のサブフレームの各平均ピクセル値に対応する16個の整数ベクトルとして表される。
システムは、放送メディアコンテンツの第1の期間に対応する放送フレームと、メディア装置コンテンツの第2の期間に対応するメディア装置フレームとを含むこともできる。第1の期間は、第2の期間よりも長い。いくつかの実装では、動作が、一致メディア装置フレームを、フレーム番号及び関連する放送チャンネルを含むフレームデータに関連付けるステップをさらに含む。
いくつかの例では、少なくとも1つの放送フィンガープリントとの一致相関を有する少なくとも1つのメディア装置フィンガープリントを探索ブロックが含んでいる場合、動作が、探索ブロックと複数の放送フィンガープリントによって定義されるデータベース構造とを比較するステップをさらに含み、データベース構造は二分探索木である。
添付図面及び以下の説明に、本開示の1又は2以上の実装の詳細を示す。これらの説明及び図面、並びに特許請求の範囲からは、他の態様、特徴及び利点も明らかになるであろう。
自動コンテンツ認識環境例の概略図である。 自動コンテンツ認識環境例の概略図である。 自動コンテンツ認識環境のサーバ例の概略図である。 メディア装置に対応する照合器例の透視図である。 メディア装置に対応する照合器例の透視図である。 メディア装置に対応する照合器例の透視図である。 自動コンテンツ認識ルーチンが実行できる動作構成例のフロー図である。 本明細書で説明するシステム及び方法を実装するために使用できるコンピュータ装置例の概略図である。
様々な図面における同じ参照記号は同じ要素を表す。
一般に、自動コンテンツ認識(ACR)は、メディア装置上又はメディアファイル内のメディアコンテンツを識別する自動プロセスである。ACRは、日々社会によって消費される大量のメディアコンテンツを識別するためにますます有用になってきている。商業的視点から見れば、企業及びその他のエンティティは、ACRによってメディアコンテンツの消費を理解し、場合によってはメディアコンテンツの消費者(すなわち、メディア装置ユーザ)のマーケティング又はターゲッティングをさらに効率的に行うことができる。例えば、メディア装置のユーザに対して広告が個別化されれば、広告又は提案がさらに効果的になる可能性がある。従って、放送局、商用プロバイダ、広告主及びその他のコンテンツエンティティは、どの番組が視聴されているか、或いはさらに具体的には視聴中に番組内のどこにユーザが存在するかを知りたいと望んでいる。メディア装置ユーザは、この種の情報によってさらに正確に対象化されたメディアコンテンツを受け取ることができる。
図1Aは、ACR環境10の例である。ACR環境10は、メディア装置30のユーザ20(すなわち、視聴者)にメディアコンテンツを配信するための複数の層を含むことができる。図1Aでは、メディアコンテンツ配信プロセスを放送層100、追加コンテンツ層110、ネットワーク層120及び装置層130という4つの層に単純化するように試みている。各層100、110、120、130は、メディアストリームSに影響を与えるエンティティを有することができる。放送層100は、放送メディアストリームSBの生成に関与し得る放送エンティティを表す。これらの放送エンティティは、放送局102及び放送配信業者104を含むことができる。放送局102は、地方放送局、多チャンネルネットワーク又はその他のメディアコンテンツ所有者などの、1又は2以上のメディアコンテンツプロバイダとすることができる。放送配信業者104は、メディアコンテンツを配信するためのインフラ又はリソース(例えば、信号線、通信タワー、通信アンテナ、サーバなど)を提供する放送エンティティである。放送局102及び放送配信業者104は、提供されるメディアコンテンツのタイプ又はメディアコンテンツを受け取るメディア装置のタイプなどの放送変数(broadcasting variables)に応じて、同じ放送エンティティ又は異なる放送エンティティとすることができる。
いくつかの実装では、放送メディアストリームSBが、追加コンテンツ層110として表すコンテンツエンティティからの追加メディアコンテンツSCを含む。これらのコンテンツエンティティは、商用プロバイダ112、広告主114、又は放送メディアストリームSBに追加メディアコンテンツSCを提供するその他のエンティティを含む。一般に、商用プロバイダ112は、追加メディアコンテンツSCを作成及び/又はホストするコンテンツエンティティであるのに対し、広告主114は、広告、提案、取引、割引、利益又はその他の商品及び/又はサービスプロモーションなどのコンテンツを含む追加メディアコンテンツSCを生成するコンテンツエンティティである。これに加えて、又はこれとは別に、商用プロバイダ112及び広告主114は、同じコンテンツエンティティとすることもできる。追加コンテンツ層110は、放送層100、ネットワーク層120、装置層130、又はこれらの任意の組み合わせに追加メディアコンテンツSCを伝えることができる。任意に、追加コンテンツ層110は、追加メディアコンテンツSCと放送メディアストリームSBとを一組にして、追加メディアコンテンツSCを含む複合放送メディアストリームSB、SCを形成することもできる。
さらに図1Aを参照すると、ネットワーク層120は、放送層110及び/又は追加コンテンツ層110から放送メディアストリームSB及び追加メディアコンテンツSCを受け取るように構成される。例えば、ネットワーク層120は、放送層100からメディアストリームSを受け取る場合、追加メディアコンテンツSCを含む放送メディアストリームSB、又は追加メディアコンテンツSCから独立した放送メディアストリームSBを受け取ることができる。同様に、ネットワーク層120は、追加コンテンツ層110からメディアストリームSを受け取る場合、追加メディアコンテンツSCを含む放送メディアストリームSB、又は追加メディアコンテンツSCから独立した放送メディアストリームSBを受け取ることができる。いくつかの実装では、ネットワーク層120が、放送層100からの放送メディアストリームSBと追加コンテンツ層110からの追加メディアコンテンツSCとを一組にして、追加メディアコンテンツSCで満たされた放送メディアストリームSBを表すネットワークメディアストリームSNを生成することができる。
ネットワーク層120は、フィンガープリンタ200を含む。フィンガープリンタ200は、データ処理ハードウェア212とメモリハードウェア214とを有するサーバ210上で動作するように構成される。フィンガープリンタ200は、放送フィンガープリント生成器220を含む。ネットワーク層120は、フィンガープリント222とフィンガープリント222に関連するメタデータ224とをフィンガープリントデータベース230及び/又はメタデータデータベース240に記憶するように構成することができる。一般に、フィンガープリント222は、メディアストリームSの少なくとも1つのフレームFnに対応する少なくとも1つの一意的な識別子である。例えば、この少なくとも1つの一意的な識別子は、値(例えば、ピクセル値)、英数字表現、又はオーディオビジュアル画像の圧縮版とすることができる。これに加えて、又はこれとは別に、ネットワーク層120は、放送メディアストリームSB、追加メディアコンテンツSC、又はこれらの両方を記憶するようにも構成される。
図1Aには、あらゆる層(すなわち、放送層100、追加コンテンツ層110、又はネットワーク層120)が装置層130と通信できることも示す。装置層130では、テレビ、PC、ラップトップ、タブレット又は携帯電話機などのメディア装置130がメディア装置ストリームSD(例えば、放送メディアストリームSB、追加コンテンツストリームSC又はネットワークメディアストリームSNの任意の組み合わせ)を受け取り、対応するメディア装置ストリームSD(例えば、放送メディアストリームSB、追加コンテンツストリームSC又はネットワークメディアストリームSNの任意の組み合わせ)の全部又は一部をユーザ20に伝えることができる。装置は、何らかの形のメディアコンテンツを受信又は通信するように構成された、メディア装置30に関連するあらゆるハードウェア又はあらゆるソフトウェアを意味することができる。さらに、装置は、データ処理ハードウェア及び/又はメモリハードウェアを含むことができる。いくつかの実装では、メディア装置30を、対応するメディアストリーム(例えば、放送メディアストリームSB、追加コンテンツストリームSC又はネットワークメディアストリームSNの任意の組み合わせ)を解釈し、又はこのようなメディアストリームと相互作用するように構成することができる。例えば、メディア装置30は、放送メディアストリームSBからの追加メディアコンテンツSCを識別する。メディア装置30は、放送メディアストリームSBの追加メディアコンテンツSBを代替メディアコンテンツに置き換え、又は放送メディアストリームSBの追加メディアコンテンツSBに代替メディアコンテンツを重ね合わせることができる。メディア装置30は、放送メディアストリームSB、SCを所定のコンテンツについてフィルタ処理することができる。これに加えて、又はこれとは別に、メディア装置30は、メディアストリーム(例えば、放送メディアストリームSB、追加コンテンツストリームSC又はネットワークメディアストリームSNの任意の組み合わせ)に関連する情報又はデータを、放送層100、追加コンテンツ層110、ネットワーク層120、又は装置層130の他のメディア装置30に通信するように構成することもできる。メディア装置30は、ACRモジュール132を実行し、又はACRモジュール132を実行する他のデータ処理ハードウェアと通信することができる。ACRモジュール132は、メディアストリームの一部をサンプリングし、サンプルを処理し、このサンプルを、オーディオ又はビデオフィンガープリント又はウォーターマークなどの一意的な特徴によってコンテンツを識別するソースサービスと比較することに基づいて、メディアストリーム内のコンテンツ要素(例えば、オーディオ、ビデオ又はデジタル画像)を識別するように構成することができる。
図1Bは、ACR環境10の例である。ACR環境10は、放送局102と、フィンガープリンタ200と、(ACRモジュール132の一部とすることができる)照合器300とを含む。放送局102は、放送メディアストリームSB、SCをチャンネルCh1~nによって放送フレームレートRBでフィンガープリンタ200に送信する。放送フレームレートRBは、放送メディアストリームSB、SCを放送フレームF1~nに分割し、各放送フレームF1~nは、放送メディアストリームSB内のピクセルによって表されるオーディオビジュアル画像に対応する。フィンガープリンタ200は、各放送フレームF1~nを放送フィンガープリント生成器220において受け取るように構成される。放送フィンガープリント生成器220は、各放送フレームF1~nを受け取り、各放送フレームF1~nを示す放送フィンガープリント222、222aを生成するように構成される。一般に、放送フィンガープリント222、222aは、少なくとも1つの放送フレームF1~nに対応する少なくとも1つの一意的な識別子である。フィンガープリンタ200は、各放送フィンガープリント222、222aをフィンガープリントデータベース230などのデータベースに記憶することができる。いくつかの例では、フィンガープリンタ200が、フレーム位置(例えば、フレーム時間コード)、フレームタイプ(例えば、生番組又は広告)又はフィンガープリント識別子タグなどの、放送フレームF1~nに対応するメタデータ224に従って又はメタデータ224と共に各放送フィンガープリント222、222aを記憶する。他の例では、フィンガープリンタ200が、各放送フィンガープリント222、222aのメタデータ224に対応する1又は複数の個別のデータベースを有する。フィンガープリンタ200は、メタデータ224のための個別のデータベースによってより多くの放送フィンガープリント222、222aを記憶することができる。
さらに図1Bを参照すると、放送局102は、放送メディアストリームSB、SCをメディア装置30にも送信する。メディア装置30は、放送局102からの放送メディアストリームSB、SCをメディア装置ストリームSDとして受け取る。メディア装置30は、メディア装置ストリームSBからメディアフレームFD1~nを取り込み、取り込んだメディアフレームFD1~nを照合器300に伝えるように構成される。図1Bに示す例では、メディア装置30が、メディア装置ストリームSDを受け取るテレビ30、30a(TV)である。例えば、テレビ30、30aは、テレビチャンネルCh1~nをメディア装置ストリームSDとして受け取る。他のタイプのメディア装置30も可能である。
いくつかの実装では、放送局102が、放送メディアストリームSB、SCを放送フレームレートRBで提供する。(例えば、TV30、30aとして示す)メディア装置30は、放送メディアストリームSB、SCを対応する放送フレームレートRBでメディア装置ストリームSDとして受け取ることができる。多くの場合、放送フレームレートRBは、放送フォーマットの様々な業界標準(例えば、1080 60i、720 60Pなど)に対応する。例えば、いくつかの一般的な放送フレームレートRBとしては、30P(毎秒29.97フレーム)、24P(毎秒23.98フレーム)及び60P(毎秒59.94フレーム)が挙げられる。メディア装置30は、メディア装置ストリームSDのフレームFD1~nをメディア装置フレームレートRMDで取り込むように構成することができる。メディア装置フレームレートRMDとは、対応するメディア装置30が取り込んだフレームFD1~nを照合器300に提供するフレームレートのことである。いくつかの実装では、メディア装置30が、メディア装置ストリームSDを放送フレームレートRBで受け取るように構成されるが、メディア装置ストリームSDのフレームFD1~nについては照合器300のためのメディア装置フレームレートRMDで取り込むように構成される。例えば、放送フレームレートRBは、メディア装置フレームレートRMDとは異なる。この違いの一例では、放送フレームレートRBの方がメディア装置フレームレートRMDよりも大きい(例えば、放送フレームレートは30Pであり、メディア装置フレームレートは毎秒4フレームである)。フレームレートの違いは、メディア装置30におけるフレーム取り込みハードウェア又はソフトウェアに関連するリソース制約(例えば、CPU、メモリなど)に起因することもできる。
いくつかの例では、照合器300が、フィンガープリント結果セット232と、メディア装置ストリームSDからのメディア装置フレームFD1~nとを受け取る。フィンガープリント結果セット232は、フィンガープリンタ200において取り込まれて照合器300に伝えられる一連の放送フィンガープリント222、222aに対応する。フィンガープリント結果セット232の利点は、フィンガープリンタ200及び照合器300が、フィンガープリンタ200によって生成された全ての放送フィンガープリント222、222aではなく、その一部を伝えることができる点である。フィンガープリント結果セット232は、フィンガープリントデータベース230の放送フィンガープリント222、222aの一部として、照合器300が効率的に処理できるデータサイズとすることができる。照合器300は、メディア装置フレームFD1~nを放送フレームF1~nと比較して、一致するフレームFn、FDnを識別することができる。照合器300は、テレビ30、30aの内部装置(例えば、テレビ30、30aのハードウェア又はソフトウェア)とすることも、或いはテレビ30、30aと通信する外部装置(例えば、ヘッドエンドシステム又はセットトップボックス)とすることもできる。いくつかの実装では、フィンガープリント結果セット232が、一定量のシーケンシャル放送フィンガープリント(sequential broadcast fingerprints)222、222aに対応する。例えば、フィンガープリント結果セット232は、5分の放送フレームF1~nに対応するシーケンシャル放送フィンガープリント222、222aを含む。換言すれば、放送フレームレートRBが毎秒30フレームである場合、フィンガープリント結果セット232は、5分間にわたる9000個のシーケンシャル放送フレームF1-9000に対応する9000個のシーケンシャル放送フィンガープリント222、222aを含む。
図2は、フィンガープリンタ200の放送フィンガープリント生成器220の例である。放送フィンガープリント生成器220は、放送メディアストリームSB、SCのチャンネルCh1~nに対応する放送フレームF1~nを受け取る。放送フィンガープリント生成器220は、受け取った各放送フレームF1~nについて放送フィンガープリント222、222aを生成し、これらをフィンガープリントデータベース230に記憶することができる。いくつかの例では、各放送フィンガープリント222、222aが、対応する放送メディアストリームSBの放送フレームF1~nの少なくとも1つのピクセル値VPを表す。少なくとも1つのピクセル値VPは、放送フレームF1~nの平均ピクセル値又は色空間値の合計とすることができる。例えば、放送フィンガープリント生成器220がグレーUV(YUV)色空間に従って放送フィンガープリント222、222aを生成する場合、少なくとも1つのピクセル値VPは、対応する放送フレームF1~nのグレースケール値の合計及び/又は平均を表すことができる。換言すれば、対応する放送フレームF1~nの各ピクセルは、放送フィンガープリント222、222aがピクセル領域のグレースケール値の合計及び/又は平均を表すようにグレースケール値によって表される。いくつかの実装では、フィンガープリント222(例えば、放送フィンガープリント222、222a)が、対応する放送フレームF1~nのサブフレームFsubに基づく一意的な識別子である。各サブフレームFsubは、サブフレームFsub当たりのピクセルに応じて、対応するピクセル値VP又は対応する平均ピクセル値を有することができる。
一般に、フィンガープリント222は、ACR環境10内の不正確さの原因となり得る。この不正確さが生じる理由は、連続するメディア装置フレームFD1~nと連続する放送フレームF1~nとが非常に類似することにより、連続するフレームが、これらを大幅に変化させるシーン変化が生じない限り時間と共にわずかしか変化しないからである。通常は、連続するフレームFD1~n間の変化がほんのわずかであるため、1つ又は少数のピクセル値VPに基づくフィンガープリント222は、同じ数のピクセルに基づく連続するフィンガープリント222に非常に類似し得る。従って、ACR環境10におけるフィンガープリント222間の照合プロセスでは、潜在的照合エラー(例えば、偽一致)が生じることがある。換言すれば、たとえ実際にはユーザ20がメディア装置ストリームSDからのメディアコンテンツの一致メディア装置フレーム(match media device frame)FMDの前又は後のいくつかメディア装置フレームFD1~nを見ている場合でも、照合器300は、ユーザがメディア装置ストリームSDの1つのメディア装置フレームFD1~n(一致メディア装置フレームFMD)を見ていると判断してしまうことがある。
図2には、サブフレームFsubに分割された放送フレームF1~nに対応する放送フィンガープリント222a、F1~nの例も示す。いくつかの例では、放送フィンガープリント生成器220が、各放送フレームF1~nをサブフレームFsubに分割して、放送フレームF1~nをより正確に比較又は区別することができる。サブフレームFsubでは、各フィンガープリント222が、対応するフレームF1~nの複数の平均ピクセル値VPを表すことができる。各放送フレームF1~nをサブフレームFsubに分割することにより、放送フィンガープリント生成中に、放送フレームF1~n全体のピクセル値VP(又は平均ピクセル値)に基づく放送フィンガープリント222、222aよりも多くの詳細(例えば、各サブフレームFsubのピクセル)が考慮される。従って、放送フィンガープリント生成器220が各放送フレームF1~nを分割するサブフレームFsubの数は、望ましい精度レベルに依存する。例えば、図2に示すように、放送フィンガープリント生成器220は、各放送フレームF1~nを、4×4配列を定める16個のサブフレームFsubに分割する。16個のサブフレームFsubの各サブフレームFsubは、平均ピクセル値VP11~44を有し、各放送フィンガープリント222aは、各サブフレームFsubに関連する整数値を有する16個の値の整数ベクトルによって各対応する放送フレームF1~nを表すようになる。図には、各放送フレームF1~n又は各メディア装置フレームFD1~nを4×4配列として示しているが、あらゆるサブフレーム分割が可能である。
一般的に言えば、ACRは、コールドマッチング及びホットマッチングという2段階に分けることができる。通常、コールドマッチングは、ACRの第1段階(又は識別段階)を意味する。識別段階中、ACRは、ユーザ20が見ているチャンネル、及び現在ユーザ20がチャンネル内のどこを見ているかを識別する。ACRは、識別段階を完了すると、ユーザ20が見ているチャンネルの更新又は変更についてユーザ20のメディア装置ストリームSDをモニタする。一般に、ホットマッチングは、このACRの第2段階又はモニタリング段階を意味する。多くの場合、コールドマッチングはネットワーク層120と装置層130との間で実行され、ホットマッチングは装置層130において実行されるが、ACRハードウェア及び/又はソフトウェアに結合された層間の接続性によって、ACR環境10内の任意の層又はこれらの層の任意の組み合わせが、情報の通信及び記憶を行ってコールドマッチング及び/又はホットマッチングを実行できるようにすることができる。
図3A及び図3Bは、メディア装置30(例えば、テレビ30、30a)の照合器300の例である。照合器300は、メディア装置ストリームSDから取り込まれたメディア装置フレームFD1~nを受け取る。いくつかの構成では、照合器300が、取り込まれたメディア装置フレームFD1~nをシーケンシャルメディア装置フレームFD1~nのセットとして受け取る。照合器300は、メディア装置フレームFD1~nをメディア装置フレームレートRMDで受け取ることができる。メディア装置フレームレートRMDは、放送フレームレートRBと同様とすることも、又は放送フレームレートRBとは異なることもできる。これに加えて、又はこれとは別に、照合器300は、取り込まれたメディア装置フレームFD1~nを一様でない(例えば、一様なフレーム取り込みレートではない)形で受け取る。一例として、照合器300は、取り込まれたメディア装置フレームFD1~nを、要求時に又はメディア装置30との選択的な通信時に受け取る。他の例では、照合器300とメディア装置30との間のタイミング遅延又は通信ラグにより、取り込まれたメディア装置フレームFD1~nが照合器300において一様でない形で受け取られ、又は非シーケンシャルに取り込まれたメディア装置フレームFD1~nが受け取られる。
通常は、照合器300は、照合器フィンガープリント生成器310及び相関器320を含む。照合器フィンガープリント生成器310は、受け取ったメディア装置フレームFD1~nに基づいてメディア装置フィンガープリント222、222bを生成するように構成される。メディア装置フィンガープリント222、222bは、照合器300においてメディア装置30(例えば、テレビ30、30a)から受け取られた各メディア装置フレームFD1~nに対応するフィンガープリント222である。メディア装置フィンガープリント222、222bは、放送フィンガープリント222、222aに酷似した表現で各メディア装置フレームFD1~nを一意的な識別子として表すことができる。各メディア装置フィンガープリント222、222bは、各対応するメディア装置フレームFD1~nを、照合器300の相関器320が放送フィンガープリント222、222aをメディア装置フィンガープリント222、222bと比較できるような値又は一意的な識別子によって表す。例えば、照合器フィンガープリント生成器310は、対応するメディア装置ストリームSDのメディア装置フレームFD1~nの少なくとも1つのピクセル値VPを表すメディア装置フィンガープリント222、222bを生成することができる。少なくとも1つのピクセル値VPは、各メディア装置フレームFD1~nのサブフレームFsub(例えば、4×4配列を定める16個のサブフレームFsub)に対応することができ、従っていくつかの実装では、メディア装置フィンガープリント222、222bが各サブフレームFsubの少なくとも1つのピクセル値VPに対応する値のベクトルである。
さらに図3A及び図3Bを参照すると、照合器300は、フレームF及び/又はフレームFに対応するフィンガープリント222間の一致相関(match correlation)322を判定する相関器320を含む。いくつかの例では、相関器320が、少なくとも1つのメディア装置フィンガープリント222、222bと少なくとも1つの放送フィンガープリント222、222aとの間の一致相関322を判定する。相関器320が一致相関322を識別すると、照合器300は、一致相関322に対応する少なくとも1つのメディア装置フレームFD1~nを一致メディア装置フレームFMDとして識別する。例えば、相関器320が、少なくとも1つのメディア装置フィンガープリント222、222bを少なくとも1つの放送フィンガープリント222、222aとの一致相関322を有するものとして識別すると、照合器300は、この少なくとも1つのメディア装置フィンガープリント222、222bを一致メディア装置フレームFMDに対応するものとして識別する。照合器300は、一致メディア装置フレームFMDを、フレーム番号及び関連する放送チャンネルを含むメタデータ224(例えばフレームデータ)に関連付けることができる。例えば、照合器300は、一致相関322の少なくとも1つの放送フィンガープリント222、222aに対応するメタデータ224を受け取る。照合器300は、一致メディア装置フレームFMDを識別することによって、一致相関322の少なくとも1つの放送フィンガープリント222、222aに対応するメタデータ224を一致メディア装置フレームFMDに関連付ける。換言すれば、一致相関322は、一致相関322の少なくとも1つのメディア装置フィンガープリント222、222bに対応する少なくとも1つのメディア装置フレームFD1~nが、一致相関322の少なくとも1つの放送フィンガープリント222、222aに対応する少なくとも1つの放送フレームF1~nと同様又は同一のメタデータ224を有するべきであることを意味する。
一致相関322は、類似性(すなわち、関連性の強さ)を表す値である。いくつかの例では、一致相関322が統計的相関である。統計的相関は、一般にマイナス1から1までの範囲の2つの可変(すなわち、二変量)関係であり、ゼロは関係がないことを表し、負の値は反比例関係を表し、正の値は比例関係を表す。マイナス1から1までの範囲は関連性の強さを表すことができ、0に近い値は弱い相関を表し、1(すなわち、完全相関)に近い値は強い相関を表す。マイナス1から1までの範囲は、単純な統計的相関範囲を表すが、この範囲はシステム設計に応じて調整することができる。一致相関322は、一般に2つの変数の共分散を2つの変数の標準偏差の積によって除算したものであるピアソンの相関係数に基づくことが好ましい。一致相関322のためにはピアソンの相関係数が好ましいが、一致相関322はあらゆる相関係数に基づくことができる。他の統計的相関係数の例としては、ケンドールの順位相関又はスピアマンの相関が挙げられる。
いくつかの例では、相関器320が、探索ブロック324をコンパイルすることによって一致相関322を判定する。探索ブロック324は、少なくとも1つのメディア装置フィンガープリント222、222b、又は複数のメディア装置フィンガープリント222、222bを含むことができる。いくつかの例では、探索ブロック324のメディア装置フィンガープリント222、222bが、メディア装置ストリームSDから取り込まれたシーケンシャルメディア装置フレームFDn+1、FD1~nに対応する。相関器320は、照合器フィンガープリント生成器310から、或いは照合器300内の又は照合器300と通信するメディア装置フィンガープリント222、222bのデータベースから、探索ブロック324の少なくとも1つのメディア装置フィンガープリント222、222bを受け取る。
いくつかの実装では、相関器320が、探索ブロック324をフィンガープリントデータベース230に相関させることができる。しかしながら、これらの実装では、フィンガープリントデータベース230のサイズによってACRプロセスのリアルタイムの利点が減じてしまうことがある。従って、相関器320は、これらのリアルタイムの利点を減じる代わりに、フィンガープリント結果セット232の放送フィンガープリント222、222aに従って一致相関322を判定することができる。例えば、フィンガープリント結果セット232のシーケンシャル放送フレームF1~nは放送メディアストリームSBの第1の期間t1に対応し、探索ブロック324はメディア装置ストリームSDの第2の期間t2に対応し、第1の期間t1は第2の期間t2よりも長い。第1の期間t1が第2の期間t2よりも長いことにより、このACR環境10では、照合器300がリアルタイムな処理速度を維持しながら、少なくとも1つの放送フィンガープリント222、222aとの一致相関322を有する少なくとも1つのメディア装置フィンガープリント222、222bを確実に識別することができる。
いくつかの構成では、探索ブロック324が、メディア装置30(例えば、テレビ30、30a)において取り込まれた最新のメディア装置フレームFD1~nに対応する最新のメディア装置フィンガープリント222、222bRを、少なくとも1つのメディア装置フィンガープリント222、222bとして含む。探索ブロック324に最新のメディア装置フィンガープリント222、222bRを含めることにより、照合器300は、ユーザ20が見ているメディアコンテンツとの同時性が最も高いフレームデータ(例えば、メタデータ224)を特定することができる。換言すれば、照合器300は、一致相関322の少なくとも1つの放送フィンガープリント222、222aに対応するメタデータ224を、一致相関322の最新のメディア装置フィンガープリント222、222bに対応する少なくとも1つのメディア装置フレームに関連付けることができる。従って、照合器300は、関連する放送チャンネルと、放送チャンネル内のフレーム位置(例えば、位置に関連するフレーム番号)とを識別することができる。
いくつかの例では、照合器300が、複数の放送フィンガープリント222、222aを表すデータ構造330(例えば、フィンガープリント結果セット232)を含む。データ構造330は、相関器320がメディア装置フィンガープリント222、222b(例えば、探索ブロック324)と放送フィンガープリント222、222aとの比較を行うことを可能にする。これに加えて、又はこれとは別に、データ構造330は、相関器320が一致相関322を判定する多段階相関プロセスを実行することも可能にする。多段階相関プロセスは、候補識別プロセス及び一致相関プロセスを含むことができる。候補識別プロセスでは、相関器320が、データ構造330からの放送フィンガープリント222、222aを、一致相関322のための放送フィンガープリント候補222、222acとして識別することができる。一般に、放送フィンガープリント候補222、222acは、少なくとも1つのメディア装置フィンガープリント222、222b(例えば、最新のメディア装置フィンガープリント222、222bR)に一致する可能性がある、放送フレームF1~nに対応する放送フィンガープリント222、222aである。相関器320が探索ブロック324をコンパイルする例では、放送フィンガープリント候補222、222acが、探索ブロック324の少なくとも1つのメディア装置フィンガープリント222、222bに一致する可能性がある、放送フレームF1~nに対応する放送フィンガープリント222、222aである。一致相関322のための少なくとも1つの放送フィンガープリント候補222、222acを識別することにより、相関器320が一致相関322を実行する対象の放送フィンガープリント222、222a(例えば、識別された放送フィンガープリント候補222、222ac)が少なくなるので、照合器300は、一致相関プロセス中の相関器320における処理時間を短縮することができる。換言すれば、単段階相関プロセスでは、相関器320が、識別された放送フィンガープリント候補222、222acだけでなく、フィンガープリント結果セット232及び/又はデータ構造330の放送フィンガープリント222、222aとの間でも一致相関322を実行することができる。一致相関プロセスでは、相関器320が、少なくとも1つの放送フィンガープリント候補222、222acを受け取り、この少なくとも1つの放送フィンガープリント候補222、222acに基づいて一致相関322を判定することができる。
いくつかの実装では、データ構造330が、複数の放送フィンガープリント222、222aをノードNによって表す。各ノードN(1~n)は、放送フレームF1~nに対応する放送フィンガープリント222、222aを構成することができる。相関器320は、ノードNを使用してデータ構造330を探索し、放送フィンガープリント候補222、222acに対応する少なくとも1つのノード候補N、NCを識別することができる。各ノードN(1~n)は、メタデータ224(例えば、フレーム位置、フレームタイプ、又はフィンガープリント識別子タグ)又はメタデータの参照を含むこともできる。照合器300は、メタデータ224又はメタデータ224の参照を各放送フィンガープリント候補222、222acに関連付けることができる。換言すれば、照合器300及び/又は相関器320は、データ構造330を探索した後に、一致相関322のための少なくとも1つの放送フィンガープリント候補222、222acを示す少なくとも1つのノード候補N、NCと、少なくとも1つのノード候補N、NCとして受け取られた少なくとも1つの放送フィンガープリント候補222、222acの放送フレームF1~nに関連するメタデータ224とを受け取ることができる。
いくつかの例では、各ノードN(1~n)が放送フレームF1~nのシーケンシャル配列を参照することにより、相関器320が、(例えば、ノード候補N、NCによって)少なくとも1つの放送フィンガープリント候補222、222acを決定する際に、少なくとも1つの放送フィンガープリント候補222、222acに対応するフレーム位置を識別できるようにもなる。放送フレームF1~nのシーケンシャル配列は、照合器300が放送フレームセットF1~n(set)に対応する放送フィンガープリントセット222、222asetを選択して、(例えば、図3Bに示す)一致相関ブロック326としての探索ブロック324と比較できるようにすることができる。多くの場合、照合器300によって選択される放送フィンガープリントセット222、222asetは、候補識別プロセス中に識別された少なくとも1つの放送フィンガープリント候補222、222acと、候補識別プロセス中に識別された少なくとも1つの放送フィンガープリント候補222、222acにシーケンシャルに隣接する(例えば、先行する又は後続する)選択された数の放送フィンガープリント222、222aとを含むことができる。放送フィンガープリントセット222、222aset内の放送フィンガープリント222、222aの数は、探索ブロック324のメディア装置フィンガープリント222、222bに対応することができ、従って相関器320は、等しい数の放送フィンガープリント222、222aを等しい数のメディア装置フィンガープリント222、222bと比較することによって一致相関322を実行することができる。
多段階相関プロセス中には、相関器320が、データ構造330の範囲探索又は最近隣探索などの探索を実行して、少なくとも1つの放送フィンガープリント候補222、222acを識別することができる。いくつかの例では、相関器320が、探索を実行する際に距離(例えば、ユークリッド距離、マンハッタン距離など)などの探索メトリックを使用してデータ構造330を探索する。図3Aには、最近隣探索の例を示す。通常、最近隣探索は、入力との近接性が最も似通った出力をもたらすような近接探索である。例えば、空間N内の点集合S及び入力点Pを所与とすると、最近隣探索は、空間N内の集合Sにおける最も入力点Pに近い点を戻す。図3Aなどのいくつかの例では、相関器320が、探索メトリックとしてユークリッド距離を使用して最近隣探索を実行する。図3Aには、候補識別プロセスの入力を、探索ブロック324の少なくとも1つのメディア装置フィンガープリント222、222b(例えば、最新のメディア装置フィンガープリント222、222bR)として示す。これらの例では、相関器320が、探索ブロック324の少なくとも1つのメディア装置フィンガープリント222、222bとデータ構造330内の各ノードNとの間の距離を決定する。相関器320は、最近隣探索の結果、放送フィンガープリント候補222、222acとして決定した各距離のうちの最小値に対応するノードNの放送フィンガープリント222、222aを識別することができる。
図3Bは、相関器320が複数の放送フィンガープリント候補222、222acを識別できる例である。いくつかの実装では、相関器320が、範囲探索を使用して複数の放送フィンガープリント候補222、222acを識別する。一般に、範囲探索は、入力に基づいて所与の範囲内の1又は複数の出力をもたらす探索である。例えば、空間N内の点集合S、入力点P、及び入力範囲Rを所与とすると、範囲探索は、入力範囲Rを満たす集合S内の入力点Pに関連する全ての点を戻すことができる。いくつかの例では、範囲探索が、近接範囲に対応する出力の組を識別する。相関器320は、所定の近接範囲に従って範囲探索を実行する際に、所定の近接範囲内の探索メトリックを有するノードNの少なくとも1つの放送フィンガープリント222、222aを放送フィンガープリント候補222、222acとして識別することができる。一例として、相関器320は、少なくとも1つのメディア装置フレーム222、222bとノードNの放送フレーム222、222aとの間の0~1.0の距離に対応する近接範囲を受け取る。相関器320は、この受け取った0~1.0の近接範囲を使用して、(例えば、探索ブロック324からの)少なくとも1つのメディア装置フレーム222、222bとデータ構造330の各ノードNとの間の探索メトリック(例えば、距離)を決定することができる。この例では、相関器320が、探索メトリックに従って近接範囲0~1.0を満たす各ノードNを放送フィンガープリント候補222、222acとして識別する。図3Bなどのいくつかの実装では、相関器320が、3つの放送フィンガープリント候補222、222ac(1~3)に対応する3つのノード候補N、NC(1~3)を少なくとも1つの放送フィンガープリント候補222、222acとして識別する。これに加えて、又はこれとは別に、図3Bに示すように、相関器320は、識別された各放送フィンガープリント候補222、222acに対応するメタデータ224を受け取り又は検索することもできる。
図3A及び図3Bに示すように、データ構造330は、候補識別プロセスを最適化するように編成することができる。いくつかの実装では、データ構造330が、領域木又はk-d木などの2次元又は3次元以上のツリーデータ構造332(例えば、二分探索木332、332a)である。ツリーデータ構造332は、相関器320が必ずしも探索ブロック324の少なくとも1つのメディア装置フィンガープリント222、222bとデータ構造330内の各ノードNとの間の探索メトリックを決定する必要なくデータ構造330の探索を実行できるようにすることができる。むしろ、図3Aに示すように、ツリーデータ構造332などのデータ構造330は、データ構造330内を探索するための隣接ノードNadjの指示Iを相関器320に提供することができる。いくつかの例では、相関器320が、探索メトリックの最小値又は最大値に関連するノードNを探索する。距離の場合、相関器320は、ノードNと探索ブロック324の少なくとも1つのメディア装置フィンガープリント222、222aとの間の最小距離に関連するノードNを探索する。この例では、データ構造330が、相関器320が第1のノードN1に関連する第1の探索メトリックを決定する際に、相関器320が第1の探索メトリックの指示Iを識別して、第1のノードN1に対して指示Iに対応する方向に隣接する第2のノードN2、Nadjに関連する第2の探索メトリックを決定するように編成される。例えば、相関器320は、第1のノードN1において、第1のノードN1の放送フィンガープリント222、222aと探索ブロック324の少なくとも1つのメディア装置フィンガープリント222、222aとの間の距離3.50を決定することができる。距離3.50は、次に相関器320が第1のノードN1の左側の第2のノードN2において第2の探索メトリックを実行することを示すことができる。この例では、データ構造330が、第1のノードN1の左方向に移動することが第2のノードN2の放送フィンガープリント222、222aと探索ブロック324の少なくとも1つのメディア装置フィンガープリント222、222aとの間の距離を短縮することに対応するように編成される。図3A及び図3Bには2次元データ構造330を示しているが、データ構造330は、2次元又は3次元以上で存在することもでき、従って方向指示Iも、2次元又は3次元以上に対して存在することができる。探索すべき次の隣接ノードNadjを示すことにより、データ構造330の編成は、データ構造330内で相関器320が探索するノードNの数を最適化することができる。従って、いくつかのデータ構造330の固有の利点は、これらのデータ構造330が候補識別プロセスの処理時間を短縮しながら一致相関プロセスの精度を潜在的に高めることができる点である。従って、データ構造330は、系統的な反復相関プロセスが少なくとも1つの放送フィンガープリント候補222、222acの識別に役立つことを可能にする。
いくつかの例では、相関器320が、複数の放送フィンガープリント222、222aとの一致相関322を有する少なくとも1つのメディア装置フィンガープリント222、222bを探索ブロック324が含んでいると判定することができる。例えば、図3Bの場合には、相関器320が候補識別プロセスにおいて複数の放送フィンガープリント候補222、222acを識別している。複数の放送フィンガープリント222、222a(例えば、複数の放送フィンガープリント候補222、222ac)との一致相関322を有する少なくとも1つのメディア装置フィンガープリント222、222bを探索ブロック324が含んでいる場合、相関器320は、各放送フィンガープリント候補222、222acとの一致相関322を実行することができる。一例として、図3Bには、相関器320が探索ブロック324と各一致相関ブロック326との間の一致相関322を判定することを示す。探索ブロック324と各一致相関ブロック326との間の一致相関322の結果、相関器320は、放送フィンガープリント候補222、222acの一致放送フィンガープリント222、222aMとの間に最大の一致相関322、322Gを有する探索ブロック324の少なくとも1つのメディア装置フィンガープリント222、222bのメディア装置フィンガープリント222、222bに対応するメディア装置フレームFDを一致メディア装置フレームFMDとして決定する。
一例として、照合器300は、5分の放送フィンガープリント222、222a(1~9,000)を、9、000個のシーケンシャル放送フレームF1~9,000に対応するフィンガープリント結果セット232として受け取る。照合器300は、放送フィンガープリント222、222a(1~9,000)に関連するメタデータ224を受け取ることも、或いは照合器300が一致メディア装置フレームFMDを識別した時に後でフィンガープリント200からメタデータ224を検索することもできる。相関器320は、照合器フィンガープリント生成器310からのメディア装置ストリームSDから取り込まれたメディア装置フレームFD1~nに対応するメディア装置フィンガープリント222、222bを受け取る。この例では、相関器320が、TV30、30aにおいて取り込まれた2秒のメディア装置ストリームSD(すなわち、毎秒30フレームのフレームレートRMD)に対応する60個のメディア装置フィンガープリント222、222b(1~60)を受け取る。ここでは、これらの60個のメディア装置フィンガープリント222、222b(1~60)が探索ブロック324になる。この例が単段階相関プロセスである場合、相関器320は、60個のメディア装置フィンガープリント222、222b(1~60)のうちの少なくとも1つのメディア装置フィンガープリント222、222b(例えば、最新のメディア装置フィンガープリント222bR)が、フィンガープリント結果セット232の少なくとも1つの放送フィンガープリント222、222aとの一致相関322を有すると判定することができる。単段階相関プロセスでは、一致相関322を有する少なくとも1つのメディア装置フィンガープリント222、222bの対応するメディア装置フレームFDが一致メディア装置フレームFMDである。この例が多段階相関プロセスである場合、相関器320は、探索ブロック324の少なくとも1つのメディア装置フィンガープリント222、222b(例えば、最新のメディア装置フィンガープリント222bR)をデータ構造330と比較して、少なくとも1つの対応する放送フィンガープリント候補222、222acを有する少なくとも1つのノードNを識別することができる。相関器320は、この少なくとも1つの放送フィンガープリント候補222、222acを使用して、各識別された放送フィンガープリント候補222、222acのための一致相関ブロック326を生成することができる。この例では、探索ブロック326が60個のメディア装置フィンガープリント222、222b(1~60)であるため、各一致相関ブロック326は、放送フィンガープリント候補222、222acを含む60個の放送フィンガープリント222、222a(1~60)である。その後、相関器320は、探索ブロック324の少なくとも1つのメディア装置フィンガープリント222、222b(例えば、最新のメディア装置フィンガープリント222、222bR)が、一致相関ブロック326の少なくとも1つの放送フィンガープリント222、222aとの一致相関322を有すると判定することができる。単段階相関プロセスと同様に、一致相関322を有する少なくとも1つのメディア装置フィンガープリント222、222bの対応するメディア装置フレームFDが一致メディア装置フレームFMDである。
任意に、図3Cに、相関器320が候補識別プロセスを伴わずにデータ構造330を使用して反復一致相関プロセスを実行できることを示す。一例として、相関器320は、探索ブロック324の少なくとも1つのメディア装置フィンガープリント222、222bと、少なくとも1つの放送フィンガープリント222、222aに対応する第1のノードN1との間の一致相関322を判定する。第1のノードN1における一致相関322では、一致相関322が、第1のノードN1に隣接する第2のノードN2の指示Iを提供することによって一致相関322をさらに最適化することができる。例えば、相関器320は、第1のノードN1において一致相関322が0.55の値であると判定することができる。0.55の値は、次に相関器320が第1のノードN1の左側の第2のノードN2との第2の一致相関322、322bを実行することを示す中程度の比例的関連性を表す。この例では、第1のノードN1の左方向に移動することが、一致相関322の比例的関連性強度(proportional strength of association)を高めることに対応することができる。従って、データ構造330は、系統的な反復相関プロセスが最大の一致相関322、322Gを戻すのに役立つことを可能にする。
図4は、自動コンテンツ認識中のコールドマッチングのための方法400である。方法400は、ブロック402において、放送局における放送メディアストリームの放送フレームを示す放送フィンガープリントをデータ処理ハードウェアにおいて受け取るステップを含む。方法400は、ブロック404において、対応するメディア装置におけるメディア装置ストリームのメディア装置フレームを示すメディア装置フィンガープリントをデータ処理ハードウェアにおいて受け取るステップをさらに含む。方法400は、ブロック406において、データ処理ハードウェアが、メディア装置ストリームのシーケンシャルメディア装置フレームに対応する複数のメディア装置フィンガープリントを含む探索ブロックが、少なくとも1つの放送フィンガープリントとのピアソンの相関係数に基づく一致相関を有する少なくとも1つのメディア装置フィンガープリントを含んでいると判定するステップをさらに含む。方法400は、ブロック408において、データ処理ハードウェアが、少なくとも1つの放送フィンガープリントとの一致相関を有する少なくとも1つのメディア装置フィンガープリントを一致メディア装置フレームに対応するものとして識別するステップをさらに含む。
ソフトウェアアプリケーション(すなわち、ソフトウェアリソース)は、コンピュータ装置にタスクを実行させるコンピュータソフトウェアを意味することができる。いくつかの例では、ソフトウェアアプリケーションを「アプリケーション」、「アプリ」、又は「プログラム」と呼ぶこともできる。アプリケーション例としては、以下に限定するわけではないが、システム診断アプリケーション、システム管理アプリケーション、システムメンテナンスアプリケーション、ワープロアプリケーション、スプレッドシートアプリケーション、メッセージングアプリケーション、メディアストリーミングアプリケーション、ソーシャルネットワーキングアプリケーション、及びゲームアプリケーションが挙げられる。
図5は、本文書で説明したシステム及び方法を実装するために使用できるコンピュータ装置例500の概略図である。コンピュータ装置500は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、及びその他の適切なコンピュータなどの様々な形態のデジタルコンピュータを表すように意図される。図示のコンポーネント、その接続及び関係、並びにその機能は例示を目的とするものにすぎず、本文書で説明した及び/又は特許請求する発明の実装を限定するものではない。
コンピュータ装置500は、プロセッサ510と、メモリ520と、記憶装置530と、メモリ520及び高速拡張ポート550に接続する高速インターフェイス/コントローラ540と、低速バス570及び記憶装置530に接続する低速インターフェイス/コントローラ560とを含む。コンポーネント510、520、530、540、550及び560の各々は、様々なバスを使用して相互接続され、必要に応じて共通マザーボード上に又は他の形で取り付けることができる。プロセッサ510は、メモリ520又は記憶装置530に記憶された命令を含む、コンピュータ装置500内で実行される命令を処理して、高速インターフェイス540に結合されたディスプレイ580などの外部入力/出力装置上にグラフィカルユーザインターフェイス(GUI)のためのグラフィック情報を表示することができる。他の実装では、必要に応じて複数のメモリ及びメモリタイプと共に複数のプロセッサ及び/又は複数のバスを使用することができる。また、複数のコンピュータ装置500を接続して、各装置が(例えば、サーババンク、一群のブレードサーバ、又はマルチプロセッサシステムとして)必要な動作の一部を提供することもできる。
メモリ520は、コンピュータ装置500内に非一時的に情報を記憶する。メモリ520は、コンピュータ可読媒体、(単複の)揮発性メモリユニット、又は(単複の)不揮発性メモリユニットとすることができる。非一時的メモリ520は、コンピュータ装置500が使用するプログラム(例えば、一連の命令)又はデータ(例えば、プログラム状態情報)を一時的又は恒久的に記憶するために使用される物理的装置とすることができる。不揮発性メモリの例としては、以下に限定するわけではないが、フラッシュメモリ及びリードオンリメモリ(ROM)/プログラマブルリードオンリメモリ(PROM)/消去可能プログラマブルリードオンリメモリ(EPROM)/電気的消去可能プログラマブルリードオンリメモリ(EEPROM)(例えば、典型的にはブートプログラムなどのファームウェアに使用されるもの)が挙げられる。揮発性メモリの例としては、以下に限定するわけではないが、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)、及びディスク又はテープが挙げられる。
記憶装置530は、コンピュータ装置500のための大容量ストレージを提供することができる。いくつかの実装では、記憶装置530がコンピュータ可読媒体である。様々な異なる実装では、記憶装置530を、フロッピーディスク装置、ハードディスク装置、光ディスク装置、又はテープ装置、フラッシュメモリ又は他の同様の固体メモリデバイス、或いはストレージエリアネットワーク又はその他の構成を含む一連の装置とすることができる。さらなる実装では、コンピュータプログラム製品が情報キャリア内で有形的に具体化される。コンピュータプログラム製品は、実行時に上述したような1又は2以上の方法を実行する命令を含む。情報キャリアは、メモリ520、記憶装置530、又はプロセッサ510上のメモリなどのコンピュータ可読媒体又は機械可読媒体である。
高速コントローラ540は、コンピュータ装置500の帯域幅集約動作を管理し、低速コントローラ560は、低帯域幅集約動作を管理する。このような作業の割り当ては例示にすぎない。いくつかの実装では、高速コントローラ540が、メモリ520と、ディスプレイ580と、様々な拡張カード(図示せず)を受け入れることができる高速拡張ポート550とに(例えば、グラフィックスプロセッサ又はアクセラレータを介して)結合される。いくつかの実装では、低速コントローラ560が、記憶装置530及び低速拡張ポート590に結合される。様々な通信ポート(例えば、USB、Bluetooth、イーサネット、ワイヤレスイーサネット)を含むことができる低速拡張ポート590は、キーボード、ポインティングデバイス、スキャナなどの1又は2以上の入力/出力装置に、或いはネットワークアダプタなどを介してスイッチ又はルータなどのネットワーク装置に結合することができる。
コンピュータ装置500は、図示のような複数の異なる形態で実装することができる。例えば、コンピュータ装置500は、標準サーバ500aとして、又は一群のこのようなサーバ500aにおいて複数回、ラップトップコンピュータ500bとして、或いはラックサーバシステム500cの一部として実装することができる。
本明細書で説明したシステム及び技術の様々な実装は、デジタル電子回路及び/又は光回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はこれらの組み合わせで実現することができる。これらの様々な実装は、ストレージシステム、少なくとも1つの入力装置及び少なくとも1つの出力装置との間でデータ及び命令を送受信するように結合された、専用又は汎用とすることができる少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能及び/又は解釈可能な1又は2以上のコンピュータプログラムでの実装を含むことができる。
これらの(プログラム、ソフトウェア、ソフトウェアアプリケーション又はコードとしても知られている)コンピュータプログラムは、プログラマブルプロセッサのための機械命令を含み、高水準手続き型言語及び/又はオブジェクト指向型プログラミング言語、及び/又はアセンブリ/機械言語で実装することができる。本明細書で使用する「機械可読媒体」及び「コンピュータ可読媒体」という用語は、機械可読信号としての機械命令を受け取る機械可読媒体を含む、プログラマブルプロセッサに機械命令及び/又はデータを提供するために使用されるあらゆるコンピュータプログラム製品、非一時的コンピュータ可読媒体、装置及び/又はデバイス(例えば、磁気ディスク、光学ディスク、メモリ、プログラマブル論理装置(PLD))を意味する。「機械可読信号」という用語は、プログラマブルプロセッサに機械命令及び/又はデータを提供するために使用されるあらゆる信号を意味する。
本明細書で説明したプロセス及びロジックフローは、1又は2以上のコンピュータプログラムを実行する1又は2以上のプログラマブルプロセッサによって、入力データに作用して出力を生成することによって機能を実行するように実行することができる。プロセス及びロジックフローは、例えばFPGA(フィールドプログラマブルゲートアレイ)又はASIC(特定用途向け集積回路)などの専用論理回路によって実行することもできる。コンピュータプログラムを実行するのに適したプロセッサとしては、一例として、汎用マイクロプロセッサ及び専用マイクロプロセッサの両方、並びにいずれか1つ又は2つのあらゆる種類のデジタルコンピュータのプロセッサが挙げられる。一般に、プロセッサは、リードオンリメモリ又はランダムアクセスメモリ、或いはこれらの両方から命令及びデータを受け取る。コンピュータの必須要素は、命令を実行するためのプロセッサ、並びに命令及びデータを記憶するための1又は2以上のメモリデバイスである。一般に、コンピュータは、磁気ディスク、光磁気ディスク又は光学ディスクなどの、データを記憶する1又は2以上の大容量記憶装置も含み、或いはこのような記憶装置との間でデータの受け取り及びデータの転送、又はこれらの両方を行うように動作可能に結合される。しかしながら、コンピュータは、このような装置を有していなくてもよい。コンピュータプログラム命令及びデータを記憶するのに適したコンピュータ可読媒体としては、一例としてEPROM、EEPROM及びフラッシュメモリデバイスなどの半導体メモリデバイス、内蔵ハードディスク又は取り外し可能ディスクなどの磁気ディスク、磁気光学ディスク、並びにCD ROM及びDVD-ROMディスクを含む、全ての形態の不揮発性メモリ、媒体及びメモリデバイスが挙げられる。プロセッサ及びメモリは、専用論理回路によって補完することも、或いは専用論理回路に組み込むこともできる。
本開示の1又は2以上の態様は、ユーザとの相互作用を可能にするために、CRT(ブラウン管)、LCD(液晶ディスプレイ)モニタ又はタッチ画面などの、ユーザに情報を表示するためのディスプレイ装置と、任意にユーザがコンピュータに入力を提供できるようにするキーボード、及びマウス又はトラックボールなどのポインティングデバイスとを有するコンピュータに実装することができる。他の種類の装置を用いてユーザとの相互作用を可能にすることもでき、例えば、ユーザに提供されるフィードバックは、視覚フィードバック、聴覚フィードバック又は触覚フィードバックなどのあらゆる形の感覚フィードバックとすることができ、ユーザからの入力は、音響入力、発話入力又は触覚入力を含むあらゆる形で受け取ることができる。また、コンピュータは、ユーザが使用する装置との間で文書を送受信することにより、例えばユーザのクライアント装置上のウェブブラウザから受け取った要求に応答してこのウェブブラウザにウェブページを送信することによってユーザとの相互作用を行うこともできる。
複数の実装について説明した。それでもなお、本開示の趣旨及び範囲から逸脱することなく様々な修正を行うことができると理解されるであろう。従って、以下の特許請求の範囲には他の実装も含まれる。
10 自動コンテンツ認識環境
20 ユーザ
30 メディア装置
100 放送層
102 放送局
104 放送配信業者
110 追加コンテンツ層
112 商用プロバイダ
114 広告主
120 ネットワーク層
130 装置層
132 ACRモジュール
200 フィンガープリンタ
210 サーバ
212 データ処理ハードウェア
214 メモリハードウェア
220 フィンガープリント生成器
230 フィンガープリント
240 メタデータ
S メディアストリーム
B 放送メディアストリーム
C 追加メディアコンテンツ
D メディア装置ストリーム
N ネットワークメディアストリーム

Claims (19)

  1. メディア装置において視聴するために提供されるメディアを識別する方法であって、
    データ処理ハードウェアにおいて、放送メディアストリームのシーケンシャル放送フレームを示す放送フィンガープリントを受け取り、ここで、前記シーケンシャル放送フレームは、前記放送メディアストリームの第1の期間に対応するものであるステップと、
    前記データ処理ハードウェアによって、前記メディア装置において視聴するために提供されるメディア装置ストリームのシーケンシャルメディア装置フレームを示すメディア装置フィンガープリントの探索ブロックをコンパイルし、ここで、前記探索ブロックの前記シーケンシャルメディア装置フレームは、前記メディア装置ストリームの第2の期間に対応するものであり、前記第2の期間は、前記第1の期間よりも短いものであるステップと、
    前記データ処理ハードウェアによって、(i)前記メディア装置ストリームの前記第2の期間に対応する前記シーケンシャルメディア装置フレームを示す前記メディア装置フィンガープリントの前記探索ブロックと、(ii)前記放送メディアストリームの前記第1の期間に対応する前記シーケンシャル放送フレームを示す前記放送フィンガープリントを比較するステップと、
    前記データ処理ハードウェアによって、前記比較することに基づいて、前記探索ブロックの少なくとも1つのメディア装置フィンガープリントと前記放送フィンガープリントの少なくとも1つとの一致相関を確立し、ここで、前記少なくとも1つのメディア装置フィンガープリントは、前記シーケンシャルメディア装置フレームの少なくとも1つに対応するものであり、前記少なくとも1つの放送フィンガープリントは、前記シーケンシャル放送フレームの少なくとも1つに対応するものであるステップと、
    前記データ処理ハードウェアによって、確立された前記一致相関に基づいて、前記少なくとも1つのシーケンシャルメディア装置フレームが、前記少なくとも1つのシーケンシャル放送フレームに対応するメタデータを有すると判定し、ここで、前記メタデータは、放送チャンネル識別とフレーム位置を含むステップと、
    を含むことを特徴とする方法。
  2. 前記データ処理ハードウェアが、複数の放送フィンガープリントとの前記一致相関を有する少なくとも1つのメディア装置フィンガープリントを前記探索ブロックが含んでいるかどうかを判定するステップと、
    複数の放送フィンガープリントとの前記一致相関を有する少なくとも1つのメディア装置フィンガープリントを前記探索ブロックが含んでいる場合、(i)前記データ処理ハードウェアが、前記探索ブロックの前記少なくとも1つのメディア装置フィンガープリントに対応する、各放送フィンガープリントが前記放送メディアストリームのシーケンシャルに隣接する放送フレームの放送フィンガープリントである放送フィンガープリントセットを決定し、(ii)前記データ処理ハードウェアが、前記一致相関を前記探索ブロックと前記放送フィンガープリントセットとの間のピアソンの相関係数として決定するステップと、
    をさらに含む、請求項1に記載の方法。
  3. 前記データ処理ハードウェアが、前記放送フィンガープリントセットの一致放送フィンガープリントとの間に最大のピアソンの相関係数を有する前記探索ブロックの前記少なくとも1つのメディア装置フィンガープリントの前記メディア装置フィンガープリントに対応する前記シーケンシャルメディア装置フレームを一致メディア装置フレームとして決定するステップをさらに含む、
    請求項2に記載の方法。
  4. 各フィンガープリントは、前記対応するメディアストリームのフレームの少なくとも1つのピクセル値を表す、
    請求項1から3のいずれか1項に記載の方法。
  5. 各フィンガープリントは、対応するフレームのグレースケール値の合計を表す平均ピクセル値である、
    請求項1から4のいずれか1項に記載の方法。
  6. 各フィンガープリントは、対応するフレーム内のサブフレームの複数の平均ピクセル値を表す、
    請求項1から5のいずれか1項に記載の方法。
  7. 前記対応するフレームの各フィンガープリントは、前記対応するフレームの4×4配列を定める16個のサブフレームの各平均ピクセル値に対応する16個の整数ベクトルとして表される、
    請求項6に記載の方法。
  8. 前記メディア装置フィンガープリントの前記探索ブロックと前記放送フィンガープリントを比較することは、前記探索ブロックと複数の放送フィンガープリントによって定められるデータベース構造とを比較することをさらに含み、前記データベース構造は二分探索木である、
    請求項1から7のいずれか1項に記載の方法。
  9. データ処理ハードウェアと、
    前記データ処理ハードウェアと通信するメモリハードウェアと、
    を備えたシステムであって、前記メモリハードウェアは命令を記憶しており、該命令は、前記データ処理ハードウェア上で実行された時に、前記データ処理ハードウェアに、
    放送メディアストリームのシーケンシャル放送フレームを示す放送フィンガープリントを受け取り、ここで、前記シーケンシャル放送フレームは、前記放送メディアストリームの第1の期間に対応するものであるステップと、
    メディア装置において視聴するために提供されるメディア装置ストリームのシーケンシャルメディア装置フレームを示すメディア装置フィンガープリントの探索ブロックをコンパイルし、ここで、前記探索ブロックの前記シーケンシャルメディア装置フレームは、前記メディア装置ストリームの第2の期間に対応するものであり、前記第2の期間は、前記第1の期間よりも短いものであるステップと、
    (i)前記メディア装置ストリームの前記第2の期間に対応する前記シーケンシャルメディア装置フレームを示す前記メディア装置フィンガープリントの前記探索ブロックと、(ii)前記放送メディアストリームの前記第1の期間に対応する前記シーケンシャル放送フレームを示す前記放送フィンガープリントを比較するステップと、
    前記比較することに基づいて、前記探索ブロックの少なくとも1つのメディア装置フィンガープリントと前記放送フィンガープリントの少なくとも1つとの一致相関を確立し、ここで、前記少なくとも1つのメディア装置フィンガープリントは、前記シーケンシャルメディア装置フレームの少なくとも1つに対応するものであり、前記少なくとも1つの放送フィンガープリントは、前記シーケンシャル放送フレームの少なくとも1つに対応するものであるステップと、
    確立された前記一致相関に基づいて、前記少なくとも1つのシーケンシャルメディア装置フレームが、前記少なくとも1つのシーケンシャル放送フレームに対応するメタデータを有すると判定し、ここで、前記メタデータは、放送チャンネル識別とフレーム位置を含むステップと、
    を含む動作を実行させる、ことを特徴とするシステム。
  10. 前記動作は、
    複数の放送フィンガープリントとの前記一致相関を有する少なくとも1つのメディア装置フィンガープリントを前記探索ブロックが含んでいるかどうかを判定するステップと、
    複数の放送フィンガープリントとの前記一致相関を有する少なくとも1つのメディア装置フィンガープリントを前記探索ブロックが含んでいる場合、(i)前記探索ブロックの前記少なくとも1つのメディア装置フィンガープリントに対応する、各放送フィンガープリントが前記放送メディアストリームのシーケンシャルに隣接する放送フレームの放送フィンガープリントである放送フィンガープリントセットを決定し、(ii)前記一致相関を前記探索ブロックと前記放送フィンガープリントセットとの間のピアソンの相関係数として決定するステップと、
    をさらに含む、請求項9に記載のシステム。
  11. 前記動作は、前記放送フィンガープリントセットの一致放送フィンガープリントとの間に最大のピアソンの相関係数を有する前記探索ブロックの前記少なくとも1つのメディア装置フィンガープリントの前記メディア装置フィンガープリントに対応する前記シーケンシャルメディア装置フレームを一致メディア装置フレームとして決定するステップをさらに含む、
    請求項10に記載のシステム。
  12. 各フィンガープリントは、前記対応するメディアストリームのフレームの少なくとも1つのピクセル値を表す、
    請求項9から11のいずれか1項に記載のシステム。
  13. 各フィンガープリントは、対応するフレーム内のサブフレームの複数の平均ピクセル値を表す、
    請求項9から12のいずれか1項に記載のシステム。
  14. 前記対応するフレームの各フィンガープリントは、前記対応するフレームの4×4配列を定める16個のサブフレームの各平均ピクセル値に対応する16個の整数ベクトルとして表される、
    請求項13に記載のシステム。
  15. 前記メディア装置フィンガープリントの前記探索ブロックと前記放送フィンガープリントを比較することは、前記動作は、前記探索ブロックと複数の放送フィンガープリントによって定められるデータベース構造とを比較するステップをさらに含み、前記データベース構造は二分探索木である、
    請求項9から14のいずれか1項に記載のシステム。
  16. 放送メディアストリームのシーケンシャル放送フレームを示す放送フィンガープリントを受け取り、ここで、前記シーケンシャル放送フレームは、前記放送メディアストリームの第1の期間に対応するものであるステップと、
    メディア装置において視聴するために提供されるメディア装置ストリームのシーケンシャルメディア装置フレームを示すメディア装置フィンガープリントの探索ブロックをコンパイルし、ここで、前記探索ブロックの前記シーケンシャルメディア装置フレームは、前記メディア装置ストリームの第2の期間に対応するものであり、前記第2の期間は、前記第1の期間よりも短いものであるステップと、
    (i)前記メディア装置ストリームの前記第2の期間に対応する前記シーケンシャルメディア装置フレームを示す前記メディア装置フィンガープリントの前記探索ブロックと、(ii)前記放送メディアストリームの前記第1の期間に対応する前記シーケンシャル放送フレームを示す前記放送フィンガープリントを比較するステップと、
    前記比較することに基づいて、前記探索ブロックの少なくとも1つのメディア装置フィンガープリントと前記放送フィンガープリントの少なくとも1つとの一致相関を確立し、ここで、前記少なくとも1つのメディア装置フィンガープリントは、前記シーケンシャルメディア装置フレームの少なくとも1つに対応するものであり、前記少なくとも1つの放送フィンガープリントは、前記シーケンシャル放送フレームの少なくとも1つに対応するものであるステップと、
    確立された前記一致相関に基づいて、前記少なくとも1つのシーケンシャルメディア装置フレームが、前記少なくとも1つのシーケンシャル放送フレームに対応するメタデータを有すると判定し、ここで、前記メタデータは、放送チャンネル識別とフレーム位置を含むステップと、
    を含む動作をプロセッサにより実行可能なプログラム命令を記憶した非一時的メモリ。
  17. 前記動作は、
    複数の放送フィンガープリントとの前記一致相関を有する少なくとも1つのメディア装置フィンガープリントを前記探索ブロックが含んでいるかどうかを判定するステップと、
    複数の放送フィンガープリントとの前記一致相関を有する少なくとも1つのメディア装置フィンガープリントを前記探索ブロックが含んでいる場合、(i)前記探索ブロックの前記少なくとも1つのメディア装置フィンガープリントに対応する、各放送フィンガープリントが前記放送メディアストリームのシーケンシャルに隣接する放送フレームの放送フィンガープリントである放送フィンガープリントセットを決定し、(ii)前記一致相関を前記探索ブロックと前記放送フィンガープリントセットとの間のピアソンの相関係数として決定するステップと、
    をさらに含む、請求項16に記載の非一時的メモリ。
  18. 前記動作は、前記放送フィンガープリントセットの一致放送フィンガープリントとの間に最大のピアソンの相関係数を有する前記探索ブロックの前記少なくとも1つのメディア装置フィンガープリントの前記メディア装置フィンガープリントに対応する前記シーケンシャルメディア装置フレームを一致メディア装置フレームとして決定するステップをさらに含む、
    請求項17に記載の非一時的メモリ。
  19. 前記メディア装置フィンガープリントの前記探索ブロックと前記放送フィンガープリントを比較することは、前記動作は、前記探索ブロックと複数の放送フィンガープリントによって定められるデータベース構造とを比較するステップをさらに含み、前記データベース構造は二分探索木である、
    請求項16から18のいずれか1項に記載の非一時的メモリ。
JP2020515170A 2017-09-13 2018-09-10 自動コンテンツ認識によるコールドマッチング Active JP7116786B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/703,684 2017-09-13
US15/703,684 US10803038B2 (en) 2017-09-13 2017-09-13 Cold matching by automatic content recognition
PCT/US2018/050230 WO2019055344A1 (en) 2017-09-13 2018-09-10 COLD MATCHING BY RECOGNITION OF AUTOMATIC CONTENT

Publications (2)

Publication Number Publication Date
JP2020533918A JP2020533918A (ja) 2020-11-19
JP7116786B2 true JP7116786B2 (ja) 2022-08-10

Family

ID=63762987

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020515170A Active JP7116786B2 (ja) 2017-09-13 2018-09-10 自動コンテンツ認識によるコールドマッチング

Country Status (9)

Country Link
US (2) US10803038B2 (ja)
EP (1) EP3682644A1 (ja)
JP (1) JP7116786B2 (ja)
KR (1) KR102406304B1 (ja)
CN (1) CN111133765B (ja)
AU (2) AU2018331314B2 (ja)
BR (1) BR112020005084A2 (ja)
CA (1) CA3075730C (ja)
WO (1) WO2019055344A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11088772B1 (en) * 2020-05-29 2021-08-10 The Nielsen Company (Us), Llc Methods and apparatus to reduce false positive signature matches due to similar media segments in different reference media assets
US20230138064A1 (en) * 2021-10-29 2023-05-04 The Nielsen Company (Us), Llc Methods and apparatus to generate reference signature assets from meter signatures

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008011316A (ja) 2006-06-30 2008-01-17 Casio Comput Co Ltd カメラ装置及びカメラ装置制御プログラム
US20100166250A1 (en) 2007-08-27 2010-07-01 Ji Zhang System for Identifying Motion Video Content
JP2014519660A (ja) 2011-06-10 2014-08-14 シャザム エンターテインメント リミテッド データストリームのコンテンツを識別する方法及びシステム
WO2016027457A1 (ja) 2014-08-21 2016-02-25 パナソニックIpマネジメント株式会社 コンテンツ認識装置およびコンテンツ認識方法
WO2016106177A1 (en) 2014-12-22 2016-06-30 Rovi Guides, Inc. Systems and methods for filtering techniques using metadata and usage data analysis
WO2016200622A1 (en) 2015-06-12 2016-12-15 Sorenson Media, Inc. Detecting channel change in automatic content recognition fingerprint matching

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040194130A1 (en) 2003-03-07 2004-09-30 Richard Konig Method and system for advertisement detection and subsitution
US20070124796A1 (en) * 2004-11-25 2007-05-31 Erland Wittkotter Appliance and method for client-sided requesting and receiving of information
WO2009140824A1 (en) * 2008-05-22 2009-11-26 Yuvad Technologies Co., Ltd. A system for identifying motion video/audio content
US8335786B2 (en) * 2009-05-28 2012-12-18 Zeitera, Llc Multi-media content identification using multi-level content signature correlation and fast similarity search
US8195689B2 (en) * 2009-06-10 2012-06-05 Zeitera, Llc Media fingerprinting and identification system
US9510044B1 (en) * 2008-06-18 2016-11-29 Gracenote, Inc. TV content segmentation, categorization and identification and time-aligned applications
US9094715B2 (en) * 2009-05-29 2015-07-28 Cognitive Networks, Inc. Systems and methods for multi-broadcast differentiation
US8229219B1 (en) * 2009-08-06 2012-07-24 Google Inc. Full-length video fingerprinting
US8370315B1 (en) 2010-05-28 2013-02-05 Symantec Corporation System and method for high performance deduplication indexing
EP2437498A1 (en) 2010-09-30 2012-04-04 British Telecommunications Public Limited Company Digital video fingerprinting
US8786785B2 (en) * 2011-04-05 2014-07-22 Microsoft Corporation Video signature
CN102682298B (zh) 2012-04-28 2013-11-06 聂秀山 基于图建模的视频指纹方法
US9794642B2 (en) * 2013-01-07 2017-10-17 Gracenote, Inc. Inserting advertisements into video content
US20140237496A1 (en) * 2013-02-18 2014-08-21 Effective Measure International Pty Ltd Audience segment validation device and method
US9743153B2 (en) * 2014-09-12 2017-08-22 Sorenson Media, Inc Content replacement with onscreen displays
US9578394B2 (en) * 2015-03-25 2017-02-21 Cisco Technology, Inc. Video signature creation and matching
US20160316261A1 (en) * 2015-04-23 2016-10-27 Sorenson Media, Inc. Automatic content recognition fingerprint sequence matching

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008011316A (ja) 2006-06-30 2008-01-17 Casio Comput Co Ltd カメラ装置及びカメラ装置制御プログラム
US20100166250A1 (en) 2007-08-27 2010-07-01 Ji Zhang System for Identifying Motion Video Content
JP2014519660A (ja) 2011-06-10 2014-08-14 シャザム エンターテインメント リミテッド データストリームのコンテンツを識別する方法及びシステム
WO2016027457A1 (ja) 2014-08-21 2016-02-25 パナソニックIpマネジメント株式会社 コンテンツ認識装置およびコンテンツ認識方法
WO2016106177A1 (en) 2014-12-22 2016-06-30 Rovi Guides, Inc. Systems and methods for filtering techniques using metadata and usage data analysis
WO2016200622A1 (en) 2015-06-12 2016-12-15 Sorenson Media, Inc. Detecting channel change in automatic content recognition fingerprint matching

Also Published As

Publication number Publication date
CN111133765B (zh) 2022-02-15
AU2018331314B2 (en) 2021-01-28
US20200341960A1 (en) 2020-10-29
KR102406304B1 (ko) 2022-06-10
US20190079961A1 (en) 2019-03-14
CA3075730C (en) 2024-01-02
US11379448B2 (en) 2022-07-05
AU2018331314A1 (en) 2020-04-02
AU2021201776B2 (en) 2022-05-19
US10803038B2 (en) 2020-10-13
CA3075730A1 (en) 2019-03-21
JP2020533918A (ja) 2020-11-19
WO2019055344A1 (en) 2019-03-21
EP3682644A1 (en) 2020-07-22
BR112020005084A2 (pt) 2020-09-15
KR20200053543A (ko) 2020-05-18
AU2021201776A1 (en) 2021-04-15
CN111133765A (zh) 2020-05-08

Similar Documents

Publication Publication Date Title
JP7240437B2 (ja) 自動コンテンツ認識のための広告フレームのフラッギング
US11361549B2 (en) Scene frame matching for automatic content recognition
US11184682B2 (en) Obtaining viewer demographics through advertisement selections
AU2021201776B2 (en) Cold matching by automatic content recognition
CN110537371B (zh) 用于自动内容识别的帧确定性

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200511

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210421

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210607

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20210706

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210907

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220119

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220317

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220704

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220729

R150 Certificate of patent or registration of utility model

Ref document number: 7116786

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150