説明

和音同定方法、和音同定装置、及び学習装置

【課題】 煩雑な作業を行うことなく、和音をより高精度に同定するための技術を提供する。
【解決手段】 ベクトル記憶装置101は、グループ分けして入力される、1楽音の特徴を表す学習ベクトル100を記憶する。超平面計算装置102は、グループ毎に、それに属する学習ベクトル100を用いて超平面を計算する。その超平面を表すパラメータは対応する記憶装置111〜114の何れかに記憶される。評価装置121〜124は、対応する記憶装置111〜114のパラメータを参照し、和音を表す判定対象ベクトル150と対応する超平面との正負を含めた距離を評価値として計算する。判定装置130は、その評価値から、判定対象ベクトル150が表す和音を構成する楽音の属するグループを判定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の楽音から構成される和音を同定するための技術に関する。
【背景技術】
【0002】
図6は、従来の和音同定装置の構成を示す図である。その図6を参照して、従来の和音同定装置について具体的に説明する。その同定装置は、図6に示すように、判定対象ベクトル600が入力されるセレクタ601、複数のフィルター621〜624、比較選択器630、レジスタ632、及び記憶装置640を備えた構成となっている。
【0003】
判定対象ベクトル600は、例えば和音の波形信号をサンプリングして得られた波形データである。セレクタ601は、その判定対象ベクトル600と、レジスタ632から出力されるベクトル634とを入力し、そのうちの一つを各フィルター621〜624に出力する。
【0004】
セレクタ601が選択するベクトルの切り換えや、ベクトル634の更新により、この和音同定装置はサイクル的な動作を行うようになっている。そのサイクル的な動作を通して、和音を構成する楽音(周波数)は順次、判定される。和音同定の開始時、つまり第1サイクルは、セレクタ601により判定対象ベクトル600を選択させる。
【0005】
各フィルター621〜624は、それぞれ特定の周波数F1〜F12に対応するものである。即ち、たとえばフィルター621は、セレクタ621から入力したベクトルのうち、周波数F1、及びその高調波となる周波数(=F1×k:ただしkは2以上の整数)に対応する信号成分のみを除去するように機能する。従ってフィルター621から出力される信号は、入力したベクトルから周波数F1及びその高調波となる周波数の信号成分を除去したパワー・スペクトラムとなる。フィルターとしては、図6には計4個のフィルター621〜624のみ示しているが、実際にはより多く搭載されている。
【0006】
比較選択器630は、各フィルター621〜624から入力した信号(パワー・スペクトラム)のなかで最小のものを選択し、それをベクトル631としてレジスタ632に出力する。それにより、たとえば最小の信号がフィルター621から入力したものであった場合、ベクトル631としては入力ベクトル(和音同定の開始時は判定対象ベクトル600)から周波数F1の信号成分が除去されたものが選択・出力されることになる。また、比較選択器630は、信号を選択したフィルター、つまり最も信号成分が大きい周波数の情報(周波数情報)を信号635として記憶装置640に出力する。それにより、記憶装置640はその信号635を保存する。以降、信号635は「周波数情報」と呼ぶことにする。
【0007】
周波数情報635の保存により、際1サイクルの動作が終了する。次の第2サイクルでは、セレクタ601にベクトル634を選択させて、同様の処理が行われる。
【0008】
この第2サイクルで選択されるベクトル634、つまりレジスタ632が保存しているベクトル631は、最大の周波数成分が除去された判定対象ベクトル600である。このため比較選択器630は、最大の周波数成分に加えて、2番目に大きい周波数成分を除去した判定対象ベクトル600をベクトル631としてレジスタ632に出力することになる。周波数情報635としては、2番目に信号成分の大きい周波数を示す周波数情報を出力することになる。
【0009】
このようにして、信号成分の大きい方から順次、周波数(楽音)を判定していくことにより、和音を同定する。その判定は、比較選択器630が選択した信号のレベルが閾値として定めた値以下となるまで行う。そのような判定を行うことにより、和音を構成する楽音数が特定される。
【特許文献1】特開2004−341026号公報
【発明の開示】
【発明が解決しようとする課題】
【0010】
図6に示す従来の和音同定装置では、上述したように、和音を構成する楽音毎にその周波数を判定する形で和音を同定するようになっている。しかし、そのような方法では、同定の精度が低いのが実状である。その理由は、楽音には高調波が存在し、或る楽音の高調波が別の楽音の基本波と重なることがあるからである。特に和音では、それを構成する楽音が協和音程の関係になっていることが多いことから、そのような重なりが発生する場合が多い。
【0011】
図7は、楽音を構成する周波数成分の例を説明する図である。横軸は周波数、縦軸はパワーをそれぞれ示している。701は基本波(基本周波数)の信号成分、702は二次高調波(基本周波数の2倍の周波数)の信号成分、703は三次高調波(基本周波数の3倍の周波数)の信号成分をそれぞれ表している。また、711は701より1オクターブ高い基本波の信号成分を表している。それにより701の基本波が「ド」の音高であれば、711の基本波は「ソ」の音高に相当する。
【0012】
図7に示すように、楽音には高調波が存在する。各高調波をそれぞれ1楽音として判定しないために、図6に示す各フィルター621〜624では高調波に相当する信号成分を併せて除去するようにしている。しかし、そのように高調波に相当する信号成分を除去する場合、図7に示す例では、基本波の信号成分701と共に、別の基本波の信号成分711も除去してしまい、別の基本波の信号成分711は存在しなかったことになる。その結果、判定すべき楽音を判定できなくなって、和音を同定する精度の低下をまねくことになる。図8は、従来の和音同定装置による和音の同定結果を示す図である。図中の最下部に誤判定結果を示し、その上部には櫛形フィルターによる楽音の判定結果を示している。
【0013】
和音の同定は、それを構成する楽音を個別に判定しない形でも行うことができる。つまり学習により同定させることもできる。しかし、数個の楽音から構成される和音は音高の組み合わせ、つまり根音の音高まで考えればその数は非常に多い。このため、学習には煩雑な作業を行わなければならず、非常に長い時間が必要となっている。このことを考慮すれば、煩雑な作業を回避しつつ、和音の同定精度を向上させることが重要と考えられる。
【0014】
本発明は、煩雑な作業を行うことなく、和音をより高精度に同定するための技術を提供することを目的とする。
【課題を解決するための手段】
【0015】
本発明の和音同定方法は、複数の楽音から構成される和音をコンピュータにより同定するための方法であって、和音を構成可能な楽音別に、該楽音を表す楽音特徴情報を用いて超平面を計算する学習工程と、超平面毎に、同定対象となる和音を表す和音特徴情報を用いて該和音との距離を計算し、該計算結果を用いて該和音を構成する楽音を判定する判定工程と、を有する。
【0016】
ここで「和音を構成可能な楽音別」とは、同じ和音を構成する楽音が同じ超平面に2個以上、重ならないようにする、という意味である。言い換えれば、同じ和音を構成する楽音は互いに異なる超平面が対応する、という意味である。このことから、超平面に対応する楽音は複数個であっても良い。
【0017】
本発明の和音同定装置は、複数の楽音から構成される和音を同定することを前提とし、和音を構成可能な楽音別に、該楽音を表す楽音特徴情報を用いて計算された超平面を表す超平面情報を記憶した情報記憶手段と、同定対象となる和音を表す和音特徴情報を入力する情報入力手段と、情報記憶手段に記憶されている超平面情報を用いて、超平面毎に、和音特徴情報が表す和音との距離を計算する評価手段と、評価手段が超平面毎に計算した距離から、和音を構成する楽音を判定する楽音判定手段と、を具備する。
【0018】
本発明の学習装置は、複数の楽音から構成される和音を同定するための同定用情報を学習により生成することを前提とし、和音を構成可能な楽音別に、該楽音を表す楽音特徴情報を入力する情報入力手段と、情報入力手段が入力した楽音特徴情報が表す楽音別に、該楽音特徴情報を用いて超平面を同定用情報として計算する超平面計算手段と、を具備する。
【発明の効果】
【0019】
本発明では、和音を構成可能な楽音別に、該楽音を表す楽音特徴情報を用いて計算された超平面を和音同定に用いる。超平面毎に、同定対象となる和音を表す和音特徴情報を用いてその和音との距離を計算し、その計算結果を用いてその和音を構成する楽音を判定する。
【0020】
楽音特徴情報を用いて計算される超平面は、特定の楽音とそれ以外の楽音とを区別するための指標となる。和音の同定では、和音を構成する楽音により、超平面との距離や向き(正負)に特有の再現性のある傾向が実験により確認された。このため、超平面を和音同定に用いることにより、その同定をより高精度に行うことができる。超平面の計算のために和音(の特徴情報)を用いる必要はないため、和音による学習を行う場合と比較して、その学習はより容易、且つ迅速に行うことができる。
【発明を実施するための最良の形態】
【0021】
以下、本発明の実施の形態について、図面を参照しながら詳細に説明する。
【0022】
図1は、本実施形態による和音同定装置の構成を示す図である。
【0023】
その和音同定装置は、1楽音の特徴を表す学習ベクトル100を用いて学習を行い、和音を同定するものである。図1に示すように、学習ベクトル100を記憶するベクトル記憶装置101、学習ベクトル100を分けるグループ毎に超平面を計算する超平面計算装置102と、グループ毎に用意された、対応する超平面を表すパラメータを記憶する記憶装置111〜114と、グループ毎に用意された、対応する超平面と判定対象ベクトル150との距離を評価値として計算する評価装置121〜124と、各評価装置121〜124から評価値を入力し、和音の同定を行う判定装置130と、を備えている。
【0024】
上記したように本実施形態では、和音の同定に1楽音の特徴を表す学習ベクトル100を用いる。その学習ベクトル100は、図2に示すように、グループ別にベクトル記憶装置101に記憶される。そのように記憶させるために、例えば学習ベクトル100はそれが属するグループを示すグループ情報と共にベクトル記憶装置101に出力される。
【0025】
本実施形態では、和音を構成する楽音が属するグループの特定により、和音を構成する楽音を判定するようにしている。このことからグルーピングは、同一の和音で2個以上の楽音が同じグループに属することがないように行われる。言い換えれば、或る和音を構成する楽音は互いに異なるグループに属するように行われる。それにより図2中の「A1」「B1」及び「C1」は互いに異なる音程(音高)の楽音(の学習ベクトル100)を表している。グループを表す学習ベクトル100については以降、例えば「<J,A1>」「<J,A2>」「<K,B1>」のようにグループ情報と学習ベクトル100の種類を示す情報(楽音情報)を用いた表記法を採用する。
【0026】
学習ベクトル100は、判定対象ベクトル150と同じ多次元のベクトルである。具体的には例えば周波数別に信号成分の大きさ(パワー)を示すパワー・スペクトラムである。しかしここでは理解を容易とするために、各ベクトル100及び150は2次元を想定する。2次元では、超平面は直線となる。学習ベクトル100や判定対象ベクトル150の生成自体は周知の技術を用いて行われる。
【0027】
同じグループに属する楽音数は、考えられる和音の数(種類の他に根音の音高を考慮した数)と比べて非常に少ない。例えば5個の楽音のなかから3個の楽音で構成される和音のみに着目してもその数は10個(種類)である。このことから、学習ベクトル100として1楽音のものを採用することにより、学習工程における手間は大幅に軽減し、必要な時間もより短くなる。
【0028】
グループAに対応する超平面の計算は式(1)のDAを最大にするPとQを求めることによってできる。
【0029】
【数1】

