米国特許情報 | 欧州特許情報 | 国際公開(PCT)情報 | Google の米国特許検索
 
     特許分類
A 農業
B 衣類
C 家具
D 医学
E スポ−ツ;娯楽
F 加工処理操作
G 机上付属具
H 装飾
I 車両
J 包装;運搬
L 化学;冶金
M 繊維;紙;印刷
N 固定構造物
O 機械工学
P 武器
Q 照明
R 測定; 光学
S 写真;映画
T 計算機;電気通信
U 核技術
V 電気素子
W 発電
X 楽器;音響


  ホーム -> 楽器;音響 -> ヤマハ株式会社

発明の名称 音声信号処理装置、音声信号処理方法および音声信号処理プログラム
発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開2007−4153(P2007−4153A)
公開日 平成19年1月11日(2007.1.11)
出願番号 特願2006−146868(P2006−146868)
出願日 平成18年5月26日(2006.5.26)
代理人 【識別番号】100084548
【弁理士】
【氏名又は名称】小森 久夫
発明者 藤島 琢哉 / ジョルディ ボナダ / アレックス ロスコス / オスカー メイヤー
要約 課題
整合性の高い、最善という保証のある演奏上の表現判定を行うことができる音声信号処理装置を提供する。

解決手段
歌唱の複数の表現態様をそれぞれ1つの状態としてモデル化し、音声信号を25ms毎に分割した各フレームの特徴パラメータに基づき、1フレームまたは連続する複数フレームが特定の状態の区間である確率を所定の観測区間にわたって算出し、この確率に基づいて所定の観測区間における状態推移の最適経路を決定することにより、前記音声信号の表現態様とその区間を判定する表現判定処理を行う。
特許請求の範囲
【請求項1】
楽音を演奏または歌唱した音声信号を入力する音声信号入力部と、
入力された音声信号を所定時間毎のフレームに分割し、各フレーム毎に該音声信号の特徴パラメータを検出する特徴パラメータ検出部と、
演奏または歌唱の複数の表現態様をそれぞれ1つの状態としてモデル化し、前記各フレームの特徴パラメータに基づき、1フレームまたは連続する複数フレームが特定の状態の区間である確率を所定の観測区間にわたって算出し、この確率に基づいて所定の観測区間における状態推移の最適経路を決定することにより、前記音声信号の表現態様とその区間を判定する表現判定処理を行う表現判定部と、
を備えた音声信号処理装置。
【請求項2】
前記表現判定部は、前記表現判定処理として、さらに、表現態様が確定した区間について、前記特徴パラメータに基づいてさらに判定を行い、該表現態様の詳細内容を判定する請求項1に記載の音声信号処理装置。
【請求項3】
前記特徴パラメータ検出部により検出された特徴パラメータを記憶するバッファを備え、
前記表現判定部は、楽曲の途中で、楽曲の一部区間について前記表現判定処理を行い、前記バッファは、前記楽曲の一部区間分の記憶容量を有するものである前記請求項1または請求項2に記載の音声信号処理装置。
【請求項4】
前記表現判定部は、入力された音声信号における前記楽音の遷移点を検出し、この遷移点で前記表現判定処理を実行する請求項3に記載の音声信号処理装置。
【請求項5】
前記表現判定部は、前記最適経路の決定を、Viterbiアルゴリズムを用いて行う請求項1乃至請求項4のいずれかに記載の音声信号処理装置。
【請求項6】
楽音を演奏または歌唱した音声信号を入力する音声信号入力手順と、
入力された音声信号を所定時間毎のフレームに分割し、各フレーム毎に該音声信号の特徴パラメータを検出する特徴パラメータ検出手順と、
演奏または歌唱の複数の表現態様をそれぞれ1つの状態としてモデル化し、前記各フレームの特徴パラメータに基づき、1フレームまたは連続する複数フレームが特定の状態の区間である確率を所定の観測区間にわたって算出し、この確率に基づいて所定の観測区間における状態推移の最適経路を決定することにより、前記音声信号の表現態様とその区間を判定する表現判定手順と、
を行うことを特徴とする音声信号処理方法。
【請求項7】
信号処理装置に、
楽音を演奏または歌唱した音声信号を入力する音声信号入力手順と、
入力された音声信号を所定時間毎のフレームに分割し、各フレーム毎に該音声信号の特徴パラメータを検出する特徴パラメータ検出手順と、
演奏または歌唱の複数の表現態様をそれぞれ1つの状態としてモデル化し、前記各フレームの特徴パラメータに基づき、1フレームまたは連続する複数フレームが特定の状態の区間である確率を所定の観測区間にわたって算出し、この確率に基づいて所定の観測区間における状態推移の最適経路を決定することにより、前記音声信号の表現態様とその区間を判定する表現判定手順と、
を実行させることを特徴とする音声信号処理プログラム。
発明の詳細な説明
【技術分野】
【0001】
この発明は、音声信号として入力された演奏や歌唱の表現態様を検出する音声信号処理装置、音声信号処理方法および音声信号処理プログラムに関する。
【背景技術】
【0002】
歌唱情報や演奏データなどの楽音データと基準メロディとを照合して、音の始まりや持続,終わりを判定する音楽評価装置は種々提案されている(たとえば特許文献1)。
【特許文献1】特開平3−242700号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかし、上記従来の装置では、モデルを想定せず、その場その場での楽音がこのような特徴を示すからこのような表現であるという判定をするので、前後関係からして整合しないような判定をすることがある。また、判定結果が何らかの基準に照らして最善のものであるという保証がないという問題点があった。
【0004】
この発明では、音声認識においてよく行われる手法を採用することで、より整合性の高い、また最善という保証のある判定を行うことができる音声信号処理装置、音声信号処理方法および音声信号処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0005】
請求項1の発明は、楽音を演奏または歌唱した音声信号を入力する音声信号入力部と、入力された音声信号を所定時間毎のフレームに分割し、各フレーム毎に該音声信号の特徴パラメータを検出する特徴パラメータ検出部と、検出した特徴パラメータを記憶するバッファと、演奏または歌唱の複数の表現態様をそれぞれ1つの状態としてモデル化し、前記各フレームの特徴パラメータに基づき、1フレームまたは連続する複数フレームが特定の状態の区間である確率を所定の観測区間にわたって算出し、この確率に基づいて所定の観測区間における状態推移の最適経路を決定することにより、前記音声信号の表現態様とその区間を判定する表現判定処理を行う表現判定部と、を備えたことを特徴とする。
【0006】
請求項2の発明は、前記表現判定部は、前記表現判定処理として、さらに、表現態様が確定した区間について、前記特徴パラメータに基づいてさらに判定を行い、該表現態様の詳細内容を判定することを特徴とする。
【0007】
請求項3の発明は、前記表現判定部は、楽曲の途中で、楽曲の一部区間について前記表現判定処理を行い、前記バッファは、前記楽曲の一部区間分の記憶容量を有するものであることを特徴とする。
【0008】
請求項4の発明は、前記表現判定部は、入力された音声信号における前記楽音の遷移点を検出し、この遷移点で前記表現判定処理を実行することを特徴とする。
【0009】
請求項5の発明は、前記表現判定部は、前記最適経路の決定を、Viterbiアルゴリズムを用いて行うことを特徴とする。
【0010】
請求項6の発明は、楽音を演奏または歌唱した音声信号を入力する音声信号入力手順と、入力された音声信号を所定時間毎のフレームに分割し、各フレーム毎に該音声信号の特徴パラメータを検出する特徴パラメータ検出手順と、演奏または歌唱の複数の表現態様をそれぞれ1つの状態としてモデル化し、前記各フレームの特徴パラメータに基づき、1フレームまたは連続する複数フレームが特定の状態の区間である確率を所定の観測区間にわたって算出し、この確率に基づいて所定の観測区間における状態推移の最適経路を決定することにより、前記音声信号の表現態様とその区間を判定する表現判定手順と、を行う音声信号処理方法である。
【0011】
請求項7の発明は、信号処理装置に、楽音を演奏または歌唱した音声信号を入力する音声信号入力手順と、入力された音声信号を所定時間毎のフレームに分割し、各フレーム毎に該音声信号の特徴パラメータを検出する特徴パラメータ検出手順と、演奏または歌唱の複数の表現態様をそれぞれ1つの状態としてモデル化し、前記各フレームの特徴パラメータに基づき、1フレームまたは連続する複数フレームが特定の状態の区間である確率を所定の観測区間にわたって算出し、この確率に基づいて所定の観測区間における状態推移の最適経路を決定することにより、前記音声信号の表現態様とその区間を判定する表現判定手順と、を実行させる音声信号処理プログラムである。
【0012】
本願の発明では、まず基準となるメロディ情報から、表現推移モデルを生成する。入力楽音から、ピッチ、音量、スペクトル変化度などの特徴を逐次求める。それらの値から所定のルールで表現の推移する確率,推移せずに留まる確率を算出する。この確率に基づき、表現推移モデルにおいて、もっとも確率の高い表現推移経路を選択する。そして表現の推移の位置を確定し、さらに各表現における特徴的な傾向をラベル付けする。とくに,確定した区間の確率計算結果を次々捨てるデータ構造をとることでストリーム処理を実現する。
【発明の効果】
【0013】
これにより、この発明によれば、前後の状態を観測しつつ、各区間で最も確率の高い状態判定を行うことが可能になる。
【発明を実施するための最良の形態】
【0014】
≪実施形態の概要≫
図面を参照してこの発明の実施形態である音声信号処理装置を適用したカラオケ装置について説明する。このカラオケ装置では、カラオケ曲を歌唱した歌唱音声信号(楽音信号)を入力し、この楽音信号からビブラートやしゃくりなどの表現態様(表現タイプ)を検出するものである。
【0015】
この実施形態では、複数の表現態様を的確に検出するために、以下のような手順を用いている。複数の表現態様をそれぞれ1つの状態としてモデル化し、隠れマルコフモデル(HMM)である表現推移モデルを構成する。図1は、この表現推移モデルを示す図である。同図に示すように基準メロディデータとして示した音符Fを1つの観測区間とした場合には、当該観測区間に対応する表現態様(状態)は7つ検出される(i.,e, silence, attack, sustain, vibrato,release, silence,transition)。しかし、同図では、各音符毎に連続して表現態様が検出されるため、12の表現態様(状態)が検出されている。つまり、音符FとEの間にあるsilenceとtransitionは、音符FとEで共通に表されている。
【0016】
図2は、各状態を縦方向に配列し、横方向にフレームを時系列に配列した表現推移モデルにおける状態推移の一例を示す図である。この図では各状態(各表現態様)の持続確率をコスト確率Pcost(n) として表し、各状態のコスト確率の積(対数和)が最も大きくなる経路を決定する。
【0017】
コスト確率は、特定のフレームから後続の特定のフレームまでの各フレームに含まれる特徴パラメータに表現態様判定ルールをあてはめて求める。このコスト確率の計算を、各状態において、開始フレームから終了フレームまでの全てのフレームの組み合わせについて求め、このコスト確率群のなかから最も積が大きくなる経路を選択すればよい。
【0018】
ただし、この実施形態では、Viterbiアルゴリズムを用いて最適経路を探索するため、開始から終了フレームまでの全てのフレームの組み合わせについてコスト確率を求める必要はない。
【0019】
≪本発明を適用したカラオケ装置の構成≫
図3は、同カラオケ装置1の構成を概略的に示すブロック図である。カラオケ装置1は、歌唱者の歌唱音声を集音するためのマイクロホン2およびカラオケ演奏の楽曲を放音するためのスピーカ3を接続している。
【0020】
そして、カラオケ装置1は、カラオケ楽曲を再生するための自動演奏部11、マイクロホン2から入力された歌唱音声信号をデジタル化するAD(Analog/Digital)コンバータ12、および、デジタル化された歌唱音声信号(歌唱音声データ)から種々の表現態様を検出するための各種機能部であるFFT処理部13、特徴パラメータ取得部14、特徴パラメータバッファ15、ルール記憶部16、リファレンスバッファ17、表現判定部18を備えている。
【0021】
自動演奏部11は、カラオケ楽曲データを記憶する記憶部や、このカラオケ楽曲データを演奏するシーケンサ,音源等を備えており、ユーザの操作を受け付ける操作部等も有している。自動演奏部11は、マイクロホン2からADコンバータ12を介して入力された歌唱者の歌唱音声信号と自動演奏したカラオケ演奏音とを合成してスピーカ3に入力する。
【0022】
ADコンバータ12は、接続端子12aに接続されたマイク2から、入力されたアナログの歌唱音声信号をデジタルデータに変換してFFT処理部13および特徴パラメータ取得部14に入力する。FFT処理部13では、入力されたサンプリングデータ列である歌唱音声データを25msec毎に分割して高速フーリエ変換(FFT)する。なお、高速フーリエ変換時には、有限の時間窓による誤差スペクトルを抑制するためにサンプリングデータ列に窓関数を掛ける。このFFTによって得られた周波数スペクトルは、FFT処理部13から特徴パラメータ取得部14に入力される。
【0023】
特徴パラメータ取得部14は、例えばCPU等で実現される。特徴パラメータ取得部14には、ADコンバータ12から直接時間領域の信号波形である歌唱音声データが入力されるとともに、FFT処理部13から周波数領域の情報である周波数スペクトルが入力される。特徴パラメータ取得部14は、これら歌唱音声データおよびその周波数スペクトルから、歌唱音声の種々の特徴を表す複数の特徴パラメータを取得する。この特徴パラメータの取得は、上記25msのフレームごとに行われる。
【0024】
図4は、図3に示す特徴パラメータ取得部14の構成をより詳細に示したブロック図である。特徴パラメータ取得部14は、ADコンバータ12から入力された歌唱音声データから時間領域の特徴パラメータを割り出す時間領域情報取得部141およびFFT処理部13から入力された周波数スペクトルから周波数領域の特徴パラメータを割り出す周波数領域情報取得部142を備えている。
【0025】
時間領域情報取得部141は、入力された歌唱音声データをFFT処理部13と同期した25msec間隔のフレームに分割し、各フレームごとに時間領域の特徴パラメータを取得する。時間領域情報取得部141が取得する特徴パラメータは、以下のとおりである。
【0026】
ゼロクロスタイミング:Zero crossing
エネルギー:Energy
エネルギ変化度:Delta energy
持続時間(デユレーション):Duration
ピッチ間隔:Pitch interval
ピッチ傾斜:Pitch slope
ピッチ範囲:Pitch range
ピッチ安定度:Pitch stability
等である。時間領域情報取得部141は、上記パラメータの平均および偏差も必要に応じて取得する。なお、英語表記は、各特徴パラメータの図4における表記を示す。
【0027】
周波数領域情報取得部142は、FFT処理部13から入力された25msの波形の周波数スペクトルから周波数領域の特徴パラメータを取得する。周波数領域情報取得部142が取得する特徴パラメータは、以下のとおりである。
【0028】
低音領域エネルギ:LF energy
高音領域エネルギ:HF energy
フィルタバンク(40要素):Filter bank
ケプストラム(24要素):Cepstrum
スペクトル平滑度:Spectral flatness
フィルタバンク変化度:Delta filter bank
ケプストラム変化度:Delta cepstrum
音色変化度:Delta timbre
ピッチ:Pitch
ピッチ変化度:Delta pitch
ビブラート深さ:Vibrato depth
ビブラート速さ:Vibrato rate
倍音周波数:Harmonic frequency
倍音レベル:Harmonic amplitude
倍音位相:Harmonic phase
倍音安定度:Harmonic stability
純音度:Sinusoidality
等である。なお、英語表記は、各特徴パラメータの図4における表記を表す。
【0029】
上記ピッチは、音声信号の基本周波数から取得され、エネルギーは音声信号の音量の瞬時値から取得される。ビブラートについては、上記エネルギーおよびピッチの時間変動を正弦関数で近似し、当該近似された正弦波の周波数をビブラート速さ(Vibrato rate)として取得し、当該近似された正弦波の最大振幅をビブラート深さ(Vibrato depth)として取得する。
【0030】
音色変化度は、振幅スペクトルの対数を逆フーリエ変換を行なった値(ケプストラム)に関する、フレーム間の変化量を示す値であり、周波数スペクトルの変化を良く表しているパラメータである。この音色変化度を特徴パラメータとして後述する判定に用いることにより、状態の遷移による音の変化をよりよく検出することかできる。とくに、音色変化度の特徴パラメータにより、他の特徴パラメータで検出が困難な「母音」から「母音」への音の変化をよく検出することができる。
【0031】
時間領域情報取得部141および周波数領域情報取得部142で取得された特徴パラメータは、特徴パラメータバッファ15に入力される。
【0032】
特徴パラメータバッファ15は、入力された特徴パラメータに時間情報を付して記憶する。この時間情報は、特徴パラメータの元データであるフレームの時間軸上の位置を表す情報である。特徴パラメータバッファ15は、最新の数秒分の特徴パラメータのみを記憶し、古い特徴パラメータは破棄する。記憶時間は、後述の表現判定部18が繰り返し実行する特徴判定処理を1回実行するのに要する時間程度にすればよい。これにより、特徴パラメータバッファ15は、全曲分の特徴パラメータを記憶する必要がなくなり、メモリ容量を効果的に小さくすることができる。
【0033】
ルール記憶部16は、表現判定部18が行う表現判定処理に用いられる各種ルールを記憶する記憶部である。どのようなルールを記憶しているかは、表現判定部18の説明において述べる。
【0034】
リファレンスバッファ17には、自動演奏部11からカラオケ曲(楽曲データ)の演奏に同期した基準メロディデータが入力される。この基準メロディデータは、歌唱をガイドするためのガイドメロディデータを用いればよい。リファレンスバッファ17は、この基準メロディデータを表現判定部18が繰り返し実行する特徴判定処理を1回実行するのに要する時間程度の量記憶し、古いデータは破棄してゆく。
【0035】
表現判定部18は、基準メロディデータの1音ごとにその音に対する表現態様をモデル化したHMMを構成し、各音のなかで表現態様がどのように推移するかを判定する。表現判定部18は、表現態様の判定が確定するごとに、後述の採点部19にその判定した表現態様に関する表現態様情報を入力する。表現態様情報は、その表現態様の種類を示す情報と、その表現態様の開始タイミングおよび終了タイミングを含む。
【0036】
採点部19には、表現判定部18から表現態様情報が入力されるとともに、自動演奏部11から基準メロディデータが入力される。採点部19は、入力された表現態様情報を基準メロディ上に位置づけることにより、表現態様が歌唱のどの位置で行われたかを判断し、これに基づいて歌唱を採点評価する。採点部19は、この評価を例えば100点を満点として採点し、採点結果を表示部20に入力する。表示部20は、歌唱者に採点結果を表示する。この採点処理は、短い歌唱区間(たとえば10秒程度)ごとにリアルタイムに行ってもよく、カラオケ曲が終了したのち、全体として行ってもよい。また、短い歌唱区間ごとにリアルタイムに行いつつ、歌唱終了ののち総合的に評価するようにしてもよい。
【0037】
≪表現判定処理の説明≫
以下、表現判定部18で実行される表現判定処理について説明する。この表現判定処理においては、基準メロディデータの1音ごとにその音に含まれるHMMの状態としての表現態様(表現タイプ)に加えて、各表現態様のなかでさらに詳細な特徴を表す表現ラベル(詳細特徴)を決定する。この表現判定部18が決定する表現態様と各表現態様の表現ラベル(括弧書きで示す)は以下のとおりである。
【0038】
アタック:Attack
(normal / scoop up / scoop fry)
サスティン:Sustain
(normal, fall down)
ビブラート:Vibrato
(normal)
リリース:Release
(normal,fall down)
トランジション:Transition
(normal, portamento, scoopup/down, staccato)。
【0039】
表現判定部18は、基準メロディデータの個々の音について上記表現態様の推移を判定するための表現推移モデルを生成する。上掲の図1は、この表現推移モデルの例を示す図である。
【0040】
表現判定部18には、あらかじめ、1つの音の中で表現態様の推移が生じる条件が登録されており、この推移の条件に基づいて図1に示すような表現推移モデルを生成する。この条件は、以下のようである。
【0041】
たとえば、「無音(silence) のあとの音は常にアタックで始まる。」、「無音以外の状態からアタックへ移行することはない。」、「フレーズの最後の音すなわち無音の直前の音は、常にリリースで終わる。」、「リリースから無音以外の状態へ移行することはない。」などである。また、連続する2音の間で行われる表現態様の推移は2とおりである。1つは「リリース→無音→アタック」、もう1つは、「トランジション」である。なお、1音の途中には、サスティンと、ビブラートという表現を途中にもつことができる。
【0042】
なお、図1には、2音分の表現推移モデルを記載しているが、表現判定部18は、各判定サイクルにおいて、そのときの観測区間に属する1音または複数音に対応する表現推移モデルを「無音」状態および「トランジション」状態で連結して生成する。
【0043】
表現判定部18は、適当なタイミング毎に表現判定処理を繰り返せばよいが、基準メロディデータにおける音の遷移タイミングに表現判定処理を実行すれば、少なくとも2音にまたがって表現態様の推移を判定することができる。この場合、1回の表現判定処理の観測区間は、前記遷移タイミングの前後1秒ずつの2秒程度とすればよい。
【0044】
同図において、状態の遷移は、左端の無音からスタートし、発音の開始は、必ずアタックである。そして、矢印で示す状態遷移の方向に遷移する。この推移により、アタックで開始した楽音の発音は;
サスティン、ビブラートの一方または両方を経由してリリースで終了する(通常の歌唱)
アタックののち、直接リリースに遷移して終了する(弾けるような歌唱)
アタック、サスティンまたはビブラートからトランジションを経由して次の楽音につながる(レガート,ポルタメント等)
という複数種類の遷移をとることができる。
【0045】
表現判定部18で実行される判定は、1つのフレームまたは複数の連続したフレームについて、そのフレームを含む区間がどの表現態様であるかを求め、および、そのフレームを含む区間がその表現態様の開始タイミングから終了タイミングとして適切か否かの確率(すなわち、区間の長さが適切か否かの確率)を求め、観測区間全体として最も確率の高い表現態様の推移およびその遷移タイミングを決定するという手法で実行される。
【0046】
したがって、判定ルールもフレーム単位で特徴パラメータを評価するのではなく、連続するフレーム列にどのような特徴があれば(どのような傾向を示していれば)、連続するフレーム列がある表現態様として判定される確率が高くなるかを記述したものになっている。確率値は、0.0〜1.0までの間の実数値で表現される。
【0047】
判定ルールの設定には、当該判定に必要とされる測定の誤差がしばしばガウス分布を成すことから、ガウス分布
gaussian(mean,var) = exp(-0.5* ((mean - x)/var) ^ 2)
を使うことが合理的である。あるいは、主に計算量の節約の観点から、たとえば折線(近似直線)で判定ルールを表現するようにしても良く、ファジー論理の考え方で判定ルールを表現するように構成しても良い。さらにまた、ガウス分布と折線(近似直線)とファジー論理を区分的に組み合わせるように構成してもよい。
【0048】
さらに、複数のルールで求められる確率を組み合わせて最終的な確率を求めるようにしてもよい。その方法として、たとえば、各ルールで得られた確率の積をとるようにする。
【0049】
以下に記載する判定ルールは、人が常識や経験則に基づいて設定したヒューリスティックルールであるが、機械学習によるものであってもよい。
【0050】
● 無音(Silence)に関する判定ルール
・全フレーム中の有音フレームの割合に応じて確率を下げる。
【0051】
これは、有音フレームの割合に対して平均値が0であるガウス分布などの確率分布を規定し、入力音声から測定された有音フレームの割合に応じた確率を求めるという意味である。
【0052】
最初のフレームから10フレーム(10フレームなければ全フレームの前半分のフレーム) について有音フレームが3以上だったら確率を下げる。これは、最初のフレームから10フレームに含まれる有音フレーム数に対して平均値が3であるガウス分布等の確率分布を規定し、有音フレーム数の測定値に基づいて確率を求めるという意味である。
【0053】
最後のフレームから10フレーム(10フレームなければ全フレームの後半分のフレーム)について有音フレームが3以上だったら確率を下げる。
【0054】
これは、最後のフレームから10フレームに含まれる有音フレーム数に対して平均値が3であるガウン分布等の確率分布を規定し、有音フレーム数の測定値に基づいて確率を求めるという意味である。
【0055】
上記3つの確率の乗算値を算出し、その算出結果を無音態様のコスト確率とする。
【0056】
● アタックに関する判定ルール
・持続時間
測定対象の有音区間の長さが、あらかじめ設定した閾値より短い場合は、確率は低いとする。
【0057】
たとえば、上記閾値として6フレームを設定し、有音区間の長さがそれより大きい場合は1.0、小さい場合はgaussian(6, 1.8)として確率を定めるように計算する。
【0058】
・ピッチ
判定区間の最後のフレームにおいて、ピッチが存在していること。
【0059】
この場合、確率分布のとる値は、「1」または「0」のいずれかになる。つまり、この条件を満たせば、確率は1となる。
【0060】
・エネルギー
判定区間の先頭部分で、エネルギーが低いこと。
【0061】
判定区間の先頭部分で、エネルギー増分が大きいこと。
【0062】
判定区間の末尾部分で、エネルギー増分が小さいこと。
【0063】
これらは、エネルギーの値に応じたガウス分布等の確率分布を規定して、測定値に応じた確率を求めるという意味である。各条件を満たすほど、各確率は大きくなる。
【0064】
なお、先頭部分は先頭の数フレームを意味し、末尾部分は末尾の数フレームを意味する。以下同様の意味である。
【0065】
・ピッチ変化度
判定区間の末尾部分で、ピッチ変動は小さいこと。
【0066】
これは、ピッチ変化度の値に応じたガウス分布等の確率分布を規定して、測定値に応じた確率を求めるという意味である。この条件を満たすほど、確率は大きくなる。
【0067】
・音色変化度
区間の先頭部分で、音色変化度が大きいこと。
【0068】
これは、音色変化度の値に応じたガウス分布等の確率分布を規定して、測定値に応じた確率を求めるという意味である。この条件を満たすほど、確率は大きくなる。
【0069】
・ビブラート
判定区間にビブラートが存在しないこと。
【0070】
この場合、確率分布のとる値は、「1」または「0」のいずれかになる。つまり、この条件を満たせば、確率は1となる。
【0071】
以上の持続時間、ピッチ、エネルギー、ピッチ変化度、音色変化度、および、ビブラートに関して算出された複数の確率の乗算値を算出し、その算出結果をアタック態様のコスト確率とする。
【0072】
◆ アタックの表現ラベル付けルール(normal/scoop-fry/scoop-up)
判定区間の先頭部分でピッチ変動が小さい場合は、アタックの表現態様にnormalとラベルをつける。
【0073】
判定区間の先頭部分でピッチ変動が大きい場合は以下のようにアタックの表現態様にラベルをつける;
判定区間の先頭部分で有音フレームの数が少なければ、アタックの表現態様にSCOOP-FRY(非常に弱い発声からのしゃくり)とラベルをつける。
【0074】
判定区間の先頭部分で有音フレームの数が多ければ、アタックの表現態様にSCOOP-UP(通常の発声でのしゃくり)とラベルをつける。
【0075】
● リリースに関する判定ルール
・持続時間
判定対象の有音区間の長さが、あらかじめ設定した閾値より短い場合は、確率は低いとする。
【0076】
たとえば、上記閾値として4フレームを設定し、区間の長さがそれより大きい場合は1.0、小さい場合はgaussian(4,1.2)として確率を定める。
【0077】
また一般に、有音区間が長くなるとリリースであると判定する確率は低い。
【0078】
これを表現するのに、たとえば、gaussian(0, c)(cは、2秒にあたるフレーム数を与える、たとえば毎秒40フレーム処理の場合80)を利用する。
【0079】
・ピッチ
判定区間のさらに前、すなわち過去2フレームに、ピッチがあること。この場合、確率分布のとる値は、「1」または「0」となる。これに対して、過去2フレームにピッチがない場合は確率は0となる。
【0080】
・エネルギー
判定区間の末尾部分で、エネルギーが低いこと。
【0081】
判定区間の末尾部分で、エネルギーが大幅に減少していること。
【0082】
判定区間の先頭部分で、エネルギーの増大は小さいこと。
【0083】
判定区間中、エネルギーが増大することは少ないこと。
【0084】
これらは、エネルギーの値に応じたガウス分布等の確率分布を規定して、測定値に応じた確率を求めるという意味である。この条件を満たすほど、確率は大きくなる。
【0085】
・ピッチ変化度
判定区間の先頭部分で、ピッチの変化度は小さいこと。
【0086】
これは、ピッチ変化度の値に応じたガウス分布等の確率分布を規定して、測定値に応じた確率を求めるという意味である。この条件を満たすほど、確率は大きくなる。
【0087】
・音色変化度
判定区間の末尾部分で、音色変化度が大きいこと。
【0088】
これは、音色変化度の値に応じたガウス分布等の確率分布を規定して、測定値に応じた確率を求めるという意味である。この条件を満たすほど、確率は大きくなる。
【0089】
・倍音安定度
判定区間の先頭部分では、倍音安定度は低いこと。
【0090】
これは、倍音安定度の値に応じたガウス分布等の確率分布を規定して、測定値に応じた確率を求めるという意味である。この条件を満たすほど、確率は大きくなる。
【0091】
・ビブラート
判定区間にビブラートは少ないこと(ビブラートの速度が遅くおよびビブラートの深さが浅いこと)。
【0092】
これは、ビブラート(ビブラートの速度およびビブラートの深さ)の値に応じたガウス分布等の確率分布を規定して、測定値に応じた確率を求めるという意味である。この条件を満たすほど、確率は大きくなる。
【0093】
◆ リリースの表現ラベル付けルール(fall-down)
・リリースの表現ラベルがfall-downかどうか判定するため,あらたにfall-downとラベル付けする確率を計算する。
【0094】
判定区間の長さが、設定した最短値より短ければ、リリースの表現ラベルをfall-downではなくnormalと確定する。
【0095】
判定区間の長さが、設定した最短値よりも長い場合つぎの判定に進む。
【0096】
判定区間の前半部分における最高ピッチと判定区間の後半部分における最低ピッチとの差が小さい場合、リリースの表現ラベルがfall-downである可能性は低いので、fall-downとラベル付けする確率を下げる。
【0097】
当該区間の先頭(先頭フレーム)から、もっとも末尾側の有音フレームまでについて、ピッチの近似直線をもとめた場合、その傾きが負であればリリースの表現ラベルがfall-downである可能性が高いので、fall-downとラベル付けする確率を上げる。
【0098】
以上の結果、fall-downとラベル付けする確率が、設定した値より高ければ、当該区間にfall-downとラベルをつけて終わる。一方、fall-downとラベル付けする確率が、設定した値より低いければ、当該区間にnormalとラベルをつけて終わる。
【0099】
● トランジションに関する判定ルール
・持続時間
判定対象の有音区間の長さが、設定した最短値より長いこと。
【0100】
この場合、確率分布のとる値は、「1」または「0」のいずれかになる。つまり、この条件を満たせば、確率は1となる。
【0101】
・スタッカート
判定区間の前半半分において無音とみなせる部分が存在すれば、スタッカートとみなす。スタッカートは、(release-silence-attackではなく)トランジションタイプとしてあつかう。
【0102】
・ピッチ
判定区間の先頭からさらに過去2つのフレームはピッチありであること。
【0103】
判定区間の先頭フレームにピッチがあること。
【0104】
判定区間の末尾のフレームはピッチありであること。
【0105】
判定区間の末尾からさらに後続の(将来)2つのフレームが参照できる場合には、それらについてピッチがあること。
【0106】
これらの場合、確率分布のとる値は、「1」または「0」のいずれかになる。つまり、この条件を満たせば、確率は1となる。
【0107】
・エネルギー
判定区間の先頭部分と末尾部分のいずれにも、設定した最小値より大きいエネルギーがあること。
【0108】
・ビブラート
判定区間にビブラートは少ないこと(ビブラートの速度が遅くおよびビブラートの深さが浅いこと)。
【0109】
これは、ビブラート(ビブラートの速度およびビブラートの深さ)の値に応じたガウス分布等の確率分布を規定して、測定値に応じた確率を求めるという意味である。この条件を満たすほど、確率は大きくなる。
【0110】
・倍音安定度
判定区間の長さが設定した最短値より長く、かつ対象区間の先頭部分において安定度が高い場合は、確率を下げる。
【0111】
判定区間の長さが設定した最短値より長く、かつ対象区間の末尾部分において安定度が高い場合は、確率を下げる。
【0112】
安定度が高い状態が長く続き、かつ区間内にスタッカートがないときは、確率を下げる。
【0113】
・音程
判定区間内に存在すると想定される、遷移の前の音と遷移の後の音について、平均ピッチをそれぞれ求めてその幅を算出する。
【0114】
その値と、基準メロディ情報での対応する2音の音程とを比べ、両者が近いほどよい。
【0115】
・ピッチ変化度
判定区間の両端部分において、ピッチ変化度は低いこと。
【0116】
これは、ピッチ変化度の値に応じたガウス分布等の確率分布を規定して、測定値に応じた確率を求めるという意味である。この条件を満たすほど、確率は大きくなる。
【0117】
以上の持続時間、ピッチ、エネルギー、ビブラート、倍音安定度、音程およびピッチ変化度に関して算出された複数の確率の乗算値を算出し、その算出結果をトランジション態様のコスト確率とする。
【0118】
◆ トランジションのラベル付け計算と最終結果計算
・scoop-up (しゃくりあげ)の判定は次のように確率を別途計算して行なう。
【0119】
遷移の後の音の長さが、設定した最小値より短いか、または長くてかつ、遷移の後の音の、始まりの部分に、ピッチが安定している区間が存在すること。
【0120】
判定区間全体の平均ピッチと、末尾部分でのピッチとの差が半音以上あること。
【0121】
遷移の後の音の、安定するまでの部分には、60以上ピッチずれがないこと。
【0122】
判定区間の、末尾部分は、安定度が低いこと。
【0123】
判定区間の末尾部分には、ビブラートが少ないこと。
【0124】
各条件を満たすほど、各確率は大きくなる。算出された複数の確率の乗算値を算出し、その算出結果が、設定した最小値より高くなれば、トランジションの表現ラベルにscoop-upとラベル付けする。
【0125】
・ポルタメントの判定は次のように確率を別途計算して行なう。
【0126】
遷移の前の音の長さが、設定した最小値より長いこと。
【0127】
遷移の後の音の部分は安定していること。
【0128】
遷移の前の音の部分は、ピッチ変化度が大きいこと。
【0129】
遷移の前の音の部分で、ピッチの変動幅が1半音以上あること。
【0130】
遷移の前の音の部分で、無声フレームがあったら確率を下げること。
【0131】
以上の判定の後、scoop-upやportamentoに該当せず、normalに該当する場合には;
ピッチ変化が、設定した正の値より大きくかつスタッカートが存在していれば、トランジションの表現ラベルにstaccato-normal-upとラベル付けする。
【0132】
そうでなければ、トランジションの表現ラベルにnormal-upとラベル付けする。
【0133】
ピッチ変化が、設定した負の値より小さくかつスタッカートが存在していれば、トランジションの表現ラベルにstaccato-normal-downとラベル付けする。
【0134】
そうでなければ、トランジションの表現ラベルにnormal-downとラベル付けする。
【0135】
● サスティンに関する判定ルール
・持続時間
判定対象となる区間の長さが、あらかじめ設定した閾値より短い場合は、確率は低いとする。
【0136】
これは、持続時間の値に応じたガウス分布等の確率分布を規定して、測定値に応じた確率を求めるという意味である。この条件を満たすほど、確率は大きくなる。
【0137】
・ピッチ
判定区間の最初のフレームにピッチがあること。
【0138】
判定区間の最後のフレームにピッチがあること。
【0139】
判定区間の末尾からさらに後続の(将来)2つのフレームがもし参照できるなら、それらについてピッチがあること。
【0140】
・ピッチ変化度
対象区間の先頭において、大きなピッチ変化はないこと。
【0141】
・エネルギー
設定した最小の値より大きい値であること。
【0142】
エネルギーの値が安定していること。
【0143】
これは、エネルギーの値に応じたガウス分布等の確率分布を規定して、測定値に応じた確率を求めるという意味である。この条件を満たすほど、確率は大きくなる。
【0144】
・音色変化度
音色変化度が、あらかじめ設定した範囲の中にあること。
【0145】
これは、音色変化度の値に応じたガウス分布等の確率分布を規定して、測定値に応じた確率を求めるという意味である。この条件を満たすほど、確率は大きくなる。
【0146】
・ビブラート
判定区間にビブラートが少ないこと。
【0147】
この場合、確率分布のとる値は、「1」または「0」のいずれかになる。つまり、この条件を満たせば、確率は1となる。
【0148】
◆ サスティンの表現ラベル付けルール
・ラベルはnormal のみであるが、そのnormalらしさの確率は次のルールで計算して最終結果に反映する。
【0149】
ピッチは安定していること。
【0150】
判定区間全体でのピッチの近似直線の傾きが0に近いこと。
【0151】
●ビブラートに関する判定ルール
・持続時間
判定対象となる有音区間の長さが、あらかじめ設定した閾値より短い場合は、確率は低いとする。
【0152】
これは、持続時間の値に応じたガウス分布等の確率分布を規定して、測定値に応じた確率を求めるという意味である。この条件を満たすほど、確率は大きくなる。
【0153】
・ピッチ
判定区間の最初のフレームにピッチがあること。
【0154】
判定区間の最後のフレームにピッチがあること。
【0155】
判定区間の末尾からさらに後続の(将来)2つのフレームが参照できる場合には、それらについてピッチがあること。
【0156】
これらの場合、確率分布のとる値は、「1」または「0」のいずれかになる。つまり、この条件を満たせば、確率は1となる。
【0157】
・エネルギー
設定した最小の値より大きい値であること。
【0158】
これは、エネルギーの値に応じたガウス分布等の確率分布を規定して、測定値に応じた確率を求めるという意味である。この条件を満たすほど、確率は大きくなる。
【0159】
・音色変化度
音色の変化度が、あらかじめ設定した範囲の中にあること。
【0160】
この場合、確率分布のとる値は、「1」または「0」のいずれかになる。つまり、この条件を満たせば、確率は1となる。
【0161】
・ピッチ変化度
判定区間の中でもとめたピッチ変化度の最大、最小について、
最大値が、設定した下限値より大きいこと。
【0162】
最小値が、設定した上限値より小さいこと。
【0163】
これらの場合、確率分布のとる値は、「1」または「0」のいずれかになる。つまり、この条件を満たせば、確率は1となる。
【0164】
・ビブラート
判定区間にビブラートが多いこと。
【0165】
これは、ビブラートの値に応じたガウス分布等の確率分布を規定して、測定値に応じた確率を求めるという意味である。この条件を満たすほど、確率は大きくなる。
【0166】
以上の持続時間、ピッチ、エネルギー、音色変化度、ピッチ変化度およびビブラートに関して算出された複数の確率の乗算値を算出し、その算出結果をビブラート態様のコスト確率とする。
【0167】
なお、確率分布はガウス分布に限られるものではなく、直線近似したガウス分布でもよい。
【0168】
次に、図5,図6を参照して表現判定および最適ルート検索の手法について説明する。
【0169】
図6は、ラティス(lattice)図上にViterbiアルゴリズムで検索した表現推移の最適ルートを記載した図である。各節点(フレーム)での確率は、演奏の冒頭から始まってその節点に到達する最善の経路を与える。ここで、確率として二通りのものを考える。ひとつは、TransitionProbability (遷移確率) P trans, もうひとつはCost Probability(コスト確率)Pcostである。この実施形態では、計算を容易化するため、全ての節点において全ての分岐に対する遷移確率を全て1とする。したがって、全体の確率は。コスト確率だけで決まることになる。
【0170】
遷移確率が全て1であるため、たとえば図2に示した経路の確率は;
P = Pcost(1) Pcost(2) Pcost(3)Pcost(4)
で与えられる。
【0171】
コスト確率は、各節点(フレーム)においてそのフレームを終了フレームとして、それ以前の0〜n個のフレーム列である状態が持続する場合の確率として、n個与えられる。コスト確率は、前記すべてのルールの確率の積で与えられる。
【0172】
観測区間全体の分析の後、Viterbi行列のバックトラック法を実行して、もっとも確率の高い経路を判定する。
【0173】
図5は、無音(silence), アタック(attack),トランジション(transition) , ビブラート(vibrato), リリース(release), 無音(silence)という表現推移の経路が、もっとも確率の高いものとして選ばれている例を示す図である。なお、図6は、上記のうちトランジションまでの様子をViterbi行列で示したものである。
【0174】
このようにして、表現態様の経路が確定すると、つぎに、それぞれの表現態様について、もっとも可能性の高いラベルの判定を行なう。この判定も、上述したヒューリスティックルールに基づいて計算される。
【0175】
図5の上段に、最終的な表現タイプの開始と終了の正確な時刻位置を示す。そしてアタックはscoop up (しゃくり)、遷移はnormal、ビブラートは regular, リリースは fall down とそれぞれラベルがつけられている。
【0176】
上記の表現判定処理は、2秒程度の観測区間について行ってもよいが、曲の終了後、全体にわたって判定してもよい。
【0177】
≪リアルタイム化の工夫≫
表現判定処理については、上述したが、これを2秒程度ごとにリアルタイムに、とくに、歌唱音声の(リファレンスとずれた)実際の音の遷移点を検出するスコアマッチングを行いながら表現を判定するためには、さらに以下のような動作をすることが好ましい。
【0178】
すなわち、ここでは、「スコアマッチングによってある音の始まり(または終了)が確定するたびに、終了した音に関して、もっとも確率の高い表現推移の経路を確定する。」という処理を行う。
【0179】
図7,図8を参照してこの処理手順について説明する。
【0180】
図7において、基準メロディの1番目の音の始まった時刻は既知であるが、その持続時間(終了点)は未確定であり、1番目の音区間は未確定である。ただし、この音における最初の表現態様のみアタック(Attack)であると判定することができる。これは、フレーズの最初の音すなわち無音の直後の音であるためである。
【0181】
図8は、スコアマッチングの結果、基準メロディにおける2番目の音の始まりを確定した時点の状況を示している。この状態で、1番目の音の範囲内で、最も確率の高い経路を決定する。その結果、アタック(attack:scoop-up),ビブラート(vibrato:normal), トランジション(transition)という経路(表現態様)が確定する。
【0182】
ただし、Transitionの持続時間とラベルはまだ確定できない。これは、さらに次の音の中で終了点が決定されるからである。よって、スコアマッチングによって次の音の持続時間が確定してから、transitionの持続時間(終了点)とラベルの判定を行う。
【0183】
このように、2秒程度の観測区間内で全ての区間の表現態様を確定するのではなく、スコアマッチングによって実際の持続時間が確定した音について順次、表現態様を判定してゆくことにより、より高い精度でリアルタイムな表現態様の判定を行うことができる。
【0184】
以上詳細に説明したように、本実施の形態によれば、まず基準となるメロディ情報から、表現推移モデルを生成する。入力楽音から、ピッチ,音量,スペクトル変化度などの特徴パラメータを逐次検出する。それらの値から所定のルールで表現の推移する確率,推移せずに留まる確率を算出する。この確率に基づき、表現推移モデルにおいて、最も確率の高い表現推移経路を選択する。そして表現の推移の位置(区間の長さ)を確定し、さらに各表現における特徴的な傾向をラベル付けする。これにより、入力された楽音信号から歌唱または演奏の表現態様および表現推移をより正確に検出することができる。これを、たとえばカラオケ装置にすれば、歌唱の採点をより正確に行うことができる。
【0185】
また、確定した区間の確率計算結果を次々捨てるデータ構造をとることで、ストリーム処理を実現する。これにより、入力された音声信号から歌唱または演奏の表現態様および表現推移をより正確にリアルタイムで検出することができる。
【0186】
なお、この実施形態は、音声信号処理装置をカラオケ装置1に適用した例を示したが、本発明の適用はこれに限定されない。入力された演奏音声の表現を判定する装置であればどのような装置に適用することも可能である。また、入力する音声は歌唱に限定されず、楽器の演奏音であってもよい。
【図面の簡単な説明】
【0187】
【図1】本発明による表現判定処理に用いる基準メロディデータと表現推移モデルとを示す図である。
【図2】各状態を縦方向に配列し、横方向にフレームを時系列に配列した表現推移モデルにおける状態推移の一例を示す図である。
【図3】音声信号処理装置としてのカラオケ装置の構成を概略的に示すブロック図である。
【図4】同カラオケ装置の特徴パラメータ取得部の構成をより詳細に示すブロック図である。
【図5】同カラオケ装置が実行する表現判定処理を表現推移モデルで説明した図である。
【図6】前記表現判定処理を説明する図である。
【図7】前記表現判定処理をリアルタイムで行う場合の処理を説明する図である。
【図8】前記表現判定処理をリアルタイムで行う場合の処理を説明する図である。
【符号の説明】
【0188】
1−カラオケ装置
12a−接続端子
13−FFT処理部
14−特徴パラメータ取得部
15−特徴パラメータバッファ
17−リファレンスバッファ
18−表現判定部




 

 


     NEWS
会社検索順位 特許の出願数の順位が発表

URL変更
平成6年
平成7年
平成8年
平成9年
平成10年
平成11年
平成12年
平成13年


 
   お問い合わせ info@patentjp.com patentjp.com   Copyright 2007-2013