説明

メディア指紋の検索及び記憶

目標指紋に対する一致を発見するための指紋データベースの検索は、様々な種々異なる指紋が同一のデータセットに対応し得ることを認識し、2つの指紋間の一致を宣言する緩やかな規準を用いて実行される。冗長な指紋は、「類似」であるが「正確」ではない指紋を一致させることによって、各々のデータセットに関して記憶される必要がなくなる。新しい指紋が発見される場合、新しいエントリを記憶するために、先入れ先出し(FIFO)手順が、制限メモリスペースにおいてスペースを配分するのに用いられる。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、民生電子機器の分野に関し、特にデジタル指紋の効率的な検索及び記憶を容易にする方法及びシステムに関する。
【背景技術】
【0002】
Geoffrey B. Rhoads及びKenneth L. Levyによる2001年5月14日出願の米国特許出願公報第2002/0032864A1号「CONTENT IDENTIFIERS TRIGGERING CORRESPONDING RESPONSES」は、音声又はビデオファイルのようなデータセットのコンテンツに基づく1つ又は複数の「指紋」を作成するのに通常用いられる様々な技術を開示し、本文章において参考に組み込まれている。データセットの指紋は、データセットの題名、上演アーティスト、作曲者及び監督等の識別のようなデータセットに関連する補助的情報にアクセスするのに通常用いられる。加えて、データセットの指紋は、データセットへのアクセス権を確認するのに及び/又は斯様なアクセスに関連付けられた料金を査定するのに用いられ得る。データセットのコンテンツに基づくデータセットの識別子の他の使用法は、当該技術分野において一般的である。
【0003】
音声及びビデオ記録のような娯楽資料と関連付けられて一般に用いられる指紋は、記録を一意的に識別するように意図され、それゆえにかなりの長さを有するものである。例えばプロフェッショナル/商用音声録音の指紋に関して128バイト形式が一般的である。商用音声録音を一意的に識別するために何百何千もの斯様な指紋のデータベースが用いられることが予測され得、効率的な検索技術が大規模なデータベースにおける大量の識別子に関して必要とされる。
【0004】
また指紋のデータベース及び対応する補助的情報を保存するメモリも、民生娯楽機器において含まれることを想定され得、この情報に関する効率的な記憶技術も必要とされ得る。
【0005】
指紋検索及び記憶のタスクを更に複雑にすると、指紋とデータセットの間の1対1の対応が存在しないこともある。指紋がデータセットのコンテンツ全体に基づく又はデータセットの1つ若しくは複数の選択セグメントに基づくこともある。指紋がデータセットのコンテンツに基づくので、指紋を得るためのデータセットの標本化は、同一のデータセットに関して異なる指紋を作成することもある。現在の決定指紋との一致を発見するための指紋データベースの検索は、多くの場合、データセットの代替標本に基づくデータベースに亘る多重検索、及び/又は同一のデータセットに関して複数の指紋を含むデータベースに亘る検索を必要とする。
【0006】
例えば歌のデータベース及び、同一の歌に関して平均して10個の異なる指紋を与える指紋作成スキームを考慮する。データベースは、各々の歌に関して10個の最も頻繁に発生する指紋を含むように構成され得るか、又は単一の最も可能性の高い指紋を含むように構成され得る。未だ既知でないデータセットが「検索」指紋を作成するように標本化される場合、データベースにおける指紋に一致することもあるが、又はこの特定の歌がデータベースに含まれていないので、若しくはこの歌がデータベースにあるが、特定の検索指紋がこの歌に関するデータベースにおける指紋のうちの一つではないのでのどちらかにより、データベースにおける指紋に一致しないこともある。一致が発見されない場合、新しい標本が通常入手され、新しい検索指紋が作成される場合、この新しい指紋は、一致を求めてデータベースを検索するのに用いられる。データベースに記憶される歌に関して最も頻繁に発生する指紋を10個有することにより、一致が素早く発見される可能性が増加するが、同時に、大量の記憶された指紋があるので10倍の検索指紋の比較を必要とする。歌毎に指紋を1つだけ記憶することは、データベースのサイズ及び各々の検索指紋に関する検索時間を低減するが、種々異なる取得された指紋を用いて複数の検索を実行する必要がある可能性を増加させる。
【0007】
同一の歌に対応する多数の指紋が存在する可能性があるので、効率的な検索及び記憶技術に関する必要性が、比較的小さいデータベースに関しても存在し、大規模なデータベースに関しては、特に重要である。
【発明の開示】
【発明が解決しようとする課題】
【0008】
本発明の目的は、差異を示す指紋に基づくデータベースの検索を容易にする方法及びシステムを提供することである。本発明の更なる目的は、制限サイズのメモリにおける指紋データベースの効率的な記憶を容易にする方法及びシステムを提供することである。
【課題を解決するための手段】
【0009】
これらの目的及び他の目的は、各々の指紋に関して差異の幅を考慮に入れる検索によって、及び先入れ先出し記憶手順の使用によって成し遂げられる。目標指紋に対する一致を発見するための指紋のデータベースの検索は、様々な種々異なる指紋が同一のデータセットに対応することを認めることにより、2つの指紋間の一致を宣言する緩やかな規準を用いて実行される。冗長な指紋は、「類似」であるが「正確」ではない指紋を一致させることによって、各々のデータセットに関して記憶される必要がなくなる。新しい指紋が発見される場合、先入れ先出し(FIFO)手順が、新しいエントリを記憶するために、制限メモリスペースにおいてスペースを配分するのに用いられる。
【0010】
同一の参照符号は、図面に亘り、同一の要素又は同一の機能を実質的に実行する要素を参照する。
【発明を実施するための最良の形態】
【0011】
図1は、この発明に従う検索及び記憶システム100のブロック図の例を示す。システム100は、指紋のデータベース140から指紋を選択するために目標指紋を比較するように構成される比較器150を含む。抽出器110は、目標指紋を媒体101から抽出し、シーケンサ120は、この目標指紋との比較に関して指紋をデータベース140から選択的に供給する。
【0012】
この発明に従う比較器150は、目標指紋及びデータベース指紋の間における一致を、差分が存在するかどうかだけでなく指紋間における差分の量に基づき決定するように構成される。すなわち比較器150は、目標指紋及びデータベース指紋の間における一致を、ある程度の差分がこれらの指紋間に存在する場合であっても、宣言するように構成される。大抵の場合、比較器150は、指紋間の差分を識別する差分決定器160と、差分の定量的尺度を識別された差分に基づき決定する定量化器(quantifier)170とを含む。
【0013】
図1に示される実施例において、差分決定器160は、符合の各々異なるビットを識別する排他的論理和(XOR)装置を有し、定量化器170は、定量的尺度に対するビット差分をマップするルックアップテーブル(LUT)を有する。差分決定器160及び定量化器170は、指紋全体の比較を実行するように構成され得るか又は指紋の一部の比較を順次的に実行にするよう構成され得、そして差分尺度の連続合計を蓄積する。例えば、差分決定器160のXOR装置は、差分バイトを生成するために指紋の各々バイトを比較するように構成され得、定量化器170ルックアップテーブルは、各々の差分バイトに対応するビット差分の数の計数を与える。例えば差分バイト00000001、00000010、00000100、…10000000の各々は、1ビットの差分を示す「1」の定量値にマップする。差分バイト00000011,00000101、00000110、…10100000、11000000は、2ビットの差分を示す「2」の定量値にマップする、等が実行される。斯様な実施例において、定量化器170は、指紋間の差分の合計の累積の尺度を与えるために、各々の差分バイトに関してルックアップテーブルから定量値の連続合計を維持するが、ここで前記差分の合計は、この例において指紋間において異なるビットの合計数の計数である。
【0014】
2つの指紋間の差分の合計を測定すなわち定量化する他の方法は、この開示を鑑みて当業者にとって明らかである。例えば、指紋内の特定の語句が指紋内の他の語句より重要である又は特有である場合、定量化器170は、各々の語句に関して決定される定量的尺度に異なる重みを割り当てるように構成され得る。同様に、より多く差分が、指紋のうちのあるセグメント内において、他のセグメント内によりも許され得る等のことがあり得る。
【0015】
比較器装置180は、非一致が検出されるかを決定するために、定量化器170からの差分の定量的尺度を閾値Thと比較する。差分の尺度が閾値を超える場合、非一致が宣言される。従来の装置と対照的に、本発明の閾値は0より大きく、これにより、1つ又は複数の差分が非一致を宣言することなく指紋間に存在することを可能にさせている。比較器150がバイトすなわち語句、又は指紋の他のセグメンテーションを順次的に比較するように構成され且つ定量化器170が差分の尺度の連続合計を与える場合、非一致は、連続合計が最大値を超えると直ちに宣言され得る。
【0016】
シーケンサ120は、目標指紋との比較用のデータベース140から各々の指紋を抽出するメモリ制御器130を制御するように構成され得る。語句データベースは、本文章において一般的な意味で用いられ、情報の取得を容易にする情報の如何なる取得も含むこととしている。データベースは、システム100に内部的若しくは外部的、又は両方であるように構成され得る1つ又は複数のメモリ装置に記憶され得る。単純な実施例において、シーケンサ120は、比較器150によって一致が発見されるまで、順次的にデータベース140から各々の指紋を単純に提供する。より複雑な実施例において、データベース140からの各々の次の指紋の選択は、比較器150によって与えられる結果に基づくこともある。例えば、指紋がある順序又はパターンでデータベース140に記憶される場合、比較器150は、データベースからの最後の指紋と目標指紋との間の差分の表示を与えるように構成され得る。斯様な実施例において、シーケンサは、示される差分に依存する特定のインクリメントスパンを用いて順次的に検索をするように構成され得る。例えば、かなりの差分が示される場合、シーケンサは、少ない差分が示されるまで大きなインクリメントスパンを使用し得る。
【0017】
Michael Epstein及びRaymond Krasinskiによる2002年12月19日出願、出願人整理番号US020591(702895)の同時係属の米国特許出願「REORDERED SEARCH OF MEDIA FINGERPRINTS」は、従来のMSB-to-LSBバイト順序付け法と比較されて、バイトの再順序付けを用いてデータベースにおいて指紋を記憶することによってもたらされ得る有利な点を開示しており、本文書において参照として組み込まれている。指紋が従来のように又はこの同時係属出願において開示されるように分類された順序で記憶される場合、シーケンサ120は、(指紋抽出器110及びシーケンサ120の間において鎖線矢印によって示されるように)データベース140からの先行する指紋及び目標指紋の間の差分の符号に基づくバイナリ検索のような従来の分類検索技術を用いて、目標指紋に関するデータベースの順序付けされた検索を実行するように構成される。比較器150が差分を存在させながらも2つの指紋間における一致を宣言するので、シーケンサ120によって分類された検索は、従来の分類された検索と比較して変更される。一致が発見される場合、シーケンサ120は、従来の分類された検索におけるように更なる検索ステップを終了する。しかし、用いられる特定の分類された検索アルゴリズムに基づきシーケンサ120が選択する標本間において一致が発見されない場合、データベース140の徹底的な検索は、ニアミスの指紋(すなわち閾値量より少ない分だけ目標指紋から異なる指紋)がデータベース140に存在しないことを保証することを必要とされ得る。
【0018】
シーケンサ120は、任意選択的に、一致がデータベース140において発見され得ないと決定される場合、指紋及び補助的データを、メモリ制御器130を介してデータベース140において記憶するように構成される。本発明の好適な実施例において、制御器130は、データベース140が満杯の場合に、新たな指紋を追加する先入れ先出し手順を実行するように構成される。新しい情報用の空きを作るのにどの情報が除去されるべきかを決定する他の技術は、当業者にとって明らかであり、これらには、新しい指紋用の空きを作るために使用者に指紋を手動で削除するように促すことも含まれる。
【0019】
図2は、本発明に従う一致決定処理のフロー図の例を示す。210において目標指紋が受信され、ループ220〜250が開始する。220において指紋がデータベースから選択され、230においてこの指紋が目標指紋と比較される。上述のように、本発明は、指紋間において差分が存在する場合であっても、2つの指紋間における一致が決定されることを認める。この実施例において、符号間の差分を評価するのに用いられる定量的尺度は、符合間において異なるビットの数すなわち符号間において異なる語句の数のような、観測される差分の数等である。
【0020】
240において符号間における差分の数が閾値よりも大きい場合、不一致が宣言され、そして250においてデータベースのエントリの全てが一致しないと決定されている場合を除き、220においてデータベースから別の符号が選択される。250においてエントリの全てが不一致であると決定される場合、処理は、260において、使用者が目標指紋に対応する新しい情報をデータベースに記憶するのを任意選択的に許可することによって終了される。
【0021】
240において、符号間の差分の数が閾値より大きくない場合、一致が宣言され、一致する符号に対応する補助的情報が270において取得される。
【0022】
しかし、「ニアミス」が目標指紋に対する一致として識別され得るので、ニアミスは、実際、目標に対応しないこともあることを注意しなければならない。示されていないものの、取得された情報が、目標の資料(図1における101)に実際に対応しない場合、使用者は、目標指紋に対応する新しい情報を追加として又は置き換えとしてデータベースに記憶する選択肢を与えられる。
【0023】
以上は、単に本発明の原理を示す。したがって、当該分野の当業者は、本文章において明確に説明又は提示されていないが、本発明の原理を実施すると共によって本発明の精神及びその範囲に収まる様々な変更態様を考案することが可能であることを理解され得る。例えば、上述の閾値は、本文章において静的な値として示される。当該分野の通常の知識のある者は、「学習」技術が、システムの性能を向上するために閾値を動的に修正するのに、システム100に適用され得ることを認識し得る。例えば、閾値は、同一の資料に関する符号間において観察される差異に基づき修正され得る。使用者が、一致された指紋及び目標間における非対応を繰り返し確認するような場合、直前の段落において議論されたように、例えば、システム100は、自動的に又は使用者が承認する若しくは開始することのいずれかによって閾値を減らすように構成され得る。同様にして、閾値は、データベース140のサイズ又はデータベース140のコンテンツの分類に基づき動的に修正され得る。同様に、指紋が分類される又は順序付けされる場合、種々異なる分類又は順序付けに関して種々異なる閾値が用いられ得る。これら及び他のシステム設定及び最適化の機構は、この開示を鑑みて当該分野の通常の知識を有する者にとって明らかであり、請求項の範囲に包含される。
【図面の簡単な説明】
【0024】
【図1】図1は、この発明に従う検索及び記憶システムのブロック図の例を示す。
【図2】図2は、この発明に従う一致決定処理のフロー図の例を示す。