【0030】
ただし、AiはグループAに属するベクトル、ZiはグループAに属さないすべてのベクトルである。またPはAiと同次元のベクトル、Qはスカラーである。
【0031】
他のグループでも同様に超平面が計算される。各グループに対応する超平面を表すパラメータは記憶装置111〜114のなかでそのグループに対応するものに記憶させる。記憶装置111〜114に全てパラメータを記憶させることにより、学習過程(工程)が終了する。上述したようなグルーピングにより、超平面は和音を構成可能な楽音別に計算されることになる。本実施形態による学習装置は、そのような楽音別に超平面を計算するものである。このため、例えばベクトル記憶装置101及び超平面計算装置102により実現されている。本実施形態による和音同定装置は、その学習装置を搭載したものであり、和音同定装置自体の機能は、ベクトル記憶装置101及び超平面計算装置102を除く部分により実現される。
【0032】
図3は、学習ベクトル100を用いて計算される超平面を説明する図である。その図3に示す超平面300は、学習ベクトル100がxy平面で表現される2次元であった場合に計算されるものである。その場合、超平面は以下の式により表される直線となる。なお、図5中の311〜313、及び321〜323はそれぞれ、グループJ及びKに属する3個の学習ベクトル100を表している。
ax+by+c=0 ・・・ (2)
【0033】
式(2)のように表すことが可能な超平面では、式(2)中のa、b、及びcがパラメータとして各記憶装置111〜114に記憶されることになる。
【0034】
各評価装置121〜124はそれぞれ、記憶装置111〜114のなかで対応する記憶装置に保存されているパラメータを用いて、そのパラメータが表す超平面と判定対象ベクトル150との距離を計算し、その計算結果を評価値として出力する。その評価値は、図3に示す例では、グループJに属する学習ベクトル311〜313では正となり、グループKに属する学習ベクトル321〜323では負となる。それにより、評価値の正負はグループの特定に重要な意味を有している。
【0035】
判定装置130は、各評価装置111〜114から評価値(ここでは計n(nは5以上の整数)個の評価値)を入力し、その大きさ、及び正負から判定対象ベクトル150が表す和音を構成する楽音毎にその楽音が属するグループを判定する。和音の同定は、判定したグループ毎に、そのグループに属する楽音を判定して行う。グループに属する楽音は、信号成分が最大となる周波数、つまり根音の基本周波数から正確に特定、或いは推測することができる。
【0036】
図4は、学習過程で計算される超平面、及びその超平面を用いた和音の同定方法を説明する図である。ここで図4を参照して、学習過程で計算される超平面を用いて行われる和音の同定方法について具体的に説明する。その図4において、直線401は学習ベクトル411〜413が属するグループ(ここでは図2からグループJとする)で計算された超平面、つまりグループJを1グループ、及びそれ以外のグループをもう一つのグループとして計算された超平面、直線402は学習ベクトル421〜423が属するグループ(同様に図2からグループKとする)で計算された超平面、つまりグループKを1グループ、及びそれ以外のグループをもう一つのグループとして計算された超平面、直線403は学習ベクトル431〜433が属するグループ(同様に図2からグループLとする)で計算された超平面、つまりグループLを1グループ、及びそれ以外のグループをもう一つのグループとして計算された超平面を示している。
【0037】
それら3グループの超平面を示していることから、図4では楽音はA、B及びCの3個のみとし、そのうちの2個の楽音から構成される和音を同定する場合を想定している。その場合、和音はA+B、B+C、及びC+Aの3種類となる。図4中の600は、和音A+Bの判定対象ベクトル150として入力されたベクトルを表している。e1〜e3はそれぞれ、直線601〜603と判定対象ベクトル600との間の距離を示している。距離e1は負で絶対値が小さな距離、距離e2は正で絶対値が小さな距離、距離e3は負で絶対値が大きな距離となっている。絶対値での大小関係は、e3>e2>e1である。
【0038】
評価装置とグループの対応関係は1対1となっている。このことから、和音を構成する楽音の属するグループの判定は、入力した距離のなかから、絶対値が大きいほうから和音の構成音数分の距離を抽出することで行われる。それにより図4に示す例では、距離e3及びe2が抽出される。各距離e3及びe2はそれぞれ直線603及び602に対応していることから、判定対象ベクトル600が表す和音を構成する2個の楽音はそれぞれグループL及びKに属していると判定されることになる。
【0039】
図5は、本実施形態による和音同定装置の和音の同定結果を示す図である。図8と同様に、図中の最下部に誤判定結果を示し、その上部には櫛形フィルターによる楽音の判定結果を示している。その図8と比較して、和音の同定はより高精度に行われていることが分かる。このことは、他の実験からも確認できている。
【0040】
なお、本実施形態では、和音同定装置に学習装置を搭載しているが、和音同定装置、及び学習装置はそれぞれ別の装置に搭載、或いは別の装置として実現させても良い。また、それらの装置は何れも、上述したような機能を実現させるプログラムをコンピュータに実行させることで実現可能である。このことから、そのようなプログラムは可搬性のフラッシュメモリ等に記録して配布しても良く、通信ネットワークを介して受信可能としても良い。
【図面の簡単な説明】
【0041】
【図1】本実施形態による和音同定装置の構成を示す図である。
【図2】ベクトル記憶装置に記憶される学習ベクトルを説明する図である。
【図3】学習ベクトル100を用いて計算される超平面を説明する図である。
【図4】学習過程で計算される超平面、及びその超平面を用いた和音の同定方法を説明する図である。
【図5】本実施形態による和音同定装置の和音の同定結果を示す図である。
【図6】従来の和音同定装置の構成を示す図である。
【図7】楽音を構成する周波数成分の例を説明する図である。
【図8】従来の和音同定装置による和音の同定結果を示す図である。
【符号の説明】
【0042】
100、311〜313、321〜322、411〜413、421〜423、431〜433 学習ベクトル
101 ベクトル記憶装置
102 超平面計算装置
111〜114 記憶装置
121〜124 評価装置
130 判定装置
150 判定対象ベクトル

