(57)【要約】【課題】所望の音楽をより簡単かつ確実に検索できるようにする。【解決手段】周波数変換部１８１で検索装置から送信されたクエリーの音片を周波数スペクトルに分解し、検索候補絞込み部１８４が、店舗ＤＢ１０５、放送メディアＤＢ１０４、および音楽ＤＢ１０３の中から検索対象となる音楽情報を抽出する。パターンマッチング部１８２において、クエリーの音片との類似度を表す評価値を演算し、スコアソート部１８３で検索結果を出力する。本発明はサーバに適用することができる。【選択図】      図１３
2005004576.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して相互に接続される第１の情報処理装置と第２の情報処理装置からなる音楽検索システムであって、
前記第１の情報処理装置は、
前記第１の情報処理装置の周囲の音のデータであって、予め設定された時間分の最新の音データを記録する記録手段と、
検索すべきデータの生成を指令する指令手段と、
前記指令手段により検索すべきデータの生成が指令された場合、前記記録手段により記録されている音データから検索データを生成する生成手段と、
前記生成手段により生成された前記検索データを、前記第２の情報処理装置に前記ネットワークを介して送信し、前記第２の情報処理装置による検索結果を、前記ネットワークを介して取得する取得手段と、
前記取得手段により取得された検索結果を表示する表示手段と
を備え、
前記第２の情報処理装置は、
複数の音楽の情報を記憶する記憶手段と、
前記第１の情報処理装置から送信された検索データを取得し、前記検索データの音のデータを抽出する抽出手段と、
前記記憶手段に記憶されている音楽の情報から、検索候補を絞り込む絞込み手段と、
前記抽出手段により抽出された音データと、前記絞込み手段により絞り込まれた音楽の情報に基づく音データを周波数スペクトルに変換する変換手段と、
前記変換手段により変換された周波数スペクトルに基づいて、ベクトルを生成し、前記ベクトルを比較して、前記抽出手段により抽出された音データと、前記絞込み手段により絞り込まれた音楽の情報に基づく音データの類似度を表す評価値を演算する演算手段と、
前記演算手段により演算された評価値が予め設定された基準を満足する前記音データを選択する選択手段と、
前記選択手段により選択された音データの音楽の情報を前記第１の情報処理装置に前記ネットワークを介して提供する提供手段と
を備えることを特徴とする音楽検索システム。
【請求項２】
ネットワークを介して相互に接続される第１の情報処理装置と第２の情報処理装置からなる音楽検索システムの音楽検索方法であって、
前記第１の情報処理装置は、
前記第１の情報処理装置の周囲の音のデータであって、予め設定された時間分の最新の音データを記録し、
検索すべきデータの生成を指令し、
検索すべきデータの生成が指令された場合、前記記録手段に記録されている音データから検索データを生成し、
生成された前記検索データを、前記第２の情報処理装置に前記ネットワークを介して送信し、
前記第２の情報処理装置は、
前記第１の情報処理装置から送信された検索データを取得し、前記検索データの音のデータを抽出し、
記憶されている音楽の情報から、検索候補を絞り込み、
抽出された前記検索データの音データと、絞り込まれた音楽の情報に基づく音データを周波数スペクトルに変換し、
変換された周波数スペクトルに基づいて、ベクトルを生成し、前記ベクトルを比較して、前記検索データの音データと、絞り込まれた音楽の情報に基づく音データの類似度を表す評価値を演算し、
演算された評価値が予め設定された基準を満足する前記音データを選択し、
選択された音データの音楽の情報を前記第１の情報処理装置に前記ネットワークを介して提供し、
前記第１の情報処理装置は、
前記第２の情報処理装置による検索結果を、前記ネットワークを介して取得し、
取得された前記検索結果を表示する
ことを特徴とする音楽検索方法。
【請求項３】
ネットワークを介して他の情報処理装置と接続される情報処理装置であって、
周囲の音のデータであって、予め設定された時間分の最新の音データを記録する記録手段と、
検索すべきデータの生成を指令する指令手段と、
前記指令手段により検索すべきデータの生成が指令された場合、前記記録手段により記録されている音データから検索データを生成する生成手段と、
前記生成手段により生成された前記検索データを、前記他の情報処理装置に前記ネットワークを介して送信し、前記他の情報処理装置による検索結果を、前記ネットワークを介して取得する検索結果取得手段と、
前記検索結果取得手段により取得された検索結果を表示する表示手段と
を備えることを特徴とする情報処理装置。
【請求項４】
前記情報処理装置の位置を表す位置情報を取得する位置情報取得手段と、
時刻を取得する時刻取得手段とをさらに備え、
前記生成手段は、前記検索データに、前記位置情報取得手段により取得された位置情報と、前記時刻取得手段により取得された時刻を付加して前記他の情報処理装置に送信する
ことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記検索結果は、音楽の曲名およびアーティスト名、並びに前記音楽の取得に必要な情報を含む
ことを特徴とする請求項３に記載の情報処理装置。
【請求項６】
ネットワークを介して他の情報処理装置と接続される情報処理装置の情報処理方法であって、
前記情報処理装置の周囲の音のデータであって、予め設定された時間分だけ最新の音データを記録する記録ステップと、
検索すべきデータの生成を指令されたか否かを判定する指令判定ステップと、
前記指令判定ステップの処理により検索すべきデータの生成が指令されたと判定された場合、前記記録ステップの処理により記録されている音データから検索データを生成する生成ステップと、
前記生成ステップの処理により生成された前記検索データを、前記他の情報処理装置に前記ネットワークを介して送信し、前記他の情報処理装置による検索結果を、前記ネットワークを介して取得する検索結果取得ステップと、
前記検索結果取得ステップの処理により取得された検索結果を表示する表示ステップと
を含むことを特徴とする情報処理方法。
【請求項７】
ネットワークを介して他の情報処理装置と接続される情報処理装置のプログラムであって、
前記情報処理装置の周囲の音のデータであって、予め設定された時間分だけ最新の音データを記録するように制御する記録制御ステップと、
検索すべきデータの生成を指令されたか否かの判定を制御する指令判定制御ステップと、
前記指令判定制御ステップの処理により検索すべきデータの生成が指令されたと判定された場合、前記記録制御ステップの処理により記録されている音データから検索データの生成を制御する生成制御ステップと、
前記生成制御ステップの処理により生成された前記検索データを、前記他の情報処理装置に前記ネットワークを介して送信し、前記他の情報処理装置による検索結果を、前記ネットワークを介して取得するように制御する検索結果取得制御ステップと、
前記検索結果取得制御ステップの処理により取得された検索結果の表示を制御する表示制御ステップと
をコンピュータに実行させることを特徴とするプログラム。
【請求項８】
ネットワークを介して他の情報処理装置と接続される情報処理装置のプログラムが記録される記録媒体であって、
前記情報処理装置の周囲の音のデータであって、予め設定された時間分だけ最新の音データを記録するように制御する記録制御ステップと、
検索すべきデータの生成を指令されたか否かの判定を制御する指令判定制御ステップと、
前記指令判定制御ステップの処理により検索すべきデータの生成が指令されたと判定された場合、前記記録制御ステップの処理により記録されている音データから検索データの生成を制御する生成制御ステップと、
前記生成制御ステップの処理により生成された前記検索データを、前記他の情報処理装置に前記ネットワークを介して送信し、前記他の情報処理装置による検索結果を、前記ネットワークを介して取得するように制御する検索結果取得制御ステップと、
前記検索結果取得制御ステップの処理により取得された検索結果の表示を制御する表示制御ステップと
をコンピュータに実行させるプログラムが記録されることを特徴とする記録媒体。
【請求項９】
ネットワークを介して他の情報処理装置と接続される情報処理装置であって、
複数の音楽の情報を記憶する記憶手段と、
前記他の情報処理装置から送信された検索データを取得し、前記検索データの音のデータを抽出する抽出手段と、
前記記憶手段に記憶されている音楽の情報から、検索候補を絞り込む絞込み手段と、
前記抽出手段により抽出された音データと、前記絞込み手段により絞り込まれた音楽の情報に基づく音データを周波数スペクトルに変換する変換手段と、
前記変換手段により変換された周波数スペクトルに基づいて、ベクトルを生成し、前記ベクトルを比較して、前記抽出手段により抽出された音データと、前記絞込み手段により絞り込まれた音楽の情報に基づく音データの類似度を表す評価値を演算する演算手段と、
前記演算手段により演算された評価値が予め設定された基準を満足する前記音データを選択する選択手段と、
前記選択手段により選択された音データの音楽の情報を前記他の情報処理装置に前記ネットワークを介して提供する提供手段と
を備えることを特徴とする情報処理装置。
【請求項１０】
前記記憶手段は、音楽が演奏された店舗の情報と、音楽が放送された放送メディアの情報を記憶する
ことを特徴とする請求項９に記載の情報処理装置。
【請求項１１】
前記記憶手段は、前記店舗の情報として、前記店舗の位置を表す位置情報と、前記音楽が演奏された時刻を表す時刻情報とを記憶し、
前記絞込み手段は、前記位置情報と、前記時刻情報に基づいて、前記音楽の情報を絞り込む
ことを特徴とする請求項９に記載の情報処理装置。
【請求項１２】
前記記憶手段は、前記放送メディアの情報として、前記音楽が放送された時刻を表す時刻情報を記憶し、
前記絞込み手段は、前記時刻情報に基づいて、前記音楽の情報を絞り込む
ことを特徴とする請求項９に記載の情報処理装置。
【請求項１３】
ネットワークを介して他の情報処理装置と接続され、複数の音楽の情報を記憶する記憶手段を備える情報処理装置の情報処理方法であって、
前記他の情報処理装置から送信された検索データを取得し、前記検索データの音のデータを抽出する抽出ステップと、
前記記憶手段に記憶されている音楽の情報から、検索候補を絞り込む絞込みステップと、
前記抽出ステップの処理により抽出された音データと、前記絞込みステップの処理により絞り込まれた音楽の情報に基づく音データを周波数スペクトルに変換する変換ステップと、
前記変換ステップの処理により変換された周波数スペクトルに基づいて、ベクトルを生成し、前記ベクトルを比較して、前記抽出ステップの処理により抽出された音データと、前記絞込みステップの処理により絞り込まれた音楽の情報に基づく音データの類似度を表す評価値を演算する演算ステップと、
前記演算ステップの処理により演算された評価値が予め設定された基準を満足する前記音データを選択する選択ステップとを含み、
前記選択ステップの処理により選択された音データの音楽の情報を前記他の情報処理装置に前記ネットワークを介して提供する
ことを特徴とする情報処理方法。
【請求項１４】
ネットワークを介して他の情報処理装置と接続され、複数の音楽の情報を記憶する記憶手段を備える情報処理装置のプログラムであって、
前記他の情報処理装置から送信された検索データを取得し、前記検索データの音のデータの抽出を制御する抽出制御ステップと、
前記記憶手段に記憶されている音楽の情報から、検索候補の絞り込みを制御する絞込み制御ステップと、
前記抽出制御ステップの処理により抽出された音データと、前記絞込み制御ステップの処理により絞り込まれた音楽の情報に基づく音データを周波数スペクトルに変換するように制御する変換制御ステップと、
前記変換制御ステップの処理により変換された周波数スペクトルに基づいて、ベクトルを生成し、前記ベクトルを比較して、前記抽出制御ステップの処理により抽出された音データと、前記絞込み制御ステップの処理により絞り込まれた音楽の情報に基づく音データの類似度を表す評価値の演算を制御する演算制御ステップと、
前記演算制御ステップの処理により演算された評価値が予め設定された基準を満足する前記音データの選択を制御する選択制御ステップと
をコンピュータに実行させることを特徴とするプログラム。
【請求項１５】
ネットワークを介して他の情報処理装置と接続され、複数の音楽の情報を記憶する記憶手段を備える情報処理装置のプログラムが記録される記録媒体であって、
前記他の情報処理装置から送信された検索データを取得し、前記検索データの音のデータの抽出を制御する抽出制御ステップと、
前記記憶手段に記憶されている音楽の情報から、検索候補の絞り込みを制御する絞込み制御ステップと、
前記抽出制御ステップの処理により抽出された音データと、前記絞込み制御ステップの処理により絞り込まれた音楽の情報に基づく音データを周波数スペクトルに変換するように制御する変換制御ステップと、
前記変換制御ステップの処理により変換された周波数スペクトルに基づいて、ベクトルを生成し、前記ベクトルを比較して、前記抽出制御ステップの処理により抽出された音データと、前記絞込み制御ステップの処理により絞り込まれた音楽の情報に基づく音データの類似度を表す評価値の演算を制御する演算制御ステップと、
前記演算制御ステップの処理により演算された評価値が予め設定された基準を満足する前記音データの選択を制御する選択制御ステップと
をコンピュータに実行させるプログラムが記録されることを特徴とする記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、音楽検索システムおよび方法、情報処理装置および方法、プログラム、並びに記録媒体に関し、特に所望の音楽をより簡単かつ確実に検索できるようにする音楽検索システムおよび方法、情報処理装置および方法、プログラム、並びに記録媒体に関する。
【０００２】
【従来の技術】
近年、コンテンツとして音楽が放送された場合、放送された音楽の曲名、アーティスト名などの情報を取得するニーズが高まってきている。この場合、ユーザは、音楽が放送された放送局と放送日時に基づいて、音楽の情報を取得する必要がある。
【０００３】
そこで、本出願人は、音声で入力されたメロディに基づいて、そのメロディを有する可能性のある音楽を検索し、その情報をユーザに提供する技術を先に提案した（例えば、特許文献１参照）。
【０００４】
【特許文献１】
特開２００１−６００９９号公報
【０００５】
【発明が解決しようとする課題】
しかしながら、特許文献１の技術では、検索したい音楽のメロディをユーザが発声して入力して、音楽を検索するため、その音楽のメロディを、ユーザが記憶している必要がある。そのため、例えば、街中で初めて聞いた音楽などを検索することができないという課題があった。
【０００６】
本発明はこのような状況に鑑みてなされたものであり、所望の音楽をより簡単かつ確実に検索できるようにするものである。
【０００７】
【課題を解決するための手段】
本発明の音楽検索システムは、ネットワークを介して相互に接続される第１の情報処理装置と第２の情報処理装置からなる音楽検索システムであって、第１の情報処理装置は、第１の情報処理装置の周囲の音のデータであって、予め設定された時間分の最新の音データを記録する記録手段と、検索すべきデータの生成を指令する指令手段と、指令手段により検索すべきデータの生成が指令された場合、記録手段により記録されている音データから検索データを生成する生成手段と、生成手段により生成された検索データを、第２の情報処理装置にネットワークを介して送信し、第２の情報処理装置による検索結果を、ネットワークを介して取得する取得手段と、取得手段により取得された検索結果を表示する表示手段とを備え、第２の情報処理装置は、複数の音楽の情報を記憶する記憶手段と、第１の情報処理装置から送信された検索データを取得し、検索データの音のデータを抽出する抽出手段と、記憶手段に記憶されている音楽の情報から、検索候補を絞り込む絞込み手段と、抽出手段により抽出された音データと、絞込み手段により絞り込まれた音楽の情報に基づく音データを周波数スペクトルに変換する変換手段と、変換手段により変換された周波数スペクトルに基づいて、ベクトルを生成し、ベクトルを比較して、抽出手段により抽出された音データと、絞込み手段により絞り込まれた音楽の情報に基づく音データの類似度を表す評価値を演算する演算手段と、演算手段により演算された評価値が予め設定された基準を満足する音データを選択する選択手段と、選択手段により選択された音データの音楽の情報を第１の情報処理装置にネットワークを介して提供する提供手段とを備えることを特徴とする。
【０００８】
本発明の音楽検索方法は、ネットワークを介して相互に接続される第１の情報処理装置と第２の情報処理装置からなる音楽検索システムの音楽検索方法であって、第１の情報処理装置は、第１の情報処理装置の周囲の音のデータであって、予め設定された時間分の最新の音データを記録し、検索すべきデータの生成を指令し、検索すべきデータの生成が指令された場合、記録手段に記録されている音データから検索データを生成し、生成された検索データを、第２の情報処理装置にネットワークを介して送信し、第２の情報処理装置は、第１の情報処理装置から送信された検索データを取得し、検索データの音のデータを抽出し、記憶されている音楽の情報から、検索候補を絞り込み、抽出された検索データの音データと、絞り込まれた音楽の情報に基づく音データを周波数スペクトルに変換し、変換された周波数スペクトルに基づいて、ベクトルを生成し、ベクトルを比較して、検索データの音データと、絞り込まれた音楽の情報に基づく音データの類似度を表す評価値を演算し、演算された評価値が予め設定された基準を満足する音データを選択し、選択された音データの音楽の情報を第１の情報処理装置にネットワークを介して提供し、第１の情報処理装置は、第２の情報処理装置による検索結果を、ネットワークを介して取得し、取得された検索結果を表示することを特徴とする。
【０００９】
本発明の音楽検索システムおよび方法においては、第１の情報処理装置により、第１の情報処理装置の周囲の音のデータであって、予め設定された時間分の最新の音データが記録され、検索すべきデータの生成が指令され、記録手段に記録されている音データから検索データが生成され、生成された検索データが、第２の情報処理装置にネットワークを介して送信される。また、第２の情報処理装置により、第１の情報処理装置から送信された検索データが取得され、検索データの音のデータが抽出され、記憶されている音楽の情報から、検索候補が絞り込まれ、抽出された検索データの音データと、絞り込まれた音楽の情報に基づく音データが周波数スペクトルに変換され、変換された周波数スペクトルに基づいて、ベクトルが生成され、ベクトルを比較することにより、検索データの音データと、絞り込まれた音楽の情報に基づく音データの類似度を表す評価値が演算され、演算された評価値が予め設定された基準を満足する音データが選択され、選択された音データの音楽の情報が第１の情報処理装置にネットワークを介して提供される。第１の情報処理装置により、第２の情報処理装置による検索結果が、ネットワークを介して取得され、取得された検索結果が表示される。
【００１０】
本発明の第１の情報処理装置は、ネットワークを介して他の情報処理装置と接続される情報処理装置であって、周囲の音のデータであって、予め設定された時間分の最新の音データを記録する記録手段と、検索すべきデータの生成を指令する指令手段と、指令手段により検索すべきデータの生成が指令された場合、記録手段により記録されている音データから検索データを生成する生成手段と、生成手段により生成された検索データを、他の情報処理装置にネットワークを介して送信し、他の情報処理装置による検索結果を、ネットワークを介して取得する検索結果取得手段と、検索結果取得手段により取得された検索結果を表示する表示手段とを備えることを特徴とする。
【００１１】
前記情報処理装置の位置を表す位置情報を取得する位置情報取得手段と、時刻を取得する時刻取得手段とをさらに備え、生成手段は、検索データに、位置情報取得手段により取得された位置情報と、時刻取得手段により取得された時刻を付加して他の情報処理装置に送信するようにすることができる。
【００１２】
前記検索結果は、音楽の曲名およびアーティスト名、並びに音楽の取得に必要な情報を含むようにすることができる。
【００１３】
本発明の第１の情報処理方法は、ネットワークを介して他の情報処理装置と接続される情報処理装置の情報処理方法であって、情報処理装置の周囲の音のデータであって、予め設定された時間分だけ最新の音データを記録する記録ステップと、検索すべきデータの生成を指令されたか否かを判定する指令判定ステップと、指令判定ステップの処理により検索すべきデータの生成が指令されたと判定された場合、記録ステップの処理により記録されている音データから検索データを生成する生成ステップと、生成ステップの処理により生成された検索データを、他の情報処理装置にネットワークを介して送信し、他の情報処理装置による検索結果を、ネットワークを介して取得する検索結果取得ステップと、検索結果取得ステップの処理により取得された検索結果を表示する表示ステップとを含むことを特徴とする。
【００１４】
本発明の第１のプログラムは、ネットワークを介して他の情報処理装置と接続される情報処理装置のプログラムであって、情報処理装置の周囲の音のデータであって、予め設定された時間分だけ最新の音データを記録するように制御する記録制御ステップと、検索すべきデータの生成を指令されたか否かの判定を制御する指令判定制御ステップと、指令判定制御ステップの処理により検索すべきデータの生成が指令されたと判定された場合、記録制御ステップの処理により記録されている音データから検索データの生成を制御する生成制御ステップと、生成制御ステップの処理により生成された検索データを、他の情報処理装置にネットワークを介して送信し、他の情報処理装置による検索結果を、ネットワークを介して取得するように制御する検索結果取得制御ステップと、検索結果取得制御ステップの処理により取得された検索結果の表示を制御する表示制御ステップとをコンピュータに実行させることを特徴とする。
【００１５】
本発明の第１の記録媒体は、ネットワークを介して他の情報処理装置と接続される情報処理装置のプログラムが記録される記録媒体であって、情報処理装置の周囲の音のデータであって、予め設定された時間分だけ最新の音データを記録するように制御する記録制御ステップと、検索すべきデータの生成を指令されたか否かの判定を制御する指令判定制御ステップと、指令判定制御ステップの処理により検索すべきデータの生成が指令されたと判定された場合、記録制御ステップの処理により記録されている音データから検索データの生成を制御する生成制御ステップと、生成制御ステップの処理により生成された検索データを、他の情報処理装置にネットワークを介して送信し、他の情報処理装置による検索結果を、ネットワークを介して取得するように制御する検索結果取得制御ステップと、検索結果取得制御ステップの処理により取得された検索結果の表示を制御する表示制御ステップとをコンピュータに実行させるプログラムが記録されることを特徴とする。
【００１６】
本発明の第１の情報処理装置および方法、並びに第１のプログラムにおいては、情報処理装置の周囲の音のデータであって、予め設定された時間分だけ最新の音データが記録され、検索すべきデータの生成を指令されたか否かが判定され、検索すべきデータの生成が指令されたと判定された場合、記録されている音データから検索データが生成され、生成された検索データが、他の情報処理装置にネットワークを介して送信され、他の情報処理装置による検索結果が、ネットワークを介して取得され、取得された検索結果が表示される。
【００１７】
本発明の第２の情報処理装置は、ネットワークを介して他の情報処理装置と接続される情報処理装置であって、複数の音楽の情報を記憶する記憶手段と、他の情報処理装置から送信された検索データを取得し、検索データの音のデータを抽出する抽出手段と、記憶手段に記憶されている音楽の情報から、検索候補を絞り込む絞込み手段と、抽出手段により抽出された音データと、絞込み手段により絞り込まれた音楽の情報に基づく音データを周波数スペクトルに変換する変換手段と、変換手段により変換された周波数スペクトルに基づいて、ベクトルを生成し、ベクトルを比較して、抽出手段により抽出された音データと、絞込み手段により絞り込まれた音楽の情報に基づく音データの類似度を表す評価値を演算する演算手段と、演算手段により演算された評価値が予め設定された基準を満足する音データを選択する選択手段と、選択手段により選択された音データの音楽の情報を他の情報処理装置にネットワークを介して提供する提供手段とを備えることを特徴とする。
【００１８】
前記記憶手段は、音楽が演奏された店舗の情報と、音楽が放送された放送メディアの情報を記憶するようにすることができる。
【００１９】
前記記憶手段は、店舗の情報として、店舗の位置を表す位置情報と、音楽が演奏された時刻を表す時刻情報とを記憶し、絞込み手段は、位置情報と、時刻情報に基づいて、音楽の情報を絞り込むようにすることができる。
【００２０】
前記記憶手段は、放送メディアの情報として、音楽が放送された時刻を表す時刻情報を記憶し、絞込み手段は、時刻情報に基づいて、音楽の情報を絞り込むようにすることができる。
【００２１】
本発明の第２の情報処理方法は、ネットワークを介して他の情報処理装置と接続され、複数の音楽の情報を記憶する記憶手段を備える情報処理装置の情報処理方法であって、他の情報処理装置から送信された検索データを取得し、検索データの音のデータを抽出する抽出ステップと、記憶手段に記憶されている音楽の情報から、検索候補を絞り込む絞込みステップと、抽出ステップの処理により抽出された音データと、絞込みステップの処理により絞り込まれた音楽の情報に基づく音データを周波数スペクトルに変換する変換ステップと、変換ステップの処理により変換された周波数スペクトルに基づいて、ベクトルを生成し、ベクトルを比較して、抽出ステップの処理により抽出された音データと、絞込みステップの処理により絞り込まれた音楽の情報に基づく音データの類似度を表す評価値を演算する演算ステップと、演算ステップの処理により演算された評価値が予め設定された基準を満足する前記音データを選択する選択ステップとを含み、選択ステップの処理により選択された音データの音楽の情報を他の情報処理装置にネットワークを介して提供することを特徴とする。
【００２２】
本発明の第２のプログラムは、ネットワークを介して他の情報処理装置と接続され、複数の音楽の情報を記憶する記憶手段を備える情報処理装置のプログラムであって、他の情報処理装置から送信された検索データを取得し、検索データの音のデータの抽出を制御する抽出制御ステップと、記憶手段に記憶されている音楽の情報から、検索候補の絞り込みを制御する絞込み制御ステップと、抽出制御ステップの処理により抽出された音データと、絞込み制御ステップの処理により絞り込まれた音楽の情報に基づく音データを周波数スペクトルに変換するように制御する変換制御ステップと、変換制御ステップの処理により変換された周波数スペクトルに基づいて、ベクトルを生成し、ベクトルを比較して、抽出制御ステップの処理により抽出された音データと、絞込み制御ステップの処理により絞り込まれた音楽の情報に基づく音データの類似度を表す評価値の演算を制御する演算制御ステップと、演算制御ステップの処理により演算された評価値が予め設定された基準を満足する音データの選択を制御する選択制御ステップとをコンピュータに実行させることを特徴とする。
【００２３】
本発明の第２の記録媒体は、ネットワークを介して他の情報処理装置と接続され、複数の音楽の情報を記憶する記憶手段を備える情報処理装置のプログラムが記録される記録媒体であって、他の情報処理装置から送信された検索データを取得し、検索データの音のデータの抽出を制御する抽出制御ステップと、記憶手段に記憶されている音楽の情報から、検索候補の絞り込みを制御する絞込み制御ステップと、抽出制御ステップの処理により抽出された音データと、絞込み制御ステップの処理により絞り込まれた音楽の情報に基づく音データを周波数スペクトルに変換するように制御する変換制御ステップと、変換制御ステップの処理により変換された周波数スペクトルに基づいて、ベクトルを生成し、ベクトルを比較して、抽出制御ステップの処理により抽出された音データと、絞込み制御ステップの処理により絞り込まれた音楽の情報に基づく音データの類似度を表す評価値の演算を制御する演算制御ステップと、演算制御ステップの処理により演算された評価値が予め設定された基準を満足する音データの選択を制御する選択制御ステップとをコンピュータに実行させるプログラムが記録されることを特徴とする。
【００２４】
本発明の第２の情報処理装置および方法、並びにプログラムにおいては、他の情報処理装置から送信された検索データが取得され、検索データの音のデータが抽出され、記憶されている音楽の情報から、検索候補が絞り込まれ、抽出された音データと、絞り込まれた音楽の情報に基づく音データが周波数スペクトルに変換される。また、変換された周波数スペクトルに基づいて、ベクトルが生成され、ベクトルを比較して、抽出された音データと、絞り込まれた音楽の情報に基づく音データの類似度を表す評価値が演算され、演算された評価値が予め設定された基準を満足する音データが選択され、選択された音データの音楽の情報が他の情報処理装置にネットワークを介して提供される。
【００２５】
【発明の実施の形態】
以下に本発明の実施の形態を説明するが、請求項に記載の構成要件と、発明の実施の形態における具体例との対応関係を例示すると、次のようになる。この記載は、請求項に記載されている発明をサポートする具体例が、発明の実施の形態に記載されていることを確認するためのものである。従って、発明の実施の形態中には記載されているが、構成要件に対応するものとして、ここには記載されていない具体例があったとしても、そのことは、その具体例が、その構成要件に対応するものではないことを意味するものではない。逆に、具体例が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その具体例が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００２６】
さらに、この記載は、発明の実施の形態に記載されている具体例に対応する発明が、請求項に全て記載されていることを意味するものではない。換言すれば、この記載は、発明の実施の形態に記載されている具体例に対応する発明であって、この出願の請求項には記載されていない発明の存在、すなわち、将来、分割出願されたり、補正により追加される発明の存在を否定するものではない。
【００２７】
請求項１に記載の音楽検索システムは、ネットワークを介して相互に接続される第１の情報処理装置（例えば、図１の検索装置装置１）と第２の情報処理装置（例えば、図１のサーバ３）からなる音楽検索システムであって、前記第１の情報処理装置が、前記第１の情報処理装置の周囲の音のデータであって、予め設定された時間分の最新の音データを記録する記録手段（例えば、図２の音バッファ６２）と、検索すべきデータの生成を指令する指令手段（例えば、図１の検索ボタン４１）と、前記指令手段により検索すべきデータの生成が指令された場合、前記記録手段により記録されている音データから検索データを生成する生成手段（例えば、図３のクエリー作成部９１）と、前記生成手段により生成された前記検索データを、前記第２の情報処理装置に前記ネットワークを介して送信し、前記第２の情報処理装置による検索結果を、前記ネットワークを介して取得する取得手段（例えば、図３の検索実行部９２）と、前記取得手段により取得された検索結果を表示する表示手段（例えば、図１の表示部２６）とを備え、前記第２の情報処理装置が、複数の音楽の情報を記憶する記憶手段（例えば、図４の音楽ＤＢ１０３乃至店舗ＤＢ１０５）と、前記第１の情報処理装置から送信された検索データを取得し、前記検索データの音のデータを抽出する抽出手段（例えば、図４の検索部１０２）と、前記記憶手段に記憶されている音楽の情報から、検索候補を絞り込む絞込み手段（例えば、図１３の検索候補絞込み部１８４）と、前記抽出手段により抽出された音データと、前記絞込み手段により絞り込まれた音楽の情報に基づく音データを周波数スペクトルに変換する変換手段（例えば、図１３の周波数変換部１８１）と、前記変換手段により変換された周波数スペクトルに基づいて、ベクトルを生成し、前記ベクトルを比較して、前記抽出手段により抽出された音データと、前記絞込み手段により絞り込まれた音楽の情報に基づく音データの類似度を表す評価値を演算する演算手段（例えば、図１３のパターンマッチング部１８２）と、前記演算手段により演算された評価値が予め設定された基準を満足する前記音データを選択する選択手段（例えば、図１３のスコアソート部１８３）と、前記選択手段により選択された音データの音楽の情報を前記第１の情報処理装置に前記ネットワークを介して提供する提供手段（例えば、図４の通信部１１０）とを備えることを特徴とする。
【００２８】
請求項２に記載の音楽検索方法は、ネットワークを介して相互に接続される第１の情報処理装置（例えば、図１の検索装置装置１）と第２の情報処理装置（例えば、図１のサーバ３）からなる音楽検索システムの音楽検索方法であって、前記第１の情報処理装置は、前記第１の情報処理装置の周囲の音のデータであって、予め設定された時間分の最新の音データを記録し（例えば、図７の音データバッファ処理）、検索すべきデータの生成を指令し（例えば、図５のステップＳ１）、検索すべきデータの生成が指令された場合、前記記録手段に記録されている音データから検索データを生成し（例えば、図５のステップＳ２）、生成された前記検索データを、前記第２の情報処理装置に前記ネットワークを介して送信し（例えば、図６のステップＳ２３）、前記第２の情報処理装置は、前記第１の情報処理装置から送信された検索データを取得し、前記検索データの音のデータを抽出し（例えば、図１４のステップＳ９１）、記憶されている音楽の情報から、検索候補を絞り込み（例えば、図１５のステップＳ１１４または図１７のステップＳ１３３）、抽出された前記検索データの音データと、絞り込まれた音楽の情報に基づく音データを周波数スペクトルに変換し（例えば、図１４のステップＳ９２）、変換された周波数スペクトルに基づいて、ベクトルを生成し、前記ベクトルを比較して、前記検索データの音データと、絞り込まれた音楽の情報に基づく音データの類似度を表す評価値を演算し（例えば、図２２のパターンマッチング処理）、演算された評価値が予め設定された基準を満足する前記音データを選択し（例えば、図１５のステップＳ１１６、図１７のステップＳ１３５、または図１９のステップＳ１５４）、選択された音データの音楽の情報を前記第１の情報処理装置に前記ネットワークを介して提供し、前記第１の情報処理装置は、前記第２の情報処理装置による検索結果を、前記ネットワークを介して取得し（例えば、図６のステップＳ２５）、取得された前記検索結果を表示する（例えば、図６のステップＳ２７）ことを特徴とする。
【００２９】
請求項３に記載の情報処理装置は、ネットワークを介して他の情報処理装置と接続される情報処理装置であって、周囲の音のデータであって、予め設定された時間分の最新の音データを記録する記録手段（例えば、図２の音バッファ６２）と、検索すべきデータの生成を指令する指令手段（例えば、図１の検索ボタン４１）と、前記指令手段により検索すべきデータの生成が指令された場合、前記記録手段により記録されている音データから検索データを生成する生成手段（例えば、図３のクエリー作成部９１）と、前記生成手段により生成された前記検索データを、前記他の情報処理装置に前記ネットワークを介して送信し、前記他の情報処理装置による検索結果を、前記ネットワークを介して取得する検索結果取得手段（例えば、図３の検索実行部９２）と、前記検索結果取得手段により取得された検索結果を表示する表示手段（例えば、図１の表示部２６）とを備えることを特徴とする。
【００３０】
請求項４に記載の情報処理装置は、前記情報処理装置の位置を表す位置情報を取得する位置情報取得手段（例えば、図２のＧＰＳ部７０）と、時刻を取得する時刻取得手段（例えば、図２の時計６５）とをさらに備え、前記生成手段は、前記検索データに、前記位置情報取得手段により取得された位置情報と、前記時刻取得手段により取得された時刻を付加して前記他の情報処理装置に送信することを特徴とする。
【００３１】
請求項６に記載の情報処理方法は、ネットワークを介して他の情報処理装置と接続される情報処理装置の情報処理方法であって、前記情報処理装置の周囲の音のデータであって、予め設定された時間分だけ最新の音データを記録する記録ステップ（例えば、図７の音データバッファ処理）と、検索すべきデータの生成を指令されたか否かを判定する指令判定ステップ（例えば、図５のステップＳ１）と、前記指令判定ステップの処理により検索すべきデータの生成が指令されたと判定された場合、前記記録ステップの処理により記録されている音データから検索データを生成する生成ステップ（例えば、図５のステップＳ２）と、前記生成ステップの処理により生成された前記検索データを、前記他の情報処理装置に前記ネットワークを介して送信し、前記他の情報処理装置による検索結果を、前記ネットワークを介して取得する検索結果取得ステップ（例えば、図６のステップＳ２５）と、前記検索結果取得ステップの処理により取得された検索結果を表示する表示ステップ（例えば、図６のステップＳ２７）とを含むことを特徴とする。
【００３２】
請求項７に記載のプログラムは、ネットワークを介して他の情報処理装置と接続される情報処理装置のプログラムであって、前記情報処理装置の周囲の音のデータであって、予め設定された時間分だけ最新の音データを記録するように制御する記録制御ステップ（例えば、図７の音データバッファ処理）と、検索すべきデータの生成を指令されたか否かの判定を制御する指令判定制御ステップ（例えば、図５のステップＳ１）と、前記指令判定制御ステップの処理により検索すべきデータの生成が指令されたと判定された場合、前記記録制御ステップの処理により記録されている音データから検索データの生成を制御する生成制御ステップ（例えば、図５のステップＳ２）と、前記生成制御ステップの処理により生成された前記検索データを、前記他の情報処理装置に前記ネットワークを介して送信し、前記他の情報処理装置による検索結果を、前記ネットワークを介して取得するように制御する検索結果取得制御ステップ（例えば、図６のステップＳ２５）と、前記検索結果取得制御ステップの処理により取得された検索結果の表示を制御する表示制御ステップ（例えば、図６のステップＳ２７）とをコンピュータに実行させることを特徴とする。
【００３３】
請求項８に記載の記録媒体は、ネットワークを介して他の情報処理装置と接続される情報処理装置のプログラムが記録される記録媒体であって、前記情報処理装置の周囲の音のデータであって、予め設定された時間分だけ最新の音データを記録するように制御する記録制御ステップ（例えば、図７の音データバッファ処理）と、検索すべきデータの生成を指令されたか否かの判定を制御する指令判定制御ステップ（例えば、図５のステップＳ１）と、前記指令判定制御ステップの処理により検索すべきデータの生成が指令されたと判定された場合、前記記録制御ステップの処理により記録されている音データから検索データの生成を制御する生成制御ステップ（例えば、図５のステップＳ２）と、前記生成制御ステップの処理により生成された前記検索データを、前記他の情報処理装置に前記ネットワークを介して送信し、前記他の情報処理装置による検索結果を、前記ネットワークを介して取得するように制御する検索結果取得制御ステップ（例えば、図６のステップＳ２５）と、前記検索結果取得制御ステップの処理により取得された検索結果の表示を制御する表示制御ステップ（例えば、図６のステップＳ２７）とをコンピュータに実行させるプログラムが記録されることを特徴とする。
【００３４】
請求項９に記載の情報処理装置は、ネットワークを介して他の情報処理装置と接続される情報処理装置であって、複数の音楽の情報を記憶する記憶手段（例えば、図４の音楽ＤＢ１０３乃至店舗ＤＢ１０５）と、前記他の情報処理装置から送信された検索データを取得し、前記検索データの音のデータを抽出する抽出手段（例えば、図４の検索部１０２）と、前記記憶手段に記憶されている音楽の情報から、検索候補を絞り込む絞込み手段（例えば、図１３の検索候補絞込み部１８４）と、前記抽出手段により抽出された音データと、前記絞込み手段により絞り込まれた音楽の情報に基づく音データを周波数スペクトルに変換する変換手段（例えば、図１３の周波数変換部１８１）と、前記変換手段により変換された周波数スペクトルに基づいて、ベクトルを生成し、前記ベクトルを比較して、前記抽出手段により抽出された音データと、前記絞込み手段により絞り込まれた音楽の情報に基づく音データの類似度を表す評価値を演算する演算手段（例えば、図１３のパターンマッチング部１８２）と、前記演算手段により演算された評価値が予め設定された基準を満足する前記音データを選択する選択手段（例えば、図１３のスコアソート部１８３）と、前記選択手段により選択された音データの音楽の情報を前記他の情報処理装置に前記ネットワークを介して提供する提供手段（例えば、図４の通信部１１０）とを備えることを特徴とする。
【００３５】
請求項１０に記載の情報処理装置は、前記記憶手段が、音楽が演奏された店舗の情報（例えば、図４の店舗ＤＢ１０５）と、音楽が放送された放送メディアの情報（例えば、図４の放送メディアＤＢ１０４）を記憶することを特徴とする。
【００３６】
請求項１３に記載の情報処理方法は、ネットワークを介して他の情報処理装置と接続され、複数の音楽の情報を記憶する記憶手段を備える情報処理装置の情報処理方法であって、前記他の情報処理装置から送信された検索データを取得し、前記検索データの音のデータを抽出する抽出ステップ（例えば、図１４のステップＳ９１）と、前記記憶手段に記憶されている音楽の情報から、検索候補を絞り込む絞込みステップ（例えば、図１５のステップＳ１１４、または図１７のステップＳ１３３）と、前記抽出ステップの処理により抽出された音データと、前記絞込みステップの処理により絞り込まれた音楽の情報に基づく音データを周波数スペクトルに変換する変換ステップ（例えば、図１４のステップＳ９２）と、前記変換ステップの処理により変換された周波数スペクトルに基づいて、ベクトルを生成し、前記ベクトルを比較して、前記抽出ステップの処理により抽出された音データと、前記絞込みステップの処理により絞り込まれた音楽の情報に基づく音データの類似度を表す評価値を演算する演算ステップ（例えば、図２２のパターンマッチング処理）と、前記演算ステップの処理により演算された評価値が予め設定された基準を満足する前記音データを選択する選択ステップ（例えば、図１５のステップＳ１１６、図１７のステップＳ１３５、図１９のステップＳ１５４）とを含み、前記選択ステップの処理により選択された音データの音楽の情報を前記他の情報処理装置に前記ネットワークを介して提供することを特徴とする。
【００３７】
請求項１４に記載のプログラムは、ネットワークを介して他の情報処理装置と接続され、複数の音楽の情報を記憶する記憶手段を備える情報処理装置のプログラムであって、前記他の情報処理装置から送信された検索データを取得し、前記検索データの音のデータの抽出を制御する抽出制御ステップ（例えば、図１４のステップＳ９１）と、前記記憶手段に記憶されている音楽の情報から、検索候補の絞り込みを制御する絞込み制御ステップ（例えば、図１５のステップＳ１１４、または図１７のステップＳ１３３）と、前記抽出制御ステップの処理により抽出された音データと、前記絞込み制御ステップの処理により絞り込まれた音楽の情報に基づく音データを周波数スペクトルに変換するように制御する変換制御ステップ（例えば、図１４のステップＳ９２）と、前記変換制御ステップの処理により変換された周波数スペクトルに基づいて、ベクトルを生成し、前記ベクトルを比較して、前記抽出制御ステップの処理により抽出された音データと、前記絞込み制御ステップの処理により絞り込まれた音楽の情報に基づく音データの類似度を表す評価値の演算を制御する演算制御ステップ（例えば、図２２のパターンマッチング処理）と、前記演算制御ステップの処理により演算された評価値が予め設定された基準を満足する前記音データの選択を制御する選択制御ステップ（例えば、図１５のステップＳ１１６、図１７のステップＳ１３５、図１９のステップＳ１５４）とをコンピュータに実行させることを特徴とする。
【００３８】
請求項１５に記載の記録媒体は、ネットワークを介して他の情報処理装置と接続され、複数の音楽の情報を記憶する記憶手段を備える情報処理装置のプログラムが記録される記録媒体であって、前記他の情報処理装置から送信された検索データを取得し、前記検索データの音のデータの抽出を制御する抽出制御ステップ（例えば、図１４のステップＳ９１）と、前記記憶手段に記憶されている音楽の情報から、検索候補の絞り込みを制御する絞込み制御ステップ（例えば、図１５のステップＳ１１４、または図１７のステップＳ１３３）と、前記抽出制御ステップの処理により抽出された音データと、前記絞込み制御ステップの処理により絞り込まれた音楽の情報に基づく音データを周波数スペクトルに変換するように制御する変換制御ステップ（例えば、図１４のステップＳ９２）と、前記変換制御ステップの処理により変換された周波数スペクトルに基づいて、ベクトルを生成し、前記ベクトルを比較して、前記抽出制御ステップの処理により抽出された音データと、前記絞込み制御ステップの処理により絞り込まれた音楽の情報に基づく音データの類似度を表す評価値の演算を制御する演算制御ステップ（例えば、図２２のパターンマッチング処理）と、前記演算制御ステップの処理により演算された評価値が予め設定された基準を満足する前記音データの選択を制御する選択制御ステップ（例えば、図１５のステップＳ１１６、図１７のステップＳ１３５、図１９のステップＳ１５４）とをコンピュータに実行させるプログラムが記録されることを特徴とする。
【００３９】
以下、図面を参照して、本発明の実施の形態について説明する。図１は、本発明を適用した音楽検索システムの構成例を示す図である。この構成例においては、インターネットなどに代表されるネットワーク４を介して、サーバ３と受信装置２が接続されている。受信装置２と検索装置１とは、無線により接続されており、検索装置１は、受信装置２とネットワーク４を介してサーバ３と通信を行う。
【００４０】
例えば、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔｓ）で構成される検索装置１の上部には、受信装置２と無線による通信を行う通信アンテナ２１、複数個のＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）衛星から電波で地上に放射されるＧＰＳ信号を受信するＧＰＳアンテナ２２、および検索装置１の周辺の音を入力（収音）するマイクロフォン２３が設けられている。マイクロフォン２３は、必要に応じて検索装置１から取り外せるように構成されている。
【００４１】
検索装置１の右下には、操作パネルなどにより構成される入力インタフェース２４が設けられ、その左側には、音声信号に基づいて音を発生するスピーカ２５が設けられている。入力インタフェース２４には、音楽の検索を行うとき操作される検索ボタン４１が設けられている。
【００４２】
入力インタフェース２４の上方には、例えば、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）により構成される表示部２６が設けられている。ユーザが入力インタフェース２４を操作して音楽の検索を指令すると、検索結果が表示部２６に表示される。また、表示部２６には必要に応じてＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）が表示され、ユーザは、ＧＵＩに基づいて入力インタフェース２４を操作し、必要に応じて、表示部２６に音楽の情報を表示し、スピーカ２５から音を出力させる。
【００４３】
図２は、検索装置１の構成例を示すブロック図である。マイクロフォン２３により入力された音のデータは音バッファ６２に蓄積され、入力部６１は、音バッファ６２を制御して、音データを読み出し、バス６３を介して各部に出力する。出力部６４は、スピーカ２５または表示部２６へのデータの出力を制御する。時計６５は、常に計時動作を行っており、時刻情報を出力する。クエリーバッファ６６は、検索を行うとき必要なクエリーを蓄積し、ＣＰＵ６７の制御に基づいて、クエリーを各部に出力する。
【００４４】
ＣＰＵ６７は、バス６３を介して各部を制御し、必要に応じて、ＲＡＭ６８にデータを一時的に記憶する。ＲＯＭ６９には、検索装置１を動作させるために必要なプログラム、初期値などのデータが記憶される。
【００４５】
ＧＰＳ部７０は、ＧＰＳアンテナ２２と接続されており、ＧＰＳアンテナ２２により受信されたＧＰＳ信号を解析し、現在時刻、現在位置（緯度、経度、高度など）の情報を演算する。通信部８０は、通信アンテナ２１と接続されており、ＣＰＵ６７の制御に基づいて、データの送受信を行う。
【００４６】
図３は、図２のＣＰＵ６７の機能的構成例を示すブロック図である。クエリー作成部９１は、音楽を検索するとき必要なデータであるクエリーを作成し、検索実行部９２は、クエリーをサーバ３に送信し、サーバ３により検索された音楽の情報を取得する。
【００４７】
図４は、サーバ３の構成例を示すブロック図である。入力部１０１は、キーボード、マウスなどにより構成され、ユーザの操作入力を受け付ける。検索部１０２は、検索装置１から送信されたクエリーに基づいて、音楽情報の検索を行う。音楽ＤＢ（データベース）１０３には、各種の音楽がＡ／Ｄ変換されディジタルデータとして記憶されている。放送メディアＤＢ１０４には、各放送局において放送されたコンテンツ（音楽）の内容が記憶されている。店舗ＤＢ１０５には、各店舗（例えば、ディスコやクラブ）において、使用された音楽の内容が記憶されている。音楽ＤＢ１０３乃至店舗ＤＢ１０５に記憶されたデータは、バス１０６を介して各部へ提供される。
【００４８】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０７は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１０９に記憶されているプログラム、または図示せぬハードディスクなどの記憶部からＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１０８にロードされたプログラムに従って各種の処理を実行する。ＲＡＭ１０８にはまた、ＣＰＵ９０１が各種の処理を実行する上において必要なデータなども適宜記憶される。通信部１１０は、ネットワーク４を介しての通信処理を行う。
【００４９】
次に、図５を参照して、検索装置１による検索前処理について説明する。この処理は、例えば、ユーザが街中で検索したい音楽を聴いたとき、検索装置１の入力インタフェース２４を操作することにより実行される。
【００５０】
ステップＳ１において、クエリー作成部９１は、検索ボタン４１が押下されたか否かを判定し、検索ボタン４１が押下されたと判定されるまで待機する。検索ボタン４１が押下されたと判定されたと判定された場合、ステップＳ２において、クエリー作成部９１は、図９を参照して後述する検索用音片生成処理を実行する。これにより、クエリーの一部となる音データが生成される。
【００５１】
ステップＳ３において、クエリー作成部９１は、ＧＰＳ部７０から提供される現在位置の情報Ｐを取得し、ステップＳ４において、時計６５（または、ＧＰＳ部７０）から提供される現在時刻の情報を変数Ｔｉｍｅに設定する。ステップＳ５において、クエリー作成部９１は、ステップＳ２で生成された検索用の音片、ステップＳ３で取得された現在位置の情報Ｐ、およびステップＳ４で取得された現在時刻Ｔｉｍｅを組み合わせてクエリーを作成する。作成されたクエリーは、ステップＳ６においてクエリーバッファ６６に格納される。その後、処理はステップＳ１に戻り、それ以降の処理が繰り返される。
【００５２】
このようにして、ユーザが検索ボタン４１を操作すると、音楽を検索するために必要なデータであるクエリーが作成される。
【００５３】
次に、図６を参照して、検索装置１による検索実行処理について説明する。この処理は、図５を参照して上述した検索前処理により、クエリーバッファ６６にクエリーが所定の数（例えば５個）だけ蓄えられたとき、実行されるようにしてもよいし、ユーザが、入力インタフェース２４を操作することにより実行されるようにしてもよい。
【００５４】
ステップＳ２１において、検索実行部９２は、サーバ３との通信が可能であるか否かを判定し、サーバ３との通信が可能であると判定されるまで待機する。ステップＳ２１において、サーバ３との通信が可能であると判定された場合、ステップＳ２２に進み、検索実行部９２は、クエリーバッファ６６の中にクエリーがあるか否かを判定する。ステップＳ２２において、クエリーバッファ６６の中にクエリーがあると判定された場合、ステップＳ２３に進み、検索実行部９２は、バッファ内のクエリーを、ネットワーク４を介して、サーバ３に送信する。この結果、サーバ３において、ステップＳ２３で送信されたクエリーに基づいて、音楽の検索が行われる。一方、ステップＳ２２において、クエリーバッファ６６の中にクエリーがないと判定された場合、ステップＳ２３の処理はスキップされる。
【００５５】
ステップＳ２４において、検索実行部９２は、ネットワーク４を介して、サーバ３にアクセスし、サーバ３に検索結果があるか否か（サーバ３が検索結果を出力したか否か）を判定し、検索結果があると判定されるまで（すなわち、サーバ３で音楽の検索が終了するまで）待機する。ステップＳ２４において、検索結果があると判定された場合、ステップＳ２５に進み、検索実行部９２は、検索結果をサーバ３から取得し、ステップＳ２６において、取得済の検索結果をサーバ３のデータから削除する。そして、ステップＳ２７において、検索実行部９２は、ステップＳ２５で取得された検索結果を表示部２６に表示する。その後、処理はステップＳ２１に戻り、それ以降の処理が繰り返される。
【００５６】
このようにして、音楽の検索が行われる。その結果、ユーザは、例えば、街中で偶然音楽を聞いた場合、検索ボタン４１を操作するだけで、その音楽の情報（曲名、アーティスト名など）を取得することができる。
【００５７】
次に、図７を参照して、検索装置１による音データバッファ処理について説明する。この処理は、特にユーザから指示のない限り、検索装置１が動作している間（例えば、検索装置１の電源がオンの状態の間）、繰り返し実行される。
【００５８】
ステップＳ４１において、入力部６１は、時刻パラメータｔ（０）乃至ｔ（２）を作成し、ステップＳ４２において音データバッファｂ（０）乃至ｂ（２）を作成する。これにより音バッファ６２の中に、図８に示されるような３つのバッファが作成される。
【００５９】
図８の例においては、音データバッファとしてバッファ１３１乃至１３３が作成されており、例えば、バッファ１３１は、音データバッファｂ（０）に対応し、バッファ１３２は、音データバッファｂ（１）に対応し、バッファ１３３は音データバッファｂ（２）に対応する。
【００６０】
ステップＳ４３において、入力部６１は、変数ｎに値０をセットし、ステップＳ４４において時刻パラメータｔ（ｎ）に現在時刻をセットする。ステップＳ４５において、入力部６１は、マイクロフォン２３から入力された音をＡ／Ｄ変換して、音データを生成し、音データを音データバッファｂ（ｎ）に記録する。
【００６１】
いま、ｎが０なので、図８のバッファ１３１（ｂ（０））に音データ１５１が記録される。図８の例では、音データ１５１が、バッファ１３１の左端の（時間的に前の）矢印１４１を先頭にして、バッファ１３１の途中の（時間的に後の）矢印１５３で示される位置まで音データ１５１が記録されており、時間が経過するとともに、記録位置１５３は図中右方向に移動する。また、時刻パラメータｔ（０）として、矢印１４１の時点の時刻、すなわちバッファ１３１の記録開始時刻がセットされる。
【００６２】
ステップＳ４６において、入力部６１は、音データバッファｂ（ｎ）が一杯になったか否かを判定し、まだｂ（ｎ）が一杯になっていないと判定された場合、ステップＳ４５に戻る。ステップＳ４６において、音データバッファｂ（ｎ）が一杯になったと判定された場合、ステップＳ４７に進み、入力部６１は、変数ｎに、（ｎ＋１）を３で割った余りをセットし、ステップＳ４４に戻る。
【００６３】
図８の例では、記録位置１５３が、バッファ１３１の右端まで移動したとき、バッファ１３１（ｂ（０））は、一杯になったと判定される。この場合、音データ１３０を、バッファに供給するスイッチ１３４が切り替わり、バッファ１３２（ｂ（１））に、その後の音データが入力される。そして、ステップＳ４７において（０＋１）を３で割った余り、すなわち１が変数ｎの値としてセットされる。そして、ステップＳ４４において時刻パラメータｔ（１）に現在時刻、すなわちバッファ１３２の記録開始時刻がセットされ、ステップＳ４５において、バッファ１３１に記録された音データに続く音データが、バッファ１３２に記録される。
【００６４】
同様に、バッファ１３２が一杯になると、スイッチ１３４は、バッファ１３３（ｂ（２））に切り替わり、バッファ１３３に、その後に続く音データが記録される。さらに、バッファ１３３が一杯になると、スイッチ１３４は、再びバッファ１３１に切り替わり、バッファ１３１に、その後に続く音データが記録される。このとき、過去に記録されていた音データの上に、新たな音データが記録され（上書きされ）、過去の音データは消去される。このようにして、３つのバッファ１３１乃至１３３（ｂ（０）乃至ｂ（２））に順番に最新の音データが記録更新され、それぞれのバッファの記録開始時刻ｔ（０）乃至ｔ（２）が記憶される。
【００６５】
次に、図９を参照して、図５のステップＳ２の検索用音片生成処理について説明する。ステップＳ６１において、クエリー作成部９１は、メモリ領域ｍ（０）乃至ｍ（２）をクエリーバッファ６６の中に生成する。ステップＳ６２において、クエリー作成部９１は、変数ａに値０をセットし、ステップＳ６３において、変数ｃに値ｎをセットする。変数ｎは、図７を参照して上述した音データバッファ処理で用いられる変数ｎと同じであり（すなわち、バッファ１３１乃至１３３のうちのそのとき記録中のバッファを表し）、入力部６１からバス６３を介して取得される。
【００６６】
ステップＳ６４において、クエリー作成部９１は、変数ｉに（ｃ＋２）を３で割った余りをセットする。これにより変数ｉの値は０，１，２のいずれかとなり、ｃ（＝ｎ）が２のときｉは１とされ、ｃが１のときｉは０とされ、ｃが０のときｉは２とされる。
【００６７】
ステップＳ６５において、クエリー作成部９１は、変数ａが０と等しいか否かを判定し、変数ａが０と等しいと判定された場合、ステップＳ６６に進み、時刻を表す変数Ｔに時刻パラメータｔ（ｉ）をセットする。時刻パラメータｔ（ｉ）（ｉ＝０，１，２）は、図７を参照して上述した音データバッファ処理で用いられる、各バッファの記録開始時刻がセットされたパラメータであり（図７では、ｔ（ｎ）（ｎ＝０，１，２）とされたもの）、入力部６１からバス６３を介して取得される。
【００６８】
ステップＳ６７において、クエリー作成部９１は、メモリ領域ｍ（ａ）にバッファｂ（ｉ）の内容をコピーする。バッファｂ（ｉ）（ｉ＝０，１，２）の内容は、図７を参照して上述した音データバッファ処理で用いられる、各バッファの記録内容（図７では、ｂ（ｎ）（ｎ＝０，１，２）とされたもの）、すなわち各バッファに蓄積された音データであり、音バッファ６２からバス６３を介して、その内容が取得され、メモリ領域にコピーされる。
【００６９】
ステップＳ６８において、クエリー作成部９１は、変数ｃが変数ｎと等しいか否か、すなわち、図７を参照して上述した音データバッファ処理で用いられる変数ｎの値が変化したか否かを判定し、変数ｃが変数ｎと等しくないと判定されるまで待機する。ステップＳ６８において、変数ｃが変数ｎと等しくないと判定された場合、ステップＳ６９に進み、クエリー作成部９１は、変数ａの値を１だけインクリメントし、ステップＳ７０において、変数ａが３より小さいか否かを判定し、変数ａが３より小さいと判定された場合、ステップＳ６３に戻り、それ以降の処理を繰り返し実行する。
【００７０】
ここで、図１０乃至図１２を参照してステップＳ６２乃至Ｓ７０の処理を詳細に説明する。図１０乃至図１２は、図８と同様に、音バッファ６２の中に作成された３つのバッファ１３１乃至１３３に音データが記録される様子を表す。図１０において、音データの記録位置１５３は、バッファ１３２（ｂ（１））の途中にあり、このとき、図７を参照して上述した音データバッファ処理では、変数ｎの値は１と設定されている。図１０に示される状態で、検索ボタン４１が押下されたとき、ステップＳ６２で変数ａに０がセットされ、ステップＳ６３で変数ｃ（＝ｎ）に１がセットされ、ステップＳ６４で変数ｉ（（ｃ＋２）を３で割った余り）に０がセットされる。
【００７１】
ステップＳ６５において、変数ａは０と等しいと判定され、ステップＳ６６で変数Ｔに時刻パラメータｔ（０）の値がセットされる。時刻パラメータｔ（０）の値は、バッファ１３１のデータの先頭である矢印１７１で示される部分のデータが書き込まれた時刻を表す。ステップＳ６７で、メモリ領域ｍ（０）にバッファｂ（０）（バッファ１３１）の記録内容がコピーされる。そして、ステップＳ６８において、変数ｎの値が変化したか否かが判定される。
【００７２】
図１１は、図１０に示される状態から時間が経過し、音データの記録位置１５３がバッファ１３３の途中に移動した状態を示す図である。このとき、図７を参照して上述した音データバッファ処理では、変数ｎの値は２と設定されているので、ステップＳ６８において、変数ｎの値が変化したと判定され、ステップＳ６９で変数ａに１がセットされ、ステップＳ７０で、変数ａは３より小さいと判定され、処理はステップＳ６３に戻る。
【００７３】
次に、ステップＳ６３で変数ｃに２がセットされ、ステップＳ６４で変数ｉに１がセットされる。ステップＳ６５において、変数ａは０と等しくないと判定され、ステップＳ６６の処理はスキップされる。すなわち、変数Ｔには、時刻パラメータｔ（０）の値がセットされたままである。ステップＳ６７で、メモリ領域ｍ（１）にバッファｂ（１）（バッファ１３２）の記録内容がコピーされる。そして、ステップＳ６８において、変数ｎの値が変化したか否かが判定される。
【００７４】
図１２は、図１１に示される状態からさらに時間が経過し、音データの記録位置１５３がバッファ１３１の途中に移動した状態を示す図である。このとき、図７を参照して上述した音データバッファ処理では、変数ｎの値は０と設定されているので、ステップＳ６８において、変数ｎの値が変化したと判定され、ステップＳ６９で変数ａに２がセットされ、ステップＳ７０で、変数ａは３より小さいと判定され、処理はステップＳ６３に戻る。
【００７５】
次に、ステップＳ６３で、変数ｃに０がセットされ、ステップＳ６４で変数ｉに２がセットされる。ステップＳ６５において、変数ａは０と等しくないと判定され、ステップＳ６６の処理はスキップされる。すなわち、変数Ｔには、時刻パラメータｔ（０）の値がセットされたままである。ステップＳ６７で、メモリ領域ｍ（２）にバッファｂ（２）（バッファ１３３）の記録内容がコピーされる。そして、ステップＳ６８において、変数ｎの値が変化したか否かが判定される。
【００７６】
図１２に示される状態からさらに時間が経過し、音データの記録位置１５３がバッファ１３２の途中に移動すると、変数ｎの値は再び１と設定され、ステップＳ６８において、変数ｎの値が変化したと判定され、ステップＳ６９で変数ａに３がセットされ、ステップＳ７０で、変数ａは３より小さくないと判定され、処理は、図９のステップＳ７１に進む。
【００７７】
そして、ステップＳ７１において、クエリー作成部９１は、時刻Ｔおよびメモリ領域ｍ（０）乃至ｍ（２）に記憶されたデータを音片として出力する。
【００７８】
このようにして、検索用の音片が生成される。検索用の音片は、ユーザが検索ボタン４１を押下する以前に記録されていた音データを含めて、バッファ３つ分の音データ（例えば、１０秒間分の音のデータ）に基づいて生成される。図１０乃至図１２の例では、検索ボタン４１が押下されたとき、記録中のバッファ１３２の、１つ前のバッファ１３１に記録された音データ、およびその後（検索ボタン４１が押下された後）、バッファ１３２とバッファ１３３に記録された音データに基づいて、音片が生成されている。
【００７９】
このようにすることで、ユーザが、偶然、検索したい音楽を聞いたとき、検索ボタンを押下するまでに、ある程度時間がかかっても（ユーザは、音楽をある程度以上の長さだけ聞かないと、検索するか否かを決断することができない）、予め（検索ボタンを押下する以前に）音バッファに記録された音データを用いて、検索用のクエリーが生成されるので、所望の音楽を検索するために、充分な長さの音データを含むクエリーが生成され、より正確に所望の音楽を検索することができる。
【００８０】
次に、サーバ３における音楽情報の検索について説明する。図１３は、図４の検索部１０２の機能的構成例を示すブロック図である。検索装置１から送信されたクエリーは、ネットワーク４を介してサーバ３で受信され、分離部１８０で、音片と現在位置の情報Ｐ、時刻情報Ｔｉｍｅに分離され、音片は周波数変換部１８１に入力され、周波数スペクトルに変換される。一方、現在位置の情報Ｐ、時刻情報Ｔｉｍｅは、検索候補絞込み部１８４に入力され、検索候補絞込み部１８４は、放送メディアＤＢ１０４、店舗ＤＢ１０５、および音楽ＤＢ１０３の中から検索すべき情報の絞込みを行う。
【００８１】
周波数変換部１８１は、周波数スペクトルをパターンマッチング部１８２に出力し、パターンマッチング部１８２は、検索候補絞込み部１８４から検索すべき情報を取得し、周波数スペクトルに基づいて、マッチングを行い、クエリーの音片と検索候補絞込み部１８４から取得した情報に基づく音片の類似度を表す評価値を演算し、演算した結果をスコアソート部１８３に出力する。なお、評価値は、類似度が高いほど小さい値となる。
【００８２】
スコアソート部１８３は、検索候補絞込み部１８４から取得した情報に基づく音片のうち、評価値をソートして、閾値以下となったものを出力する。
【００８３】
勿論、評価値は、類似度が高いほど大きい値とすることもできる。この場合は、閾値以上のものが出力される。すなわち、所定の基準が満足されたもの（類似度が高いもの）が選択され、出力される。
【００８４】
次に、図１４を参照して、サーバ３による音楽データ検索処理について説明する。この処理は、検索装置１から送信されたクエリーを受信したとき（図６のステップＳ２３の後）、実行される。
【００８５】
ステップＳ９１において、分離部１８０は、クエリーを取得し、音片と現在位置の情報Ｐ、時刻情報Ｔｉｍｅに分離し、音片を周波数変換部１８１に入力し、現在位置の情報Ｐと時刻情報Ｔｉｍｅを、検索候補絞込み部１８４に入力する。
【００８６】
ステップＳ９２において、周波数変換部１８１は、クエリーの音片に含まれる音データを周波数変換し、周波数スペクトルを生成する。ステップＳ９３において、パターンマッチング部１８２は、図１５を参照して後述する店舗ＤＢデータチェック処理を実行する。ステップＳ９４において、パターンマッチング部１８２は、店舗ＤＢデータチェック処理の結果リストが空か否か、すなわち類似度の高いデータが検出されたか否かを判定し、結果リストが空であると判定された場合（類似度の高いデータが検出されなかった場合）、ステップＳ９５に進み、図１７を参照して後述する放送メディアＤＢデータチェック処理を実行する。
【００８７】
ステップＳ９６において、パターンマッチング部１８２は、放送メディアＤＢデータチェック処理の結果リストが空か否か、すなわち類似度の高いデータが検出されたか否かを判定し、結果リストが空であると判定された場合（類似度の高いデータが検出されなかった場合）、ステップＳ９７に進み、図２０を参照して後述する音楽ＤＢデータチェック処理を実行する。
【００８８】
ステップＳ９８において、スコアソート部１８３は、結果リストを評価値の低い順に（類似度が高い順に）ソートし、ステップＳ９９で出力する。ここで、出力された結果リストは、サーバ６の図示せぬ記憶部に記憶され、検索装置１にネットワーク４を介して提供される（図６のステップＳ２５で、検索装置１に取得される）。
【００８９】
ステップＳ９４において、結果リストが空ではないと判定された場合（類似度の高いデータが検出された場合）、ステップＳ９５乃至Ｓ９７の処理は、スキップされる。また、ステップＳ９６において、結果リストが空ではないと判定された場合（類似度の高いデータが検出された場合）、ステップＳ９７の処理はスキップされる。
【００９０】
すなわち、店舗ＤＢ、放送メディアＤＢ、音楽ＤＢの順に検索が行われ、類似度の高いデータが検出された場合、後の順番のＤＢの検索は行われない。これにより、検索処理を迅速に実行することができる。また、ＤＢの検索は、データ量が少ない順に行われる。これによっても、迅速な検索が可能となる。
【００９１】
このようにして、サーバ３で、クエリーに基づく音楽が検索され、検索結果が検索装置１に提供される。
【００９２】
次に、図１５を参照して、図１４のステップＳ９３の店舗ＤＢデータチェック処理について説明する。ステップＳ１１１において、検索候補絞込み部１８４は、店舗ＤＢ１０５からデータを１つ抽出する。店舗ＤＢ１０５には、例えば、図１６に示されるようなデータが記憶されている。
【００９３】
図１６は、ある店舗において演奏（再生）された１曲の音楽についての情報が記述されたデータを表し、このデータは、フィールド２１１乃至２１４により構成されている。フィールド２１１には、店舗名、位置情報、および広告情報が記述されている。この例では、店舗名「ａ」、位置情報「ｘ＝“Ｅ１２８．３２．１３．３３”  ｙ＝“Ｎ４６．２８．３６．０２”」、および広告情報「ｐｒｏｇ１＿ｃｈａｎｎｅｌ１．Ａｄ」が記述されている。ここで、位置情報は、この店舗が存在する位置を表す情報であり、ＧＰＳデータに基づいて記述される。また、広告情報は、他のサーバへのＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）とされる。
【００９４】
フィールド２１２には、音楽の演奏開始時刻と終了時刻が記述されている。この例では、「＜ｍｕｓｉｃ  ｓｔａｒｔ＝”２００３／２／２０  １２：２４：２１”，  ｅｎｄ＝”２００３／２／２０  １２：２７：２５”＞」と記述されている。これは、２００３年２月２０日１２時２４分２１秒に音楽の演奏が開始され、２００３年２月２０日１２時２７分２５秒に演奏が終了したことを表す。ステップＳ１１１においては、クエリーの時刻情報Ｔｉｍｅが演奏開始時刻と終了時刻の間にあるデータが選択されて抽出される。
【００９５】
フィールド２１３は、音楽ファイルのアドレスを記述するフィールドであり、この例では、「＜ｓｏｕｎｄ  ｆｉｌｅ＝”２００３＿２＿２０＿１２＿２４．ｗａｖ”  ／＞」と記述されている。サーバ３は、このアドレスにアクセスすることにより、音楽ファイルを取得することができる。
【００９６】
フィールド２１４は、この音楽に関連する情報（例えば、アーティスト名（歌手名、演奏者名など）、アルバム名など）へのリンクが記述されており、この例では、「＜ｒｅｆｍｕｓｉｃＩｎｆｏ  ｈｒｅｆ＝”００１．ｉｎｆｏ”  ／＞」と記述されている。
【００９７】
ステップＳ１１２において、検索候補絞込み部１８４は、店舗ＤＢ１０５にデータがあるか（ステップＳ１１１でデータを抽出できたか）否かを判定し、データがあると判定された場合、ステップＳ１１３において、そのデータに記述された位置情報と、クエリーから取得された現在位置の情報Ｐとの距離を比較し、両者の距離が、予め設定された閾値以下か否かを判定し、距離が閾値以下ではないと判定された場合、その店舗で演奏された音楽がユーザにより聞かれた可能性は低いので、ステップＳ１１１に戻り、次のデータを抽出する。
【００９８】
ステップＳ１１３において、距離が閾値以下であると判定された場合、その店舗で演奏された音楽が、ユーザにより聞かれた可能性が高いので、ステップＳ１１４において、検索候補絞込み部１８４は、参照用音片を取得する。参照用音片としては、フィールド２１３の記述に基づいて、音楽ファイルが取得され、取得された音楽ファイルの一部分が音片として取得される。このとき、クエリーの時刻情報Ｔｉｍｅとクエリーの音片に含まれる時刻Ｔに基づいて、音楽ファイルの中で音片として取得される部分が決定される。
【００９９】
ステップＳ１１５において、パターンマッチング部１８２は、図２２を参照して後述するパターンマッチング処理を実行する。これにより、クエリーの音片と参照用音片の類似度が評価値として演算される。
【０１００】
ステップＳ１１６において、パターンマッチング部１８２は、ステップＳ１１５の処理により演算された評価値が予め設定された閾値以下か否か、すなわち類似度が高いか否かを判定し、評価値が閾値以下である（類似度が高い）と判定された場合、ステップＳ１１７に進み、このデータの音楽情報をリストに保存する。このとき、フィールド２１４の記述に基づいて、この音楽に関連する情報が取得され音楽情報としてリストに保存される。
【０１０１】
ステップＳ１１７の処理の後、または、ステップＳ１１６で、評価値が閾値以下ではない（類似度が低い）と判定された場合、処理はステップＳ１１１に戻りそれ以降の処理が繰り返し実行される。
【０１０２】
ステップＳ１１２において、データがないと判定された場合（全てのデータのチェックが完了した場合）、処理は終了される。
【０１０３】
このようにして、店舗ＤＢ１０５に基づいて、音楽情報が検索される。店舗ＤＢ１０５のデータには、その店舗の位置情報と、音楽の演奏開始時刻および終了時刻が記述されているので、クエリーに含まれる時刻情報Ｔｉｍｅと現在位置の情報Ｐを用いて、検索対象データを絞り込むことにより、より早く所望の音楽を検索することができる。
【０１０４】
次に、図１７を参照して、図１４のステップＳ９５の放送メディアＤＢデータチェック処理について説明する。ステップＳ１３１において、検索候補絞込み部１８４は、放送メディアＤＢ１０４からデータを１つ抽出する。放送メディアＤＢ１０４には、例えば、図１８に示されるようなデータが記憶されている。
【０１０５】
図１８は、ある放送局において放送された１曲の音楽についての情報が記述されたデータを表し、このデータは、フィールド２３１乃至２３５により構成されている。フィールド２３１には、放送メディアの種類およびチャネルが記述されている。この例では、放送メディア「ＴＶ（テレビジョン）」、およびチャネル「１」が記述されている。
【０１０６】
フィールド２３２には、音楽の演奏開始時刻と終了時刻が記述されている。この例では、「＜ｍｕｓｉｃ  ｓｔａｒｔ＝”２００３／２／２０  １２：２４：２１”，  ｅｎｄ＝”２００３／２／２０  １２：２７：２５”＞」と記述されている。これは、２００３年２月２０日１２時２４分２１秒に音楽の演奏が開始され、２００３年２月２０日１２時２７分２５秒に演奏が終了したことを表す。ステップＳ１３１においては、クエリーの時刻情報Ｔｉｍｅが演奏開始時刻と終了時刻の間にあるデータが選択されて抽出される。
【０１０７】
フィールド２３３は、音楽ファイルのアドレスを記述するフィールドであり、この例では、「＜ｓｏｕｎｄ  ｆｉｌｅ＝”２００３＿２＿２０＿１２＿２４．ｗａｖ”  ／＞」と記述されている。サーバ３は、このアドレスにアクセスすることにより、音楽ファイルを取得することができる。
【０１０８】
フィールド２３４は、この音楽に関連する情報（例えば、アーティスト名（歌手名、演奏者名等）、アルバム名など）へのリンクが記述されており、この例では、「＜ｒｅｆｍｕｓｉｃＩｎｆｏ  ｈｒｅｆ＝”００１．ｉｎｆｏ”  ／＞」と記述されている。
【０１０９】
フィールド２３５は、広告情報であり、他のサーバへのＵＲＬが記述される。この例では、「ｐｒｏｇ１＿ｃｈａｎｎｅｌ１．Ａｄ」と記述されている。
【０１１０】
ステップＳ１３２において、検索候補絞込み部１８４は、放送メディアＤＢ１０４にデータがあるか（ステップＳ１１１でデータを抽出できたか）否かを判定し、データがあると判定された場合、ステップＳ１３３に進み、参照用音片を取得する。参照用音片としては、フィールド２３３の記述に基づいて、音楽ファイルが取得され、取得された音楽ファイルの一部分が音片として取得される。このとき、クエリーの時刻情報Ｔｉｍｅとクエリーの音片に含まれる時刻Ｔに基づいて、音楽ファイルの中で音片として取得される部分が決定される。
【０１１１】
ステップＳ１３４において、パターンマッチング部１８２は、図２２を参照して後述するパターンマッチング処理を実行する。これにより、クエリーの音片と参照用音片の類似度が評価値として演算される。
【０１１２】
ステップＳ１３５において、パターンマッチング部１８２は、ステップＳ１３４の処理により演算された評価値が予め設定された閾値以下か否か、すなわち類似度が高いか否かを判定し、評価値が閾値以下であると判定された場合（基準を満足する評価である場合）、このデータの音楽情報をリストに保存する。このとき、フィールド２３４の記述に基づいて、この音楽に関連する情報が取得され音楽情報としてリストに保存される。
【０１１３】
ステップＳ１３６の処理の後、または、ステップＳ１３５で評価値は閾値以下ではないと判定された場合、処理はステップＳ１３１に戻り、それ以降の処理が繰り返し実行される。
【０１１４】
ステップＳ１３２において、データがないと判定された場合（全てのデータのチェックが完了した場合）、処理は終了される。
【０１１５】
このようにして、放送メディアＤＢ１０４に基づいて、音楽情報が検索される。放送メディアＤＢ１０４には、図１９に示されるように、各放送メディア（テレビ２５１、ラジオ２５２、有線放送２５３など）における各チャネルの放送データが記憶されており、全ての放送メディアの全てのチャネルの放送データの中で、クエリーの時刻情報に基づいて決定された時刻２７１と２７２の間の音データが参照用の音片とされ、パターンマッチングが行われる。
【０１１６】
放送メディアＤＢ１０４には、音楽の演奏開始時刻および終了時刻が記述されているので、クエリーに含まれる時刻情報Ｔｉｍｅを用いて、検索対象データを絞り込むことにより、より早く所望の音楽を検索することができる。しかし、放送メディアＤＢ１０４のデータには、位置情報が含まれていないため、店舗ＤＢ１０５の場合と比べると検索する対象が広くなり、検索時間が長くなる。このため、本発明では、店舗ＤＢデータチェック処理が先に実行され、放送メディアＤＢデータチェック処理は、店舗ＤＢデータチェック処理で類似度の高いデータが検出できなかった場合に実行される。
【０１１７】
次に、図２０を参照して、ステップＳ９７の音楽ＤＢデータチェック処理について説明する。ステップＳ１５１において、検索候補絞込み部１８４は、音楽ＤＢ１０３からデータを１つ抽出する。音楽ＤＢ１０３には、例えば、各種の音楽の音楽ファイルが記憶されている。
【０１１８】
ステップＳ１５２において、検索候補絞込み部１８４は、音楽ＤＢ１０３にデータがあるか（ステップＳ１５１でデータを抽出できたか）否かを判定し、データがあると判定された場合、ステップＳ１５３に進み、パターンマッチング部１８２は、図２２を参照して後述するパターンマッチング処理を実行する。これにより、クエリーの音片と参照用音片の類似度が評価値として演算される。
【０１１９】
このとき、図２１に示されるように、音楽ファイル２９１の中で、クエリーの音片２９２と同じ時間（長さ）の音データ２９１−１，２９１−２，・・・が参照用音片として抽出され、評価値が演算される。そして参照用音片のうち、最も評価値の低い（類似度が高い）音片の評価値が、このデータ（音楽ファイル）の評価値として出力される。
【０１２０】
ステップＳ１５４において、パターンマッチング部１８２は、ステップＳ１５３の処理により演算された評価値が予め設定された閾値以下か否か、すなわち類似度が高いか否かを判定し、評価値が閾値以下であると判定された場合（類似度が高い場合）、このデータの音楽情報をリストに保存する。このとき、音楽ＤＢ１０３を参照して、この音楽に関連する情報が取得され音楽情報としてリストに保存される。
【０１２１】
ステップＳ１５５の処理の後、または、ステップＳ１５４で評価値は閾値以下ではない（類似度が低い）と判定された場合、処理はステップＳ１５１に戻りそれ以降の処理が繰り返し実行される。
【０１２２】
ステップＳ１５２において、データがない（全てのデータのチェックが完了した）と判定された場合、処理は終了される。
【０１２３】
このようにして、音楽ＤＢ１０３に基づいて、音楽情報が検索される。音楽ＤＢ１０３には、店舗ＤＢ１０５および放送メディアＤＢ１０４と異なり、時刻情報や位置情報が記述されていないため、検索対象が広くなり（データ量が多くなり）検索時間が長くなる。このため、本発明では、店舗ＤＢデータチェック処理、および放送メディアＤＢデータチェック処理が先に実行され、音楽ＤＢデータチェック処理は、店舗ＤＢデータチェック処理および放送メディアＤＢデータチェック処理で類似度の高いデータが検出できなかった場合に実行される。
【０１２４】
次に、図２２を参照して、図１５のステップＳ１１５、図１７のステップＳ１３４、または図２０のステップＳ１５３のパターンマッチング処理について説明する。ステップＳ１９１において、パターンマッチング部１８２は、クエリーの音片（音データ）の周波数スペクトルを時間と周波数でメッシュ分解する。
【０１２５】
ここで、図２３乃至図２６を参照して、音片の周波数スペクトルがメッシュ分解される原理を説明する。図２３は、音片の音データの信号を、縦軸を出力レベルとし、横軸を時間として波形で示した図である。音片の音データは、周波数変換部１８１により周波数変換され（図１４のステップＳ９２）、図２４に示されるような周波数スペクトルに変換される。この例では、横軸を時間、縦軸を周波数として、周波数スペクトルが表示されている。そして、図２４に示される周波数スペクトルが、図２５に示されるように、所定の時間（ｔ１，ｔ２，ｔ３，・・・ｔｎ）と、所定の周波数（ｆ１，ｆ２，ｆ３，・・・ｆｍ）を単位としてメッシュ分解される。
【０１２６】
図２６は、このとき生成されるメッシュデータの例を示す図である。この例では、時間ｔ１，ｔ２，・・・ｔｎにおける周波数の値ｆ１，ｆ２，・・・ｆｍが、データ数と時間または周波数の間隔を表す刻み幅とともに記述されている。
【０１２７】
図２２に戻って、ステップＳ１９２において、パターンマッチング部１８２は、ステップＳ１９１と同様にして、参照用音片の周波数スペクトルを時間と周波数でメッシュ分解する。これにより参照用音片についても、図２６と同様のメッシュデータが生成される。
【０１２８】
ステップＳ１９３において、パターンマッチング部１８２は、クエリーの音片のメッシュデータと参照用音片のメッシュデータをベクトルとして比較する。
【０１２９】
このとき、図２７に示されるように、参照用音片のメッシュデータ３１１の中から時間ｔ１に対応する周波数成分（ｆ１，ｆ２，・・・ｆｍ）が抽出され、所定の重み（ａ１，ａ２，・・・ａｍ）で重み付けされて、ｍ次元のベクトルであるベクトルｔ１（ａ１・ｆ１，ａ２・ｆ２，・・・ａｍ・ｆｍ）が生成される。同様にクエリーの音片のメッシュデータの時間ｒ１に対応する周波数成分（ｆ’１，ｆ’２，・・・ｆ’ｍ）が抽出され、やはり所定の重み（ａ’１，ａ’２，・・・ａ’ｍ）で重み付けされて、ｍ次元のベクトルであるベクトルｒ１（ａ’１・ｆ’１，ａ’２・ｆ’２，・・・ａ’ｍ・ｆ’ｍ）が生成される。なお、図２７において、ベクトルｔ１とｒ１は、ｆ１、ｆ２、およびｆ３の３次元で表されているが、実際には、ｍ次元となる。
【０１３０】
同様に、参照用音片のメッシュデータ３１１の中から時間ｔ２，ｔ３，・・・ｔｎに対応する周波数成分が抽出され、所定の重みで重み付けされ、ベクトルｔ２，ｔ３，・・・ｔｎが生成され、クエリーの音片のメッシュデータの時間ｒ２，ｒ３，・・・ｒｎに対応する周波数成分が抽出され、所定の重みで重み付けされ、ベクトルｒ２，ｒ３，・・・ｒｎが生成される。
【０１３１】
ステップＳ１９４において、パターンマッチング部１８２は、図２７に示されるベクトルｔ１とｒ１がなす角度３３１、ベクトルｔ２とｒ２がなす角度、・・・ベクトルｔｎとｒｎがなす角度の総和を求めて評価値を演算する。各ベクトル間の角度の総和は、次式により求められる。
【０１３２】
【数１】
2005004576.tif 000003
【０１３３】
なお、評価値は、ベクトルｔ１とｒ１の距離３３２、ベクトルｔ２のｒ２距離、・・・ベクトルｔｎとｒｎの距離の総和により演算されるようにしてもよい。各ベクトル間の距離の総和は、次式により求められる。
【０１３４】
【数２】
2005004576.tif 000004
【０１３５】
このようにして、評価値が演算される。評価値は、音片の周波数スペクトルが時間と周波数でメッシュ分解され、ベクトル化されて演算されるので、より精度の高い類似度を表すことができる。
【０１３６】
上述したように、サーバ３により検索された音楽情報は検索装置１により取得され、検索結果が表示される（図６のステップＳ２７）。このとき表示される画面の例を図２８乃至図３１に示す。
【０１３７】
最初に、図２８に示されるような画面が、検索装置１の表示部２６に表示される。この例では、３件の検索結果が表示されている。図２８において日付と時刻（２００３／２／２０  １３：３５：２６など）の記述５１１−１乃至５１１−３は、検索ボタン４１が押下された日付と時刻を表している。入力インタフェース２４を操作して画面中央のアイコン５１２−１乃至５１２−３のいずれかをダブルクリックすると、そのクエリーの音片の音データが再生され、スピーカ２５から再生された音が出力される。
【０１３８】
図中右側の「検索結果」と表示されたアイコン５１３−１乃至５１３−３は、検索結果の有無を表している。アイコン５１３−１とアイコン５１３−２は濃く（実線で）表示されており、サーバ３による検索結果が、すでに検索装置１により取得されていることを表す。アイコン５１３−３は淡く（破線で）表示されており、サーバ３による検索結果が、まだ検索装置１により取得されていないことを表す。検索結果の詳細を表示させるとき、ユーザは、入力インタフェース２４を操作して、アイコン５１３−１乃至５１３−３をダブルクリックする。
【０１３９】
図２９は、アイコン５１３−１がダブルクリックされた場合の画面の表示例を示す図である。この例では、検索ボタン４１が押下された日付と時刻（２００３／２／２０  １３：３５：２６）の記述５２１と、クエリーの音片の音データを再生するためのアイコン５２２が表示されている。
【０１４０】
また、検索された音楽情報として、曲名と歌手名の記述５２３−１と５２３−２が表示されている。検索された音楽情報が複数ある場合は、図２２を参照して上述したパターンマッチング処理により、演算された評価値が小さい順（類似度が高い順）に音楽情報が表示される。
【０１４１】
入力インタフェース２４を操作して、アイコン５２４−１または、アイコン５２４−２をダブルクリックすると、パターンマッチング処理で用いられた参照用音片の音データが再生され、スピーカ２５からその音が出力される。
【０１４２】
アイコン５２５−１とアイコン５２５−２は、この音楽情報が検索されたソースを表示するアイコンであり、例えば、アイコン５２５−１がダブルクリックされると、音楽情報５２３−１を検索するたに用いられた情報として、店舗名、放送局名などが表示される。
【０１４３】
また、ユーザは、入力インタフェース２４を操作して、図２８に示される表示画面において、音楽情報５２３−１を選択し、詳細表示を指示することにより、図３０に示されるような画面を表示することができる。図３０の例では、曲名、歌手名の記述５３１の後ろにアイコン５３２とアイコン５３３が表示されている。
【０１４４】
図３０の表示画面においてアイコン５３２がダブルクリックされると、この音楽（コンテンツ）を視聴するためのデータが取得されて再生され、スピーカ２５から再生された音が出力される。また、アイコン５２３がダブルクリックされると、この音楽のコンテンツが購入可能となる。音楽の視聴または購入は、ネットワーク４に接続される所定のサーバにアクセスすることにより行われる。
【０１４５】
また、図３０の表示画面の下部の参考情報表示部５３４には、この音楽を検索した他のユーザがよく検索する音楽情報が必要に応じて表示される。
【０１４６】
また、検索された音楽情報に広告情報が含まれている場合、例えば、図１６の記述２１１に基づいて、広告データが取得され表示される。図３１は、この場合の表示例を示す図である。この例では、検索ボタンを押下した日付と時刻の記述５４１とともに、店舗名５４２が表示されており、画面中央の広告表示部５４３には、広告データに基づいて広告が表示される。
【０１４７】
なお、上述した一連の処理をハードウェアで実現するか、ソフトウェアで実現するかは問わない。上述した一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば図３２に示されるような汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。
【０１４８】
図３２において、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）９０１は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９０２に記憶されているプログラム、または記憶部９０８からＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９０３にロードされたプログラムに従って各種の処理を実行する。ＲＡＭ９０３にはまた、ＣＰＵ９０１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０１４９】
ＣＰＵ９０１、ＲＯＭ９０２、およびＲＡＭ９０３は、バス９０４を介して相互に接続されている。このバス９０４にはまた、入出力インタフェース９０５も接続されている。
【０１５０】
入出力インタフェース９０５には、キーボード、マウスなどよりなる入力部９０６、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  ｄｉｓｐｌａｙ）などよりなるディスプレイ（表示部）、並びにスピーカなどよりなる出力部９０７、ハードディスクなどより構成される記憶部９０８、モデム、ターミナルアダプタなどより構成される通信部９０９が接続されている。通信部９０９は、インターネットなどのネットワークを介しての通信処理を行う。
【０１５１】
入出力インタフェース９０５にはまた、必要に応じてドライブ９１０が接続され、ドライブ９１０には、本発明のプログラムが記録された記録媒体として、例えば、リムーバブルメディア９１１が装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部９０８にインストールされる。
【０１５２】
なお、本明細書において上述した一連の処理を実行するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１５３】
【発明の効果】
以上の如く本発明によれば、所望の音楽を検索することができる。特に、より簡単かつ確実に、音楽を検索することができる。
【図面の簡単な説明】
【図１】本発明の音楽検索システムの構成例を示す図である。
【図２】図１の検索装置の構成例を示すブロック図である。
【図３】図２のＣＰＵの機能的構成例を示すブロック図である。
【図４】図１のサーバの構成例を示すブロック図である。
【図５】検索前処理を説明するフローチャートである。
【図６】検索実行処理を説明するフローチャートである。
【図７】音データバッファ処理を説明するフローチャートである。
【図８】音バッファの構成例を示す図である。
【図９】検索用音片生成処理を説明するフローチャートである。
【図１０】音バッファに音データが記録される例を示す図である。
【図１１】音バッファに音データが記録される例を示す図である。
【図１２】音バッファに音データが記録される例を示す図である。
【図１３】図４の検索部の機能的構成例を示すブロック図である。
【図１４】音楽データ検索処理を説明するフローチャートである。
【図１５】店舗ＤＢデータチェック処理を説明するフローチャートである。
【図１６】店舗ＤＢに記憶されているデータの例を示す図である。
【図１７】放送メディアＤＢデータチェック処理を説明するフローチャートである。
【図１８】放送メディアＤＢに記憶されているデータの例を示す図である。
【図１９】各放送メディアの放送データと、放送データのパターンマッチングが行われる部分を示す図である。
【図２０】音楽ＤＢデータチェック処理を説明するフローチャートである。
【図２１】音楽データの中でパターンマッチングが行われる部分を示す図である。
【図２２】パターンマッチング処理を説明するフローチャートである。
【図２３】音片の波形を示す図である。
【図２４】周波数スペクトルに分解された音片の例を示す図である。
【図２５】図２４の周波数スペクトルスペクトルをメッシュ分解した例を示す図である。
【図２６】図２４でメッシュ分解されたメッシュデータの構成例を示す図である。
【図２７】クエリーの音片と参照用音片をベクトル化する例を示す図である。
【図２８】音楽情報の検索結果の表示画面の例を示す図である。
【図２９】図２８の検索結果の内容を表示する画面の表示例を示す図である。
【図３０】音楽情報の詳細を表示する画面の表示例を示す図である。
【図３１】広告情報を表示する画面の表示例を示す図である。
【図３２】パーソナルコンピュータの構成例を示すブロック図である。
【符号の説明】
１  検索装置，  ３  サーバ，  ６１  入力部，  ６２  音バッファ，  ６７ＣＰＵ，  ９１  クエリー作成部，  ９２  検索実行部，  １０２  検索部，１８１  周波数変換部，  １８２  パターンマッチング部，  １８３  スコアソート部，  １８４  検索候補絞込み部
【図１】
2005004576.tif 000005
【図２】
2005004576.tif 000006
【図３】
2005004576.tif 000007
【図４】
2005004576.tif 000008
【図５】
2005004576.tif 000009
【図６】
2005004576.tif 000010
【図７】
2005004576.tif 000011
【図８】
2005004576.tif 000012
【図９】
2005004576.tif 000013
【図１０】
2005004576.tif 000014
【図１１】
2005004576.tif 000015
【図１２】
2005004576.tif 000016
【図１３】
2005004576.tif 000017
【図１４】
2005004576.tif 000018
【図１５】
2005004576.tif 000019
【図１６】
2005004576.tif 000020
【図１７】
2005004576.tif 000021
【図１８】
2005004576.tif 000022
【図１９】
2005004576.tif 000023
【図２０】
2005004576.tif 000024
【図２１】
2005004576.tif 000025
【図２２】
2005004576.tif 000026
【図２３】
2005004576.tif 000027
【図２４】
2005004576.tif 000028
【図２５】
2005004576.tif 000029
【図２６】
2005004576.tif 000030
【図２７】
2005004576.tif 000031
【図２８】
2005004576.tif 000032
【図２９】
2005004576.tif 000033
【図３０】
2005004576.tif 000034
【図３１】
2005004576.tif 000035
【図３２】
2005004576.tif 000036