【特許請求の範囲】
【請求項1】
目標指紋に対応する選択指紋に関して複数の指紋を検索するシステムであって、
所与の指紋を前記目標指紋と比較し、一致が決定される場合に前記所与の指紋を前記選択指紋として識別するように構成される比較器と、
前記所与の指紋を前記複数の指紋から前記比較器に供給するシーケンサと
を備え、
前記比較器は、該一致が1つ又は複数の差分が前記所与の指紋と前記目標指紋との間に存在する場合に決定され得るように、前記所与の指紋と前記目標指紋との間の差分に関連付けられた定量的尺度に基づいて該一致を決定するように構成される
システム。
【請求項2】
前記定量的尺度が、前記所与の指紋と前記目標指紋との間における前記差分の計数に依存する、請求項1に記載のシステム。
【請求項3】
前記比較器が、該一致を、前記定量的尺度を閾値と比較することによって決定するように構成される、請求項1に記載のシステム。
【請求項4】
当該システムが、更に、前記閾値を、以前の一致の決定に基づき動的に調節するように構成される、請求項3に記載のシステム。
【請求項5】
請求項1に記載のシステムであって、
前記比較器が、
前記所与の指紋と前記目標指紋との間における差分を識別するように構成される差分決定器と、
前記差分決定器に動作可能に結合され、識別された前記差分に基づき前記定量的尺度を決定するように構成される定量化器と
を含むシステム。
【請求項6】
前記差分決定器が排他的論理和関数を含む、請求項5に記載のシステム。
【請求項7】
前記定量化器が、識別された前記差分に基づき定量値を供給するルックアップテーブルを含み、
前記定量化器が、前記定量値に基づき前記定量的尺度を決定する、
請求項6に記載のシステム。
【請求項8】
前記定量化器が、識別された前記差分に基づき定量値を供給するルックアップテーブルを含み、
前記定量化器が、前記定量値に基づく前記定量的尺度を決定する、
請求項5に記載のシステム。
【請求項9】
該一致が決定されない場合に前記目標指紋を前記複数の指紋のうちのひとつとして記憶するように構成されるメモリ制御器を更に含む、請求項1に記載のシステム。
【請求項10】
前記メモリ制御器が、前記目標指紋をメモリに記憶するのに先入れ先出し手順を用いるように構成される、請求項9に記載のシステム。
【請求項11】
目標指紋に対応する選択指紋に関して複数の指紋を検索するシステムであって、
所与の指紋を前記目標指紋と比較し、一致が決定される場合に前記所与の指紋を前記選択指紋として識別するように構成される比較器と、
前記所与の指紋を前記複数の指紋から前記比較器に供給するシーケンサと、
前記複数の指紋を含むように構成されるメモリと、
該一致が決定されない場合に、先入れ先出し(FIFO)手順を用いて前記目標指紋を前記メモリにおいて前記複数の指紋のうちの1つとして記憶するように構成されるメモリ制御器と
を備えるシステム。
【請求項12】
前記複数の指紋が、分類された順序で前記メモリに記憶される、請求項11に記載のシステム。
【請求項13】
請求項12に記載のシステムであって、
前記比較器が、前記所与の指紋と前記目標指紋との間における差分の数が、1より大きい値である閾値よりも少ない場合に該一致を決定するように構成され、これにより、該一致が、1つ又は複数の差分が前記所与の指紋と前記目標指紋との間において存在する場合に決定されることを可能にする、
システム。
【請求項14】
目標指紋に対応する一致指紋に関して複数の指紋を検索する方法であって、
前記複数の指紋からの所与の指紋を、前記所与の指紋が前記一致指紋であるかを決定するために、前記目標指紋と選択的に比較するステップ
を有し、
前記所与の指紋が、前記所与の指紋と前記目標指紋との間の差分の数が、1より大きい閾値より少ない場合に前記一致指紋であると決定され、
これにより、1つ又は複数の差分が前記所与の指紋と前記目標指紋との間に存在する場合に、前記所与の指紋が前記一致指紋であると決定されることを可能にする
方法。
【請求項15】
請求項14に記載の方法であって、
前記所与の指紋を前記目標指紋と比較するステップが、
前記所与の指紋と前記目標指紋との間における差分を識別するステップと、
識別された前記差分に基づき差分の数を定量化するステップと
を含む方法。
【請求項16】
前記差分を識別するステップが、前記所与の指紋と前記目標指紋との排他的論理和を実行するステップを含む、請求項15に記載の方法。
【請求項17】
前記差分の数を定量化するステップが、識別された前記差分に基づき定量値を得るために、ルックアップテーブルにアクセスするステップを含む、請求項16に記載の方法。
【請求項18】
前記差分の数を定量化するステップが、識別された前記差分に基づき定量値を得るために、ルックアップテーブルにアクセスするステップを含む、請求項17に記載の方法。
【請求項19】
前記目標指紋を、前記一致指紋が前記複数の指紋において見つからない場合に前記複数の指紋のうちの1つとして記憶するステップを更に含む、請求項14に記載の方法。
【請求項20】
前記目標指紋を記憶するステップが、制限サイズのメモリにおいて前記目標指紋を記憶するのに、先入れ先出し手順を適用するステップを含む、請求項19に記載の方法。

【図1】
image rotate

【図2】
image rotate


【公表番号】特表2007−511809(P2007−511809A)
【公表日】平成19年5月10日(2007.5.10)
【国際特許分類】
【出願番号】特願2006−530710(P2006−530710)
【出願日】平成16年5月24日(2004.5.24)
【国際出願番号】PCT/IB2004/001826
【国際公開番号】WO2004/107208
【国際公開日】平成16年12月9日(2004.12.9)
【出願人】(590000248)コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ (12,071)
【Fターム(参考)】