JP5119708B2 - 演奏評価システムおよび演奏評価プログラム - Google Patents

演奏評価システムおよび演奏評価プログラム Download PDF

Info

Publication number
JP5119708B2
JP5119708B2 JP2007083447A JP2007083447A JP5119708B2 JP 5119708 B2 JP5119708 B2 JP 5119708B2 JP 2007083447 A JP2007083447 A JP 2007083447A JP 2007083447 A JP2007083447 A JP 2007083447A JP 5119708 B2 JP5119708 B2 JP 5119708B2
Authority
JP
Japan
Prior art keywords
chord
rhythm
coincidence
data file
performance data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2007083447A
Other languages
English (en)
Other versions
JP2008242129A (ja
Inventor
純一 南高
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2007083447A priority Critical patent/JP5119708B2/ja
Publication of JP2008242129A publication Critical patent/JP2008242129A/ja
Application granted granted Critical
Publication of JP5119708B2 publication Critical patent/JP5119708B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)
  • Auxiliary Devices For Music (AREA)

Description

本発明は、演奏者による演奏を評価する演奏評価システムおよび演奏評価プログラムに関する。
従来、演奏者の演奏レベルの向上を目的として、次に操作すべき鍵盤をLED光などにより示すような機能(ナビゲート機能)がよく知られている。この技術を利用することで、演奏者は、楽器を独習することができるが、演奏者の演奏を客観的に評価することはできないという問題点があった。
そこで、たとえば、特許文献1には、模範演奏のデータ(基準データ)と演奏者の演奏に基づくデータ(被験データ)間で音符(ノート)のマッチングを実行して、ノート間のパラメータの差分を取得し、当該差分に基づいて演奏者による演奏内容を分析する分析装置が開示されている。
また、特許文献2には、楽曲を演奏する際の運指の難易性、単位時間当たりに鳴らす楽音の数、楽曲が備えた調性、変化音、リズムの変化の度合いなどを考慮して、演奏内容をあらわすデータを評価する分析装置が開示されている。
特開平9−237088号公報 特開2002−323891号公報
上述した分析装置においては、基本的には、出題されたデータと、演奏者の演奏による演奏データとの間の差分が算出され、その差分から演奏内容についての分析が行われる。したがって、模範演奏のデータと同一の内容の演奏データとなるように演奏することが理想となる。
近年、脳の能力を活性化するためのトレーニング装置(ゲームソフトウェア)が提案されている(たとえば、「脳力トレーナー(登録商標)」)。このような装置においては、脳の活性化を目的とするための種々の工夫がなされている。
本発明は、音楽の演奏においても、単に模範演奏を模倣することを目的とするのではなく、脳の活性化を図るための機能、たとえば、出題に対する演奏者の応答や演奏者の自発的な演奏を参照して、演奏者の状態を評価するシステム、および、プログラムを提供することを目的とする。
本発明の目的は、演奏者に提示すべき出題データであって、和音種別毎に和音構成音それぞれのノートを格納した出題データファイル、および、当該和音種別に、複数種の性質のそれぞれに対応する係数を格納した評価係数テーブルを記憶した記憶装置と、
前記演奏者により順次入力された和音構成音それぞれのノートを格納した演奏データファイルを生成して、前記記憶装置に記憶する演奏データ生成手段と、
前記演奏データファイルに格納されている和音構成音毎に、当該各和音構成音と前記出題データファイルに格納されている和音種別毎の和音構成音の一致度を算出する一致度算出手段と、
前記演奏データファイルに格納されている和音構成音毎に、前記複数種の性質に対応する係数のそれぞれと前記和音種別毎の一致度とに基づいて、前記性質の評価値を算出する評価値算出手段と、
前記算出された前記和音構成音毎の評価値を、同一の性質毎に累算する累算手段と、
を備えたことを特徴とする演奏評価システムにより達成される。
好ましい実施態様においては、前記記憶装置が、和音種別の各々について、音名毎に和音構成音のノートの有無を示す和音配列を含む和音構成音データベースを記憶し、
前記一致度算出手段が、前記音名毎にノートの有無を示すユーザ和音配列を生成し、当該生成されたユーザ和音配列において、前記演奏データファイルに基づく和音構成音のノートの各々に対応する音名について、ノートの有無を示す値を格納するとともに、前記ユーザ和音配列と、前記和音構成音データベース中の前記和音配列とを比較することにより、前記一致度を算出する。
より好ましい実施態様においては、前記一致度算出手段が、全ての調性について、前記ユーザ和音配列と、前記和音配列とを比較することにより、和音種別の一致度を算出するように構成されている。
また、本発明の目的は、演奏者に提示すべき出題データであって、それぞれが、発音すべきリズムの発音開始時刻、および、次に発音すべきノートへのポインタからなるリズムパターンを複数種格納した出題データファイル、および、リズム種別に、複数種の所定の性質のそれぞれについての係数を格納した評価係数テーブルを記憶した記憶装置と、
前記演奏者により入力されたリズムの発音開始時刻、および、次に発音すべきノートのポインタからなるリズムパターンを格納した演奏データファイルを生成して、前記記憶装置に記憶する演奏データ生成手段と、
前記演奏データファイルに格納されているリズムパターン毎に、当該各リズムパターンと、前記出題データファイルに格納されているリズム種別毎のリズムパターンとの一致度を算出する一致度算出手段と、
前記演奏データファイルに格納されているリズムパターン毎に、前記複数種の性質それぞれに対応する係数と前記リズム種別毎の一致度とに基づいて、前記性質の評価値を算出する評価値算出手段と、
前記算出された前記リズムパターン毎の評価値を、同一の性質毎に累算する累算手段と、
を備えたことを特徴とする演奏評価システムにより達成される。
好ましい実施態様においては、前記記憶装置が、リズム種別の各々について、所定のタイミング毎にリズムパターンを構成するノートの有無を示すリズム配列を含むリズムパターンデータベースを記憶し、
前記一致度算出手段が、前記所定のタイミング毎のノートの有無を示すユーザリズム配列を生成し、当該生成されたユーザリズム配列において、前記演奏データファイルに基づくリズムパターンを構成するノートの発音タイミングに相当する位置に、ノートの有無を示す値を格納するとともに、前記ユーザリズム配列と、前記リズムパターンデータベース中の前記リズム配列とを比較することにより、前記一致度を算出する。
また、別の好ましい実施態様においては、演奏者からの入力にしたがって、補間モード或いは応答モードの何れかを選択し、前記補間モードの下で、前記一致度算出手段が、前記演奏データファイルおよび前記出題データに基づいて前記一致度を算出し、前記応答モードの下で、前記一致度算出手段が、前記演奏データファイルに基づいて前記一致度を算出する。
また、本発明の目的は、演奏者に提示すべき出題データであって、和音種別毎に和音構成音それぞれのノートを格納した出題データファイル、および、当該和音種別に、複数種の性質のそれぞれに対応する係数を格納した評価係数テーブルを記憶した記憶装置を備えたコンピュータにおいて、前記コンピュータに、
前記演奏者により順次入力された和音構成音それぞれのノートを格納した演奏データファイルを生成して、前記記憶装置に記憶する演奏データ生成ステップと、
前記演奏データファイルに格納されている和音構成音毎に、当該各和音構成音と前記出題データファイルに格納されている和音種別毎の和音構成音の一致度を算出する一致度算出ステップと、
前記演奏データファイルに格納されている和音構成音毎に、前記複数種の性質に対応する係数のそれぞれと前記和音種別毎の一致度とに基づいて、前記性質の評価値を算出する評価値算出ステップと、
前記算出された前記和音構成音毎の評価値を、同一の性質毎に累算する累算ステップと、
を実行させることを特徴とする演奏評価プログラムにより達成される。
好ましい実施態様においては、前記記憶装置が、和音種別の各々について、音名毎に和音構成音のノートの有無を示す和音配列を含む和音構成音データベースを記憶し、
前記一致度算出ステップにおいて、前記コンピュータに、(改行に変更)
前記音名毎にノートの有無を示すユーザ和音配列を生成し、当該生成されたユーザ和音配列において、前記演奏データファイルに基づく和音構成音のノートの各々に対応する音名について、ノートの有無を示す値を格納するステップと、
前記ユーザ和音配列と、前記和音構成音データベース中の前記和音配列とを比較することにより、前記一致度を算出するステップと、を実行させる。
より好ましい実施態様においては、前記一致度算出ステップにおいて、前記コンピュータに、
全ての調性について、前記ユーザ和音配列と、前記和音配列とを比較することにより、和音種別の一致度を算出するステップを実行させる。
さらに、本発明の目的は、演奏者に提示すべき出題データであって、それぞれが、発音すべきリズムの発音開始時刻、および、次に発音すべきノートへのポインタからなるリズムパターンを複数種格納した出題データファイル、および、リズム種別に、複数種の所定の性質のそれぞれについての係数を格納した評価係数テーブルを記憶した記憶装置を備えたコンピュータにおいて、前記コンピュータに、
前記演奏者により入力されたリズムの発音開始時刻、および、次に発音すべきノートのポインタからなるリズムパターンを格納した演奏データファイルを生成して、前記記憶装置に記憶する演奏データ生成ステップと、
前記演奏データファイルに格納されているリズムパターン毎に、当該各リズムパターンと、前記出題データファイルに格納されているリズム種別毎のリズムパターンとの一致度を算出する一致度算出ステップと、
前記演奏データファイルに格納されているリズムパターン毎に、前記複数種の性質それぞれに対応する係数と前記リズム種別毎の一致度とに基づいて、前記性質の評価値を算出する評価値算出ステップと、
前記算出された前記リズムパターン毎の評価値を、同一の性質毎に累算する累算ステップと、
を実行させることを特徴とする演奏評価プログラムにより達成される。
好ましい実施態様においては、前記記憶装置が、リズム種別の各々について、所定のタイミング毎にリズムパターンを構成するノートの有無を示すリズム配列を含むリズムパターンデータベースを記憶し、
前記一致度算出ステップにおいて、前記コンピュータに、
前記所定のタイミング毎のノートの有無を示すユーザリズム配列を生成し、当該生成されたユーザリズム配列において、前記演奏データファイルに基づくリズムパターンを構成するノートの発音タイミングに相当する位置に、ノートの有無を示す値を格納するステップと、
前記ユーザリズム配列と、前記リズムパターンデータベース中の前記リズム配列とを比較することにより、前記一致度を算出するステップと、を実行させる。
また、別の好ましい実施態様においては、演奏者からの入力にしたがって、補間モード或いは応答モードの何れかを選択するステップを備え、
前記補間モードの下で、前記一致度算出ステップにおいて、前記コンピュータに、
前記演奏データファイルおよび前記出題データに基づいて前記一致度を算出するステップを実行させ、
前記応答モードの下で、前記一致度算出ステップにおいて、前記コンピュータに、
前記演奏データファイルに基づいて前記一致度を算出するステップを実行させる。
本発明によれば、演奏者の出題に対する応答や演奏者の自発的な演奏を参照して、演奏者の状態を評価するシステム、および、プログラムを提供することが可能となる。
以下、添付図面を参照して、本発明の実施の形態について説明する。図1は、本発明の実施の形態にかかる演奏評価装置の構成を示すブロックダイヤグラムである。図1に示すように、本実施の形態にかかる演奏評価装置10は、鍵盤を含む入力装置11、表示装置12、鍵盤の押鍵操作および後述する出題データに基づく楽音を再生する再生処理部13、出題データを生成する出題データ生成部14、演奏者による押鍵操作に基づいて演奏データを生成する演奏データ生成部15、種々のデータおよびパラメータを記憶する記憶装置16、出題データや演奏データに基づいて、演奏者の演奏に対する評価値を算出する評価処理部17、並びに、出題データ、演奏データ、評価結果などを表示するための画像データを生成する描画処理部18を有している。
記憶装置16は、一連の出題データを記憶する出題データファイル21、出題データを決定するためのパラメータを記憶する出題パラメータファイル22、演奏者による演奏(押鍵操作)に基づく演奏データを記憶する演奏データファイル23、評価処理部17による評価値演算のために使用する係数を記憶する評価係数テーブル24、和音構成音の情報を記憶した和音構成音データベース(DB)25、リズムパターンの情報を記憶したリズムパターンDB26、および、評価処理部17による処理結果(評価結果)を記憶する評価結果ファイル27を含む。
出題データ生成部14は、出題パラメータファイル22に記憶されたパラメータや演奏者の入力装置11の操作に基づいて、出題データファイル21から1組の出題データを読み出して、再生処理部13に与える。再生処理部13により、出題データに基づく楽音が生成され、たとえば、スピーカから出力される。
また、評価処理部17は、演奏データファイル23に記憶された演奏データ、或いは演奏データと出題データファイル21に記憶された出題データとに基づく評価値を算出する。その際に、評価係数テーブル24、和音構成音DB25およびリズムパターンDB26が参照される。
図2は、本実施の形態にかかる演奏評価装置のハードウェア構成を示すブロックダイヤグラムである。図2に示すように、演奏評価装置10のハードウェアは、CPU30、ROM32、RAM34、入力装置11、表示装置12およびサウンドシステム40を含む。図2から理解できるように、本実施の形態にかかる演奏評価装置10は、通常のパーソナルコンピュータにより実現され得る。CPU30は、システム制御、出題データや演奏データの生成、評価演算、表示装置の画面上に表示すべき画像データの生成などの処理を実行する。ROM32は、プログラムや、プログラムの実行の際に使用される定数などを記憶する。RAM34は、プログラムの実行の過程で必要な変数、入力データ、出力データなどを一時的に記憶する。
入力装置11は、鍵盤、キーボードやマウスを含み、演奏者の押鍵操作に基づく押鍵情報、演奏評価装置の出題データの選択などの種々の指示の情報をCPU30に与える。表示装置12の画面上には、評価処理結果、出題データに基づく楽譜などを含む画像データが表示される。サウンドシステム40は、楽音生成回路、増幅器、スピーカなどを含み、CPU30からの指示や出題データおよび演奏データにしたがって、所定の楽音を生成して、楽音に基づく音響信号を出力する。
図1に示す再生処理部13の機能は、CPU30およびサウンドシステム40の楽音生成回路により実現される。出題データ生成部14、演奏データ生成部15、評価処理部17、描画処理部18の機能は、主としてCPU30により実現される。また、記憶装置16は、たとえば、ROM32やRAM34に相当する。或いは、演奏評価装置10のハードウェアとしてハードディスク装置が含まれる場合には、記憶装置16は、当該ハードディスク装置にも相当する。
本実施の形態にかかる演奏評価装置10においては、たとえば演奏評価装置10のROM32に記憶されたプログラムが、コンピュータを、出題データ生成部14、演奏データ生成部15、評価処理部17、描画処理部18として機能させる。
図3は、本実施の形態にかかる演奏評価装置の一般フローを示すフローチャートである。一般フローにおいては、演奏評価装置10の種々の構成部分が初期化された後(ステップ301)、演奏者の入力装置11の操作によって、出題データ生成部14が、出題データファイル21から所定の出題データを読み込み(ステップ302)、また、出題条件にしたがって、条件フラグがセットされる(ステップ303)。
本発明において、出題データには、時間軸方向の音列のデータ、或いは、同時に発音される複数の音(つまり和音構成音)のデータが含まれる。また、時間軸方向の音列には、音程の無いリズムのみの列が含まれる。第1の実施の形態においては、出題データを、リズムのデータおよび和音のデータとする。また、音列やリズムのみの列における1つの音の要素をノートと称する。
したがって、第1の実施の形態において、演奏者は、リズム或いは和音の何れかの種別の出題を求めることになる。また、本実施の形態において、出題に対する回答として、「補間」と「応答」が存在する。「補間」モードにおいては、出題例の音列や和音に、演奏者が演奏したノートを加えたものが回答となる。また、「応答」モードにおいては、出題例の音列や和音を再生した後、演奏者の押鍵操作により入力された音列や和音が回答となる。
図22(a)〜(c)は、メロディ、和音、リズムについて、「補間」モードにおける出題例と、それに対する2つの回答例とを示している。図22(a)では、出題例に対して、回答例1では、1拍目の裏拍のタイミングで、「G」のノートを加えることで、回答としている。また、回答例2では、同じタイミングで、「D」のノートを加えることで回答としている。図22(b)では、「C」および「G」の和音の出題例に対して、回答例1では、「F」のノートを加えることで回答としている。また、回答例2では、「D」のノートを加えることで回答としている。さらに、図22(c)でも、出題例に、所望のタイミングでノート(この場合には、音程はなく単なるリズム)を加えることで回答例が得られている。
図23(a)〜(c)は、メロディ、和音、リズムについて、「応答」モードにおける出題例と、それに対する2つの回答例とを示している。図23(a)〜(c)に示すように、「応答」モードでは、演奏者は、出題例を聴いた上で、所望の音列や和音を回答とすることができる。
ステップ303において設定される条件フラグには、「和音」或いは「リズム」を示す出題種別と、「補間」モードか「応答」モードかを示すモード種別が含まれる。次いで、出題種別およびモード種別にしたがって、出題データが生成され、再生が開始される(ステップ304)。ステップ304によって出題中であることを示すフラグがセットされる。出題データの実際の再生は、後述するインタラプトルーチンにて行われる。インタラプトルーチンにおいては、ステップ304でセットされたフラグを参照して出題中であるか否かを判断することができる。
また、演奏者による押鍵操作(ユーザ演奏)を受け付けて、演奏データ生成部15は演奏データを生成して演奏データファイル23に格納する(ステップ305)。ステップ304、305の処理は演奏者による演奏が終了するまで繰り返される(ステップ306参照)。
演奏者による演奏が終了すると(ステップ306でYes)、評価処理部17が評価処理を実行して、演奏者の演奏に基づく演奏データ、或いは、演奏データおよび出題された出題データに基づいて、評価値を算出する。ここに、「補間」モードにおいては演奏データおよび出題データに基づいて評価値が算出され、「応答」モードにおいては演奏データのみに基づいて評価値が算出される。評価処理部17によって得られた評価結果は、評価結果ファイル27に記憶されるとともに、表示装置12の画面上に表示される。
図4は、本実施の形態にかかるインタラプトルーチンのフローチャートである。インタラプトルーチンは、一般フローと並列して実行され、処理終了となるまで(ステップ401でYes)、出題データに基づく楽音の発音、および、演奏者の押鍵操作に基づく楽音の発音を行う。出題中であれば(ステップ402でYes)、発音が終了となるまで(ステップ403参照)、再生処理部13が出題データに基づいて、楽音を生成して出力するとともに(ステップ404)、描画処理部18が出題データに基づく楽譜の画像を生成して表示装置12の画面上に表示する(ステップ405)。
演奏者による回答中、つまり、演奏者が演奏中であれば(ステップ406でYes)、発音が終了となるまで(ステップ407参照)、以下の処理が実行される。演奏データ生成部15が、ユーザの押鍵操作にしたがって演奏データを生成する(ステップ408)。後述するように、演奏データは、1つのノートについて、少なくとも、音高(Pit)、発音開始時刻(Time)、音長(Gate)を含む。リズムに関するノートについては、音高(Pit)にリズムであることを示す値を割り当てればよい。したがって、ユーザの押鍵操作に応じて、音高(Pit)、発音開始時刻(Time)および音長(Gate)が取得される。これらの情報が、演奏データのレコードを構成する。
「補間」モードであれば(ステップ409でYes)、再生処理部13が演奏者の押鍵操作に基づいて、楽音を生成して出力するとともに(ステップ410)、描画処理部18が演奏データに基づく楽譜の画像を生成して表示装置12の画面上に表示する(ステップ411)。
図5は、本実施の形態にかかる出題データおよび演奏データの構成例を示す図である。図5に示すように、本実施の形態においては、1つのレコードによって、1つの音の要素が表される(符号501、502参照)。各レコードは、音高(Pit)、発音開始時刻(Time)、音長(Gate)、コードフラグ(ChoFlg)、次のノートに関するレコードへのポインタ(*next)、前のノートに関するレコードへのポインタ(*prev)を有する。コードフラグは、一連のノートが和音構成音であることを示すために利用される。たとえば、発音開始時刻が同一でコードフラグが「1」であるようなレコードのノートは1つの和音を構成する。また、音高(Pit)は、たとえば鍵番号に相当する。
以下、図3のステップ307の評価処理についてより詳細に説明する。図6および図7は、本実施の形態にかかる評価処理における前処理の例を示すフローチャートである。前処理においては、「リズム」或いは「和音」の出題種別の何れかで、演奏データのノートの配列(「応答」モードの場合)或いは演奏データおよび出題データのノートの配列(「補間」モードの場合)を生成する。
図6に示すように、評価処理部17は、配列中の要素の位置を示すパラメータ「n」を「0」に初期化する(ステップ601)。次いで、出題種別が「リズム」であるか否かが判断される(ステップ602)。出題種別が「リズム」である場合には(ステップ602でYes)、演奏データのレコードが終了するまで(ステップ603でYes)、ステップ604〜606の処理が繰り返される。なお、以下の処理で、「ne」とは演奏データのレコードを指定するポインタである。たとえば、ne[0]は演奏データの最初(0番)のレコードを示し、ne[1]は演奏データの次(1番)のレコードを示す。
評価処理部17は、a=(ne[n]のTime)/(Res/2)を算出する(ステップ607)。ここで、ne[n]は、演奏データ中のn番のノートのレコードを示す。また、「Res」は本実施の形態における分解能を意味し、たとえば、(Res/2)は8分音符に相当する。値「a」により、ne[n]に関するノートが、8分音符単位で、何番の位置にあるかが決定される。次いで、評価処理部17は、ユーザリズム配列URhyの「a」番の位置(URhy[a])に「1」を格納して(ステップ605)、パラメータ「n」をインクリメントする(ステップ606)。
「補間」モードである場合には(ステップ607でYes)、上記演奏データに加えて、出題データのノートに関する情報を、ユーザリズム配列URhyに格納する必要があるため、ステップ608〜612の処理を実行する。
より具体的には、評価処理部17は、配列中の要素の位置を示すパラメータ「n」を「0」に初期化する(ステップ608)。評価処理部17は、出題データのレコードが終了するまで(ステップ609でYes)、ステップ610〜612の処理が繰り返す。なお、以下の処理で、「me」とは出題データのレコードを指定するポインタである。たとえば、me[0]は出題データの最初(0番)のレコードを示し、me[1]は出題データの次(1番)のレコードを示す。
評価処理部17は、a=(me[n]のTime)/(Res/2)を算出する(ステップ610)。ここで、me[n]は、出題データ中のm番のノートのレコードを示す。また、「Res」は本実施の形態における分解能を意味し、たとえば、(Res/2)は8分音符に相当する。値「a」により、me[n]に関するノートが、8分音符単位で、何番の位置にあるかが決定される。次いで、評価処理部17は、ユーザリズム配列URhyの「a」番の位置(URhy[a])に「1」を格納して(ステップ611)、パラメータ「n」をインクリメントする(ステップ612)。
このようにして、出題種別が「リズム」のときに、「応答」モードであれば、演奏データに基づいて、演奏者が押鍵したタイミングで「1」がセットされているような配列URhyを得ることができ、また、「補間」モードであれば、出題データおよび演奏データに基づいて、出題データにおいて発音されるタイミングおよび演奏者が押鍵したタイミングで「1」がセットされているような配列URhyを得ることができる。
次に、出題種別として「和音」が選択されている場合(ステップ602でNo)について説明する。ステップ602でNoと判断された場合には、演奏データのレコードが終了するまで(ステップ701でYes)、ステップ702〜704の処理が繰り返される。
評価処理部17は、a=((ne[n]のPit) mod12)を算出する(ステップ702)。ここで、ne[n]は、演奏データ中のn番のノートのレコードを示す。したがって、値「a」は、演奏データ中のノートの音名を示す。たとえば、「Pit」の値「0」が、「C」音であるとすれば、「a」=0〜11は、それぞれ、「C」音〜「H」音を示す。
評価処理部17は、ユーザ和音配列UChoの「a」番の位置(UCho[a])に「1」を格納して(ステップ703)、パラメータ「n」をインクリメントする(ステップ704)。
「補間」モードである場合には(ステップ705でYes)、上記演奏データに加えて、出題データのノートに関する情報を、ユーザ和音配列UChoに格納するする必要があるため、ステップ706〜710の処理を実行する。
より具体的には、評価処理部17は、配列中の要素の位置を示すパラメータ「n」を「0」に初期化する(ステップ706)。評価処理部17は、出題データのレコードが終了するまで(ステップ707でYes)、ステップ708〜710の処理が繰り返す。
評価処理部17は、a=((me[n]のPit) mod12)を算出する(ステップ708)。ここで、me[n]は、出題データ中のn番のノートのレコードを示す。したがって、値「a」は、出題データ中のノートの音名を示す。たとえば、音高「Pit」の値「0」が、「C」音であるとすれば、「a」=0〜11は、それぞれ、「C」音〜「H音」を示す。
評価処理部17は、ユーザ和音配列UChoの「a」番の位置(UCho[a])に「1」を格納して(ステップ709)、パラメータ「n」をインクリメントする(ステップ710)。
図8(a)は、図22(b)の出題例、回答例1および回答例2のそれぞれに基づいて生成されたユーザ和音配列UChoの例を示す。配列800〜802は、それぞれ、出題例、回答例1および回答例2に相当する。
配列800においては、「C」のノートに相当する第0番の要素、および、「G」のノートに相当する第7番の要素に「1」が格納されている。配列801においては、さらに、「F」のノートに相当する第5番の要素に「1」が格納されている。その一方、配列802においては、「D」のノートに相当する第2番の要素に「1」が格納されている。
図8(b)は、図22(c)の出題例、回答例1および回答例2のそれぞれに基づいて生成されたユーザリズム配列URhyの例を示す。配列810〜812は、それぞれ、出題例、回答例1および回答例2に相当する。本実施の形態においては、音長にかかわらず、8分音符の単位でオンされた(押鍵された)位置に相当する要素に「1」が格納されている。
配列810においては、第1拍目の先頭に相当する第0番の要素、および、第3拍目の先頭に相当する第4番の要素に「1」が格納されている。配列811においては、さらに、第2拍目の裏拍に相当する第3番の要素に「1」が格納されている。その一方、配列812においては、第3拍目の裏拍に相当する第5番の要素に「1」が格納されている。
次に、前処理に引き続いて実行される一致度算出処理について説明する。図9および図10は、本実施の形態にかかる一致度算出処理の例を示すフローチャートである。
まず、リズム種別や和音種別を示すパラメータ「t」が「0」に初期化される(ステップ901)。次いで、出題種別が「リズム」であるか否かが判断される(ステップ902)。ステップ902でYesと判断された場合には、全ての種別のリズムパターンについて処理が終了するまで(ステップ903参照)、ステップ904〜ステップ909が実行される。
評価処理部17は、ユーザリズム配列URhy中の要素の位置を示すパラメータ「n」を「0」に初期化して(ステップ904)、ユーザリズム配列URhyの全ての要素について処理が終了するまで(ステップ905参照)、ステップ906〜908を繰り返す。より詳細には、評価処理部17は、ユーザリズム配列URhyの第n番の要素(URhy[n])が、後述するリズム配列Rhy[t][n]と一致するか否かを判断する(ステップ906)。
図11(a)は、リズム配列Rhy[t][n]を説明する図である。図11(a)に示す配列群(符号1100参照)が、図1のリズムパターンDB26に相当する。図11(a)に示すように、リズムパターンDB26においては、リズム種別ごとに、8つの要素をもつ配列が含まれる。本実施の形態では、t=0〜4の5つのリズム種別のリズムパターンが設けられ、5つのリズム配列Rhy[t][n]がリズムパターンDB26を構成する。
リズム種別「ロック」の配列Rhy[0][n](図11(b)の符号1110参照)では、第1拍目の先頭と、第3拍目の先頭および裏拍が「1」、つまり「オン」であるようなリズムパターンを示す。また、リズム種別「ポップス」の配列Rhy[1][n](図11(c)の符号1120参照)では、第1拍目の先頭、第2拍目の裏拍および第3拍目の先頭が「1」、つまり「オン」であるようなリズムパターンを示している。
リズム配列Rhyは上述した構成であるため、ステップ906は、ユーザリズム配列URhyの第n番の要素(URhy[n])が、第t番のリズム種別のリズムパターン配列の第n番の要素(Rhy[t][n])が一致するか否かを判断していることになる。ステップ906でYesと判断された場合には、評価処理部17は、一致度を示す一致カウンタVal[t]をカウントアップする(ステップ907)。なお、この一致カウンタVal[t]も初期値は「0」となっている。その後、ユーザリズム配列URhy中の要素の位置を示すパラメータ「n」がインクリメントされる(ステップ908)。
図11(b)においては、リズム種別「ロック」の配列Rhy[0][n]と、ユーザリズム配列URhy[n](符号1111参照)とが比較される。ここでは、実線の矢印で示した要素(第0番の要素、第1番の要素、第2番の要素、第4番の要素、第6番の要素および第7番の要素)が一致している。したがって、n=0、n=1、n=2、n=4、n=6およびn=7のときに、ステップ906でYesと判断され、Val[t(=0)]がカウントアップされるため、Val[0]=6となる。
また、図11(c)においては、リズム種別「ポップス」の配列Rhy[1][n]と、ユーザリズム配列URhy[n](符号1111参照)とが比較される。ここでは、実線の矢印で示した要素(第0番の要素〜第7番の要素)が一致している。したがって、n=0〜n=7のときにステップ906でYesと判断され、Val[t(=1)]がカウントアップされるため、Val[1]=8となる。
次に、出題種別が「和音」である場合(ステップ902でNo)であった場合について説明する。図10に示すように、評価処理部17は、全ての種別の和音について処理が終了するまで(ステップ1001参照)、以下のステップ1002〜1013を実行する。
評価処理部17は、和音の移調の度合いを示すパラメータ「r」を「0」に初期化する(ステップ1002)。全ての調性についての処理が終了するまで(ステップ1003参照)、以下のステップ1004〜1011が繰り返される。
評価処理部17は、ユーザ和音配列UCho中の要素の位置を示すパラメータ「n」を「0」に初期化して(ステップ1004)、ユーザ和音配列UChoの全ての要素について処理が終了するまで(ステップ1005参照)、ステップ1006〜1008を繰り返す。より詳細には、評価処理部17は、ユーザリズム配列UChoの第((n−r+12) mod12)番の要素(URhy([n−r+12] mod12))が、和音配列Cho[t][n]と一致するか否かを判断する(ステップ1006)。
図12(a)は、和音配列Cho[t][n]を説明する図である。図12(a)に示す配列群(符号1200参照)が、図1の和音構成音DB25に相当する。図12(a)に示すように、和音構成音DB25においては、和音種別ごとに、12の要素をもつ配列が含まれる。本実施の形態では、t=0〜5の6つの和音種別の和音構成音が用意され、6つの和音配列Cho[t][n]が和音構成音DB25を構成する。
和音配列Choにおいては、第0番の要素〜第11番の要素は、それぞれ、調性を「C」と考えたときの「C」音〜「B」音に相当する。たとえば、 和音種別「major」の配列Cho[0][n](図11(b)の符号1210参照)は、調性を「C」と考えたときの、第0番、第4番および第7番が「1」であるような和音構成音、つまり、「C」、「E」および「G」を含むことを示す。
また、ユーザ和音配列UChoの第([n−r+12] mod12))番の要素とは以下の意味を有する。([n−r+12] mod12))は、r=0のときには、(n mod12)と一致する。つまり、n=0、1、・・・、11について、([n−r+12] mod12))=0、1、・・・、11となる。r=1のときには、n=0、1、・・・、11について、([n−r+12] mod12))=11、0、1、・・・、10となる。同様に、r=2のときには、n=0、1、・・・、11について、([n−r+12] mod12))=10、11、0、・・・、9となる。
したがって、ユーザ和音配列UCho([n−r+12] mod12)と、Cho[t][n]とを比較するというのは、初期的(r=0)のときには、双方の配列の位置が一致した状態で両者の要素を比較することを意味し、「r」が変化するのにしたがって、ユーザ和音配列UChoをシフトさせ、シフトされた状態で両者の要素を比較することを意味している(図12(b)参照)。
たとえば、r=0であれば、和音配列Cho[t][n](図11(b)の例であれば、和音配列Cho[0][n]:符号1210参照)と、ユーザ和音配列UCho[n](符号1211参照)との間で対応する要素の一致が調べられる。r=1であれば、和音配列Cho[t][n]と、ユーザ和音配列UCho[n]を「1」だけシフトして、右端の要素(符号1213参照)を左端に移動させた(符号1214参照)配列1221との間で対応する要素の一致が調べられる。さらに、r=2であれば、和音配列Cho[t][n]と、ユーザ和音配列UCho[n]を「2」だけシフトして、右側の2つの要素(符号1215,1217参照)をそれぞれ左側に移動させた(符号1216、1218参照)配列1231との間で対応する要素の一致が調べられる。
ステップ1006においてYesと判断された場合には、評価処理部17は、一致度を示す一致カウンタVal[t]をカウントアップする(ステップ1007)。その後、評価処理部17は、配列中の要素の位置を示すパラメータ「n」をインクリメントする(ステップ1008)。
ステップ1005〜ステップ1008において、「r」で特定される調性での、和音配列Cho[t][n]と、当該「r」にしたがってシフトされたユーザ和音配列Uchoとの間での一致度が算出される。ステップ1005でYesと判断された場合には、評価処理部17は、今回のステップ1005〜ステップ1008の処理で得られた一致カウンタVal[t]と、以前のステップ1005〜ステップ1008の処理で得られた一致カウンタの最大値Vmaxとを比較して、Val[t]≧Vmaxであるか否かを判断する(ステップ1009)。今回の処理の一致カウンタVal[t]の値がVmaxより大きければ(ステップ1009でYes)、Vmaxの値をVal[t]の値に書き換える(ステップ1010)。
次いで、評価処理部17は、「r」をインクリメントして(ステップ1011)、インクリメントされた「r」に基づく調性で、和音配列Cho[t][n]と、当該インクリメントされた「r」にしたがってシフトされたユーザ和音配列Uchoとの間での一致度を算出する(ステップ1003〜1011)。
全ての調性について、つまり、r=0〜11のそれぞれについてステップ1004〜1011の処理が終了すると(ステップ1003でYes)、評価処理部17は、保持されていたVmaxの値を一致カウンタVal[t]の値とする(ステップ1012)。つまり、全ての調性について処理した結果、最も大きかった一致カウンタの値が、ある種別の和音と、ユーザ和音配列UChoとの間での一致度を示す値となる。以下、Val[t]を一致度とも称する。その後、次の種別の和音についての処理を実行するために、評価処理部17は、「t」をインクリメントする(ステップ1013)。
次いで、評価処理部17は、リズム種別或いは和音種別のそれぞれについて得られた一致度Val[t]の値を利用して、評価値を算出する。図13は、本実施の形態にかかる評価値算出処理の例を示すフローチャートである。本実施の形態においては、複数の性質の各々についての評価値を算出することとしている。より具体的には、本実施の形態においては、「安定性」、「積極性」および「明るさ」のそれぞれについて評価値を算出する。
図13に示すように、評価処理部17は、上記性質の種別を特定するためのパラメータ「m」を「0」に初期化し(ステップ1301)、全ての種別の性質について処理が終了するまで(ステップ1302参照)、以下のステップ1303〜ステップ1307を繰り返す。
評価処理部17は、リズム種別或いは和音種別を特定するためのパラメータである「t」を「0」に初期化して(ステップ1303)、全ての種別のリズム或いは和音についての処理が終了するまで(ステップ1304)、ステップ1305〜1306を繰り返す。評価処理部17は、パラメータ「m」で特定される種別の性質の評価値G[m]に、評価係数テーブル(図1の符号24参照)の要素R[t][m]と一致度Val[t]との積を加えたものを、新たな評価値G[m]とする(G[m]=G[m]+R[t][m]×Val[t]:ステップ1305)。その後、評価処理部17は、リズム種別或いは和音種別を特定するパラメータ「t」をインクリメントする(ステップ1306)。
以下、第1の実施の形態にかかる評価係数テーブルについて説明する。図14は、出題種別が「リズム」であるときの、評価係数テーブルを示す図である。図14に示すように、評価係数テーブル1400においては、リズム種別ごとに、「安定性」、「積極性」、「明るさ」のそれぞれに対する重み(係数)が格納されている。たとえば、リズム種別「ロック」について、「安定性:60」、「積極性:100」および「明るさ:100」という重みの組を得ることができる(符号1401参照)。他のリズム種別についても同様に、「安定性」、「積極性」、「明るさ」のそれぞれに対する重みの組を得ることができる。
図15は、出題種別が「和音」であるときの、評価係数テーブルを示す図である。図15に示すように、評価係数テーブル1500においては、和音種別ごとに、「安定性」、「積極性」、「明るさ」のそれぞれに対する重み(係数)が格納されている。たとえば、和音種別「major」について、「安定性:100」、「積極性:50」および「明るさ:100」という重みの組を得ることができる(符号1501参照)。他の和音種別についても同様に、「安定性」、「積極性」、「明るさ」のそれぞれに対する重みの組を得ることができる。
つまり、得られる評価値G[m]は、リズム種別或いは和音種別ごとの一致度Val[t]と、リズム種別或いは和音種別ごとの、ある性質に関する重みとの積の総和
G[m]=Σ(R[t][m]×Val[t])
を意味する。
パラメータ[m]で特定されるある性質に関して、全てのリズム種別或いは和音種別で、ステップ1305、1306の処理が終了すれば(ステップ1304でYes)、評価処理部17は、「m」をインクリメントして(ステップ1305)、次の性質に関する評価値G[m]を算出する。
算出された評価値G[m]は、評価結果ファイル27に記憶され、また、描画処理部18によって評価値G[m]を含む画像が生成され、表示装置12の画面上に表示される。
本実施の形態によれば、出題例(出題データ)に基づいて演奏者が押鍵した演奏データ、或いは、出題データおよび演奏データから、リズム種別のそれぞれ、或いは、和音種別のそれぞれについて一致度が算出される。また、各リズム種別或いは各和音種別について、複数の性質のそれぞれの重みを格納した評価係数テーブルが記憶装置中に設けられる。各性質に関して、リズム種別ごとの重みと当該リズム種別についての一致度との積の総和、或いは、和音種別ごとの重みと当該和音種別についての一致度の積の総和を、当該性質についての評価値とする。このようにして、演奏者による演奏に基づいて、その演奏がどのようなリズム或いは和音になっているかを判断して、その判断に基づいて、当該演奏によりわかる演奏者の性質を評価値として得ることができる。また、「補間」モードおよび「応答」モードの2つのモードを選択できることで、演奏者が望む形態で演奏データの入力が可能となる。
また、本実施の形態によれば、演奏者による演奏から、演奏者の表現意図を評価して、評価結果を、性質ごとの評価値として提示する。本実施の形態においては、多次元的な(複数の)性質についての評価値を算出できる。これにより、演奏者に、性質ごとの評価値を意識させ、より活発な表現、活発な思考を引き出すことを可能とする。
さらに、本実施の形態によれば、和音種別の各々について、音名ごとに、当該和音種別ごとに定められた第1の和音構成音を構成するノートの有無を示す和音配列Choと、演奏データ、或いは、演奏データおよび出願データに基づく第2の和音構成音のノートの各々に対応する音名について、ノートの有無を示す値を格納したユーザ和音配列UChoとの間で、配列中の要素を比較して一致度を算出している。2つの配列の要素を比較することで容易に一致度を得ることが可能となる。
さらに、本実施の形態では、ある和音種別について、ユーザ和音配列UChoを調性にしたがってシフトして、シフトされたユーザ和音配列中の要素と、和音配列Choの要素とを比較することで、調性ごとの一致度を算出している。調性ごとの一致度のうち最も値の大きいものを、その和音種別についての一致度とすることができる。このように構成することで、特定の調性に依存しない適切な一致度を得ることができる。
また、本実施の形態によれば、リズム種別の各々について、リズム種別の各々について、所定のタイミング(たとえば8分音符のタイミング)で、リズム種別ごとに定められた第1のリズムパターンを構成するノートの有無を示すリズム配列Rhyと、演奏データ、或いは、演奏データおよび出題データに基づく第2のリズムパターンを構成するノートの発音タイミングに相当する位置に、ノートの有無を示す値を格納するユーザリズム配列URhyとの間で、配列中の要素を比較して一致度を算出している。2つの配列の要素を比較することで容易に一致度を得ることが可能となる。
さらに、前記実施の形態においては、一致度Val[t](ただし、tは和音種別、リズム種別を示すパラメータ)および評価係数テーブル中の係数R[t][m](ただし、tは和音種別、リズム種別を示すパラメータ、mは性質を特定するパラメータ)に基づいて、評価値G[m]を
G[m]=Σ(R[t][m]×Val[t])
に基づいて算出している。したがって、ある性質についての評価値は、重みを与えられた一致度の総和となり、全ての和音種別およびリズム種別の一致度を考慮したものとなる。
次に、本発明の第2の実施の形態について説明する。第1の実施の形態では、リズム或いは和音を出題して、演奏者が、出題にノートを補間し、或いは、出題に応答するようなリズムの音列や和音を演奏していた。第2の実施の形態では、演奏者がメロディ(音程付きの単音の音列)を入力して、演奏されたメロディに基づいて評価値を算出するように構成している。
第2の実施の形態においては、演奏者は、出題例を聴くことなく自由に押鍵操作してメロディを入力することができる。或いは、「応答」モードの下で、メロディの出題例を聴いた上で、所望のメロディを入力するようにしても良い。
第2の実施の形態においても、演奏者の押鍵操作にしたがって、演奏データ生成部15が演奏データを生成して、演奏データファイル23に記憶する。以下、演奏データファイル23に記憶された演奏データを用いた評価処理部17による評価値の算出について説明する。
図16および図17は、第2の実施の形態にかかるメロディ特徴量の算出処理の例を示すフローチャートである。
図16に示すように、評価処理部17は、演奏データを特定するためのパラメータ「n」を初期化する(ステップ1601)。評価処理部17は、演奏データのレコードが終了するまで(ステップ1602でYes)、以下のステップ1603〜1614を実行する。
評価処理部17は、a=(me[n+1]のPit)−(me[n]のPit)を算出する(ステップ1603)。なお、me[n]は、演奏データ中のn番のノートのレコードを示す。ステップ1603で算出される「a」は、処理対象となっているノートとその次のノートとの間の音高差に相当する。
次いで、評価処理部17は、音高差「a」の絶対値|a|を参照して(ステップ1604)、|a|が「0」であれば、評価処理部17は、Val[2]をインクリメントする(ステップ1605)。また、評価処理部17は、|a|が「1」または「2」であればVal[1]をインクリメントし(ステップ1606)、|a|が「3」以上であればVal[0]をインクリメントする(ステップ1607)。
評価処理部17は、b=(me[n+1]のTime)−((me[n]のTime)+(me[n]のGate))を算出する(ステップ1608)。ステップ1608で算出される「b」は、処理対象となるノートが消音してから、次のノートが発音するまでの時間差、つまり、休符の長さに相当する。
評価処理部17は、「b」が分解能「Res」の1/4(本実施の形態では16分音符に相当)より大きい場合には(ステップ1609でYes)、Val[3]をインクリメントする。その後、評価処理部17は、Val[4]に「a」を加えて新たなVal[4]とする(ステップ1611)。
評価処理部17は、配列GCnt[(me[n]のGate/Qunit)]をインクリメントする(ステップ1612)。配列GCnt[k]には、演奏者による演奏データにおいて、所定の音長のノートがそれぞれどのくらいあったかを示すカウント値が格納される。Qunitはノートの音長の単位を決定するためのパラメータであり、Qunit=16分音符とすれば、16符音符がk個分の音長のノートがいくつあったかを示すことができる。
また、評価処理部17は、配列ICnt[|a|]をインクリメントする(ステップ1613)。配列ICnt[|a|]には、連続するノートにおける跳躍の度合いをそれぞれ示すカウント値が格納される。たとえば、ICnt[0]は、同音連打の数を表す。また、ICnt[1]は半音進行の数を示す。
その後、評価処理部17はパラメータnをインクリメントして(ステップ1614)、ステップ1602に戻る。ステップ1602においてYesと判断された場合には、評価処理部は、Val[0]/nを新たにVal[0]に(ステップ1701)、Val[1]/nを新たにVal[1]に(ステップ1702)、Val[2]/nを新たにVal[2]に(ステップ1703)、Val[3]/nを新たにVal[3]に(ステップ1704)、Val[4]/nを新たにVal[4]に更新する(ステップ1705)。ここで「n」はノートの総数であり、それぞれのVal[p]をノートの総数「n」で除算することで、Val[p]は率を表すものとなる。以下、算出されたVal[p]をメロディ特徴量と称する。
さらに、ステップ1612およびステップ1613で得られた配列GCntおよびICntに基づいて、さらに他のメロディ特徴量Val[5]およびVal[6]が算出される。図19に示すように、評価処理部17は、配列の要素を特定するためのパラメータnを初期化し(ステップ1901)、配列GCnt中の全ての要素について(ステップ1902参照)、以下のステップ1903〜1905を実行する。
より詳細には、評価処理部17は、処理対象となるGCnt[n]と、以前の処理において保持されていたGCmaxと比較して、GCmax<GCnt[n]であれば(ステップ1903でYes)、GCnt[n]を新たなGCmaxとする(ステップ1904)。その後、評価処理部17はパラメータ「n」をインクリメントしてステップ1902に戻る。
ステップ1902でYesと判断された場合には、評価処理部17は、パラメータ「n」を再度「0」に初期化する(ステップ1906)。次いで、評価処理部17は、配列ICnt中の全ての要素について(ステップ1907参照)、以下のステップ1908〜1910を実行する。
より詳細には、評価処理部17は、処理対象となるICnt[n]と、以前の処理において保持されていたICmaxとを比較して、ICmax<ICnt[n]であれば(ステップ1908でYes)、ICnt[n]を新たなICmaxとする(ステップ1909)。評価処理部17は、パラメータ「n」をインクリメントして(ステップ1910)、ステップ1907に戻る。
次に、メロディ特徴量Val[p](p=0〜6)についてより詳細に説明する。図18(a)はある演奏データに基づく楽譜の例、図18(b)は当該楽譜についての情報を表として表した図である。
図18(b)に示すように、表1800において、第1音(音名=C)の音長(Gate)が8分音符であり、次のノートとの音高差が、音高「Pit」に基づくと「7」であるため、跳躍進行であることがわかる(符号1801参照)。同様に、第2音(音名=C)の音長が8分音符であり、次のノートとの音高差が、音高「Pit」に基づくと「−3」であるため、同様に跳躍進行であることがわかる(符号1802参照)。このように、隣接するノートとの間でどのように進行するか、或いは、隣接するノートとの間に音符が存在するかなどを調べることができる。
本実施の形態においては、上述した処理で算出した特徴量Val[p](p=0〜6)は、以下のような意味を持つ。
Val[0]:跳躍率
Val[1]:順次進行率
Val[2]:同音連打率
図16のステップ1603〜1606で、隣接するノート間の音高差が算出され、音高差によりVal[0]〜[2]のいずれかがインクリメントされている。その後、値をノーの総数「n」で除すること(符号1701〜1703)により、それぞれの割合を得ることができる。
Val[3]:休符率
休符率は、図16のステップ1608〜1610で求めたものがベースとなっている。
Val[4]:上向度
上向度は、図16のステップ1611に示すように、隣接するノートの間の音高差を符号付きで加算したものを、図17のステップ1705に示すように、ノートの総数「n」で除している。
Val[5]:規則性向(リズム)
規則性向(リズム)は、一番頻度の多い音長を有したノートの数の、ノートの総数「n」に対する割合を示す(図20のステップ2001参照)。
Val[6]:規則性向(音程)
規則性向(音程)は、一番頻度の多い、隣接するノート間の音高差の絶対値の、ノートの総数「n」に対する割合を示す(図20のステップ2002参照)。
ここで、Val[0](跳躍率)、Val[1](順次進行率)、Val[2](同音連打率)およびVal[4](上向度)は、隣接するノート間の音高差に基づく進行のタイプにしたがった第1の特徴量ということができる。Val[3](休符率)は、一定の長さの休符が含まれる割合を示す第2の特徴量ということができる。Val[5](規則性向(リズム)は、前記ノートの音長の種別ごとの偏り具合に基づくリズムの規則性を示す第3の特徴量ということができる。Val[6](規則性向(音程))は、隣接するノートの音高差の偏り具合に基づく音程の規則性を示す第4特徴量ということができる。
本実施の形態においては、第1〜第4の特徴量を算出することで、種々の面から、ユーザの押鍵操作により入力されたメロディの特徴と捕らえることができる。
評価処理部17の処理に戻ると、図20に示すように、評価処理部17は、Val[5]およびVal[6]をノートの総数「n」でそれぞれ除して、これらの特徴量がノート総数「n」に対する割合を表すものとする。
以下のステップ2003〜2009によって、第2の実施の形態において、複数の性質の各々についての評価値を算出している。より具体的には、第2の実施の形態では、「強さ性」、「積極性」、「安定性」、「メッセージ性」および「論理性」のそれぞれについての評価値を算出する。
図20に示すように、評価処理部17は、上記性質の種別を特定するためのパラメータ「m」を「0」に初期化し(ステップ2003)、全ての種別の性質について処理が終了するまで(ステップ2004参照)、以下のステップ2005〜ステップ2009を実行する。
評価処理部17は、特徴量を特定するパラメータ「t」を「0」に初期化して、全ての特徴量についての処理が終了するまで(ステップ2006でYes)、ステップ2007、2008を繰り返す。
評価部17は、パラメータ[m]で特定される種別の性質の評価値Attr[m]に、評価係数テーブルの要素R[t][m]と特徴量Val[t]との積を加えたものを、新たな評価値Attr[m]とする(ステップ2007)。その後、評価処理部17は、特徴量を特定するパラメータ「t」をインクリメントする(ステップ2008)。
以下、第2の実施の形態にかかる評価係数テーブルについて説明する。図21は、第2の実施の形態にかかる評価係数テーブルを示す図である。図21に示すように、評価係数テーブル2100においては、「強さ性」、「積極性」、「安定性」、「メッセージ性」、「論理性」のそれぞれに対する重み(係数)が格納されている。たとえば、跳躍率(Val[0])については、「強さ性:60」、「積極性:20」、「安定性:20」、「メッセージ性:20」および「論理性:20」という重みの組を得ることができる(符号2101参照)。また、順次進行率(Val[1])については、「強さ性:20」、「積極性:30」、「安定性:80」、「メッセージ性:30」および「論理性:50」という重みの組を得ることができる(符号2201参照)。他の特徴量についても同様に、「強さ性」、「積極性」、「安定性」、「メッセージ性」、「論理性」のそれぞれに対する重みの組を得ることができる。
したがって、得られる評価値Attr[m]は、当該特徴量Val[t]と、ある性質に関する重みとの積の総和
Attr[m]=Σ(R[t][m]×Val[t])
を意味する。
パラメータ[m]で特定されるある性質に関して、全ての特徴量で、ステップ2006、2007の処理が終了すれば(ステップ2006でYes)、評価処理部17は、「m」をインクリメントして(ステップ2009)、次の性質に関する評価値Attr[m]を算出する。
算出された評価値Attr[m]は、評価結果ファイル27に記憶され、また、描画処理部18によって評価値Attr[m]を含む画像が生成され、表示装置12の画面上に表示される。
本実施の形態によれば、演奏者が押鍵した演奏データから、メロディ特徴量が算出される。また、各メロディ特徴量について、複数の性質のそれぞれの重みを格納した評価係数テーブルが記憶装置中に設けられ。各性質に関して、メロディ特徴量との積の総和を、当該性質についての評価値とする。このようにして、演奏者による演奏に基づいて、演奏されたメロディの構造を判断して、その判断に基づいて、当該演奏によりわかる演奏者の性質を評価値として得ることができる。
また、本実施の形態によれば、演奏者による演奏から、演奏者の表現意図を評価して、評価結果を、性質ごとの評価値として提示する。本実施の形態においては、多次元的な(複数の)性質についての評価値を算出できる。これにより、演奏者に、性質ごとの評価値を意識させ、より活発な表現、活発な思考を引き出すことを可能とする。
さらに、本実施の形態によれば、Val[5](第3の特徴量)を算出するために、ノートの音長の種別ごとに、ノートの存在数を示すカウント値を格納したリズムカウント配列GCntを生成し、当該リズムカウント配列GCntに格納されたカウント値に基づいて、最もカウント値の大きい音長の割合を、Val[5]として算出している。また、Val[6](第4の特徴量)を算出するために、ノート間の音高差の種別ごとに、その存在数を示すカウント値を格納した音高差カウント配列ICntを生成し、当該音高差カウント配列ICntに格納されたカウント値に基づいて、最もカウント値の大きな音高差の割合を、Val[6]として算出している。このように、このようなリズムおよび音程の規則性向を算出することで、簡単な演算でメロディの傾向を適切に表すことができる。
また、本実施の形態によれば、特徴量Val[t](ただし、tは特徴量を特定するパラメータ)および前記評価係数テーブル中の係数R[t][m](ただし、tは特徴量を特定するパラメータ、mは性質を特定するパラメータ)に基づいて、評価値Attr[m]を
Attr[m]=Σ(R[t][m]×Val[t])
に基づいて算出している。したがって、ある性質についての評価値は、重みを与えられた特徴量の総和となり、全ての種別の特徴量を考慮したものとなる。
本発明は、以上の実施の形態に限定されることなく、特許請求の範囲に記載された発明の範囲内で、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
たとえば、第2の実施の形態においても、「補間」モードによって、一定の音列を出題データとして出力して、その一部に演奏者が押鍵操作して、メロディを補間するような構成として、出題データおよび補間データに基づいて、メロディ特徴量を算出しても良い。
また、演奏者の鍵盤での押鍵操作に基づいて演奏データを生成するだけでなく、他の入力装置(キーボードやタッチパネル)の入力に基づいて演奏データを生成しても良い。
また、第1の実施の形態においては、性質として「安定性」、「積極性」、「明るさ」を採用し、また、第2の実施の形態においては、性質として、「強さ性」、「積極性」、「安定性」、「メッセージ性」および「論理性」を採用している。しかしながら、性質は上述したものに限定されるものではない。
図1は、本発明の実施の形態にかかる演奏評価装置の構成を示すブロックダイヤグラムである。 図2は、本実施の形態にかかる演奏評価装置のハードウェア構成を示すブロックダイヤグラムである。 図3は、本実施の形態にかかる演奏評価装置の一般フローを示すフローチャートである。 図4は、本実施の形態にかかるインタラプトルーチンのフローチャートである。 図5は、本実施の形態にかかる出題データおよび演奏データの構成例を示す図である。 図6は、本実施の形態にかかる評価処理における前処理の例を示すフローチャートである。 図7は、本実施の形態にかかる評価処理における前処理の例を示すフローチャートである。 図8(a)は、図22(b)の出題例、回答例1および回答例2に基づいて生成されたユーザ和音配列UChoの例を示す図、図8(b)は、図22(c)の出題例、回答例1および回答例2に基づいて生成されたユーザリズム配列URhyの例を示す図である。 図9は、本実施の形態にかかる一致度算出処理の例を示すフローチャートである。 図10は、本実施の形態にかかる一致度算出処理の例を示すフローチャートである。 図11(a)は、リズム配列Rhy[t][n]を説明する図、図11(b)、(c)は、一致度の算出をより具体的に説明する図である。 図12(a)は、和音配列Cho[t][n]を説明する図、図12(bは、一致度の算出をより具体的に説明する図である。 図13は、本実施の形態にかかる評価値算出処理の例を示すフローチャートである。 図14は、出題種別が「リズム」であるときの、評価係数テーブルを示す図である。 図15は、出題種別が「和音」であるときの、評価係数テーブルを示す図である。 図16は、第2の実施の形態にかかるメロディ特徴量の算出処理の例を示すフローチャートである。 図17は、第2の実施の形態にかかるメロディ特徴量の算出処理の例を示すフローチャートである。 図18(a)はある演奏データに基づく楽譜の例、図18(b)は当該楽譜についての情報を表として表した図である。 図19は、本実施の形態にかかるメロディ特徴量の算出処理の例を示すフローチャートである。 図20は、本実施の形態にかかるメロディ特徴量算出処理の続きおよび評価値の算出処理の例を示すフローチャートである。 図21は、第2の実施の形態にかかる評価係数テーブルを示す図である。 図22(a)〜(c)は、メロディ、和音、リズムについて、「補間」モードにおける出題例と、それに対する2つの回答例とを示す図である。 図23(a)〜(c)は、メロディ、和音、リズムについて、「応答」モードにおける出題例と、それに対する2つの回答例とを示す図である。
符号の説明
10 演奏評価装置
11 入力装置
12 表示装置
13 再生処理部
14 出題データ生成部
15 演奏データ生成部
16 記憶装置
17 評価処理部
18 描画処理部
21 出題データファイル
22 出題パラメータファイル
23 演奏データファイル
24 評価係数テーブル
25 和音構成音DB
26 リズムパターンDB
27 評価結果ファイル

Claims (12)

  1. 演奏者に提示すべき出題データであって、和音種別毎に和音構成音それぞれのノートを格納した出題データファイル、および、当該和音種別毎に、複数種の性質のそれぞれに対応する係数を格納した評価係数テーブルを記憶した記憶装置と、
    前記演奏者により順次入力された和音構成音それぞれのノートを格納した演奏データファイルを生成して、前記記憶装置に記憶する演奏データ生成手段と、
    前記演奏データファイルに格納されている和音構成音毎に、当該各和音構成音と前記出題データファイルに格納されている和音種別毎の和音構成音との一致度を算出する一致度算出手段と、
    前記演奏データファイルに格納されている和音構成音毎に、前記複数種の性質に対応する係数のそれぞれと前記和音種別毎の一致度とに基づいて、前記性質毎の評価値を算出する評価値算出手段と、
    前記算出された前記和音構成音毎の評価値を、同一の性質毎に累算する累算手段と、
    を備えたことを特徴とする演奏評価システム。
  2. 前記記憶装置が、和音種別の各々について、音名毎に和音構成音のノートの有無を示す和音配列を含む和音構成音データベースを記憶し、
    前記一致度算出手段が、前記音名毎にノートの有無を示すユーザ和音配列を生成し、当該生成されたユーザ和音配列において、前記演奏データファイルに基づく和音構成音のノートの各々に対応する音名について、ノートの有無を示す値を格納するとともに、前記ユーザ和音配列と、前記和音構成音データベース中の前記和音配列とを比較することにより、前記一致度を算出することを特徴とする請求項1に記載の演奏評価システム。
  3. 前記一致度算出手段が、全ての調性について、前記ユーザ和音配列と、前記和音配列とを比較することにより、和音種別毎の一致度を算出するように構成されたことを特徴とする請求項2に記載の演奏評価システム。
  4. 演奏者に提示すべき出題データであって、それぞれが、発音すべきリズムの発音開始時刻、および、次に発音すべきノートへのポインタからなるリズムパターンを複数種格納した出題データファイル、および、リズム種別毎に、複数種の所定の性質のそれぞれについての係数を格納した評価係数テーブルを記憶した記憶装置と、
    前記演奏者により入力されたリズムの発音開始時刻、および、次に発音すべきノートのポインタからなるリズムパターンを格納した演奏データファイルを生成して、前記記憶装置に記憶する演奏データ生成手段と、
    前記演奏データファイルに格納されているリズムパターン毎に、当該各リズムパターンと、前記出題データファイルに格納されているリズム種別毎のリズムパターンとの一致度を算出する一致度算出手段と、
    前記演奏データファイルに格納されているリズムパターン毎に、前記複数種の性質それぞれに対応する係数と前記リズム種別毎の一致度とに基づいて、前記性質毎の評価値を算出する評価値算出手段と、
    前記算出された前記リズムパターン毎の評価値を、同一の性質毎に累算する累算手段と、
    を備えたことを特徴とする演奏評価システム。
  5. 前記記憶装置が、リズム種別の各々について、所定のタイミング毎にリズムパターンを構成するノートの有無を示すリズム配列を含むリズムパターンデータベースを記憶し、
    前記一致度算出手段が、前記所定のタイミング毎のノートの有無を示すユーザリズム配列を生成し、当該生成されたユーザリズム配列において、前記演奏データファイルに基づくリズムパターンを構成するノートの発音タイミングに相当する位置に、ノートの有無を示す値を格納するとともに、前記ユーザリズム配列と、前記リズムパターンデータベース中の前記リズム配列とを比較することにより、前記一致度を算出することを特徴とする請求項4に記載の演奏評価システム。
  6. 演奏者からの入力にしたがって、補間モード或いは応答モードの何れかを選択し、前記補間モードの下で、前記一致度算出手段が、前記演奏データファイルおよび前記出題データに基づいて前記一致度を算出し、前記応答モードの下で、前記一致度算出手段が、前記演奏データファイルに基づいて前記一致度を算出することを特徴とする請求項1ないし4のいずれかに記載の演奏評価システム。
  7. 演奏者に提示すべき出題データであって、和音種別毎に和音構成音それぞれのノートを格納した出題データファイル、および、当該和音種別毎に、複数種の性質のそれぞれに対応する係数を格納した評価係数テーブルを記憶した記憶装置を備えたコンピュータにおいて、前記コンピュータに、
    前記演奏者により順次入力された和音構成音それぞれのノートを格納した演奏データファイルを生成して、前記記憶装置に記憶する演奏データ生成ステップと、
    前記演奏データファイルに格納されている和音構成音毎に、当該各和音構成音と前記出題データファイルに格納されている和音種別毎の和音構成音との一致度を算出する一致度算出ステップと、
    前記演奏データファイルに格納されている和音構成音毎に、前記複数種の性質に対応する係数のそれぞれと前記和音種別毎の一致度とに基づいて、前記性質毎の評価値を算出する評価値算出ステップと、
    前記算出された前記和音構成音毎の評価値を、同一の性質毎に累算する累算ステップと、
    を実行させることを特徴とする演奏評価プログラム。
  8. 前記記憶装置が、和音種別の各々について、音名毎に和音構成音のノートの有無を示す和音配列を含む和音構成音データベースを記憶し、
    前記一致度算出ステップにおいて、前記コンピュータに、(改行に変更)
    前記音名毎にノートの有無を示すユーザ和音配列を生成し、当該生成されたユーザ和音配列において、前記演奏データファイルに基づく和音構成音のノートの各々に対応する音名について、ノートの有無を示す値を格納するステップと、
    前記ユーザ和音配列と、前記和音構成音データベース中の前記和音配列とを比較することにより、前記一致度を算出するステップと、を実行させることを特徴とする請求項7に記載の演奏評価プログラム。
  9. 前記一致度算出ステップにおいて、前記コンピュータに、
    全ての調性について、前記ユーザ和音配列と、前記和音配列とを比較することにより、和音種別毎の一致度を算出するステップを実行させることを特徴とする請求項8に記載の演奏評価プログラム。
  10. 演奏者に提示すべき出題データであって、それぞれが、発音すべきリズムの発音開始時刻、および、次に発音すべきノートへのポインタからなるリズムパターンを複数種格納した出題データファイル、および、リズム種別毎に、複数種の所定の性質のそれぞれについての係数を格納した評価係数テーブルを記憶した記憶装置を備えたコンピュータにおいて、前記コンピュータに、
    前記演奏者により入力されたリズムの発音開始時刻、および、次に発音すべきノートのポインタからなるリズムパターンを格納した演奏データファイルを生成して、前記記憶装置に記憶する演奏データ生成ステップと、
    前記演奏データファイルに格納されているリズムパターン毎に、当該各リズムパターンと、前記出題データファイルに格納されているリズム種別毎のリズムパターンとの一致度を算出する一致度算出ステップと、
    前記演奏データファイルに格納されているリズムパターン毎に、前記複数種の性質それぞれに対応する係数と前記リズム種別毎の一致度とに基づいて、前記性質毎の評価値を算出する評価値算出ステップと、
    前記算出された前記リズムパターン毎の評価値を、同一の性質毎に累算する累算ステップと、
    を実行させることを特徴とする演奏評価プログラム。
  11. 前記記憶装置が、リズム種別の各々について、所定のタイミング毎にリズムパターンを構成するノートの有無を示すリズム配列を含むリズムパターンデータベースを記憶し、
    前記一致度算出ステップにおいて、前記コンピュータに、
    前記所定のタイミング毎のノートの有無を示すユーザリズム配列を生成し、当該生成されたユーザリズム配列において、前記演奏データファイルに基づくリズムパターンを構成するノートの発音タイミングに相当する位置に、ノートの有無を示す値を格納するステップと、
    前記ユーザリズム配列と、前記リズムパターンデータベース中の前記リズム配列とを比較することにより、前記一致度を算出するステップと、を実行させることを特徴とする請求項10に記載の演奏評価プログラム。
  12. 演奏者からの入力にしたがって、補間モード或いは応答モードの何れかを選択するステップを備え、
    前記補間モードの下で、前記一致度算出ステップにおいて、前記コンピュータに、
    前記演奏データファイルおよび前記出題データに基づいて前記一致度を算出するステップを実行させ、
    前記応答モードの下で、前記一致度算出ステップにおいて、前記コンピュータに、
    前記演奏データファイルに基づいて前記一致度を算出するステップを実行させることを特徴とする請求項7または11の何れか一項に記載の演奏評価プログラム。
JP2007083447A 2007-03-28 2007-03-28 演奏評価システムおよび演奏評価プログラム Active JP5119708B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007083447A JP5119708B2 (ja) 2007-03-28 2007-03-28 演奏評価システムおよび演奏評価プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007083447A JP5119708B2 (ja) 2007-03-28 2007-03-28 演奏評価システムおよび演奏評価プログラム

Publications (2)

Publication Number Publication Date
JP2008242129A JP2008242129A (ja) 2008-10-09
JP5119708B2 true JP5119708B2 (ja) 2013-01-16

Family

ID=39913569

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007083447A Active JP5119708B2 (ja) 2007-03-28 2007-03-28 演奏評価システムおよび演奏評価プログラム

Country Status (1)

Country Link
JP (1) JP5119708B2 (ja)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3997671B2 (ja) * 1999-11-08 2007-10-24 ヤマハ株式会社 電子楽器および演奏カロリー消費量測定装置
JP4140887B2 (ja) * 2002-09-19 2008-08-27 株式会社河合楽器製作所 演奏判定装置
JP2005049628A (ja) * 2003-07-29 2005-02-24 Casio Comput Co Ltd 音楽教習装置および音楽教習プログラム
JP4361327B2 (ja) * 2003-08-04 2009-11-11 株式会社河合楽器製作所 電子楽器の演奏評価装置
JP4497513B2 (ja) * 2003-09-04 2010-07-07 株式会社河合楽器製作所 コード練習装置
JP2006030414A (ja) * 2004-07-13 2006-02-02 Yamaha Corp 音色設定装置及びプログラム

Also Published As

Publication number Publication date
JP2008242129A (ja) 2008-10-09

Similar Documents

Publication Publication Date Title
JP5147389B2 (ja) 楽曲提示装置、楽曲提示プログラム、楽曲提示システム、楽曲提示方法
US8492637B2 (en) Information processing apparatus, musical composition section extracting method, and program
US20160253915A1 (en) Music instruction system
US8106281B2 (en) Music difficulty level calculating apparatus and music difficulty level calculating method
US20140041511A1 (en) System and method for providing exercise in playing a music instrument
JP5799966B2 (ja) 採点装置及びプログラム
EP1340219A1 (en) Method for analyzing music using sounds of instruments
US9613542B2 (en) Sound source evaluation method, performance information analysis method and recording medium used therein, and sound source evaluation apparatus using same
US7705229B2 (en) Method, apparatus and programs for teaching and composing music
JP4479701B2 (ja) 楽曲練習支援装置、動的時間整合モジュールおよびプログラム
JP5196550B2 (ja) コード検出装置およびコード検出プログラム
US9620093B2 (en) Simple music—next generation keyboard
JP5071441B2 (ja) 楽曲難易度評価装置および楽曲難易度評価プログラム
JP5346114B1 (ja) 音楽表現力の教育装置及び方法並びに音楽演奏評価装置
JP5119708B2 (ja) 演奏評価システムおよび演奏評価プログラム
JP5119709B2 (ja) 演奏評価システムおよび演奏評価プログラム
JPH09237088A (ja) 演奏分析装置、演奏分析方法、及び、記憶媒体
JP3623557B2 (ja) 自動作曲システムおよび自動作曲方法
JP5050606B2 (ja) 能力評価システムおよび能力評価プログラム
JP2008040260A (ja) 楽曲練習支援装置、動的時間整合モジュールおよびプログラム
JP4618704B2 (ja) コード練習装置
JP2002323891A (ja) 楽曲分析装置、及びプログラム
JP5272899B2 (ja) 楽曲難易度算出装置および楽曲難易度算出プログラム
WO2022215250A1 (ja) 選曲装置、モデル作成装置、プログラム、選曲方法、およびモデル作成方法
WO2022202199A1 (ja) コード推定装置、訓練装置、コード推定方法および訓練方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100315

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120403

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120529

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120626

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120802

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120925

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121008

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151102

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5119708

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150