(57)【要約】【課題】楽曲データの波形を入力とし、ＣＧ映像やロボットのバンドが実際にその楽曲を演奏しているかのように動きを制御することが可能な情報処理装置を提供すること。【解決手段】複数の楽器音が混在した音声信号を解析し、当該音声信号の特徴量として演奏時間の経過と共に変化するメタデータを抽出するメタデータ抽出部と、前記各楽器音に対応する演奏者オブジェクトの動きを制御するための演奏者パラメータを前記メタデータ抽出部で抽出されたメタデータに基づいて決定する演奏者パラメータ決定部と、を備える、情報処理装置が提供される。【選択図】図２
2010134790.tif 000002
【特許請求の範囲】
【請求項１】
複数の楽器音が混在した音声信号を解析し、当該音声信号の特徴量として演奏時間の経過と共に変化するメタデータを抽出するメタデータ抽出部と、
前記各楽器音に対応する演奏者オブジェクトの動きを制御するための演奏者パラメータを前記メタデータ抽出部で抽出されたメタデータに基づいて決定する演奏者パラメータ決定部と、
を備える、情報処理装置。
【請求項２】
前記メタデータ抽出部は、前記音声信号のビート、コード進行、楽曲構造、メロディーライン、ベースライン、前記各楽器音の存在確率、前記各楽器音のソロ確率、及びボーカルの声質で形成される群の中から選択される１以上のデータを前記メタデータとして抽出する、請求項１に記載の情報処理装置。
【請求項３】
前記メタデータ抽出部は、前記音声信号が属する楽曲のジャンル、前記音声信号が属する楽曲の年代、前記音声信号の演奏者に関する情報、前記音声信号に含まれる楽器音の種類、及び前記音声信号の曲調で形成される群の中から選択される１以上のデータを前記メタデータとして抽出する、請求項２に記載の情報処理装置。
【請求項４】
前記演奏者パラメータ決定部は、
前記演奏者に関する情報として前記演奏者の身長及び体重の情報が抽出された場合に当該身長及び体重の情報に基づいて前記演奏者オブジェクトのサイズを表す演奏者パラメータを決定し、
前記演奏者に関する情報として前記演奏者の性別の情報が抽出された場合に当該性別の情報に基づいて前記演奏者オブジェクトのヘアスタイル及び服装を表す演奏者パラメータを決定する、請求項３に記載の情報処理装置。
【請求項５】
前記メタデータ抽出部で抽出されたメタデータに基づいて前記演奏者オブジェクトが配置されるステージの照明を制御するための照明パラメータを決定する照明パラメータ決定部をさらに備え、
前記照明パラメータ決定部は、前記メタデータ抽出部で抽出されたビートに同期して前記照明が変化するように前記照明パラメータを決定する、請求項３に記載の情報処理装置。
【請求項６】
前記照明パラメータ決定部は、前記メタデータ抽出部で抽出された前記各楽器音の存在確率に基づいて当該各楽器音に対応する演奏者オブジェクトを照らすスポットライトの明るさを表す照明パラメータを決定する、請求項５に記載の情報処理装置。
【請求項７】
前記照明パラメータ決定部は、前記メタデータ抽出部で抽出された楽曲構造を参照し、演奏中の楽曲構造の種類に応じて前記照明が変化するように前記照明パラメータを決定する、請求項６に記載の情報処理装置。
【請求項８】
前記照明パラメータ決定部は、前記メタデータ抽出部で抽出された前記楽曲の年代に基づいて前記照明の色が変化するように前記照明パラメータを決定する、請求項７に記載の情報処理装置。
【請求項９】
前記メタデータ抽出部で抽出されたメタデータに基づいて前記ステージとは異なる位置に設けられた観客席に配置される観客オブジェクトの動作を制御するための観客パラメータを決定する観客パラメータ決定部をさらに備え、
前記観客パラメータ決定部は、前記メタデータ抽出部で抽出されたビートに同期して前記観客オブジェクトの動作が変化するように前記観客パラメータを決定する、請求項２に記載の情報処理装置。
【請求項１０】
前記観客パラメータ決定部は、前記メタデータ抽出部で抽出された楽曲構造を参照し、演奏中の楽曲構造の種類に応じて前記観客オブジェクトの動作が変化するように前記観客パラメータを決定する、請求項９に記載の情報処理装置。
【請求項１１】
前記演奏者パラメータ決定部は、前記メタデータ抽出部で抽出された前記各楽器音のソロ確率に基づいて当該各楽器音に対応する演奏者オブジェクトの姿勢、表情を表す演奏者パラメータを決定する、請求項２に記載の情報処理装置。
【請求項１２】
前記演奏者パラメータ決定部は、前記メタデータ抽出部で抽出された前記各楽器音の存在確率に基づいて当該各楽器音に対応する演奏者オブジェクトの演奏する手の動きの大きさを表す演奏者パラメータを決定する、請求項１１に記載の情報処理装置。
【請求項１３】
前記演奏者パラメータ決定部は、前記メタデータ抽出部で抽出されたボーカルの存在確率に基づいて当該ボーカルに対応する演奏者オブジェクトの口の開く大きさ、又はマイクを持つ手と口との間の距離を表す演奏者パラメータを決定する、請求項２に記載の情報処理装置。
【請求項１４】
前記演奏者パラメータ決定部は、前記メタデータ抽出部で抽出されたメロディーラインの平均音程と各フレームにおける当該メロディーラインの音程との差異に基づいて、或いは、前記メタデータ抽出部で抽出されたボーカルの声質に基づいて当該ボーカルに対応する演奏者オブジェクトの表情の動きを表す演奏者パラメータを決定する、請求項１３に記載の情報処理装置。
【請求項１５】
前記演奏者パラメータ決定部は、前記メタデータ抽出部で抽出されたメロディーラインに基づいてボーカルに対応する演奏者オブジェクトのマイクを持たない手の動きを表す演奏者パラメータを決定する、請求項１４に記載の情報処理装置。
【請求項１６】
前記演奏者パラメータ決定部は、前記メタデータ抽出部で抽出されたコード進行に基づいてギター、キーボード、及びストリングスで形成される群の中から選択される１以上のセクションに対応する前記演奏者オブジェクトの手の位置を表す演奏者パラメータを決定する、請求項２に記載の情報処理装置。
【請求項１７】
前記演奏者パラメータ決定部は、前記メタデータ抽出部で抽出されたベースラインに基づいてベースに対応する前記演奏者オブジェクトの弦を押さえる手の位置を表す演奏者パラメータを決定する、請求項２に記載の情報処理装置。
【請求項１８】
前記演奏者オブジェクトは、外部接続されたロボット、又はコンピュータグラフィックスで実現される演奏者映像であり、
前記演奏者パラメータ決定部で決定された演奏者パラメータを用いて前記外部接続されたロボットの動きを制御するか、又は前記演奏者パラメータ決定部で決定された演奏者パラメータを用いて前記演奏者映像の動きを制御するオブジェクト制御部をさらに備える、請求項１に記載の情報処理装置。
【請求項１９】
複数の楽器音が混在した音声信号を解析し、当該音声信号の特徴量として演奏時間の経過と共に変化するメタデータを抽出するメタデータ抽出ステップと、
前記各楽器音に対応する演奏者オブジェクトの動きを制御するための演奏者パラメータを前記メタデータ抽出ステップで抽出されたメタデータに基づいて決定する演奏者パラメータ決定ステップと、
を含む、情報処理方法。
【請求項２０】
複数の楽器音が混在した音声信号を解析し、当該音声信号の特徴量として演奏時間の経過と共に変化するメタデータを抽出するメタデータ抽出機能と、
前記各楽器音に対応する演奏者オブジェクトの動きを制御するための演奏者パラメータを前記メタデータ抽出機能で抽出されたメタデータに基づいて決定する演奏者パラメータ決定機能と、
をコンピュータに実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【０００２】
音楽を視覚化する方法として、ロボットを楽曲データに合わせて踊らせる方法や、コンピュータグラフィックスで生成された映像（以下、ＣＧ映像）を楽曲データに合わせて動かす方法等が考えられている。しかし、現状、楽曲データの演奏情報を入力し、その演奏情報に従って所定の動作パターンを行うロボットはあるが、楽曲データの信号波形を利用し、その楽曲データに合った動作パターンを行うロボットの存在は知られていない。また、ＣＧ映像で音楽を視覚化する方法に関し、楽曲データの信号波形を利用するものとしては、楽曲データの音声波形やスペクトル画像に所定のエフェクトをかけて表示する程度のものしか知られていない。音楽の視覚化に関し、例えば、下記の特許文献１には、制御対象物の動きをリズムに対応付け、当該リズムと音楽データの周波数解析から推定されたリズムとの相関に基づいて制御対象物の動きを決定する技術が開示されている。また、下記の特許文献２には、音楽データに含まれる周波数帯域毎の音圧分布を解析し、その解析結果に基づいてビジュアルコンテンツの感情を表現する技術が開示されている。
【０００３】
【特許文献１】特開２００７−  １８３８８号公報
【特許文献２】特開２００４−  ２９８６２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記の文献には、楽曲データの時系列で変化する特徴量を自動検出し、その特徴量に基づいてオブジェクトがあたかも演奏しているように楽曲データを視覚化する技術までは開示されていない。そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、楽曲データの時系列で変化する特徴量を自動検出し、その特徴量に基づいて各楽器音に対応する演奏者オブジェクトがあたかも演奏しているかのように楽曲データを視覚化することが可能な、新規かつ改良された情報処理装置、情報処理方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明のある観点によれば、複数の楽器音が混在した音声信号を解析し、当該音声信号の特徴量として演奏時間の経過と共に変化するメタデータを抽出するメタデータ抽出部と、前記各楽器音に対応する演奏者オブジェクトの動きを制御するための演奏者パラメータを前記メタデータ抽出部で抽出されたメタデータに基づいて決定する演奏者パラメータ決定部と、を備える、情報処理装置が提供される。
【０００６】
また、前記メタデータ抽出部は、前記音声信号のビート、コード進行、楽曲構造、メロディーライン、ベースライン、前記各楽器音の存在確率、前記各楽器音のソロ確率、及びボーカルの声質で形成される群の中から選択される１以上のデータを前記メタデータとして抽出するように構成されていてもよい。
【０００７】
また、前記メタデータ抽出部は、前記音声信号が属する楽曲のジャンル、前記音声信号が属する楽曲の年代、前記音声信号の演奏者に関する情報、前記音声信号に含まれる楽器音の種類、及び前記音声信号の曲調で形成される群の中から選択される１以上のデータを前記メタデータとして抽出するように構成されていてもよい。
【０００８】
また、前記演奏者パラメータ決定部は、前記演奏者に関する情報として前記演奏者の身長及び体重の情報が抽出された場合に当該身長及び体重の情報に基づいて前記演奏者オブジェクトのサイズを表す演奏者パラメータを決定するように構成されていてもよい。この場合、上記の情報処理装置は、前記演奏者に関する情報として前記演奏者の性別の情報が抽出された場合に当該性別の情報に基づいて前記演奏者オブジェクトのヘアスタイル及び服装を表す演奏者パラメータを決定する。
【０００９】
また、上記の情報処理装置は、前記メタデータ抽出部で抽出されたメタデータに基づいて前記演奏者オブジェクトが配置されるステージの照明を制御するための照明パラメータを決定する照明パラメータ決定部をさらに備えていてもよい。この場合、前記照明パラメータ決定部は、前記メタデータ抽出部で抽出されたビートに同期して前記照明が変化するように前記照明パラメータを決定する。
【００１０】
また、前記照明パラメータ決定部は、前記メタデータ抽出部で抽出された前記各楽器音の存在確率に基づいて当該各楽器音に対応する演奏者オブジェクトを照らすスポットライトの明るさを表す照明パラメータを決定するように構成されていてもよい。
【００１１】
また、前記照明パラメータ決定部は、前記メタデータ抽出部で抽出された楽曲構造を参照し、演奏中の楽曲構造の種類に応じて前記照明が変化するように前記照明パラメータを決定するように構成されていてもよい。
【００１２】
また、前記照明パラメータ決定部は、前記メタデータ抽出部で抽出された前記楽曲の年代に基づいて前記照明の色が変化するように前記照明パラメータを決定するように構成されていてもよい。
【００１３】
また、上記の情報処理装置は、前記メタデータ抽出部で抽出されたメタデータに基づいて前記ステージとは異なる位置に設けられた観客席に配置される観客オブジェクトの動作を制御するための観客パラメータを決定する観客パラメータ決定部をさらに備えていてもよい。この場合、前記観客パラメータ決定部は、前記メタデータ抽出部で抽出されたビートに同期して前記観客オブジェクトの動作が変化するように前記観客パラメータを決定する。
【００１４】
また、前記観客パラメータ決定部は、前記メタデータ抽出部で抽出された楽曲構造を参照し、演奏中の楽曲構造の種類に応じて前記観客オブジェクトの動作が変化するように前記観客パラメータを決定するように構成されていてもよい。
【００１５】
また、前記演奏者パラメータ決定部は、前記メタデータ抽出部で抽出された前記各楽器音のソロ確率に基づいて当該各楽器音に対応する演奏者オブジェクトの姿勢、表情を表す演奏者パラメータを決定するように構成されていてもよい。
【００１６】
また、前記演奏者パラメータ決定部は、前記メタデータ抽出部で抽出された前記各楽器音の存在確率に基づいて当該各楽器音に対応する演奏者オブジェクトの演奏する手の動きの大きさを表す演奏者パラメータを決定するように構成されていてもよい。
【００１７】
また、前記演奏者パラメータ決定部は、前記メタデータ抽出部で抽出されたボーカルの存在確率に基づいて当該ボーカルに対応する演奏者オブジェクトの口の開く大きさ、又はマイクを持つ手と口との間の距離を表す演奏者パラメータを決定するように構成されていてもよい。
【００１８】
また、前記演奏者パラメータ決定部は、前記メタデータ抽出部で抽出されたメロディーラインの平均音程と各フレームにおける当該メロディーラインの音程との差異に基づいて、或いは、前記メタデータ抽出部で抽出されたボーカルの声質に基づいて当該ボーカルに対応する演奏者オブジェクトの表情の動きを表す演奏者パラメータを決定するように構成されていてもよい。
【００１９】
また、前記演奏者パラメータ決定部は、前記メタデータ抽出部で抽出されたメロディーラインに基づいてボーカルに対応する演奏者オブジェクトのマイクを持たない手の動きを表す演奏者パラメータを決定するように構成されていてもよい。
【００２０】
また、前記演奏者パラメータ決定部は、前記メタデータ抽出部で抽出されたコード進行に基づいてギター、キーボード、及びストリングスで形成される群の中から選択される１以上のセクションに対応する前記演奏者オブジェクトの手の位置を表す演奏者パラメータを決定するように構成されていてもよい。
【００２１】
また、前記演奏者パラメータ決定部は、前記メタデータ抽出部で抽出されたベースラインに基づいてベースに対応する前記演奏者オブジェクトの弦を押さえる手の位置を表す演奏者パラメータを決定するように構成されていてもよい。
【００２２】
また、前記演奏者オブジェクトが、外部接続されたロボット、又はコンピュータグラフィックスで実現される演奏者映像である場合、上記の情報処理装置は、前記演奏者パラメータ決定部で決定された演奏者パラメータを用いて前記外部接続されたロボットの動きを制御するか、又は前記演奏者パラメータ決定部で決定された演奏者パラメータを用いて前記演奏者映像の動きを制御するオブジェクト制御部をさらに備える。
【００２３】
また、上記課題を解決するために、本発明の他の観点によれば、複数の楽器音が混在した音声信号を解析し、当該音声信号の特徴量として演奏時間の経過と共に変化するメタデータを抽出するメタデータ抽出ステップと、前記各楽器音に対応する演奏者オブジェクトの動きを制御するための演奏者パラメータを前記メタデータ抽出ステップで抽出されたメタデータに基づいて決定する演奏者パラメータ決定ステップと、を含む、情報処理方法が提供される。
【００２４】
また、上記課題を解決するために、本発明の他の観点によれば、複数の楽器音が混在した音声信号を解析し、当該音声信号の特徴量として演奏時間の経過と共に変化するメタデータを抽出するメタデータ抽出機能と、前記各楽器音に対応する演奏者オブジェクトの動きを制御するための演奏者パラメータを前記メタデータ抽出機能で抽出されたメタデータに基づいて決定する演奏者パラメータ決定機能と、をコンピュータに実現させるためのプログラムが提供される。
【００２５】
また、上記課題を解決するために、本発明の別の観点によれば、上記のプログラムが記録されたコンピュータにより読み取り可能な記録媒体が提供されうる。
【発明の効果】
【００２６】
以上説明したように本発明によれば、楽曲データの時系列で変化する特徴量を自動検出し、その特徴量に基づいて各楽器音に対応する演奏者オブジェクトがあたかも演奏しているかのように楽曲データを視覚化することが可能になる。
【発明を実施するための最良の形態】
【００２７】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００２８】
本稿には、以下の順序で説明が記載されている。
【００２９】
（説明項目）
１．基盤技術
１−１．特徴量計算式生成装置１０の構成
２．実施形態
２−１．情報処理装置１００の全体構成
＃＃＃  楽曲解析方法に関する説明  ＃＃＃
２−２．音源分離部１０６の構成
２−３．ログスペクトル解析部１０８の構成
２−４．楽曲解析部１１０の構成
２−４−１．ビート検出部１３２の構成
２−４−２．楽曲構造解析部１３４の構成
２−４−３．コード確率検出部１３６の構成
２−４−４．キー検出部１３８の構成
２−４−５．小節線検出部１４０の構成
２−４−６．コード進行検出部１４２の構成
２−４−７．メロディー検出部１４４の構成
２−４−８．ベース検出部１４６の構成
２−４−９．メタデータ検出部１４８の構成
＃＃＃  楽曲の視覚化方法に関する説明  ＃＃＃
２−５．視覚化パラメータ決定部１１４の構成
２−５−１．視覚化パラメータ決定方法の概要
２−５−２．視覚化パラメータ決定方法の詳細
２−６．情報処理装置１００のハードウェア構成例
２−７．まとめ
【００３０】
＜１．基盤技術＞
まず、本発明の一実施形態に係る技術について詳細な説明をするに先立ち、同実施形態の技術的構成を実現するために用いる基盤技術について簡単に説明する。ここで説明する基盤技術は、任意の入力データが持つ特徴を特徴量という形で定量化するアルゴリズムの自動生成方法に関する。入力データとしては、例えば、音声データの信号波形や画像に含まれる色毎の輝度データ等、種々のデータが用いられる。また、楽曲を例に挙げると、当該基盤技術を適用することにより、例えば、楽曲データの波形から、その楽曲の明るさやテンポの速さ等を表す特徴量を算出するためのアルゴリズムが自動生成される。なお、以下で述べる特徴量計算式生成装置１０の構成例に代えて、例えば、特開２００８−１２３０１１号公報に記載された学習アルゴリズムを利用することも可能である。
【００３１】
［１−１．特徴量計算式生成装置１０の構成］
まず、図１を参照しながら、上記の基盤技術に係る特徴量計算式生成装置１０の機能構成について説明する。図１は、上記の基盤技術に係る特徴量計算式生成装置１０の一構成例を示す説明図である。ここで説明する特徴量計算式生成装置１０は、任意の入力データを用いて、その入力データに含まれる特徴を特徴量として定量化するアルゴリズム（以下、計算式）を自動生成する手段（学習アルゴリズム）の一例である。
【００３２】
図１に示すように、特徴量計算式生成装置１０は、主に、オペレータ記憶部１２と、抽出式生成部１４と、抽出式リスト生成部２０と、抽出式選択部２２と、計算式設定部２４とを有する。さらに、特徴量計算式生成装置１０は、計算式生成部２６と、特徴量選択部３２と、評価データ取得部３４と、教師データ取得部３６と、式評価部３８とを有する。なお、上記の抽出式生成部１４は、オペレータ選択部１６を含む。また、上記の計算式生成部２６は、抽出式計算部２８、及び係数算出部３０を含む。さらに、式評価部３８は、計算式評価部４０、及び抽出式評価部４２を含む。
【００３３】
まず、抽出式生成部１４は、オペレータ記憶部１２に記録されている複数のオペレータを組み合わせて計算式の元となる特徴量抽出式（以下、抽出式）を生成する。なお、ここで言うオペレータとは、入力データのデータ値に対して所定の演算処理を実行するために用いる演算子である。オペレータで実行される演算の種類には、例えば、微分値算出、最大値抽出、ローパスフィルタリング、普遍分散値算出、高速フーリエ変換、標準偏差値算出、平均値算出等が含まれる。もちろん、これら例示した種類の演算に限定されず、入力データのデータ値に対して実行可能な任意の種類の演算が含まれる。
【００３４】
また、各オペレータには、演算の種類、演算対象軸、及び演算に用いるパラメータが設定されている。演算対象軸とは、入力データの各データ値を定義する軸の中で、演算処理の対象とする軸を意味する。例えば、楽曲データを例に挙げると、楽曲データは、時間軸及び音程軸（周波数軸）で形成される空間内において音量の信号波形として与えられる。この楽曲データに対して微分演算を行う場合、時間軸方向に微分演算を行うのか、周波数軸方向に微分演算を行うのかを決定する必要がある。そこで、各パラメータには、入力データが定義される空間を形成する軸の中で演算処理の対象とする軸の情報が含まれる。
【００３５】
また、演算の種類によっては、パラメータが必要になる。例えば、ローパスフィルタリングの場合、透過させるデータ値の範囲を規定するための閾値がパラメータとして定められている必要がある。こうした理由から、各オペレータには、演算の種類の他に、演算対称軸、及び必要なパラメータが含まれている。例えば、あるオペレータは、Ｆ＃Ｄｉｆｆｅｒｅｎｔｉａｌ、Ｆ＃ＭａｘＩｎｄｅｘ、Ｔ＃ＬＰＦ＿１；０．８６１、Ｔ＃ＵＶａｒｉａｎｃｅ、…のように表現される。オペレータの先頭に付されるＦ等は、演算対象軸を表す。例えば、Ｆは周波数軸を意味し、Ｔは時間軸を意味する。
【００３６】
演算対称軸の次に＃で区切られて付されるＤｉｆｆｅｒｅｎｔｉａｌ等は、演算の種類を表す。例えば、Ｄｉｆｆｅｒｅｎｔｉａｌは微分値算出演算、ＭａｘＩｎｄｅｘは最大値抽出演算、ＬＰＦはローパスフィルタリング、ＵＶａｒｉａｎｃｅは普遍分散値算出演算を意味する。そして、演算の種類に続く数字はパラメータを表す。例えば、ＬＰＦ＿１；０．８６１は、１〜０．８６１の範囲を通過帯域とするローパスフィルタを表す。これらの多種多様なオペレータは、オペレータ記憶部１２に記録されており、抽出式生成部１４により読み出されて利用される。抽出式生成部１４は、まず、オペレータ選択部１６により任意のオペレータを選択し、選択したオペレータを組み合わせて抽出式を生成する。
【００３７】
例えば、オペレータ選択部１６によりＦ＃Ｄｉｆｆｅｒｅｎｔｉａｌ、Ｆ＃ＭａｘＩｎｄｅｘ、Ｔ＃ＬＰＦ＿１；０．８６１、Ｔ＃ＵＶａｒｉａｎｃｅが選択され、抽出式生成部１４により下記の式（１）で表現される抽出式ｆが生成される。但し、先頭に付された１２Ｔｏｎｅｓは、処理対象とする入力データの種類を示すものである。例えば、１２Ｔｏｎｅｓと表記されている場合、入力データの波形を解析して得られる時間−音程空間上の信号データ（後述するログスペクトル）が演算処理の対象とされる。つまり、下記の式（１）で表現される抽出式は、後述するログスペクトルを処理対象とし、入力データに対して、周波数軸方向（音程軸方向）に微分演算及び最大値抽出、時間軸方向にローパスフィルタリング及び普遍分散値演算を順次実行することを表している。
【００３８】
【数１】
2010134790.tif 000003
…（１）
【００３９】
上記の通り、抽出式生成部１４は、上記の式（１）に示したような抽出式を様々なオペレータの組み合わせについて生成する。この生成方法について、より詳細に説明する。まず、抽出式生成部１４は、オペレータ選択部１６を用いてオペレータを選択する。このとき、オペレータ選択部１６は、選択したオペレータの組み合わせ（抽出式）で入力データに演算を施した結果がスカラ又は所定サイズ以下のベクトルになるか否か（収束するか否か）を判定する。
【００４０】
上記の判定処理は、各オペレータに含まれる演算対象軸の種類及び演算の種類に基づいて行われる。この判定処理は、オペレータ選択部１６によりオペレータの組み合わせが選択された際、各組み合わせについて実行される。そして、オペレータ選択部１６により演算結果が収束すると判定された場合、抽出式生成部１４は、オペレータ選択部１６で選択されたオペレータの組み合わせを用いて抽出式を生成する。抽出式生成部１４による抽出式の生成処理は、所定数（以下、選択抽出式数）の抽出式が生成されるまで実行される。抽出式生成部１４で生成された抽出式は、抽出式リスト生成部２０に入力される。
【００４１】
抽出式生成部１４から抽出式リスト生成部２０に抽出式が入力されると、入力された抽出式から所定数（以下、リスト内抽出式数≦選択抽出式数）の抽出式が選択されて抽出式リストが生成される。このとき、抽出式リスト生成部２０による生成処理は、所定数（以下、リスト数）の抽出式リストが生成されるまで実行される。そして、抽出式リスト生成部２０で生成された抽出式リストは、抽出式選択部２２に入力される。
【００４２】
ここで、抽出式生成部１４、及び抽出式リスト生成部２０の処理に関して具体的な例を示す。まず、抽出式生成部１４により入力データの種類が、例えば、楽曲データに決定される。次いで、オペレータ選択部１６によりオペレータＯＰ１、ＯＰ２、ＯＰ３、ＯＰ４がランダムに選択される。そして、選択されたオペレータの組み合わせで楽曲データの演算結果が収束するか否かの判定処理が実行される。楽曲データの演算結果が収束すると判定された場合、ＯＰ１〜ＯＰ４の組み合わせで抽出式ｆ１が生成される。抽出式生成部１４で生成された抽出式ｆ１は、抽出式リスト生成部２０に入力される。
【００４３】
さらに、抽出式生成部１４は、抽出式ｆ１の生成処理と同様の処理を繰り返し、例えば、抽出式ｆ２、ｆ３、ｆ４を生成する。このようにして生成された抽出式ｆ２、ｆ３、ｆ４は、抽出式リスト生成部２０に入力される。抽出式ｆ１、ｆ２、ｆ３、ｆ４が入力されると、抽出式リスト生成部２０は、例えば、抽出式リストＬ１＝｛ｆ１，ｆ２、ｆ４｝、Ｌ２＝｛ｆ１、ｆ３，ｆ４｝を生成する。抽出式リスト生成部２０で生成された抽出式リストＬ１、Ｌ２は、抽出式選択部２２に入力される。
【００４４】
以上、具体例を挙げて説明したように、抽出式生成部１４により抽出式が生成され、抽出式リスト生成部２０により抽出式リストが生成されて、抽出式選択部２２に入力される。但し、上記の例では、選択抽出式数＝４、リスト内抽出式数＝３、リスト数＝２の場合を示したが、実際には非常に多数の抽出式、及び抽出式リストが生成される点に注意されたい。
【００４５】
さて、抽出式リスト生成部２０から抽出式リストが入力されると、抽出式選択部２２は、入力された抽出式リストの中で、後述する計算式に組み込むべき抽出式を選択する。例えば、上記の抽出式リストＬ１の中で抽出式ｆ１、ｆ４を計算式に組み込む場合、抽出式選択部２２は、抽出式リストＬ１について抽出式ｆ１、ｆ４を選択する。抽出式選択部２２は、各抽出式リストについて上記の選択処理を実行する。そして、選択処理が完了すると、抽出式選択部２２による選択処理の結果、及び各抽出式リストは、計算式設定部２４に入力される。
【００４６】
抽出式選択部２２から選択結果及び各抽出式リストが入力されると、計算式設定部２４は、抽出式選択部２２の選択結果を考慮して各抽出式リストに対応する計算式を設定する。例えば、計算式設定部２４は、下記の式（２）に示すように、各抽出式リストＬｍ＝｛ｆ１，…，ｆＫ｝に含まれる抽出式ｆｋを線形結合して計算式Ｆｍを設定する。但し、ｍ＝１、…、Ｍ（Ｍはリスト数）、ｋ＝１、…、Ｋ（Ｋはリスト内抽出式数）、Ｂ０、…、ＢＫは結合係数である。
【００４７】
【数２】
2010134790.tif 000004
…（２）
【００４８】
なお、計算式Ｆｍを抽出式ｆｋ（ｋ＝１〜Ｋ）の非線形関数に設定することも可能である。但し、計算式設定部２４で設定される計算式Ｆｍの関数形は、後述する計算式生成部２６で用いられる結合係数の推定アルゴリズムに依存する。従って、計算式設定部２４は、計算式生成部２６で利用可能な推定アルゴリズムに応じて計算式Ｆｍの関数形を設定するように構成される。例えば、計算式設定部２４は、入力データの種類に応じて関数形を変えるように構成されていてもよい。但し、本稿においては、説明の都合上、上記の式（２）で表現される線形結合を用いることにする。さて、計算式設定部２４により設定された計算式の情報は、計算式生成部２６に入力される。
【００４９】
また、計算式生成部２６には、計算式で算出したい特徴量の種類が特徴量選択部３２から入力される。なお、特徴量選択部３２は、計算式で算出したい特徴量の種類を選択するための手段である。さらに、計算式生成部２６には、評価データ取得部３４から入力データの種類に対応する評価データが入力される。例えば、入力データの種類が楽曲である場合、複数の楽曲データが評価データとして入力される。また、計算式生成部２６には、教師データ取得部３６から各評価データに対応する教師データが入力される。ここで言う教師データとは、各評価データの特徴量である。特に、特徴量選択部３２が選択した種類の教師データが計算式生成部２６に入力される。例えば、入力データが楽曲データであり、特徴量の種類がテンポである場合、各評価データの正解テンポ値が教師データとして計算式生成部２６に入力される。
【００５０】
評価データ、教師データ、特徴量の種類、計算式等が入力されると、計算式生成部２６は、まず、抽出式計算部２８によって計算式Ｆｍに含まれる抽出式ｆ１、…、ｆＫに各評価データを入力して各抽出式による計算結果（以下、抽出式計算結果）を求める。抽出式計算部２８により各評価データに関する各抽出式の抽出式計算結果が算出されると、抽出式計算部２８から係数算出部３０に各抽出式計算結果が入力される。係数算出部３０は、各評価データに対応する教師データ、及び入力された抽出式計算結果を利用し、上記の式（２）においてＢ０、…、ＢＫで表現された結合係数を算出する。例えば、最小二乗法等を用いて係数Ｂ０、…、ＢＫを決定することができる。このとき、係数算出部３０は、平均二乗誤差等の評価値を共に算出する。
【００５１】
なお、抽出式計算結果、結合係数、及び平均二乗誤差等は特徴量の種類毎にリスト数分だけ算出される。そして、抽出式計算部２８で算出された抽出式計算結果、係数算出部３０で算出された結合係数、及び平均二乗誤差等の評価値は、式評価部３８に入力される。これらの算出結果が入力されると、式評価部３８は、入力された算出結果を用いて各計算式の良否を判定するための評価値を算出する。上記の通り、各計算式を構成する抽出式及び抽出式を構成するオペレータを決定する処理においてランダムな選択処理が含まれている。つまり、これらの決定処理において最適な抽出式及び最適なオペレータが選択されたか否かについて不確定要素が含まれている。そこで、算出結果を評価し、必要に応じて再計算又は計算結果の修正をするために、式評価部３８により評価が行われる。
【００５２】
図１に示す式評価部３８には、各計算式の評価値を算出する計算式評価部４０と、各抽出式の寄与度を算出する抽出式評価部４２とが設けられている。計算式評価部４０は、各計算式を評価するために、例えば、ＡＩＣ又はＢＩＣと呼ばれる評価方法を用いる。ここで言うＡＩＣとは、Ａｋａｉｋｅ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｃｒｉｔｅｒｉｏｎの略である。一方、ＢＩＣとは、Ｂａｙｅｓｉａｎ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｃｒｉｔｅｒｉｏｎの略である。ＡＩＣを用いる場合、各計算式の評価値は、各計算式に対する平均二乗誤差及び教師データの数（以下、教師数）を用いて算出される。例えば、この評価値は、下記の式（３）で表現される値（ＡＩＣ）に基づいて算出される。
【００５３】
【数３】
2010134790.tif 000005
…（３）
【００５４】
上記の式（３）では、ＡＩＣが小さいほど計算式の精度が高いことを意味する。従って、ＡＩＣを用いる場合の評価値は、ＡＩＣが小さいほど大きくなるように設定される。例えば、その評価値は、上記の式（３）で表現されるＡＩＣの逆数で算出される。なお、計算式評価部４０においては、特徴量の種類数分だけ評価値が算出される。そこで、計算式評価部４０は、各計算式について特徴量の種類に関する平均演算を行い、平均評価値を算出する。つまり、この段階で各計算式の平均評価値が算出される。計算式評価部４０で算出された平均評価値は、計算式の評価結果として抽出式リスト生成部２０に入力される。
【００５５】
一方、抽出式評価部４２は、抽出式計算結果、及び結合係数に基づいて各計算式における各抽出式の寄与率を評価値として算出する。例えば、抽出式評価部４２は、下記の式（４）に従って寄与率を算出する。なお、抽出式ｆｋの抽出式計算結果に対する標準偏差は、各評価データについて算出された抽出式計算結果から得られるものである。下記の式（４）に従って抽出式評価部４２により計算式毎に算出された各抽出式の寄与率は、抽出式の評価結果として抽出式リスト生成部２０に入力される。
【００５６】
【数４】
2010134790.tif 000006
…（４）
【００５７】
但し、ＳｔＤｅｖ（…）は標準偏差を表す。また、推定対象の特徴量とは、楽曲のテンポ等である。例えば、１００曲のログスペクトルが評価データとして、各曲のテンポが教師データとして与えられる場合、ＳｔＤｅｖ（推定対象の特徴量）は、１００曲のテンポの標準偏差を表す。また、上記の式（４）に含まれるＰｅａｒｓｏｎ（…）は相関関数を表す。例えば、Ｐｅａｒｓｏｎ（ｆｋの計算結果，推定対象の特徴量）は、ｆｋの計算結果と推定対象の特徴量との間の相関係数を算出するための相関関数を表す。なお、ここでは特徴量として楽曲のテンポを例示したが、推定対象となる特徴量はこれに限定されない。
【００５８】
このようにして式評価部３８から抽出式リスト生成部２０に評価結果が入力されると、新たな計算式の構築に用いる抽出式リストが生成される。まず、抽出式リスト生成部２０は、計算式評価部４０で算出された平均評価値が高い順に所定数の計算式を選択し、選択した計算式に対応する抽出式リストを新たな抽出式リストに設定する（選択）。また、抽出式リスト生成部２０は、計算式評価部４０で算出された平均評価値が高い順に重み付けしながら２つの計算式を選択し、当該計算式に対応する抽出式リストの抽出式を組み合わせて新たな抽出式リストを生成する（交差）。また、抽出式リスト生成部２０は、計算式評価部４０で算出された平均評価値が高い順に重み付けしながら１つの計算式を選択し、その計算式に対応する抽出式リストの抽出式を一部変更して新たな抽出式リストを生成する（突然変異）。また、抽出式リスト生成部２０は、ランダムに抽出式を選択して新たな抽出式リストを生成する。
【００５９】
なお、上記の交差においては、寄与率の低い抽出式ほど選択されにくく設定される方が好ましい。また、上記の突然変異においては、寄与率の低い抽出式ほど変更されやすく設定される方が好ましい。このようにして新たに生成又は設定された抽出式リストを用いて、抽出式選択部２２、計算式設定部２４、計算式生成部２６、及び式評価部３８による処理が再び実行される。これら一連の処理は、式評価部３８による評価結果の向上度合いがある程度収束するまで繰り返し実行される。そして、式評価部３８による評価結果の向上度合いがある程度収束すると、その時点の計算式が算出結果として出力される。ここで出力された計算式を用いることで、上記の評価データとは異なる任意の入力データから、その入力データが持つ所望の特徴を表す特徴量が精度良く算出される。
【００６０】
上記のように、特徴量計算式生成装置１０の処理は、交差や突然変異等の要素を考慮して世代交代を進めながら繰り返し処理を実行する遺伝的アルゴリズムに基づいている。この遺伝的アルゴリズムを用いることで、精度良く特徴量を推定することが可能な算出式が得られる。但し、後述する実施形態においては、例えば、遺伝的アルゴリズムよりも簡略化された方法で計算式を算出する学習アルゴリズムを用いることもできる。例えば、抽出式リスト生成部２０において上記の選択、交差、突然変異等の処理を行う代わりに、抽出式選択部２２において抽出式の使用／未使用の組み合わせを変えつつ、計算式評価部４０の評価値が最も高い組み合わせを選択する方法が考えられる。この場合には、抽出式評価部４２の構成を省略することができる。また、演算負荷及び所望する推定精度に応じて適宜構成を変更することが可能である。
【００６１】
＜２．実施形態＞
以下、本発明の一実施形態について説明する。本実施形態は、楽曲の音声信号から、その楽曲の特徴量を精度良く自動抽出し、その特徴量を用いて楽曲を視覚化する技術に関する。なお、以下の説明の中で、楽曲の音声信号を楽曲データと呼ぶことがある。
【００６２】
［２−１．情報処理装置１００の全体構成］
まず、図２を参照しながら、本実施形態に係る情報処理装置１００の機能構成について説明する。図２は、本実施形態に係る情報処理装置１００の機能構成例を示す説明図である。なお、ここで説明する情報処理装置１００は、楽曲データに含まれる種々の特徴量を精度良く検出し、その特徴量を用いて楽曲データをリアルに視覚化する構成に特徴がある。上記の特徴量には、例えば、楽曲のビート、コード進行、各楽器音の存在確率等が含まれる。以下、情報処理装置１００の全体構成について説明した後、各構成要素の詳細な機能構成について個々に説明する。
【００６３】
図２に示すように、情報処理装置１００は、主に、楽曲データ保存部１０２と、楽曲再生部１０４と、音源分離部１０６と、ログスペクトル解析部１０８と、楽曲解析部１１０と、メタデータ保存部１１２と、視覚化パラメータ決定部１１４と、視覚化部１１６と、を有する。また、楽曲解析部１１０には、ビート検出部１３２、楽曲構造解析部１３４、コード確率検出部１３６、キー検出部１３８、小節線検出部１４０、及びコード進行検出部１４２が含まれる。さらに、楽曲解析部１１０には、メロディー検出部１４４、ベース検出部１４６、及びメタデータ検出部１４８が含まれる。
【００６４】
また、図２に例示した情報処理装置１００には、特徴量計算式生成装置１０が含まれている。但し、特徴量計算式生成装置１０は、情報処理装置１００の内部に設けられていてもよいし、外部装置として情報処理装置１００に接続されていてもよい。以下の説明においては、説明の都合上、情報処理装置１００に特徴量計算式生成装置１０が内蔵されているものとする。また、情報処理装置１００は、特徴量計算式生成装置１０を設ける代わりに、特徴量の計算式を生成することが可能な各種の学習アルゴリズムを用いることも可能である。
【００６５】
全体的な処理の流れは次の通りである。まず、楽曲データ保存部１０２に保存されている楽曲データが楽曲再生部１０４により再生される。さらに、楽曲データ保存部１０２に保存されている楽曲データは、音源分離部１０６に入力される。音源分離部１０６では、楽曲データが左チャネル成分（前景成分）、右チャネル成分（前景成分）、センター成分（前景成分）、背景成分に分離される。そして、成分毎に分離された楽曲データは、ログスペクトル解析部１０８に入力される。ログスペクトル解析部１０８では、楽曲データの各成分が後述するログスペクトルに変換される。ログスペクトル解析部１０８から出力されるログスペクトルは、特徴量計算式生成装置１０等に入力される。なお、ログスペクトルは、特徴量計算式生成装置１０以外の構成要素においても利用されることがある。その場合、適宜、ログスペクトル解析部１０８から直接的又は間接的に各構成要素に対して所要のログスペクトルが提供される。
【００６６】
楽曲解析部１１０は、楽曲データの波形を解析し、その楽曲データに含まれるビート位置、楽曲構造、キー、コード進行、メロディーライン、ベースライン、各楽器音の存在確率等を抽出する。なお、ビート位置は、ビート検出部１３２により検出される。楽曲構造は、楽曲構造解析部１３４により検出される。キーは、キー検出部１３８により検出される。コード進行は、コード進行検出部１４２により検出される。メロディーラインは、メロディー検出部１４４により検出される。ベースラインは、ベース検出部１４６により検出される。各楽器音の存在確率は、メタデータ検出部１４８により抽出される。このとき、楽曲解析部１１０は、特徴量計算式生成装置１０を利用してビート位置、コード進行、楽器音等を検出するために用いる特徴量の計算式を生成し、当該計算式を用いて算出される特徴量からビート位置、コード進行、楽器音等を検出する。楽曲解析部１１０による解析処理については後段において詳述する。
【００６７】
楽曲解析部１１０で検出されたビート位置、楽曲構造、キー、コード進行、メロディーライン、ベースライン、各楽器音の存在確率等のデータ（以下、メタデータ）は、メタデータ保存部１１２に保存される。そして、メタデータ保存部１１２に保存されたメタデータは、視覚化パラメータ決定部１１４により読み出される。視覚化パラメータ決定部１１４は、メタデータ保存部１１２に保存されたメタデータに基づき、各楽器の演奏者を模したオブジェクト（以下、演奏者オブジェクト）の動き等を制御するためのパラメータ（以下、視覚化パラメータ）を決定する。そして、視覚化パラメータ決定部１１４で決定された視覚化パラメータは、視覚化部１１６に入力される。視覚化部１１６は、視覚化パラメータに基づいて演奏者オブジェクト等を制御し、楽曲データを視覚化する。このような構成にすることで、演奏中の楽曲データに合わせて演奏者オブジェクトがあたかも演奏しているかのような視覚化を行うことができる。楽曲データの視覚化に関する大まかな流れは上記の通りである。以下、情報処理装置１００の中心的な構成要素である音源分離部１０６、ログスペクトル解析部１０８、楽曲解析部１１０の構成について、より詳細に説明する。
【００６８】
［２−２．音源分離部１０６の構成］
まず、音源分離部１０６について説明する。音源分離部１０６は、ステレオ信号から、左、右、中央付近に定位する音源信号（以下、左チャネル信号、右チャネル信号、センター信号）、及び背景音の音源信号を分離する手段である。ここでは、音源分離部１０６によるセンター信号の抽出方法を例に挙げ、音源分離部１０６による音源分離方法について、より詳細に説明する。図３に示すように、音源分離部１０６は、例えば、左チャネル帯域分割部１５２、右チャネル帯域分割部１５４、帯域通過フィルタ１５６、左チャネル帯域合成部１５８、及び右チャネル帯域合成部１６０で構成される。但し、図３に例示した帯域通過フィルタ１５６の通過条件（位相差：小、音量差：小）は、センター信号を抽出する場合に用いられるものである。ここでは、一例としてセンター信号を抽出する方法について述べる。
【００６９】
まず、左チャネル帯域分割部１５２には、音源分離部１０６に入力されるステレオ信号のうち、左チャネルの信号ｓＬが入力される。左チャネルの信号ｓＬには、左チャネルの非センター信号Ｌとセンター信号Ｃとが混在している。また、左チャネルの信号ｓＬは、時間の進行に伴って変化する音量レベルの信号である。そこで、左チャネル帯域分割部１５２は、入力された左チャネルの信号ｓＬにＤＦＴ処理を施し、時間領域の信号から周波数領域の信号（以下、マルチバンド信号ｆＬ（０），…，ｆＬ（Ｎ−１））に変換する。但し、ｆＬ（ｋ）は、ｋ番目（ｋ＝０，…，Ｎ−１）の周波数帯に対応するサブバンド信号である。なお、上記のＤＦＴは、Ｄｉｓｃｒｅｔｅ  Ｆｏｕｒｉｅｒ  Ｔｒａｎｓｆｏｒｍの略である。左チャネル帯域分割部１５２から出力された左チャネルのマルチバンド信号は、帯域通過フィルタ１５６に入力される。
【００７０】
同様に、右チャネル帯域分割部１５４には、音源分離部１０６に入力されるステレオ信号のうち、右チャネルの信号ｓＲが入力される。右チャネルの信号ｓＲには、右チャネルの非センター信号Ｒとセンター信号Ｃとが混在している。また、右チャネルの信号ｓＲは、時間の進行に伴って変化する音量レベルの信号である。そこで、右チャネル帯域分割部１５４は、入力された右チャネルの信号ｓＲにＤＦＴ処理を施し、時間領域の信号から周波数領域の信号（以下、マルチバンド信号ｆＲ（０），…，ｆＲ（Ｎ−１））に変換する。但し、ｆＲ（ｋ’）は、ｋ’番目（ｋ’＝０，…，Ｎ−１）の周波数帯に対応するサブバンド信号である。右チャネル帯域分割部１５４から出力された右チャネルのマルチバンド信号は、帯域通過フィルタ１５６に入力される。但し、各チャネルに対するマルチバンド信号の帯域分割数をＮ（例えば、Ｎ＝８１９２）とした。
【００７１】
上記の通り、帯域通過フィルタ１５６には、各チャネルのマルチバンド信号ｆＬ（ｋ）（ｋ＝０，…，Ｎ−１）、ｆＲ（ｋ’）（ｋ’＝０，…，Ｎ−１）が入力される。なお、以下の説明において、周波数が低い順にｋ＝０，…，Ｎ−１、又はｋ’＝０，…，Ｎ−１とラベル付けする。また、各信号成分ｆＬ（ｋ）及びｆＲ（ｋ’）のことをサブチャネル信号と呼ぶことにする。まず、帯域通過フィルタ１５６においては、両チャネルのマルチバンド信号から同じ周波数帯のサブチャネル信号ｆＬ（ｋ）、ｆＲ（ｋ’）（ｋ’＝ｋ）が選択され、両サブチャネル信号の類似度ａ（ｋ）が算出される。類似度ａ（ｋ）は、例えば、下記の式（５）及び式（６）に従って算出される。但し、サブチャネル信号には、振幅成分と位相成分とが含まれる。そのため、振幅成分の類似度をａｐ（ｋ）、位相成分の類似度をａｉ（ｋ）と表現している。
【００７２】
【数５】
2010134790.tif 000007
…（５）
2010134790.tif 000008
…（６）
【００７３】
但し、｜…｜は…の大きさを表す。θはｆＬ（ｋ）とｆＲ（ｋ）との間の位相差（０≦｜θ｜≦π）を表す。上付き＊は複素共役を表す。Ｒｅ［…］は…の実部を表す。上記の式（６）から明らかなように、振幅成分の類似度ａｐ（ｋ）は、サブチャネル信号ｆＬ（ｋ）、ｆＲ（ｋ）の大きさが一致する場合に１となる。逆に、サブチャネル信号ｆＬ（ｋ）、ｆＲ（ｋ）の大きさが一致しない場合、類似度ａｐ（ｋ）は１よりも小さな値となる。一方、位相成分の類似度ａｉ（ｋ）に関しては、位相差θが０のときに類似度ａｉ（ｋ）が１、位相差θがπ／２のときに類似度ａｉ（ｋ）が０、位相差θがπのときに類似度ａｉ（ｋ）が−１となる。つまり、位相成分の類似度ａｉ（ｋ）は、サブチャネル信号ｆＬ（ｋ）、ｆＲ（ｋ）の位相が一致した場合に１となり、サブチャネル信号ｆＬ（ｋ）、ｆＲ（ｋ）の位相が一致しない場合に１より小さな値となる。
【００７４】
上記の方法により各周波数帯ｋ（ｋ＝０，…，Ｎ−１）の類似度ａ（ｋ）が算出されると、帯域通過フィルタ１５６により、所定の閾値よりも小さい類似度ａｐ（ｑ）、ａｉ（ｑ）（０≦ｑ≦Ｎ−１）に対応する周波数帯ｑが抽出される。そして、帯域通過フィルタ１５６により抽出された周波数帯ｑのサブチャネル信号のみが左チャネル帯域合成部１５８又は右チャネル帯域合成部１６０に入力される。例えば、左チャネル帯域合成部１５８には、サブチャネル信号ｆＬ（ｑ）（ｑ＝ｑ０，…，ｑｎ−１）が入力される。そこで、左チャネル帯域合成部１５８は、帯域通過フィルタ１５６から入力されたサブチャネル信号ｆＬ（ｑ）（ｑ＝ｑ０，…，ｑｎ−１）に対してＩＤＦＴ処理を施し、周波数領域から時間領域へと変換する。但し、上記のＩＤＦＴは、Ｉｎｖｅｒｓｅ  ｄｉｓｃｒｅｔｅ  Ｆｏｕｒｉｅｒ  Ｔｒａｎｓｆｏｒｍの略である。
【００７５】
同様に、右チャネル帯域合成部１６０には、サブチャネル信号ｆＲ（ｑ）（ｑ＝ｑ０，…，ｑｎ−１）が入力される。そこで、右チャネル帯域合成部１６０は、帯域通過フィルタ１５６から入力されたサブチャネル信号ｆＲ（ｑ）（ｑ＝ｑ０，…，ｑｎ−１）に対してＩＤＦＴ処理を施し、周波数領域から時間領域へと変換する。左チャネル帯域合成部１５８からは、左チャネルの信号ｓＬに含まれていたセンター信号成分ｓＬ’が出力される。一方、右チャネル帯域合成部１６０からは、右チャネルの信号ｓＲに含まれていたセンター信号成分ｓＲ’が出力される。以上説明した方法により、音源分離部１０６は、ステレオ信号からセンター信号を抽出することができる。
【００７６】
また、左チャネル信号、右チャネル信号、及び背景音の信号については、図４のように帯域通過フィルタ１５６の通過条件を変更することで、センター信号と同様に分離することができる。図４に示すように、左チャネル信号を抽出する場合、帯域通過フィルタ１５６の通過帯域としては、左右の位相差が小さく、左の音量が右の音量よりも大きい帯域が設定される。なお、ここで言う音量は、上記の振幅成分に相当する。同様に、右チャネル信号を抽出する場合、帯域通過フィルタ１５６の通過帯域としては、左右の位相差が小さく、右の音量が左の音量よりも大きい帯域が設定される。
【００７７】
上記の左チャネル信号、右チャネル信号、センター信号は、前景音の信号である。そのため、いずれの信号も左右の位相差が小さい帯域の信号である。一方、背景音の信号は、左右の位相差が大きい帯域の信号である。そのため、背景音の信号を抽出する場合、帯域通過フィルタ１５６の通過帯域は、左右の位相差が大きい帯域に設定される。このようにして音源分離部１０６で分離された左チャネル信号、右チャネル信号、センター信号、背景音の信号は、ログスペクトル解析部１０８に入力される。
【００７８】
［２−３．ログスペクトル解析部１０８の構成］
次に、ログスペクトル解析部１０８について説明する。ログスペクトル解析部１０８は、入力された音声信号を各音程の強度分布に変換する手段である。音声信号には、オクターブ毎に１２の音程（Ｃ、Ｃ＃、Ｄ、Ｄ＃、Ｅ、Ｆ、Ｆ＃、Ｇ、Ｇ＃、Ａ、Ａ＃、Ｂ）が含まれる。また、各音程の中心周波数は対数で分布する。例えば、音程Ａ３の中心周波数ｆＡ３を基準にすると、Ａ＃３の中心周波数はｆＡ＃３＝ｆＡ３＊２１／１２と表現される。同様に、音程Ｂ３の中心周波数ｆＢ３は、ｆＢ３＝ｆＡ＃３＊２１／１２と表現される。このように、隣り合う音程間で中心周波数の比は、１：２１／１２である。しかし、音声信号を扱う上で、音声信号を時間−周波数空間における信号強度分布として捉えると、周波数軸が対数軸となってしまい、音声信号に対する処理が複雑化してしまう。そこで、ログスペクトル解析部１０８は、音声信号を解析し、時間−周波数空間の信号から時間−音程空間の信号（以下、ログスペクトル）に変換する。
【００７９】
ここで、ログスペクトル解析部１０８の構成について、図５を参照しながら、より詳細に説明する。図５に示すように、ログスペクトル解析部１０８は、再標本化部１６２、オクターブ分割部１６４、及び複数のバンドパスフィルタバンク１６６（ＢＰＦＢ）で構成することができる。
【００８０】
まず、再標本化部１６２に音声信号が入力される。すると、再標本化部１６２は、入力される音声信号のサンプリング周波数（例えば、４４．１ｋＨｚ）を所定のサンプリング周波数に変換する。所定のサンプリング周波数としては、例えば、オクターブの境界に対応する周波数（以下、境界周波数）を基準とし、境界周波数を２のべき乗倍した周波数が用いられる。例えば、音声信号のサンプリング周波数は、オクターブ４とオクターブ５との間の境界周波数１０１６．７Ｈｚを基準とし、基準の２５倍のサンプリング周波数（３２５３４．７Ｈｚ）に変換される。このようにサンプリング周波数を変換することで、再標本化部１６２の後段で実施される帯域分割処理及びダウンサンプリング処理の結果として得られる最高及び最低周波数が、あるオクターブの最高及び最低周波数に一致する。その結果、音声信号から各音程の信号を抽出する処理を簡単化することができる。
【００８１】
さて、再標本化部１６２によりサンプリング周波数が変換された音声信号は、オクターブ分割部１６４に入力される。すると、オクターブ分割部１６４は、帯域分割処理とダウンサンプリング処理とを繰り返し実行することで、入力された音声信号をオクターブ毎に分割する。オクターブ分割部１６４で分割された各オクターブの信号は、オクターブ毎（Ｏ１、…、Ｏ８）に設けられたバンドパスフィルタバンク１６６（ＢＰＦＢ（Ｏ１）、…、ＢＰＦＢ（Ｏ８））に入力される。各バンドパスフィルタバンク１６６は、入力された各オクターブの音声信号から各音程の信号を抽出するために、１２の音程に対応する通過帯域を持つ１２の帯域通過フィルタで構成されている。例えば、オクターブ８のバンドパスフィルタバンク１６６（ＢＰＦＢ（Ｏ８））を通過することで、オクターブ８の音声信号から１２音程（Ｃ８、Ｃ＃８、Ｄ８、Ｄ＃８、Ｅ８、Ｆ８、Ｆ＃８、Ｇ８、Ｇ＃８、Ａ８、Ａ＃８、Ｂ８）の信号が抽出される。
【００８２】
各バンドパスフィルタバンク１６６から出力される信号により、各オクターブにおける１２音程の信号強度（以下、エネルギー）を表すログスペクトルが得られる。図６は、ログスペクトル解析部１０８から出力されるログスペクトルの一例を示す説明図である。
【００８３】
図６の縦軸（音程）を参照すると、入力された音声信号は７つのオクターブに分割され、さらに各オクターブは、“Ｃ”、“Ｃ＃”、“Ｄ”、“Ｄ＃”、“Ｅ”、“Ｆ”、“Ｆ＃”、“Ｇ”、“Ｇ＃”、“Ａ”、“Ａ＃”、“Ｂ”の１２の音程に分割されている。一方、図６の横軸（時間）は、音声信号が時間軸に沿ってサンプリングされた際のフレーム番号を表している。例えば、再標本化部１６２において音声信号がサンプリング周波数１２７．０８８８［Ｈｚ］で再サンプリングされた場合、１フレームは、１［ｓｅｃ］／１２７．０８８８＝７．８６８６［ｍｓｅｃ］に相当する時間間隔となる。また、図６に示したログスペクトルの色の濃淡は、各フレームにおける各音程のエネルギーの大きさを表す。例えば、位置Ｓ１が濃い色を示しており、位置Ｓ１に対応する時間に、位置Ｓ１に対応する音程（音程Ｆ）の音が強く発せられていることが分かる。なお、図６は、ある音声信号を入力信号としたときに得られるログスペクトルの一例である。従って、入力信号が異なれば、異なるログスペクトルが得られる。このようにして得られたログスペクトルは、特徴量計算式生成装置１０等に入力され、楽曲解析部１１０で実施される楽曲解析処理に用いられる。
【００８４】
［２−４．楽曲解析部１１０の構成］
次に、楽曲解析部１１０の構成について説明する。楽曲解析部１１０は、学習アルゴリズムを用いて楽曲データを解析し、楽曲データに含まれる特徴量を抽出する手段である。特に、楽曲解析部１１０は、楽曲データに含まれるビート位置、楽曲構造、キー、コード進行、メロディーライン、ベースライン、各楽器音の存在確率等を抽出する。そのため、楽曲解析部１１０は、図２に示すように、ビート検出部１３２、楽曲構造解析部１３４、コード確率検出部１３６、キー検出部１３８、小節線検出部１４０、コード進行検出部１４２、メロディー検出部１４４、ベース検出部１４６、及びメタデータ検出部１４８を有する。
【００８５】
楽曲解析部１１０による主な処理の流れは、図７に示す通りである。但し、図７のフローチャートには、情報処理装置１００の他の構成要素が実行する処理も含まれている点に注意されたい。図７に示すように、情報処理装置１００は、楽曲データ保存部１０２に保存された楽曲データを順次読み出しつつ、楽曲ループ（Ｓ１０２〜Ｓ１２０）内の処理を実行する。まず、楽曲ループが開始されると（Ｓ１０２）、楽曲データ保存部１０２に保存された楽曲データのログスペクトルが楽曲解析部１１０により取得される（Ｓ１０４）。次いで、楽曲解析部１１０は、ビート検出部１３２によりビートの解析処理を実行し、楽曲データからビートを検出する（Ｓ１０６）。次いで、楽曲解析部１１０は、コード進行検出部１４２によりコード進行の解析処理を実行し、楽曲データのコード進行を検出する（Ｓ１０８）。
【００８６】
次いで、楽曲解析部１１０は、楽曲構造解析部１３４により楽曲構造を解析し、楽曲データから楽曲構造を検出する（Ｓ１１０）。次いで、楽曲解析部１１０は、メロディー検出部１４４、及びベース検出部１４６により楽曲データからメロディーライン、及びベースラインを検出する（Ｓ１１２）。次いで、楽曲解析部１１０は、メタデータ検出部１４８により時系列メタデータを検出する（Ｓ１１４）。ここで言う時系列メタデータとは、楽曲の演奏時間が進行するに伴って変化する楽曲データの特徴量のことである。次いで、楽曲解析部１１０は、メタデータ検出部１４８により、１曲単位で検出されるメタデータ（以下、１曲毎メタデータ）を検出する。なお、１曲毎メタデータは、楽曲データの全フレームを解析範囲とする解析処理で得られるメタデータである。
【００８７】
次いで、楽曲解析部１１０は、ステップＳ１０６〜Ｓ１１６で得られた解析結果及びメタデータをメタデータ保存部１１２に保存する（Ｓ１１８）。ステップＳ１０４〜Ｓ１１８の処理が終了すると（Ｓ１２０）、他の楽曲データについて楽曲ループが実行され、処理対象の全楽曲データについて楽曲ループ内の処理が終了すると一連の処理が完了する。なお、楽曲ループ内の処理は、音源分離部１０６で分離された音源の各組み合わせに対して実行される。組み合わせる音源としては、４音源（左チャネル音、右チャネル音、センター音、背景音）の全てが用いられる。組み合わせ方法としては、例えば、（１）４音源全て、（２）前景音のみ（左チャネル音、右チャネル音、センター音）、（３）左チャネル音＋右チャネル音＋背景音、（４）センター音＋背景音がある。さらに、他の組み合わせ方法としては、（４）左チャネル音＋右チャネル音、（５）背景音のみ、（６）左チャネル音のみ、（７）右チャネル音のみ、（８）センター音のみ等も考えられる。
【００８８】
以上、楽曲解析部１１０による主な処理の流れについて説明した。次に、楽曲解析部１１０に含まれる各構成要素の機能について、より詳細に説明する。
【００８９】
（２−４−１．ビート検出部１３２の構成）
まず、ビート検出部１３２の構成について説明する。ビート検出部１３２は、図８に示すように、ビート確率算出部２０２、及びビート解析部２０４により構成される。ビート確率算出部２０２は、楽曲データのログスペクトルに基づき、各フレームがビート位置である確率を算出する手段である。また、ビート解析部２０４は、ビート確率算出部２０２で算出された各フレームのビート確率に基づいてビート位置を検出する手段である。以下、これらの構成要素が持つ機能について、より詳細に説明する。
【００９０】
まず、ビート確率算出部２０２について説明する。ビート確率算出部２０２は、ログスペクトル解析部１０８から入力されたログスペクトルの所定の時間単位（例えば、１フレーム）毎に、その時間単位にビートが含まれる確率（以下、ビート確率）を算出する。なお、所定の時間単位を１フレームとした場合、ビート確率は、各フレームがビート位置（ビートの時間軸上の位置）に一致している確率とみなすことができる。ビート確率算出部２０２で用いるビート確率を算出するための計算式は、例えば、特徴量計算式生成装置１０による学習アルゴリズムを用いて生成される。また、特徴量計算式生成装置１０に与えられる学習用の教師データ及び評価データとしては、図９に示すようなものが用いられる。但し、図９では、ビート確率を算出する時間単位を１フレームとしている。
【００９１】
図９に示すように、特徴量計算式生成装置１０には、ビート位置が既知である楽曲の音声信号から変換されたログスペクトルの断片（以下、部分ログスペクトル）、及び各部分ログスペクトルに関するビート確率が供給される。つまり、部分ログスペクトルが評価データとして、ビート確率が教師データとして特徴量計算式生成装置１０に供給される。但し、部分ログスペクトルのウィンドウ幅は、ビート確率の算出の精度と処理コストのトレードオフを考慮して定められる。例えば、部分ログスペクトルのウィンドウ幅は、ビート確率を計算するフレームの前後７フレーム（計１５フレーム）程度に設定される。
【００９２】
また、教師データとして供給されるビート確率は、例えば、各部分ログスペクトルの中央のフレームにビートが含まれるか否かを既知のビート位置に基づいて真値（１）又は偽値（０）で表したものである。但し、ここでは小節の位置は考慮されず、中央のフレームがビート位置に該当すればビート確率は１、該当しなければビート確率は０となる。図９の例では、部分ログスペクトルＷａ、Ｗｂ、Ｗｃ…Ｗｎに対応するビート確率は、それぞれ１、０、１、…、０として与えられている。このような複数組の評価データ及び教師データに基づき、特徴量計算式生成装置１０により、部分ログスペクトルからビート確率を算出するためのビート確率算出式Ｐ（Ｗ）が生成される。このようにしてビート確率算出式Ｐ（Ｗ）を生成すると、ビート確率算出部２０２は、解析対象の楽曲（以下、実施曲）のログスペクトルから、１フレーム毎に部分ログスペクトルを切り出し、各部分ログスペクトルに当該ビート確率算出式を適用してビート確率を順次算出する。
【００９３】
図１０は、ビート確率算出部２０２により算出されたビート確率の一例を示す説明図である。図１０の（Ａ）は、ログスペクトル解析部１０８からビート確率算出部２０２へと入力されるログスペクトルの一例である。一方、図１０の（Ｂ）は、ログスペクトル（Ａ）に基づいてビート確率算出部２０２で算出されるビート確率を時間軸に沿って折れ線状に示したものである。例えば、フレーム位置Ｆ１を参照すると、フレーム位置Ｆ１には、部分ログスペクトルＷ１が対応することが分かる。つまり、フレームＦ１のビート確率Ｐ（Ｗ１）＝０．９５は、部分ログスペクトルＷ１から算出されたものである。同様に、フレーム位置Ｆ２のビート確率Ｐ（Ｗ２）は、ログスペクトルから切り出された部分ログスペクトルＷ２に基づいてビート確率Ｐ（Ｗ２）＝０．１と計算されたものである。フレーム位置Ｆ１のビート確率Ｐ（Ｗ１）は大きく、フレーム位置Ｆ２のビート確率Ｐ（Ｗ２）は小さいことから、フレーム位置Ｆ１はビート位置に該当している可能性が高く、フレーム位置Ｆ２はビート位置に該当している可能性が低いと言える。
【００９４】
なお、ビート確率算出部２０２により使用されるビート確率算出式は、他の学習アルゴリズムにより生成されてもよい。但し、ログスペクトルには、例えば、打楽器によるスペクトル、発音によるスペクトルの発生、コード変化によるスペクトルの変化など、多様なパラメータが含まれる。打楽器によるスペクトルであれば、打楽器が鳴らされた時点がビート位置である確率が高い。一方、発声によるスペクトルであれば、発声が開始され時点がビート位置である確率が高い。そうした多様なパラメータを総合的に用いてビート確率を高い精度で算出するためには、特徴量計算式生成装置１０又は特開２００８−１２３０１１に記載された学習アルゴリズムを用いるのが好適である。上記のようにしてビート確率算出部２０２で算出されたビート確率は、ビート解析部２０４に入力される。
【００９５】
ビート解析部２０４は、ビート確率算出部２０２から入力された各フレームのビート確率に基づいてビート位置を決定する。図８に示すように、ビート解析部２０４は、オンセット検出部２１２、ビートスコア計算部２１４、ビート探索部２１６、一定テンポ判定部２１８、一定テンポ用ビート再探索部２２０、ビート決定部２２２、及びテンポ補正部２２４を含む。なお、オンセット検出部２１２、ビートスコア計算部２１４、及びテンポ補正部２２４には、ビート確率算出部２０２から各フレームのビート確率が入力される。
【００９６】
まず、オンセット検出部２１２は、ビート確率算出部２０２から入力されたビート確率に基づいて音声信号に含まれるオンセットを検出する。但し、ここで言うオンセットとは、音声信号の中で音が発せられた時点を指す。より具体的には、ビート確率が所定の閾値以上であって極大値をとる点のことをオンセットと呼ぶ。例えば、図１１には、ある音声信号について算出されたビート確率に基づいて検出されるオンセットの例が示されている。但し、図１１は、図１０の（Ｂ）と同様に、ビート確率算出部２０２により算出されたビート確率を時間軸に沿って折れ線状に示したものである。図１１に例示したビート確率のグラフにおいて、極大値をとる点はフレームＦ３、Ｆ４、Ｆ５の３点である。このうち、フレームＦ３及びＦ５については、その時点におけるビート確率が、予め与えられる所定の閾値Ｔｈ１よりも大きい。一方、フレームＦ４の時点におけるビート確率は、所定の閾値Ｔｈ１よりも小さい。従って、フレームＦ３及びＦ５の２点がオンセットとして検出される。
【００９７】
ここで、図１２を参照しながら、オンセット検出部２１２によるオンセット検出処理の流れについて簡単に説明する。図１２に示すように、まず、オンセット検出部２１２は、フレームごとに算出されたビート確率について１番目のフレームから順次ループさせる（Ｓ１３２２）。そして、オンセット検出部２１２は、各フレームについて、ビート確率が所定の閾値よりも大きいか否か（Ｓ１３２４）、及びビート確率が極大を示しているか否か（Ｓ１３２６）を判定する。ここでビート確率が所定の閾値よりも大きく、かつ、ビート確率が極大である場合、オンセット検出部２１２は、ステップＳ１３２８の処理へ進行する。一方、ビート確率が所定の閾値よりも小さいか、又はビート確率が極大でない場合、ステップＳ１３２８の処理はスキップされる。そして、ステップＳ１３２８では、オンセット位置のリストに現在時刻（又は、フレーム番号）が追加される（Ｓ１３２８）。その後、全てのフレームについての処理が終了した時点で、オンセット検出処理のループは終了する（Ｓ１３３０）。
【００９８】
以上説明したオンセット検出部２１２によるオンセット検出処理により、音声信号に含まれるオンセット位置のリスト（各オンセットに対応する時刻又はフレーム番号のリスト）が生成される。また、上記のオンセット検出処理により、例えば、図１３に示すようなオンセットの位置が検出される。図１３は、オンセット検出部２１２により検出されたオンセットの位置をビート確率に対応付けて示したものである。図１３では、ビート確率の折れ線の上部に、オンセット検出部２１２で検出されたオンセットの位置が丸印で示されている。図１３の例では、閾値Ｔｈ１よりも大きいビート確率の極大値が１５個のオンセットとして検出されている。このようにしてオンセット検出部２１２で検出されたオンセット位置のリストは、ビートスコア計算部２１４に入力される。
【００９９】
ビートスコア計算部２１４は、オンセット検出部２１２により検出された各オンセットについて、それぞれ一定のテンポ（又は一定のビート間隔）を有する何らかのビートに一致している度合いを表すビートスコアを計算する。
【０１００】
まず、ビートスコア計算部２１４は、図１４に示すような注目オンセットを設定する。図１４の例では、オンセット検出部２１２により検出されたオンセットのうち、フレーム位置Ｆｋ（フレーム番号ｋ）に対応するオンセットが注目オンセットとして設定されている。また、フレーム位置Ｆｋから所定の間隔ｄの整数倍だけ離れた一連のフレーム位置Ｆｋ−３、Ｆｋ−２、Ｆｋ−１、Ｆｋ、Ｆｋ＋１、Ｆｋ＋２、Ｆｋ＋３が参照される。以下の説明においては、所定の間隔ｄをシフト量、シフト量ｄの整数倍離れたフレーム位置をシフト位置と呼ぶことにする。ビートスコア計算部２１４は、ビート確率が計算されたフレームの集合Ｆに含まれる全てのシフト位置（…、Ｆｋ−３、Ｆｋ−２、Ｆｋ−１、Ｆｋ、Ｆｋ＋１、Ｆｋ＋２、Ｆｋ＋３、…）におけるビート確率の和を注目オンセットのビートスコアとする。例えば、フレーム位置Ｆｉにおけるビート確率をＰ（Ｆｉ）とすると、注目オンセットのフレーム番号ｋ及びシフト量ｄに対するビートスコアＢＳ（ｋ，ｄ）は、下記の式（７）で表現される。なお、下記の式（７）で表現されるビートスコアＢＳ（ｋ，ｄ）は、音声信号のｋ番目のフレームに位置するオンセットがシフト量ｄをビート間隔とする一定のテンポに乗っている可能性の高さを表すスコアであると言える。
【０１０１】
【数６】
2010134790.tif 000009
…（７）
【０１０２】
ここで、図１５を参照しながら、ビートスコア計算部２１４によるビートスコア計算処理の流れについて簡単に説明する。
【０１０３】
図１５に示すように、まず、ビートスコア計算部２１４は、オンセット検出部２１２により検出されたオンセットについて、１番目のオンセットから順にループさせる（Ｓ１３２２）。さらに、ビートスコア計算部２１４は、注目オンセットに関し、全てのシフト量ｄについてループさせる（Ｓ１３４４）。ここでループの対象となるシフト量ｄは、演奏に使用され得る範囲の全てのビートの間隔の値である。そして、ビートスコア計算部２１４は、ビートスコアＢＳ（ｋ，ｄ）を初期化する（例えば、ビートスコアＢＳ（ｋ，ｄ）にゼロを代入する）（Ｓ１３４６）。次に、ビートスコア計算部２１４は、注目オンセットのフレーム位置Ｆｄをシフトさせるシフト係数ｎについてループさせる（Ｓ１３４８）。そして、ビートスコア計算部２１４は、各シフト位置におけるビート確率Ｐ（Ｆｋ＋ｎｄ）をビートスコアＢＳ（ｋ，ｄ）に順次加算する（Ｓ１３５０）。その後、全てのシフト係数ｎについてループが終了すると（Ｓ１３５２）、ビートスコア計算部２１４は、注目オンセットのフレーム位置（フレーム番号ｋ）、シフト量ｄ、及びビートスコアＢＳ（ｋ，ｄ）を記録する（Ｓ１３５４）。ビートスコア計算部２１４は、このようなビートスコアＢＳ（ｋ，ｄ）の計算を、全てのオンセットの全てのシフト量について繰り返す（Ｓ１３５６、Ｓ１３５８）。
【０１０４】
以上説明したビートスコア計算部２１４によるビートスコア計算処理により、オンセット検出部２１２で検出された全てのオンセットについて、複数のシフト量ｄにわたるビートスコアＢＳ（ｋ，ｄ）が算出される。なお、上記のビートスコア計算処理により、図１６に示すようなビートスコア分布図が得られる。このビートスコア分布図は、ビートスコア計算部２１４により出力されるビートスコアを可視化したものである。図１６では、横軸にオンセット検出部２１２で検出されたオンセットが時系列で順に並べられている。図１６の縦軸は、各オンセットについてビートスコアを算出したシフト量を表す。また、各点の色の濃淡は、各オンセットについてシフト量毎に算出されたビートスコアの大きさを表す。図１６の例では、シフト量ｄ１の近辺において、全てのオンセットにわたってビートスコアが高くなっている。仮にシフト量ｄ１に相当するテンポで楽曲が演奏されたと仮定すれば、検出されたオンセットの多くがビートに一致する可能性が高い。そのため、このようなビートスコア分布図になるのである。ビートスコア計算部２１４で計算されたビートスコアは、ビート探索部２１６に入力される。
【０１０５】
ビート探索部２１６は、ビートスコア計算部２１４で算出されたビートスコアに基づいて、尤もらしいテンポ変動を示すオンセット位置の経路を探索する。ビート探索部２１６による経路探索の手法としては、例えば、隠れマルコフモデルに基づくビタビ探索アルゴリズムが用いられる。また、ビート探索部２１６によるビタビ探索には、例えば、図１７に模式的に示したように、時間軸（横軸）の単位にオンセット番号を設定し、観測系列（縦軸）にビートスコア算出時に用いたシフト量を設定する。そして、ビート探索部２１６は、時間軸及び観測系列の各値で定義される各ノードを結ぶビタビ経路を探索する。言い換えると、ビート探索部２１６は、ビートスコア計算部２１４においてビートスコアを計算する際に用いたオンセットとシフト量の全ての組合せの１つ１つを経路探索の対象ノードとする。なお、各ノードのシフト量は、各ノードについて想定されるビート間隔に等しい。そこで、以下の説明では、各ノードのシフト量をビート間隔と呼ぶことがある。
【０１０６】
このようなノードに対し、ビート探索部２１６は、時間軸に沿っていずれかのノードを順に選択していき、選択された一連のノードで形成されるビタビ経路を評価する。このとき、ビート探索部２１６は、ノードの選択においてオンセットのスキップが許可される。例えば、図１７の例では、ｋ−１番目のオンセットの次に、ｋ番目のオンセットがスキップされ、ｋ＋１番目のオンセットが選択されている。これは、オンセットの中にビートであるオンセットとビートでないオンセットが通常混在しており、ビートでないオンセットを経由しない経路も含めて、尤もらしい経路を探索しようとするためである。
【０１０７】
経路の評価には、例えば、（１）ビートスコア、（２）テンポ変化スコア、（３）オンセット移動スコア、及び（４）スキップペナルティの４つの評価値を用いることができる。このうち、（１）ビートスコアは、各ノードについてビートスコア計算部２１４により計算されたビートスコアである。一方、（２）テンポ変化スコア、（３）オンセット移動スコア、及び（４）スキップペナルティは、ノード間の遷移に対して与えられる。ノード間の遷移に対して与えられる評価値のうち、（２）テンポ変化スコアは、楽曲の中でテンポが通常緩やかに変動するものであるという経験的な知識に基づいて与えられる評価値である。そのため、遷移前のノードのビート間隔と遷移後のノードのビート間隔との差が小さい程、テンポ変化スコアには高い評価値が与えられる。
【０１０８】
ここで、図１８を参照しながら、（２）テンポ変化スコアについて、より詳細に説明する。図１８の例では、現在のノードとしてノードＮ１が選択されている。このとき、ビート探索部２１６は、次のノードとしてノードＮ２〜Ｎ５のいずれかを選択する可能性がある。なお、Ｎ２〜Ｎ５以外のノードを選択する可能性もあるが、説明の都合上、ここではノードＮ２〜Ｎ５の４つのノードについて述べる。ここでビート探索部２１６がノードＮ４を選択した場合、ノードＮ１とノードＮ４の間にはビート間隔の差が無いため、テンポ変化スコアとしては最も高い値が与えられる。一方、ビート探索部２１６がノードＮ３又はＮ５を選択した場合、ノードＮ１と、ノードＮ３又はＮ５との間にはビート間隔に差があり、ノードＮ４を選択した場合に比べて低いテンポ変化スコアが与えられる。また、ビート探索部２１６がノードＮ２を選択した場合、ノードＮ１とノードＮ２との間のビート間隔の差はノードＮ３又はＮ５を選択した場合よりも大きい。そのため、さらに低いテンポ変化スコアが与えられる。
【０１０９】
次に、図１９を参照しながら、（３）オンセット移動スコアについて、より詳細に説明する。このオンセット移動スコアは、遷移の前後のノードのオンセット位置の間隔が遷移元のノードのビート間隔と整合しているか否かに応じて与えられる評価値である。図１９の（Ａ）では、現在のノードとして、ｋ番目のオンセットのビート間隔ｄ２のノードＮ６が選択されている。また、ビート探索部２１６が次に選択し得るノードとして、２つのノードＮ７及びＮ８が示されている。このうち、ノードＮ７はｋ＋１番目のオンセットのノードであり、ｋ番目のオンセットとｋ＋１番目のオンセットの間隔（例えば、フレーム番号の差）はＤ７である。一方、ノードＮ８はｋ＋２番目のオンセットのノードであり、ｋ番目のオンセットとｋ＋２番目のオンセットの間隔はＤ８である。
【０１１０】
ここで、経路上の全てのノードが一定のテンポにおけるビート位置に必ず一致している理想的な経路を仮定すると、隣り合うノード間のオンセット位置の間隔は、各ノードのビート間隔の整数倍（休符が無ければ等倍）となるはずである。そこで、図１９の（Ｂ）に示すように、現在のノードＮ６との間でオンセット位置の間隔がノードＮ６のビート間隔ｄ２の整数倍に近いほど高いオンセット移動スコアを与える。図１９の（Ｂ）の例では、ノードＮ６とノードＮ７との間の間隔Ｄ７よりも、ノードＮ６とノードＮ８との間の間隔Ｄ８の方がノードＮ６のビート間隔ｄ２の整数倍に近いため、ノードＮ６からノードＮ８への遷移に対し、より高いオンセット移動スコアが与えられる。
【０１１１】
次に、図２０を参照しながら、（４）スキップペナルティについて、より詳細に説明する。このスキップペナルティは、ノードの遷移におけるオンセットの過剰なスキップを抑制するための評価値である。従って、１度の遷移でオンセットを多くスキップするほど低いスコアが、スキップしないほど高いスコアが与えられる。なお、ここではスコアが低いほどペナルティが大きいものとする。図２０の例では、現在のノードとして、ｋ番目のオンセットのノードＮ９が選択されている。また、図２０の例には、ビート探索部２１６が次に選択し得るノードとして、３つのノードＮ１０、Ｎ１１及びＮ１２が示されている。ノードＮ１０はｋ＋１番目、ノードＮ１１はｋ＋２番目、ノードＮ１２はｋ＋３番目のオンセットのノードである。
【０１１２】
従って、ノードＮ９からノードＮ１０へ遷移する場合、オンセットのスキップは発生しない。一方、ノードＮ９からノードＮ１１へ遷移する場合、ｋ＋１番目のオンセットがスキップされる。また、ノードＮ９からノードＮ１２へ遷移する場合、ｋ＋１番目及びｋ＋２番目のオンセットがスキップされる。そこで、スキップペナルティの値は、ノードＮ９からノードＮ１０へ遷移する場合に相対的に高い値が、ノードＮ９からノードＮ１１へ遷移する場合に中程度の値が、ノードＮ９からノードＮ１２へ遷移する場合により低い値が与えられる。その結果、経路選択に際して、ノード間の間隔を一定とするために過剰に多くのオンセットがスキップされてしまう現象を防ぐことができる。
【０１１３】
以上、ビート探索部２１６における探索経路の評価に用いられる４つの評価値について説明した。図１７を用いて説明した経路の評価は、選択された経路について、その経路に含まれる各ノード又はノード間の遷移に対して与えられる上記（１）〜（４）の評価値を順次乗算することにより行われる。そして、ビート探索部２１６は、想定し得る全ての経路の中で、各経路内での評価値の積が最も高い経路を最適な経路として決定する。このようにして決定された経路は、例えば、図２１のようになる。図２１は、ビート探索部２１６により最適な経路として決定されたビタビ経路の一例を示すものである。図２１の例では、図１６に示したビートスコア分布図の上に、ビート探索部２１６により決定された最適経路が点線枠で示されている。図２１の例においてビート探索部２１６により探索された楽曲のテンポは、ビート間隔ｄ３を中心に変動していることが分かる。なお、ビート探索部２１６により決定された最適経路（最適経路に含まれるノードのリスト）は、一定テンポ判定部２１８、一定テンポ用ビート再探索部２２０、及びビート決定部２２２に入力される。
【０１１４】
一定テンポ判定部２１８は、ビート探索部２１６により決定された最適経路が、各ノードについて想定されるビート間隔の分散の小さい一定テンポを示しているか否かを判定する。まず、一定テンポ判定部２１８は、ビート探索部２１６から入力された最適経路に含まれるノードのビート間隔の集合について分散を計算する。そして、一定テンポ判定部２１８は、算出した分散が予め与えられる所定の閾値よりも小さい場合にテンポが一定であると判定し、所定の閾値よりも大きい場合にテンポが一定でないと判定する。例えば、図２２に示すように、一定テンポ判定部２１８によりテンポが判定される。
【０１１５】
例えば、図２２の（Ａ）に示した例においては、点線枠で囲まれたオンセット位置の最適経路のビート間隔は時間に応じて変動している。このような経路については、一定テンポ判定部２１８による閾値判定の結果、テンポが一定でないと判定される。一方、図２２の（Ｂ）に示した例においては、点線枠で囲まれたオンセット位置の最適経路のビート間隔は楽曲全体にわたってほぼ一定である。このような経路については、一定テンポ判定部２１８による閾値判定の結果、テンポが一定であると判定される。このようにして得られた一定テンポ判定部２１８による閾値判定の結果は、一定テンポ用ビート再探索部２２０に入力される。
【０１１６】
一定テンポ用ビート再探索部２２０は、ビート探索部２１６で抽出された最適経路が一定テンポ判定部２１８で一定のテンポを示していると判定された場合に、最も頻度の高いビート間隔の周辺のみに探索の対象ノードを限定して経路探索を再実行する。例えば、一定テンポ用ビート再探索部２２０は、図２３に例示するような方法で経路の再探索処理を実行する。なお、一定テンポ用ビート再探索部２２０は、図１７と同様にビート間隔を観測系列とする時間軸（オンセット番号）に沿ったノードの集合について経路の再探索処理を実行する。
【０１１７】
例えば、ビート探索部２１６で最適経路として決定された経路に含まれるノードのビート間隔の最頻値がｄ４であり、その経路に対応するテンポが一定テンポ判定部２１８で一定であると判定されたものと仮定する。この場合、一定テンポ用ビート再探索部２２０は、ビート間隔ｄがｄ４−Ｔｈ２≦ｄ≦ｄ４＋Ｔｈ２（Ｔｈ２は所定の閾値）を満たすノードのみを探索の対象として経路を再度探索する。図２３の例では、ｋ番目のオンセットについてノードＮ１２〜Ｎ１６の５つのノードが示されている。このうち、一定テンポ用ビート再探索部２２０においては、ノードＮ１３〜Ｎ１５のビート間隔は探索範囲（ｄ４−Ｔｈ２≦ｄ≦ｄ４＋Ｔｈ２）に含まれる。これに対し、ノードＮ１２及びＮ１６のビート間隔は上記探索範囲に含まれない。そのため、ｋ番目のオンセットについては、ノードＮ１３〜Ｎ１５のみが一定テンポ用ビート再探索部２２０による経路探索処理の対象となる。
【０１１８】
なお、一定テンポ用ビート再探索部２２０による経路の再探索処理の内容は、探索の対象とするノードの範囲を除き、ビート探索部２１６による経路探索処理と同様である。このような一定テンポ用ビート再探索部２２０による経路の再探索処理により、テンポが一定の楽曲について、経路探索の結果として部分的に発生する可能性のあるビート位置の誤りを減少させることができる。一定テンポ用ビート再探索部２２０により再決定された最適経路は、ビート決定部２２２に入力される。
【０１１９】
ビート決定部２２２は、ビート探索部２１６により決定された最適経路、又は一定テンポ用ビート再探索部２２０により再決定された最適経路と、それら経路に含まれる各ノードのビート間隔とに基づいて音声信号に含まれるビート位置を決定する。例えば、ビート決定部２２２は、図２４に示すような方法でビート位置を決定する。図２４の（Ａ）には、オンセット検出部２１２で得られたオンセット検出結果の一例が示されている。この例には、オンセット検出部２１２で検出されたｋ番目のオンセットの周囲１４個のオンセットが示されている。一方、図２４の（Ｂ）は、ビート探索部２１６又は一定テンポ用ビート再探索部２２０で決定される最適経路のオンセットが示されている。（Ｂ）の例では、（Ａ）に示された１４個のオンセットのうち、ｋ−７番目、ｋ番目、ｋ＋６番目のオンセット（フレーム番号Ｆｋ−７、Ｆｋ、Ｆｋ＋６）が最適経路に含まれている。また、ｋ−７番目のオンセットのビート間隔（対応するノードのビート間隔に相当）はｄｋ−７、ｋ番目のオンセットのビート間隔はｄｋである。
【０１２０】
このようなオンセットについて、まず、ビート決定部２２２は、最適経路に含まれるオンセットの位置をその楽曲のビート位置であるとみなす。そして、ビート決定部２２２は、最適経路に含まれる隣り合うオンセット間のビートを各オンセットのビート間隔に応じて補完する。このとき、ビート決定部２２２は、最適経路上で隣り合うオンセットの間のビートを補完するために、まず、補完するビートの数を決定する。例えば、ビート決定部２２２は、図２５に示すように、隣り合う２つのオンセットの位置をＦｈ及びＦｈ＋１、オンセット位置Ｆｈにおけるビート間隔をｄｈとする。この場合、Ｆｈ及びＦｈ＋１の間に補完されるビート数Ｂｆｉｌｌは、下記の式（８）で与えられる。
【０１２１】
【数７】
2010134790.tif 000010
…（８）
【０１２２】
但し、Ｒｏｕｎｄ（…）は、…の小数桁を四捨五入して整数に丸めることを示す。上記の式（８）によると、ビート決定部２２２により補完されるビート数は、隣り合うオンセットの間隔をビート間隔で割った値が整数に丸められた後、植木算の考え方に基づいて１を引いた数となる。
【０１２３】
次に、ビート決定部２２２は、最適経路上で隣り合うオンセットの間にビートが等間隔に配置されるように、決定したビートの数だけビートを補完する。図２４の（Ｃ）には、ビート補間後のオンセットが示されている。（Ｃ）の例では、ｋ−７番目のオンセットとｋ番目のオンセットとの間に２つのビートが、ｋ番目のオンセットとｋ＋６番目のオンセットとの間に２つのビートが補完されている。但し、ビート決定部２２２により補完されるビートの位置は、必ずしもオンセット検出部２１２により検出されたオンセットの位置に一致しない。このような構成にすることで、局所的にビート位置から外れて発せられた音に影響されずにビートの位置が決定される。また、ビート位置において休符が存在し、その位置で音が発せられなかった場合でも適切にビート位置を認識することができる。このようにしてビート決定部２２２により決定されたビート位置のリスト（最適経路上のオンセットとビート決定部２２２により補完されたビートを含む）は、テンポ補正部２２４に入力される。
【０１２４】
テンポ補正部２２４は、ビート決定部２２２により決定されたビート位置で表されるテンポを補正する。補正前のテンポは、楽曲本来のテンポの２倍、１／２倍、３／２倍、２／３倍などの定数倍（図２６を参照）になっている可能性がある。そのため、テンポ補正部２２４では、誤って定数倍に認識しているテンポを補正して楽曲本来のテンポを再現する。ここで、ビート決定部２２２で決定されるビート位置のパターンを示した図２６の例を参照する。図２６の例においては、図示された時間の範囲内でパターン（Ａ）には６つのビートが含まれている。これに対し、パターン（Ｂ）には、同じ時間の範囲内に１２のビートが含まれている。つまり、パターン（Ｂ）のビート位置は、パターン（Ａ）のビート位置を基準として２倍のテンポを示している。
【０１２５】
一方、パターン（Ｃ−１）には、同じ時間の範囲内に３つのビートが含まれている。つまり、パターン（Ｃ−１）のビート位置は、パターン（Ａ）のビート位置を基準として１／２倍のテンポを示している。また、パターン（Ｃ−２）には、パターン（Ｃ−１）と同様に、同じ時間の範囲内に３つのビートを含み、パターン（Ａ）のビート位置を基準として１／２倍のテンポを示している。但し、パターン（Ｃ−１）とパターン（Ｃ−２）とは、基準のテンポからテンポを変更する際に残されるビート位置が異なる。テンポ補正部２２４によるテンポの補正は、例えば、次の（Ｓ１）〜（Ｓ３）の手順により行われる。
【０１２６】
（Ｓ１）波形に基づいて推定される推定テンポの決定
（Ｓ２）複数の基本倍率のうち最適な基本倍率の決定
（Ｓ３）基本倍率が１倍となるまで（Ｓ２）を繰返し
【０１２７】
まず、（Ｓ１）波形に基づいて推定される推定テンポの決定について説明する。テンポ補正部２２４は、音声信号の波形に現れる音質的特徴から妥当であると推定される推定テンポを決定する。推定テンポの決定には、例えば、特徴量計算式生成装置１０又は特開２００８−１２３０１１に記載された学習アルゴリズムで生成される推定テンポ判別用の計算式（推定テンポ判別式）が用いられる。例えば、図２７に示すように、特徴量計算式生成装置１０には、評価データとして複数の楽曲のログスペクトルが供給される。図２７の例では、ログスペクトルＬＳ１〜ＬＳｎが供給されている。さらに、教師データとして、各楽曲を人間が聴いて判定した正解テンポが供給される。図２７の例では、教師データとして、各ログスペクトルについての正解テンポ（ＬＳ１：１００、…、ＬＳｎ：６０）が供給されている。このような複数組の評価データと教師データとに基づいて推定テンポ判別式が生成される。そして、テンポ補正部２２４は、生成した推定テンポ判別式を用いて実施曲の推定テンポを算出する。
【０１２８】
次に、（Ｓ２）複数の基本倍率のうち最適な基本倍率の決定方法について説明する。テンポ補正部２２４は、複数の基本倍率のうち、補正後のテンポが楽曲の本来のテンポに最も近い基本倍率を決定する。ここで、基本倍率とは、テンポの補正に用いる定数比の基本単位となる倍率である。基本倍率としては、例えば、１／３倍、１／２倍、２／３倍、１倍、３／２倍、２倍、３倍の７種類の倍率が用いられる。但し、本実施形態の適用範囲はこれらの例に限定されず、例えば、１／３倍、１／２倍、１倍、２倍、３倍の５種類の倍率で基本倍率が構成されていてもよい。テンポ補正部２２４は、最適な基本倍率を決定するために、まず、各基本倍率でビート位置を補正した後の平均ビート確率をそれぞれ計算する。但し、基本倍率１倍については、ビート位置を補正しない場合の平均ビート確率を計算する。例えば、テンポ補正部２２４により、図２８に示すような方法で基本倍率毎に平均ビート確率が算出される。
【０１２９】
図２８には、ビート確率算出部２０２で算出されたビート確率が時間軸に沿って折れ線状に示されている。なお、横軸には、いずれかの基本倍率に応じて補正された３つのビートのフレーム番号Ｆｈ−１、Ｆｈ、及びＦｈ＋１が示されている。ここで、フレーム番号Ｆｈにおけるビート確率をＢＰ（ｈ）とすると、基本倍率ｒに応じて補正されたビート位置の集合Ｆ（ｒ）の平均ビート確率ＢＰＡＶＧ（ｒ）は、下記の式（９）により与えられる。但し、ｍ（ｒ）は、集合Ｆ（ｒ）に含まれるフレーム番号の個数を示す。
【０１３０】
【数８】
2010134790.tif 000011
…（９）
【０１３１】
図２６のパターン（Ｃ−１）及びパターン（Ｃ−２）を用いて説明したように、基本倍率ｒ＝１／２の場合、ビート位置の候補は２通り存在する。そのため、テンポ補正部２２４は、２通りのビート位置の候補についてそれぞれ平均ビート確率ＢＰＡＶＧ（ｒ）を計算し、平均ビート確率ＢＰＡＶＧ（ｒ）の高い方のビート位置を基本倍率ｒ＝１／２に応じた補正後のビート位置として採用する。同様に、基本倍率ｒ＝１／３の場合、ビート位置の候補は３通り存在する。そこで、テンポ補正部２２４は、３通りのビート位置の候補について、それぞれ平均ビート確率ＢＰＡＶＧ（ｒ）を計算し、平均ビート確率ＢＰＡＶＧ（ｒ）の最も高いビート位置を基本倍率ｒ＝１／３に応じた補正後のビート位置として採用する。
【０１３２】
このようにして基本倍率ごとの平均ビート確率を計算すると、テンポ補正部２２４は、推定テンポと平均ビート確率に基づいて、基本倍率ごとに補正後のテンポの尤もらしさ（以下、テンポ尤度）を算出する。テンポ尤度は、例えば、推定テンポを中心とするガウス分布で表されるテンポ確率と平均ビート確率との積で表すことができる。例えば、テンポ補正部２２４により、図２９に示すようなテンポ尤度が算出される。
【０１３３】
図２９の（Ａ）は、各基本倍率についてテンポ補正部２２４で算出された補正後の平均ビート確率を示している。また、図２９の（Ｂ）は、テンポ補正部２２４により音声信号の波形に基づいて推定された推定テンポを中心とし、所定の分散σ１を持つガウス分布で表現されるテンポ確率を示している。なお、図２９の（Ａ）及び（Ｂ）の横軸は、各基本倍率に応じてビート位置を補正した後のテンポの対数を表す。テンポ補正部２２４は、基本倍率毎に平均ビート確率とテンポ確率とを乗算して（Ｃ）に示すようなテンポ尤度を算出する。図２９の例では、基本倍率が１倍の場合と１／２倍の場合とで平均ビート確率がほぼ同じとなるが、１／２倍に補正したテンポの方がより推定テンポに近い（テンポ確率が高い）。そのため、算出されたテンポ尤度は１／２倍に補正したテンポの方が高くなる。テンポ補正部２２４は、このようにしてテンポ尤度を算出し、最もテンポ尤度の高い基本倍率を補正後のテンポが楽曲本来のテンポに最も近くなる基本倍率に決定する。
【０１３４】
このようにして尤もらしいテンポの決定に推定テンポから得られるテンポ確率が加味されることで、局所的な音声の波形からは判別することが困難な定数倍の関係にあるテンポの候補から、適切なテンポを精度よく決定することができる。このようにしてテンポが補正されると、テンポ補正部２２４は、（Ｓ３）基本倍率が１倍となるまで（Ｓ２）の処理を繰返す。具体的には、テンポ補正部２２４により、最もテンポ尤度の高い基本倍率が１倍となるまで、基本倍率ごとの平均ビート確率の計算とテンポ尤度の算出とが繰り返される。その結果、テンポ補正部２２４による補正前のテンポが楽曲の本来のテンポの１／４倍や１／６倍、４倍、６倍などであったとしても、基本倍率の組合せで得られる適切な補正倍率（例えば、１／２倍×１／２倍＝１／４倍）によりテンポが補正される。
【０１３５】
ここで、図３０を参照しながら、テンポ補正部２２４による補正処理の流れについて簡単に説明する。図３０に示すように、まず、テンポ補正部２２４は、特徴量計算式生成装置１０により予め生成された推定テンポ判別式を用いて、音声信号から推定テンポを決定する（Ｓ１４４２）。次いで、テンポ補正部２２４は、複数の基本倍率（１／３、１／２…など）について順次ループさせる（Ｓ１４４４）。そのループ内において、テンポ補正部２２４は、各基本倍率に応じてビート位置を変更し、テンポを補正する（Ｓ１４４６）。次いで、テンポ補正部２２４は、補正後のビート位置における平均ビート確率を計算する（Ｓ１４４８）。次いで、テンポ補正部２２４は、ステップＳ１４４８で計算した平均ビート確率とステップＳ１４４２で決定した推定テンポとに基づいて、基本倍率ごとのテンポ尤度を計算する（Ｓ１４５０）。
【０１３６】
次いで、テンポ補正部２２４は、全ての基本倍率のループが終了すると（Ｓ１４５２）、テンポ尤度が最も高い基本倍率を決定する（Ｓ１４５４）。次いで、テンポ補正部２２４は、テンポ尤度が最も高い基本倍率が１倍か否かを判定する（Ｓ１４５６）。ここで、テンポ尤度が最も高い基本倍率が１倍であれば、テンポ補正部２２４は、一連の補正処理を終了する。一方、テンポ尤度が最も高い基本倍率が１倍でなければ、テンポ補正部２２４は、ステップＳ１４４４の処理に戻る。このようにしてテンポ尤度が最も高い基本倍率に応じて補正されたテンポ（ビート位置）に基づき、再度いずれかの基本倍率によるテンポの補正が行われる。
【０１３７】
以上、ビート検出部１３２の構成について説明した。上記の処理により、ビート検出部１３２からは、図３１に示すようなビート位置の検出結果が出力される。このようなビート検出部１３２による検出結果は、楽曲構造解析部１３４に入力され、楽曲の構造解析に用いられる。
【０１３８】
（２−４−２．楽曲構造解析部１３４の構成）
次に、楽曲構造解析部１３４について説明する。図３２に示すように、楽曲構造解析部１３４には、ログスペクトル解析部１０８からログスペクトルが、ビート解析部２０４からビート位置が入力される。そこで、楽曲構造解析部１３４は、これらログスペクトル及びビート位置に基づいて音声信号に含まれるビート区間同士の音声の類似確率を計算する。図３２に示すように、楽曲構造解析部１３４は、ビート区間特徴量計算部２２６、相関計算部２２８、及び類似確率生成部２３０を含む。
【０１３９】
ビート区間特徴量計算部２２６は、ビート解析部２０４で検出された各ビートについて、そのビートから次のビートまでのビート区間における部分ログスペクトルの特徴を表すビート区間特徴量を計算する。ここで、図３３を参照しながら、ビート、ビート区間、及びビート区間特徴量の相互関係について簡単に説明する。図３３には、ビート解析部２０４で検出された６つのビート位置Ｂ１〜Ｂ６が示されている。この例において、ビート区間とは、音声信号をビート位置で区分した区間であり、各ビートから次のビートまでの区間を表す。例えば、区間ＢＤ１はビートＢ１からビートＢ２までのビート区間、区間ＢＤ２はビートＢ２からビートＢ３までのビート区間、区間ＢＤ３はビートＢ３からビートＢ４までのビート区間である。ビート区間特徴量計算部２２６は、各ビート区間ＢＤ１〜ＢＤ６において切り出された部分ログスペクトルからビート区間特徴量ＢＦ１〜ＢＦ６をそれぞれ計算する。
【０１４０】
ビート区間特徴量計算部２２６は、図３４及び図３５に示すような方法でビート区間特徴量を計算する。図３４の（Ａ）には、ビート区間特徴量計算部２２６により切り出された１つのビートに対応するビート区間ＢＤの部分ログスペクトルが示されている。ビート区間特徴量計算部２２６は、このような部分ログスペクトルについて音程（オクターブ数×１２音）ごとにエネルギーを時間平均する。この時間平均により、音程別の平均エネルギーが算出される。図３４の（Ｂ）は、ビート区間特徴量計算部２２６により算出される音程別の平均エネルギーの大きさを示したものである。
【０１４１】
次に、図３５を参照する。図３５の（Ａ）は、図３４の（Ｂ）と同じ音程別平均エネルギーの大きさを示したものである。ビート区間特徴量計算部２２６は、異なるオクターブにおける１２音の同じ音名に関するオクターブ数分の平均エネルギー値を所定の重みで重み付け加算し、１２音別のエネルギーを算出する。例えば、図３５の（Ｂ）及び（Ｃ）に示す例では、ｎオクターブ分のＣ音の平均エネルギー（Ｃ１、Ｃ２、…、Ｃｎ）が所定の重み（Ｗ１、Ｗ２、…、Ｗｎ）を用いて重み付け加算され、Ｃ音のエネルギー値ＥＮＣが算出されている。また、同様に、ｎオクターブ分のＢ音の平均エネルギー（Ｂ１、Ｂ２、…、Ｂｎ）が所定の重み（Ｗ１、Ｗ２、…、Ｗｎ）を用いて重み付け加算され、Ｂ音のエネルギー値ＥＮＢが算出されている。Ｃ音とＢ音の中間の１０の音（Ｃ＃〜Ａ＃）についても同様である。その結果、１２音別の各エネルギー値ＥＮＣ、ＥＮＣ＃、…、ＥＮＢを要素とする１２次元のベクトルが生成される。ビート区間特徴量計算部２２６は、ビート区間特徴量ＢＦとして、これら１２音別エネルギー（１２次元ベクトル）をビートごとに計算し、相関計算部２２８に入力する。
【０１４２】
なお、重み付け加算に用いるオクターブ別の重みＷ１、Ｗ２、…、Ｗｎの値は、一般的な楽曲においてメロディーやコードが明確に現れる中音域ほど大きい値とするのが好適である。このような構成にすることで、メロディーやコードの特徴をより強く反映して楽曲構造を解析することができるようになる。
【０１４３】
相関計算部２２８は、ビート区間特徴量計算部２２６から入力されるビート区間特徴量（ビート区間ごとの１２音別エネルギー）を用いて、音声信号に含まれるビート区間の全ての組合せに関するビート区間同士の相関係数を計算する。例えば、相関計算部２２８は、図３６に示すような方法で相関係数を計算する。図３６には、ログスペクトルを区分するビート区間の中で相関係数を計算する組み合わせの一例として、第１注目ビート区間ＢＤｉ及び第２注目ビート区間ＢＤｊが示されている。
【０１４４】
相関計算部２２８は、例えば、上記２つの注目ビート区間の間の相関係数を計算するために、まず、第１注目ビート区間ＢＤｉの前後Ｎ区間（図３１の例ではＮ＝２、計５区間）にわたる１２音別エネルギーを取得する。同様に、相関計算部２２８は、第２注目ビート区間ＢＤｊの前後Ｎ区間にわたる１２音別エネルギーを取得する。そして、相関計算部２２８は、取得した第１注目ビート区間ＢＤｉの前後Ｎ区間の１２音別エネルギーと第２注目ビート区間ＢＤｊの前後Ｎ区間の１２音別エネルギーとの間で相関係数を計算する。相関計算部２２８は、このような相関係数の計算を全ての第１注目ビート区間ＢＤｉと第２注目ビート区間ＢＤｊの組合せについて計算し、計算結果を類似確率生成部２３０に入力する。
【０１４５】
類似確率生成部２３０は、予め生成される変換曲線を用いて、相関計算部２２８から入力されたビート区間同士の相関係数を類似確率に変換する。ここで言う類似確率とは、ビート区間同士の音声の内容が相互に類似している度合いを表すものである。相関係数を類似確率に変換する際に用いられる変換曲線は、例えば、図３７に示すようなものである。
【０１４６】
図３７の（Ａ）は、予め求められた２つの確率分布である。これら２つの確率分布は、同じ音声の内容を有しているビート区間同士の相関係数の確率分布、及び異なる音声の内容を有しているビート区間同士の相関係数の確率分布を示している。図３７の（Ａ）から理解されるように、相関係数が低いほど音声の内容が同じである確率は低く、相関係数が高いほど音声の内容が同じである確率は高い。そのため、図３７の（Ｂ）に示すような相関係数からビート区間同士の類似確率を導く変換曲線を予め生成することができる。類似確率生成部２３０は、このような予め生成しておいた変換曲線を用いて、例えば相関計算部２２８から入力された相関係数ＣＯ１を類似確率ＳＰ１へ変換する。
【０１４７】
このようにして変換された類似確率は、例えば、図３８のように可視化することができる。図３８の縦軸は第１注目ビート区間の位置、横軸は第２注目ビート区間の位置に対応する。また、二次元平面上にプロットされた色の濃淡は、その座標に対応する第１注目ビート区間と第２注目ビート区間との間の類似確率を表す。例えば、第１注目ビート区間ｉ１と、実質的に同じビート区間である第２注目ビート区間ｊ１との間の類似確率は当然に高い値を示し、両者が同じ音声の内容を有していることを示している。さらに楽曲が進み、第２注目ビート区間ｊ２に到達すると、第１注目ビート区間ｉ１と第２注目ビート区間ｊ２との間の類似確率は再び高い値となっている。つまり、第２注目ビート区間ｊ２では、第１注目ビート区間ｉ１とほぼ同じ内容の音声が演奏されている可能性が高いことが分かる。このように楽曲構造解析部１３４により取得されたビート区間同士の類似確率は、後述する小節線検出部１４０及びコード進行検出部１４２に入力される。
【０１４８】
なお、本実施形態では、ビート区間内のエネルギーの時間平均をビート区間特徴量の計算に用いることから、楽曲構造解析部１３４による楽曲構造の解析においてビート区間内の時間的なログスペクトルの変化の情報は考慮されない。例えば、あるビート区間と他のビート区間で（例えば、演奏者のアレンジなどにより）同じメロディーが時間的なずれをもって演奏されたとしても、そのずれがビート区間内に閉じている限りは演奏された内容が同一であると判定される。
【０１４９】
さて、上記のようにしてビート区間同士の類似確率を算出すると、楽曲構造解析部１３４は、類似確率が高いビート区間で楽曲データを分割し、分割区間毎に楽曲構造を解析する。楽曲構造の解析方法に関しては、例えば、特開２００７−１５６４３４号公報に記載された技術を利用することができる。まず、楽曲構造解析部１３４は、各分割区間に関して所定の特徴量を抽出する。ここで抽出する特徴量としては、例えば、各分割区間の音量、音源に関する情報、周波数のバランス、楽器音の数、各楽器音の割合等が用いられる。また、類似確率の高い分割区間の出現回数や繰り返し回数等が特徴量として分割区間毎に参照される。そして、これらの特徴量について学習アルゴリズムにより学習処理が行われ、各分割区間のログスペクトルから楽曲構造を算出するための計算式が生成される。
【０１５０】
上記の学習処理の際、学習アルゴリズムには、例えば、評価データとしてサビ部分の部分ログスペクトルが与えられ、教師データとしてサビ部分を表す判定値が与えられる。また、イントロ部分、間奏部分、Ａメロ部分、Ｂメロ部分等に関しても、評価データとして各部分の部分ログスペクトルが与えられ、教師データとして各部分を表す判定値が与えられることで、各部分の判定値又は判定確率を算出する計算式が得られる。楽曲構造解析部１３４は、生成された計算式に部分ログスペクトルを入力し、各分割区間の楽曲構造を抽出する。その結果、例えば、図３９に示すような楽曲構造の解析結果が得られる。このようにして得られた楽曲構造の解析結果は、メタデータ保存部１１２に保存される。なお、図３９のＩｎｔｒｏは、イントロ部分を表し、Ｖｅｒｓｅ  ＡはＡメロ部分を表す。また、Ｃｈｏｒｕｓはサビ部分を表す。図３９の例では、時間０ｍｓからイントロが、時間７２５９５ｍｓからサビが始まることが分かる。
【０１５１】
（２−４−３．コード確率検出部１３６）
次に、コード確率検出部１３６について説明する。コード確率検出部１３６は、ビート解析部２０４で検出された各ビートのビート区間内で各コードが演奏されている確率（以下、コード確率）を算出する。コード確率検出部１３６で算出されるコード確率は、キー検出部１３８によるキー検出処理に用いられるものである。図４０に示すように、コード確率検出部１３６は、ビート区間特徴量計算部２３２、ルート別特徴量準備部２３４、及びコード確率計算部２３６を含む。
【０１５２】
上記の通り、コード確率検出部１３６には、ビート検出部１３２で検出されたビート位置の情報とログスペクトルとが入力される。そこで、ビート区間特徴量計算部２３２は、ビート解析部２０４で検出された各ビートについてビート区間内の音声信号の特徴を表すビート区間特徴量として１２音別エネルギーを計算する。そして、ビート区間特徴量計算部２３２は、ビート区間特徴量としての１２音別エネルギーを計算し、ルート別特徴量準備部２３４に入力する。ルート別特徴量準備部２３４は、ビート区間特徴量計算部２３２から入力される１２音別エネルギーに基づいてビート区間ごとのコード確率の算出に用いられるルート別特徴量を生成する。例えば、ルート別特徴量準備部２３４は、図４１及び図４２に示す方法でルート別特徴量を生成する。
【０１５３】
まず、ルート別特徴量準備部２３４は、注目するビート区間ＢＤｉについて、前後Ｎ区間分の１２音別エネルギーを抽出する（図４１を参照）。ここで抽出された前後Ｎ区間分の１２音別エネルギーは、Ｃ音をコードのルート（根音）とする特徴量とみなすことができる。図４１の例においては、Ｎ＝２であるため、Ｃ音をルートとする５区間分のルート別特徴量（１２×５次元）が抽出されている。次いで、ルート別特徴量準備部２３４は、Ｃ音をルートとする５区間分のルート別特徴量の１２音の要素位置を所定数だけシフトさせて、Ｃ＃音からＢ音までをそれぞれルートとする１１通りの５区間分のルート別特徴量を生成する（図４２を参照）。なお、要素位置をシフトさせるシフト数は、Ｃ＃音をルートとする場合は１、Ｄ音をルートとする場合は２、…、Ｂ音をルートとする場合は１１などとなる。その結果、ルート別特徴量準備部２３４により、Ｃ音からＢ音までの１２音をそれぞれルートとするルート別特徴量（それぞれ１２×５次元）が１２音分生成される。
【０１５４】
ルート別特徴量準備部２３４は、このようなルート別特徴量生成処理を全てのビート区間について実行し、各区間についてコード確率の算出に用いるルート別特徴量を準備する。なお、図４１及び図４２の例では、１つのビート区間について準備される特徴量は、１２×５×１２次元のベクトルとなる。ルート別特徴量準備部２３４により生成されたルート別特徴量は、コード確率計算部２３６に入力される。コード確率計算部２３６は、ルート別特徴量準備部２３４から入力されたルート別特徴量を用いて、各コードが演奏されている確率（コード確率）をビート区間ごとに算出する。ここで、各コードとは、例えば、ルート（Ｃ、Ｃ＃、Ｄ…）や構成音の数（三和音、四和音（７ｔｈ）、五和音（９ｔｈ））、及び長短（メジャー／マイナー）などにより区別される個々のコードのことを言う。コード確率の算出には、例えば、ロジスティック回帰分析によって予め学習されたコード確率算出式を用いる。
【０１５５】
例えば、コード確率計算部２３６は、図４３に示す方法でコード確率の計算に用いるコード確率算出式を生成する。なお、コード確率算出式の学習は、学習したいコードの種類ごとに行われる。例えば、メジャーコード用のコード確率算出式、マイナーコード用のコード確率算出式、７ｔｈコード用のコード確率算出式、９ｔｈコード用のコード確率算出式などについて、それぞれ以下で説明する学習処理が行われる。
【０１５６】
まず、ロジスティック回帰分析における独立変数として、正解のコードが既知であるビート区間ごとのルート別特徴量（例えば、図４２で説明した１２×５×１２次元のベクトル）を複数用意する。また、ビート区間ごとのルート別特徴量のそれぞれについて、ロジスティック回帰分析により生起確率を予測するためのダミーデータを用意する。例えば、メジャーコード用のコード確率算出式を学習する場合、ダミーデータの値は、既知のコードがメジャーコードであれば真値（１）、それ以外なら偽値（０）となる。一方、マイナーコード用のコード確率算出式を学習する場合、ダミーデータの値は、既知のコードがマイナーコードであれば真値（１）、それ以外なら偽値（０）となる。７ｔｈコード、９ｔｈコード等についても同様である。
【０１５７】
このような独立変数とダミーデータを利用し、十分な数のビート区間ごとのルート別特徴量についてロジスティック回帰分析を行うことで、ビート区間ごとのルート別特徴量から、コード確率を算出するためのコード確率算出式が生成される。そして、コード確率計算部２３６は、生成したコード確率算出式にルート別特徴量準備部２３４から入力されたルート別特徴量を適用し、各種類のコードについてビート区間ごとにコード確率を順次算出する。コード確率計算部２３６によるコード確率の計算処理は、例えば、図４４に示すような方法で行われる。図４４の（Ａ）には、ビート区間ごとのルート別特徴量のうち、Ｃ音をルートとするルート別特徴量が示されている。
【０１５８】
例えば、コード確率計算部２３６は、Ｃ音をルートとするルート別特徴量にメジャーコード用のコード確率算出式を適用し、各ビート区間についてコードが“Ｃ”であるコード確率ＣＰＣを計算する。また、コード確率計算部２３６は、Ｃ音をルートとするルート別特徴量にマイナーコード用のコード確率算出式を適用し、当該ビート区間についてコードが“Ｃｍ”であるコード確率ＣＰＣｍを計算する。同様に、コード確率計算部２３６は、Ｃ＃音をルートとするルート別特徴量にメジャーコード用及びマイナーコード用のコード確率算出式を適用し、コード“Ｃ＃”のコード確率ＣＰＣ＃及びコード“Ｃ＃ｍ”のコード確率ＣＰＣ＃ｍを計算する（Ｂ）。コード“Ｂ”のコード確率ＣＰＢ及びコード“Ｂｍ”のコード確率ＣＰＢｍについても同様に計算される（Ｃ）。
【０１５９】
このような方法でコード確率計算部２３６により図４４に示すようなコード確率が算出される。図４５を参照すると、ある１つのビート区間について、Ｃ音からＢ音までの１２音ごとに“Ｍａｊ（メジャー）”、“ｍ（マイナー）”、“７（７ｔｈ／セブンス）”、“ｍ７（マイナーセブンス）”などについてコード確率が計算されている。図４５の例では、コード確率ＣＰＣ＝０．８８、コード確率ＣＰＣｍ＝０．０８、コード確率ＣＰＣ７＝０．０１、コード確率ＣＰＣｍ７＝０．０２、コード確率ＣＰＣＢ＝０．０１である。また、これらの種類以外のコード確率はいずれもゼロである。なお、コード確率計算部２３６は、上記のようにして複数種類のコードについてコード確率を計算した後、算出した確率値の合計が１つのビート区間内で１となるように確率値を正規化する。コード確率計算部２３６によるコード確率の計算及び正規化処理は、音声信号に含まれる全てのビート区間について繰り返される。
【０１６０】
以上説明したビート区間特徴量計算部２３２、ルート別特徴量準備部２３４、コード確率計算部２３６の処理により、コード確率検出部１３６においてコード確率が算出される。そして、コード確率検出部１３６で算出されたコード確率は、キー検出部１３８に入力される。
【０１６１】
（２−４−４．キー検出部１３８の構成）
次に、キー検出部１３８について説明する。上記の通り、キー検出部１３８には、コード確率検出部１３６で算出されたコード確率が入力される。キー検出部１３８は、コード確率検出部１３６で算出されたビート区間ごとのコード確率を用いて、ビート区間ごとのキー（調／基本音階）を検出する手段である。図４６に示すように、キー検出部１３８は、相対コード確率生成部２３８、特徴量準備部２４０、キー確率計算部２４２、及びキー決定部２４６を含む。
【０１６２】
まず、相対コード確率生成部２３８には、コード確率検出部１３６からコード確率が入力される。そして、相対コード確率生成部２３８は、コード確率検出部１３６から入力されたビート区間ごとのコード確率から、ビート区間ごとのキー確率の算出に用いられる相対コード確率を生成する。例えば、相対コード確率生成部２３８は、図４７に示すような方法で相対コード確率を生成する。まず、相対コード確率生成部２３８は、ある注目ビート区間のコード確率から、メジャーコード及びマイナーコードに関するコード確率を抽出する。ここで抽出されたコード確率は、メジャーコード１２音とマイナーコード１２音の合計２４次元のベクトルで表現される。以下の説明では、Ｃ音をキーと仮定した相対コード確率として、ここで抽出されたコード確率を含む２４次元のベクトルを扱うことにする。
【０１６３】
次に、相対コード確率生成部２３８は、抽出したメジャーコード及びマイナーコードのコード確率について１２音の要素位置を所定数だけシフトさせる。このようにシフトさせることで、１１通りの相対コード確率が生成される。なお、要素位置をシフトさせるシフト数は、図４２で説明したルート別特徴量の生成時と同じシフト数とする。このようにして相対コード確率生成部２３８によりＣ音からＢ音までの１２音をそれぞれキーと仮定した相対コード確率が１２通り生成される。相対コード確率生成部２３８は、このような相対コード確率生成処理を全てのビート区間について行い、生成した相対コード確率を特徴量準備部２４０に入力する。
【０１６４】
特徴量準備部２４０は、ビート区間ごとのキー確率の算出に用いる特徴量を生成する。特徴量準備部２４０で生成される特徴量としては、相対コード確率生成部２３８から特徴量準備部２４０に入力される相対コード確率から生成されるビート区間ごとのコード出現スコア及びコード遷移出現スコアが用いられる。
【０１６５】
まず、特徴量準備部２４０は、図４８に示すような方法でビート区間ごとのコード出現スコアを生成する。まず、特徴量準備部２４０は、注目ビート区間の前後Ｍビート区間分のＣ音をキーと仮定した相対コード確率ＣＰを用意する。そして、特徴量準備部２４０は、前後Ｍビート分の区間にわたって、Ｃ音をキーと仮定した相対コード確率に含まれる同じ位置の要素の確率値を通算する。その結果、注目ビート区間の周囲に位置する複数のビート区間にわたるＣ音をキーと仮定した場合の各コードの出現確率に応じたコード出現スコア（ＣＥＣ、ＣＥＣ＃、…、ＣＥＢｍ）（２４次元ベクトル）が求められる。特徴量準備部２４０は、Ｃ音からＢ音までの１２音のそれぞれをキーと仮定した場合について、このようなコード出現スコアの計算を行う。この計算により、１つの注目ビート区間について、１２通りのコード出現スコアが求められる。
【０１６６】
次に、特徴量準備部２４０は、図４９に示すような方法でビート区間ごとのコード遷移出現スコアを生成する。まず、特徴量準備部２４０は、ビート区間ＢＤｉ及び隣り合うビート区間ＢＤｉ＋１の間の全てのコードの組合せ（全てのコード遷移）について、コード遷移の前後のＣ音をキーと仮定した相対コード確率を互いに乗算する。全てのコードの組合せとは、“Ｃ”→“Ｃ”、“Ｃ”→“Ｃ＃”、“Ｃ”→“Ｄ”、…“Ｂ”→“Ｂ”の２４×２４通りの組合せを言う。次いで、特徴量準備部２４０は、注目ビート区間の前後Ｍビート分の区間にわたり、コード遷移の前後の相対コード確率の乗算結果を通算する。その結果、注目ビート区間の周囲に位置する複数のビート区間にわたるＣ音をキーと仮定した場合の各コード遷移の出現確率に応じた２４×２４次元のコード遷移出現スコア（２４×２４次元ベクトル）が求められる。例えば、注目ビート区間ＢＤｉにおける“Ｃ”→“Ｃ＃”のコード遷移についてのコード遷移出現スコアＣＴＣ→Ｃ＃（ｉ）は、下記の式（１０）により与えられる。
【０１６７】
【数９】
2010134790.tif 000012
…（１０）
【０１６８】
このように、特徴量準備部２４０は、Ｃ音からＢ音までの１２音のそれぞれをキーと仮定した場合について、２４×２４通りのコード遷移出現スコアＣＴの計算を行う。この計算により、１つの注目ビート区間について、１２通りのコード遷移出現スコアが求められる。なお、楽曲のキーは、小節ごとに変化することが多いコードとは異なり、より長い区間にわたって変化しないことが多い。そのため、コード出現スコアやコード遷移出現スコアの算出に用いる相対コード確率の範囲を定義するＭの値は、例えば、数十ビートなど、多数の小節を含む値とするのが好適である。特徴量準備部２４０は、キー確率を計算するための特徴量として、ビート区間ごとに計算した２４次元のコード出現スコアＣＥ及び２４×２４次元のコード遷移出現スコアをキー確率計算部２４２に入力する。
【０１６９】
キー確率計算部２４２は、特徴量準備部２４０から入力されたコード出現スコア及びコード遷移出現スコアを用いて、ビート区間ごとに各キーが演奏されている確率（キー確率）を算出する。各キーとは、例えば、１２音（Ｃ、Ｃ＃、Ｄ…）及び長短（メジャー／マイナー）により区別されるキーを言う。キー確率の算出には、例えば、ロジスティック回帰分析によって予め学習されたキー確率算出式を用いる。例えば、キー確率計算部２４２は、図５０に示すような方法でキー確率の計算に用いられるキー確率算出式を生成する。なお、キー確率算出式の学習は、メジャーキーとマイナーキーとに分けて行われる。その結果、メジャーキー確率算出式及びマイナーキー確率算出式が生成される。
【０１７０】
図５０に示すように、ロジスティック回帰分析における独立変数として、正解のキーが既知であるビート区間ごとのコード出現スコア及びコード出現進行スコアが複数用意される。次に、用意されたコード出現スコア及びコード出現進行スコアの組のそれぞれについて、ロジスティック回帰分析により生起確率を予測するダミーデータが用意される。例えば、メジャーキー確率算出式を学習する場合、ダミーデータの値は、既知のキーがメジャーキーであれば真値（１）、それ以外なら偽値（０）となるものである。また、マイナーキー確率算出式を学習する場合、ダミーデータの値は、既知のキーがマイナーキーであれば真値（１）、それ以外なら偽値（０）となるものである。
【０１７１】
このような独立変数とダミーデータの十分な数の組を用いてロジスティック回帰分析を行うことで、ビート区間ごとのコード出現スコア及びコード出現進行スコアからメジャーキー又はマイナーキーの確率を算出するためのキー確率算出式が生成される。キー確率計算部２４２は、各キー確率算出式に対して特徴量準備部２４０から入力されたコード出現スコア及びコード出現進行スコアを適用し、各キーについてビート区間ごとにキー確率を順次算出する。例えば、図５１に示すような方法でキー確率が計算される。
【０１７２】
例えば、図５１の（Ａ）で、キー確率計算部２４２は、予め学習により取得したメジャーキー確率算出式に対してＣ音をキーと仮定したコード出現スコア及びコード出現進行スコアを適用し、各ビート区間についてキーが“Ｃ”であるキー確率ＫＰＣを計算する。また、キー確率計算部２４２は、マイナーキー確率算出式にＣ音をキーと仮定したコード出現スコア及びコード出現進行スコアを適用し、当該ビート区間についてキーが“Ｃｍ”であるキー確率ＫＰＣｍを計算する。同様に、キー確率計算部２４２は、メジャーキー確率算出式及びマイナーキー確率算出式に対してＣ＃音をキーと仮定したコード出現スコア及びコード出現進行スコアを適用し、キー確率ＫＰＣ＃及びＫＰＣ＃ｍを計算する（Ｂ）。キー確率ＫＰＢ及びＫＰＢｍについても同様に計算される（Ｃ）。
【０１７３】
このような計算により、例えば、図５２に示すようなキー確率が算出される。図５２を参照すると、ある１つのビート区間について、Ｃ音からＢ音までの１２音ごとに“Ｍａｊ（メジャー）”及び“ｍ（マイナー）”の２種類のキー確率が計算されている。図５２の例では、キー確率ＫＰＣ＝０．９０、キー確率ＫＰＣｍ＝０．０３である。また、これらキー確率以外の確率値はいずれもゼロである。キー確率計算部２４２は、全てのキーの種類についてキー確率を算出した後、算出した確率値の合計が１つのビート区間内で１となるように確率値を正規化する。そして、キー確率計算部２４２による計算及び正規化処理は、音声信号に含まれる全てのビート区間について繰り返される。このようにしてビート区間ごとに算出された各キーのキー確率は、キー決定部２４６に入力される。
【０１７４】
ここで、キー確率計算部２４２は、Ｃ音からＢ音までの１２音ごとにメジャー及びマイナーの２種類について計算したキー確率に基づいてメジャー及びマイナーを区別しないキー確率（以下、単純キー確率）を計算する。例えば、キー確率計算部２４２は、図５３に示すような方法で単純キー確率を計算する。図５３の（Ａ）に示すように、例えば、あるビート区間について、キー確率計算部２４２により、キー確率ＫＰＣ＝０．９０、ＫＰＣｍ＝０．０３、ＫＰＡ＝０．０２、ＫＰＡｍ＝０．０５が算出される。なお、それ以外のキー確率はいずれもゼロである。キー確率計算部２４２は、平行調の関係にあるキー同士のキー確率を合計することで、Ｃ音からＢ音までの１２音ごとに、メジャー及びマイナーを区別しない単純キー確率を計算する。例えば、単純キー確率ＳＫＰＣはキー確率ＫＰＣとＫＰＡｍの合計であり、ＳＫＰＣ＝０．９０＋０．０５＝０．９５となる。これは、ハ長調（キー“Ｃ”）とイ短調（キー“Ａｍ”）が平行調の関係にあるためである。その他、Ｃ＃音からＢ音までの単純キー確率についても同様に計算される。キー確率計算部２４２により算出された１２通りの単純キー確率ＳＫＰＣ〜ＳＫＰＢは、コード進行検出部１４２に入力される。
【０１７５】
さて、キー決定部２４６は、キー確率計算部２４２でビート区間ごとに算出された各キーのキー確率に基づいて、尤もらしいキーの進行を経路探索により決定する。キー決定部２４６による経路探索の手法としては、例えば、上述したビタビ探索アルゴリズムが用いられる。例えば、図５４に示す方法でビタビ経路の経路探索が行われる。このとき、時間軸（横軸）としてビートが順に配置され、観測系列（縦軸）としてキーの種類が配置される。そのため、キー決定部２４６は、キー確率計算部２４２においてキー確率を算出したビートとキーの種類の全ての組合せの１つ１つを経路探索の対象ノードとする。
【０１７６】
このようなノードに対し、キー決定部２４６は、時間軸に沿っていずれかのノードを順に選択していき、選択された一連のノードで形成される経路を（１）キー確率、及び（２）キー遷移確率の２つの評価値を用いて評価する。なお、キー決定部２４６によるノードの選択に際しては、ビートをスキップすることは許可されないものとする。但し、評価に用いる（１）キー確率は、キー確率計算部２４２で算出されたキー確率である。キー確率は、図５４の各ノードに与えられる。一方、（２）キー遷移確率は、ノード間の遷移に対して与えられる評価値である。キー遷移確率は、キーが既知である楽曲における転調の発生確率に基づいて転調のパターンごとに予め定義される。
【０１７７】
キー遷移確率としては、遷移の前後のキーの種類のパターン、即ちメジャーからメジャー、メジャーからマイナー、マイナーからメジャー、マイナーからマイナーの４つのパターンごとに、遷移に伴う転調量に応じた１２通りの値が定義される。図５５には、メジャーからメジャーへのキーの遷移における転調量に応じた１２通りの確率値が一例として示されている。転調量Δｋに対応するキー遷移確率をＰｒ（Δｋ）とすると、図５５の例では、キー遷移確率Ｐｒ（０）は、Ｐｒ（０）＝０．９９８７である。この値は、楽曲内でキーが変わる確率が非常に低いことを表している。一方、キー遷移確率Ｐｒ（１）は、Ｐｒ（１）＝０．０００２である。これは、キーが１音程上がる（又は１１音程下がる）確率が０．０２％であることを表している。同様に、図５５の例では、Ｐｒ（２）＝Ｐｒ（３）＝Ｐｒ（４）＝Ｐｒ（５）＝Ｐｒ（７）＝Ｐｒ（８）＝Ｐｒ（９）＝Ｐｒ（１０）＝０．０００１である。また、Ｐｒ（６）＝Ｐｒ（１１）＝０．００００である。この他、メジャーからマイナー、マイナーからメジャー、マイナーからマイナーの各遷移パターンについても、同様に転調量に応じた１２通りの確率値がそれぞれ予め定義される。
【０１７８】
キー決定部２４６は、キー進行を表す各経路について、その経路に含まれる各ノードの（１）キー確率と、各ノード間の遷移に対して与えられる（２）キー遷移確率とを順次乗算する。そして、キー決定部２４６は、経路の評価値としての乗算結果が最大となる経路を尤もらしいキー進行を表す最適な経路に決定する。例えば、図５６に示すようなキー進行がキー決定部２４６により決定される。図５６には、楽曲の先頭から終端までの時間のスケールの下に、キー決定部２４６により決定された楽曲のキー進行の一例が示されている。この例では、楽曲の先頭から３分経過時点まで楽曲のキーが“Ｃｍ”である。その後、楽曲のキーは“Ｃ＃ｍ”に変化し、楽曲の終端までそのキーが続いている。このようにして、相対コード確率生成部２３８、特徴量準備部２４０、キー確率計算部２４２、キー決定部２４６の処理により決定されたキー進行は、小節線検出部１４０に入力される。
【０１７９】
（２−４−５．小節線検出部１４０の構成）
次に、小節線検出部１４０について説明する。小節線検出部１４０には、楽曲構造解析部１３４で算出された類似確率、ビート検出部１３２で算出されたビート確率、キー検出部１３８で算出されたキー確率及びキー進行、コード確率検出部１３６で検出されたコード確率が入力される。小節線検出部１４０は、ビート確率、ビート区間同士の類似確率、各ビート区間のコード確率、キー進行、及び各ビート区間のキー確率に基づき、一連のビートがそれぞれ何拍子何拍目であるかを表す小節線の進行を決定する。図５７に示すように、小節線検出部１４０は、第１特徴量抽出部２５２、第２特徴量抽出部２５４、小節線確率計算部２５６、小節線確率修正部２５８、小節線決定部２６０、及び小節線再決定部２６２を含む。
【０１８０】
第１特徴量抽出部２５２は、後述する小節線確率の計算に用いられる特徴量として、ビート区間ごとに、前後Ｌビート分のコード確率とキー確率に応じた第１特徴量を抽出する。例えば、第１特徴量抽出部２５２は、図５８に示すような方法で第１特徴量を抽出する。図５８に示すように、第１特徴量は、注目ビート区間ＢＤｉの前後Ｌビート分の区間のコード確率とキー確率とから導かれる（１）コード非変化スコア及び（２）相対コードスコアを含む。このうち、コード非変化スコアは、注目ビート区間ＢＤｉの前後Ｌビート分の区間数に相当する次元を有する特徴量である。一方、相対コードスコアは、注目ビート区間ＢＤｉの前後Ｌビート分の区間ごとに２４次元を有する特徴量である。例えば、Ｌ＝８とした場合、コード非変化スコアは１７次元、相対コードスコアは１７×２４次元＝４０８次元、第１特徴量は計４２５次元となる。以下、コード非変化スコア及び相対コードスコアについて、より詳細に説明する。
【０１８１】
（ａ）コード非変化スコアについて
まず、コード非変化スコアについて説明する。コード非変化スコアとは、一定の範囲の区間にわたって楽曲のコードが変化していない度合いを表す特徴量である。コード非変化スコアは、次に述べるコード安定スコアをコード不安定スコアで除算することにより求められる。図５９の例において、ビート区間ＢＤｉのコード安定スコアは、ビート区間ＢＤｉの前後Ｌビートの各区間について１つずつ定まる要素ＣＣ（ｉ−Ｌ）〜ＣＣ（ｉ＋Ｌ）を含む。そして、各要素は、対象のビート区間と直前のビート区間の間における同じコード名同士のコード確率の積の合計値として計算される。
【０１８２】
例えば、ビート区間ＢＤｉ−Ｌ−１のコード確率とビート区間ＢＤｉ−Ｌのコード確率との間で同じコード名同士のコード確率の積を合計すると、コード安定スコアＣＣ（ｉ−Ｌ）が算出される。同様に、ビート区間ＢＤｉ＋Ｌ−１のコード確率とビート区間ＢＤｉ＋Ｌのコード確率との間で同じコード名同士のコード確率の積を合計することにより、コード安定スコアＣＣ（ｉ＋Ｌ）が算出される。第１特徴量抽出部２５２は、このような計算を注目ビート区間ＢＤｉの前後Ｌビート分の区間にわたって行い、２Ｌ＋１通りのコード安定スコアを算出する。
【０１８３】
一方で、図６０に示すように、ビート区間ＢＤｉのコード不安定スコアは、ビート区間ＢＤｉの前後Ｌビートの各区間について１つずつ定まる要素ＣＵ（ｉ−Ｌ）〜ＣＵ（ｉ＋Ｌ）を含む。そして、各要素は、対象のビート区間と直前のビート区間の間における異なるコード名同士の全ての組合せについてのコード確率の積の合計値として計算される。例えば、ビート区間ＢＤｉ−Ｌ−１のコード確率とビート区間ＢＤｉ−Ｌのコード確率との間で異なるコード名同士のコード確率の積を合計することにより、コード不安定スコアＣＵ（ｉ−Ｌ）が算出される。同様に、ビート区間ＢＤｉ＋Ｌ−１のコード確率とビート区間ＢＤｉ＋Ｌのコード確率との間で異なるコード名同士のコード確率の積を合計することにより、コード不安定スコアＣＵ（ｉ＋Ｌ）が算出される。第１特徴量抽出部２５２は、このような計算を注目ビート区間ＢＤｉの前後Ｌビート分の区間にわたって行い、２Ｌ＋１通りのビート不安定スコアを算出する。
【０１８４】
ビート安定スコア及びビート不安定スコアを算出すると、第１特徴量抽出部２５２は、注目ビート区間ＢＤｉについて、２Ｌ＋１個の要素ごとにコード安定スコアをコード不安定スコアで除算し、コード非変化スコアを算出する。例えば、注目ビート区間ＢＤｉについてのコード安定スコアＣＣ＝（ＣＣ（ｉ−Ｌ）、…、ＣＣ（ｉ＋Ｌ））、コード不安定スコアＣＵ＝（ＣＵ（ｉ−Ｌ）、…、ＣＵ（ｉ＋Ｌ））が算出されたものとする。この場合、コード非変化スコアＣＲは、ＣＲ＝（ＣＣ（ｉ−Ｌ）／ＣＵ（ｉ−Ｌ）、…、ＣＣ（ｉ＋Ｌ）／ＣＵ（ｉ＋Ｌ））となる。このようにして算出されるコード非変化スコアは、注目ビート区間の周囲の一定の範囲内でコードの変化が少ないほど大きい値を示す。第１特徴量抽出部２５２は、このようにして音声信号に含まれる全てのビート区間についてコード非変化スコアを算出する。
【０１８５】
（ｂ）相対コードスコアについて
次に、相対コードスコアについて説明する。相対コードスコアとは、一定の範囲の区間にわたるコードの出現確率とそのパターンを表す特徴量である。相対コードスコアは、キー検出部１３８から入力されるキー進行に合わせてコード確率をシフトさせて生成される。例えば、相対コードスコアは、図６１に示すような方法で生成される。図６１の（Ａ）には、キー検出部１３８により決定されたキー進行の一例が示されている。この例では、楽曲の先頭から３分経過した時点で、楽曲のキーが“Ｂ”から“Ｃ＃ｍ”へと変化している。なお、前後Ｌビート分の区間内にキーが変化する時点を含む注目ビート区間ＢＤｉの位置も示されている。
【０１８６】
このとき、第１特徴量抽出部２５２は、キーが“Ｂ”であるビート区間については、当該ビート区間のメジャーとマイナーを含む２４次元のコード確率の要素位置をコード確率ＣＰＢが先頭に来るようにシフトさせた相対コード確率を生成する。また、第１特徴量抽出部２５２は、キーが“Ｃ＃ｍ”であるビート区間については、当該ビート区間のメジャーとマイナーを含む２４次元のコード確率の要素位置をコード確率ＣＰＣ＃ｍが先頭に来るようにシフトさせた相対コード確率を生成する。第１特徴量抽出部２５２は、このような相対コード確率を注目ビート区間の前後Ｌビート分の区間ごとに生成し、生成した相対コード確率の集合（（２Ｌ＋１）×２４次元の特徴量ベクトル）を相対コードスコアとして出力する。
【０１８７】
以上説明した（ａ）コード非変化スコア及び（ｂ）相対コードスコアよりなる第１特徴量は、第１特徴量抽出部２５２から小節線確率計算部２５６に入力される。さて、小節線確率計算部２５６には、第１特徴量の他にも、第２特徴量抽出部２５４から第２特徴量が入力される。そこで、第２特徴量抽出部２５４の構成について次に説明する。
【０１８８】
第２特徴量抽出部２５４は、後述する小節線確率の計算に用いられる特徴量として、各ビート区間について、前後Ｌビート分の区間にわたるビート確率の変化の特徴に応じた第２特徴量を抽出する。例えば、第２特徴量抽出部２５４は、図６２に示すような方法で第２特徴量を抽出する。図６２には、ビート確率算出部２０２から入力されたビート確率が時間軸に沿って示されている。また、同図には、ビート確率を解析して得られた６つのビート、及び注目ビート区間ＢＤｉが示されている。第２特徴量抽出部２５４は、このようなビート確率について、注目ビート区間ＢＤｉの前後Ｌビート分のビート区間に含まれる所定の間隔の小区間ＳＤｊごとにビート確率の平均値を算出する。
【０１８９】
例えば、音価（Ｍ分のＮ拍子のＭ）が４である拍子を主に検出する場合、図６２に示したように、小区間をビート間隔１／４及び３／４で区切る線により区分するのが好適である。その場合、１つの注目ビート区間ＢＤｉについて算出されるビート確率の平均値は、Ｌ×４＋１個となる。従って、第２特徴量抽出部２５４により抽出される第２特徴量は、注目ビート区間ごとにＬ×４＋１次元を有する。また、小区間の間隔はビート間隔の１／２となる。なお、楽曲の小節線を適切に検出するためには、少なくとも数小節程度にわたる音声信号の特徴を解析することが求められる。そのため、第２特徴量の抽出に用いるビート確率の範囲を定義するＬの値は、例えば、８ビートなどとするのが好適である。Ｌ＝８の場合、第２特徴量抽出部２５４により抽出される第２特徴量は、注目ビート区間ごとに３３次元となる。
【０１９０】
以上のようにして抽出された第２特徴量は、第２特徴量抽出部２５４から小節線確率計算部２５６に入力される。そこで、小節線確率計算部２５６は、第１特徴量及び第２特徴量を用いて、ビートごとに小節線確率を算出する。ここで言う小節線確率とは、あるビートがＸ拍子のＹ拍目である確率の集合を意味する。後段の説明においては、一例として、１／４拍子、２／４拍子、３／４拍子及び４／４拍子の各拍子の各拍数が判別の対象とされる。この場合、ＸとＹの組合せは（Ｘ，Ｙ）＝（１，１）、（２，１）、（２，２）、（３，１）、（３，２）、（３，３）、（４，１）、（４，２）、（４，３）、（４，４）の１０通り存在する。そのため、１０種類の小節線確率が算出される。
【０１９１】
なお、小節線確率計算部２５６により算出される確率値は、後述する小節線確率修正部２５８により楽曲の構造を考慮して修正される。従って、小節線確率計算部２５６により算出される確率値は、修正前の中間的なデータである。小節線確率計算部２５６による小節線確率の算出には、例えば、ロジスティック回帰分析によって予め学習された小節線確率算出式が用いられる。例えば、図６３に示すような方法により、小節線確率の計算に用いられる小節線確率算出式が生成される。なお、小節線確率算出式は、上述した小節線確率の種類ごとに生成される。例えば、１／４拍子、２／４拍子、３／４拍子及び４／４拍子の各拍数を判別することを想定すると、１０通りの小節線確率算出式が生成される。
【０１９２】
まず、ロジスティック回帰分析における独立変数として、正解の拍子（Ｘ）と拍数（Ｙ）が既知である音声信号を解析して抽出された第１特徴量と第２特徴量の組を複数用意する。次に、用意された第１特徴量と第２特徴量の組のそれぞれについて、ロジスティック回帰分析により生起確率を予測するダミーデータが用意される。例えば、１／４拍子の１拍目である確率を算出するための１／４拍子１拍目判別式を学習する場合、ダミーデータの値は、既知の拍子と拍数が（１，１）であれば真値（１）、それ以外なら偽値（０）となる。また、２／４拍子の１拍目である確率を算出するための２／４拍子１拍目判別式を学習する場合、ダミーデータの値は、既知の拍子と拍数が（２，１）であれば真値（１）、それ以外なら偽値（０）となる。その他の拍子及び拍数についても同様である。
【０１９３】
このような独立変数とダミーデータの十分な数の組を用いてロジスティック回帰分析を行うことで、第１特徴量及び第２特徴量から小節線確率を算出するための１０通りの小節線確率算出式が生成される。そして、小節線確率計算部２５６は、第１特徴量抽出部２５２及び第２特徴量抽出部２５４から入力された第１特徴量及び第２特徴量に小節線確率算出式を適用し、ビート区間ごとに小節線確率を算出する。例えば、図６４に示すような方法で小節線確率が算出される。図６４に示すように、小節線確率計算部２５６は、注目ビート区間について抽出された第１特徴量及び第２特徴量に予め取得した１／４拍子１拍目判別式を適用し、ビートが１／４拍子の１拍目である小節線確率Ｐｂａｒ’（１，１）を計算する。また、小節線確率計算部２５６は、注目ビート区間について抽出された第１特徴量及び第２特徴量に予め取得した２／４拍子１拍目判別式を適用し、ビートが２／４拍子の１拍目である小節線確率Ｐｂａｒ’（２，１）を計算する。その他の拍子及び拍数についても同様である。
【０１９４】
小節線確率計算部２５６は、このような小節線確率の計算を全てのビートについて繰返し、ビートごとの小節線確率を算出する。小節線確率計算部２５６によりビート毎に算出された小節線確率は、小節線確率修正部２５８に入力される。
【０１９５】
小節線確率修正部２５８は、楽曲構造解析部１３４から入力されるビート区間同士の類似確率に基づいて、小節線確率計算部２５６から入力される小節線確率を修正する。例えば、ｉ番目の注目ビートがＸ拍子のＹ拍目である修正前の小節線確率をＰｂａｒ’（ｉ，ｘ，ｙ）、ｉ番目のビート区間とｊ番目のビート区間との間の類似確率をＳＰ（ｉ，ｊ）とする。この場合、修正後の小節線確率Ｐｂａｒ（ｉ，ｘ，ｙ）は、下記の式（１１）で与えられる。
【０１９６】
【数１０】
2010134790.tif 000013
…（１１）
【０１９７】
上記の通り、修正後の小節線確率Ｐｂａｒ（ｉ，ｘ，ｙ）は、注目ビートに対応するビート区間と他のビート区間との間の類似確率を重みとみなし、正規化した当該類似確率を用いて修正前の小節線確率を重み付け加算した値となる。このような確率値の修正により、類似する内容の音声が演奏されているビート間の小節線確率は、修正前の小節線確率と比較して近い値となる。小節線確率修正部２５８により修正されたビートごとの小節線確率は、小節線決定部２６０に入力される。
【０１９８】
小節線決定部２６０は、小節線確率修正部２５８から入力されたビートごとのＸ拍子Ｙ拍目の小節線確率に基づいて、尤もらしい小節線の進行を経路探索により決定する。小節線決定部２６０による経路探索の手法としては、例えば、ビタビ探索アルゴリズムが用いられる。例えば、小節線決定部２６０により、図６５に示すような方法で経路探索が行われる。図６５に示すように、時間軸（横軸）にはビートが順に配置される。また、観測系列（縦軸）には、小節線確率が算出されたビートの種類（Ｘ拍子Ｙ拍目）が用いられる。小節線決定部２６０は、小節線確率修正部２５８から入力されたビートとビートの種類の全ての組合せについて、その１つ１つを経路探索の対象ノードとする。
【０１９９】
このような対象ノードに対し、小節線決定部２６０は、時間軸に沿っていずれかのノードを順に選択する。そして、小節線決定部２６０は、選択した一連のノードよりなる経路を（１）小節線確率、及び（２）拍子変化確率の２つの評価値を用いて評価する。但し、小節線決定部２６０によるノードの選択に際し、例えば、次のような制約を設けるのが好適である。第１の制約として、ビートのスキップが禁止される。第２の制約として、４拍子１拍目〜３拍目や３拍子１拍目、２拍目などの小節の途中からの他の拍子への遷移、小節の途中への他の拍子からの遷移が禁止される。第３の制約として、１拍目から３拍目若しくは４拍目、又は、２拍目から２拍目若しくは４拍目など、拍数の並びが適切でない遷移が禁止される。
【０２００】
次に、小節線決定部２６０による経路の評価に用いられる評価値のうち、（１）小節線確率は、小節線確率修正部２５８により小節線確率を修正して算出された上述の小節線確率である。小節線確率は、図６５に示した個々のノードごとに与えられる。一方、（２）拍子変化確率とは、ノード間の遷移に対して与えられる評価値である。拍子変化確率は、多数の一般的な楽曲の小節線の進行における拍子の変化の発生確率を集計することにより、変化前のビートの種類と変化後のビートの種類の組合せごとに予め定義される。
【０２０１】
例えば、図６６には、拍子変化確率の一例が示されている。例えば、図６６には、変化前の４種類の拍子と変化後の４種類の拍子から特定される計１６種類の拍子変化確率が示されている。この例において、４拍子から１拍子へ変化する拍子変化確率は０．０５、２拍子へ変化する拍子変化確率は０．０３、３拍子へ変化する拍子変化確率は０．０２、４拍子へ変化する（変化なし）拍子変化確率は０．９０である。この例のように、通常、楽曲の途中で拍子が変化する可能性は高くない。また、１拍子や２拍子については、小節線の検出の誤差により小節線が正しい位置からずれた際に小節線位置を自動的に復帰させる役目を果たすことがある。そのため、１拍子や２拍子と他の拍子との間の拍子変化確率は、３拍子や４拍子と他の拍子との間の拍子変化確率よりも高い値としておくのが好適である。
【０２０２】
小節線決定部２６０は、小節線の進行を表す各経路について、その経路に含まれる各ノードの（１）小節線確率と、ノード間の遷移に対して与えられる（２）拍子変化確率を順次乗算する。そして、小節線決定部２６０は、経路の評価値としての乗算結果が最大となる経路を尤もらしい小節線の進行を表す最尤経路に決定する。例えば、小節線決定部２６０により決定された最尤経路に基づいて小節線の進行が得られる（図６７を参照）。図６７の例では、１番目のビートから８番目のビートについて、小節線決定部２６０により最尤経路とされた小節線の進行が示されている（太線枠参照）。この例では、各ビートの種類は、１番目のビートから順に、４拍子１拍目、４拍子２拍目、４拍子３拍目、４拍子４拍目、４拍子１拍目、４拍子２拍目、４拍子３拍目、４拍子４拍目である。このようにして小節線決定部２６０により決定された小節線の進行は、小節線再決定部２６２に入力される。
【０２０３】
ところで、通常の楽曲において、ビートの種類の３拍子と４拍子が混在することは稀である。こうした事情を考慮し、小節線再決定部２６２は、まず、小節線決定部２６０から入力された小節線進行において出現したビートの種類に３拍子と４拍子とが混在しているか否かを判定する。ビートの種類に３拍子と４拍子とが混在していた場合、小節線再決定部２６２は、より出現頻度の低い拍子を探索の対象から除外して小節線の進行を示す最尤経路を再度探索する。このような小節線再決定部２６２による経路の再探索処理により、経路探索の結果部分的に発生する可能性のある小節線（ビートの種類）の認識の誤りを減少させることができる。
【０２０４】
以上、小節線検出部１４０について説明した。小節線検出部１４０で検出された小節線進行は、コード進行検出部１４２に入力される。
【０２０５】
（２−４−６．コード進行検出部１４２の構成）
次に、コード進行検出部１４２について説明する。コード進行検出部１４２には、ビート区間ごとの単純キー確率、ビート区間同士の類似確率、及び小節線進行が入力されている。そこで、コード進行検出部１４２は、これらの入力値に基づいてビート区間ごとの一連のコードにより構成される尤もらしいコード進行を決定する。図６８に示すように、コード進行検出部１４２は、ビート区間特徴量計算部２７２、ルート別特徴量準備部２７４、コード確率計算部２７６、コード確率修正部２７８、及びコード進行決定部２８０を含む。
【０２０６】
まず、ビート区間特徴量計算部２７２は、コード確率検出部１３６のビート区間特徴量計算部２３２と同様に、１２音別エネルギーを計算する。但し、ビート区間特徴量計算部２７２は、コード確率検出部１３６のビート区間特徴量計算部２３２で算出された１２音別エネルギーを取得し、それを利用してもよい。次に、ビート区間特徴量計算部２７２は、注目ビート区間の前後Ｎ区間分の１２音別エネルギーと、キー検出部１３８から入力された単純キー確率とを含む拡張ビート区間特徴量を生成する。例えば、ビート区間特徴量計算部２７２は、図６９に示すような方法で拡張ビート区間特徴量を生成する。
【０２０７】
図６９に示すように、ビート区間特徴量計算部２７２は、例えば、注目ビート区間ＢＤｉの前後Ｎ区間分の１２音別エネルギーＢＦｉ−２、ＢＦｉ−１、ＢＦｉ、ＢＦｉ＋１、ＢＦｉ＋２が抽出されている。但し、Ｎ＝２について例示している。また、注目ビート区間ＢＤｉにおける単純キー確率（ＳＫＰＣ、…、ＳＫＰＢ）が得られている。ビート区間特徴量計算部２７２は、全てのビート区間について、注目ビート区間の前後Ｎ区間分の１２音別エネルギーと単純キー確率とを含む拡張ビート区間特徴量を生成し、ルート別特徴量準備部２７４に入力する。
【０２０８】
ルート別特徴量準備部２７４は、ビート区間特徴量計算部２７２から入力される拡張ビート区間特徴量の要素位置をシフトさせ、１２通りの拡張ルート別特徴量を生成する。例えば、ルート別特徴量準備部２７４は、図７０に示すような方法で拡張ルート別特徴量を生成する。図７０に示すように、ルート別特徴量準備部２７４は、まず、ビート区間特徴量計算部２７２から入力された拡張ビート区間特徴量を、Ｃ音をルートとする拡張ルート別特徴量とみなす。次に、ルート別特徴量準備部２７４は、Ｃ音をルートとする拡張ルート別特徴量の１２音の要素位置を所定数だけシフトさせる。このシフト処理により、Ｃ＃音からＢ音までの各音程をルートとする１１通りの拡張ルート別特徴量が生成される。なお、要素位置をシフトさせる際のシフト数は、コード確率検出部１３６のルート別特徴量準備部２３４で用いられるシフト数と同様にして決定される。
【０２０９】
ルート別特徴量準備部２７４は、このような拡張ルート別特徴量生成処理を全てのビート区間について行い、各区間についてのコード確率の再計算に用いる拡張ルート別特徴量を準備する。ルート別特徴量準備部２７４により生成された拡張ルート別特徴量は、コード確率計算部２７６に入力される。
【０２１０】
コード確率計算部２７６は、ルート別特徴量準備部２７４から入力された拡張ルート別特徴量を用いて、各コードが演奏されている確率を表すコード確率をビート区間ごとに計算する。ここで言う各コードとは、例えば、ルート（Ｃ、Ｃ＃、Ｄ…）や構成音の数（三和音、四和音（７ｔｈ）、五和音（９ｔｈ））、及び長短（メジャー／マイナー）などにより区別される個々のコードのことである。コード確率の算出には、例えば、ロジスティック回帰分析による学習処理で得られる拡張コード確率算出式が用いられる。例えば、図７１に示す方法により、コード確率計算部２７６によるコード確率の再計算に用いられる拡張コード確率算出式が生成される。なお、拡張コード確率算出式の学習は、コード確率算出式と同様、学習したいコードの種類ごとに行われる。例えば、メジャーコード用の拡張コード確率算出式、マイナーコード用の拡張コード確率算出式、７ｔｈコード用の拡張コード確率算出式、及び９ｔｈコード用の拡張コード確率算出式などについて、それぞれ学習処理が行われる。
【０２１１】
まず、ロジスティック回帰分析における独立変数として、正解のコードが既知であるビート区間ごとの拡張ルート別特徴量（例えば、図７０の説明にある１２通りの１２×６次元のベクトル）を複数用意する。また、ビート区間ごとの拡張ルート別特徴量のそれぞれについて、ロジスティック回帰分析により生起確率を予測するダミーデータを用意する。例えば、メジャーコード用の拡張コード確率算出式を学習する場合、ダミーデータの値は、既知のコードがメジャーコードであれば真値（１）、それ以外なら偽値（０）となる。また、マイナーコード用の拡張コード確率算出式を学習する場合、ダミーデータの値は、既知のコードがマイナーコードであれば真値（１）、それ以外なら偽値（０）となる。７ｔｈコード、９ｔｈコードについても同様である。
【０２１２】
このような独立変数とダミーデータを用いて十分な数のビート区間ごとの拡張ルート別特徴量についてロジスティック回帰分析を行うことで、拡張ルート別特徴量から各コード確率を再計算するための拡張コード確率算出式が生成される。拡張コード確率算出式を生成すると、コード確率計算部２７６は、ルート別特徴量準備部２７４から入力された拡張ルート別特徴量に拡張コード確率算出式を適用し、ビート区間ごとにコード確率を順次算出する。例えば、コード確率計算部２７６は、図７２に示すような方法でコード確率を再計算する。
【０２１３】
図７２の（Ａ）には、ビート区間ごとの拡張ルート別特徴量のうち、Ｃ音をルートとする拡張ルート別特徴量が示されている。コード確率計算部２７６は、例えば、Ｃ音をルートとする拡張ルート別特徴量にメジャーコード用の拡張コード確率算出式を適用し、当該ビート区間についてコードが“Ｃ”であるコード確率ＣＰ’Ｃを再計算する。また、コード確率計算部２７６は、Ｃ音をルートとする拡張ルート別特徴量にマイナーコード用の拡張コード確率算出式を適用し、当該ビート区間についてコードが“Ｃｍ”であるコード確率ＣＰ’Ｃｍを再計算する。同様に、コード確率計算部２７６は、Ｃ＃音をルートとする拡張ルート別特徴量にメジャーコード用及びマイナーコード用の拡張コード確率算出式を適用し、コード確率ＣＰ’Ｃ＃及びコード確率ＣＰ’Ｃ＃ｍを再計算する（Ｂ）。コード確率ＣＰ’Ｂ、コード確率ＣＰ’Ｂｍ（Ｃ）、他の種類のコード（７ｔｈや９ｔｈ等）のコード確率の再計算についても同様である。
【０２１４】
コード確率計算部２７６は、このようなコード確率の再計算処理を全ての注目ビート区間について繰返し、再計算したコード確率をコード確率修正部２７８に入力する。
【０２１５】
コード確率修正部２７８は、楽曲構造解析部１３４から入力されるビート区間同士の類似確率に基づいて、コード確率計算部２７６により再計算されたコード確率を修正する。例えば、ｉ番目の注目ビート区間のコードＸのコード確率をＣＰ’Ｘ（ｉ）、ｉ番目のビート区間とｊ番目のビート区間との間の類似確率をＳＰ（ｉ，ｊ）とする。そうすると、修正後のコード確率ＣＰ’’Ｘ（ｉ）は、下記の式（１２）で与えられる。
【０２１６】
【数１１】
2010134790.tif 000014
…（１２）
【０２１７】
つまり、修正後のコード確率ＣＰ’’Ｘ（ｉ）は、注目ビートに対応するビート区間と他のビート区間との間の類似確率を重みとみなし、正規化した当該類似確率を用いてコード確率を重み付け加算した値となる。このような確率値の修正により、コード確率は、類似する内容の音声が演奏されているビート区間の間で修正前よりも近い値となる。コード確率修正部２７８により修正されたビート区間ごとのコード確率は、コード進行決定部２８０に入力される。
【０２１８】
コード進行決定部２８０は、コード確率修正部２７８から入力されたビート位置ごとのコード確率に基づいて、尤もらしいコード進行を経路探索により決定する。コード進行決定部２８０による経路探索の手法としては、例えば、ビタビ探索アルゴリズムが用いられる。例えば、図７３に示すような方法で経路探索が行われる。図７３に示すように、時間軸（横軸）にはビートが順に配置される。また、観測系列（縦軸）には、コード確率が算出されたコードの種類が用いられる。そして、コード進行決定部２８０は、コード確率修正部２７８から入力されたビート区間とコードの種類の全ての組合せについて、その１つ１つを経路探索の対象ノードとする。
【０２１９】
上記の各ノードに対し、コード進行決定部２８０は、時間軸に沿っていずれかのノードを順に選択する。そして、コード進行決定部２８０は、選択した一連のノードよりなる経路を（１）コード確率、（２）キーに応じたコード出現確率、（３）小節線に応じたコード遷移確率、及び（４）キーに応じたコード遷移確率の４つの評価値で評価する。但し、コード進行決定部２８０によるノードの選択に際し、ビートのスキップは禁止される。
【０２２０】
コード進行決定部２８０による経路の評価に用いられる評価値のうち、（１）コード確率は、コード確率修正部２７８により修正されたコード確率である。コード確率は、図７３に示した個々のノードに対して与えられる。また、（２）キーに応じたコード出現確率は、キー検出部１３８から入力されるキー進行によりビート区間ごとに特定されるキーに応じた各コードの出現確率である。キーに応じたコード出現確率は、多数の楽曲におけるコードの出現確率をキーの種類ごとに集計することで予め定義される。通常、キーがＣ音の楽曲においては、コード“Ｃ”、“Ｆ”、“Ｇ”の各コードの出現確率が高い。なお、キーに応じたコード出現確率は、図７３に示した個々のノードに対して与えられる。
【０２２１】
また、（３）小節線に応じたコード遷移確率とは、小節線検出部１４０から入力される小節線進行によりビートごとに特定されるビートの種類に応じたコードの遷移確率である。小節線に応じたコード遷移確率は、多数の楽曲におけるコードの遷移確率をその楽曲の小節線進行において隣り合うビートの種類ごとに集計することで予め定義される。通常、小節の変わり目（遷移後が１拍目）や４拍子の２拍目から３拍目への遷移に際してコードが変化する確率は、他の遷移に際してコードが変化する確率よりも高い。なお、小節線に応じたコード遷移確率は、ノード間の遷移に対して与えられる。また、（４）キーに応じたコード遷移確率とは、キー検出部１３８から入力されるキー進行によりビート区間ごとに特定されるキーに応じたコードの遷移確率である。キーに応じたコード遷移確率は、多数の楽曲におけるコードの遷移確率をその楽曲のキーの種類ごとに集計することで予め定義される。キーに応じたコード遷移確率は、ノード間の遷移に対して与えられる。
【０２２２】
コード進行決定部２８０は、図７３を用いて説明したコード進行を表す各経路について、その経路に含まれる各ノードの上記（１）〜（４）の評価値を順次乗算する。そして、コード進行決定部２８０は、経路の評価値としての乗算結果が最大となる経路を尤もらしいコード進行を表す最尤経路に決定する。例えば、コード進行決定部２８０は、最尤経路を決定することで、図７４に示すようなコード進行を得ることができる。図７４の例では、１〜６番目のビート区間及びｉ番目のビート区間について、コード進行決定部２８０により最尤経路とされたコード進行が示されている（太線枠参照）。この例の場合、ビート区間ごとのコードは、１番目のビート区間から順に、“Ｃ”、“Ｃ”、“Ｆ”、“Ｆ”、“Ｆｍ”、“Ｆｍ”、…、“Ｃ”である。
【０２２３】
以上、コード進行検出部１４２の構成について詳細に説明した。上記の通り、楽曲構造解析部１３４からコード進行検出部１４２までの処理を経て、楽曲データからコード進行が検出される。このようにして抽出されたコード進行は、メタデータ保存部１１２に保存される。
【０２２４】
（２−４−７．メロディー検出部１４４の構成）
次に、メロディー検出部１４４について説明する。メロディー検出部１４４は、ログスペクトル解析部１０８から入力された楽曲データのログスペクトルに基づいてメロディーラインを検出する手段である。図７５に示すように、メロディー検出部１４４は、メロディー確率推定部２８２と、分類推定部２８４と、音程分布推定部２８６と、メロディーライン決定部２８８と、平滑化部２９０とを含む。また、メロディーライン決定部２８８には、キー検出部１３８で検出されたキーの情報が入力される。さらに、平滑化部２９０には、ビート検出部１３２で検出されたビート位置の情報が入力される。以下、分類推定部２８４、音程分布推定部２８６、メロディー確率推定部２８２、メロディーライン決定部２８８、平滑化部２９０の順に、各構成要素の機能について詳細に説明する。
【０２２５】
（分類推定部２８４）
まず、分類推定部２８４について説明する。分類推定部２８４は、楽曲の信号が入力された際に、その入力信号が属する楽曲の分類を推定する手段である。後述するように、各入力信号が属する楽曲の分類を考慮することで、後段で実施されるメロディーラインの検出処理において検出精度を高めることが可能になる。楽曲は、例えば、図７６に示すように、「古い曲」「男性ボーカル、バックグラウンド（ＢＧ）大」「男性ボーカル、バックグラウンド（ＢＧ）小」「女性ボーカル、バックグラウンド（ＢＧ）大」等に分類される。例えば、「古い曲」は、録音時点における録音機器や音響設備の技術レベルが現在とは異なるため、音質が悪かったり、バックグラウンドの音量割合が小さいという特徴を持つ。その他の分類についても、分類毎に図７６に示すような特徴が存在する。そこで、こうした楽曲の特徴毎に入力信号の分類が行われる。なお、楽曲の分類は、図７６に例示したものに限定されない。例えば、声質等に基づいて、より細分化された分類を用いることも可能である。
【０２２６】
さて、分類推定部２８４は、楽曲の分類を推定するために、図７７に示すような処理を実行する。まず、分類推定部２８４は、評価データとして用いる複数の音声信号（曲１、…、曲４）をログスペクトル解析部１０８でログスペクトルに変換させる。そして、分類推定部２８４は、複数の音声信号（曲１、…、曲４）のログスペクトルを評価データとして特徴量計算式生成装置１０に入力する。また、評価データとして用いる各音声信号（曲１、…、曲４）の分類は、図７７に示すように分類値（０又は１）として与えられている。但し、分類値０は非該当、分類値１は該当を表す。例えば、音声信号（曲１）は、分類「古い曲」「男性ボーカル、ＢＧ小」には該当せず、「男性ボーカル、ＢＧ大」に該当する。分類推定部２８４は、特徴量計算式生成装置１０を用いて、このような分類値を算出する推定アルゴリズム（計算式）を生成する。
【０２２７】
そのため、分類推定部２８４は、特徴量計算式生成装置１０に対し、複数の音声信号（曲１、…、曲４）のログスペクトルを評価データとして入力すると共に、教師データとして各分類の分類値を入力する。従って、特徴量計算式生成装置１０には、評価データとして音声信号（曲１、…、曲４）のログスペクトル、及び教師データとして各音声信号に対する各分類の分類値が入力される。なお、各音声信号に対応する評価データには、１曲分のログスペクトルが用いられる。このような評価データ及び教師データが入力されると、特徴量計算式生成装置１０は、任意の音声信号のログスペクトルから各分類の分類値を算出するための計算式ＧＡを分類毎に生成する。このとき、特徴量計算式生成装置１０は、最終的に出力された各計算式ＧＡの評価値（確率）を同時に出力する。
【０２２８】
特徴量計算式生成装置１０で分類毎の計算式ＧＡが生成されると、分類推定部２８４は、実際に分類したい曲（実施曲）の音声信号をログスペクトル解析部１０８でログスペクトルに変換させる。そして、分類推定部２８４は、特徴量計算式生成装置１０で生成された分類毎の計算式ＧＡに実施曲のログスペクトルを入力し、実施曲に対する各分類の分類値を算出する。各分類の分類値が算出されると、分類推定部２８４は、分類値が最も高い分類に実施曲を分類する。但し、分類推定部２８４は、分類の際に各計算式の確率を考慮するように構成されていてもよい。この場合、分類推定部２８４は、各分類に対応する計算式で算出された分類値と当該計算式の確率とを用いて、分類毎に実施曲がその分類に該当する確率（以下、該当確率）を算出する。そして、分類推定部２８４は、該当確率が最も高い分類に実施曲を割り振る。その結果、図７７に例示するような分類結果が得られる。このようにして得られた分類結果は、音程分布推定部２８６、メロディー確率推定部２８２、及びメロディーライン決定部２８８に入力される。
【０２２９】
（音程分布推定部２８６）
次に、図７８及び図７９を参照しながら、音程分布推定部２８６の構成について説明する。音程分布推定部２８６は、メロディーラインの分布を自動推定する手段である。メロディーラインの分布は、経時変動するメロディーラインの各区間で算出される期待値及び曲全体で算出される標準偏差により表現される。このようなメロディーラインの分布をログスペクトルから推定するために、音程分布推定部２８６は、特徴量計算式生成装置１０を用いて各区間におけるメロディーラインの期待値を算出するための計算式を生成する。
【０２３０】
まず、音程分布推定部２８６は、分類推定部２８４と同様に、複数の音声信号のログスペクトルを評価データとして特徴量計算式生成装置１０に入力する。さらに、音程分布推定部２８６は、教師データとして各音声信号の正解メロディーラインを区間毎に切り出し（図７８を参照）、特徴量計算式生成装置１０に入力する。このようにして評価データ及び教師データが入力されると、特徴量計算式生成装置１０から各区間におけるメロディーラインの期待値を算出するための計算式が出力される。また、分類推定部２８４は、評価データとして用いた各音声信号のログスペクトルについて、計算式で算出される出力値と、教師データとして用いた正解メロディーラインとの間の誤差を算出する。さらに、分類推定部２８４は、取得した誤差を正規分布で近似してメロディーラインの標準偏差を算出する。音程分布推定部２８６で算出されたメロディーラインの期待値及び標準偏差で規定される範囲は、例えば、図７９に示すグラフのように表現される。
【０２３１】
このように、音程分布推定部２８６は、ログスペクトルの区間（時間断片）から当該区間のメロディーラインを推定する計算式を特徴量計算式生成装置１０により生成し、その計算式を用いてメロディーラインの分布を推定する。このとき、音程分布推定部２８６は、分類推定部２８４で推定された楽曲の分類毎に計算式を生成する。そして、音程分布推定部２８６は、時間を少しずつシフトさせながらログスペクトルの時間断片を切り出し、切り出したログスペクトルを計算式に入力してメロディーラインの期待値及び標準偏差を算出する。その結果、メロディーラインの区間毎にメロディーラインの推定値が算出される。例えば、時刻ｔの部分ログスペクトルＷｔが入力された場合にメロディーが音程ｏをとる確率Ｐ（ｏ｜Ｗｔ）が推定値として算出される。このようにして音程分布推定部２８６で算出されたメロディーラインの推定値は、メロディーライン決定部２８８に入力される。
【０２３２】
（メロディー確率推定部２８２）
次に、図８０〜図８２を参照しながら、メロディー確率推定部２８２の構成について説明する。メロディー確率推定部２８２は、ログスペクトル解析部１０８から出力されるログスペクトルをメロディー確率に変換する手段である。例えば、メロディー確率推定部２８２は、図８０の（Ａ）に示すログスペクトルを同図（Ｂ）に示すメロディー確率分布に変換する。つまり、メロディー確率推定部２８２は、ログスペクトルに基づき、時間−音程空間の各座標位置におけるメロディー確率を算出する。なお、ここで言うメロディー確率は、各座標位置におけるログスペクトルの値がメロディーラインのものである確率を表している。まず、メロディー確率推定部２８２は、各座標位置のメロディー確率を推定するため、事前に正解メロディーラインが分かっている楽曲データのログスペクトルを用いてロジスティック回帰を行う。このロジスティック回帰により、ログスペクトルからメロディー確率を算出するための関数ｆが得られる。そして、メロディー確率推定部２８２は、求めた関数を用いて図８０（Ｂ）のようなメロディー確率分布を算出する。
【０２３３】
ここで、図８１及び図８２を参照しながら、メロディー確率推定部２８２による上記の関数ｆの生成方法、及び関数ｆを用いたメロディー確率の算出方法について、より詳細に説明する。まず、図８１に示すように、メロディー確率推定部２８２は、ログスペクトルの値が定義される時間−音程空間上で、メロディー確率を推定しようとする座標位置（以下、推定位置）を基準として所定サイズの範囲（以下、参照範囲）を選択する。例えば、メロディー確率推定部２８２は、各推定位置を基準に、音程軸方向に−１２〜＋３６セミトーン分、時間軸方向に−２〜＋２フレーム分の参照範囲を選択する。図８１には、メロディー確率推定部２８２により選択された参照範囲の一例が模式的に示されている。この例においては、黒で塗り潰された座標位置が推定位置であり、その周囲のハッチング処理が施された部分が参照範囲である。
【０２３４】
このようにして座標位置毎に参照範囲を選択すると、メロディー確率推定部２８２は、選択した参照範囲の各座標位置に対応するログスペクトル値（エネルギー）の対数値を算出する。さらに、メロディー確率推定部２８２は、算出した各座標位置に対応する対数値の参照範囲内における平均値が０になるように、各座標位置の対数値を正規化する。正規化後の対数値ｘ（図８１の例では、ｘ＝（ｘ１，…，ｘ２４５）；４９音程×５フレーム分）は、メロディー確率を推定する関数ｆ（ｘ）の生成処理に用いられる。関数ｆ（ｘ）の生成処理は、正解メロディーラインが事前に与えられている複数の楽曲データ（以下、学習用楽曲データ）を用いて実行される。まず、メロディー確率推定部２８２は、学習用楽曲データのログスペクトルを利用し、各推定位置について正規化後の対数値ｘ（以下、正規化対数値ｘ）を算出する。さらに、メロディー確率推定部２８２は、各参照範囲に正解メロディーラインが含まれるか否かを判定する。以下、参照範囲に正解メロディーラインが含まれる場合の判定結果をＴｒｕｅと表現し、含まれない場合の判定結果をＦａｌｓｅと表現することにする。
【０２３５】
正規化対数値ｘ及び判定結果が得られると、メロディー確率推定部２８２は、これらの結果を利用し、「正規化対数値ｘが入力された場合に当該正規化対数値ｘに対応する参照範囲の判定結果がＴｒｕｅである確率を出力する関数ｆ（ｘ）」を生成する。メロディー確率推定部２８２は、例えば、ロジスティック回帰を用いることで関数ｆ（ｘ）を生成することができる。ロジスティック回帰とは、判定結果がＴｒｕｅ又はＦａｌｓｅになる確率のロジットが入力変数の線形結合で表現できるものと仮定して結合係数を回帰分析により算出する方法である。例えば、入力変数をｘ＝（ｘ１，…，ｘｎ）、判定結果がＴｒｕｅとなる確率をＰ（Ｔｒｕｅ）、結合係数をβ０，…，βｎと表現すると、ロジスティック回帰モデルは、下記の式（１３）のように表現される。下記の式（１３）を変形すると下記の式（１４）のようになり、入力変数ｘから判定結果Ｔｒｕｅの確率Ｐ（Ｔｒｕｅ）を算出するための関数ｆ（ｘ）が求められる。
【０２３６】
【数１２】
2010134790.tif 000015
…（１３）
2010134790.tif 000016
…（１４）
【０２３７】
そこで、メロディー確率推定部２８２は、学習用楽曲データから各参照範囲について得られた正規化対数値ｘ＝（ｘ１，…，ｘ２４５）、及び判定結果を上記の式（１４）に入力し、結合係数β０，…，β２４５を算出する。このようにして結合係数β０，…，β２４５が決定されることで、正規化対数値ｘから判定結果がＴｒｕｅとなる確率Ｐ（Ｔｒｕｅ）を算出するための関数ｆ（ｘ）が得られる。但し、関数ｆ（ｘ）が０．０〜１．０の範囲で定義される確率であり、かつ、同じ時間で正解メロディーラインの音程が１つであるから、関数ｆ（ｘ）は、同じ時間で合計した値が１になるように正規化される。また、関数ｆ（ｘ）は、楽曲の分類毎に生成される方が好ましい。そこで、メロディー確率推定部２８２は、分類毎に与えられた学習用楽曲データを用いて各分類の関数ｆ（ｘ）を算出する。
【０２３８】
このような方法で分類毎に関数ｆ（ｘ）を生成しておき、メロディー確率推定部２８２は、実施曲データのログスペクトルが入力された場合に、分類推定部２８４から入力された実施曲データの分類を考慮して関数ｆ（ｘ）を選択する。例えば、実施曲が「古い曲」に分類された場合、「古い曲」の学習用楽曲データから得られた関数ｆ（ｘ）が選択される。そして、メロディー確率推定部２８２は、実施曲データのログスペクトル値を正規化対数値ｘに変換した上で、選択した関数ｆ（ｘ）によりメロディー確率を算出する。時間−音程空間内の各座標位置についてメロディー確率推定部２８２によりメロディー確率が算出されると、図８０の（Ｂ）に示すようなメロディー確率分布が得られる。このようにして得られたメロディー確率分布は、メロディーライン決定部２８８に入力される。
【０２３９】
（関数ｆ（ｘ）生成処理の流れについて）
ここで、図８２を参照しながら、メロディー確率推定部２８２による関数ｆ（ｘ）の生成方法について、その処理の流れを簡単に纏めておくことにする。
【０２４０】
図８２に示すように、まず、メロディー確率推定部２８２は、時間軸方向にループ処理を開始する（Ｓ１４２）。このとき、時間軸方向の推定位置を表す時間ｔ（フレーム番号ｔ）が設定される。次いで、メロディー確率推定部２８２は、音程軸方向にループ処理を開始する（Ｓ１４４）。このとき、音程軸方向の推定位置を表す音程ｏが設定される。次いで、メロディー確率推定部２８２は、ステップＳ１４２、Ｓ１４４において設定した時間ｔ、音程ｏで表される推定位置の参照範囲について、正規化対数値ｘを求める（Ｓ１４６）。例えば、推定位置（ｔ，ｏ）の周辺（ｔ−２〜ｔ＋２，ｏ−１２〜ｏ＋３６）が参照範囲に設定され、正規化対数値ｘ＝｛ｘ（ｔ＋Δｔ，ｏ＋Δｏ）；−２≦Δｔ≦２，−１２≦ｏ≦３６｝が算出される。次いで、メロディー確率推定部２８２は、事前に学習用楽曲データを用いて学習処理により求めた関数ｆ（ｘ）を用いて時間ｔ、音程ｏのメロディー確率を算出する（Ｓ１４８）。
【０２４１】
ステップＳ１４６、Ｓ１４８の処理により、時間ｔ、音程ｏで表される推定位置のメロディー確率が推定された。そこで、メロディー確率推定部２８２は、再びステップＳ１４４の処理に戻り（Ｓ１５０）、推定位置の音程ｏを１セミトーンだけインクリメントしてステップＳ１４６、Ｓ１４８の処理を繰り返す。メロディー確率推定部２８２は、推定位置の音程ｏを１セミトーンずつインクリメントしながら、所定の音程範囲（例えば、ｏ＝１２〜７２）についてステップＳ１４６、Ｓ１４８の処理を実行する。所定の音程範囲についてステップＳ１４６、Ｓ１４８の処理が実行された後、メロディー確率推定部２８２は、ステップＳ１５２の処理に進行する。
【０２４２】
ステップＳ１５２において、メロディー確率推定部２８２は、時間ｔのメロディー確率の和が１になるように正規化する（Ｓ１５２）。つまり、ステップＳ１４２で設定された推定位置の時間ｔについて、所定の音程範囲について算出されたメロディー確率の和が１になるように、ステップＳ１５２で各音程ｏのメロディー確率が正規化される。次いで、メロディー確率推定部２８２は、再びステップＳ１４２の処理に戻り（Ｓ１５４）、推定位置の時間ｔを１フレームだけインクリメントしてステップＳ１４４〜Ｓ１５２の処理を繰り返す。メロディー確率推定部２８２は、推定位置の時間ｔを１フレームずつインクリメントしながら、所定の時間範囲（例えば、ｔ＝１〜Ｔ）についてステップＳ１４４〜Ｓ１５２の処理を実行する。所定の時間範囲についてステップＳ１４４〜Ｓ１５２の処理が実行された後、メロディー確率推定部２８２は、メロディー確率の推定処理を終了する。
【０２４３】
（メロディーライン決定部２８８）
次に、図８３〜図８５を参照しながら、メロディーライン決定部２８８の構成について説明する。メロディーライン決定部２８８は、メロディー確率推定部２８２で推定されたメロディー確率、及び音程分布推定部２８６で推定されたメロディーラインの期待値や標準偏差等に基づいて尤もらしいメロディーラインを決定する手段である。尤もらしいメロディーラインを決定するために、メロディーライン決定部２８８は、時間−音程空間内でメロディー確率が高い経路の探索処理を実行する。ここで実行する経路探索には、音程分布推定部２８６で算出されたＰ（ｏ｜Ｗｔ）、及び、以下に示すような確率ｐ（Δｏ）、ｐ（ｎｔ｜ｎｔ−１）が用いられる。既に述べた通り、確率Ｐ（ｏ｜Ｗｔ）は、ある時刻ｔでメロディーが音程ｏをとる確率を表す。
【０２４４】
まず、メロディーライン決定部２８８は、各楽曲データの正解メロディーラインにおいて変化量Δｏの音程遷移が出現する割合を算出する。多数の楽曲データで各音程遷移Δｏの出現割合を算出すると、メロディーライン決定部２８８は、各音程遷移Δｏについて、これら全ての楽曲データにおける出現割合の平均値及び標準偏差を算出する。そして、メロディーライン決定部２８８は、上記のようにして算出した各音程遷移Δｏに関する出現割合の平均値及び標準偏差を利用し、当該平均値及び標準偏差を持つガウス分布で確率ｐ（Δｏ）を近似する。
【０２４５】
次に、確率ｐ（ｎｔ｜ｎｔ−１）について説明する。確率ｐ（ｎｔ｜ｎｔ−１）は、音程ｎｔ−１から音程ｎｔに遷移する際の遷移方向を考慮した確率を表す。なお、音程ｎｔは、Ｃｄｏｗｎ、Ｃ＃ｄｏｗｎ、…、Ｂｄｏｗｎ、Ｃｕｐ、Ｃ＃ｕｐ、…、Ｂｕｐのいずれかの値をとる。ここで、ｄｏｗｎは音程が下がることを示し、ｕｐは音程が上がることを示す。一方、ｎｔ−１は、音程の上がり下がりを考慮せず、Ｃ、Ｃ＃、…、Ｂの値をとる。例えば、確率ｐ（Ｄｕｐ｜Ｃ）は、音程Ｃから音程Ｄに上がる確率を示す。但し、確率（ｎｔ｜ｎｔ−１）は、実際のキー（例えば、Ｄ）を所定のキー（例えば、Ｃ）にシフトさせて利用される。例えば、現在のキーがＤで所定のキーがＣの場合、Ｆ＃→Ａｄｏｗｎの遷移確率としては、キーをシフトすることでＦ＃がＥに変更され、ＡがＧに変更されるため、確率ｐ（Ｇｄｏｗｎ｜Ｅ）が参照される。
【０２４６】
さて、確率ｐ（ｎｔ｜ｎｔ−１）についても確率ｐ（Δｏ）の場合と同様にして、メロディーライン決定部２８８は、各楽曲データの正解メロディーラインにおいて各音程遷移ｎｔ−１→ｎｔが出現する割合を算出する。多数の楽曲データで各音程遷移ｎｔ−１→ｎｔの出現割合を算出すると、メロディーライン決定部２８８は、各音程遷移ｎｔ−１→ｎｔについて、これら全ての楽曲データにおける出現割合の平均値及び標準偏差を算出する。そして、メロディーライン決定部２８８は、上記のようにして算出した各音程遷移ｎｔ−１→ｎｔに関する出現割合の平均値及び標準偏差を利用し、当該平均値及び標準偏差持つガウス分布で確率ｐ（ｎｔ｜ｎｔ−１）を近似する。
【０２４７】
これらの確率を概念的に示したものが図８４である。図８４の例では、メロディーラインの現在の音程がＣ４である。時間ｔ１においてメロディーラインの音程が遷移する場合、遷移確率としては、確率ｐ（Δｏ）、ｐ（ｎｔ｜ｎｔ−１）が参照される。例えば、音程Ｃ４から音程Ｄ４に遷移する場合、音程間の差は＋２セミトーンである。また、図８４の例では、同じオクターブ間で音程が上がる方向に遷移している。従って、確率ｐ（Δｏ＝＋２）、確率ｐ（Ｄｕｐ｜Ｃ）が参照される。一方、音程Ｃ４から音程Ｇ３に遷移する場合、音程間の差は−５セミトーンである。また、図８４の例では、オクターブを跨いで音程が下がる方向に遷移している。従って、確率ｐ（Δｏ＝−２）、確率ｐ（Ｇｄｏｗｎ｜Ｃ）が参照される。同様に、時間ｔ１においてメロディーが音程Ｄ４に遷移し、時間ｔ２においてメロディーが音程Ｇ３に遷移する場合を考えると、確率ｐ（Δｏ＝−７）、確率ｐ（Ｇｄｏｗｎ｜Ｄ）が参照される。また、各音程Ｃ４、Ｄ４、Ｇ３における確率としては、確率Ｐ（ｏ｜Ｗｔ）が参照される。
【０２４８】
さて、上記のようにして得られた確率Ｐ（ｏ｜Ｗｔ）、ｐ（Δｏ）、ｐ（ｎｔ｜ｎｔ−１）を用いてメロディーラインが決定される。但し、確率ｐ（ｎｔ｜ｎｔ−１）を利用するにはメロディーラインを推定しようとする楽曲データのキーが必要になるが、上記の通り、キーは、キー検出部１３８により与えられている。そこで、メロディーライン決定部２８８は、キー検出部１３８から与えられるキーを用いて後述するメロディーラインの決定処理を実行する。
【０２４９】
メロディーライン決定部２８８は、ビタビ（Ｖｉｔｅｒｂｉ）探索を用いてメロディーラインを決定する。ビタビ探索自体は、隠れマルコフモデル（Ｈｉｄｄｅｎ  Ｍａｒｋｏｖ  Ｍｏｄｅｌ）に基づく良く知られた経路探索手法である。メロディーライン決定部２８８によるビタビ探索には、確率Ｐ（ｏ｜Ｗｔ）、ｐ（Δｏ）、ｐ（ｎｔ｜ｎｔ−１）の他に、メロディー確率推定部２８２で推定された各推定位置におけるメロディー確率が用いられる。以下の説明においては、時間ｔ、音程ｏにおける上記のメロディー確率をｐ（Ｍｔ｜ｏ，ｔ）と表すことにする。これらの確率を用いると、ある時点ｔで音程ｏがメロディーである確率Ｐ（ｏ，ｔ）は、下記の式（１５）のように表現される。そして、音程ｏから同じ音程ｏに遷移する確率Ｐ（ｔ＋Δｔ，ｏ｜ｔ，ｏ）は、下記の式（１６）のように表現される。さらに、音程ｏから異なる音程ｏ＋Δｏに遷移する確率Ｐ（ｔ＋Δｔ，ｏ＋Δｏ｜ｔ，ｏ）は、下記の式（１７）のように表現される。
【０２５０】
【数１３】
2010134790.tif 000017
…（１５）
2010134790.tif 000018
…（１６）
2010134790.tif 000019
…（１７）
【０２５１】
このような表現を用いると、ノードｑ１（時刻ｔ１、音程ｏ２７）→ｑ２（時刻ｔ２、音程ｏ２６）と辿った場合の確率Ｐ（ｑ１，ｑ２）は、Ｐ（ｑ１，ｑ２）＝ｐ（ｎｔ２｜ｎｔ１）ｐ（Δｏ＝−１）ｐ（Ｍ１｜ｏ２７，ｔ１）ｐ（ｏ２７｜Ｗｔ１）と表される。そして、楽曲の最初から最後までの時間に関し、上記のように表現される確率が最大となるような経路が尤もらしいメロディーラインとして抽出される。但し、メロディーライン決定部２８８は、各ビタビ経路に関する確率の対数値を経路探索の基準とする。例えば、ｌｏｇ（Ｐ（ｑ１，ｑ２））は、ｌｏｇ（ｐ（ｎｔ２｜ｎｔ１））＋ｌｏｇ（ｐ（Δｏ＝−１））＋ｌｏｇ（ｐ（Ｍ１｜ｏ２７，ｔ１））＋ｌｏｇ（ｐ（ｏ２７｜Ｗｔ１））のような各対数値の和が用いられる。
【０２５２】
また、メロディーライン決定部２８８は、ビタビ探索の基準として単純に対数値の和を用いるのではなく、確率の種類に応じて重み付けし、重み付け加算された対数値を基準に利用するように構成されていてもよい。例えば、メロディーライン決定部２８８は、通過したノードのｌｏｇ（ｐ（Ｍｔ｜ｏ，ｔ））、ｂ１＊ｌｏｇ（ｐ（ｏ｜Ｗｔ））、通過したノード間遷移のｂ２＊ｌｏｇ（ｐ（ｎｔ｜ｎｔ−１））、ｂ３＊ｌｏｇ（ｐ（Δｏ））を加算してビタビ探索の基準とする。但し、ｂ１、ｂ２、ｂ３は確率の種類毎に与えられる重みパラメータである。つまり、メロディーライン決定部２８８は、楽曲の最初から最後までの時間について、上記の重み付き対数加算値を計算し、その対数加算値が最大の経路を抽出する。そして、メロディーライン決定部２８８で抽出された経路がメロディーラインに決定される。
【０２５３】
なお、ビタビ探索に用いる確率及び重みパラメータは、分類推定部２８４で推定された楽曲の分類に応じて異なるものが用いられる方が好ましい。例えば、「古い曲」と分類された楽曲のメロディーラインに対するビタビ探索には、予め正解メロディーラインの与えられた大量の「古い曲」から求められた確率、及び「古い曲」用にチューニングされたパラメータが用いられる方が好ましい。このようにしてメロディーライン決定部２８８で決定されたメロディーラインは、平滑化部２９０に入力される。
【０２５４】
（平滑化部２９０）
次に、平滑化部２９０の構成について説明する。平滑化部２９０は、メロディーライン決定部２８８で決定されたメロディーラインを楽曲のビートで定められる区間毎に平滑化する手段である。なお、平滑化部２９０は、ビート検出部１３２から与えられるビート位置に基づいて平滑化処理を実行する。平滑化部２９０は、例えば、８部音符毎にメロディーラインの投票を行い、最も頻度の高い音程をメロディーラインとする。各ビート区間には、メロディーラインとして複数の音程が含まれていることがある。そこで、平滑化部２９０は、メロディーラインに決定された音程の出現頻度をビート区間毎に検出し、最も出現頻度が多い音程で各ビート区間の音程を平滑化するのである。このようにしてビート区間毎に平滑化された音程がメロディーラインとしてメタデータ保存部１１２に保存される。
【０２５５】
（２−４−８．ベース検出部１４６の構成）
次に、ベース検出部１４６について説明する。ベース検出部１４６は、上記のメロディー検出部１４４と同様の方法で楽曲データからベースラインを検出する手段である。図８６に示すように、ベース検出部１４６は、ベース確率推定部２９２と、ベースライン決定部２９４と、平滑化部２９６とを含む。なお、ベース確率推定部２９２、及びベースライン決定部２９４には、分類推定部２８４から楽曲データの分類が入力される。また、ベースライン決定部２９４には、音程分布推定部２８６から音程分布に関する情報が入力される。但し、音程分布推定部２８６から入力される音程分布はベースラインに関するものである。また、ベースライン決定部２９４には、キー検出部１３８からキーが入力される。さらに、平滑化部２９６には、ビート検出部１３２からビート位置の情報が入力される。
【０２５６】
（ベース確率推定部２９２）
まず、ベース確率推定部２９２について説明する。ベース確率推定部２９２は、ログスペクトル解析部１０８から出力されるログスペクトルをベース確率に変換する手段である。なお、ここで言うベース確率は、各座標位置におけるログスペクトルの値がベースラインのものである確率を表している。まず、ベース確率推定部２９２は、各座標位置のベース確率を推定するため、事前に正解ベースラインが分かっている楽曲データのログスペクトルを用いてロジスティック回帰を行う。このロジスティック回帰により、ログスペクトルからメロディー確率を算出するための関数ｆが得られる。そして、ベース確率推定部２９２は、求めた関数を用いてベース確率の分布を算出する。つまり、ベース確率推定部２９２の処理は、メロディー確率推定部２８２によるメロディー確率の算出処理をベース確率の算出処理に置き換えた点を除き、実質的に同じものである。従って、詳細な説明は省略する。
【０２５７】
（ベースライン決定部２９４）
次に、ベースライン決定部２９４について説明する。ベースライン決定部２９４は、ベース確率推定部２９２で推定されたベース確率、及び音程分布推定部２８６で推定されたベースラインの期待値や標準偏差等に基づいて尤もらしいベースラインを決定する手段である。なお、音程分布推定部２８６におけるベースラインに関する分布推定は、学習用データとして用いる教師データをベースラインのものに置き換えることでメロディーラインの場合と同様に実現することができる。さて、尤もらしいベースラインを決定するために、ベースライン決定部２９４は、時間−音程空間内でベース確率が高い経路の探索処理を実行する。ここで実行される探索処理は、メロディー確率をベース確率に置き換えることでメロディーライン決定部２８８による探索処理と実質的に同じ方法で実現される。そのため、詳細な説明は省略する。
【０２５８】
（平滑化部２９６）
次に、平滑化部２９６の構成について説明する。平滑化部２９６は、ベースライン決定部２９４で決定されたベースラインを楽曲のビートで定められる区間毎に平滑化する手段である。なお、平滑化部２９６は、ビート検出部１３２から与えられるビート位置に基づいて平滑化処理を実行する。平滑化部２９６は、例えば、８部音符毎にベースラインの投票を行い、最も頻度の高い音程をベースラインとする。各ビート区間には、ベースラインとして複数の音程が含まれていることがある。そこで、平滑化部２９６は、ベースラインに決定された音程の出現頻度をビート区間毎に検出し、最も出現頻度が多い音程で各ビート区間の音程を平滑化するのである。このようにしてビート区間毎に平滑化された音程がベースラインとしてメタデータ保存部１１２に保存される。
【０２５９】
（２−４−９．メタデータ検出部１４８の構成）
次に、メタデータ検出部１４８の構成について説明する。メタデータ検出部１４８は、所定の時間単位で楽曲データが持つ１つの特徴を表す時系列メタデータ、及び１曲単位で楽曲データが持つ１つの特徴を表す１曲毎メタデータを抽出する手段である。
【０２６０】
時系列メタデータとしては、例えば、各楽器音の存在確率、各楽器音がソロ演奏である確率（以下、ソロ確率）、ボーカルの音質等がある。また、楽器音の種類としては、セクション毎に、ボーカル、ギター、ベース、キーボード、ドラム、ストリングス、ブラス、コーラス等がある。さらに細かく言えば、ドラム音には、スネア、キック、タム、ハイハット、シンバルがある。つまり、このような各種類の楽器音に対する存在確率やソロ確率が時系列メタデータとして抽出される。また、ボーカルの音声に関する時系列メタデータとしては、シャウトしているか否かがメタデータとして抽出される。一方、１曲毎メタデータとしては、楽曲データが所定のジャンルに属する確率、１曲全体での各楽器音の存在確率、楽曲の曲調等がある。所定のジャンルとしては、例えば、ロック、ポップス、ダンス、ラップ、ジャズ、クラシック等がある。また、曲調としては、にぎやか、穏やか等がある。
【０２６１】
一例として、あるタイミングで、どの楽器が演奏されているかを示す楽器音の存在確率（時系列メタデータの一例）を算出する方法について説明する。なお、この方法において、メタデータ検出部１４８は、音源分離部１０６で分離された音源の各組み合わせについて各楽器音の存在確率を算出するものとする。まず、メタデータ検出部１４８は、楽器音の存在確率を推定するために、特徴量計算式生成装置１０（又はその他の学習アルゴリズム）を利用して各楽器音の存在確率を算出するための計算式を生成する。さらに、メタデータ検出部１４８は、楽器音の種類毎に生成した計算式を用いて各楽器音の存在確率を算出する。
【０２６２】
メタデータ検出部１４８は、ある楽器音の存在確率を算出する計算式を生成するために、予め時系列にラベル付けされたログスペクトルを用意する。例えば、メタデータ検出部１４８は、図８７に示すように、ラベル付けされたログスペクトルを所定の時間単位（例えば、１秒程度）毎に切り出し、切り出した部分ログスペクトルを用いて存在確率を算出するための計算式を生成する。図８７には、ボーカルの有無が事前に分かっている楽曲データのログスペクトルが一例として示されている。このようなログスペクトルが与えられると、メタデータ検出部１４８は、所定の時間単位で切り出し区間を決定し、各切り出し区間におけるボーカルの有無を参照してボーカル有りの区間にラベル１を付与し、ボーカル無しの区間にラベル０を付与する。なお、他の種類の楽器音についても同様である。
【０２６３】
このようにして切り出された時系列の部分ログスペクトルは、評価データとして特徴量計算式生成装置１０に入力される。また、各部分ログスペクトルに付与された各楽器音のラベルは、教師データとして特徴量計算式生成装置１０に入力される。このような評価データ及び教師データを与えることで、実施曲の部分ログスペクトルが入力された際に、入力された部分ログスペクトルの切り出し区間に各楽器音が含まれるか否かを出力する計算式が得られる。そこで、メタデータ検出部１４８は、時間軸を少しずつシフトしつつ、部分ログスペクトルを各楽器音に対応する計算式に入力し、その出力値を特徴量計算式生成装置１０が学習処理の際に算出した確率分布に従って確率値に変換する。そして、メタデータ検出部１４８は、時系列で算出される確率値を時系列メタデータとして保存する。このようなメタデータ検出部１４８の処理により、例えば、図８８に示すような各楽器音の存在確率が算出される。
【０２６４】
ここではボーカルの存在確率の算出方法を例に挙げて説明したが、他の楽器音の存在確率及びその他の時系列メタデータの算出方法についても同様である。また、１曲毎メタデータに関しては、１曲全体のログスペクトルを入力として１曲毎メタデータが算出されるような計算式を生成した上で、当該計算式を用いて１曲毎メタデータを算出すればよい。例えば、楽曲の曲調を算出する計算式を生成するには、特徴量計算式生成装置１０に対し、評価データとして曲調が分かっている楽曲データのログスペクトルを複数入力すると共に、教師データとして曲調を表す判定値を入力すればよい。これらの入力に対して特徴量計算式生成装置１０による学習処理により生成された計算式を利用し、当該計算式に１曲分のログスペクトルを入力することで、その曲の曲調が１曲毎メタデータとして算出される。もちろん、１曲毎メタデータとして楽曲のジャンルを算出する場合についても同様である。このようにして算出された１曲毎メタデータは、メタデータ保存部１１２に保存される。
【０２６５】
以上、情報処理装置１００が有する構成要素のうち、楽曲解析方法に関する構成要素の機能について詳細に説明した。上記の通り、楽曲解析部１１０による解析処理により、楽曲データに関する各種メタデータがメタデータ保存部１１２に保存される。そこで、以下では、メタデータ保存部１１２に保存された各種メタデータを利用し、楽曲データをリアルに視覚化する方法について説明する。視覚化方法に関する構成要素は、視覚化パラメータ決定部１１４、及び視覚化部１１６である。以下、これらの構成要素が持つ機能について説明する。
【０２６６】
［２−５．視覚化パラメータ決定部１１４の構成］
まず、視覚化パラメータ決定部１１４の構成について説明する。視覚化パラメータ決定部１１４は、メタデータ保存部１１２に保存された種々のメタデータに基づいてオブジェクトを制御するためのパラメータを決定する手段である。なお、オブジェクトとしては、ＣＧ映像で実現される演奏シーンの登場人物や、情報処理装置１００に外部接続されたロボット等がある。以下では、一例として、ＣＧ映像で実現される演奏シーンにメタデータ保存部１１２に保存された種々のメタデータを反映させる方法について説明する。
【０２６７】
（２−５−１．視覚化パラメータ決定方法の概要）
まず、図８９を参照しながら、視覚化パラメータ決定部１１４による一連の処理の流れについて説明する。図８９に示すフローチャートは、視覚化パラメータ決定部１１４による全体的な処理の流れを示すものである。
【０２６８】
図８９に示すように、視覚化パラメータ決定部１１４は、まず、メタデータ保存部１１２から楽曲解析部１１０による解析処理の結果得られたメタデータを取得する（Ｓ２０２）。例えば、ビート、キー、コード進行、メロディーライン、ベースライン、各楽器音の存在確率及びソロ確率、楽曲の曲調及びジャンル、楽曲構造等が取得される。次いで、視覚化パラメータ決定部１１４は、現在時刻及びメタデータに基づいてステージライトやスポットライト等の照明制御を行うための照明パラメータを決定する（Ｓ２０４）。次いで、視覚化パラメータ決定部１１４は、観客を表すオブジェクト（以下、観客オブジェクト）の動きを制御するための観客パラメータを決定する（Ｓ２０６）。次いで、視覚化パラメータ決定部１１４は、演奏者を表すオブジェクト（以下、演奏者オブジェクト）の動きを制御するための演奏者パラメータを決定する（Ｓ２０８）。次いで、視覚化パラメータ決定部１１４は、視覚化パラメータとして、照明パラメータ、観客パラメータ、演奏者パラメータを視覚化部１１６に出力し（Ｓ２１０）、一連の視覚化パラメータ決定処理を終了する。以下、各ステップの処理について、より詳細に説明する。
【０２６９】
（２−５−２．視覚化パラメータ決定方法の詳細）
以下、視覚化パラメータの決定方法について、より詳細に説明する。
【０２７０】
（ＣＧ映像による演奏シーンの構成）
まず、図９０を参照しながら、視覚化パラメータ決定部１１４で決定された視覚化パラメータに基づいて視覚化部１１６により実現される演奏シーンの一例（ＣＧ映像）について説明する。図９０には、視覚化部１１６により実現される演奏シーンの一例が示されている。このＣＧ映像には、ボーカル、ギター、ベース、キーボード、ドラム、ストリングス、ブラスの各セクションを担当する演奏者オブジェクトが含まれる。また、ステージの手前には、観客オブジェクトが配置されている。さらに、照明として、ステージライト、及びスポットライトが設けられている。以下では、これらの演奏者オブジェクト及び観客オブジェクトの動き、照明、及び背景色を対象物として、これら対象物の制御に用いるパラメータの決定方法について説明する。もちろん、本実施形態の適用範囲はこれに限定されず、例えば、メタデータを用いてスピーカの動作を表現したり、背景に別の映像を表示させたりすることも可能である。
【０２７１】
（照明パラメータの決定方法について）
まず、図９１〜図９６を参照しながら、照明パラメータの決定方法について説明する。図９１は、照明パラメータの基本的な設定例を示す説明図である。図９２は、背景色に関する照明パラメータの設定例を示す説明図である。図９３は、ステージライト、及びスポットライトに関する照明パラメータの設定例を示す説明図である。図９４は、ステージライトに関する照明パラメータの詳細な設定例を示す説明図である。図９５、図９６は、照明パラメータの決定処理に関する一連の流れを示す説明図である。
【０２７２】
まず、図９１を参照する。視覚化パラメータ決定部１１４は、図９１に示すように、背景色の色、輝度、各ステージライトの色、輝度、角度、各スポットライトの色、輝度を照明パラメータとして設定する。例えば、色は、赤（Ｒ）、緑（Ｇ）、青（Ｂ）の各濃度を０〜２５５の値で示したＲＧＢ表示で表される。また、輝度は、所定の輝度を基準に０〜１００％の値で表される。さらに、角度は、ステージ上を向く方向を０度とし、観客方向を９０度として表される。なお、図９０のように、ステージライト、及びスポットライトは複数個設けられている。例えば、スポットライトは、各演奏者オブジェクトに対して設けられている。そのため、照明パラメータは、個々のライトに対して設定されていてもよいし、或いは、複数個のライトで構成される所定のグループ毎に設定されていてもよい。視覚化パラメータ決定部１１４により決定された照明パラメータは、視覚化部１１６に入力され、楽曲データの演奏中にＣＧ映像に対してリアルタイムに反映される。
【０２７３】
次に、図９２を参照する。図９２に示すように、視覚化パラメータ決定部１１４は、現在時刻に応じて背景色を変化させてもよい。例えば、現在時刻が昼間の場合、視覚化パラメータ決定部１１４は、背景色を青にし、背景色の輝度を１００％に設定する。また、現在時刻が夕方の場合、視覚化パラメータ決定部１１４は、背景色をオレンジにし、背景色の輝度を１０％に設定する。さらに、現在時刻が夜間の場合、視覚化パラメータ決定部１１４は、背景色を黒にし、背景色の輝度を０％に設定する。このように、現在時刻に応じて背景色を変化させることで、ＣＧ映像の世界と実世界との間の時間が整合し、リアリティを向上させることができる。なお、視覚化パラメータ決定部１１４は、現在時刻の経過に同期して「昼間」→「夕方」→「夜間」の間でスムーズに背景色が変更されるように中間色及び中間の輝度を用いてもよい。
【０２７４】
次に、図９３を参照する。図９３に示すように、視覚化パラメータ決定部１１４は、メタデータ保存部１１２に保存されたメタデータのうち、楽曲データのジャンルを示すメタデータに基づいてジャンル毎にステージライト、及びスポットライトの視覚化パラメータを決定する。なお、ジャンルに基づいて処理の分岐を行う場合、メタデータ検出部１４８で１曲毎メタデータとして検出された各ジャンルの確率のうち最も確率の高いところに分岐するように構成される。例えば、ポップス、ロック、ダンス、ジャズ、クラシックの5つの分岐があり、ポップスの確率が80%、ロック70%、ダンス90%、ジャズ20%、クラシック0%であった場合、最も確率の高いダンスの枝に分岐する。
【０２７５】
例えば、楽曲データのジャンルがロックである場合、視覚化パラメータ決定部１１４は、小節単位でステージライトの色を変更する。このとき、視覚化パラメータ決定部１１４は、メタデータ保存部１１２に保存されているメタデータのうち、小節線検出部１４０で検出された小節線の情報に基づいて色の変更タイミングを判断する。また、視覚化パラメータ決定部１１４は、４分音符単位でステージライトの色変更パターンを変化させる。このとき、視覚化パラメータ決定部１１４は、メタデータ保存部１１２に保存されているメタデータのうち、ビート検出部１３２で検出されたビートの情報に基づいて色変更パターンの切り替えタイミングを判断する。さらに、視覚化パラメータ決定部１１４は、ステージライトの角度を３０度に設定する。そして、視覚化パラメータ決定部１１４は、スポットライトの色を白色に設定する。
【０２７６】
他の例として、楽曲データのジャンルがジャズである場合、視覚化パラメータ決定部１１４は、ステージライトの色を暖色に設定する。但し、視覚化パラメータ決定部１１４は、ステージライトの輝度パターンを変化させない。さらに、視覚化パラメータ決定部１１４は、ステージライトの角度を０度に設定する。そして、視覚化パラメータ決定部１１４は、スポットライトの色を青色に設定する。さらに他の例として、楽曲データのジャンルがクラシックである場合、視覚化パラメータ決定部１１４は、ステージライトの色を白色に設定する。但し、視覚化パラメータ決定部１１４は、ステージライトの輝度パターンを変化させない。さらに、視覚化パラメータ決定部１１４は、ステージライトの角度を４５度に設定する。そして、視覚化パラメータ決定部１１４は、スポットライトの色を白色に設定する。なお、ジャンルがロック又はダンスの場合、ステージライトをビートに合わせて変化させる。
【０２７７】
次に、図９４を参照する。上記の通り、楽曲データのジャンルがロックである場合、視覚化パラメータ決定部１１４は、小節単位でステージライトの色を変更する。このとき、視覚化パラメータ決定部１１４は、図９４に示す所定のパターンに従って色を変更する。例えば、パターン番号１で定義される色変更パターンの場合、視覚化パラメータ決定部１１４は、ステージライトの色を赤と緑とに交互に変更する。また、パターン番号２で定義される色変更パターンの場合、視覚化パラメータ決定部１１４は、ステージライトの色を紫と白とに交互に変更する。さらに、パターン番号３で定義される色変更パターンの場合、視覚化パラメータ決定部１１４は、ステージライトの色を水色と緑とに交互に変更する。そして、パターン番号４で定義される色変更パターンの場合、視覚化パラメータ決定部１１４は、ステージライトの色を黄色と白とに交互に変更する。
【０２７８】
次に、図９５、図９６を参照しながら、照明パラメータの決定方法に関する一連の処理の流れについて説明する。まず、図９５を参照する。図９５に示すように、視覚化パラメータ決定部１１４は、まず、メタデータ保存部１１２に保存されたジャンルを示すメタデータに基づいて演奏中の楽曲が属するジャンルを判定する（Ｓ２２０）。ジャンルがポップス、ロック、ダンスのいずれかである場合、視覚化パラメータ決定部１１４は、ステップＳ２２２の処理に進行する。また、ジャンルがジャズである場合、視覚化パラメータ決定部１１４は、ステップＳ２２４の処理に進行する。さらに、ジャンルがクラシックである場合、視覚化パラメータ決定部１１４は、ステップＳ２２６の処理に進行する。
【０２７９】
ステップＳ２２２において、視覚化パラメータ決定部１１４は、ステージライトの角度を３０度に設定すると共に、スポットライトの色を白色に設定し（Ｓ２２２）、ステップＳ２２８の処理に進行する。また、ステップＳ２２４において、視覚化パラメータ決定部１１４は、ステージライトの色を暖色に、角度を０度に設定すると共に、スポットライトの色を青色に設定し（Ｓ２２４）、ステップＳ２３６（図９６）の処理に進行する。さらに、ステップＳ２２６において、視覚化パラメータ決定部１１４は、ステージライトの色を白色に、角度を４５度に設定すると共に、スポットライトの色を白色に設定し（Ｓ２２６）、ステップＳ２３６（図９６）の処理に進行する。
【０２８０】
ステップＳ２２８では、視覚化パラメータ決定部１１４により、メタデータ保存部１１２に保存された小節線の位置を示すメタデータに基づいて小節変化の有無が判定される（Ｓ２２８）。小節が変化した場合、視覚化パラメータ決定部１１４は、ステップＳ２３０の処理に進行する。一方、小節が変化していない場合、視覚化パラメータ決定部１１４は、ステップＳ２３２の処理に進行する。ステップＳ２３０では、視覚化パラメータ決定部１１４により、図９４の表に従ってステージライトの色パターンが変更される（Ｓ２３０）。なお、パターン番号は、小節が変化する度にインクリメントされる。但し、最後のパターン番号（４）の後は再び最初のパターン番号（１）に戻る。
【０２８１】
ステップＳ２３２において、視覚化パラメータ決定部１１４は、まず、メタデータ保存部１１２に保存されたビート位置を示すメタデータ、及び楽曲構造を示すメタデータを参照する。そして、視覚化パラメータ決定部１１４は、ビートが変化したか否か、現在サビ部分を再生中で、かつ、ビートの半分の位置か否かを判定する（Ｓ２３２）。ビートが変化した場合、或いは、現在サビ部分を再生中で、かつ、ビートの半分の位置である場合、視覚化パラメータ決定部１１４は、ステップＳ２３４の処理に進行する。逆に、これ以外の場合、視覚化パラメータ決定部１１４は、ステップＳ２３６（図９６）の処理に進行する。ステップＳ２３４では、視覚化パラメータ決定部１１４により、ステージライトの色が入れ替えられる（Ｓ２３４）。つまり、サビ部分ではビートの半分の時間間隔で色の入れ替えが行われる。なお、ステージライトの色は、図９０に示すように互い違いに配色されており、交互に色が入れ替えられる。
【０２８２】
図９６を参照する。ステップＳ２３６において、視覚化パラメータ決定部１１４は、メタデータ保存部１１２から各楽器音の存在確率を示すメタデータを取得する（Ｓ２３６）。次いで、視覚化パラメータ決定部１１４は、各楽器音の存在確率について時間方向の移動平均を算出する（Ｓ２３８）。次いで、視覚化パラメータ決定部１１４は、ステップＳ２３８で算出した楽器音毎の平均値を対応する楽器の演奏者を照らすスポットライトの輝度に設定する（Ｓ２４０）。次いで、視覚化パラメータ決定部１１４は、メタデータ保存部１１２に保存された楽曲構造を示すメタデータを参照し、イントロであるか否かを判定する（Ｓ２４２）。イントロである場合、視覚化パラメータ決定部１１４は、ステップＳ２４４の処理に進行する。一方、イントロでない場合、視覚化パラメータ決定部１１４は、ステップＳ２４６の処理に進行する。
【０２８３】
ステップＳ２４４では、視覚化パラメータ決定部１１４により、ステージライトの輝度が半分に設定される（Ｓ２４４）。ステップＳ２４６では、視覚化パラメータ決定部１１４により楽曲の年代を示すメタデータがメタデータ保存部１１２から取得され、そのメタデータが示す年代に応じて照明の色が調整される（Ｓ２４６）。例えば、最も年代が古い場合（例えば、１００年前）には色がモノクロに近く、ある程度古い場合（例えば、５０年前）にはセピア調の色に調整され、年代が新しい場合には鮮やかな色に調整される。このような一連の処理により、照明パラメータが決定される。
【０２８４】
（観客パラメータの決定方法について）
次に、図９７〜図１０１を参照しながら、観客パラメータの決定方法について説明する。図９７は、観客パラメータの設定例を示す説明図である。図９８は、観客パラメータの種類を示す説明図である。図９９は、観客パラメータの決定方法に関する全体的な処理の流れを示す説明図である。図１００は、にぎやかな楽曲が演奏されている場合の観客パラメータの決定方法に関する処理の流れを示す説明図である。図１０１は、おだやかな楽曲が演奏されている場合の観客パラメータの決定方法に関する処理の流れを示す説明図である。
【０２８５】
まず、図９７を参照する。図９７に示すように、観客パラメータは、曲調に合わせて設定される。例えば、曲調がにぎやかな場合、イントロ部分で観客オブジェクトが静止し、サビ部分で観客オブジェクトがビートに合わせてジャンプし、それ以外の部分で観客オブジェクトが首のみ上下させるように、観客パラメータが設定される。また、曲調がおだやかな場合、イントロ部分で観客オブジェクトが静止し、サビ部分で観客オブジェクトが手を上げて小節単位で左右に振り、それ以外の部分で観客オブジェクトが首のみ左右に振るように、観客パラメータが設定される。さらに、曲調がクラシックの場合、観客オブジェクトは終始静止した状態となるように、観客パラメータが設定される。
【０２８６】
図９８には、このような観客パラメータの設定例に基づく観客オブジェクトの動きが示されている。図９８の（Ａ）は、観客パラメータで制御される観客オブジェクトの可動部分のうち、首部分の動きを示したものである。観客オブジェクトの首部分は、上下又は左右に動作可能である。上記の通り、曲調がにぎやかな場合、観客オブジェクトの首部分は、上下に動作制御される。また、曲調がおだやかな場合、観客オブジェクトの首部分は、左右に動作制御される。さらに、曲調がクラシックの場合、観客オブジェクトの首部分は静止したままとなる。
【０２８７】
図９８の（Ｂ）は、観客パラメータで制御される観客オブジェクトの可動部分のうち、体の位置（全体位置）の動きを示したものである。観客オブジェクトの全体位置は、上下（ジャンプ）に動作可能である。上記の通り、曲調がにぎやかな場合、観客オブジェクトはサビ部分でビートに合わせてジャンプ動作制御される。また、曲調がおだやかな場合及びクラシックの場合、観客オブジェクトはジャンプしない。図９８の（Ｃ）は、観客パラメータで制御される観客オブジェクトの可動部分のうち、手の動きを示したものである。観客オブジェクトの手は、上げ下げ可能であると共に、左右に振る動作が可能である。上記の通り、曲調がにぎやかな場合及びクラシックの場合、観客オブジェクトは手を下げたままの状態に制御される。また、曲調がおだやかな場合、観客オブジェクトは、サビ部分で手を挙げ、小節単位で左右に振る。
【０２８８】
次に、図９９を参照する。図９９に示すように、視覚化パラメータ決定部１１４は、まず、メタデータ保存部１１２に保存された曲調を表すメタデータを取得し、そのメタデータに基づいて曲調を判定する（Ｓ２５０）。曲調がにぎやかである場合、視覚化パラメータ決定部１１４は、ステップＳ２５２の処理に進行する。また、曲調がおだやかである場合、視覚化パラメータ決定部１１４は、ステップＳ２５４の処理に進行する。さらに、曲調がクラシックである場合、視覚化パラメータ決定部１１４は、ステップＳ２５６の処理に進行する。
【０２８９】
そして、ステップＳ２５２では、視覚化パラメータ決定部１１４により、にぎやかな曲のパラメータ決定処理が実行される（Ｓ２５２）。ステップＳ２５４では、視覚化パラメータ決定部１１４により、おだやかな曲のパラメータ決定処理が実行される（Ｓ２５４）。ステップＳ２５６では、視覚化パラメータ決定部１１４により、クラシックの曲のパラメータ決定処理が実行される（Ｓ２５６）。ステップＳ２５２、Ｓ２５４、Ｓ２５６のいずれかのパラメータ決定処理が実行されると、観客パラメータの決定方法に関する一連の処理が終了する。
【０２９０】
次に、図１００を参照しながら、にぎやかな曲のパラメータ決定処理（Ｓ２５２）について説明する。図１００に示すように、視覚化パラメータ決定部１１４は、まず、メタデータ保存部１１２に保存された楽曲構造を表すメタデータを取得し、そのメタデータに基づいて楽曲構造を判定する（Ｓ２５８）。楽曲構造がイントロである場合、視覚化パラメータ決定部１１４は、ステップＳ２６０の処理に進行する。また、楽曲構造がサビである場合、視覚化パラメータ決定部１１４は、ステップＳ２６２の処理に進行する。さらに、楽曲構造がそれ以外である場合、視覚化パラメータ決定部１１４は、ステップＳ２６４の処理に進行する。
【０２９１】
そして、ステップＳ２６０では、視覚化パラメータ決定部１１４により、観客オブジェクトがデフォルトの位置で静止するように制御される（Ｓ２６０）。ステップＳ２６２では、視覚化パラメータ決定部１１４により、ビート位置で着地するタイミングでビートに合わせてジャンプするように観客オブジェクトの動作制御が実行される（Ｓ２６２）。このとき、視覚化パラメータ決定部１１４は、メタデータ保存部１１２に保存されたビート位置を示すメタデータに基づいてジャンプのタイミングを決定する。ステップＳ２６４では、視覚化パラメータ決定部１１４により、観客オブジェクトの首がビートに合わせて上下するように動作制御が実行される（Ｓ２６４）。このとき、視覚化パラメータ決定部１１４は、メタデータ保存部１１２に保存されたビート位置を示すメタデータに基づいて首を上下させるタイミングを決定する。ステップＳ２６０、Ｓ２６２、Ｓ２６４のいずれかの処理が実行されると、にぎやかな曲に関する観客パラメータの決定処理が終了する。
【０２９２】
次に、図１０１を参照しながら、おだやかな曲のパラメータ決定処理（Ｓ２５４）について説明する。図１０１に示すように、視覚化パラメータ決定部１１４は、まず、メタデータ保存部１１２に保存された楽曲構造を表すメタデータを取得し、そのメタデータに基づいて楽曲構造を判定する（Ｓ２６６）。楽曲構造がイントロである場合、視覚化パラメータ決定部１１４は、ステップＳ２６８の処理に進行する。また、楽曲構造がサビである場合、視覚化パラメータ決定部１１４は、ステップＳ２７０の処理に進行する。さらに、楽曲構造がそれ以外である場合、視覚化パラメータ決定部１１４は、ステップＳ２７２の処理に進行する。
【０２９３】
そして、ステップＳ２６８では、視覚化パラメータ決定部１１４により、観客オブジェクトがデフォルトの位置で静止するように制御される（Ｓ２６８）。ステップＳ２７０では、視覚化パラメータ決定部１１４により、小節毎に首を左右に振り、両手を上で左右に振るように観客オブジェクトの動作制御が実行される（Ｓ２７０）。このとき、視覚化パラメータ決定部１１４は、メタデータ保存部１１２に保存されたビート位置を示すメタデータに基づいて首及び手を振るタイミングを決定する。ステップＳ２７２では、視覚化パラメータ決定部１１４により、観客オブジェクトの首をビートに合わせて左右に振るように動作制御が実行される（Ｓ２７２）。このとき、視覚化パラメータ決定部１１４は、メタデータ保存部１１２に保存されたビート位置を示すメタデータに基づいて首を左右に振らせるタイミングを決定する。ステップＳ２６８、Ｓ２７０、Ｓ２７２のいずれかの処理が実行されると、おだやかな曲に関する観客パラメータの決定処理が終了する。
【０２９４】
（演奏者パラメータの決定方法について）
次に、図１０２〜図１２７を参照しながら、演奏者パラメータの決定方法について説明する。演奏者パラメータは、演奏者オブジェクトの種類毎に設定されるものと、種類とは無関係に設定されるものとがある。演奏者オブジェクトの種類に関係無く設定される演奏者パラメータとしては、例えば、演奏者オブジェクトの表示／非表示の切り替えや、服装の色等がある。
【０２９５】
演奏者オブジェクトの表示／非表示の切り替えは、各楽器音の存在確率に基づいて行われる。但し、この切り替えに用いる各楽器音の存在確率は、１曲毎メタデータとして算出された各楽器音の存在確率である。例えば、曲全体で存在確率が低い楽器音に対応する演奏者オブジェクトは非表示（図１０２の（Ｃ）を参照）に設定される。また、演奏者オブジェクトの服装は、楽曲のジャンルに基づいて設定される。例えば、ジャンルがクラシック又はジャズの場合、演奏者オブジェクトの服装は、黒のスーツやタキシード等に設定される。一方、ジャンルがロックの場合、演奏者オブジェクトの服装は、季節が秋冬なら演奏者オブジェクトの種類毎に決められた有彩色のＴシャツ等に設定される。
【０２９６】
演奏者オブジェクトの種類毎に異なる演奏者パラメータの決定方法については、以下で詳細に説明する。但し、本実施形態においては、一例として、ボーカル、ギター、ベース、キーボード、ドラム、ストリングス、ブラスの7つの楽器の演奏者オブジェクトに限定して説明を行うことにする。もちろん、本実施形態に係る技術の適用範囲はこれに限定されず、他の楽器を演奏する演奏者オブジェクトの演奏者パラメータについても同様にして演奏者パラメータを決定することが可能である。
【０２９７】
（ボーカルについて）
まず、図１０２、図１０３を参照しながら、ボーカルの演奏者オブジェクトに適用される演奏者パラメータの決定方法について説明する。図１０２は、ボーカルに関する演奏者パラメータの種類を示す説明図である。図１０３は、ボーカルに関する演奏者パラメータの決定方法に係る処理の流れを示す説明図である。
【０２９８】
まず、図１０２を参照する。図１０２に示すように、ボーカルに関する演奏者パラメータとしては、演奏者オブジェクトの縦横サイズ、ヘアスタイル、口を開く大きさ、マイクを持つ手の角度、マイクを持たない手の位置、目の形（表情）等がある。演奏者オブジェクトの縦横サイズは、１曲毎のメタデータとしてメタデータ検出部１４８により検出されたボーカルの身長や体重等に基づいて決定される。
【０２９９】
例えば、視覚化パラメータ決定部１１４は、メタデータ保存部１１２に保存されたボーカルの身長を示すメタデータに基づいてボーカルの演奏者オブジェクトの縦サイズを決定する。そして、視覚化パラメータ決定部１１４は、メタデータ保存部１１２に保存されたボーカルの身長及び体重を示すメタデータに基づいてボーカルの演奏者オブジェクトの横サイズを決定する。このようにして楽曲データの波形から推定されたボーカルの身体的な特徴に関する情報を演奏者オブジェクトに反映されることで、楽曲毎に視覚的な変化が生まれ、ユーザの飽きを抑制する効果が得られる。
【０３００】
また、演奏オブジェクトのヘアスタイルは、メタデータ検出部１４８で検出されたボーカルの性別及び楽曲のジャンルに基づいて決定される。例えば、ボーカルが女性であると推定された場合、ボーカルの演奏者オブジェクトは、髪の毛が長く設定される。また、ボーカルが男性であり、楽曲のジャンルがロックであると推定された場合、ボーカルの演奏者オブジェクトは、髪の毛が逆立つように設定される。さらに、ジャンルがラップであれば髪の毛が短く設定される。
【０３０１】
また、演奏者オブジェクトが口を開く大きさ、及びマイクを持つ手の角度は、ボーカルの存在確率に基づいて決定される。例えば、ボーカルの存在確率が高い場合、口が大きく開いた状態に設定される。さらに、ボーカルの存在確率が高くなるほど、マイクが口に近づくように設定される。また、マイクを持たない手の位置（高さ）は、メロディーラインに基づいて決定される。例えば、メロディーが高い音程の場合、マイクを持たない手の位置が高くなるように設定される。逆に、メロディーが低い音程の場合、マイクを持たない手の位置が低くなるように設定される。なお、他の楽器がソロ演奏中であると判断された場合、マイクを持たない手の位置は固定される。
【０３０２】
また、目の形は、メタデータ保存部１１２に保存された曲調を示すメタデータに基づき、にぎやかな曲の場合、普通の目に設定される。一方、おだやかな曲の場合、閉じているような目に設定される。また、視覚化パラメータ決定部１１４は、メロディー検出部１４４で検出されたメロディーラインの情報に基づいて目の形をクロスさせる。例えば、視覚化パラメータ決定部１１４は、１曲全体におけるメロディーの平均音程と音程の標準偏差とを算出し、現在のメロディーの音程が平均音程＋３×標準偏差より高い音程の場合、又は声質がシャウト系である場合に目をクロスさせる。
【０３０３】
ここで、図１０３を参照しながら、ボーカルの演奏者オブジェクトに関する演奏者パラメータ決定処理の流れについて説明する。図１０３に示すように、まず、視覚化パラメータ決定部１１４は、ボーカルの身長、体重から演奏者オブジェクトの縦横サイズを決定する（Ｓ２８０）。このとき、メタデータ保存部１１２に保存されたボーカルの身長、体重を示すメタデータが参照される。次いで、視覚化パラメータ決定部１１４は、楽曲のジャンル及びボーカルの性別に基づいてボーカルの演奏者オブジェクトのヘアスタイルを決定する（Ｓ２８２）。このとき、メタデータ保存部１１２に保存された楽曲のジャンルを示すメタデータ、及びボーカルの性別を示すメタデータが参照される。
【０３０４】
次いで、視覚化パラメータ決定部１１４は、メタデータ保存部１１２に保存されたメロディーラインの情報に基づいて現在のメロディーの音程が平均＋３σ以上であるか否か、ボーカルの音質がシャウト系であるか否かを判断する。但し、平均は、１曲全体にわたるメロディーラインの平均音程である。また、σは、１曲全体にわたるメロディーラインの音程の標準偏差である。メロディーの音程が平均＋３σ以上であるか、或いは、ボーカルの音質がシャウト系である場合、視覚化パラメータ決定部１１４は、ステップＳ２８６の処理に進行する。一方、現在のメロディーの音程が上記の条件を満たさない場合、視覚化パラメータ決定部１１４は、ステップＳ２８８の処理に進行する。
【０３０５】
ステップＳ２８６では、視覚化パラメータ決定部１１４により、ボーカルの演奏者オブジェクトの目がクロスした目に設定される（Ｓ２８６）。一方、ステップＳ２８８では、視覚化パラメータ決定部１１４により、メタデータ保存部１１２に保存された曲調を表すメタデータが参照され、曲調が判定される（Ｓ２８８）。にぎやかな曲の場合、視覚化パラメータ決定部１１４は、ステップＳ２９０の処理に進行する。一方、おだやかな曲の場合、視覚化パラメータ決定部１１４は、ステップＳ２９２の処理に進行する。ステップＳ２９０では、視覚化パラメータ決定部１１４により、ボーカルの演奏者オブジェクトの目が普通の目に設定される（Ｓ２９０）。ステップＳ２９２では、視覚化パラメータ決定部１１４により、ボーカルの演奏者オブジェクトの目が閉じた目に設定される（Ｓ２９２）。
【０３０６】
ステップＳ２８６、Ｓ２９０、Ｓ２９２のいずれかの処理が完了すると、視覚化パラメータ決定部１１４は、ステップＳ２９４の処理に進行する。ステップＳ２９４では、視覚化パラメータ決定部１１４により、メタデータ保存部１１２からメロディーラインの情報が読み出され、当該メロディーラインの情報に基づいてマイクを持たない手の位置が決定される（Ｓ２９４）。次いで、視覚化パラメータ決定部１１４は、メタデータ保存部１１２に保存されたボーカルの存在確率を参照し、当該存在確率に基づいてボーカルの演奏者オブジェクトが口を開く大きさ、及びマイクを持つ手の角度を決定する（Ｓ２９６）。ステップＳ２９６の処理が終了すると、視覚化パラメータ決定部１１４は、ボーカルに関する演奏者パラメータの決定処理を終了する。
【０３０７】
（ギターについて）
次に、図１０４〜図１０９を参照しながら、ギターの演奏者オブジェクトに適用される演奏者パラメータの決定方法について説明する。図１０４は、ギターソロの場合に設定される演奏者パラメータの設定例を示す説明図である。図１０５は、ギターソロ以外の場合に設定される演奏者パラメータの設定例を示す説明図である。図１０６は、ギターの演奏者オブジェクトに適用される演奏者パラメータの種類を示す説明図である。図１０７は、ギターの演奏者パラメータの決定方法に関する全体的な処理の流れを示す説明図である。図１０８は、ギターソロの場合に、ギターの演奏者パラメータの決定方法に関する処理の流れを示す説明図である。図１０９は、ギターソロ以外の場合に、ギターの演奏者パラメータの決定方法に関する処理の流れを示す説明図である。
【０３０８】
まず、図１０６に示すように、ギターに関する演奏者パラメータには、弦を弾く手の角度、フレットを押さえる手の位置、目の形（表情）、仰け反り角度（姿勢）、及び口を開く大きさがある。口を開く大きさを示すギターの演奏者パラメータは、時系列のメタデータであるハモリの存在確率に基づいて決定される。また、仰け反り角度を示すギターの演奏者パラメータは、ギターソロの場合、メロディーラインに基づいて決定される。例えば、仰け反り角度を示す演奏者パラメータは、メロディーラインが高い音程となるほど大きく仰け反るように設定される。一方、ギターソロ以外の場合、仰け反り角度がゼロ（直立）となるように演奏者パラメータが設定される。但し、ギターソロであるか否かの判断は、ギターソロ確率がある一定以上であるか否かにより行われる。
【０３０９】
また、目の形（表情）を示すギターの演奏者パラメータは、ギターソロの場合に目がクロスするように設定され、それ以外の場合に普通の目に設定される。フレットを押さえる手の位置を示す演奏者パラメータは、ギターソロの場合にメロディーラインの音程に基づいて設定され、ギターソロでない場合、コード名に基づいて設定される。例えば、ギターソロの場合、図１０４に示す演奏者パラメータの設定例に基づいてフレットを押さえる手の位置が決定される。
【０３１０】
例えば、メロディーがＥ２〜Ｇ＃２の場合、第１弦で、Ｅ２で最もネック側、Ｇ＃２に近づくほどボディー側にフレットを押さえる手の位置がくるように演奏者パラメータが設定される。同様に、メロディーがＡ２〜Ｃ＃３の場合、第２弦で、Ａ２で最もネック側、Ｃ＃３に近づくほどボディー側にフレットを押さえる手の位置がくるように演奏者パラメータが設定される。メロディーがＤ３〜Ｆ＃３の場合、第３弦で、Ｄ３で最もネック側、Ｆ＃３に近づくほどボディー側にフレットを押さえる手の位置がくるように演奏者パラメータが設定される。メロディーがＧ３〜Ａ＃３の場合、第４弦で、Ｇ３で最もネック側、Ａ＃３に近づくほどボディー側にフレットを押さえる手の位置がくるように演奏者パラメータが設定される。メロディーがＢ３〜Ｄ＃４の場合、第５弦で、Ｂ３で最もネック側、Ｄ＃４に近づくほどボディー側にフレットを押さえる手の位置がくるように演奏者パラメータが設定される。メロディーがＥ４より高い場合、第６弦で、Ｅ４で最もネック側、高い音ほどボディー側にフレットを押さえる手の位置がくるように演奏者パラメータが設定される。
【０３１１】
一方、ギターソロ以外の場合、図１０５に示す演奏者パラメータの設定例に基づいてフレットを押さえる手の位置が決定される。図１０５に示すように、ギターソロ以外の場合、メタデータ保存部１１２に保存されたコードのルート音に基づいてフレットを押さえる手の位置が決定される。図１０５の例は、最もネックに近い位置でコードを弾いていると仮定した場合の位置を示している。例えば、コードのルート音がＥ、Ｆ、Ｆ＃、Ｇ、Ｇ＃である場合、フレットを押さえる手の位置は、Ｅで最もネック側、Ｇ＃に近づくほどボディー側になるように設定される。同様に、コードのルート音がＡ、Ａ＃、Ｂ、Ｃ、Ｃ＃、Ｄ、Ｄ＃である場合、フレットを押さえる手の位置は、Ａで最もネック側、Ｄ＃に近づくほどボディー側になるように設定される。
【０３１２】
また、弦を弾く手の角度は、図１０６に示すように、ギターソロの場合、メロディーラインが変化するタイミングでちょうど弦を弾くように設定される。このとき、角度の変化範囲θ１は小さく設定される。一方、ギターソロでない場合、弦を弾く手の角度はビート単位で手が一往復するように設定される。そして、角度の変化範囲θ２は大きく設定される。また、ギターの存在確率が高いほど変化範囲が大きく設定される。
【０３１３】
ここで、図１０７〜図１０９を参照しながら、ギターに関する演奏者パラメータの決定方法について説明する。
【０３１４】
まず、図１０７を参照しながら、ギターに関する演奏者パラメータ決定処理の全体的な流れについて説明する。図１０７に示すように、まず、視覚化パラメータ決定部１１４は、ギターソロ確率が予め設定された一定値以上か否かを判断する（Ｓ３００）。ギターソロ確率が一定値以上の場合、視覚化パラメータ決定部１１４は、ステップＳ３０２の処理に進行する。一方、ギターソロ確率が一定値以下の場合、視覚化パラメータ決定部１１４は、ステップＳ３０４の処理に進行する。ステップＳ３０２では、視覚化パラメータ決定部１１４により、ギターソロ時のパラメータ設定処理が実行される（Ｓ３０２）。ステップＳ３０４では、視覚化パラメータ決定部１１４により、ギターソロ時以外のパラメータ設定処理が実行される（Ｓ３０４）。ステップＳ３０２、Ｓ３０４のいずれかの処理を実行すると、視覚化パラメータ決定部１１４は、ステップＳ３０６の処理に進行する。ステップＳ３０６では、視覚化パラメータ決定部１１４により、ハモリ存在確率が参照され、当該ハモリ存在確率に基づいて演奏者オブジェクトの口を開く大きさが決定される（Ｓ３０６）。
【０３１５】
次に、図１０８を参照しながら、ギターソロ時のパラメータ決定処理について説明する。図１０８に示すように、まず、視覚化パラメータ決定部１１４は、ギターの演奏者オブジェクトの表情をクロスした目に設定する（Ｓ３０８）。次いで、視覚化パラメータ決定部１１４は、メロディーの音程に基づいて演奏者オブジェクトの仰け反り角度を決定する（Ｓ３１０）。次いで、視覚化パラメータ決定部１１４は、メロディーの音程に基づいてフレットを押さえる手の位置を決定する（Ｓ３１２）。次いで、視覚化パラメータ決定部１１４は、メロディーの音程変化タイミング、及びギターの存在確率に基づいて弦を弾く手の角度を決定する（Ｓ３１４）。
【０３１６】
次に、図１０９を参照しながら、ギターソロ時以外のパラメータ決定処理について説明する。図１０９に示すように、まず、視覚化パラメータ決定部１１４は、ギターの演奏者オブジェクトの表情を普通の目に設定する（Ｓ３１６）。次いで、視覚化パラメータ決定部１１４は、演奏者オブジェクトの仰け反り角度を０度（直立）に設定する（Ｓ３１８）。次いで、視覚化パラメータ決定部１１４は、現在コードのルート音に基づいてフレットを押さえる手の位置を決定する（Ｓ３２０）。次いで、視覚化パラメータ決定部１１４は、ギターの存在確率が予め設定された一定値以上であるか否かを判定する（Ｓ３２２）。
【０３１７】
ギターの存在確率が一定値以上である場合、視覚化パラメータ決定部１１４は、ステップＳ３２４の処理に進行する。一方、ギターの存在確率が一定値以下である場合、視覚化パラメータ決定部１１４は、ステップＳ３２６の処理に進行する。ステップＳ３２４では、視覚化パラメータ決定部１１４により、ビート位置、及びギターの存在確率に基づいて演奏者オブジェクトの弦を弾く手の角度が決定される（Ｓ３２４）。ステップＳ３２６では、視覚化パラメータ決定部１１４により、弦を弾く手の角度が一定に固定される（Ｓ３２６）。ステップＳ３２４、Ｓ３２６の処理が実行されると、視覚化パラメータ決定部１１４は、ギターソロの場合における演奏者パラメータの設定処理を終了する。
【０３１８】
（ベースについて）
次に、図１１０〜図１１４を参照しながら、ベースの演奏者オブジェクトに適用される演奏者パラメータの決定方法について説明する。図１１０は、ベースの演奏者オブジェクトに適用される演奏者パラメータの種類を示す説明図である。図１１１は、ベースに関する演奏者パラメータの設定例を示す説明図である。図１１２は、ベースの演奏者パラメータの決定方法に関する全体的な処理の流れを示す説明図である。図１１３は、ベースソロの場合に、ベースの演奏者パラメータの決定方法に関する処理の流れを示す説明図である。図１１４は、ベースソロ以外の場合に、ベースの演奏者パラメータの決定方法に関する処理の流れを示す説明図である。
【０３１９】
まず、図１１０に示すように、ベースに関する演奏者パラメータには、弦を弾く手の角度、フレットを押さえる手の位置、目の形（表情）、仰け反り角度（姿勢）、及び口を開く大きさがある。口を開く大きさを示すベースの演奏者パラメータは、時系列のメタデータであるハモリの存在確率に基づいて決定される。また、仰け反り角度を示すベースの演奏者パラメータは、ベースソロの場合、ベースラインに基づいて決定される。例えば、仰け反り角度を示す演奏者パラメータは、ベースラインが高い音程となるほど大きく仰け反るように設定される。一方、ベースソロ以外の場合、仰け反り角度がゼロ（直立）となるように演奏者パラメータが設定される。但し、ベースソロであるか否かの判断は、ベースソロ確率がある一定以上であるか否かにより行われる。
【０３２０】
また、目の形（表情）を示すベースの演奏者パラメータは、ベースソロの場合に目がクロスするように設定され、それ以外の場合に普通の目に設定される。フレットを押さえる手の位置を示す演奏者パラメータは、ベースラインの音程に基づいて設定される。例えば、図１１１に示す演奏者パラメータの設定例に基づいてフレットを押さえる手の位置が決定される。
【０３２１】
例えば、ベースラインがＥ１〜Ｇ＃１の場合、第１弦で、Ｅ１で最もネック側、Ｇ＃１に近づくほどボディー側にフレットを押さえる手の位置がくるように演奏者パラメータが設定される。同様に、ベースラインがＡ１〜Ｃ＃２の場合、第２弦で、Ａ１で最もネック側、Ｃ＃２に近づくほどボディー側にフレットを押さえる手の位置がくるように演奏者パラメータが設定される。ベースラインがＤ２〜Ｆ＃２の場合、第３弦で、Ｄ２で最もネック側、Ｆ＃２に近づくほどボディー側にフレットを押さえる手の位置がくるように演奏者パラメータが設定される。ベースラインがＧ２より高い場合、第４弦で、Ｇ２で最もネック側、高い音ほどボディー側にフレットを押さえる手の位置がくるように演奏者パラメータが設定される。
【０３２２】
また、弦を弾く手の角度は、図１１０に示すように、ベースソロの場合、ベースラインが変化するタイミングでちょうど弦を弾くように設定される。このとき、角度の変化範囲θ１は小さく設定される。一方、ベースソロでない場合、弦を弾く手の角度は８分音符単位で手が一往復するように設定される。そして、角度の変化範囲θ２は大きく設定される。また、ベースの存在確率が高いほど変化範囲が大きく設定される。
【０３２３】
ここで、図１１２〜図１１４を参照しながら、ベースに関する演奏者パラメータの決定方法について説明する。
【０３２４】
まず、図１１２を参照しながら、ベースに関する演奏者パラメータ決定処理の全体的な流れについて説明する。図１１２に示すように、まず、視覚化パラメータ決定部１１４は、ベースソロ確率が予め設定された一定値以上か否かを判断する（Ｓ３３０）。ベースソロ確率が一定値以上の場合、視覚化パラメータ決定部１１４は、ステップＳ３３２の処理に進行する。一方、ベースソロ確率が一定値以下の場合、視覚化パラメータ決定部１１４は、ステップＳ３３４の処理に進行する。ステップＳ３３２では、視覚化パラメータ決定部１１４により、ベースソロ時のパラメータ設定処理が実行される（Ｓ３３２）。ステップＳ３３４では、視覚化パラメータ決定部１１４により、ベースソロ時以外のパラメータ設定処理が実行される（Ｓ３３４）。ステップＳ３３２、Ｓ３３４のいずれかの処理を実行すると、視覚化パラメータ決定部１１４は、ステップＳ３３６の処理に進行する。ステップＳ３３６では、視覚化パラメータ決定部１１４により、ハモリ存在確率が参照され、当該ハモリ存在確率に基づいて演奏者オブジェクトの口を開く大きさが決定される（Ｓ３３６）。次いで、視覚化パラメータ決定部１１４は、ベースラインの音程に基づいてフレットを押さえる手の位置を決定し（Ｓ３３８）、一連の処理を終了する。
【０３２５】
次に、図１１３を参照しながら、ベースソロ時のパラメータ決定処理について説明する。図１１３に示すように、まず、視覚化パラメータ決定部１１４は、ベースの演奏者オブジェクトの表情をクロスした目に設定する（Ｓ３４０）。次いで、視覚化パラメータ決定部１１４は、ベースラインの音程に基づいて演奏者オブジェクトの仰け反り角度を決定する（Ｓ３４２）。次いで、視覚化パラメータ決定部１１４は、ベースの音程変化タイミング、及びベースの存在確率に基づいて弦を弾く手の角度を決定する（Ｓ３４４）。
【０３２６】
次に、図１１４を参照しながら、ベースソロ時以外のパラメータ決定処理について説明する。図１１４に示すように、まず、視覚化パラメータ決定部１１４は、ベースの演奏者オブジェクトの表情を普通の目に設定する（Ｓ３４６）。次いで、視覚化パラメータ決定部１１４は、演奏者オブジェクトの仰け反り角度を０度（直立）に設定する（Ｓ３４８）。次いで、視覚化パラメータ決定部１１４は、ベースの存在確率が予め設定された一定値以上であるか否かを判定する（Ｓ３５０）。ベースの存在確率が一定値以上である場合、視覚化パラメータ決定部１１４は、ステップＳ３５４の処理に進行する。一方、ベースの存在確率が一定値以下である場合、視覚化パラメータ決定部１１４は、ステップＳ３５２の処理に進行する。
【０３２７】
ステップＳ３５４では、視覚化パラメータ決定部１１４により、ジャンルがロック、ポップス、ダンスのいずれかに属するか否かが判定される（Ｓ３５４）。ジャンルがロック、ポップス、ダンスのいずれかである場合、視覚化パラメータ決定部１１４は、ステップＳ３５６の処理に進行する。一方、ジャンルがロック、ポップス、ダンスのいずれでもない場合、視覚化パラメータ決定部１１４は、ステップＳ３５８の処理に進行する。ステップＳ３５６では、視覚化パラメータ決定部１１４により、ビート位置、及びベースの存在確率に基づいて演奏者オブジェクトの弦を弾く手の角度が決定される（Ｓ３５６）。
【０３２８】
ステップＳ３５８では、視覚化パラメータ決定部１１４により、ベースラインの音程変化タイミング、及びベース存在確率に基づいて弦を弾く手の角度が決定される（Ｓ３５８）。また、ステップＳ３５２では、視覚化パラメータ決定部１１４により、弦を弾く手の角度が一定に固定される（Ｓ３５２）。ステップＳ３５２、Ｓ３５６、Ｓ３５８のいずれかの処理が実行されると、視覚化パラメータ決定部１１４は、ベースソロ時以外の演奏者パラメータ決定処理を終了する。
【０３２９】
（キーボード、ドラムについて）
次に、図１１５〜図１１９を参照しながら、キーボード、及びドラムの演奏者オブジェクトに適用される演奏者パラメータの決定方法について説明する。図１１５は、キーボード、及びドラムの演奏者オブジェクトに適用される演奏者パラメータの種類を示す説明図である。図１１６は、キーボードの演奏者パラメータ決定方法に関する全体的な処理の流れを示す説明図である。図１１７は、キーボードソロの場合に、キーボードの演奏者パラメータの決定方法に関する処理の流れを示す説明図である。図１１８は、キーボードソロ以外の場合に、キーボードの演奏者パラメータの決定方法に関する処理の流れを示す説明図である。図１１９は、ドラムの演奏者パラメータの決定方法に関する処理の流れを示す説明図である。
【０３３０】
まず、キーボードの演奏者パラメータについて説明する。図１１５に示すように、キーボードに関する演奏者パラメータには、左右の手の位置、目の形（表情）、及び口を開く大きさがある。口を開く大きさを示すキーボードの演奏者パラメータは、時系列のメタデータであるハモリの存在確率に基づいて決定される。また、目の形（表情）を示すキーボードの演奏者パラメータは、キーボードソロの場合に目がクロスするように設定され、それ以外の場合に普通の目に設定される。右手の位置、及び左手の位置を示す演奏者パラメータは、メロディーライン、及びベースラインの音程に基づいて設定される。例えば、高い音程ほど左側に、低い音程ほど右側になるように手の位置を示す演奏者パラメータが設定される。但し、キーボードソロでない場合、現在のコードに基づいて予め決められた手の位置に設定される。
【０３３１】
ここで、図１１６〜図１１８を参照しながら、キーボードに関する演奏者パラメータの決定方法について説明する。
【０３３２】
まず、図１１６を参照しながら、キーボードに関する演奏者パラメータ決定処理の全体的な流れについて説明する。図１１６に示すように、まず、視覚化パラメータ決定部１１４は、キーボードソロ確率が予め設定された一定値以上か否かを判断する（Ｓ３６０）。キーボードソロ確率が一定値以上の場合、視覚化パラメータ決定部１１４は、ステップＳ３６２の処理に進行する。一方、キーボードソロ確率が一定値以下の場合、視覚化パラメータ決定部１１４は、ステップＳ３６４の処理に進行する。
【０３３３】
ステップＳ３６２では、視覚化パラメータ決定部１１４により、キーボードソロ時のパラメータ設定処理が実行される（Ｓ３６２）。ステップＳ３６４では、視覚化パラメータ決定部１１４により、キーボードソロ時以外のパラメータ設定処理が実行される（Ｓ３６４）。ステップＳ３６２、Ｓ３６４のいずれかの処理を実行すると、視覚化パラメータ決定部１１４は、ステップＳ３６６の処理に進行する。ステップＳ３６６では、視覚化パラメータ決定部１１４により、ハモリ存在確率が参照され、当該ハモリ存在確率に基づいて演奏者オブジェクトの口を開く大きさが決定される（Ｓ３６６）。
【０３３４】
次に、図１１７を参照しながら、キーボードソロ時のパラメータ決定処理について説明する。図１１７に示すように、まず、視覚化パラメータ決定部１１４は、ベースの演奏者オブジェクトの表情をクロスした目に設定する（Ｓ３６８）。次いで、視覚化パラメータ決定部１１４は、ベースラインの音程に基づいて演奏者オブジェクトの左手の位置を決定する（Ｓ３７０）。次いで、視覚化パラメータ決定部１１４は、メロディーラインの音程に基づいて演奏者オブジェクトの右手の位置を決定する（Ｓ３７２）。
【０３３５】
次に、図１１８を参照しながら、キーボードソロ時以外のパラメータ決定処理について説明する。図１１８に示すように、まず、視覚化パラメータ決定部１１４は、キーボードの演奏者オブジェクトの表情を普通の目に設定する（Ｓ３７４）。次いで、視覚化パラメータ決定部１１４は、現在のコードに基づいて両手の位置を決定する（Ｓ３７６）。ステップＳ３７６の処理が実行されると、視覚化パラメータ決定部１１４は、キーボードソロ以外の場合における演奏者パラメータの設定処理を終了する。
【０３３６】
次に、ドラムの演奏者パラメータについて説明する。図１１５に示すように、ドラムに関する演奏者パラメータには、目の形（表情）、口を開く大きさ、ハイハット、シンバル、スネア、キック、タムの大きさがある。口を開く大きさを示すキーボードの演奏者パラメータは、時系列のメタデータであるハモリの存在確率に基づいて決定される。また、目の形（表情）を示すキーボードの演奏者パラメータは、ドラムソロの場合に目がクロスするように設定され、それ以外の場合に普通の目に設定される。ハイハット、シンバル、スネア、キック、タムの大きさは、時系列メタデータとして算出されるドラムの存在確率に基づいて決定される。
【０３３７】
ここで、図１１９を参照しながら、ドラムに関する演奏者パラメータの決定方法について説明する。図１１９に示すように、まず、視覚化パラメータ決定部１１４は、ドラムソロ確率が予め設定された一定値以上か否かを判断する（Ｓ３８０）。ドラムソロ確率が一定値以上の場合、視覚化パラメータ決定部１１４は、ステップＳ３８２の処理に進行する。一方、ドラムソロ確率が一定値以下の場合、視覚化パラメータ決定部１１４は、ステップＳ３８４の処理に進行する。ステップＳ３８２では、視覚化パラメータ決定部１１４は、ドラムの演奏者オブジェクトの表情をクロスした目に設定する（Ｓ３８２）。ステップＳ３８４では、視覚化パラメータ決定部１１４は、キーボードの演奏者オブジェクトの表情を普通の目に設定する（Ｓ３７４）。
【０３３８】
ステップＳ３８２、Ｓ３８４のいずれかの処理を実行すると、視覚化パラメータ決定部１１４は、ステップＳ３８６の処理に進行する。ステップＳ３６６では、視覚化パラメータ決定部１１４により、ハモリ存在確率が参照され、当該ハモリ存在確率に基づいて演奏者オブジェクトの口を開く大きさが決定される（Ｓ３８６）。次いで、視覚化パラメータ決定部１１４は、ドラム確率が予め設定された一定値以上か否かを判定する（Ｓ３８８）。ドラム確率が一定値以上の場合、視覚化パラメータ決定部１１４は、ステップＳ３９０の処理に進行する。一方、ドラム確率が一定値以下の場合、視覚化パラメータ決定部１１４は、ステップＳ３９２の処理に進行する。
【０３３９】
ステップＳ３９０では、視覚化パラメータ決定部１１４により、各ドラムの存在確率に基づいて各ドラムの大きさが決定される（Ｓ３９０）。ステップＳ３９２では、視覚化パラメータ決定部１１４により、全てのドラムの大きさが最小の大きさに設定される（Ｓ３９２）。ステップＳ３９０、Ｓ３９２のいずれかの処理を実行すると、視覚化パラメータ決定部１１４は、ドラムに関する演奏者パラメータの設定処理を終了する。
【０３４０】
（ストリングスについて）
次に、図１２０〜図１２５を参照しながら、ストリングスの演奏者オブジェクトに適用される演奏者パラメータの決定方法について説明する。図１２０は、ストリングスの演奏者オブジェクトに適用される演奏者パラメータの種類を示す説明図である。図１２１は、ストリングスに関する演奏者パラメータの設定例を示す説明図である。図１２２は、ストリングスソロの場合とストリングスソロ以外の場合とで異なるストロークの大きさ、及び弓の移動タイミングを示す説明図である。図１２３は、ストリングスの演奏者パラメータの決定方法に関する全体的な処理の流れを示す説明図である。図１２４は、ストリングスソロの場合に、ストリングスの演奏者パラメータの決定方法に関する処理の流れを示す説明図である。図１２５は、ストリングスソロ以外の場合に、ベースの演奏者パラメータの決定方法に関する処理の流れを示す説明図である。
【０３４１】
まず、図１２０に示すように、ストリングスに関する演奏者パラメータには、弓の位置、及び弦を押さえる手の位置がある。ストリングスソロの場合、弓の位置を示す演奏者パラメータは、メロディーの変化タイミングに基づいて決定される。例えば、図１２２の（Ａ）に示すように、メロディーが変化するタイミングで弓が端に移動するように弓の位置を示す演奏者パラメータが決定される。但し、ストリングスソロの場合、ストロークは小さめに設定される。また、弦を押さえる手の位置を示す演奏者パラメータは、メロディーラインに基づいて設定される。例えば、図１２１に示す演奏者パラメータの設定例に基づいて弦を押さえる手の位置が決定される。
【０３４２】
例えば、メロディーラインがＧ２〜Ｃ＃２の場合、第１弦で、Ｇ２で最もネック側、Ｃ＃２に近づくほどボディー側に弦を押さえる手の位置がくるように演奏者パラメータが設定される。同様に、メロディーラインがＤ３〜Ｇ＃３の場合、第２弦で、Ｄ３で最もネック側、Ｇ＃３に近づくほどボディー側に弦を押さえる手の位置がくるように演奏者パラメータが設定される。メロディーラインがＡ３〜Ｄ＃４の場合、第３弦で、Ａ３で最もネック側、Ｄ＃４に近づくほどボディー側に弦を押さえる手の位置がくるように演奏者パラメータが設定される。メロディーラインがＥ４より高い場合、第４弦で、Ｅ４で最もネック側、高い音ほどボディー側に弦を押さえる手の位置がくるように演奏者パラメータが設定される。
【０３４３】
ストリングスソロ以外の場合、弓の位置を示す演奏者パラメータ（全ストリングス奏者で共通）は、図１２２の（Ｂ）に示すように、１小節毎に小節線のタイミングで弓が端に移動するように決定される。但し、ストリングスソロ以外の場合、ストロークはやや大きく設定される。また、弦を押さえる手の位置は、コードの構成音に基づいて決定される。図１２０に示すように、ストリングスセッションには、複数の演奏者オブジェクトが配置されている。例えば、左端の演奏者オブジェクトはコードのルートを担当する。また、左端から２番目、３番目、…の演奏者オブジェクトは、２番目、３番目、…の構成音を担当する。図１２０の例ではストリングス奏者が５人いるが、コードの構成音が５に満たない場合、コードの構成音のいずれかを二人の演奏者が重複して担当することになる。なお、コードの構成音として何が含まれるかは予めテーブルで保持する。
【０３４４】
ここで、図１２３〜図１２５を参照しながら、ストリングスに関する演奏者パラメータの決定方法について説明する。
【０３４５】
まず、図１２３を参照しながら、ストリングスに関する演奏者パラメータ決定処理の全体的な流れについて説明する。図１２３に示すように、まず、視覚化パラメータ決定部１１４は、ストリングスソロ確率が予め設定された一定値以上か否かを判断する（Ｓ４００）。ストリングスソロ確率が一定値以上の場合、視覚化パラメータ決定部１１４は、ステップＳ４０２の処理に進行する。一方、ストリングスソロ確率が一定値以下の場合、視覚化パラメータ決定部１１４は、ステップＳ４０４の処理に進行する。ステップＳ４０２では、視覚化パラメータ決定部１１４により、ストリングスソロ時のパラメータ設定処理が実行される（Ｓ４０２）。ステップＳ４０４では、視覚化パラメータ決定部１１４により、ストリングスソロ時以外のパラメータ設定処理が実行される（Ｓ４０４）。ステップＳ４０２、Ｓ４０４のいずれかの処理を実行すると、視覚化パラメータ決定部１１４は一連の処理を終了する。
【０３４６】
次に、図１２４を参照しながら、ストリングスソロ時のパラメータ決定処理について説明する。図１２４に示すように、まず、視覚化パラメータ決定部１１４は、メロディーラインに基づいて弦を押させる手の位置を決定する（Ｓ４０６）。次いで、視覚化パラメータ決定部１１４は、メロディーラインの変化位置に基づいて弓の位置を決定する（Ｓ４０８）。
【０３４７】
次に、図１２５を参照しながら、ストリングスソロ時以外のパラメータ決定処理について説明する。図１２５に示すように、まず、視覚化パラメータ決定部１１４は、ストリングスの存在確率が予め設定された一定値以上であるか否かを判定する（Ｓ４１０）。ストリングスの存在確率が一定値以上である場合、視覚化パラメータ決定部１１４は、ステップＳ４１４の処理に進行する。一方、ストリングスの存在確率が一定値以下である場合、視覚化パラメータ決定部１１４は、ステップＳ４１２の処理に進行する。
【０３４８】
ステップＳ４１４では、視覚化パラメータ決定部１１４により、コード構成音に基づいて弦を押させる手の位置が決定される（Ｓ４１４）。次いで、視覚化パラメータ決定部１１４により、小節線の位置に基づいて弓の位置が決定される（Ｓ４１６）。一方、ステップＳ４１２では、視覚化パラメータ決定部１１４により、弦を押さえる手の位置はそのままで、弓をバイオリンから離すように設定される（Ｓ４１２）。ステップＳ４１２、Ｓ４１６のいずれかの処理を実行すると、視覚化パラメータ決定部１１４は、ストリングスソロ時以外の演奏者パラメータ決定処理を終了する。
【０３４９】
（ブラスについて）
次に、図１２６、図１２７を参照しながら、ブラスの演奏者オブジェクトに適用される演奏者パラメータの決定方法について説明する。図１２６は、ブラスの演奏者オブジェクトに適用される演奏者パラメータの種類を示す説明図である。図１２７は、ブラスの演奏者パラメータの決定方法に関する処理の流れを示す説明図である。
【０３５０】
まず、図１２６に示すように、ブラスに関する演奏者パラメータは、ブラスの角度パラメータのみで構成される。ブラスの角度パラメータは、ブラスの存在確率が高いほど上を向き、ブラスの存在確率が低いほど下を向くように設定される。また、ブラスの存在確率がある一定以下の場合、ブラスの角度が下を向き、ブラスが口から離されるように設定される。
【０３５１】
図１２７に示すように、まず、視覚化パラメータ決定部１１４は、ブラススソロ確率が予め設定された一定値以上か否かを判断する（Ｓ４２０）。ブラスソロ確率が一定値以上の場合、視覚化パラメータ決定部１１４は、ステップＳ４２２の処理に進行する。一方、ブラスソロ確率が一定値以下の場合、視覚化パラメータ決定部１１４は、ステップＳ４２４の処理に進行する。ステップＳ４２２では、視覚化パラメータ決定部１１４により、ブラス存在確率に基づいてブラスの角度パラメータが決定される（Ｓ４２２）。一方、ステップＳ４２４では、視覚化パラメータ決定部１１４により、ブラスの角度パラメータが下方向に向き、ブラスが口から離れるように角度パラメータが設定される（Ｓ４２４）。そして、ステップＳ４２２、Ｓ４２４のいずれかの処理を実行すると、視覚化パラメータ決定部１１４は一連の処理を終了する。
【０３５２】
以上、視覚化パラメータの決定方法について説明した。このようにして決定された視覚化パラメータは、視覚化部１１６に入力されて楽曲の視覚化処理に用いられる。
【０３５３】
［２−６．ハードウェア構成（情報処理装置１００）］
上記装置が有する各構成要素の機能は、例えば、図１２８に示すハードウェア構成により、上記の機能を実現するためのコンピュータプログラムを用いて実現することが可能である。図１２８は、上記装置の各構成要素が有する機能を実現することが可能な情報処理装置のハードウェア構成を示す説明図である。この情報処理装置の形態は任意であり、例えば、パーソナルコンピュータ、携帯電話、ＰＨＳ、ＰＤＡ等の携帯情報端末、ゲーム機、又は各種の情報家電等の形態がこれに含まれる。なお、上記のＰＨＳは、Ｐｅｒｓｏｎａｌ  Ｈａｎｄｙ−ｐｈｏｎｅ  Ｓｙｓｔｅｍの略である。また、上記のＰＤＡは、Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔの略である。
【０３５４】
図１２８に示すように、情報処理装置１００は、ＣＰＵ９０２と、ＲＯＭ９０４と、ＲＡＭ９０６と、ホストバス９０８と、ブリッジ９１０と、外部バス９１２と、インターフェース９１４とを有する。さらに、情報処理装置１００は、入力部９１６と、出力部９１８と、記憶部９２０と、ドライブ９２２と、接続ポート９２４と、通信部９２６とを有する。なお、上記のＣＰＵは、Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔの略である。また、上記のＲＯＭは、Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙの略である。さらに、上記のＲＡＭは、Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙの略である。
【０３５５】
ＣＰＵ９０２は、例えば、演算処理装置又は制御装置として機能し、ＲＯＭ９０４、ＲＡＭ９０６、記憶部９２０、又はリムーバブル記録媒体９２８に記録された各種プログラムに基づいて各構成要素の動作全般又はその一部を制御する。ＲＯＭ９０４は、例えば、ＣＰＵ９０２に読み込まれるプログラムや演算に用いるデータ等を格納する。ＲＡＭ９０６は、例えば、ＣＰＵ９０２に読み込まれるプログラムや、そのプログラムを実行する際に適宜変化する各種パラメータ等を一時的又は永続的に格納する。これらの構成要素は、例えば、高速なデータ伝送が可能なホストバス９０８によって相互に接続されている。また、ホストバス９０８は、例えば、ブリッジ９１０を介して比較的データ伝送速度が低速な外部バス９１２に接続されている。
【０３５６】
入力部９１６は、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチ、及びレバー等の操作手段である。また、入力部９１６は、赤外線やその他の電波を利用して制御信号を送信することが可能なリモートコントロール手段（所謂、リモコン）であってもよい。なお、入力部９１６は、上記の操作手段を用いて入力された情報を入力信号としてＣＰＵ９０２に伝送するための入力制御回路等により構成されている。
【０３５７】
出力部９１８としては、例えば、ＣＲＴ、ＬＣＤ、ＰＤＰ、又はＥＬＤ等のディスプレイ装置が用いられる。また、出力部９１８としては、スピーカ、ヘッドホン等のオーディオ出力装置、プリンタ、携帯電話、又はファクシミリ等、取得した情報を利用者に対して視覚的又は聴覚的に通知することが可能な装置が用いられる。記憶部９２０は、各種のデータを格納するための装置であり、例えば、ＨＤＤ等の磁気記憶デバイス、半導体記憶デバイス、光記憶デバイス、又は光磁気記憶デバイス等により構成される。なお、上記のＣＲＴは、Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅの略である。また、上記のＬＣＤは、Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙの略である。さらに、上記のＰＤＰは、Ｐｌａｓｍａ  ＤｉｓｐｌａｙＰａｎｅｌの略である。そして、上記のＥＬＤは、Ｅｌｅｃｔｒｏ−Ｌｕｍｉｎｅｓｃｅｎｃｅ  Ｄｉｓｐｌａｙの略である。また、上記のＨＤＤは、Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅの略である。
【０３５８】
ドライブ９２２は、例えば、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体９２８に記録された情報を読み出し、又はリムーバブル記録媒体９２８に情報を書き込む装置である。リムーバブル記録媒体９２８としては、例えば、ＤＶＤメディア、Ｂｌｕ−ｒａｙメディア、ＨＤ  ＤＶＤメディアが用いられる。さらに、リムーバブル記録媒体９２８としては、コンパクトフラッシュ（登録商標）（ＣＦ；ＣｏｍｐａｃｔＦｌａｓｈ）、メモリースティック、又はＳＤメモリカード等が用いられる。もちろん、リムーバブル記録媒体９２８は、例えば、非接触型ＩＣチップを搭載したＩＣカード等であってもよい。なお、上記のＳＤは、Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌの略である。また、上記のＩＣは、Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔの略である。
【０３５９】
接続ポート９２４は、例えば、ＵＳＢポート、ＩＥＥＥ１３９４ポート、ＳＣＳＩ、ＲＳ−２３２Ｃポート、又は光オーディオ端子等のような外部接続機器９３０を接続するためのポートである。外部接続機器９３０は、例えば、プリンタ、携帯音楽プレーヤ、デジタルカメラ、デジタルビデオカメラ、又はＩＣレコーダ等である。なお、上記のＵＳＢは、Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓの略である。また、上記のＳＣＳＩは、Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅの略である。
【０３６０】
通信部９２６は、ネットワーク９３２に接続するための通信デバイスである。通信部９２６としては、例えば、有線又は無線ＬＡＮ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、又はＷＵＳＢ用の通信カード、光通信用のルータ、ＡＤＳＬ用のルータ、又は各種通信用のモデム等が用いられる。また、通信部９２６に接続されるネットワーク９３２は、有線又は無線により接続されたネットワークにより構成される。ネットワーク９３２は、例えば、インターネット、家庭内ＬＡＮ、赤外線通信、可視光通信、放送、又は衛星通信等である。なお、上記のＬＡＮは、Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋの略である。また、上記のＷＵＳＢは、Ｗｉｒｅｌｅｓｓ  ＵＳＢの略である。さらに、上記のＡＤＳＬは、Ａｓｙｍｍｅｔｒｉｃ  Ｄｉｇｉｔａｌ  Ｓｕｂｓｃｒｉｂｅｒ  Ｌｉｎｅの略である。
【０３６１】
［２−７．まとめ］
最後に、本実施形態の情報処理装置が有する機能構成と、当該機能構成により得られる作用効果について簡単に纏める。
【０３６２】
まず、本実施形態に係る情報処理装置の機能構成は次のように表現することができる。当該情報処理装置は、次のような構成を持つメタデータ抽出部、及びパラメータ決定部を有する。当該メタデータ抽出部は、複数の楽器音が混在した音声信号を解析し、当該音声信号の特徴量として演奏時間の経過と共に変化するメタデータを抽出するものである。音声信号の特徴量を抽出する方法としては、例えば、学習アルゴリズムに基づく特徴量推定方法が利用できる。例えば、上記のメタデータ抽出部は、所望の特徴量が与えられている音声信号を複数用い、所定の時間単位で各音声信号のデータを切り出し、切り出したデータを評価データとして学習アルゴリズムに与える。それと共に、上記のメタデータ抽出部は、各評価データの特徴量を教師データとして学習アルゴリズムに与える。すると、学習アルゴリズムに基づいて任意の音声信号の入力データから所望の特徴量を算出するための計算式を得ることができる。そこで、上記のメタデータ抽出部は、学習アルゴリズムで得られた計算式に解析対象の音声信号のデータを入力して所望の特徴量を算出する。このとき、上記のメタデータ抽出部は、時系列で変化するメタデータを特徴量に選択して計算式を取得し、当該計算式を用いて当該時系列で変化する特徴量を抽出する。このように、学習アルゴリズムを用いた特徴量抽出方法を採用することで、音声信号の波形のみから特徴量が抽出される。ところで、上記の演奏者パラメータ決定部は、前記各楽器音に対応する演奏者オブジェクトの動きを制御するための演奏者パラメータを前記メタデータ抽出部で抽出されたメタデータに基づいて決定するものである。上記のように、メタデータ抽出部で時系列変化するメタデータが得られる。そのため、このメタデータに連動してＣＧ映像やロボット等（演奏者オブジェクト）を動かし、音声信号で表現される音楽を視覚化することができる。このような視覚化処理に用いるパラメータを決定するのが上記の演奏者パラメータ決定部である。このような構成にすることで、音声信号の波形のみを用いて音楽を視覚化することが可能になる。特に、各楽器音の変化に相当する時系列メタデータを利用して、各楽器を担当する演奏者オブジェクトを動かすことで、よりリアルに音楽を視覚化することが可能になる。このような効果は、単純に音声信号の波形を周波数解析して得られる特徴量を用いても実現することが難しいものである。
【０３６３】
例えば、前記メタデータ抽出部は、前記音声信号のビート、コード進行、楽曲構造、メロディーライン、ベースライン、前記各楽器音の存在確率、前記各楽器音のソロ確率、及びボーカルの声質で形成される群の中から選択される１以上のデータを前記メタデータとして抽出する。上記のように、学習アルゴリズムを用いることで、多種多様な特徴量を音声信号の波形から抽出することが可能になる。その中でも、時系列で変化するメタデータ、及び楽器音毎に特徴のある上記のようなメタデータを用いると、あたかも演奏者オブジェクトが本当に演奏しているかのように音楽を可視化することができるようになる。
【０３６４】
さらに、前記メタデータ抽出部は、前記音声信号が属する楽曲のジャンル、前記音声信号が属する楽曲の年代、前記音声信号の演奏者に関する情報、前記音声信号に含まれる楽器音の種類、及び前記音声信号の曲調で形成される群の中から選択される１以上のデータを前記メタデータとして抽出することもできる。そこで、これらのメタデータを利用して演奏シーンに演出を加えたり、演奏者オブジェクトの外観や仕草をアレンジすることで、よりリアリティを高めたりすることができる。例えば、前記演奏者パラメータ決定部は、前記演奏者に関する情報として前記演奏者の身長及び体重の情報が抽出された場合に当該身長及び体重の情報に基づいて前記演奏者オブジェクトのサイズを表す演奏者パラメータを決定するように構成されてもよい。また、前記演奏者に関する情報として前記演奏者の性別の情報が抽出された場合に当該性別の情報に基づいて前記演奏者オブジェクトのヘアスタイル及び服装を表す演奏者パラメータが決定されてもよい。なお、これらの演出も音声信号の波形から得られた情報に基づいて行われる点に注意されたい。
【０３６５】
また、上記の情報処理装置は、前記メタデータ抽出部で抽出されたメタデータに基づいて前記演奏者オブジェクトが配置されるステージの照明を制御するための照明パラメータを決定する照明パラメータ決定部をさらに備えていてもよい。この場合、前記照明パラメータ決定部は、前記メタデータ抽出部で抽出されたビートに同期して前記照明が変化するように前記照明パラメータを決定する。さらに、前記照明パラメータ決定部は、前記メタデータ抽出部で抽出された前記各楽器音の存在確率に基づいて当該各楽器音に対応する演奏者オブジェクトを照らすスポットライトの明るさを表す照明パラメータを決定するように構成されていてもよい。そして、前記照明パラメータ決定部は、前記メタデータ抽出部で抽出された楽曲構造を参照し、演奏中の楽曲構造の種類に応じて前記照明が変化するように前記照明パラメータを決定するように構成されていてもよい。また、前記照明パラメータ決定部は、前記メタデータ抽出部で抽出された前記楽曲の年代に基づいて前記照明の色が変化するように前記照明パラメータを決定するように構成されていてもよい。このように、演奏者オブジェクトが配置されるステージの演出方法として、音声信号の波形から抽出されたメタデータを利用して照明に変化を加える方法を用いると、演奏シーンが、よりリアルなものになる。例えば、ライブを収録した音声信号などを用いると、実際の演奏シーンを擬似的に再現することになり、ユーザに新たな楽しみを提供することができる。
【０３６６】
また、上記の情報処理装置は、前記メタデータ抽出部で抽出されたメタデータに基づいて前記ステージとは異なる位置に設けられた観客席に配置される観客オブジェクトの動作を制御するための観客パラメータを決定する観客パラメータ決定部をさらに備えていてもよい。この場合、前記観客パラメータ決定部は、前記メタデータ抽出部で抽出されたビートに同期して前記観客オブジェクトの動作が変化するように前記観客パラメータを決定する。さらに、前記観客パラメータ決定部は、前記メタデータ抽出部で抽出された楽曲構造を参照し、演奏中の楽曲構造の種類に応じて前記観客オブジェクトの動作が変化するように前記観客パラメータを決定するように構成されていてもよい。演奏シーンに観客オブジェクトを含める場合、観客の動きもメタデータに基づいて制御することができる。実世界においても、楽曲の種類によって演奏会等における観客の振る舞いは異なる。逆に、この点を利用し、観客オブジェクトの動きを音声信号の波形から得られる種類等に基づいて制御することにより、より演奏シーンのリアリティを向上させることができる。
【０３６７】
また、前記演奏者パラメータ決定部は、前記メタデータ抽出部で抽出された前記各楽器音のソロ確率に基づいて当該各楽器音に対応する演奏者オブジェクトの姿勢、表情を表す演奏者パラメータを決定するように構成されていてもよい。さらに、前記演奏者パラメータ決定部は、前記メタデータ抽出部で抽出された前記各楽器音の存在確率に基づいて当該各楽器音に対応する演奏者オブジェクトの演奏する手の動きの大きさを表す演奏者パラメータを決定するように構成されていてもよい。そして、前記演奏者パラメータ決定部は、前記メタデータ抽出部で抽出されたボーカルの存在確率に基づいて当該ボーカルに対応する演奏者オブジェクトの口の開く大きさ、又はマイクを持つ手と口との間の距離を表す演奏者パラメータを決定するように構成されていてもよい。このように、演奏者毎に制御すべきパラメータの種類は異なる。
【０３６８】
例えば、前記演奏者パラメータ決定部は、前記メタデータ抽出部で抽出されたメロディーラインの平均音程と各フレームにおける当該メロディーラインの音程との差異に基づいて、或いは、前記メタデータ抽出部で抽出されたボーカルの声質に基づいて当該ボーカルに対応する演奏者オブジェクトの表情の動きを表す演奏者パラメータを決定する。また、前記演奏者パラメータ決定部は、前記メタデータ抽出部で抽出されたメロディーラインに基づいてボーカルに対応する演奏者オブジェクトのマイクを持たない手の動きを表す演奏者パラメータを決定する。ボーカルの場合、このような演奏者パラメータの制御方法を用いることで、リアルな動きが実現される。
【０３６９】
また、前記演奏者パラメータ決定部は、前記メタデータ抽出部で抽出されたコード進行に基づいてギター、キーボード、及びストリングスで形成される群の中から選択される１以上のセクションに対応する前記演奏者オブジェクトの手の位置を表す演奏者パラメータを決定する。前記演奏者パラメータ決定部は、前記メタデータ抽出部で抽出されたベースラインに基づいてベースに対応する前記演奏者オブジェクトの弦を押さえる手の位置を表す演奏者パラメータを決定する。ボーカル以外の演奏者に対しては、このような演奏者パラメータの制御方法を用いることで、リアルな動きが実現される。
【０３７０】
また、前記演奏者オブジェクトとしては、外部接続されたロボット、又はコンピュータグラフィックスで実現される演奏者映像を用いることができる。この場合、上記の情報処理装置は、前記演奏者パラメータ決定部で決定された演奏者パラメータを用いて前記外部接続されたロボットの動きを制御するか、又は前記演奏者パラメータ決定部で決定された演奏者パラメータを用いて前記演奏者映像の動きを制御するオブジェクト制御部をさらに備える。もちろん、本実施形態に係る技術は、これに限定されず、視覚化対象となるものであれば、任意の表現方法を用いて演奏者オブジェクトの動きを制御することができる。
【０３７１】
（備考）
上記の楽曲解析部１１０は、メタデータ抽出部の一例である。上記の視覚化パラメータ決定部１１４は、演奏者パラメータ決定部、照明パラメータ決定部、観客パラメータ決定部の一例である。上記の視覚化部１１６は、オブジェクト制御部の一例である。
【０３７２】
以上、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明は係る例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【０３７３】
例えば、ＣＧ映像を利用して楽曲を視覚化する場合、次のような視覚効果で演奏シーンの演出効果を高めることもできる。
【０３７４】
（１）まず、ＣＧのカメラワークを工夫して演出効果を高める方法が考えられる。例えば、ソロ演奏者が検出された場合に、そのソロ演奏者をズーム表示にする演出方法が考えられる。この演出方法は、楽曲解析部１１０で得られたソロ確率を用いて実現される。また、いくつかの仮想的なカメラを設け、小節の進行に応じてカメラを切り替える表示方法が考えられる。この表示方法は、楽曲解析部１１０で得られた小節進行を用いて実現される。このように、楽曲解析部１１０で得られたメタデータに基づいてＣＧのカメラワークを自動的に決定することで、ユーザに対して楽曲データの波形に基づくリアルな視覚効果を提供することが可能になる。
【０３７５】
（２）また、楽曲構造解析部１１０で得られた種々のメタデータを用いてステージ演出を行うこともできる。例えば、おだやかな曲の演奏中にはサビの部分でスモークを出すようなステージ演出を行うことができる。逆に、にぎやかな曲の演奏中にはサビの直前で爆発が起きたようなステージ演出を行うことができる。これらのステージ演出には、楽曲構造解析部１１０で得られる楽曲構造、及び曲調を示すメタデータが用いられる。このように、楽曲解析部１１０で得られたメタデータに基づいてＣＧのステージ演出を自動的に決定することで、ユーザに対して楽曲データの波形に基づくリアルな視覚効果を提供することが可能になる。
【０３７６】
（３）上記実施形態の説明においては、ボーカル、ギター、ベース、キーボード、ドラム、ストリングス、ブラスを例に挙げて説明した。しかし、既に説明した楽曲解析部１１０の構成を用いると、楽器の種類をより細かく検出することも可能である。例えば、ベースをウッドベース、エレキベース、シンセベースに分けて検出することが可能である。また、ドラムをアコースティックドラムとエレキドラムとに分けて検出することも可能である。さらに、観客の拍手や歓声を楽曲データの波形から検出することも可能である。そこで、楽器の種類を細かく検出し、検出した楽器の種類に応じて演奏者オブジェクトが持つ楽器や演奏者オブジェクトのＣＧ自体を変更するように構成することもできる。さらに、検出された拍手音に応じて観客に拍手をさせたり、検出した歓声に応じて観客が発声しているような動作をさせたりすることもできる。
【０３７７】
（４）上記説明の通り、楽曲解析部１１０は、音源分離部１０６で分離された各チャネルの波形に対して楽曲解析を行うことができる。そのため、楽曲解析部１１０を用いて各チャネルの波形を解析することにより、各楽器音がどのチャネルに含まれるかを検出することができる。そこで、チャネル毎に検出された各楽器音の存在確率に基づいて演奏者オブジェクトの位置を変更するように構成することも可能である。例えば、左チャネルの信号波形からギターの高い存在確率が検出された場合、ギターの演奏者オブジェクトの位置が左側にシフトされる。このように、楽曲解析部１１０で得られたメタデータに基づいて各種オブジェクトの位置や動作を自動的に決定することで、ユーザに対して楽曲データの波形に基づくリアルな視覚効果を提供することが可能になる。
【図面の簡単な説明】
【０３７８】
【図１】特徴量を計算するためのアルゴリズムを自動生成する特徴量計算式生成装置の一構成例を示す説明図である。
【図２】本発明の一実施形態に係る情報処理装置の機能構成例を示す説明図である。
【図３】同実施形態に係る音源分離方法の一例（センター抽出方法）を示す説明図である。
【図４】同実施形態に係る音源の種類を示す説明図である。
【図５】同実施形態に係るログスペクトル生成方法の一例を示す説明図である。
【図６】同実施形態に係るログスペクトル生成方法で生成されるログスペクトルの一例を示す説明図である。
【図７】同実施形態の楽曲解析方法に係る一連の処理の流れを示す説明図である。
【図８】同実施形態に係るビート検出部の構成例を示す説明図である。
【図９】同実施形態に係るビート検出方法の一例を示す説明図である。
【図１０】同実施形態に係るビート検出方法の一例を示す説明図である。
【図１１】同実施形態に係るビート検出方法の一例を示す説明図である。
【図１２】同実施形態に係るビート検出方法の一例を示す説明図である。
【図１３】同実施形態に係るビート検出方法の一例を示す説明図である。
【図１４】同実施形態に係るビート検出方法の一例を示す説明図である。
【図１５】同実施形態に係るビート検出方法の一例を示す説明図である。
【図１６】同実施形態に係るビート検出方法の一例を示す説明図である。
【図１７】同実施形態に係るビート検出方法の一例を示す説明図である。
【図１８】同実施形態に係るビート検出方法の一例を示す説明図である。
【図１９】同実施形態に係るビート検出方法の一例を示す説明図である。
【図２０】同実施形態に係るビート検出方法の一例を示す説明図である。
【図２１】同実施形態に係るビート検出方法の一例を示す説明図である。
【図２２】同実施形態に係るビート検出方法の一例を示す説明図である。
【図２３】同実施形態に係るビート検出方法の一例を示す説明図である。
【図２４】同実施形態に係るビート検出方法の一例を示す説明図である。
【図２５】同実施形態に係るビート検出方法の一例を示す説明図である。
【図２６】同実施形態に係るビート検出方法の一例を示す説明図である。
【図２７】同実施形態に係るビート検出方法の一例を示す説明図である。
【図２８】同実施形態に係るビート検出方法の一例を示す説明図である。
【図２９】同実施形態に係るビート検出方法の一例を示す説明図である。
【図３０】同実施形態に係るビート検出方法の一例を示す説明図である。
【図３１】同実施形態に係るビート検出方法で検出されたビート検出結果の一例を示す説明図である。
【図３２】同実施形態に係る楽曲構造解析部の構成例を示す説明図である。
【図３３】同実施形態に係る楽曲構造解析方法の一例を示す説明図である。
【図３４】同実施形態に係る楽曲構造解析方法の一例を示す説明図である。
【図３５】同実施形態に係る楽曲構造解析方法の一例を示す説明図である。
【図３６】同実施形態に係る楽曲構造解析方法の一例を示す説明図である。
【図３７】同実施形態に係る楽曲構造解析方法の一例を示す説明図である。
【図３８】同実施形態に係る楽曲構造解析方法の一例を示す説明図である。
【図３９】同実施形態に係る楽曲構造解析方法の一例を示す説明図である。
【図４０】同実施形態に係るコード確率検出部の構成例を示す説明図である。
【図４１】同実施形態に係るコード確率検出方法の一例を示す説明図である。
【図４２】同実施形態に係るコード確率検出方法の一例を示す説明図である。
【図４３】同実施形態に係るコード確率検出方法の一例を示す説明図である。
【図４４】同実施形態に係るコード確率検出方法の一例を示す説明図である。
【図４５】同実施形態に係るコード確率検出方法の一例を示す説明図である。
【図４６】同実施形態に係るキー検出部の構成例を示す説明図である。
【図４７】同実施形態に係るキー検出方法の一例を示す説明図である。
【図４８】同実施形態に係るキー検出方法の一例を示す説明図である。
【図４９】同実施形態に係るキー検出方法の一例を示す説明図である。
【図５０】同実施形態に係るキー検出方法の一例を示す説明図である。
【図５１】同実施形態に係るキー検出方法の一例を示す説明図である。
【図５２】同実施形態に係るキー検出方法の一例を示す説明図である。
【図５３】同実施形態に係るキー検出方法の一例を示す説明図である。
【図５４】同実施形態に係るキー検出方法の一例を示す説明図である。
【図５５】同実施形態に係るキー検出方法の一例を示す説明図である。
【図５６】同実施形態に係るキー検出方法の一例を示す説明図である。
【図５７】同実施形態に係る小節線検出部の構成例を示す説明図である。
【図５８】同実施形態に係る小節線検出方法の一例を示す説明図である。
【図５９】同実施形態に係る小節線検出方法の一例を示す説明図である。
【図６０】同実施形態に係る小節線検出方法の一例を示す説明図である。
【図６１】同実施形態に係る小節線検出方法の一例を示す説明図である。
【図６２】同実施形態に係る小節線検出方法の一例を示す説明図である。
【図６３】同実施形態に係る小節線検出方法の一例を示す説明図である。
【図６４】同実施形態に係る小節線検出方法の一例を示す説明図である。
【図６５】同実施形態に係る小節線検出方法の一例を示す説明図である。
【図６６】同実施形態に係る小節線検出方法の一例を示す説明図である。
【図６７】同実施形態に係る小節線検出方法の一例を示す説明図である。
【図６８】同実施形態に係るコード進行検出部の構成例を示す説明図である。
【図６９】同実施形態に係るコード進行検出方法の一例を示す説明図である。
【図７０】同実施形態に係るコード進行検出方法の一例を示す説明図である。
【図７１】同実施形態に係るコード進行検出方法の一例を示す説明図である。
【図７２】同実施形態に係るコード進行検出方法の一例を示す説明図である。
【図７３】同実施形態に係るコード進行検出方法の一例を示す説明図である。
【図７４】同実施形態に係るコード進行検出方法の一例を示す説明図である。
【図７５】同実施形態に係るメロディー検出部の構成例を示す説明図である。
【図７６】同実施形態に係るメロディーライン検出方法の一例を示す説明図である。
【図７７】同実施形態に係るメロディーライン検出方法の一例を示す説明図である。
【図７８】同実施形態に係るメロディーライン検出方法の一例を示す説明図である。
【図７９】同実施形態に係るメロディーライン検出方法の一例を示す説明図である。
【図８０】同実施形態に係るメロディーライン検出方法の一例を示す説明図である。
【図８１】同実施形態に係るメロディーライン検出方法の一例を示す説明図である。
【図８２】同実施形態に係るメロディーライン検出方法の一例を示す説明図である。
【図８３】同実施形態に係るメロディーライン検出方法の一例を示す説明図である。
【図８４】同実施形態に係るメロディーライン検出方法の一例を示す説明図である。
【図８５】同実施形態に係るメロディーライン検出方法の一例を示す説明図である。
【図８６】同実施形態に係るベース検出部の構成例を示す説明図である。
【図８７】同実施形態に係るメタデータ検出方法（楽曲構造解析方法）の一例を示す説明図である。
【図８８】同実施形態に係るメタデータ検出方法（楽曲構造解析方法）の一例を示す説明図である。
【図８９】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図９０】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図９１】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図９２】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図９３】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図９４】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図９５】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図９６】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図９７】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図９８】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図９９】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１００】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１０１】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１０２】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１０３】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１０４】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１０５】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１０６】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１０７】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１０８】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１０９】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１１０】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１１１】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１１２】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１１３】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１１４】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１１５】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１１６】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１１７】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１１８】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１１９】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１２０】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１２１】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１２２】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１２３】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１２４】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１２５】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１２６】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１２７】同実施形態に係る視覚化パラメータの決定方法の一例を示す説明図である。
【図１２８】同実施形態に係る情報処理装置のハードウェア構成例を示す説明図である。
【符号の説明】
【０３７９】
１０    特徴量計算式生成装置
１２    オペレータ記憶部
１４    抽出式生成部
１６    オペレータ選択部
２０    抽出式リスト生成部
２２    抽出式選択部
２４    計算式設定部
２６    計算式生成部
２８    抽出式計算部
３０    係数算出部
３２    特徴量選択部
３４    評価データ取得部
３６    教師データ取得部
３８    式評価部
４０    計算式評価部
４２    抽出式評価部
１００    情報処理装置
１０２    楽曲データ保存部
１０４    楽曲再生部
１０６    音源分離部
１０８    ログスペクトル解析部
１１０    楽曲解析部
１１２    メタデータ保存部
１１４    視覚化パラメータ決定部
１１６    視覚化部
１３２    ビート検出部
１３４    楽曲構造解析部
１３６    コード確率検出部
１３８    キー検出部
１４０    小節線検出部
１４２    コード進行検出部
１４４    メロディー検出部
１４６    ベース検出部
１４８    メタデータ検出部
１５２    左チャネル帯域分割部
１５４    右チャネル帯域分割部
１５６    帯域通過フィルタ
１５８    左チャネル帯域合成部
１６０    右チャネル帯域合成部
１６２    再標本化部
１６４    オクターブ分割部
１６６    バンドパスフィルタバンク
２０２    ビート確率算出部
２０４    ビート解析部
２１２    オンセット検出部
２１４    ビートスコア計算部
２１６    ビート探索部
２１８    一定テンポ判定部
２２０    一定テンポ用ビート再探索部
２２２    ビート決定部
２２４    テンポ補正部
２２６    ビート区間特徴量計算部
２２８    相関計算部
２３０    類似確率生成部
２３２    ビート区間特徴量計算部
２３４    ルート別特徴量準備部
２３６    コード確率計算部
２３８    相対コード確率生成部
２４０    特徴量準備部
２４２    キー確率計算部
２４６    キー決定部
２５２    第１特徴量抽出部
２５４    第２特徴量抽出部
２５６    小節線確率計算部
２５８    小節線確率修正部
２６０    小節線決定部
２６２    小節線再決定部
２７２    ビート区間特徴量計算部
２７４    ルート別特徴量準備部
２７６    コード確率計算部
２７８    コード確率修正部
２８０    コード進行決定部
２８２    メロディー確率推定部
２８４    分類推定部
２８６    音程分布推定部
２８８    メロディーライン決定部
２９０    平滑化部
２９２    ベース確率推定部
２９４    ベースライン決定部
２９６    平滑化部
【図１】
2010134790.tif 000020
【図２】
2010134790.tif 000021
【図３】
2010134790.tif 000022
【図４】
2010134790.tif 000023
【図５】
2010134790.tif 000024
【図７】
2010134790.tif 000025
【図８】
2010134790.tif 000026
【図９】
2010134790.tif 000027
【図１０】
2010134790.tif 000028
【図１１】
2010134790.tif 000029
【図１２】
2010134790.tif 000030
【図１３】
2010134790.tif 000031
【図１４】
2010134790.tif 000032
【図１５】
2010134790.tif 000033
【図１６】
2010134790.tif 000034
【図１７】
2010134790.tif 000035
【図１８】
2010134790.tif 000036
【図１９】
2010134790.tif 000037
【図２０】
2010134790.tif 000038
【図２１】
2010134790.tif 000039
【図２２】
2010134790.tif 000040
【図２３】
2010134790.tif 000041
【図２４】
2010134790.tif 000042
【図２５】
2010134790.tif 000043
【図２６】
2010134790.tif 000044
【図２７】
2010134790.tif 000045
【図２８】
2010134790.tif 000046
【図２９】
2010134790.tif 000047
【図３０】
2010134790.tif 000048
【図３１】
2010134790.tif 000049
【図３２】
2010134790.tif 000050
【図３３】
2010134790.tif 000051
【図３４】
2010134790.tif 000052
【図３５】
2010134790.tif 000053
【図３６】
2010134790.tif 000054
【図３７】
2010134790.tif 000055
【図３８】
2010134790.tif 000056
【図３９】
2010134790.tif 000057
【図４０】
2010134790.tif 000058
【図４１】
2010134790.tif 000059
【図４２】
2010134790.tif 000060
【図４３】
2010134790.tif 000061
【図４４】
2010134790.tif 000062
【図４５】
2010134790.tif 000063
【図４６】
2010134790.tif 000064
【図４７】
2010134790.tif 000065
【図４８】
2010134790.tif 000066
【図４９】
2010134790.tif 000067
【図５０】
2010134790.tif 000068
【図５１】
2010134790.tif 000069
【図５２】
2010134790.tif 000070
【図５３】
2010134790.tif 000071
【図５４】
2010134790.tif 000072
【図５５】
2010134790.tif 000073
【図５６】
2010134790.tif 000074
【図５７】
2010134790.tif 000075
【図５８】
2010134790.tif 000076
【図５９】
2010134790.tif 000077
【図６０】
2010134790.tif 000078
【図６１】
2010134790.tif 000079
【図６２】
2010134790.tif 000080
【図６３】
2010134790.tif 000081
【図６４】
2010134790.tif 000082
【図６５】
2010134790.tif 000083
【図６６】
2010134790.tif 000084
【図６７】
2010134790.tif 000085
【図６８】
2010134790.tif 000086
【図６９】
2010134790.tif 000087
【図７０】
2010134790.tif 000088
【図７１】
2010134790.tif 000089
【図７２】
2010134790.tif 000090
【図７３】
2010134790.tif 000091
【図７４】
2010134790.tif 000092
【図７５】
2010134790.tif 000093
【図７６】
2010134790.tif 000094
【図７７】
2010134790.tif 000095
【図８２】
2010134790.tif 000096
【図８４】
2010134790.tif 000097
【図８５】
2010134790.tif 000098
【図８６】
2010134790.tif 000099
【図８８】
2010134790.tif 000100
【図８９】
2010134790.tif 000101
【図９０】
2010134790.tif 000102
【図９１】
2010134790.tif 000103
【図９２】
2010134790.tif 000104
【図９３】
2010134790.tif 000105
【図９４】
2010134790.tif 000106
【図９５】
2010134790.tif 000107
【図９６】
2010134790.tif 000108
【図９７】
2010134790.tif 000109
【図９８】
2010134790.tif 000110
【図９９】
2010134790.tif 000111
【図１００】
2010134790.tif 000112
【図１０１】
2010134790.tif 000113
【図１０２】
2010134790.tif 000114
【図１０３】
2010134790.tif 000115
【図１０４】
2010134790.tif 000116
【図１０５】
2010134790.tif 000117
【図１０６】
2010134790.tif 000118
【図１０７】
2010134790.tif 000119
【図１０８】
2010134790.tif 000120
【図１０９】
2010134790.tif 000121
【図１１０】
2010134790.tif 000122
【図１１１】
2010134790.tif 000123
【図１１２】
2010134790.tif 000124
【図１１３】
2010134790.tif 000125
【図１１４】
2010134790.tif 000126
【図１１５】
2010134790.tif 000127
【図１１６】
2010134790.tif 000128
【図１１７】
2010134790.tif 000129
【図１１８】
2010134790.tif 000130
【図１１９】
2010134790.tif 000131
【図１２０】
2010134790.tif 000132
【図１２１】
2010134790.tif 000133
【図１２２】
2010134790.tif 000134
【図１２３】
2010134790.tif 000135
【図１２４】
2010134790.tif 000136
【図１２５】
2010134790.tif 000137
【図１２６】
2010134790.tif 000138
【図１２７】
2010134790.tif 000139
【図１２８】
2010134790.tif 000140
【図６】
2010134790.tif 000141
【図７８】
2010134790.tif 000142
【図７９】
2010134790.tif 000143
【図８０】
2010134790.tif 000144
【図８１】
2010134790.tif 000145
【図８３】
2010134790.tif 000146
【図８７】
2010134790.tif 000147