(57)【要約】【課題】楽曲からなる音声信号よりサビ部分を高速に精度良く抽出するできるようにする。【解決手段】特徴量抽出部３２は、取得された音声信号より、予め定められた種別の特徴量を時系列に抽出する。変化点検出部３３は、時系列に抽出された特徴量の変化量が、所定の閾値よりも大きく変化する変化点を検出する。変化点統合部３４は、変化点を統合する。サビ解析部３５は、統合された変化点を境界とするブロック単位に特徴量に基づいて、音声信号におけるサビ箇所を解析する。サビ統合部３６は、サビ情報を統合する。サビ情報出力部３７は、サビ統合部３６により統合されたサビ箇所を、サビ情報として出力する。本発明は、音声処理装置に適用することができる。【選択図】図１
2012108451.tif 000002
【特許請求の範囲】
【請求項１】
楽曲の音声信号を取得する音声信号取得手段と、
前記音声信号取得手段により取得された音声信号より、予め定められた種別の特徴量を時系列に抽出する特徴量抽出手段と、
前記特徴量抽出手段により時系列に抽出された特徴量の変化量が、所定の閾値よりも大きく変化する変化点を検出する変化点検出手段と、
前記変化点検出手段により検出された変化点を境界とするブロック単位に特徴量抽出手段により抽出された特徴量に基づいて、前記音声信号におけるサビ箇所を解析するサビ解析手段と、
前記サビ解析手段により解析された前記サビ箇所を、サビ情報として出力するサビ情報出力手段と
を含む音声処理装置。
【請求項２】
前記特徴量の種別は、ステレオ和信号の２乗平均平方、ステレオ差信号の２乗平均平方、ステレオ和信号の振幅２乗和、およびステレオ差信号の振幅２乗和のいずれか、またはそれらいずれかの組み合わせを含む
請求項１に記載の音声処理装置。
【請求項３】
前記変化点検出手段は、
前記時系列の特徴量を平滑化する平滑手段と、
前記変化量を算出する変化量算出手段と、
前記変化量のそれぞれについて、前記変化点のものであるか否かを判定する変化点判定手段と、
前記変化量の算出箇所を制御し、前記変化点を検出した場合、前記変化点の位置を記録する変化点検出制御手段と、
前記複数の変化点を統合する変化点統合手段とを含む
請求項１に記載の音声処理装置。
【請求項４】
前記変化点検出手段は、
前記時系列の特徴量を正規化する正規化手段をさらに含む
請求項３に記載の音声処理装置。
【請求項５】
前記変化点検出手段は、
前記変化点の数と所定の閾値との比較により、前記変化点の数が前記所定の閾値よりも多い場合、前記変化点の数を少なくするように前記所定の閾値を変化させる、および、前記平滑化手段による、前記時系列の特徴量を平滑化し直す、のいずれか、または、その両方を実行し、前記変化量のそれぞれについて、前記変化点であるか否かを判定し直す変化点再検出手段を含む
請求項３に記載の音声処理装置。
【請求項６】
前記変化点検出手段は、
所定時間より長く前記変化点が存在しない期間が存在する場合、前記変化点の数を多くするように前記所定の閾値を変化させ、前記変化量のそれぞれについて、前記変化点であるか否かを判定し直す変化点再検出手段を含む
請求項３に記載の音声処理装置。
【請求項７】
前記平滑化手段は、前記時系列の特徴量を、所定期間における移動平均により平滑化する
請求項３に記載の音声処理装置。
【請求項８】
前記平滑化手段は、前記時系列の特徴量を、予め求めたテンポ量に基づいた所定期間における移動平均により平滑化する
請求項７に記載の音声処理装置。
【請求項９】
前記変化点検出手段は、
前記変化点のうち隣接する複数の変化点を統合する変化点調整手段を含む
請求項３に記載の音声処理装置。
【請求項１０】
前記変化点検出手段は、
前記変化点のうち隣接する２つの変化点を、中間点で統合する変化点調整手段を含む
請求項９に記載の音声処理装置。
【請求項１１】
前記サビ解析手段は、
前記変化点を境界とするブロックに区切るブロック区切手段と、
前記ブロック単位で前記特徴量の平均を求め、前記特徴量の平均が最大となるブロックを、サビブロックとして検出するサビブロック検出手段と、
前記サビブロック検出手段により検出したサビブロックと連なるブロックであることを制約条件に解析対象となるブロックの位置を制御するサビブロック制御手段と、
前記解析対象となるブロックを解析するサビブロック解析手段と、
前記サビブロック解析手段の解析結果に基づいて、前記解析対象となるブロックがサビブロックであるか否かを判定するサビブロック判定手段とを含む
請求項１に記載の音声処理装置。
【請求項１２】
前記サビブロック検出手段は、前記特徴量の平均が最大となるブロックが所定期間よりも短い場合、前記ブロック単位の前記特徴量の平均の算出範囲を前記ブロックよりも長い所定の長さにまで広げて求められる前記特徴量の平均を、前記特徴量の平均とする
請求項１１に記載の音声処理装置。
【請求項１３】
前記サビブロック解析手段は、前記解析対象のブロックを解析することにより、前記解析対象のブロックにおける前記特徴量の平均を求めて解析結果とし、
前記サビブロック判定手段は、前記サビブロック検出手段で検出したサビブロックにおける前記特徴量の平均と、前記音声信号取得手段により取得された楽曲の音声信号の全体における特徴量の平均との差分に基づいて所定の閾値を計算し、前記解析対象のブロックにおける前記特徴量の平均と楽曲の音声信号の全体における特徴量の平均との差分と、前記閾値との比較により、前記解析対象となるブロックがサビブロックであるか否かを判定する
請求項１１に記載の音声処理装置。
【請求項１４】
前記サビブロック解析手段は、
前記サビブロック判定手段により、前記解析対象となるブロックがサビブロックではないと判定された場合、前記所定の閾値を小さくするようにして補正し、再度、前記解析対象となるブロックを解析し、前記サビブロックであるか否かを判定するサビブロック補正手段を含む
請求項１３に記載の音声処理装置。
【請求項１５】
前記サビブロック解析手段は、
前記サビブロック判定手段により、前記解析対象となるブロックがサビブロックではないと判定された場合、前記解析対象となるブロックにおけるサンプル数を減らすようにして補正し、再度、前記解析対象となるブロックを解析し、前記サビブロックであるか否かを判定するサビブロック補正手段を含む
請求項１３に記載の音声処理装置。
【請求項１６】
複数の前記予め定められた種別の特徴量によるサビ情報を統合するサビ情報統合手段をさらに含む
請求項１１に記載の音声処理装置。
【請求項１７】
前記音声信号取得手段は、取得した楽曲の音声信号のＭＤＣＴ係数を出力する
請求項１に記載の音声処理装置。
【請求項１８】
楽曲の音声信号を取得する音声信号取得手段と、
前記音声信号取得手段により取得された音声信号より、予め定められた種別の特徴量を時系列に抽出する特徴量抽出手段と、
前記特徴量抽出手段により時系列に抽出された特徴量の変化量が、所定の閾値よりも大きく変化する変化点を検出する変化点検出手段と、
前記変化点検出手段により検出された変化点を境界とするブロック単位に特徴量抽出手段により抽出された特徴量に基づいて、前記音声信号におけるサビ箇所を解析するサビ解析手段と、
前記サビ解析手段により解析された前記サビ箇所を、サビ情報として出力するサビ情報出力手段と
を含む音声処理装置の音声処理方法であって、
前記音声信号取得手段における、前記楽曲の音声信号を取得する音声信号取得ステップと、
前記特徴量抽出手段における、前記音声信号取得ステップの処理により取得された音声信号より、予め定められた種別の特徴量を時系列に抽出する特徴量抽出ステップと、
前記変化点検出手段における、前記特徴量抽出ステップの処理により時系列に抽出された特徴量の変化量が、所定の閾値よりも大きく変化する変化点を検出する変化点検出ステップと、
前記サビ解析手段における、前記変化点検出ステップの処理により検出された変化点を境界とするブロック単位に特徴量抽出ステップの処理により抽出された特徴量に基づいて、前記音声信号におけるサビ箇所を解析するサビ解析ステップと、
前記サビ情報出力手段における、前記サビ解析ステップにより解析された前記サビ箇所を、サビ情報として出力するサビ情報出力ステップと
を含む音声処理方法。
【請求項１９】
楽曲の音声信号を取得する音声信号取得手段と、
前記音声信号取得手段により取得された音声信号より、予め定められた種別の特徴量を時系列に抽出する特徴量抽出手段と、
前記特徴量抽出手段により時系列に抽出された特徴量の変化量が、所定の閾値よりも大きく変化する変化点を検出する変化点検出手段と、
前記変化点検出手段により検出された変化点を境界とするブロック単位に特徴量抽出手段により抽出された特徴量に基づいて、前記音声信号におけるサビ箇所を解析するサビ解析手段と、
前記サビ解析手段により解析された前記サビ箇所を、サビ情報として出力するサビ情報出力手段と
を含む音声処理装置を制御するコンピュータに、
前記音声信号取得手段における、前記楽曲の音声信号を取得する音声信号取得ステップと、
前記特徴量抽出手段における、前記音声信号取得ステップの処理により取得された音声信号より、予め定められた種別の特徴量を時系列に抽出する特徴量抽出ステップと、
前記変化点検出手段における、前記特徴量抽出ステップの処理により時系列に抽出された特徴量の変化量が、所定の閾値よりも大きく変化する変化点を検出する変化点検出ステップと、
前記サビ解析手段における、前記変化点検出ステップの処理により検出された変化点を境界とするブロック単位に特徴量抽出ステップの処理により抽出された特徴量に基づいて、前記音声信号におけるサビ箇所を解析するサビ解析ステップと、
前記サビ情報出力手段における、前記サビ解析ステップにより解析された前記サビ箇所を、サビ情報として出力するサビ情報出力ステップと
を含む処理を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声処理装置および方法、並びにプログラムに関し、特に、楽曲からなる音声信号よりサビとなる部分を高精度に抽出できるようにした音声処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
近年、携帯電話に代表されるように、いつでもどこでもインターネットに繋がるユピキタスネットワークの時代が到来し、個人の楽しみ方や生活スタイルが多様化した。こうした中、楽曲などからなる音楽に目を向けると、つい最近までは購入した音楽アルバムCD（Compact Disc）をテープやMD（MiniDisc）に取り込み、電車や街中など屋外ではオーディオプレーヤで試聴するスタイルが一般的であった。しかしながら、近年においてはフラッシュメモリなど大容量記憶媒体を搭載したオーディオプレーヤが台頭し、何千曲（何万曲）もの楽曲を大容量記憶媒体に取り込み保持して視聴するスタイルが一般的となった。さらに、ネットワーク機能を持ち、オーディオプレーヤを備えたモバイル機器では屋外でもインターネットに繋ぎ音楽を試聴したり購入したりすることが可能となっている。
【０００３】
このように、気軽に大量の楽曲を保持し、屋外に気軽に持ち運べるようになった。しかしながら、自分でも把握しきれないほど大量の楽曲から、聴きたい楽曲をストレスなく簡単に探すことが課題となっている。
【０００４】
すなわち、楽曲を選択する際、ユーザは楽曲の冒頭箇所を聴くか、曲名やアーティストで選択することで、その楽曲を視聴するか否か判断する場合が多い。ところが、ほとんどの楽曲の冒頭は伴奏から始まるため楽曲の冒頭を聴いて、聞きたい楽曲であるか否かを判断することは難しい。さらに、大量の楽曲を取り込んでいると自分が把握していない楽曲に遭遇する場合もあり、視聴したいと思ったタイミングで、視聴したいと思う楽曲を聴く機会の損失に繋がってしまう。
【０００５】
こうした課題を解決する手段として、楽曲の中で最も盛り上がる「サビ」と呼ばれる箇所を再生することで楽曲の検索性を高める方法がある。「サビ」は楽曲の中で最も盛り上がる部分であるため、ユーザに最も強い印象を残す部分であり、サビ部分を精度良く検出し、楽曲選択時にサビ部分を再生することで、楽曲の検索性は高まる。また、音楽ランキングのテレビ番組のように、サビ部分を順に再生することは音楽の楽しみ方の一つとなる。
【０００６】
また、サビ部分の検出の方法として、自己相関による類似度算出によって、サビ部分を抽出する方法が提案されている（特許文献１参照）。
【０００７】
さらに、主に音声信号レベルに着目し、音声の変化点の検出と併せサビ部分を抽出する手法として、２乗平均平方等を特徴量として構成される評価関数の極大値から音声の変化点を検出し、サビ部分を抽出する手法が提案されている（特許文献２参照）。
【０００８】
また、音声信号レベルを特徴量として、そのレベルまたは変化量の閾値判別によって音声の変化点を検出し、音声の変化点の間隔の組み合わせまたは時間分布の類似区間からサビ部分を抽出する手法が提案されている（特許文献３参照）。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特許第４２４３６８２号
【特許文献２】特許第３８８６３７２号
【特許文献３】特開２００８−２６２０４３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、特許文献１の手法では、楽曲中で「サビ」の出現頻度が最も高く、繰り返し、再生されることを前提にしており、音楽の性質を踏まえた有効な手法ではあるが、楽曲によっては最も多く繰り返される部分が「サビ」とならない場合がある。すなわち、最も多く繰り返される部分がAメロである楽曲が存在する。また、特徴量抽出や類似度算出などを行うための処理負荷が大きい。
【００１１】
また、特許文献２，３の手法については、「サビ」が「Aメロ」や「間奏」などと比較して音声信号レベルが大きいという音楽性質を踏まえた手法であるが、特許文献１の手法と比較して処理構造が簡潔なため、処理速度の高速化を期待できる。
【００１２】
しかしながら、実際の楽曲は時間的な音声信号レベルの起伏が激しく、更に曲調やテンポ量（BPM：1分間当たりのビート量）など楽曲に依存するが、特許文献２，３では触れられておらず、音声の変化点が過剰に検出されたり、サビ部分ではない突発的に大きい音声信号レベルの部分が誤検出されてしまうなど、サビ箇所の誤検出が起こりやすくなってしまう。また、特徴量算出の粒度を粗くすれば（処理時間長を長くすれば）、時間的な音声信号レベル等の起伏は軽減されるが時間的分解能を損なうため、処理時間長を適度に調整する必要がある。また、突発的に大きい音声信号の扱いに配慮する必要がある。
【００１３】
本発明はこのような状況に鑑みてなされたものであり、特に、音声信号に基づいて、音響変化点を検出すると共に、併せて、サビ箇所を高速に精度良く抽出するようにするものである。
【課題を解決するための手段】
【００１４】
本発明の一側面の音声処理装置は、楽曲の音声信号を取得する音声信号取得手段と、前記音声信号取得手段により取得された音声信号より、予め定められた種別の特徴量を時系列に抽出する特徴量抽出手段と、前記特徴量抽出手段により時系列に抽出された特徴量の変化量が、所定の閾値よりも大きく変化する変化点を検出する変化点検出手段と、前記変化点検出手段により検出された変化点を境界とするブロック単位に特徴量抽出手段により抽出された特徴量に基づいて、前記音声信号におけるサビ箇所を解析するサビ解析手段と、前記サビ解析手段により解析された前記サビ箇所を、サビ情報として出力するサビ情報出力手段とを含む。
【００１５】
前記特徴量の種別には、ステレオ和信号の２乗平均平方、ステレオ差信号の２乗平均平方、ステレオ和信号の振幅２乗和、およびステレオ差信号の振幅２乗和のいずれか、またはそれらいずれかの組み合わせを含ませるようにすることができる。
【００１６】
前記変化点検出手段には、前記時系列の特徴量を平滑化する平滑手段と、前記変化量を算出する変化量算出手段と、前記変化量のそれぞれについて、前記変化点のものであるか否かを判定する変化点判定手段と、前記変化量の算出箇所を制御し、前記変化点を検出した場合、前記変化点の位置を記録する変化点検出制御手段と、前記複数の変化点を統合する変化点統合手段とを含ませるようにすることができる。
【００１７】
前記変化点検出手段には、前記時系列の特徴量を正規化する正規化手段をさらに含ませるようにすることができる。
【００１８】
前記変化点検出手段には、前記変化点の数と所定の閾値との比較により、前記変化点の数が前記所定の閾値よりも多い場合、前記変化点の数を少なくするように前記所定の閾値を変化させる、および、前記平滑化手段による、前記時系列の特徴量を平滑化し直す、のいずれか、または、その両方を実行し、前記変化量のそれぞれについて、前記変化点であるか否かを判定し直す変化点再検出手段を含ませるようにすることができる。
【００１９】
前記変化点検出手段には、所定時間より長く前記変化点が存在しない期間が存在する場合、前記変化点の数を多くするように前記所定の閾値を変化させ、前記変化量のそれぞれについて、前記変化点であるか否かを判定し直す変化点再検出手段を含ませるようにすることができる。
【００２０】
前記平滑化手段には、前記時系列の特徴量を、所定期間における移動平均により平滑化させるようにすることができる。
【００２１】
前記平滑化手段には、前記時系列の特徴量を、予め求めたテンポ量に基づいた所定期間における移動平均により平滑化させるようにすることができる。
【００２２】
前記変化点検出手段には、前記変化点のうち隣接する複数の変化点を統合する変化点調整手段を含ませるようにすることができる。
【００２３】
前記変化点検出手段には、前記変化点のうち隣接する２つの変化点を、中間点で統合する変化点調整手段を含ませるようにすることができる。
【００２４】
前記サビ解析手段には、前記変化点を境界とするブロックに区切るブロック区切手段と、前記ブロック単位で前記特徴量の平均を求め、前記特徴量の平均が最大となるブロックを、サビブロックとして検出するサビブロック検出手段と、前記サビブロック検出手段により検出したサビブロックと連なるブロックであることを制約条件に解析対象となるブロックの位置を制御するサビブロック制御手段と、前記解析対象となるブロックを解析するサビブロック解析手段と、前記サビブロック解析手段の解析結果に基づいて、前記解析対象となるブロックがサビブロックであるか否かを判定するサビブロック判定手段とを含ませるようにすることができる。
【００２５】
前記サビブロック検出手段には、前記ブロック単位の前記特徴量の平均が最大となるブロックが所定期間よりも短い場合、前記ブロック単位の前記特徴量の平均の算出範囲を前記ブロックよりも長い所定の長さにまで広げて求められる前記特徴量の平均を、前記特徴量の平均とさせるようにすることができる。
【００２６】
前記サビブロック解析手段には、前記解析対象のブロックを解析することにより、前記解析対象のブロックにおける前記特徴量の平均を求めて解析結果とし、前記サビブロック判定手段は、前記サビブロック検出手段で検出したサビブロックにおける前記特徴量の平均と、前記音声信号取得手段により取得された楽曲の音声信号の全体における特徴量の平均との差分に基づいて所定の閾値を計算し、前記解析対象のブロックにおける前記特徴量の平均と、楽曲の音声信号の全体における特徴量の平均との差分と、前記閾値との比較により、前記解析対象となるブロックがサビブロックであるか否かを判定させるようにすることができる。
【００２７】
前記サビブロック解析手段には、前記サビブロック判定手段により、前記解析対象となるブロックがサビブロックではないと判定された場合、前記所定の閾値を小さくするようにして補正し、再度、前記解析対象となるブロックを解析し、前記サビブロックであるか否かを判定するサビブロック補正手段を含ませるようにすることができる。
【００２８】
前記サビブロック解析手段には、前記サビブロック判定手段により、前記解析対象となるブロックがサビブロックではないと判定された場合、前記解析対象となるブロックにおけるサンプル数を減らすようにして補正し、再度、前記解析対象となるブロックを解析し、前記サビブロックであるか否かを判定するサビブロック補正手段を含ませるようにすることができる。
【００２９】
複数の前記予め定められた種別の特徴量によるサビ情報を統合するサビ情報統合手段をさらに含ませるようにすることができる。
【００３０】
前記音声信号取得手段には、取得した楽曲の音声信号のＭＤＣＴ係数を出力させるようにすることができる。
【００３１】
本発明の一側面の音声処理方法は、楽曲の音声信号を取得する音声信号取得手段と、前記音声信号取得手段により取得された音声信号より、予め定められた種別の特徴量を時系列に抽出する特徴量抽出手段と、前記特徴量抽出手段により時系列に抽出された特徴量の変化量が、所定の閾値よりも大きく変化する変化点を検出する変化点検出手段と、前記変化点検出手段により検出された変化点を境界とするブロック単位に特徴量抽出手段により抽出された特徴量に基づいて、前記音声信号におけるサビ箇所を解析するサビ解析手段と、前記サビ解析手段により解析された前記サビ箇所を、サビ情報として出力するサビ情報出力手段とを含む音声処理装置の音声処理方法であって、前記音声信号取得手段における、前記楽曲の音声信号を取得する音声信号取得ステップと、前記特徴量抽出手段における、前記音声信号取得ステップの処理により取得された音声信号より、予め定められた種別の特徴量を時系列に抽出する特徴量抽出ステップと、前記変化点検出手段における、前記特徴量抽出ステップの処理により時系列に抽出された特徴量の変化量が、所定の閾値よりも大きく変化する変化点を検出する変化点検出ステップと、前記サビ解析手段における、前記変化点検出ステップの処理により検出された変化点を境界とするブロック単位に特徴量抽出ステップの処理により抽出された特徴量に基づいて、前記音声信号におけるサビ箇所を解析するサビ解析ステップと、前記サビ情報出力手段における、前記サビ解析ステップにより解析された前記サビ箇所を、サビ情報として出力するサビ情報出力ステップとを含む。
【００３２】
本発明の一側面のプログラムは、楽曲の音声信号を取得する音声信号取得手段と、前記音声信号取得手段により取得された音声信号より、予め定められた種別の特徴量を時系列に抽出する特徴量抽出手段と、前記特徴量抽出手段により時系列に抽出された特徴量の変化量が、所定の閾値よりも大きく変化する変化点を検出する変化点検出手段と、前記変化点検出手段により検出された変化点を境界とするブロック単位に特徴量抽出手段により抽出された特徴量に基づいて、前記音声信号におけるサビ箇所を解析するサビ解析手段と、前記サビ解析手段により解析された前記サビ箇所を、サビ情報として出力するサビ情報出力手段とを含む音声処理装置を制御するコンピュータに、前記音声信号取得手段における、前記楽曲の音声信号を取得する音声信号取得ステップと、前記特徴量抽出手段における、前記音声信号取得ステップの処理により取得された音声信号より、予め定められた種別の特徴量を時系列に抽出する特徴量抽出ステップと、前記変化点検出手段における、前記特徴量抽出ステップの処理により時系列に抽出された特徴量の変化量が、所定の閾値よりも大きく変化する変化点を検出する変化点検出ステップと、前記サビ解析手段における、前記変化点検出ステップの処理により検出された変化点を境界とするブロック単位に特徴量抽出ステップの処理により抽出された特徴量に基づいて、前記音声信号におけるサビ箇所を解析するサビ解析ステップと、前記サビ情報出力手段における、前記サビ解析ステップにより解析された前記サビ箇所を、サビ情報として出力するサビ情報出力ステップとを含む処理を実行させる。
【００３３】
本発明の一側面においては、楽曲の音声信号が取得され、取得された音声信号より、予め定められた種別の特徴量が時系列に抽出され、時系列に抽出された特徴量の変化量が、所定の閾値よりも大きく変化する変化点が検出され、検出された変化点を境界とするブロック単位に抽出された特徴量に基づいて、前記音声信号におけるサビ箇所が解析され、解析された前記サビ箇所が、サビ情報として出力される。
【００３４】
本発明の音声処理装置は、独立した装置であっても良いし、音声処理を行うブロックであっても良い。
【発明の効果】
【００３５】
本発明の一側面によれば、入力された楽曲からなる音声信号よりサビ部分を高精度で抽出することが可能となる。
【図面の簡単な説明】
【００３６】
【図１】本発明を適用した音楽解析装置の一実施の形態の構成例を示すブロック図である。
【図２】図１の変化点検出部の構成例を示す図である。
【図３】図１のサビ解析部の構成例を示す図である。
【図４】音楽解析処理を説明するフローチャートである。
【図５】変化点検出処理を説明するフローチャートである。
【図６】変化点検出処理を説明する図である。
【図７】変化点検出処理を説明する図である。
【図８】変化点の統合を説明する図である。
【図９】平滑化が不十分である場合の波形例を示す図である。
【図１０】サビ解析処理を説明するフローチャートである。
【図１１】サビ解析処理を説明する図である。
【図１２】サビ解析処理を説明する図である。
【図１３】汎用のパーソナルコンピュータの構成例を説明する図である。
【発明を実施するための最良の形態】
【００３７】
［音楽解析装置の構成例］
図１は、本発明を適用した音楽解析装置のハードウェアの一実施の形態の構成例を示している。図１の音楽解析装置１１は、楽曲からなる音声信号の入力を受け付けて取得し、特徴量を抽出して解析することで、楽曲の中の、いわゆるサビ部分を抽出して、これをサビ情報として出力する。ここで、サビ部分とは、楽曲の中で最も盛り上がる部分、または、聴者に最も強い印象を与える部分であり、楽曲の中でも、聴者がその部分さえ聞けば、曲名やアーティスト名などの詳細は思い出せなくても、どの曲であるかを認識できる可能性の高い部分である。
【００３８】
音楽解析装置１１は、取得部３１、特徴量抽出部３２、変化点検出部３３、変化点統合部３４、サビ解析部３５、サビ統合部３６、およびサビ情報出力部３７を備えている。
【００３９】
取得部３１は、入力される楽曲（オーディオコンテンツ）からなる音声信号を取得する。取得部３１は、PCM（Pulse Code Modulation）形態の音声信号を受け付けて特徴量抽出部３２に供給する。また、取得部３１は、PCM形態以外の音声信号を受け付けると、対応してPCM形態に変換する機能を備えており、必要に応じてPCM形態に変換する。音声信号のPCM形態以外の形態としては、例えば、MP3（Moving Picture Experts Group Audio Layer-3）などの圧縮形態でもよい。この場合、取得部３１は、必要に応じて圧縮形態に対応してデコード処理を行い、デコード処理過程での音声信号の形態であるMDCT（modified discrete cosine transform）係数等を特徴量抽出部３２に供給するようにしてもよい。
【００４０】
尚、楽曲からなる音声信号はメモリを効率良く扱うためMP3など圧縮形態であることが多く、音声信号を保持するバッファサイズの制約などを理由に、処理時間長（フレーム長）を固定して扱うと都合が良い。そこで、ここでは、フレーム長を固定（1024[sample/channel]など）したものとして説明するが、フレーム長は自由に設定できるものであり、このフレーム長に限定されるものではない。また、楽曲からなる音声信号のサンプリング周波数やチャンネル数は限定しないが、オーディオCD（Compact Disc）に代表されるようにサンプリング周波数は、一般に44100[Hz]でありチャンネル数は2[channel]とされている。
【００４１】
特徴量抽出部３２は、取得部３１より供給されてくるPCM形態の音声信号より、予め定められた種別の特徴量を時系列に抽出し、時系列特徴量として変化点検出部３３に供給する。ここでいう特徴量の種別としては、例えば、音楽解析や音声認識などで一般に使用されている、ゼロクロスレート、スペクトルセントロイド、スペクトル変化量、およびメル周波数ケプストラム係数などである。ゼロクロスレートとは、時間軸信号における正負符号変化の回数比を特徴量としたものである。スペクトルセントロイドは、周波数スペクトルの重心位置を特徴量としたものである。スペクトル変化量は、周波数スペクトルの変化量を特徴量としたものである。メル周波数ケプストラム係数は、周波数スペクトルをメル尺度で圧縮し、その対数であるメル周波数スペクトルをフーリエ変換して得られた係数を特徴量としたものである。特徴量抽出部３２は、これらのうちのいずれかの種別の特徴量を、予め定められた特徴量として時系列に抽出するようにしても良いし、複数の種別の組み合わせを予め定められた特徴量として時系列に抽出するようにしてもよい。尚、以降においては説明の便宜上、特徴量抽出部３２は、予め定められた特徴量として音声信号レベルを時系列に抽出する場合の例について説明を進めるものとする。また、特徴量の種別はこれ以外のものであってもよいものであり、上述のものに限定されるものではない。
【００４２】
ここで、音声信号レベルについて触れる。一般に、サビ部分は、Ａメロと呼ばれるサビと異なる最初のメロディの部分や間奏などと比較して音声信号レベルが大きいという音楽性質を持つといわれている。このため、以下の式（１）で示されるステレオ和信号Ｍ（ｎ）は特徴量としては有用な信号であると考えられる。また、サビ部分は、楽曲の中で最も盛り上がる部分であることから、Ａメロや間奏などと比較して音数が多く（楽器音やバックコーラスなど）広い範囲に音が定位する傾向があるため、以下の式（２）で示されるステレオ差信号Ｓ（ｎ）もまた特徴量として有用であると考えられる。
【００４３】
Ｍ（ｎ）＝（Ｌ（ｎ）＋Ｒ（ｎ））／２
・・・（１）
【００４４】
Ｓ（ｎ）＝（Ｌ（ｎ）−Ｒ（ｎ））／２
・・・（２）
【００４５】
ここで、Ｌ（ｎ）は左チャンネルの音声信号レベル、Ｒ（ｎ）は右チャンネルの音声信号レベル、ｎはサンプル番号をそれぞれ表している。
【００４６】
ステレオ和信号Ｍ（ｎ）およびステレオ差信号Ｓ（ｎ）それぞれに対して音声信号レベルを算出する方法としては、振幅の２乗平均平方値（ＲＭＳ）、または２乗和などがあるが、ここでは２乗平均平方値（ＲＭＳ）を特徴量とした場合の例について説明するものとする。２乗平均平方値ＲＭＳ（Ｎ）は、以下の式（３）のように表現される。
【００４７】
【数１】
2012108451.tif 000003
・・・（３）
【００４８】
ここで、ｘ（ｎ）は、ステレオ和信号Ｍ（ｎ）、またはステレオ差信号Ｓ（ｎ）のフレーム内時刻ｎにおける信号の振幅値であり、Ｋはフレームのサンプル数、Ｎはフレーム番号をそれぞれ表している。
【００４９】
以降においては、特徴量抽出部３２は、入力される楽曲からなるPCM形態の音声信号より、ステレオ和信号の２乗平均平方値（ＲＭＳＭ）と、ステレオ差信号の２乗平均平方値（ＲＭＳＬ）をフレーム単位で時系列特徴量として出力する場合の例について説明する。
【００５０】
変化点検出部３３は、特徴量抽出部３２より供給されてくる時系列特徴量に基づいて、所定の間隔で連続する特徴量間の差分絶対値が大きくなる変化点を検出し、検出した変化点の情報を変化点統合部３４に供給する。特徴量の種別が複数の場合、変化点検出部３３は、特徴量の種別毎に変化点を検出し、それぞれの特徴量の種別毎に変化点の情報を変化点統合部３４に供給する。尚、変化点検出部３３の詳細な構成については、図２を参照して後述する。
【００５１】
変化点統合部３４は、変化点検出部３３より供給されてくる、全ての種別の変化点の情報に基づいて、変化点間の時間間隔が近いもの同士を統合し、変化点統合情報としてサビ解析部３５に供給する。変化点統合部３４は、複数の種別の特徴量の変化点の情報についても、統一して１つの変化点統合情報とする。
【００５２】
サビ解析部３５は、変化点統合部３４より供給されてくる変化点統合情報に基づいて、種別毎の時系列特徴量の情報をブロック化して、特徴量のブロック当たりの平均レベルが最大となるブロックを基準として、サビ部分を検出する。サビ解析部３５は、特徴量の種別毎に検出されたサビ部分の基準となるブロックから順次前後のブロックのレベルと、楽曲全体の平均レベルとの比較によりサビ部分の開始点および終了点を求め、サビ統合部３６に供給する。尚、サビ解析部３５の詳細な構成については、図３を参照して後述する。
【００５３】
サビ統合部３６は、特徴量の種別毎に求められたサビ部分の開始点および終了点の位置の情報を統合することでサビ情報を生成しサビ情報出力部３７に供給する。サビ情報出力部３７は、供給されてきたサビ情報を、取得された楽曲からなる音声信号におけるサビ部分を示す情報として出力する。
【００５４】
［変化点検出部の構成例］
次に、図２を参照して、変化点検出部３３の詳細な構成について説明する。
【００５５】
変化点検出部３３は、正規化部５１、平滑部５２、変化量算出部５３、変化点判定部５４、変化点検出制御部５５、変化点調整部５６、および変化点再検出判定部５７を備えている。
【００５６】
正規化部５１は、特徴量抽出部３２より供給されてくる時系列特徴量について、以下の式（４）で示されるように、その最大値でそれぞれの時系列特徴量を除して正規化し、時系列正規化特徴量として平滑部５２に供給する。
【００５７】
ｇ（Ｎ）＝ｆ（Ｎ）／ｆｍａｘ
・・・（４）
【００５８】
ここで、ｇ（Ｎ）は、Ｎ番目のフレームの時系列正規化特徴量を、ｆ（Ｎ）は、Ｎ番目のフレームの時系列特徴量を、ｆｍａｘは、時系列特徴量のうち最大値をそれぞれ表している。
【００５９】
平滑部５２は、以下の式（５）で示される移動平均を求めることにより、正規化された時系列特徴量を平滑化して変化量算出部５３に供給する。
【００６０】
【数２】
2012108451.tif 000004
・・・（５）
【００６１】
ここで、ＭＡ（Ｎ）は、Ｎ番目のフレームの時系列正規化特徴量の移動平均値を、ｇ（ｋ＋Ｎ）は、（ｋ＋Ｎ）番目のフレームの時系列正規化特徴量を、Ｌは、移動平均の対象となる長さ（サンプル数）を、Ｎはフレーム番号をそれぞれ表している。
【００６２】
すなわち、時系列正規化特徴量は、フレーム長が短くなると時間分解能は高くなるが、波形の起伏が激しくなり、閾値との比較が困難になる恐れがある。このため、サンプル数Ｌの範囲における移動平均値とすることで、時系列正規化特徴量が平滑化される。尚、このサンプル数Ｌは、入力された音声信号を構成する楽曲のテンポ量により変化させるようにしてもよいものである。
【００６３】
変化量算出部５３は、以下の式（６）で示されるように、平滑化された時系列正規化特徴量の変化量Ｄを近傍のフレーム同士の差分絶対値として求め、変化量Ｄとして順次変化点判定部５４に供給する。変化点判定部５４は、変化量Ｄと所定の閾値とを比較し、所定の閾値よりも大きいとき、変化点であるものと認識し、比較結果として変化点検出制御部５５に供給する。
【００６４】
Ｄ＝ＡＢＳ（ＭＡ（Ｎ＋Ｊ）−ＭＡ（Ｎ））
・・・（６）
【００６５】
ここで、Ｄは、変化量を、ＡＢＳ（）は、絶対値を、ＭＡ（Ｎ＋Ｊ），ＭＡ（Ｎ）は、フレーム番号（Ｎ＋Ｊ），Ｎの時系列正規化特徴量の移動平均値を、Ｊは、フレーム数をそれぞれ表している。
【００６６】
変化点判定部５４は、変化量算出部５３より供給されてくる変化量と所定の閾値とを比較し、所定の閾値よりも大きいとき、変化点であるものとみなし、それ以外のとき変化点ではないものとみなす比較結果を変化点検出制御部５５に供給する。
【００６７】
変化点検出制御部５５は、変化点判定部５４より供給されてくる変化点であるか否かを示す比較結果を変化点調整部５６に供給する。また、変化点検出制御部５５は、比較結果が変化点である場合、変化量算出部５３を制御して、変化点であるとされたフレーム位置から所定の距離だけ離れたフレームから変化量を順次算出させる。すなわち、変化点は、順次フレーム番号順に計算されるが、変化点が検出された場合、変化量の算出位置を大きく変更することで、変化点近傍での変化点検出の重複検出を防ぎ、効果の薄い変化点が検出されるのを抑制する。
【００６８】
変化点調整部５６は、変化点検出制御部５５より供給されてくる比較結果である変化点の情報に基づいて、フレーム間距離が所定の距離より短い間隔で求められている変化点同士を統合し、変化点の間隔を調整して、変化点再検出判定部５７に供給する。変化点調整部５６は、例えば、フレーム間距離が所定の距離内にある２つの変化点については、その中間位置に統合する。尚、統合の手法はこれに限るものではなく、その他の手法であってもよいものである。また、統合する際のフレーム間距離は、音声信号である楽曲のテンポ量に応じて設定されるものであっても良い。
【００６９】
変化点再検出判定部５７は、調整された変化点の情報に基づいて、総数が所定の閾値より多いか否か、および、変化点の存在しないフレーム間隔が所定の閾値よりも短いか否かを判定し、判定結果に応じて、変化点を再検出するか否かを判定する。例えば、変化点の総数が所定の閾値より多い場合、変化点の情報が多く起伏の多いことになるため、変化点再検出判定部５７は、平滑部５２を制御して移動平均のサンプル数Ｌを増やすようにさせる。尚、変化点を減らせるようにすればよいので、再検出判定部５７は、平滑部５２を制御して移動平均のサンプル数Ｌを増やすようにさせることに代えて、変化量算出部５３を制御して所定の閾値を大きくさせるようにしてもよい。また、例えば、変化点の存在しないフレーム間隔が所定の閾値よりも長い場合、変化点の情報がない間隔が大きすぎると考えられるため、変化点再検出判定部５７は、変化量算出部５３を制御して所定の閾値を小さくし、変化点を検出し易く制御する。そして、変化点再検出判定部５７は、調整された変化点の情報に基づいて、総数が所定の閾値より多くなく、かつ、変化点の存在しないフレーム間隔が所定の閾値よりも短い場合、供給されてきた変化点の情報を出力する。
【００７０】
［サビ解析部の構成例］
次に、図３を参照して、サビ解析部３５の詳細な構成について説明する。
【００７１】
ブロック区切部７１は、変化点統合情報の変化点の情報に基づいて、種別毎に時系列正規化特徴量を変化点の間隔でブロック単位に区切り、サビブロック検出部７２に供給する。
【００７２】
サビブロック検出部７２は、ブロック区切部７１より供給されてくるブロック単位で、種別毎に、時系列正規化特徴量の平均値をブロック平均値として求め、最大値となるブロックをサビブロックとして検出し、サビブロック制御部７３に供給する。
【００７３】
サビブロック制御部７３は、サビブロックの時間方向に前方、および後方に隣接するブロックをサビブロックの開始位置および終了位置の候補となるブロックとしてサビブロック解析部７４に供給する。
【００７４】
サビブロック解析部７４は、サビブロックの開始位置および終了位置の候補となるブロックの時系列正規化特徴量のブロック平均値を計算し、サビブロック判定部７５に供給する。
【００７５】
サビブロック判定部７５は、サビブロックの開始位置および終了位置の候補となるブロックの時系列正規化特徴量のブロック平均値と楽曲の音声信号の全体における特徴量の平均との差分と、以下の式（７）により設定される閾値Ｖｔｈとを比較する。
【００７６】
Ｖｔｈ＝（ＢＭＡｍａｘ−ＭＡａｖ）×α
・・・（７）
【００７７】
ここで、Ｖｔｈは、閾値を、ＢＭＡｍａｘは、時系列正規化特徴量の平均が最大となるブロックにおける、時系列正規化特徴量のブロック平均値を、ＭＡａｖは、時系列正規化特徴量の楽曲全体の平均値を、αは調整係数を、それぞれ表している。尚、時系列正規化特徴量の楽曲全体の平均値ＭＡａｖを算出する際、無音箇所など他と比べて著しく音響信号レベルが小さい箇所については、算出対象から除外することが望ましい。
【００７８】
そして、サビブロック判定部７５は、ブロック平均値と楽曲の音声信号の全体における特徴量の平均との差分が閾値Ｖｔｈより大きい場合、その候補となるブロックをサビブロックとして、開始位置および終了位置を更新する。そして、サビブロック判定部７５は、サビブロック制御部７３を制御して、さらに、前方、および後方のブロックについて同様の処理を繰り返すように指示する。サビブロック判定部７５は、この処理を繰り返し、閾値Ｖｔｈよりもブロック平均値と楽曲の音声信号の全体における特徴量の平均との差分が低い場合、その候補となるブロックを、サビブロック補正部７６に供給する。
【００７９】
サビブロック補正部７６は、サビブロックの候補となるブロックについて、調整係数αを調整して閾値Ｖｔｈを下げる、または、開始点および終了点のブロックのそれぞれの先頭付近、および終了付近の時系列特徴量を外したブロック平均値により、再度、同様の処理を繰り返す。この処理により、サビブロック補正部７６は、サビブロックの末端となるブロックが開始位置および終了位置のブロックであるか否かを再判定する。ブロック平均値と楽曲の音声信号の全体における特徴量の平均との差分が閾値より大きい場合、サビブロック補正部７６は、その候補となるブロックをサビブロックとして、開始位置および終了位置を更新し出力する。また、ブロック平均値と楽曲の音声信号の全体における特徴量の平均との差分が閾値より小さい場合、サビブロック補正部７６は、従来のサビブロックの開始位置および終了位置を出力する。
【００８０】
［音楽解析処理］
次に、図４のフローチャートを参照して、音楽解析処理について説明する。
【００８１】
ステップＳ１において、取得部３１は、入力されてくる楽曲からなる音声信号を取得し、必要に応じて圧縮形態の音声信号をデコードし、PCM形態の音声信号に変換して、特徴量抽出部３２に供給する。
【００８２】
ステップＳ２において、特徴量抽出部３２は、楽曲を構成する音声信号より予め設定されている種別の特徴量を時系列に抽出し、時系列特徴量として抽出する。ここで、特徴量抽出部３２により抽出されるべき時系列特徴量の種別は、上述した音声信号レベルであるステレオ和信号、およびステレオ差信号であるものとして説明を進めるが、それ以外の種別の時系列特徴量であってもよい。
【００８３】
ステップＳ３において、変化点検出部３３は、変化点検出処理を実行し、時系列特徴量の種別毎に変化点を検出し、変化点検出結果を変化点統合部３４に供給する。
【００８４】
［変化点検出処理］
ここで、図５のフローチャートを参照して、変化点検出処理について説明する。
【００８５】
ステップＳ３１において、正規化部５１は、上述した式（４）を計算することにより、種別毎に時系列特徴量のうち最大値となる値で、全ての時系列特徴量を除することにより、正規化し、時系列正規化特徴量として平滑部５２に供給する。
【００８６】
ステップＳ３２において、平滑部５２は、種別毎の時系列特徴量の全てについて、サンプル数Ｌ分だけの移動平均を求めて置換することにより、平滑化して変化量算出部５３に供給する。尚、サンプル数Ｌについては、初期の処理においては、デフォルトの設定値となるが、２回目以降においては、後述する処理により、変化点再検出判定部５７により全体の変化点数に基づいて設定される値となる。
【００８７】
また、各時系列特徴量を平滑化するのは、例えば、図６の波形Ａで示されるような音声信号より抽出される時系列正規化特徴量が、図６の波形Ｂで示されるようなものであるとき、時系列正規化特徴量は起伏が激しくなり、Ａメロとサビ部分の境界など意味のある変化点を検出する際の弊害となる。尚、図６の波形Ａの下部における白黒の帯部分は、黒色部分がサビ部分であり、白色部分がサビ部分ではない部分を示している。
【００８８】
これに対して、図６の波形Ｃ乃至Ｈで示されるように、平滑化がなされると波形の起伏がなくなり、Ａメロとサビ部分の境界と変化点との関係を明確にすることが可能となる。尚、波形Ｃ乃至Ｈについては、それぞれ、０．５秒分、１．０秒分、２．０秒分、４．０秒分、８．０秒分、および１２．０秒分のそれぞれの移動平均対象の長さとなる時系列正規化特徴量を、移動平均として置換することにより平滑化したときの波形を示している。
【００８９】
しかしながら、図６の波形Ｈで示されるように移動平均対象の長さを極端に長くすると時間分解能が悪化するため、移動平均対象の長さは適度にとる必要がある。この例の場合、波形Ｅで示される、移動平均対象の長さを２［ｓｅｃ］程度に対応するサンプル数Ｌに設定すると良い。移動平均対象の長さは、テンポ量（ＢＰＭ、１分間当たりのビート量）に応じて設定されることが望ましい。例えば、移動平均対象の長さは、テンポ量に基づき１小節長に設定するようにしてもよい。
【００９０】
ステップＳ３３において、変化点再検出判定部５７は、変化点となる変化量の閾値を設定する。すなわち、変化点再検出判定部５７は、初期の処理においては、デフォルトの値となるが、２回目以降においては、所定時間内に存在する変化点数により設定する。
【００９１】
ステップＳ３４において、変化量算出部５３は、変化点を検出すべき領域を設定する。尚、この変化点を検出すべき領域については、予め設定されるものであるが、通常、最初の処理においては、取得された楽曲からなる音声信号の全体とされる。
【００９２】
ステップＳ３５において、変化量算出部５３は、上述した式（６）を計算することにより、入力されてくる時系列正規化特徴量のうち、未処理のものの中で最もフレーム番号Ｎが小さいものと、そのフレーム番号Ｎに所定のサンプル数Ｊを加算したフレーム番号（Ｎ＋Ｊ）の時系列正規化特徴量の値の差分絶対値を変化量Ｄとして算出し、変化点判定部５４に供給する。
【００９３】
ステップＳ３６において、変化点判定部５４は、供給されてくる変化量Ｄと閾値とを比較し、変化量が閾値よりも大きいか否かを判定する。例えば、ステップＳ３６において、変化量が閾値よりも大きく、閾値条件を満たすと判定された場合、処理は、ステップＳ３７に進む。
【００９４】
ステップＳ３７において、変化点判定部５４は、判定結果と共に、供給されてきた変化量を求めたフレームＮの時系列正規化特徴量が取得されたタイミングが変化点位置であることを示す情報を変化点検出制御部５５に供給する。変化点検出制御部５５は、供給されてきた変化量を求めたフレームＮの時系列正規化特徴量が取得されたタイミングが変化点位置であることを示す情報を変化点調整部５６に供給して記憶させる。
【００９５】
ステップＳ３８において、変化点判定部５４は、現在比較した変化量のフレーム番号Ｎに所定値Ｔを加算し、フレーム番号（Ｎ＋Ｔ）までの変化量と閾値との比較処理は処理済であるものとして、以降の処理を実行させるように、変化点検出制御部５５を制御する。
【００９６】
すなわち、図７で示されるように、時刻ｔ６に対応する変化量が所定の閾値よりも大きく、閾値条件を満たしている場合、処理したフレーム番号Ｎ（ｔ６）に対して、所定値Ｔを加算したタイミング時刻ｔ１１に相当するフレーム番号Ｎ（ｔ１１）にフレーム番号を変更し、このフレーム番号に対応する変化点までの変化量は算出されたものとする。これは、変化点を検出した場合、変化量の算出位置を大きく変更することで、変化点近傍での変化点検出の重複を防ぎ、効果の薄い変化点検出を抑制するためである。新しく更新された変化量の算出位置は、例えば、変化量を算出する場合と同様、元の算出位置から１小節程度離れた位置にすると良い。尚、図７においては、横軸が時刻であり、縦軸が各時刻に対応するタイミングにおける時系列正規化特徴量の値を示している。各時刻ｔ１乃至ｔ７、およびｔ１１乃至ｔ１２間の時間Ｔｆは、上述したサンプル数Kに対応するフレーム長である。
【００９７】
ステップＳ３９において、変化点判定部５４は、指定した領域について、全てのフレーム番号の変化量の算出が完了されたか否かを判定する。すなわち、次に変化量を算出するフレーム番号に対応する位置が、指定された領域を超えているか否かにより判定されることになる。ステップＳ３９において、指定した領域について、全てのフレーム番号の変化量の算出が完了していないと判定された場合、処理は、ステップＳ３５に戻る。一方、ステップＳ３６において、変化量が閾値よりも小さく、閾値条件を満たしていない場合、ステップＳ３７，Ｓ３８の処理はスキップされる。すなわち、指定した領域について、全ての変化量が求められたと判定されるまで、ステップＳ３５乃至Ｓ３９の処理が繰り返される。
【００９８】
そして、ステップＳ３９において、指定した領域について、全ての変化量が求められたと判定された場合、処理は、ステップＳ４０に進む。
【００９９】
ステップＳ４０において、変化点調整部５６は、検出した変化点について、近傍のものとなるものを統合し、統合した変化点の情報を変化点再検出判定部５７に供給する。
【０１００】
すなわち、変化点調整部５６は、図８の上段で示されるように、予め定めた統合範囲Ｄｔ内に含まれる時刻ｔ２１，ｔ２２に対応するタイミングの変化点を、図８の下段で示されるように、時刻ｔ２１，ｔ２２の中間である時刻ｔ３１に統合する。尚、統合に当たっては、２つのタイミングの中間以外のタイミングに統合するようにしてもよいものである。また、統合範囲Ｄｔについては、テンポ量に応じて変えるようにしてもよいものである。
【０１０１】
ステップＳ４１において、変化点再検出判定部５７は、供給されてきた変化点のタイミングの情報に基づいて、変化点を検出した領域全体における変化点数が所定の閾値より少ないという閾値条件を満たすか否かを判定する。ステップＳ４１において、例えば、変化点を検出した領域全体における変化点数が所定の閾値よりも少ないという閾値条件を満たさない場合、処理は、ステップＳ４３に進む。
【０１０２】
すなわち、図９の上段で示されるような音声信号の波形の場合、その時系列正規化特徴量は、２．０秒間隔で平滑化しても、図９の下段で示されるような波形となる。すなわち、図９の下段の波形は、起伏が激しく、図６の波形Ｅと比較すると、平滑化が不足した波形であり、検出した変化点数が予め定めた閾値より多くなる恐れがある。そのため、変化点を過剰に検出してしまい、サビ検出性能の劣化要因となる恐れがある。テンポ量（BPM）が小さい楽曲の場合や、伴奏がピアノだけの楽曲など楽器数が少ない場合に、このような音声信号レベルの起伏が激しくなる傾向がある。尚、図９の上段における下部の白色および黒色からなる帯部分はサビ部分を示すものであり、黒色がサビ部分を、白色がサビ部分ではない領域を示している。
【０１０３】
そこで、ステップＳ４３において、変化点再検出判定部５７は、平滑部５２を制御して、平滑化の際の移動平均対象の範囲を長くし、処理は、ステップＳ３２に戻る。この結果、移動平均対象の範囲が長くなった状態で、変化点が再度検出される。楽曲の総時間は楽曲によって異なるため、変化点数の閾値は単位時間当たりの変化点数（例えば、１分あたりの変化点数）であることが望ましい。尚、変化点数を減らすことができればよいので、移動平均対象の範囲を長くする代わりに、変化点判定部５４における閾値を大きく設定し直し、変化点を検出し難い状態として、再度変化点を検出するようにしてもよい。
【０１０４】
一方、ステップＳ４１において、変化点検出を行った領域全体における変化点数が所定の閾値よりも少ないという閾値条件を満たす場合、処理は、ステップＳ４２に進む。
【０１０５】
ステップＳ４２において、変化点再検出判定部５７は、予め定めた所定時間内に変化点のない領域が存在するか判定する。この所定時間はテンポ量に応じて変えても良い。ステップＳ４２において、予め定めた所定時間内に変化点のない領域がある場合、処理は、ステップＳ４４に進む。
【０１０６】
ステップＳ４４において、変化点再検出判定部５７は、変化点判定部５４を制御して、変化点を検出し易くするため閾値を所定値だけ小さく設定させるように制御すると共に、変化点検出領域を該当領域に設定し、処理は、ステップＳ３３に戻る。
【０１０７】
すなわち、変化点の無い領域については、変化点を求める必要があるため、変化点判定部５４における閾値を小さく、緩めに設定させることで、変化点が求めやすい状態として、再度、処理を繰り返す。
【０１０８】
そして、ステップＳ４２において、予め定めた所定時間内に変化点のない領域が存在しないと判定された場合、処理は、ステップＳ４５に進む。
【０１０９】
ステップＳ４５において、変化点再検出判定部５７は、求められた変化点の情報を出力する。尚、複数の種別の時系列特徴量を扱う場合、種別毎に変化点の情報が生成されて出力されることになる。
【０１１０】
以上の処理により、時系列正規化特徴量の変化量が閾値よりも大きなタイミングが変化点として求められて、それらの時系列の情報が変化点情報として出力される。また、複数の種別の時系列特徴量を扱う場合、種別毎に変化点の情報が生成されて、それぞれの変化点情報が出力される。
【０１１１】
ここで、図４のフローチャートの説明に戻る。
【０１１２】
ステップＳ３において、変化点検出処理が実行されることにより、変化点情報が変化点検出部３３により生成されて、変化点統合部３４に供給されると、ステップＳ４において、変化点統合部３４は、これらの変化点情報を統合する。すなわち、複数の種別のそれぞれの変化点情報が供給されてくることになるが、最終的に必要なのは、楽曲における変化点であり、複数の種別の変化点情報があったとしても、類似した傾向を示すものもあるので、近傍にある変化点については、種別に関わらず、順次統合する。尚、統合方法については、図８を参照して説明した処理と同様であるので、その説明は省略する。
【０１１３】
ステップＳ５において、サビ解析部３５は、サビ解析処理を実行して、時系列正規化特徴量の種別毎に、サビブロックの先頭位置と終了位置を求めてサビ統合部３６に供給する。
【０１１４】
［サビ解析処理］
ここで、図１０のフローチャートを参照して、サビ解析処理について説明する。
【０１１５】
ステップＳ７１において、ブロック区切部７１は、時系列正規化特徴量を、変化点を境界とするブロックに区切り、時系列正規化特徴量をブロック単位に分割する。
【０１１６】
ステップＳ７２において、サビブロック検出部７２は、ブロック単位で時系列正規化特徴量の平均値を求め、最大値となるブロックをサビブロックとして検出する。すなわち、音声信号のレベルを特徴量とした場合、「サビ部分」は、「Aメロ」や「間奏」などと比較して音声信号レベルが大きいという音楽性質を持つため、時系列正規化特徴量の平均が最大となるブロックがサビブロックとして検出される。
【０１１７】
ステップＳ７３において、サビブロック検出部７２は、ブロック単位に分割された時系列正規化特徴量の平均が最大値となるブロックの長さが所定の長さより短いか否かを判定し、判定結果をサビブロック制御部７３に供給する。
【０１１８】
ステップＳ７３において、時系列正規化特徴量の平均が最大値となるブロックの長さが所定の長さよりも短いか否か、すなわち、時系列正規化特徴量の平均が最大値となるブロックが極端に短く、時系列正規化特徴量の平均が、突発的に大きいとみなされる場合、処理は、ステップＳ７４に進む。
【０１１９】
ステップＳ７４において、サビブロック制御部７３は、時系列正規化特徴量の平均が最大値となるブロックの長さを、所定の長さにまで広げ、所定の長さにまで広げられたブロックの長さから求められる時系列正規化特徴量の平均を、そのブロックにおける時系列正規化特徴量の平均とする。
【０１２０】
すなわち、例えば、図１１における時刻ｔ７５乃至ｔ７６のブロックの時系列正規化特徴量の平均は、最大値となるが、ブロックの長さが所定の長さよりも短いため、突発的に大きな変化となっている。このような場合、ブロック単位の平均値が他のブロックと比較して大きくなり、後述する閾値条件が必要以上に厳しくなることで、サビ開始位置を検出する際の妨げとなってしまう恐れがある。このため、ブロック長が予め定めた閾値より小さい場合、特徴量平均の算出対象を予め定めた範囲まで広げることでこのような弊害を軽減する。この閾値および特徴量平均の算出対象となる範囲はテンポ量に応じて変えても良い。尚、図１１においては、波形図の下部に設けられた各時刻ｔ７１乃至ｔ７９が変化点として求められたタイミングであり、各間隔がブロックとして分割され、時刻ｔ７５乃至ｔ７６のブロックがサビブロックとして検出される。
【０１２１】
また、ステップＳ７３において、時系列正規化特徴量の平均が最大値となるブロックの長さが所定の長さよりも短くない場合、ステップＳ７４の処理はスキップされ、ステップＳ７３の処理の後、処理は、ステップＳ７５に進む。
【０１２２】
ステップＳ７５において、サビブロック制御部７３は、サビブロックの情報に基づいて、上述した式（７）で示されるブロック単位の時系列特徴量平均の最大値と楽曲の音声信号の全体における特徴量の平均値との差分に基づいて閾値Ｖｔｈを計算する。
【０１２３】
ステップＳ７６において、サビブロック制御部７３は、サビブロックの情報に基づいて、サビブロック開始位置の情報を更新する。そして、サビブロック制御部７３は、種別毎に、各ブロック単位の時系列正規化特徴量の平均値、サビブロック、各ブロック、および時系列正規化特徴量のそれぞれの情報、サビブロック開始位置の情報、並びに、閾値Ｖｔｈをサビブロック解析部７４に供給する。
【０１２４】
すなわち、例えば、図１２の上段で示されるような時系列正規化特徴量の波形があり、波形の下に時刻ｔ１０１乃至ｔ１０７のそれぞれの間隔毎にブロックが設定され、時刻ｔ１０５乃至ｔ１０６のブロックがサビブロックとして検出された場合、サビブロック制御部７３は、サビブロックである時刻ｔ１０５乃至ｔ１０６のブロックの先頭位置である時刻ｔ１０５をサビブロックの開始位置として更新する。尚、図１２においては、右下がりの斜線部はサビブロックであり、白色のブロックはそれ以外のブロックである。
【０１２５】
ステップＳ７７において、サビブロック解析部７４は、サビブロックの開始位置の時間的に前のタイミングのブロックをサビブロックの先頭ブロックの候補として解析対象に設定する。そして、サビブロック解析部７４は、種別毎に、各ブロック単位の時系列正規化特徴量の平均値、サビブロック、各ブロック、および時系列正規化特徴量のそれぞれの情報、サビブロック開始位置、解析対象のブロックの情報、並びに閾値Ｖｔｈをサビブロック判定部７５に供給する。
【０１２６】
ステップＳ７８において、サビブロック判定部７５は、先頭ブロックの候補である解析対象となるブロックの時系列正規化特徴量の平均値を求める。
【０１２７】
ステップＳ７９において、サビブロック判定部７５は、解析対象となるブロックの時系列正規化特徴量の平均値と楽曲の音声信号の全体における特徴量の平均値との差分が閾値Ｖｔｈよりも大きく、閾値条件を満たしているか否かを判定する。
【０１２８】
ステップＳ７９において、例えば、図１２の上から３段目で示されるように、右上がりの斜線部で示される時刻ｔ１０４乃至ｔ１０５のブロックが解析対象となるブロックの場合、時系列正規化特徴量の平均値と楽曲の音声信号の全体における特徴量の平均値との差分が閾値Ｖｔｈよりも大きく、閾値条件を満たしているとき、処理は、ステップＳ７６に戻る。
【０１２９】
すなわち、この場合、ステップＳ７６において、サビブロックは、図１２の４段目で示されるように、右下がりの斜線部で示される時刻ｔ１０４乃至ｔ１０６の２つのブロックから構成され、その開始位置は、時刻ｔ１０４に更新される。このとき、ステップＳ７７においては、図１２の５段目で示されるように、時刻ｔ１０３乃至ｔ１０４のブロックが解析対象に設定される。
【０１３０】
一方、ステップＳ７９において、時系列正規化特徴量の平均値と楽曲の音声信号の全体における特徴量の平均値との差分が閾値Ｖｔｈよりも小さく、閾値条件を満たさない場合、処理は、ステップＳ８０に進む。
【０１３１】
ステップＳ８０において、サビブロック判定部７５は、種別毎に、各ブロック単位の時系列正規化特徴量の平均値、サビブロック、各ブロック、および時系列正規化特徴量のそれぞれの情報、サビブロック開始位置、解析対象のブロックの情報、並びに閾値Ｖｔｈをサビブロック補正部７６に供給する。サビブロック補正部７６は、解析対象のブロックがサビブロックであるか否かを詳細に判定する。すなわち、「サビ部分の直前のブロック」から「サビ部分」に遷移するに際して、徐々に音声信号のレベルが上がることが多い。こうした場合、解析対象となるブロックが遷移箇所を含むと、時系列正規化特徴量の平均が小さくなってしまう場合がある。このような弊害を考慮するため、サビブロック補正部７６は、ブロック内先頭付近の時系列正規化特徴量を、平均を求める算出対象から外して、解析対象のブロックの時系列正規化特徴量の補正平均を求め直し、閾値Ｖｔｈとの比較により、閾値条件を満たすか否かによりサビブロックであるか否かを判定する。
【０１３２】
ステップＳ８０において、解析対象のブロックの時系列正規化特徴量の補正平均と楽曲の音声信号の全体における特徴量の平均値との差分が閾値Ｖｔｈよりも大きく、閾値条件を満たすとみなされた場合、処理は、ステップＳ８１に進む。
【０１３３】
ステップＳ８１において、サビブロック補正部７６は、解析対象のブロックを、サビブロックの先頭位置に更新して記憶する。
【０１３４】
一方、ステップＳ８０において、解析対象のブロックの時系列正規化特徴量の補正平均と楽曲の音声信号の全体における特徴量の平均値との差分が閾値Ｖｔｈよりも小さく、閾値条件を満たさないとみなされた場合、図１２の６段目で示されるように、候補であった時刻ｔ１０３乃至ｔ１０４のブロックは、サビブロックではないものとみなされる。そして、ステップＳ８１の処理がスキップされる。
【０１３５】
ステップＳ８２において、サビ解析部３５は、終了位置設定処理を実行し、上述したサビブロックの開始位置を決定する手法と同様の手法によりサビブロックの終了位置を設定する。尚、サビブロックの終了位置設定処理については、ステップＳ７５乃至Ｓ８１の処理と同様の手法であって、時間の進む方向に解析対象ブロックを設定すること以外は同様であるので、その説明は省略するものとする。
【０１３６】
ステップＳ８３において、サビブロック補正部７６は、求められたサビブロックの先頭位置および終了位置の情報をサビ統合部３６に出力する。
【０１３７】
以上の処理により、時系列正規化特徴量のうち、ブロック単位の平均値が最大値となるブロックを中心として、サビブロックの開始位置および終了位置の情報が求められる。また、複数の種別の時系列正規化特徴量が用いられた場合、時系列正規化特徴量の種別毎に、サビブロックの開始位置および終了位置の情報が求められることになる。
【０１３８】
ここで、図４のフローチャートの説明に戻る。
【０１３９】
ステップＳ５において、サビ解析処理により時系列正規化特徴量の種別毎にサビブロックの開始位置および終了位置の情報が求められてサビ統合部３６に供給される。
【０１４０】
そして、ステップＳ６において、サビ統合部３６は、サビ解析部３５より供給されてきた、時系列正規化特徴量の種別毎のサビブロックの開始位置および終了位置の情報を取得し、複数のサビブロックを統合する。より具体的には、サビ統合部３６は、サビブロックであるか否かの判定に使用する閾値Ｖｔｈが小さい場合、検出したブロックがサビ部分である信頼性が低くなる傾向があるため、閾値等を指標に最も信頼性の高い特徴量により求められたサビブロックを統合結果として出力する。また、どの種別の特徴量がサビ解析に有効であるかについては、予め分かっているので、サビ統合部３６は、特徴量についてサビ解析に有効な順に予め採用の優先度を決めておき、閾値等を指標に信頼性の低い場合のみ他の特徴量による検出結果を出力するようにしてもよい。尚、時系列正規化特徴量の種別が１種類である場合は、この処理は、スキップされる。
【０１４１】
ステップＳ７において、サビ統合部３６は、統合されたサビブロックの情報を出力する。
【０１４２】
以上のように、時系列正規化特徴量をフレーム毎に設定し、各時系列正規化特徴量の移動平均を求め、フレーム単位の変化量から所定の変化量より大きな位置を変化点として求め、変化点間をブロックとして設定し、ブロック単位で時系列正規化特徴量の平均を求め、その最大値となるブロックをサビブロックとして検出し、検出されたサビブロックの開始位置と終了位置とを求めることで、サビブロックの範囲を検出するようにした。結果として、サビ部分は、音声信号のレベルが高まるという傾向に基づいて、正確に求めることが可能となる。
【０１４３】
さらに、時系列特徴量の平均が最大となるブロックをサビブロックとして検出しているが、逆に「サビ」が「Ａメロ」や「間奏」などと比較して小さくなる特性を持つ種別の時系列特徴量を使用する場合、時系列特徴量の平均が最小となるブロックを検出するようにして、この場合は時系列特徴量の正負極性を反転して扱うことで、共通した処理とするようにしてもよい。
【０１４４】
本発明によれば、サビ部分を精度良く抽出することができ、ユーザが所望とする楽曲の検索性能を高めることができる。また、複数の楽曲のサビ部分について、音声信号の変化点を開始位置として連続再生することができる。
【０１４５】
また、上述したように簡潔な処理構造で実現することができるため、処理能力の低いプロセッサでも高速な処理が可能であり、また実装も容易である。さらに、楽曲中での繰り返しパターンを考慮していないため類似度算出のための自己相関処理は不要であり、楽曲後半を解析対象から外すなどすることにより、更なる高速化を実現することが可能となる。
【０１４６】
さらに、楽曲検索の機能や複数楽曲のサビ部分について連続再生する機能を持ったアプリケーションとして活用することが可能となる。
【０１４７】
ところで、上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。
【０１４８】
図１３は、汎用のパーソナルコンピュータの構成例を示している。このパーソナルコンピュータは、CPU(Central Processing Unit)１００１を内蔵している。CPU１００１にはバス１００４を介して、入出力インタフェイス１００５が接続されている。バス１００４には、ROM(Read Only Memory)１００２およびRAM(Random Access Memory)１００３が接続されている。
【０１４９】
入出力インタフェイス１００５には、ユーザが操作コマンドを入力するキーボード、マウスなどの入力デバイスよりなる入力部１００６、処理操作画面や処理結果の画像を表示デバイスに出力する出力部１００７、プログラムや各種データを格納するハードディスクドライブなどよりなる記憶部１００８、LAN（Local Area Network）アダプタなどよりなり、インターネットに代表されるネットワークを介した通信処理を実行する通信部１００９が接続されている。また、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory)、DVD(Digital Versatile Disc)を含む）、光磁気ディスク（ＭＤ(Mini Disc)を含む）、もしくは半導体メモリなどのリムーバブルメディア１０１１に対してデータを読み書きするドライブ１０１０が接続されている。
【０１５０】
CPU１００１は、ROM１００２に記憶されているプログラム、または磁気ディスク、光ディスク、光磁気ディスク、もしくは半導体メモリ等のリムーバブルメディア１０１１から読み出されて記憶部１００８にインストールされ、記憶部１００８からRAM１００３にロードされたプログラムに従って各種の処理を実行する。RAM１００３にはまた、CPU１００１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０１５１】
尚、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理は、もちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理を含むものである。
【符号の説明】
【０１５２】
１１  音楽解析装置，  ３１  取得部，  ３２  特徴量抽出部，  ３３  変化点検出部，  ３４  変化点統合部，  ３５  サビ解析部，  ３６  サビ統合部，  ３７  サビ情報出力部，  ５１  正規化部，  ５２  平滑部，  ５３  変化量算出部，  ５４  変化点判定部，  ５５  変化点検出制御部，  ５６  変化点調整部，  ５７  変化点再検出判定部，  ７１  ブロック区切部，  ７２  サビブロック検出部，  ７３  サビブロック制御部，  ７４  サビブロック解析部，  ７５  サビブロック判定部，  ７６  サビブロック補正部
【図１】
2012108451.tif 000005
【図２】
2012108451.tif 000006
【図３】
2012108451.tif 000007
【図４】
2012108451.tif 000008
【図５】
2012108451.tif 000009
【図６】
2012108451.tif 000010
【図７】
2012108451.tif 000011
【図８】
2012108451.tif 000012
【図９】
2012108451.tif 000013
【図１０】
2012108451.tif 000014
【図１１】
2012108451.tif 000015
【図１２】
2012108451.tif 000016
【図１３】
2012108451.tif 000017