(57)【特許請求の範囲】
【請求項１】
相互に接続された入力／出力インターフェース、記憶装置及び処理装置を備えたコンピュータであって、前記コンピュータに、
前記入力／出力インターフェースからデジタルコンテンツを取得して前記記憶装置に格納するステップと、
前記記憶装置から前記デジタルコンテンツを取り出し、前記デジタルコンテンツを擬似ランダムにサイズおよび配置を決められた複数の第１のリージョンに分割し、特異値分解（ＳＶＤ）変換、離散コサイン変換（ＤＣＴ）又は離散ウェーブレット変換（ＤＷＴ）を用いて、前記複数の第１のリージョンから第１の特徴ベクトルを生成し、前記第１の特徴ベクトルの擬似ランダムな組み合わせを用いて前記デジタルコンテンツの第２の表現を生成し、前記第２の表現を擬似ランダムにサイズおよび配置を決められた複数の第２のリージョンに分割し、ＳＶＤ変換を用いて各前記第２のリージョンから第２の特徴ベクトルを生成し、前記第２の特徴ベクトルの組み合わせを含む出力を生成するように前記処理装置に処理させるステップと
を実行させるためのプログラムを記録したことを特徴とするコンピュータ読取り可能な記憶媒体。
【請求項２】
前記複数の第１及び第２のリージョンの少なくともいくつかは、重なり合うことを特徴とする請求項１に記載のコンピュータ読取り可能な記憶媒体。
【請求項３】
前記デジタルコンテンツは、デジタル画像、デジタルオーディオクリップ、デジタルビデオ、データベース、およびソフトウェア画像を含むグループから選択されることを特徴とする請求項１に記載のコンピュータ読取り可能な記憶媒体。
【請求項４】
相互に接続された入力／出力インターフェース、記憶装置及び処理装置を備え、かつ、プログラムされたコンピュータによって、デジタルコンテンツを規定する行列の少なくとも一部の統計的特徴に基づき、前記デジタルコンテンツの新しい表現を生成する方法であって、
前記入力／出力インターフェースから前記デジタルコンテンツを取得して前記記憶装置に格納するステップと、
前記記憶装置から前記デジタルコンテンツを取り出し、前記デジタルコンテンツを擬似ランダムにサイズおよび配置を決められた複数の第１のリージョンに分割し、特異値分解（ＳＶＤ）変換、離散コサイン変換（ＤＣＴ）又は離散ウェーブレット変換（ＤＷＴ）を用いて、前記複数の第１のリージョンから第１の特徴ベクトルを生成し、前記第１の特徴ベクトルの擬似ランダムな組み合わせを用いて前記デジタルコンテンツの第２の表現を生成し、前記第２の表現を擬似ランダムにサイズおよび配置を決められた複数の第２のリージョンに分割し、ＳＶＤ変換を用いて各前記第２のリージョンから第２の特徴ベクトルを生成し、前記第２の特徴ベクトルの組み合わせを含む出力を生成するように前記処理装置に処理させるステップと
を備えたことを特徴とする方法。
【請求項５】
前記複数の第１及び第２のリージョンの少なくともいくつかは、重なり合うことを特徴とする請求項４に記載の方法。
【請求項６】
前記デジタルコンテンツは、デジタル画像、デジタルオーディオクリップ、デジタルビデオ、データベース、およびソフトウェア画像を含むグループから選択されることを特徴とする請求項４に記載の方法。
【請求項７】
前記複数の擬似ランダムにサイズおよび配置を決められたリージョンは互いに重なり合わないことを特徴とする請求項４に記載の方法。
【請求項８】
プロセッサと、
前記プロセッサによって実行可能なプログラムが記録された記憶装置と、
前記記憶装置に接続された入力／出力インターフェースと
を備え、前記プログラムは、前記プロセッサに、
前記入力／出力インターフェースからデジタルコンテンツを取得して前記記憶装置に格納するステップと、
前記記憶装置から前記デジタルコンテンツを取り出し、前記デジタルコンテンツを擬似ランダムにサイズおよび配置を決められた複数の第１のリージョンに分割するステップと、
特異値分解（ＳＶＤ）変換、離散コサイン変換（ＤＣＴ）又は離散ウェーブレット変換（ＤＷＴ）を用いて、前記複数の第１のリージョンから第１の特徴ベクトルを生成するステップと、
前記第１の特徴ベクトルの擬似ランダムな組み合わせを用いて前記デジタルコンテンツの第２の表現を生成するステップと、
前記第２の表現を擬似ランダムにサイズおよび配置を決められた複数の第２のリージョンに分割するステップと、
ＳＶＤ変換を用いて各前記第２のリージョンから第２の特徴ベクトルを生成するステップと、
前記第２の特徴ベクトルの組み合わせを含む出力を生成するステップと
を実行させるプログラムである含むことを特徴とするシステム。
【請求項９】
前記複数の第１及び第２のリージョンの少なくともいくつかは、重なり合うことを特徴とする請求項８に記載のシステム。
【請求項１０】
前記デジタルコンテンツは、デジタル画像、デジタルオーディオクリップ、デジタルビデオ、データベース、およびソフトウェア画像を含むグループから選択されることを特徴とする請求項８に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、主に、信号表現技術に関する。
【背景技術】
【０００２】
デジタル商品は、多くの場合、イントラネットやインターネットのようなプライベートネットワークおよび公衆ネットワークを経由してコンシューマに配布される。また、デジタル商品は、コンパクトディスク（ＣＤ−ＲＯＭ）、デジタル多用途ディスク（ＤＶＤ）、ソフト磁気ディスケット、ハード磁気ディスク（たとえば、読み込み済みハードドライブ）などのような、不揮発性コンピュータ読取り可能な媒体でもコンシューマに配布される。
【０００３】
残念なことに、コンテンツ所有者（コンテンツ作成者、出版者、開発者、販売者など）が負担および損害を被るかたちで、デジタル商品の生のデジタルコンテンツに対して比較的容易に著作権侵害行為が行われる。コンテンツを作成して配布するコンテンツ産業（たとえば、娯楽、音楽、映画、ソフトウェアなどの産業）は、デジタル著作権侵害行為による損害に悩まされている。
【０００４】
「デジタル商品」は、総称的な呼称であるが、本願明細書では、電子的に保管されたり、伝達されたりするコンテンツを指す言葉として用いる。デジタル商品の例として、画像、オーディオクリップ、ビデオ、マルチメディア、ソフトウェア、データなどがある。デジタル商品は、状況に応じて、「デジタル信号」、「コンテンツ信号」、「デジタルビットストリーム」、「媒体信号」、「デジタルオブジェクト」、「オブジェクト」、「信号」などとも呼ばれる。
【０００５】
さらにデジタル商品は、大規模データベース（構造化されているものも、されていないものもある）に格納されることも多い。こうしたデータベースの規模が拡大するにつれ、商品の分類や識別を合理化する必要性が高まる。
【０００６】
（ハッシング）
ハッシング技術は、さまざまな用途に採用されている。それらの用途の中に、コンテンツ所有者の権利保護と、データベースの検索およびアクセスの高速化がある。ハッシング技術は、データベース管理、クエリ、暗号手法をはじめとして、大量のローデータを扱うさまざまな分野で使用されている。
【０００７】
一般に、ハッシング技術は、ローデータの大規模なブロックを、比較的小さい、構造化された識別子セットにマッピングする。これらの識別子は、「ハッシュ値」または単に「ハッシュ」とも呼ばれる。ハッシュ関数は、特定の構造および順序をローデータに導入することにより、ローデータのサイズを徹底的に減らして、ローデータを、より小さな（かつ、一般的に言って、より管理しやすい）表現にする。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
（従来のハッシングの制限）
従来のハッシング技術は、さまざまな種類のデータに使用されている。これらの技術は、良好な特性を有し、よく理解されている。残念なことに、ビジュアルコンテンツおよび／またはオーディオコンテンツを含むデジタル商品には、他のデジタルデータでは例のない、固有の難題がいくつかある。これは主に、デジタル商品のコンテンツが、人間の観察者による知覚評価にさらされているという特徴によるものである。通常、知覚評価とは、視覚評価および／または聴覚評価である。
【０００９】
たとえば、２つのデジタル商品のコンテンツが、実際には異なるものの、知覚的には、違いはごくわずかであるとする。人間の観察者は、２つのデジタル商品のコンテンツをほぼ同じであると見なす可能性がある。しかしながら、２つのデジタル商品のコンテンツ特性（色、ピッチ、輝度、位相など）の違いが知覚的にはごくわずかであっても、デジタルドメインでは、この２つの商品は実質的に異なるものとして存在する。
【００１０】
したがって、従来のハッシュ関数を使用すると、あるデジタル商品のわずかにシフトされたバージョンは、たとえ、人間の観察者にとってはオリジナルのデジタル商品と本質的に同一であっても（つまり、知覚的には同じであっても）、オリジナルのデジタル商品と比べて大きく異なるハッシュ値を生成する。
【００１１】
人間の観察者は、デジタル商品のある程度の変化には寛容である。たとえば、人間の耳は、オーディオ信号のあるレンジの周波数成分については、他のレンジの周波数成分より、変化に対して鈍感である。
【００１２】
人間のこうした寛容さが、違法な、あるいは良心的でない目的に利用される可能性がある。たとえば、高度なオーディオ処理技術を利用して、音質を知覚的に変えることなくオーディオ信号から著作権表示や埋め込み透かしを除去する著作権侵害行為が可能である。
【００１３】
デジタル商品に対するそのような悪意ある変更を「攻撃」と呼ぶ。これは、結果的にはデジタルドメインでの変更である。残念なことに、人間の観察者はこのような変更を知覚できないため、著作権侵害者は非合法なやりかたで不正コピーを流通できてしまう。
【００１４】
人間の観察者はそうした微小な（つまり、知覚不能な）変更に対して寛容であるが、従来のハッシング技術のかたちをとって、デジタル的に観察する場合は寛容ではない。従来のハッシング技術は、オリジナルのデジタル商品と著作権侵害されたコピーとで非常に異なるハッシュ値を生成するため、オリジナルのデジタル商品と著作権侵害されたコピーとが共通のコンテンツであることを識別することは、ほぼできない。このことは、両者が知覚的に同一である（つまり、人間の観察者には同じに見える）場合ですら同様である。
【００１５】
（ハッシング技術の応用）
ハッシング技術は、いたるところで、さまざまなかたちで応用されている。そうした応用として、著作権侵害行為の防止、コンテンツの分類、コンテンツの認識、透かしの埋め込み、コンテンツベースの鍵生成、オーディオストリームとビデオストリームの同期などがある。
【００１６】
ハッシング技術を使用すると、Ｗｅｂ上で、著作権侵害の疑いのあるデジタル商品を検索できる。また、ハッシング技術を使用すると、信号のコンテンツに基づく鍵を生成できる。これらの鍵は、秘密鍵の代わりに、あるいは秘密鍵に追加して使用される。また、ハッシュ関数を使用すると、入力信号を同期できる。そのような信号の例として、ビデオ信号やマルチメディア信号がある。同期をリアルタイムで実行する場合、ハッシング技術は高速でなければならない。
【課題を解決するための手段】
【００１７】
本願明細書では、画像などのデジタル商品の新しい表現を、新しく定義した表現ドメインで生成する実施態様を説明する。具体的には、この新しいドメインでは、行列の不変性に基づいて表現される。実施態様によっては、行列の不変性は、たとえば、特異値分解（ＳＶＤ）を多用することができる。
【００１８】
図面全体を通して、同じ数字は類似の要素や機能を参照する。
【発明を実施するための最良の形態】
【００１９】
以下の説明では、本発明が十分に理解されるよう、説明のために特定の数字、資料、および構成を示している。しかしながら、この特定の例示的な詳細を用いなくても本発明が実施可能であることは、当業者であれば明らかであろう。他の例では、本発明の例示的な実施態様の記述を明確にするために、したがって、本発明をよりよく説明するために、よく知られている機能を省略または簡略化している。さらに、理解しやすいように、特定の方法手順を、区分化した手順として表したが、これらの区分化して表した手順は、必然的に順序に応じて性能が変わるものと解釈されるべきでなない。
【００２０】
後述するように、添付した請求項に記載した要素を組み込んだ、行列の不変性に基づくデジタル商品表現の１つまたは複数の例示的な実施態様を示す。制定法に従って記載する明細書の要件、実施可能性要件、および最良の実施態様の要件を満たすために、それらの実施態様を具体的に説明する。ただし、説明自体は、本特許の範囲を限定することを意図したものではない。
【００２１】
本願明細書で説明する、以下の例示的な実施態様は、例である。以下の例示的な実施態様は、特許請求する本発明の範囲を限定するものではない。むしろ、本発明は、他の現在または未来の技術と組み合わせて、他の方法で実施される、および実装されることも可能である。
【００２２】
行列の不変性に基づくデジタル商品表現の実施例を「例示的な商品表現」と呼ぶことにする。
【００２３】
本願明細書でランダム化について触れた場合、ランダム化とは、敵対者に知られていない秘密鍵（ｘ）をシードとする擬似乱数生成器（たとえば、ＲＣ４）によって実行されるものであると理解されたい。
【００２４】
（はじめに）
本願明細書で説明する、本発明の１つまたは複数の例示的な実施態様は、図３に示すようなコンピューティングシステムおよびコンピュータネットワークにおいて全面的または部分的に実装することができる。実施態様はさまざまな用途を有することができるが、暗号作成システム、権限付与、およびセキュリティは、具体的な用途の例である。
【００２５】
例示的な商品表現は、行列の不変性を用いて、擬似ランダムに選択された、商品のセミグローバルリージョンから、デジタル商品のロバストな特徴ベクトルを抽出する。そのようなリージョンは、重なり合っていてよい（ただし重なることは必須ではない）。
【００２６】
例示的な商品表現の計算は、従来の手法と異なり、行列の不変性に基づく（たとえば、特異値分解（ＳＶＤ）に基づく）。ＳＶＤの成分は、デジタル商品の本質的な特徴を取り込む。
【００２７】
（セミグローバルな特徴）
セミグローバルな特徴は、個々の要素のグループまたはコレクションの全体的な特徴を表すものである。一例として、セミグローバルな特徴は、複数の「リージョン」（つまり「セグメント」）の統計情報や特徴である場合がある。セミグローバルな特徴は、個々の要素の個別の局所的な特徴を表すものではなく、グループ（たとえば、セグメント）の全体的な知覚コンテンツを表すものである。
【００２８】
セミグローバルな特徴を、グループの数学的または統計的な表現によって決定することができる。たとえば、グループ内の全画素のカラー値の平均で表すことができる。したがって、そのようなセミグローバルな特徴を「統計的特徴」と呼ぶこともある。局所的な特徴は、ロバストな統計的特徴を表現しない。
【００２９】
（表記法）
本願明細書では、大文字（たとえば、Ａ、Ｂ、Ｃ）は行列を表し、ベクトル表記が付いた小文字（たとえば、〜ａ、〜ｂ、〜ｃ）は列ベクトルを表し、小文字（たとえば、ａ、ｂ、ｃ）はスカラを表す。秘密鍵はκを付けて表す。
【００３０】
本願明細書では、以下の数学的定義を使用する。
・Ｉ∈Ｒｎ×ｎ：サイズｎ×ｎのデジタル商品の２次元表現。
・Ｌｎ：サイズｎ×ｎの識別行列。
・Ａｉ∈Ｒｍ×ｍ：デジタル商品から抽出されたｉ番目の擬似ランダムリージョン（たとえば、サイズｍ×ｍの長方形）を表す行列。
・ＡＴ：行列Ａの転置行列。
【００３１】
【数１】
0004812291.tif 000002
【００３２】
で定義される、行列Ａのフロベニウスノルム。ａｋ，ｌはＡのｋ行ｌ列の要素。
・ＡＨ：行列Ａのエルミート転置行列。実行列の場合はＡＨ＝ＡＴであることに留意されたい。
【００３３】
【数２】
0004812291.tif 000003
【００３４】
で定義されるベクトルのＬ２ノルム。νｋは、〜νのｋ番目の要素。
・Ｄ∈Ｒｍ×ｍ：長さｍの１次元信号に対するサイズｍのＤＣＴ（離散コサイン変換）変換行列。行列Ｉ（サイズｍ×ｍ）の２次元ＤＣＴ変換は、ＤＩＤＴで与えられることに留意されたい。
・Ｗ∈Ｒｍ×ｍ：長さｍの１次元信号に対するサイズｍのＤＷＴ（離散ウェーブレット変換）変換行列。行列Ｉ（サイズｍ×ｍ）の２次元ＤＷＴ変換は、ＷＩＷＴで与えられることに留意されたい。
・｜〜ａ｜Ｈ：バイナリベクトル〜ａのハミング重み。
・行列Ａｉ∈Ｒｍ×ｍのＳＶＤは、Ａ＝ＵΣＶＨで定義される。ただし、
【００３５】
【数３】
0004812291.tif 000004
【００３６】
は、行列ＡＡＨの正規直交固有ベクトルである（一般には一意でなくともよい）。
【００３７】
【数４】
0004812291.tif 000005
【００３８】
は、Ａの左特異ベクトルと呼ばれる。
【００３９】
【数５】
0004812291.tif 000006
【００４０】
は、行列ＡＨＡの正規直交固有ベクトルである（一般には一意でなくともよい）。
【００４１】
【数６】
0004812291.tif 000007
【００４２】
は、Ａの右特異ベクトルと呼ばれる。
−Σ：サイズｍ×ｍの対角実行列。ｉ番目の対角エントリσｉをｉ番目の特異値と呼ぶ。一般性を失なわずに、σ１＞＝σ２…＞＝σｍと仮定できる。
【００４３】
（特異値分解（ＳＶＤ））
例示的な商品表現は、次元を縮退させながら、幾何学的情報の本質的な部分を取り込む。ＳＶＤは、いくつかの立証可能な最適化特性を有する。フロベニウスノルムの意味での、行列（たとえば、ｒａｎｋ  Ｎ、Ｎ＞＝Ｋ）の「最良」低次元（たとえば、Ｋ次元）近似は、先頭のＫ個の特異ベクトルと、対応する特異値によって生成される。
【００４４】
デジタル商品（画像など）のセミグローバルな特徴および幾何学情報の本質は、そのような商品のＳＶＤの有効成分によって凝縮されて取り込まれる。そのような成分は、関心対象のデジタル製品が知覚的に大きく変更されない限り、意図的または意図的でない外乱にさらされても、ほぼ不変である。
【００４５】
例示的な商品表現を用いる場合、ＳＶＤは、主にセキュリティ上の理由から、画像の、擬似ランダムに選択されたセミグローバルリージョンに適用される。これらのリージョンから取得されたＳＶＤ成分は、使用するリージョンの数とサイズが十分である限り、デジタル商品の全体的な特徴を正確に表現し、適度なセキュリティを実現しながら、好ましいロバスト特性を有する。
【００４６】
これまでの選択肢は、一般的には、ＤＣＴ（離散コサイン変換）およびＤＷＴ（離散ウェーブレット変換）であった。ＤＣＴまたはＤＷＴを使用すると、デジタル商品は、固定された基底ベクトルの固定された集合に射影される。ＤＣＴ／ＤＷＴは、従来の商品処理用途では概して効果的であることが分かっている。
【００４７】
例示的な商品表現は、ＤＣＴ／ＤＷＴ型の固定された基底変換ではなく、特異値分解（ＳＶＤ）を用いる。ＳＶＤを用いた場合、例示的な商品表現は、Ｌ２ノルムの意味での最適な基底ベクトルを選択する（後述の式（１）を参照）。さらに、所与の行列に対し、そのＳＶＤは一意である。１つの例えとして、デジタル商品がある高次元ベクトル空間内のベクトルとして表現される場合、特異ベクトルは、式（１）の意味でのその商品に対する最適方向情報を与え、特異値は、この方向に沿っての距離情報を与える。その結果、大きな特異ベクトルに対応する特異ベクトルは、必然的に、任意のスケーリング攻撃や他の小規模な従来の信号処理変更を受けやすい傾向にある。
【００４８】
ＳＶＤ分解を用いることにより、デジタル商品は、３次元空間内の２次元サーフェスと見なすことができる。ＤＣＴのような変換をデジタル商品（またはサーフェス）に適用した場合、そのデジタル商品に際立った特徴的な（したがって、重要な）幾何学的特徴があれば、その情報は、すべての係数に分散される。
【００４９】
たとえば、画像に強いピーク（たとえば、背景が暗い中での非常に明るい部分）を含むサーフェスがあるとすると、これは、ＤＣＴの場合にはすべての変換に分散される。ＳＶＤを用いると、例示的な商品表現は、これらの重要な特徴の大きさを（特異値で）保持するとともに、それらの位置と形状を特異ベクトルで保持する。したがって、左右の最も上にある特異ベクトルの組み合わせ（つまり、最大の特異値に対応する特異ベクトル）は、画像内の重要な幾何学的特徴をＬ２ノルムの意味で取り込む。
【００５０】
（ＳＶＤの特性）
以下、ＳＶＤの数学的特性について説明する。ＡのＳＶＤをＡ＝ＵΣＶＨとすると、
【００５１】
【数７】
0004812291.tif 000008
【００５２】
は、Ａの列空間の正規直交基底である。
【００５３】
【数８】
0004812291.tif 000009
【００５４】
は、Ａの行空間の正規直交基底である。
【００５５】
３）次の２式が成り立つ。
【００５６】
【数９】
0004812291.tif 000010
【００５７】
ただし、｜〜ｘ｜２＝｜〜ｙ｜２＝１および∀ｋ、１＜ｋ＜＝ｍである。
【００５８】
【数１０】
0004812291.tif 000011
【００５９】
ただし、σ１＞＝σ２…＞＝σｍは特異値であり、｛〜ｕｉ｝および｛〜νｉ｝は対応する特異ベクトルである。
【００６０】
（ハッシング）
例示的な商品表現で用いるハッシュ関数は、デジタル商品（画像など）Ｉと秘密鍵κとの２つの入力を有する。このハッシュ関数は、濃度が２ｈである集合｛０，１｝ｈから短いベクトル〜ｈ＝ＨＫ（Ｉ）を生成する。知覚的に同等なデジタル商品はすべて、知覚的なハッシュが高い確率で等しいことが望ましい。また、知覚的に異なる２つのデジタル商品については、関連のないハッシュ値が高い確率で生成されることが望ましい。そのようなハッシュ関数は多対１のマッピングである。一方、ほとんどの用途では、知覚的に同等な（それぞれは異なる）入力に対するハッシュ値は、高い確率で十分に同等であれば（それぞれは異なっても）事足りるとしてよい。つまり、ハッシュ関数が示す変化は穏やかなものでよい。
【００６１】
そのようなハッシュ関数の要件は以下のとおりである。
【００６２】
１）ランダム化：任意の入力に対して、そのハッシュ値は、すべての可能な出力の中にほぼ均一に分散されなければならない。その確率測度は秘密鍵で定義される。
【００６３】
２）互いの独立性：知覚的に異なる２つのデジタル商品のハッシュ出力は、高い確率で互いに独立でなければならない。この確率空間は秘密鍵によって定義される。
【００６４】
３）不変性：許容範囲内の起こりうるすべての外乱に対して、ハッシュ関数の出力は、高い確率でほぼ不変でなければならない。この確率空間は秘密鍵によって定義される。
【００６５】
人間が知覚しうる範囲で２つのデジタル商品の間に特に目立つ歪みがなければ、それらのデジタル商品は知覚的に同等と考えられる。
【００６６】
（例示的な商品表現の方法論的実施態様）
図１は、例示的な商品表現の方法論的実施態様を示す図である。この方法論的実施態様は、ソフトウェア、ハードウェア、または両者の組み合わせで実施できる。
【００６７】
ブロック１１０では、例示的な商品表現は、入力デジタル商品を取得する。この説明では、Ｉ∈Ｒｎｘｎで表される、サイズｎ×ｎの画像を、入力デジタル商品とする。この画像を長方形にすることも可能である点に留意されたい（つまり、縦横を異なるサイズにすることも可能）。以下の手法は、容易にこの条件に一般化できる。
【００６８】
ブロック１２０では、例示的な商品表現は、Ｉから複数のリージョンを擬似ランダムに形成する。リージョンの数をｐとし、リージョンの形状を、たとえば、長方形とする。リージョンの形状は、実施態様ごとに異なってもよい。
【００６９】
これらのリージョンは互いに重なり合ってもかまわないが、重なり合っている必要もない。ただし、そのように重なり合っていることが必要な実施態様も作成可能である。逆に、重なり合わないことが必要な実施態様も作成可能である。
【００７０】
この操作は、Ａｉ∈Ｒｍ×ｍ（１＜＝ｉ＜＝ｐ）で表される。Ａｉは、デジタル商品から抽出されたｉ番目の擬似ランダムリージョン（たとえば、サイズｍ×ｍの長方形）を表す行列である。これらのリージョンの各々を、行と列のサイズが異なる行列にすることができ、この手法では、この行列を容易に使用できる点に留意されたい。
【００７１】
ブロック１３０では、例示的な商品表現は、ＳＶＤベースの変換を介して、各リージョンＡｉから特徴ベクトル（各特徴ベクトルに〜ｇｉというラベルを付ける）を生成する。この特徴ベクトル生成を、一般的に〜ｇｉ＝Ｔ１（Ａｉ）と表すことができる。
【００７２】
これらの特徴ベクトル（〜ｇｉ）は、適切な量子化の後にハッシュ値として使用したり、実際のハッシュ値を生成できる中間特徴として使用したりできる。このＳＶＤベースの変換（Ｔ１（Ａｉ））は、ＳＶＤを用いたハッシュ関数である。後述する「ＳＶＤベースのハッシュ関数」のセクションで、ハッシュ関数の例を示す。
【００７３】
この時点で、例示的な商品表現は、デジタル商品の表現（〜ｇｉ＝Ｔ１（Ａｉ）によって生成された特徴ベクトルのコレクション）を生成している。実施態様によっては、ここで、｛〜ｇ１，…，〜ｇｐ｝の組み合わせを用い、ハッシュベクトルを形成して終了する場合がある。
【００７４】
これらの実施態様では、Ｔ１（Ａｉ）が、長方形Ａｉから、上からｑ個の特異値を生成するように、Ｔ１（・）を設計できる。あるいは、Ｔ１（Ａｉ）が上からｑ個の特異ベクトル（左特異ベクトル、右特異ベクトル、またはその両者）を生成するように、Ｔ１（・）を設計できる。これらは、大きい順にｑ個の値に対応するｑ個の特異ベクトルである。いずれの場合も、必然的に、パラメータｑを適切に選択しなければならない。たとえば、論理的な決定のためには、ｑ＜＜ｍであることが必要である。
【００７５】
実施態様によっては、Ａｉが画像全体に対応するように、ｐ＝１およびＡｉを選択することが可能である。この変形体はランダム性をまったく有しないこと、したがって、画像ハッシングと競合しない用途にはより適合することに留意されたい。
【００７６】
あるいはその代わりに、他の実施態様では、追加処理を実施して、さらにスムーズな結果を生成できる。これをブロック１４０、１５０、１６０、および１７０に示す。
【００７７】
ブロック１４０では、例示的な商品表現は、特徴ベクトル｛〜ｇ１，…，〜ｇｐ｝の擬似ランダムな組み合わせを使用して、デジタル商品の第２の表現Ｊを構築する。この時点で、ブロック１３０の一部として生成されたこれらのベクトルを、「中間」特徴ベクトルと見なすことができる。
【００７８】
第２の表現Ｊのそのような構築の一部として、例示的な商品表現は、各サブセクションから、最大特異値に対応する１番目の左特異ベクトルおよび右特異ベクトルを収集する。
【００７９】
Ｇ＝｛〜ｕ１，…，〜ｕｐ，，〜ν１，…，〜νｐ｝とする。ただし、〜ｕｉ（〜νｉそれぞれ）は、ｉ番目のサブセクションの先頭の左特異ベクトルと右特異ベクトルである。次に、例示的な商品表現は、集合Ｇからスムーズな表現Ｊを擬似ランダムに形成する。つまり、擬似ランダムに選択された所与の初期特異ベクトルについて、次に選択するベクトルがＬ２ノルムの意味で前のベクトルに最も近くなるように、後続のベクトルをＧから選択し、置換することにより、Ｊの形成を進める。
【００８０】
したがって、２ｐステップ後にＧのすべての要素が擬似ランダムに並べ替えられ、（サイズｍ×２ｐの）Ｊが形成される。連続性とスムーズさを実現するために、Ｊの形成において、Ｌ２メトリックを、（おそらくは、ランダム化された）他の任意の適切なメトリックで置き換えることができる点に留意されたい。実施態様によっては、Ｊのスムーズさが求められる場合がある。
【００８１】
また、この単純な、ベクトルの擬似ランダム並べ替えの代わりに、他の（おそらくは、より複雑な）操作を適用してＪを生成することも可能である点にも留意されたい。
【００８２】
ブロック１５０では、例示的な商品表現は、Ｊから複数のリージョンを擬似ランダムに形成する。リージョンの数をｒとし、リージョンの形状を、たとえば、長方形とする。リージョンの形状は、実施態様ごとに異なってもよい。これらのリージョンは、前述のリージョンと同様に、任意の形状をとることができ、重なり合ってもよい（重なり合うことは必須ではない）。
【００８３】
この操作は、Ｂｉ∈Ｒｄ×ｄ（１＜＝ｉ＜＝ｒ）で表される。Ｂｉは、デジタル商品の第２の表現Ｊから抽出されたｉ番目の擬似ランダムリージョン（たとえば、サイズｄ×ｄの長方形）を表す行列である。この実施態様では、長方形の縦横のサイズが異なってもよいことに留意されたい。他の実施態様では、長方形の縦横のサイズが同じ場合がある。
【００８４】
ブロック１６０では、例示的な商品表現は、ＳＶＤベースの変換を介して、各リージョンＢｉから特徴ベクトルの新しい集合を生成する（各特徴ベクトルに〜ｆｉというラベルを付ける）。この特徴ベクトル生成を、一般的に〜ｆｉ＝Ｔ２（Ｂｉ）と表すことができる。
【００８５】
これらの特徴ベクトル（〜ｆｉ）はハッシュ値である。このＳＶＤベースの変換（Ｔ２（Ｂｉ））は、ＳＶＤを用いたハッシュ関数である。後述する「ＳＶＤベースのハッシュ関数」のセクションにおいて、ハッシュ関数の例を示す。これら２つのＳＶＤベースの変換（Ｔ１およびＴ２）は、互いに同じである場合、または互いに異なる場合がある。
【００８６】
ブロック１７０では、例示的な商品表現は、この新しい集合｛〜ｆ１，…，〜ｆｐ｝の特徴ベクトルを組み合わせて新しいハッシュベクトルを形成し、これによって、そのベクトルの組み合わせを含む出力を生成する。
【００８７】
（ＳＶＤベースのハッシュ関数）
このセクションでは、図１の説明の中で紹介したＳＶＤベースの変換（Ｔ１およびＴ２）が用いることのできるいくつかのハッシュ関数について説明する。
【００８８】
（ＳＶＤ−ＳＶＤハッシュ関数）
たとえば、所与の画像に対して、例示的な商品表現は、ｐ個のサブ画像Ａｉ∈Ｒｍ×ｍ（１＜＝ｉ＜＝ｐ）を擬似ランダムに選択する。次に例示的な商品表現は、各サブ画像のＳＶＤ
Ａｉ＝ＵｉＳｉＶｉＴ
を検出する。ただし、ＵｉとＶｉはそれぞれｍ×ｍの実数の左特異ベクトル行列および右特異ベクトル行列であり、Ｓｉは、対角方向に特異値を含む、ｍ×ｍの実数の対角行列である。
【００８９】
例示的な商品表現は、ブロック１４０で第２の表現を形成した後に、Ｂｉのサブセクションに対してＳＶＤを再適用する。例示的な商品表現は、対応する、各Ｂｉの先頭のｒ個の左特異ベクトルおよび右特異ベクトルの集合を、適切な量子化の後、ハッシュベクトルとして保存する。
【００９０】
（ＤＣＴ−ＳＶＤ）
ＳＶＤ−ＳＶＤ手法の変形として、例示的な商品表現は、ブロック１３０での最初の変換（Ｔ１）として２Ｄ−ＤＣＴ変換を用いる。各サブ画像Ａｉの２Ｄ−ＤＣＴ
Ｄｉ＝ＤＡｉＤＴ
を求めた後、係数行列Ｄｉからの最も高い周波数帯だけが保存される。したがって、ＤはＤＣＴ変換行列を意味する。ｆｍｉｎおよびｆｍａｘを選択すると、選択した周波数帯が確定する。低〜中周波数帯の係数は、画像に対してより描写的かつ特徴的である。ｆｍｉｎ＞０となるように選択するとＤＣ周波数付近が回避され、単純な拡大縮小やＤＣ電位の変化に、より敏感になる。ｆｍａｘとして小さい値を選択すると、わずかのノイズ付加、スムージング、圧縮などによって変更される可能性のある高い周波数の係数の使用を回避できる。したがって、問題仕様に応じて、適切なｆｍｉｎおよびｆｍａｘの値を選択できる。
【００９１】
この周波数帯の係数は、各リージョンＡｉのベクトル
【００９２】
【数１１】
0004812291.tif 000012
【００９３】
として保存される。｛〜ｄｉ｝の要素の順序はユーザ次第であり、この順序によって、さらにランダム性を高めることが可能である。次に、集合Ｇ＝｛〜ｄ１，…，〜ｄｐ｝からランダムベクトルを選択し、スムーズな表現Ｊを擬似ランダムに形成することによって、第２の表現は、同じ行に沿って形成される。次に、例示的な商品表現は、
Ｊ＝ＵＳＶＴ
のように、ＪにＳＶＤを適用し、先頭の左特異ベクトル〜ｕ１および右特異ベクトル〜ν１をハッシュベクトルとして保存する。
【００９４】
（ＤＷＴ−ＳＶＤ）
これは、ＤＣＴ−ＳＶＤ手法の変形であり、２Ｄ−ＤＣＴの代わりに２Ｄ−ＤＷＴを用いる。画像からランダムな長方形Ａｉ’を取得した後、各ＡｉにｌレベルのＤＷＴを適用する。次の段階で第２の表現Ｊを形成するために、ＤＣサブバンドは、ベクトル
【００９５】
【数１２】
0004812291.tif 000013
【００９６】
として保存される。次に、
Ｊ＝ＵＳＶＴ
のように、Ｊに対してＳＶＤを適用する。
【００９７】
最大特異値に対応する１番目の左特異ベクトル〜ｕ１および右特異ベクトル〜ν１が、適切な量子化の後、ハッシュベクトルとして保存される。
【００９８】
（バイナリＳＶＤ）
例示的商品表現は、オリジナルドメインに対して作業する代わりに、オリジナル画像からバイナリ表現を形成して、デジタル商品の重要なリージョンを保全する。商品が画像の場合、この手法は、画像の画素に対してしきい値を設定する場合がある。この場合、しきい値は、画像の画素のｔパーセントだけが画像（またはゼロ）として表現されるように選択される。あるいは、サブ画像ごとに、画像の画素のｔパーセントだけが画像（またはゼロ）として表現されるようにしきい値を選択することもできる。
【００９９】
所与の画像（バイナリ画像）Ｉに対して、しきい値を設定した後の画像をＩｂとして表し、先頭の左バイナリ特異ベクトルおよび右バイナリ特異ベクトルを、
【０１００】
【数１３】
0004812291.tif 000014
【０１０１】
のように、最大特異値に対応するよう定義することができる。
【０１０２】
ただし、〜ｘと〜ｙはバイナリベクトルであり、
【０１０３】
【数１４】
0004812291.tif 000015
【０１０４】
【数１５】
0004812291.tif 000016
【０１０５】
から導出するようにして、代替として求めることができる。
【０１０６】
したがって、しきい値の設定後、各バイナリサブ画像の先頭のバイナリ特異ベクトルは求められ、集合Ｇ＝｛〜ｕｂ１，…，〜ｕｂｐ，〜νｂ１，…，〜νｂｐ｝が形成される。例示的な商品表現は、第２段階で第２のバイナリ表現Ｊｂを形成した後、擬似ランダムに選択されたｒ個のリージョンに対してバイナリＳＶＤを用いることにより先に進む。最終的なハッシュ値は、〜ｈ＝｛〜ｕｊ１，…，〜ｕｊｒ，〜νｊ１，…，〜νｊｒ｝によって与えられる。
【０１０７】
（ダイレクトＳＶＤ）
Ｔ１は、識別変換として使用でき、サブセクションを直接使用する。この考え方は、しきい値を設定した後に形成できるバイナリデジタル商品（バイナリ画像Ｉｂなど）にすぐに適用できる。サイズｍ×ｍの各サブセクションＡｉから、ベクトル
【０１０８】
【数１６】
0004812291.tif 000017
【０１０９】
を商品のサンプルから直接形成する。第２の表現Ｊは、Ｇ＝｛〜ｄ１，…，〜ｄｐ｝から直接生成される。次に、例示的な商品表現は、
Ｊ＝ＵＳＶＴ
のように、ＪにＳＶＤを適用し、先頭の左特異ベクトル〜ｕ１および右特異ベクトル〜ν１をハッシュベクトルとして保存する。
【０１１０】
（デジタル商品の表現を生成する例示的なシステム）
図２は、デジタル商品の表現を生成する例示的なシステム２００を示している。これは、例示的な商品表現の一実施形態例である。
【０１１１】
システム２００は、デジタル商品の表現（たとえば、ハッシュ値）を生成する。この例では、デジタル商品は画像である。システム２００は、商品取得装置２１０、分割装置２２０、リージョン統計計算装置２３０、および出力装置２４０を含む。
【０１１２】
商品取得装置２１０は、デジタル商品２０５（オーディオ信号やデジタル画像など）を取得する。商品取得装置２１０は、デジタル商品２０５を、記憶装置やネットワーク通信リンクなどの、ほぼあらゆるソースから取得できる。商品取得装置２１０はまた、商品を取得することに加え、商品の振幅を正規化することができる。その場合、商品取得装置を振幅正規化装置と呼ぶこともできる。
【０１１３】
分割装置２２０は、商品を、擬似ランダムにサイズを決められ、擬似ランダムに配置された複数のリージョン（つまり、パーティション）に分割する。そのようなリージョンは重なり合ってもよい（ただし、重なり合うことは必須ではない）。
【０１１４】
たとえば、商品が画像の場合は、サイズと位置が擬似ランダムである２次元ポリゴン（たとえば、リージョン）に分割できる。別の例として、商品がオーディオ信号の場合は、（周波数と時間による）オーディオクリップの２次元表現を、サイズと位置が擬似ランダムである２次元ポリゴン（たとえば、三角形）に分割できる。
【０１１５】
この実施態様では、リージョンは互いに完全に重なり合うことができる。
【０１１６】
リージョン統計計算装置２３０は、各リージョンについて、分割装置２２０により生成された複数のリージョンの統計値を計算する。統計値は、リージョンごとに計算される。リージョン統計計算装置２３０で計算された統計値を、ブロック１３０および１６０の説明の中で示した特徴ベクトルにすることができる。
【０１１７】
出力装置２４０は、リージョン統計計算装置２３０からの結果（リージョンごと、または合計）を出力できる。その結果を、保存すること、またはさらなる計算に使用することができる。
【０１１８】
（例示的な商品表現の応用例）
例示的な商品表現は、さまざまな用途で役に立つ。そうした用途には、競合するシナリオと競合しないシナリオとが含まれる。
【０１１９】
競合しない用途には、信号データベースの検索や、競合しない媒体での信号監視が含まれる。競合しない用途では、本発明の手法を画像全体に適用すると、好ましい結果が得られるであろう。さらに本発明のアルゴリズムの別の用途として、いくつかの検定用途がある。人間の際立った特徴（顔写真、虹彩写真、指紋など）をコンパクトに記述するために、ある用途では、それらのハッシュ値を用いる。この場合、ハッシュ値は、例示的な商品表現によって生成される。
【０１２０】
（例示的なコンピューティングシステムおよび環境）
図３は、本願明細書で説明したように例示的な商品表現を（全面的または部分的に）実装できる、適切なコンピューティング環境３００の一例を示している。コンピューティング環境３００は、本願明細書で説明したコンピュータアーキテクチャおよびネットワークアーキテクチャで利用できる。
【０１２１】
例示的なコンピューティング環境３００は、コンピューティング環境の一例に過ぎず、コンピュータアーキテクチャおよびネットワークアーキテクチャの使用範囲または機能範囲に関して制限を示唆するものではまったくない。コンピュータ環境３００は、例示的なコンピューティング環境３００の中で示された、いずれかのコンポーネントまたはコンポーネントの組み合わせに関連して何らかの依存性や要件を有するものと解釈されるべきではない。
【０１２２】
例示的な商品表現は、他のさまざまな汎用または専用コンピューティングシステム環境あるいは構成に実装することができる。使用に適すると考えられる、よく知られたコンピューティングシステム、環境、および／または構成の例として、これに限定されないが、パーソナルコンピュータ、サーバコンピュータ、シンクライアント、ハンドヘルドまたはラップトップ装置、マルチプロセッサシステム、マイクロプロセッサベースシステム、セットトップボックス、プログラム可能な民生用電子機器、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、これらのシステムまたは装置のいかなるものも含む分散コンピューティング環境などがある。
【０１２３】
例示的な商品表現を、プログラムモジュールなどの、コンピュータによって実行されるプロセッサ実行可能命令の全体的なコンテンツの中で説明できる。一般に、プログラムモジュールは、特定のタスクを実行すること、または特定の抽象データ型を実装することができるルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。また、例示的な商品表現は、通信ネットワークを通じてリンクされているリモート処理装置でタスクを実行する分散コンピューティング環境においても実施できる。分散コンピューティング環境では、プログラムモジュールを、メモリ記憶装置を含む、ローカルコンピュータとリモートコンピュータの両方の記憶媒体に配置できる。
【０１２４】
コンピューティング環境３００は、コンピュータ３０２の形態で汎用コンピューティング装置を含む。コンピュータ３０２のコンポーネントには、これに限定されないが、１つまたは複数のプロセッサまたは処理装置３０４、システムメモリ３０６、およびプロセッサ３０４をはじめとする種々のシステムコンポーネントをシステムメモリ３０６に接続するシステムバス３０８を含めることができる。
【０１２５】
システムバス３０８は、任意の複数の種類のバス構造のうちの１つまたは複数を表し、メモリバスまたはメモリコントローラ、ペリフェラルバス、ＡＧＰ（Ａｃｃｅｌｅｒａｔｅｄ  Ｇｒａｐｈｉｃｓ  Ｐｏｒｔ）、および各種バスアーキテクチャを任意に使用するプロセッサバスまたはローカルバスを含む。そのようなアーキテクチャの例として、ＣａｒｄＢｕｓ、ＰＣＭＣＩＡ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ  Ｍｅｍｏｒｙ  Ｃａｒｄ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ａｓｓｏｃｉａｔｉｏｎ）、ＡＧＰ（Ａｃｃｅｌｅｒａｔｅｄ  Ｇｒａｐｈｉｃｓ  Ｐｏｒｔ）、ＳＣＳＩ（Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）、ＩＥＥＥ  １３９４、ＶＥＳＡ（Ｖｉｄｅｏ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｓｔａｎｄａｒｄｓ  Ａｓｓｏｃｉａｔｉｏｎ）ローカルバス、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔｓ）バス（メザニンバスとも呼ぶ）などがある。
【０１２６】
コンポーネント３０２は、一般的には、種々のプロセッサ読取り可能な媒体を含む。そのような媒体は、コンピュータ３０２がアクセスできる任意の市販媒体であり、揮発性および不揮発性媒体の両方、リムーバブルおよび固定の媒体の両方を含む。
【０１２７】
システムメモリ３０６は、ＲＡＭ（ランダムアクセスメモリ）３１０などの揮発性メモリ、および／またはＲＯＭ（読み出し専用メモリ）３１２などの不揮発性メモリの形態でプロセッサ読取り可能な媒体を含む。起動時などの、コンピュータ３０２内の要素間の情報転送を支援する基本ルーチンを含むＢＩＯＳ（基本入出力システム）３１４は、ＲＯＭ３１２に格納される。ＲＡＭ３１０は、一般的には、処理装置３０４によって、ただちにアクセス可能である、かつ／または現在運用されているデータおよび／またはプログラムモジュールを格納する。
【０１２８】
コンピュータ３０２はさらに、他のリムーバブル／固定の揮発性／不揮発性コンピュータ記憶媒体を含むことができる。一例として、図３は、固定の不揮発性磁気媒体（図示せず）の読み取りおよび書き込みを行うハードディスクドライブ３１６、リムーバブルの不揮発性磁気ディスク３２０（たとえば、「フロッピー（登録商標）ディスク」）の読み取りおよび書き込みを行う磁気ディスクドライブ３１８、およびＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、その他の光媒体などの、リムーバブルの不揮発性光ディスク３２４の読み取りおよび／または書き込みを行う光ディスクドライブ３２２を示している。ハードディスクドライブ３１６、磁気ディスクドライブ３１８、および光ディスクドライブ３２２は、それぞれ、１つまたは複数のデータメディアインターフェース３２５によってシステムバス３０８に接続される。あるいは、ハードディスクドライブ３１６、磁気ディスクドライブ３１８、および光ディスクドライブ３２２を、１つまたは複数のインターフェース（図示せず）でシステムバス３０８に接続することもできる。
【０１２９】
ディスクドライブとそれに関連付けられたプロセッサ読取り可能な媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、および他のコンピュータ３０２用データの不揮発性記憶を実現する。例ではハードディスク３１６、リムーバブル磁気ディスク３２０、およびリムーバブル光ディスク３２４を示しているが、コンピュータによってアクセス可能なデータを格納できる他のタイプのプロセッサ読取り可能な媒体である、磁気カセットなどの磁気記憶装置、フラッシュメモリカード、ＣＤ−ＲＯＭ、ＤＶＤ（デジタル多用途ディスク）などの光記憶媒体、ＲＡＭ（ランダムアクセスメモリ）、ＲＯＭ（読み出し専用メモリ）、ＥＥＰＲＯＭ（電気的消去可能プログラマブル読み出し専用メモリ）なども、例示的なコンピューティングシステムおよび環境を実装するために利用可能であることを理解されたい。
【０１３０】
ハードディスク３１６、磁気ディスク３２０、光ディスク３２４、ＲＯＭ３１２、および／またはＲＡＭ３１０には、任意の数のプログラムモジュールを格納できる。これには、一例として、オペレーティングシステム３２６、１つまたは複数のアプリケーションプログラム３２８、他のプログラムモジュール３３０、およびプログラムデータ３２２が含まれる。
【０１３１】
ユーザは、キーボード３３４やポインティングデバイス３３６（たとえば、「マウス」）などの入力装置を用いてコンピュータ３０２にコマンドや情報を入力できる。他の入力装置３３８（詳細は図示せず）として、マイク、ジョイスティック、ゲームパッド、パラボラアンテナ、シリアルポート、スキャナなどを含むことができる。これらおよび他の入力装置は、システムバス３０８に接続された入力／出力インターフェース３４０を介して処理装置３０４に接続されるが、他のインターフェースやバス構造（パラレルポート、ゲームポート、ＵＳＢ（ユニバーサルシリアルバス）など）で接続することもできる。
【０１３２】
モニタ３４２または他のタイプのディスプレイ装置も、ビデオアダプタ３４４などのインターフェースを介してシステムバス３０８に接続できる。モニタ３４２に加えて、他の出力ペリフェラル装置として、スピーカ（図示せず）やプリンタ３４６などのコンポーネントを含めることができる。これらのコンポーネントは、入力／出力インターフェース３４０を介してコンピュータ３０２に接続できる。
【０１３３】
コンピュータ３０２は、リモートコンピューティング装置３４８などの１つまたは複数のリモートコンピュータへの論理接続を使用するネットワーク環境で動作できる。たとえば、リモートコンピューティング装置３４８は、パーソナルコンピュータ、ポータブルコンピュータ、サーバ、ルータ、ネットワークコンピュータ、ピア装置または他の共通ネットワークノードなどであり得る。リモートコンピューティング装置３４８については、コンピュータ３０２と関連させて本願明細書で説明した要素および機能の多くまたはすべてを内蔵できるポータブルコンピュータとして図示している。
【０１３４】
コンピュータ３０２とリモートコンピュータ３４８との間の論理通信については、ＬＡＮ（ローカルエリアネットワーク）３５０および一般的なＷＡＮ（ワイドエリアネットワーク）３５２として図示している。このようなネットワーキング環境は、事務所、企業規模のコンピュータネットワーク、イントラネット、およびインターネットなどでは、ごく普通のものである。このようなネットワーキング環境は、有線でも無線でも可能である。
【０１３５】
コンピュータ３０２は、ＬＡＮネットワーキング環境に実装される場合には、ネットワークインターフェースまたはアダプタ３５４を介してローカルネットワーク３５０に接続される。また、コンピュータ３０２は、ＷＡＮネットワーキング環境に実装される場合には、一般的には、ワイドネットワーク３５２経由で通信を確立するために、モデム３５６または他の手段を含む。モデム３５６は、コンピュータ３０２に内蔵または外付けでき、入力／出力インターフェース３４０または他の適切なメカニズムを介してシステムバス３０８に接続できる。図に示したネットワーク接続は例示的であること、およびコンピュータ３０２と３４８との間で通信リンクを確立するために他の手段を用いることが可能であることを理解されたい。
【０１３６】
コンピューティング環境３００とともに図示したようなネットワーク環境では、コンピュータ３０２と関連させて図示したプログラムモジュールまたはその一部を、リモートメモリ記憶装置に格納できる。一例として、リモートアプリケーションプログラム３５８は、リモートコンピュータ３４８のメモリ装置に常駐している。本願明細書では、説明のために、アプリケーションプログラムおよび他の実行可能プログラムコンポーネント（オペレーティングシステムなど）を個別のブロックとして図示したが、そのようなプログラムやコンポーネントは、さまざまな場合にコンピューティング装置３０２のさまざまな記憶コンポーネントに存在し、コンピュータのデータプロセッサによって実行されるものと認識される。
【０１３７】
（プロセッサ実行可能命令）
例示的な商品表現の実施態様は、１つまたは複数のコンピュータまたは他の装置で実行される、プログラムモジュールなどのプロセッサ実行可能命令の全体的なコンテンツの中で説明できる。一般に、プログラムモジュールは、特定のタスクを実行する、または特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。一般的には、プログラムモジュールの機能を、種々の実施形態において、必要に応じ組み合わせること、または分散することができる。
【０１３８】
（例示的な動作環境）
図３は、例示的な商品表現を実装できる、適切な動作環境３００の一例を示している。具体的には、本願明細書で説明した例示的な商品表現は、図３の任意のプログラムモジュール３２８〜３３０および／またはオペレーティングシステム３２６あるいはこれらの一部によって（全面的または部分的に）実装できる。
【０１３９】
この動作環境は、適切な動作環境の一例に過ぎず、本願明細書で説明した例示的な商品表現の機能の範囲または使用に関して制限を示唆するものではまったくない。使用に適した他のよく知られたコンピューティングシステム、環境、および／または構成として、これに限定されないが、パーソナルコンピュータ（ＰＣ）、サーバコンピューティング、ハンドヘルドまたはラップトップ装置、マルチプロセッサシステム、マイクロプロセッサベースのシステム、プログラム可能な民生用電子機器、携帯電話および携帯機器、汎用または特定用途向け機器、ＡＳＩＣ（特定用途向け集積回路）、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、これらのシステムまたは装置を任意に含む分散コンピューティング環境などがある。
【０１４０】
（プロセッサ読取り可能な媒体）
例示的な商品表現の実施態様は、何らかのプロセッサ読取り可能な媒体の形態で保管すること、または伝達することができる。プロセッサ読取り可能な媒体として、コンピュータからアクセスできる任意の利用可能な媒体を使用できる。一例として、プロセッサ読取り可能な媒体は、限定ではないが、「コンピュータ記憶媒体」と「通信媒体」を含む。
【０１４１】
「コンピュータ記憶媒体」には、コンピュータ可読命令、データ構造、プログラムモジュール、その他のデータなどの情報を記憶するためのあらゆる方法または技術に実装される、揮発性および不揮発性、リムーバブルおよび固定の媒体が含まれる。コンピュータ記憶媒体には、限定ではないが、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリなどのメモリ技術媒体、ＣＤ−ＲＯＭ、ＤＶＤ（デジタル多用途ディスク）などの光記憶媒体、磁気カセット、磁気テープ、磁気ディスクなどの磁気記憶装置、他の任意の、必要な情報を記憶するために使用でき、コンピュータからのアクセスが可能な媒体が含まれる。
【０１４２】
「通信媒体」は、一般的には、プロセッサ可読命令、データ構造、プログラムモジュール、またはその他のデータを、搬送波や他の伝送メカニズムなどの変調データ信号で具体化したものである。また、任意の情報配信媒体も通信媒体に含まれる。
【０１４３】
「変調データ信号」という用語は、信号内の情報をエンコードするように設定されたり変更されたりする１つまたは複数の特性を有する信号を意味する。一例として、通信媒体は、限定ではないが、有線ネットワークまたは直接有線接続などの有線媒体、および音響、ＲＦ、赤外線などの無線媒体を含む。これらの任意の組み合わせも、プロセッサ読取り可能な媒体の範囲内に含まれる。
【０１４４】
（結論）
以上、構造的特徴および／または方法論的手順について具体的に述べるかたちで本発明を説明してきたが、添付した請求項で定義される本発明は、説明した特定の特徴または手順に必ずしも限定されるものではないことを理解されたい。この特定の特徴および手順は、限定ではなく、特許請求対象の発明を実装するための好ましい形態として開示したものである。
【図面の簡単な説明】
【０１４５】
【図１】本願明細書で説明した方法論的な実施態様を示すフローチャートである。
【図２】本願明細書で説明した実施態様のブロック図である。
【図３】本願明細書で説明した実施形態の少なくとも１つを全面的または部分的に実装できるコンピューティング動作環境の一例を示す図である。
【図１】
0004812291.tif 000018
【図２】
0004812291.tif 000019
【図３】
0004812291.tif 000020