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