(57)【特許請求の範囲】
【請求項１】
入力信号を楽曲のみからなる参照信号と比較することによって、前記入力信号の楽曲を同定する信号処理装置において、
前記入力信号から信号成分のパワースペクトルが極大となる点を検出する検出手段と、
所定の時間区間における前記極大となる点の頻度に基づいて、楽曲らしさを示す楽曲度を算出する楽曲度算出手段と、
時間周波数領域に変換された前記入力信号の各領域における前記楽曲度に応じた重み分布を生成する重み分布生成手段と、
前記重み分布による重み付けに基づいて、時間周波数領域に変換された前記入力信号の各領域における特徴量と、時間周波数領域に変換された前記参照信号の各領域における前記特徴量との類似度を算出する類似度算出手段と
を備える信号処理装置。
【請求項２】
前記重み分布生成手段は、前記楽曲度が所定の閾値を超える領域に対して前記楽曲度に応じた重み付けをし、前記楽曲度が所定の閾値を超えない領域をマスクする前記重み分布を生成する
請求項１に記載の信号処理装置。
【請求項３】
前記頻度は、前記極大となる点の周波数毎の頻度である
請求項１または２に記載の信号処理装置。
【請求項４】
前記類似度算出手段は、前記入力信号の特徴量と、複数の前記参照信号の特徴量との前記類似度を算出し、
複数の前記類似度の中で、所定の閾値を超える前記類似度のうち、最大の類似度が算出された前記参照信号の楽曲を、前記入力信号の楽曲であると判定する判定手段をさらに備える
請求項１に記載の信号処理装置。
【請求項５】
前記類似度算出手段は、前記入力信号の特徴量と、複数の前記参照信号の特徴量との前記類似度を算出し、
複数の前記類似度の中で、所定の閾値を超える前記類似度が算出された複数の前記参照信号の楽曲を、前記入力信号の楽曲であると判定する判定手段をさらに備える
請求項１に記載の信号処理装置。
【請求項６】
前記類似度算出手段は、前記重み分布による重み付けに基づいて、時間周波数領域に変換された所定時間分の前記入力信号の各領域における前記特徴量と、時間周波数領域に変換された前記参照信号の前記所定時間に対応する領域における前記特徴量との類似度を算出する
請求項１に記載の信号処理装置。
【請求項７】
入力信号を楽曲のみからなる参照信号と比較することによって、前記入力信号の楽曲を同定する信号処理方法において、
前記入力信号から信号成分のパワースペクトルが極大となる点を検出する検出ステップと、
所定の時間区間における前記極大となる点の頻度に基づいて、楽曲らしさを示す楽曲度を算出する楽曲度算出ステップと、
時間周波数領域に変換された前記入力信号の各領域における前記楽曲度に応じた重み分布を生成する重み分布生成ステップと、
前記重み分布による重み付けに基づいて、時間周波数領域に変換された前記入力信号の各領域における特徴量と、時間周波数領域に変換された前記参照信号の各領域における前記特徴量との類似度を算出する類似度算出ステップと
を含む信号処理方法。
【請求項８】
入力信号を楽曲のみからなる参照信号と比較することによって、前記入力信号の楽曲を同定する信号処理をコンピュータに実行させるプログラムにおいて、
前記入力信号から信号成分のパワースペクトルが極大となる点を検出する検出ステップと、
所定の時間区間における前記極大となる点の頻度に基づいて、楽曲らしさを示す楽曲度を算出する楽曲度算出ステップと、
時間周波数領域に変換された前記入力信号の各領域における前記楽曲度に応じた重み分布を生成する重み分布生成ステップと、
前記重み分布による重み付けに基づいて、時間周波数領域に変換された前記入力信号の各領域における特徴量と、時間周波数領域に変換された前記参照信号の各領域における前記特徴量との類似度を算出する類似度算出ステップと
を含む処理をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、信号処理装置および方法、並びにプログラムに関し、特に、楽曲と雑音とが混在する入力信号から、その楽曲を同定することができるようにする信号処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
従来、入力信号として入力される楽曲を同定するために、入力信号の特徴量と、同定される楽曲の候補となる参照信号の特徴量とのマッチング処理が行われている。しかしながら、例えば、ドラマ等のテレビジョン番組の放送音源を入力信号とした場合、入力信号には、BGM（Back Ground Music）としての楽曲の信号成分と、人の会話や騒音（環境雑音）等、楽曲以外の信号成分である雑音成分（以下、単に雑音ともいう）とが混在していることが多く、この雑音による入力信号の特徴量の変化が、マッチング処理の結果に影響を及ぼしてしまう。
【０００３】
そこで、入力信号の特徴量において、信頼度の低い成分をマスクするマスクパターンを用いて、信頼度の高い成分のみを用いてマッチング処理を行う技術が提案されている。
【０００４】
具体的には、時間周波数領域の信号に変換された入力信号の特徴量を表現する特徴行列に対して、所定の時間周波数領域に対応する行列成分をマスクする複数種類のマスクパターンを予め用意し、入力信号の特徴量とデータベース内の複数の参照信号の特徴量とのマッチング処理を全てのマスクパターンを用いて行い、最も高い類似度が算出された参照信号の楽曲を、入力信号の楽曲として同定するようにしたものがある（例えば、特許文献１参照）。
【０００５】
また、入力信号において平均パワーが大きい時間区間における成分を、楽曲以外の雑音が重畳されている成分と仮定し、入力信号において平均パワーが小さい時間区間の特徴量のみを用いてマッチングを行うようにするマスクパターンを作成するようにしたものがある（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−２７６７７６号公報
【特許文献２】特開２００４−３２６０５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、入力信号において、どの時間にどの周波数の雑音が重畳されているかは予測できず、そのような入力信号に適したマスクパターンを予め用意することは困難であるので、特許文献１の技術では、適切なマッチング処理を行うことができず、楽曲と雑音とが混在する入力信号から、その楽曲を精度良く同定することはできない。
【０００８】
また、特許文献２によれば、入力信号に応じたマスクパターンを作成することはできるが、そのマスクパターンは、周波数成分が考慮されておらず、入力信号に適したマスクパターンとは言えない。さらに、図１の左側に示されるように、時間周波数領域の入力信号において、楽曲の信号成分Dmに人の会話による雑音Dvが含まれている場合、特許文献２の技術では、人の会話が途切れている領域S1およびS2におけるわずかな時間区間の特徴量のみを用いてしかマッチング処理を行うことができないので、楽曲と雑音とが混在する入力信号から、その楽曲を精度良く同定することは困難である。楽曲と雑音とが混在する入力信号から、その楽曲を精度良く同定するには、図１の右側に示されるように、領域S3およびS4における楽曲の信号成分Dmの特徴量を用いてマッチング処理を行うことが望ましい。
【０００９】
本発明は、このような状況に鑑みてなされたものであり、入力信号から楽曲を精度良く同定することができるようにするものである。
【課題を解決するための手段】
【００１０】
本発明の一側面の信号処理装置は、入力信号を楽曲のみからなる参照信号と比較することによって、前記入力信号の楽曲を同定する信号処理装置であって、前記入力信号から信号成分のパワースペクトルが極大となる点を検出する検出手段と、所定の時間区間における前記極大となる点の頻度に基づいて、楽曲らしさを示す楽曲度を算出する楽曲度算出手段と、時間周波数領域に変換された前記入力信号の各領域における前記楽曲度に応じた重み分布を生成する重み分布生成手段と、前記重み分布による重み付けに基づいて、時間周波数領域に変換された前記入力信号の各領域における特徴量と、時間周波数領域に変換された前記参照信号の各領域における前記特徴量との類似度を算出する類似度算出手段とを備える。
【００１１】
前記重み分布生成手段には、前記楽曲度が所定の閾値を超える領域に対して前記楽曲度に応じた重み付けをし、前記楽曲度が所定の閾値を超えない領域をマスクする前記重み分布を生成させることができる。
【００１３】
前記頻度は、前記極大となる点の周波数毎の出現頻度とされる。
【００１４】
前記類似度算出手段には、前記入力信号の特徴量と、複数の前記参照信号の特徴量との前記類似度を算出させ、前記信号処理装置には、複数の前記類似度の中で、所定の閾値を超える前記類似度のうち、最大の類似度が算出された前記参照信号の楽曲を、前記入力信号の楽曲であると判定する判定手段をさらに設けることができる。
【００１５】
前記類似度算出手段には、前記入力信号の特徴量と、複数の前記参照信号の特徴量との前記類似度を算出させ、複数の前記類似度の中で、所定の閾値を超える前記類似度が算出された複数の前記参照信号の楽曲を、前記入力信号の楽曲であると判定する判定手段をさらに設けることができる。
【００１６】
前記類似度算出手段には、前記重み分布による重み付けに基づいて、時間周波数領域に変換された所定時間分の前記入力信号の各領域における前記特徴量と、時間周波数領域に変換された前記参照信号の前記所定時間に対応する領域における前記特徴量との類似度を算出させることができる。
【００１７】
本発明の一側面の信号処理方法は、入力信号を楽曲のみからなる参照信号と比較することによって、前記入力信号の楽曲を同定する信号処理方法であって、前記入力信号から信号成分のパワースペクトルが極大となる点を検出する検出ステップと、所定の時間区間における前記極大となる点の頻度に基づいて、楽曲らしさを示す楽曲度を算出する楽曲度算出ステップと、時間周波数領域に変換された前記入力信号の各領域における前記楽曲度に応じた重み分布を生成する重み分布生成ステップと、前記重み分布による重み付けに基づいて、時間周波数領域に変換された前記入力信号の各領域における特徴量と、時間周波数領域に変換された前記参照信号の各領域における前記特徴量との類似度を算出する類似度算出ステップとを含む。
【００１８】
本発明の一側面のプログラムは、入力信号を楽曲のみからなる参照信号と比較することによって、前記入力信号の楽曲を同定する信号処理をコンピュータに実行させるプログラムであって、前記入力信号から信号成分のパワースペクトルが極大となる点を検出する検出ステップと、所定の時間区間における前記極大となる点の頻度に基づいて、楽曲らしさを示す楽曲度を算出する楽曲度算出ステップと、時間周波数領域に変換された前記入力信号の各領域における前記楽曲度に応じた重み分布を生成する重み分布生成ステップと、前記重み分布による重み付けに基づいて、時間周波数領域に変換された前記入力信号の各領域における特徴量と、時間周波数領域に変換された前記参照信号の各領域における前記特徴量との類似度を算出する類似度算出ステップとを含む処理をコンピュータに実行させる。
【００１９】
本発明の一側面においては、入力信号から信号成分のパワースペクトルが極大となる点が検出され、所定の時間区間における極大となる点の頻度に基づいて、楽曲らしさを示す楽曲度が算出され、時間周波数領域に変換された入力信号の各領域における楽曲度に応じた重み分布が生成され、重み分布による重み付けに基づいて、時間周波数領域に変換された入力信号の各領域における特徴量と、時間周波数領域に変換された参照信号の各領域における特徴量との類似度を算出される。
【発明の効果】
【００２０】
本発明の一側面によれば、入力信号から楽曲を精度良く同定することが可能となる。
【図面の簡単な説明】
【００２１】
【図１】マッチング処理に用いられる入力信号の特徴量について説明する図である。
【図２】本発明を適用した信号処理装置の一実施の形態の構成を示すブロック図である。
【図３】楽曲度算出部の機能構成例を示すブロック図である。
【図４】マスクパターン生成部の機能構成例を示すブロック図である。
【図５】楽曲同定処理について説明するフローチャートである。
【図６】入力信号解析処理について説明するフローチャートである。
【図７】入力信号の特徴量について説明する図である。
【図８】楽曲度算出処理について説明するフローチャートである。
【図９】楽曲度の算出について説明する図である。
【図１０】楽曲度の算出について説明する図である。
【図１１】マスクパターン生成処理について説明するフローチャートである。
【図１２】マスクパターンの生成について説明する図である。
【図１３】参照信号解析処理について説明するフローチャートである。
【図１４】マッチング処理について説明するフローチャートである。
【図１５】入力信号の特徴量と参照信号の特徴量とのマッチング処理について説明する図である。
【図１６】コンピュータのハードウェアの構成例を示すブロック図である。
【発明を実施するための形態】
【００２２】
以下、本発明の実施の形態について図を参照して説明する。
【００２３】
［信号処理装置の構成］
図２は、本発明を適用した信号処理装置の一実施の形態の構成を示している。
【００２４】
図２の信号処理装置１１は、楽曲の信号成分と、人の会話や騒音等の雑音成分（雑音）とが混在した入力信号と、雑音が混在しない楽曲の信号成分からなる参照信号とを比較することで、入力信号の楽曲を同定し、その同定結果を出力する。
【００２５】
信号処理装置１１は、入力信号解析部３１、参照信号解析部３２、およびマッチング処理部３３から構成される。
【００２６】
入力信号解析部３１は、外部の装置等から入力される入力信号を解析し、入力信号の特徴を表す特徴量を入力信号から抽出するとともに、入力信号と参照信号との比較に用いられるマスクパターンを生成し、これらをマッチング処理部３３に供給する。マスクパターンの生成の詳細については、図１２等を参照して後述する。
【００２７】
入力信号解析部３１は、切り出し部５１、時間周波数変換部５２、特徴量抽出部５３、楽曲度算出部５４、およびマスクパターン生成部５５を備えている。
【００２８】
切り出し部５１は、入力信号から所定時間分の信号を切り出し、時間周波数変換部５２に供給する。
【００２９】
時間周波数変換部５２は、切り出し部５１からの所定時間分の入力信号を、時間周波数領域の信号（スペクトログラム）に変換し、特徴量抽出部５３および楽曲度算出部５４に供給する。
【００３０】
特徴量抽出部５３は、時間周波数変換部５２からの入力信号のスペクトログラムから、そのスペクトログラムの時間周波数領域毎に、入力信号の特徴を表す特徴量を抽出し、マッチング処理部３３に供給する。
【００３１】
楽曲度算出部５４は、時間周波数変換部５２からの入力信号のスペクトログラムに基づいて、そのスペクトログラムの時間周波数領域毎に、入力信号の楽曲らしさの指標となる楽曲度を算出し、マスクパターン生成部５５に供給する。
【００３２】
マスクパターン生成部５５は、楽曲度算出部５４からの、スペクトログラムの時間周波数領域毎の楽曲度に基づいて、入力信号の特徴量と参照信号の特徴量とのマッチング処理に用いられるマスクパターンを生成し、マッチング処理部３３に供給する。
【００３３】
参照信号解析部３２は、図示せぬ記憶部に蓄積されているか、または、外部の装置等から入力されてくる複数の参照信号を解析し、それぞれの参照信号の特徴を表す特徴量を参照信号から抽出し、マッチング処理部３３に供給する。
【００３４】
参照信号解析部３２は、時間周波数変換部６１および特徴量抽出部６２を備えている。
【００３５】
時間周波数変換部６１は、参照信号をスペクトログラムに変換し、特徴量抽出部６２に供給する。
【００３６】
特徴量抽出部６２は、時間周波数変換部６１からの参照信号のスペクトログラムから、そのスペクトログラムの時間周波数領域毎に、参照信号の特徴を表す特徴量を抽出し、マッチング処理部３３に供給する。
【００３７】
マッチング処理部３３は、入力信号解析部３１からのマスクパターンを用いて、入力信号解析部３１からの入力信号の特徴量と、参照信号解析部３２からの参照信号の特徴量とのマッチング処理を行うことで、入力信号に含まれる楽曲を同定する。
【００３８】
マッチング処理部３３は、類似度算出部７１および比較判定部７２を備えている。
【００３９】
類似度算出部７１は、入力信号解析部３１からのマスクパターンを用いて、入力信号解析部３１からの入力信号の特徴量と、参照信号解析部３２からの複数の参照信号の特徴量との類似度を算出し、算出された複数の類似度を、比較判定部７２に供給する。
【００４０】
比較判定部７２は、類似度算出部７１からの複数の類似度の中で、所定の閾値を超える類似度のうち、最大の類似度が算出された参照信号の楽曲を、入力信号に含まれる楽曲であると判定し、その参照信号の楽曲の属性を表す楽曲属性情報を、同定結果として出力する。
【００４１】
［楽曲度算出部の構成］
次に、図３を参照して、図２の楽曲度算出部５４の詳細な構成について説明する。
【００４２】
図３の楽曲度算出部５４は、時間区間選択部８１、ピーク検出部８２、ピーク頻度算出部８３、強調処理部８４、および出力部８５を備えている。
【００４３】
時間区間選択部８１は、時間周波数変換部５２からの入力信号のスペクトログラムにおいて、所定の時間区間のスペクトログラムを選択し、ピーク検出部８２に供給する。
【００４４】
ピーク検出部８２は、時間区間選択部８１によって選択された所定の時間区間のスペクトログラムにおいて、時間フレーム毎に、信号成分の強さが極大となる点であるピークを検出する。
【００４５】
ピーク頻度算出部８３は、所定の時間区間のスペクトログラムにおいて、ピーク検出部８２によって検出されたピークの、周波数毎の出現頻度を求める。
【００４６】
強調処理部８４は、ピーク頻度算出部８３によって求められた出現頻度に対して、その値を強調する強調処理を施し、出力部８５に供給する。
【００４７】
出力部８５は、強調処理部８４によって強調処理が施された、所定の時間区間分のスペクトログラムについてのピーク頻度を保持する。また、出力部８５は、全時間区間分のスペクトログラムについてのピーク頻度を、入力信号の楽曲らしさの指標となる楽曲度として、マスクパターン生成部５５に供給（出力）する。
【００４８】
このようにして、時間周波数領域における所定の時間区分毎、単位周波数毎に値（要素）を持つ楽曲度が算出される。
【００４９】
［マスクパターン生成部の構成］
次に、図４を参照して、図２のマスクパターン生成部５５の詳細な構成について説明する。
【００５０】
図４のマスクパターン生成部５５は、抽出部９１、線形変換部９２、割り当て部９３、マスク処理部９４、およびリサンプリング処理部９５を備えている。
【００５１】
抽出部９１は、楽曲度算出部５４からの楽曲度の各要素のうち、要素の値が所定の閾値を超えるものを抽出し、線形変換部９２に供給する。
【００５２】
線形変換部９２は、抽出部９１によって抽出された要素の値に対して、所定の線形変換処理を施し、割り当て部９３に供給する。
【００５３】
割り当て部９３は、線形変換部９２によって所定の線形変換処理が施された結果得られた値を、時間周波数領域の楽曲度において、抽出部９１によって抽出された要素の周辺要素に割り当てる。
【００５４】
マスク処理部９４は、時間周波数領域の楽曲度において、抽出部９１によって抽出されず、かつ、線形変換された値が割り当て部９３によって割り当てられていない領域（要素）をマスクする。
【００５５】
リサンプリング処理部９５は、上述した領域がマスクされた時間周波数領域の楽曲度を、特徴量抽出部５３によって抽出される入力信号の特徴量の時間粒度（要素あたりの時間区間の幅）に対応するように、時間方向にリサンプリング処理を行う。リサンプリング処理部９５は、リサンプリング処理の結果得られた楽曲度を、入力信号の特徴量と参照信号の特徴量とのマッチング処理に用いられるマスクパターンとして、マッチング処理部３３に供給する。
【００５６】
［信号処理装置の楽曲同定処理について］
次に、図５のフローチャートを参照して、信号処理装置１１の楽曲同定処理について説明する。楽曲同定処理は、外部の装置等から、同定されるべき楽曲が含まれる入力信号が信号処理装置１１に入力されると開始される。なお、信号処理装置１１には、入力信号が、時間的に連続して入力される。
【００５７】
ステップＳ１１において、入力信号解析部３１は、入力信号解析処理を実行し、外部の装置等から入力された入力信号を解析し、入力信号の特徴量を入力信号から抽出するとともに、入力信号と参照信号との比較に用いられるマスクパターンを生成する。
【００５８】
［入力信号解析処理について］
ここで、図６のフローチャートを参照して、図５のフローチャートのステップＳ１１における入力信号解析処理の詳細について説明する。
【００５９】
ステップＳ３１において、入力信号解析部３１の切り出し部５１は、入力信号から所定時間（例えば、15秒間）分の信号を切り出し、時間周波数変換部５２に供給する。
【００６０】
ステップＳ３２において、時間周波数変換部５２は、切り出し部５１からの所定時間分の入力信号をスペクトログラムに変換し、特徴量抽出部５３および楽曲度算出部５４に供給する。なお、時間周波数変換部５２は、スペクトログラムの周波数成分をメル尺度で圧縮するメル周波数変換などの周波数軸歪曲処理を行うようにしてもよい。
【００６１】
ステップＳ３３において、特徴量抽出部５３は、時間周波数変換部５２からの入力信号のスペクトログラムから、そのスペクトログラムの時間周波数領域毎に特徴量を抽出し、マッチング処理部３３に供給する。より具体的には、特徴量抽出部５３は、入力信号のスペクトログラムについて、ある時間区間（例えば、0.25秒間）毎のパワースペクトルの平均値を求め、正規化し、時系列に並べたものを特徴量とする。
【００６２】
図７は、特徴量抽出部５３によって抽出される特徴量の例について説明する図である。
【００６３】
図７に示されるように、入力信号のスペクトログラムから抽出された入力信号の特徴量Ｓは、時間方向および周波数方向に要素（以下、成分ともいう）を有している。特徴量Ｓにおける四角形（マス目）のそれぞれは、各時間、各周波数毎の成分を表しており、図示されないが、それぞれ特徴量としての値を有する。また、図７に示されるように、特徴量Ｓの時間粒度は0.25秒とされる。
【００６４】
このように、入力信号のスペクトログラムから抽出される入力信号の特徴量は、各時間、各周波数毎に成分を有しているので、行列として扱うことができる。
【００６５】
なお、特徴量は、上述した、正規化された平均パワースペクトルに限らず、後述する楽曲度であってもよいし、入力信号が時間周波数領域の信号に変換されたままのスペクトログラムそのものであってもよい。
【００６６】
図６のフローチャートに戻り、ステップＳ３４において、楽曲度算出部５４は、時間周波数変換部５２からの入力信号のスペクトログラムに基づいて、楽曲度算出処理を実行し、入力信号のスペクトログラムの各時間周波数領域について、入力信号の楽曲らしさの指標となる楽曲度を算出する。
【００６７】
楽曲度算出処理における楽曲度の算出には、入力信号におけるトーン（音調）の安定性を利用する。ここでいうトーンは、周波数毎の信号成分の強さ（パワースペクトル）で表されるものとすると、一般的に、楽曲においては、ある特定の音程（周波数）を持つ音がある一定時間鳴り続けるため、時間方向に対してトーンは安定する。一方、人の会話においては、時間方向に対してトーンはゆらぐ性質を持ち、また、環境雑音においては、時間方向に連続するトーンがあまり見られない。そこで、楽曲度算出処理においては、所定の時間区間分の入力信号について、トーンの有無および安定性を数値化することで、楽曲度を算出する。
【００６８】
［楽曲度算出処理について］
ここで、図８のフローチャートを参照して、図６のフローチャートのステップＳ３４における楽曲度算出処理の詳細について説明する。
【００６９】
ステップＳ５１において、楽曲度算出部５４の時間区間選択部８１は、時間周波数変換部５２からの入力信号のスペクトログラムにおいて、所定の時間区間（例えば、１５秒間の入力信号のうちの最初の１秒間）のスペクトログラムを選択し、ピーク検出部８２に供給する。
【００７０】
ステップＳ５２において、ピーク検出部８２は、時間区間選択部８１によって選択された１秒間分のスペクトログラムにおいて、時間フレーム（時間bin）毎に、各周波数帯についての信号成分のパワースペクトル（強さ）が、その周波数帯の近傍で極大となる時間周波数領域上の点であるピークを検出する。
【００７１】
ここで、例えば１秒間分の楽曲のスペクトログラムにおいては、ある特定の周波数を持つ音が所定時間鳴り続けるため、信号成分のピークは、図９の左側に示されるように、ある特定の周波数帯に現れる。
【００７２】
一方、例えば１秒間分の人の会話のスペクトログラムにおいては、そのトーンはゆらぐため、信号成分のピークは、図１０の左側に示されるように、様々な周波数帯に現れる。
【００７３】
ステップＳ５３において、ピーク頻度算出部８３は、１秒間分のスペクトログラムにおいて、ピーク検出部８２によって検出されたピークの、時間方向に対する周波数毎の出現頻度（存在頻度）（以下、ピーク頻度という）を求める。
【００７４】
１秒間分のスペクトログラムにおいて、例えば、図９の左側に示されるようなピークが検出された場合、そのピークは、時間方向に対して一定の周波数帯に現れるので、図９の中央に示されるような、一定の周波数においてピークを持つピーク頻度が求められる。
【００７５】
一方、１秒間分のスペクトログラムにおいて、例えば、図１０の左側に示されるようなピークが検出された場合、そのピークは、時間方向に対して様々な周波数帯に現れるので、図１０の中央に示されるような、周波数方向に対してなだらかなピーク頻度が求められる。
【００７６】
なお、ピーク頻度の算出においては、一定時間以上連続したピーク、すなわち、ピークの長さを考慮して、ピーク頻度を算出するようにしてもよい。
【００７７】
このようにして、各周波数に対して求められるピーク頻度は、１次元のベクトルとして扱うことができる。
【００７８】
ステップＳ５４において、強調処理部８４は、ピーク頻度算出部８３によって求められたピーク頻度に対して、その値を強調する強調処理を施し、出力部８５に供給する。具体的には、強調処理部８４は、ピーク頻度を表す各ベクトルに対して、例えば、［-1/2,1，-1/2］のフィルタを用いたフィルタリング処理を施す。
【００７９】
例えば、図９の中央に示される、一定の周波数においてピークを持つピーク頻度に対して上述したフィルタリング処理を施した場合、図９の右側に示されるように、そのピークが強調されたピーク頻度が得られる。
【００８０】
一方、図１０の中央に示される、周波数方向に対してなだらかなピーク頻度に対して上述したフィルタリング処理を施した場合、図１０の右側に示されるように、ピークが減衰されたピーク頻度が得られる。
【００８１】
なお、強調処理においては、上述したフィルタリング処理に限らず、ピーク頻度の値から、その近傍のピーク頻度の値の平均値や中間値を減算することで、ピーク頻度の値を強調するようにしてもよい。
【００８２】
ステップＳ５５において、出力部８５は、強調処理部８４によって強調処理が施された、１秒間分のスペクトログラムについてのピーク頻度を保持し、全ての時間区間（例えば、15秒間）について、上述した処理を行ったか否かを判定する。
【００８３】
ステップＳ５５において、全ての時間区間について上述した処理が行われていないと判定された場合、処理はステップＳ５１に戻り、次の時間区間（１秒間）のスペクトログラムに対して、ステップＳ５１乃至Ｓ５４の処理が繰り返される。なお、ステップＳ５１乃至Ｓ５４の処理は、上述したように、１秒間の時間区間ずつのスペクトログラムに対して行われるようにしてもよいし、処理対象となるスペクトログラムの時間区間を、例えば0.5秒ずつずらして、処理対象の時間区間の一部を、前の処理対象の時間区間とオーバーラップさせながら行われるようにしてもよい。
【００８４】
一方、ステップＳ５５において、全ての時間区間について上述した処理が行われたと判定された場合、処理はステップＳ５６に進む。
【００８５】
ステップＳ５６において、出力部８５は、保持している時間区間（１秒間）毎のピーク頻度（１次元ベクトル）を時系列に配列することで得られる行列を、楽曲度として、マスクパターン生成部５５に供給（出力）し、処理はステップＳ３４に戻る。
【００８６】
このように、入力信号のスペクトログラムから算出される楽曲度は、特徴量抽出部５３によって抽出された特徴量と同様に、各時間、各周波数毎に成分を有する行列として扱うことができる。ただし、特徴量抽出部５３によって抽出された特徴量の時間粒度は0.25秒であるのに対して、楽曲度の時間粒度は１秒とされる。
【００８７】
さて、図６のステップＳ３４の後、処理はステップＳ３５に進み、マスクパターン生成部５５は、楽曲度算出部５４からの楽曲度に基づいて、マスクパターン生成処理を実行し、入力信号の特徴量と参照信号の特徴量とのマッチング処理に用いられるマスクパターンを生成する。
【００８８】
［マスクパターン生成処理について］
ここで、図１１のフローチャートを参照して、図６のフローチャートのステップＳ３５におけるマスクパターン生成処理の詳細について説明する。
【００８９】
ステップＳ７１において、マスクパターン生成部５５の抽出部９１は、楽曲度算出部５４からの楽曲度の各要素（成分）のうち、要素の値が所定の閾値を超えるものを抽出し、線形変換部９２に供給する。
【００９０】
例えば、楽曲度として、図１２の左上段に示されるような楽曲度Ｇが、楽曲度算出部５４から供給された場合、抽出部９１は、楽曲度Ｇの各要素のうち、要素の値が0.3を超えるものを抽出する。ここで、楽曲度Ｇの各要素について、楽曲度Ｇの左下の要素を基準とした周波数方向の要素をｆ（ｆは、１乃至８）、時間方向の要素をｕ（ｕは、１乃至３）とした場合、抽出される要素Ｇｆｕは、値が0.8である要素Ｇ２１，Ｇ２２、値が0.6である要素Ｇ７１、および、値が0.5である要素Ｇ６３となり、その結果、図１２の左中段に示される楽曲度G1が得られる。
【００９１】
ステップＳ７２において、線形変換部９２は、抽出部９１によって抽出された要素の値に対して、所定の線形変換処理を施し、割り当て部９３に供給する。
【００９２】
具体的には、線形変換処理前の要素の値をｘ、線形変換処理後の要素の値をｙとしたとき、例えば、y=x-0.3を満たすように、楽曲度G1における、抽出部９１によって抽出された要素の値に対して線形変換処理が施されることで、図１２の左下段に示される楽曲度G2が得られる。
【００９３】
なお、以上においては、要素の値に対して線形変換処理を行うようにしたが、シグモイド関数等による非線形変換処理を行うようにしてもよいし、２値化処理を行うことによって所定の２値に変換するようにしてもよい。
【００９４】
ステップＳ７３において、割り当て部９３は、線形変換部９２によって線形変換された値を、抽出部９１によって抽出された要素に対応する時間周波数領域と同一時間区間の周辺領域に割り当てる。
【００９５】
具体的には、図１２の左下段に示される楽曲度G2において、値が0.5に変換された要素Ｇ２１に対応する領域と同一時間区間の隣接領域の要素、すなわち、要素Ｇ１１および要素Ｇ３１に値0.5が割り当てられる。同様に、値が0.5に変換された要素Ｇ２２に対応する領域と同一時間区間の隣接領域の要素、すなわち、要素Ｇ１２および要素Ｇ３２に値0.5が割り当てられる。また、値が0.3に変換された要素Ｇ７１に対応する領域と同一時間区間の隣接領域の要素、すなわち、要素Ｇ６１および要素Ｇ８１に値0.3が割り当てられる。さらに、値が0.2に変換された要素Ｇ６３に対応する領域と同一時間区間の隣接領域の要素、すなわち、要素Ｇ５３および要素Ｇ７３に値0.2が割り当てられる。
【００９６】
このようにして、図１２の右上段に示される楽曲度G3が得られる。楽曲度G3において、斜線が施されている領域における要素の値が、割り当て部９３によって割り当てられた値となる。
【００９７】
なお、図１２の楽曲度G3においては、線形変換部９２によって線形変換された値を、抽出部９１によって抽出された要素に対応する時間周波数領域と同一時間区間の隣接領域の要素に割り当てるようにしたが、その隣接領域にさらに隣接する領域や、そのまたさらに隣接する領域等に割り当てるようにしてもよい。
【００９８】
ステップＳ７４において、マスク処理部９４は、時間周波数領域の楽曲度において、抽出部９１によって抽出されず、かつ、線形変換された値が割り当て部９３によって割り当てられていない領域（要素）、すなわち、図１２の右上段に示される楽曲度G3において空白で示される領域をマスクすることで、図１２の右中段に示される楽曲度G4を得る。
【００９９】
ステップＳ７５において、リサンプリング処理部９５は、特定の領域がマスクされた楽曲度を、特徴量抽出部５３によって抽出される入力信号の特徴量の時間粒度に対応するように、時間方向にリサンプリング処理を行う。
【０１００】
具体的には、リサンプリング処理部９５は、図１２の右中段に示される楽曲度G4について、時間方向にリサンプリング処理を行うことにより、その時間粒度を、１秒から、入力信号の特徴量の時間粒度である0.25秒に変化させる。リサンプリング処理部９５は、リサンプリング処理の結果得られた楽曲度を、図１２の右下段に示されるマスクパターンＷとして、マッチング処理部３３に供給し、処理は、図６のフローチャートのステップＳ３５に戻る。
【０１０１】
このように、入力信号のスペクトログラムにおいて、楽曲らしさの指標である楽曲度の高い領域には楽曲度に応じた重み付けをし、楽曲度の低い領域をマスクする、重み分布としてのマスクパターンが生成される。マスクパターンは、特徴量抽出部５３によって抽出された特徴量と同様に、各時間、各周波数毎に成分を有する行列として扱うことができ、その時間粒度は、特徴量抽出部５３によって抽出された特徴量の時間粒度と同一の0.25秒とされる。
【０１０２】
さて、図６のフローチャートにおいて、ステップＳ３５の後、処理は図５のフローチャートのステップＳ１１に戻る。
【０１０３】
図５のフローチャートにおいて、ステップＳ１１の後、処理はステップＳ１２に進み、参照信号解析部３２は、参照信号解析処理を実行し、外部の装置等から入力される参照信号を解析し、参照信号の特徴量を参照信号から抽出する。
【０１０４】
［参照信号解析処理について］
ここで、図１３のフローチャートを参照して、図５のフローチャートのステップＳ１２における参照信号解析処理の詳細について説明する。
【０１０５】
ステップＳ９１において、参照信号解析部３２の時間周波数変換部６１は、入力された参照信号をスペクトログラムに変換し、特徴量抽出部６２に供給する。
【０１０６】
ステップＳ９２において、特徴量抽出部６２は、特徴量抽出部５３と同様にして、時間周波数変換部６１からの参照信号のスペクトログラムから、そのスペクトログラムの時間周波数領域毎に特徴量を抽出し、マッチング処理部３３に供給する。
【０１０７】
このようにして抽出される参照信号の特徴量の時間粒度は、入力信号の特徴量の時間粒度（例えば、0.25秒間）と同一とされる。また、入力信号の特徴量は、入力信号から切り出された所定時間（例えば、15秒間）分の信号に対応するのに対して、参照信号の特徴量は、楽曲１曲分の信号に対応する。したがって、参照信号の特徴量は、入力信号の特徴量と同様、各時間、各周波数毎に成分を有する行列として扱うことができるが、入力信号の特徴量と比較して、より多くの時間方向の成分を有する。
【０１０８】
またこのとき、特徴量抽出部６２は、信号処理装置１１内の図示せぬデータベースから、参照信号の楽曲の属性を表す楽曲属性情報（楽曲名、演奏者名、楽曲ID等）を読み出し、抽出した参照信号の特徴量に対応付けて、マッチング処理部３３に供給する。
【０１０９】
なお、参照信号解析処理においては、複数の参照信号について上述した処理が実行される。マッチング処理部３３においては、マッチング処理部３３内の図示せぬ記憶領域に、複数の参照信号についての特徴量および楽曲属性情報が記憶される。
【０１１０】
また、複数の参照信号についての特徴量および楽曲属性情報は、信号処理装置１１内の図示せぬデータベースに記憶されるようにしてもよい。
【０１１１】
図１３のフローチャートにおいて、ステップＳ９２の後、処理は図５のフローチャートのステップＳ１２に戻る。
【０１１２】
図５のフローチャートにおいて、ステップＳ１２の後、処理はステップＳ１３に進み、マッチング処理部３３は、マッチング処理を実行し、入力信号に含まれる楽曲を同定し、その同定結果を出力する。
【０１１３】
［マッチング処理について］
ここで、図１４のフローチャートを参照して、図５のフローチャートのステップＳ１３におけるマッチング処理の詳細について説明する。
【０１１４】
ステップＳ１１１において、マッチング処理部３３の類似度算出部７１は、入力信号解析部３１からのマスクパターンに基づいて、入力信号解析部３１からの入力信号の特徴量と、参照信号解析部３２から供給され、マッチング処理部３３内の図示せぬ記憶領域に記憶されている所定の参照信号の特徴量との類似度を算出し、比較判定部７２に供給する。なお、参照信号の特徴量および楽曲属性情報が図示せぬデータベースに記憶されている場合には、所定の参照信号の特徴量および楽曲属性情報が、データベースから読み出される。
【０１１５】
ここで、図１５を参照して、入力信号の特徴量と参照信号の特徴量との類似度の算出の例について説明する。
【０１１６】
図１５においては、上段に、参照信号の特徴量Ｌ、下段左側に、入力信号の特徴量Ｓ、そして、下段右側に、マスクパターンＷが示されている。上述で説明したように、これらは行列として扱うことができる。
【０１１７】
図１５に示されるように、参照信号の特徴量Ｌの時間方向の成分の数は、入力信号の特徴量Ｓの時間方向の成分の数と比較して多い（なお、入力信号Ｓの時間方向の成分の数と、マスクパターンＷの時間方向の成分の数とは同一である）。そこで、入力信号の特徴量と参照信号の特徴量との類似度を算出する際、類似度算出部７１は、参照信号の特徴量Ｌから、入力信号の特徴量Ｓと同一の時間方向の成分の数となる部分行列Ａを、時間方向（図中右方向）にずらしながら（時間方向にオフセットを与えながら）順次切り出し、この部分行列Ａと入力信号の特徴量Ｓとの類似度を算出する。ここで、部分行列Ａを切り出す際の時間方向のオフセットをｔとすると、類似度R(t)は、以下の式（１）で示される。
【０１１８】
【数１】
0005728888.tif 000002
・・・（１）
【０１１９】
なお、式（１）において、ｆ，ｕは、参照信号の特徴量の部分行列Ａ、入力信号の特徴量Ｓ、マスクパターンＷの各行列の周波数成分および時間成分を表している。すなわち、ｆおよびｕが添字として付されているＡ，Ｓ，Ｗは、それぞれの行列Ａ，Ｓ，Ｗにおける各要素を表している。また、Ｍは、行列Ｗ（マスクパターンＷ）において要素の値を有する、マスクされていない時間周波数領域（図１５のマスクパターンＷにおいて網かけされていない部分）の要素を表している。したがって、式（１）で示される類似度R(t)の算出においては、各行列の全要素について演算する必要はなく、マスクパターンＷにおいてマスクされていない時間周波数領域の要素について演算すればよいので、演算コストを抑えることができる。さらに、マスクパターンＷにおいてマスクされていない時間周波数領域の要素の値は、入力信号の時間周波数領域毎の楽曲度に応じた重みを表しているので、楽曲らしさの高い時間周波数領域の要素に対してより大きい重み付けをして類似度R(t)を算出することができる。すなわち、より精度の高い類似度を算出することができるようになる。
【０１２０】
このようにして、類似度算出部７１は、全ての部分行列Ａ（全ての部分行列Ａを切り出す時間オフセットｔ）に対して類似度を算出し、最大となる類似度を、入力信号の特徴量と参照信号の特徴量との類似度として、比較判定部７２に供給する。
【０１２１】
なお、類似度は、上述した式（１）による演算に限らず、二乗誤差や絶対誤差等、２つの行列の各要素間の差に基づいて算出されるようにしてもよい。
【０１２２】
図１４のフローチャートに戻り、ステップＳ１１２において、類似度算出部７１は、所定数の参照信号について、より具体的には、マッチング処理部３３内の図示せぬ記憶領域に記憶されている全ての参照信号について類似度算出の処理を行ったか否かを判定する。なお、参照信号の特徴量および楽曲属性情報が図示せぬデータベースに記憶されている場合には、図示せぬデータベースに記憶されている全ての参照信号について類似度算出の処理を行ったか否かが判定される。
【０１２３】
ステップＳ１１２において、全ての参照信号について類似度算出の処理を行っていないと判定された場合、ステップＳ１１１に戻り、全ての参照信号について類似度算出の処理を行うまで、ステップＳ１１１，Ｓ１１２の処理は繰り返される。
【０１２４】
そして、ステップＳ１１２において、全ての参照信号について類似度算出の処理を行ったと判定されると、処理はステップＳ１１３に進み、比較判定部７２は、類似度算出部７１から供給された複数の類似度の中で、所定の閾値を超える類似度があるか否かを判定する。この閾値は、固定の値としてもよいし、全ての参照信号についての類似度に基づいて統計的に設定された値としてもよい。
【０１２５】
ステップＳ１１３において、所定の閾値を超える類似度があると判定された場合、ステップＳ１１４に進み、比較判定部７２は、所定の閾値を超える類似度のうち、最大の類似度が算出された参照信号の楽曲を、入力信号に含まれる楽曲であるとし、その参照信号の楽曲属性情報（例えば、楽曲名）を、同定結果として出力する。
【０１２６】
なお、ここで、比較判定部７２は、所定の閾値を超える類似度が算出された複数の参照信号の楽曲を、入力信号に含まれる楽曲の候補であるとし、その複数の参照信号の楽曲属性情報を、それぞれについて算出された類似度とともに、同定結果として出力するようにしてもよい。これにより、例えば、同じ楽曲名の楽曲であっても、テンポが異なっていたり、演奏に使われている楽器が異なっていたりする、いわゆる異なるバージョンの楽曲を、入力信号に含まれる楽曲の候補として提示することができる。また、複数の参照信号の楽曲属性情報とともに出力される複数の類似度について確率分布を求め、その確率に基づいて、複数の類似度（すなわち参照信号）の信頼度を求めるようにしてもよい。
【０１２７】
一方、ステップＳ１１３において、所定の閾値を超える類似度がないと判定された場合、ステップＳ１１５に進み、参照信号の中に、入力信号に該当する楽曲がない旨の情報を出力する。
【０１２８】
ステップＳ１１４またはステップＳ１１５の後、処理は、図５のフローチャートのステップＳ１３に戻り、楽曲同定処理は終了する。
【０１２９】
以上の処理によれば、楽曲と雑音とが混在した入力信号を、楽曲のみからなる参照信号と比較する際、時間周波数領域の入力信号において、楽曲らしさの指標となる楽曲度の高い領域には楽曲度に応じた重み付けをし、楽曲度の低い領域をマスクするマスクパターンが生成され、そのマスクパターンを用いて、時間周波数領域の入力信号の特徴量と参照信号の特徴量との類似度が算出されるようになる。すなわち、楽曲らしさの低い時間周波数領域については類似度算出における演算の対象外とし、楽曲らしさの高い時間周波数領域に対してはその楽曲らしさに応じた重み付けをして、類似度が算出されるので、演算コストを抑えつつ、より精度の高い類似度を算出することができるようになり、ひいては、楽曲と雑音とが混在する入力信号から、その楽曲を精度良く同定することが可能となる。
【０１３０】
また、時間成分だけでなく、周波数成分を考慮した特徴量を用いて、マッチング処理を行うことができるので、図１で示されたような、途切れている時間が非常に短い会話が雑音として含まれている入力信号であっても、その入力信号から、楽曲を精度良く同定することができる。これにより、ドラマ等のテレビジョン番組において、出演者等の会話が被ってしまっているBGMを精度良く同定することが可能となる。
【０１３１】
さらに、切り出された所定時間分の入力信号の特徴量を用いて、入力信号の特徴量と参照信号の特徴量との類似度を算出するようにしたので、ドラマ等のテレビジョン番組におけるシーンチェンジによりBGMが途切れてしまった場合であっても、途切れるまでのBGMに対応する入力信号さえあれば、そのBGMをより確実に同定することが可能となる。
【０１３２】
なお、以上においては、入力信号の特徴量の時間粒度（例えば、0.25秒）と、楽曲度の時間粒度（例えば１秒）とが異なるようにしたが、同一の時間粒度としてもよい。
【０１３３】
また、図５のフローチャートを参照して説明した楽曲同定処理においては、入力信号解析処理とマッチング処理との間に、参照信号解析処理が実行されるようにしたが、参照信号解析処理は、マッチング処理が実行される前に実行されていればよく、入力信号解析処理が実行される前に実行されてもよいし、入力信号解析処理と並行して実行されてもよい。
【０１３４】
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等に、プログラム記録媒体からインストールされる。
【０１３５】
図１６は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【０１３６】
コンピュータにおいて、CPU（Central Processing Unit）９０１，ROM（Read Only Memory）９０２，RAM（Random Access Memory）９０３は、バス９０４により相互に接続されている。
【０１３７】
バス９０４には、さらに、入出力インタフェース９０５が接続されている。入出力インタフェース９０５には、キーボード、マウス、マイクロホン等よりなる入力部９０６、ディスプレイ、スピーカ等よりなる出力部９０７、ハードディスクや不揮発性のメモリ等よりなる記憶部９０８、ネットワークインタフェース等よりなる通信部９０９、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリ等のリムーバブルメディア９１１を駆動するドライブ９１０が接続されている。
【０１３８】
以上のように構成されるコンピュータでは、CPU９０１が、例えば、記憶部９０８に記憶されているプログラムを、入出力インタフェース９０５およびバス９０４を介して、RAM９０３にロードして実行することにより、上述した一連の処理が行われる。
【０１３９】
コンピュータ（CPU９０１）が実行するプログラムは、例えば、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)等）、光磁気ディスク、もしくは半導体メモリ等よりなるパッケージメディアであるリムーバブルメディア９１１に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供される。
【０１４０】
そして、プログラムは、リムーバブルメディア９１１をドライブ９１０に装着することにより、入出力インタフェース９０５を介して、記憶部９０８にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部９０９で受信し、記憶部９０８にインストールすることができる。その他、プログラムは、ROM９０２や記憶部９０８に、あらかじめインストールしておくことができる。
【０１４１】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０１４２】
また、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【０１４３】
１１  信号処理装置，  ５１  切り出し部，  ５２  時間周波数変換部，  ５３  特徴量抽出部，  ５４  楽曲度算出部，  ５５  マスクパターン生成部，  ６１  時間周波数変換部，  ６２  特徴量抽出部，  ７１  類似度算出部，  ７２  比較判定部
【図１】
0005728888.tif 000003
【図２】
0005728888.tif 000004
【図３】
0005728888.tif 000005
【図４】
0005728888.tif 000006
【図５】
0005728888.tif 000007
【図６】
0005728888.tif 000008
【図７】
0005728888.tif 000009
【図８】
0005728888.tif 000010
【図９】
0005728888.tif 000011
【図１０】
0005728888.tif 000012
【図１１】
0005728888.tif 000013
【図１２】
0005728888.tif 000014
【図１３】
0005728888.tif 000015
【図１４】
0005728888.tif 000016
【図１５】
0005728888.tif 000017
【図１６】
0005728888.tif 000018