【特許請求の範囲】
【請求項1】
複数の楽音から構成される和音をコンピュータにより同定するための方法であって、
前記和音を構成可能な楽音別に、該楽音を表す楽音特徴情報を用いて超平面を計算する学習工程と、
前記超平面毎に、同定対象となる和音を表す和音特徴情報を用いて該和音との距離を計算し、該計算結果を用いて該和音を構成する楽音を判定する判定工程と、
を有することを特徴とする和音同定方法。
【請求項2】
複数の楽音から構成される和音を同定する和音同定装置において、
前記和音を構成可能な楽音別に、該楽音を表す楽音特徴情報を用いて計算された超平面を表す超平面情報を記憶した情報記憶手段と、
同定対象となる和音を表す和音特徴情報を入力する情報入力手段と、
前記情報記憶手段に記憶されている超平面情報を用いて、前記超平面毎に、前記和音特徴情報が表す和音との距離を計算する評価手段と、
前記評価手段が前記超平面毎に計算した距離から、前記和音を構成する楽音を判定する楽音判定手段と、
を具備することを特徴とする和音同定装置。
【請求項3】
複数の楽音から構成される和音を同定するための同定用情報を学習により生成する学習装置において、
前記和音を構成可能な楽音別に、該楽音を表す楽音特徴情報を入力する情報入力手段と、
前記情報入力手段が入力した楽音特徴情報が表す楽音別に、該楽音特徴情報を用いて超平面を前記同定用情報として計算する超平面計算手段と、
を具備することを特徴とする学習装置。
【請求項4】
複数の楽音から構成される和音をコンピュータにより同定するための処理であって、
前記和音を構成可能な楽音別に、該楽音を表す楽音特徴情報を用いて超平面を計算する学習処理と、
前記超平面毎に、同定対象となる和音を表す和音特徴情報を用いて該和音との距離を計算し、該計算結果を用いて該和音を構成する楽音を判定する判定処理と、
を行なうプログラム。
【請求項5】
複数の楽音から構成される和音を同定する和音同定装置に使用され、
前記和音を構成可能な楽音別に、該楽音を表す楽音特徴情報を用いて計算された超平面を表す超平面情報を記憶した情報記憶処理と、
同定対象となる和音を表す和音特徴情報を入力する情報入力処理と、
前記情報記憶手段に記憶されている超平面情報を用いて、前記超平面毎に、前記和音特徴情報が表す和音との距離を計算する評価処理と、
前記評価手段が前記超平面毎に計算した距離から、前記和音を構成する楽音を判定する楽音判定処理と、
を行なうプログラム。
【請求項6】
複数の楽音から構成される和音を同定するための同定用情報を学習により生成する学習装置に使用され、
前記和音を構成可能な楽音別に、該楽音を表す楽音特徴情報を入力する情報入力処理と、
前記情報入力手段が入力した楽音特徴情報が表す楽音別に、該楽音特徴情報を用いて超平面を前記同定用情報として計算する超平面計算処理と、
を行なうプログラム。

【図4】
image rotate

【図5】
image rotate

【図8】
image rotate

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図6】
image rotate

【図7】
image rotate