(57)【要約】   【課題】  クロストークの影響を受けずに適切に、弦楽器のピッチを抽出する。  【解決手段】  弦の少なくとも部分における、弦の張設方向の垂直方向における、弦の位置を示す画像データを取得する画像センサ１６を有する。ＣＰＵ１１は、得られた画像データに含まれる弦の垂直方向の位置と、画像データが得られた時刻とを関連付けた波形データを生成し、当該波形データを記憶装置の波形データエリアに格納し、波形データエリアに格納された波形データにおいて、弦の垂直方向の初期位置を原点として、波形データのゼロクロス点を算出し、その時間間隔に基づいて、弦が発する楽音のピッチを検出する。【選択図】  図１
2010191153.tif 000002
【特許請求の範囲】
【請求項１】
弦楽器の弦の振動に基づき、当該弦が発する楽音のピッチを抽出するピッチ抽出装置であって、
前記弦の少なくとも部分における、弦の張設方向の垂直方向における、前記弦の位置を示す画像データを取得する画像取得手段と、
前記画像取得手段により得られた画像データに含まれる弦の垂直方向の位置と、前記画像データが得られた時刻とを関連付けた波形データを生成し、当該波形データを記憶装置の波形データエリアに格納する波形データ生成手段と、
前記記憶装置の波形データエリアに格納された波形データにおいて、前記弦の垂直方向の初期位置を原点として、前記波形データのゼロクロス点を算出し、当該ゼロクロス点の時間間隔に基づいて、前記弦が発する楽音のピッチを検出するピッチ検出手段と、を備えたことを特徴とするピッチ抽出装置。
【請求項２】
前記画像取得手段が、前記弦の張設方向に所定の範囲の画像データを取得し、
前記波形データ生成手段が、前記弦の垂直方向の初期位置を原点として、前記原点からの変位が最大であるような弦の垂直方向の位置を特定し、当該特定された垂直方向の位置に対応する、前記張設方向の位置において、弦の垂直方向の位置と、前記画像データが得られた時刻とを関連付けた波形データを生成するように構成されたことを特徴とする請求項１に記載のピッチ抽出装置。
【請求項３】
前記記憶装置が、所定の音色の波形データが格納された音色波形データエリアを有し、
請求項１または２に記載のピッチ抽出装置と、
前記ピッチ抽出装置により抽出されたピッチに基づいて、前記音色波形データエリアの前記所定の音色の波形データを読み出し、当該抽出されたピッチの第１の楽音波形データを生成する楽音波形データ生成手段を備えたことを特徴とする楽音発生装置。
【請求項４】
前記楽音波形データ生成手段が、前記波形データエリアに格納された波形データを、第２の楽音波形データとして読み出し、前記第１の楽音波形データと、前記第２の楽音波形データとを合成して出力することを特徴とする請求項３に記載の楽音発生装置。
【請求項５】
弦楽器の弦の振動に基づく楽音波形データを生成する楽音発生装置であって、
前記弦の少なくとも部分における、弦の張設方向の垂直方向における、前記弦の位置を示す画像データを取得する画像取得手段と、
前記画像取得手段により得られた画像データに含まれる弦の垂直方向の位置と、前記画像データが得られた時刻とを関連付けた波形データを生成し、当該波形データを記憶装置の波形データエリアに格納する波形データ生成手段と、
前記波形データエリアに格納された波形データを、楽音波形データとして読み出して、出力する楽音波形データ生成手段と、を備えたことを特徴とする楽音発生装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、弦楽器のピッチを抽出するピッチ抽出装置および楽音発生装置に関する。
【背景技術】
【０００２】
ギターなどの弦楽器から出力された楽音信号に基づくデータから、そのピッチを抽出し、抽出されたピッチに基づいて出力用の波形データを生成して出力する技術が知られている。たとえば、特許文献１や特許文献２では、ギターの６つの弦から発せられた楽音波形データのそれぞれのピッチ（音高）およびエンベロープを抽出して、ＲＯＭなどから所定の音色の楽音波形データを、抽出されたピッチに基づいて読み出し、抽出されたエンベロープを与えて新たな楽音波形データを生成している。また、特許文献３においては、マイクから入力された音声に基づいてピッチが抽出されている。
【０００３】
特許文献１では、入力された波形データにフィルタ処理を施し、フィルタ処理が施された波形データのゼロクロス点を検出し、波形データが正の値をとる時間をカウンタにて計測するとともに、波形データが負の値をとる時間を他のカウンタにて計測し、双方のカウンタ値を参照して弦の基本波の振動を検知し、波形データのピッチを抽出している。また、特許文献３においては、負から正に変化するゼロクロス点の時間間隔を測定するとともに、正から負に変換するゼロクロス点の時間間隔を測定し、その時間間隔が安定した時点で、当該時間間隔からピッチを決定している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開昭６３−２９８３９６
【特許文献２】特開平９−６３５１号公報
【特許文献３】特開平６−９５６６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特に、弦楽器では、ピッキングされた各弦の振動を、たとえば、ピックアップが磁気の変動として検出し、電気信号に変換して出力している。したがって、従来のピッチ抽出においては、ピックアップにより得られた電気信号をディジタルデータに変換し、変換されたデータが用いられている。したがって、複数の弦がピッキングされ複数の弦が振動している場合には、他の弦の振動による磁気の変動の影響を排除で傷、ピックアップにより電気信号に変換する過程で、他の弦振動に基づく信号が混合されてしまうおそれがある。このようなクロストークによって、ピックアップからの電気信号に基づくピッチ抽出においては、正確なピッチが算出されない可能性があった。また、クロストークの影響により、ピックアップが検出した電気信号における波形データの周期が安定せず、ピッチ抽出に時間がかかる場合があるという問題点があった。
【０００６】
本発明は、クロストークの影響を受けずに適切に、弦楽器のピッチを抽出することが可能なピッチ抽出装置を提供することを目的とする。また、本発明は、弦楽器の振動に基づく楽音波形データを生成可能な楽音発生装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の目的は、弦楽器の弦の振動に基づき、当該弦が発する楽音のピッチを抽出するピッチ抽出装置であって、
前記弦の少なくとも部分における、弦の張設方向の垂直方向における、前記弦の位置を示す画像データを取得する画像取得手段と、
前記画像取得手段により得られた画像データに含まれる弦の垂直方向の位置と、前記画像データが得られた時刻とを関連付けた波形データを生成し、当該波形データを記憶装置の波形データエリアに格納する波形データ生成手段と、
前記記憶装置の波形データエリアに格納された波形データにおいて、前記弦の垂直方向の初期位置を原点として、前記波形データのゼロクロス点を算出し、当該ゼロクロス点の時間間隔に基づいて、前記弦が発する楽音のピッチを検出するピッチ検出手段と、を備えたことを特徴とするピッチ抽出装置により達成される。
【０００８】
好ましい実施態様においては、前記画像取得手段が、前記弦の張設方向に所定の範囲の画像データを取得し、
前記波形データ生成手段が、前記弦の垂直方向の初期位置を原点として、前記原点からの変位が最大であるような弦の垂直方向の位置を特定し、当該特定された垂直方向の位置に対応する、前記張設方向の位置において、弦の垂直方向の位置と、前記画像データが得られた時刻とを関連付けた波形データを生成する。
【０００９】
また、本発明の目的は、前記記憶装置が、所定の音色の波形データが格納された音色波形データエリアを有し、
上記ピッチ抽出装置と、
前記ピッチ抽出装置により抽出されたピッチに基づいて、前記音色波形データエリアの前記所定の音色の波形データを読み出し、当該抽出されたピッチの第１の楽音波形データを生成する楽音波形データ生成手段を備えたことを特徴とする楽音発生装置により達成される。
【００１０】
別の好ましい実施態様においては、前記楽音波形データ生成手段が、前記波形データエリアに格納された波形データを、第２の楽音波形データとして読み出し、前記第１の楽音波形データと、前記第２の楽音波形データとを合成して出力する。
【００１１】
また、本発明の目的は、弦楽器の弦の振動に基づく楽音波形データを生成する楽音発生装置であって、
前記弦の少なくとも部分における、弦の張設方向の垂直方向における、前記弦の位置を示す画像データを取得する画像取得手段と、
前記画像取得手段により得られた画像データに含まれる弦の垂直方向の位置と、前記画像データが得られた時刻とを関連付けた波形データを生成し、当該波形データを記憶装置の波形データエリアに格納する波形データ生成手段と、
前記波形データエリアに格納された波形データを、楽音波形データとして読み出して、出力する楽音波形データ生成手段と、を備えたことを特徴とする楽音発生装置により達成される。
【発明の効果】
【００１２】
本発明によれば、クロストークの影響を受けずに適切に、弦楽器のピッチを抽出することが可能なピッチ抽出装置を提供することが可能となる。また、本発明によれば、弦楽器の振動に基づく楽音波形データを生成可能な楽音発生装置を提供することが可能となる。
【図面の簡単な説明】
【００１３】
【図１】図１は、本発明の第１の実施の形態にかかる楽音発生装置の構成を示すブロックダイヤグラムである。
【図２】図２は、本実施の形態におけるギターの弦および画像センサの配置例を説明する図である。
【図３】図３は、本実施の形態にかかる楽音発生装置にて実行される処理を示すフローチャートである。
【図４】図４は、本実施の形態にかかる入力波形記憶処理の例を示すフローチャートである。
【図５】図５（ａ）、（ｂ）は、センサ領域における画像データの例を説明する図である。
【図６】図６は、波形データ生成処理により得られた、第１弦についての波形データの例を示す図である。
【図７】図７は、本実施の形態にかかる発音処理の例を示すフローチャートである。
【図８】図８は、本実施の形態にかかる消音処理の例を示すフローチャートである。
【図９】図９は、第２の実施の形態にかかる波形データ生成処理の例を示すフローチャートである。
【図１０】図１０は、第２の実施の形態におけるセンサ領域における画像データの例を説明する図である。
【図１１】図１１は、本発明の第３の実施の形態にかかるセンサの配置を説明する図である。
【図１２】図１２は、第３の実施の形態にかかる波形データ生成処理の部分の例を示すフローチャートである。
【図１３】図１３は、第３の実施の形態にかかるピーク点の検出の例を示す図である。
【発明を実施するための形態】
【００１４】
以下、添付図面を参照して、本発明の実施の形態について説明する。図１は、本発明の第１の実施の形態にかかる楽音発生装置の構成を示すブロックダイヤグラムである。図１に示すように、本実施の形態にかかる楽音発生装置１０は、ＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３、サウンドシステム１４、表示部１５、画像センサ１６、画像データ入力インタフェース（Ｉ／Ｆ）１７および操作部１８を備える。
【００１５】
ＣＰＵ１１は、楽音発生装置１０全体の制御、操作部１８を構成するスイッチ（図示せず）の操作の検出、画像センサ１６の起動、画像データ入力Ｉ／Ｆ１７を介して入力された画像データのＲＡＭ１３への格納、画像データに基づく波形データ生成など、種々の処理を実行する。
【００１６】
ＲＯＭ１２は、操作部１８を構成するスイッチの操作の検出、画像データ入力Ｉ／Ｆ１７を介して入力された画像データのＲＡＭ１３への格納、画像データに基づく波形データ生成などの処理プログラムを格納する。また、ＲＯＭ１２は、ピアノ、ギターなどの楽音を生成するための原波形データ（以下、「プリセット波形データ」と称する。）を記憶するプリセット波形データエリアを備えている
ＲＡＭ１３は、ＲＯＭ１２から読み出されたプログラムや、処理の過程で生じたデータを記憶する。処理の過程で生じたデータには、後述する画像データ入力Ｉ／Ｆ１７を介して得られた画像データ、画像データに基づいて生成される波形データ、波形データに基づいて算出されるピッチデータなどが含まれる。
【００１７】
サウンドシステム１４は、音源部２１、オーディオ回路２２およびスピーカ２３を備える。音源部２１は、ＣＰＵ１１からの指示にしたがって、ＲＯＭ１２からプリセット波形データを読み出して、楽音波形データを生成して出力する。また、後述するＲＡＭ１３の波形データエリアに格納された波形データを読み出して、楽音波形データを生成する。オーディオ回路２２は、楽音波形データをアナログ信号に変換し、変換されたアナログ信号を増幅してスピーカ２３に出力する。これによりスピーカ２３から音響信号が出力される。
【００１８】
画像データ入力Ｉ／Ｆ１７は、画像センサ１６に接続され、画像センサ１６から出力される画像データを受け入れて、ＣＰＵ１１の指示にしたがって、画像データをＲＡＭ１３の所定の画像データエリアに格納する。画像センサ１６は、ギター２５の弦に面して配置され、各弦の画像を得ることが可能となる。
【００１９】
図２は、本実施の形態におけるギターの弦および画像センサの配置例を説明する図である。図２に示すように、画像センサ１６は、６つのセンサ領域３０−１〜３０−６を有し、それぞれのセンサ領域３０−１〜３０−６が、ギターの第１弦２６−１〜第６弦２６−６を含む画像を取得することができる。画像センサ１６として、たとえば、ＣＣＤ画像センサ(Charge Coupled Device Image Sensor)を使用することができる。本実施の形態においては、画像センサ１６は、弦の張設方向のサイズは小さく、弦を点として認識できれば良い。その一方、各センサ領域は、当該張設方向の垂直方向には、弦の振動しているときにその位置を、たとえば、黒点として捉えられるようなサイズを有する。
【００２０】
図３は、本実施の形態にかかる楽音発生装置１０にて実行される処理を示すフローチャートである。楽音発生装置１０のＣＰＵ１１は、たとえば、ＲＡＭ１３に一時的に記憶された画像データ、波形生成処理により得られる波形データ、波形データを特定するためのパラメータ、タイマ値のクリアなどを含むイニシャライズ処理を行う（ステップ３０１）。イニシャライズ処理（ステップ２０１）が終了すると、ＣＰＵ１１は、操作部１８のスイッチの操作を検出し、検出された操作にしたがった処理を実行するスイッチ処理を実行する（ステップ３０２）。
【００２１】
スイッチ処理においては、たとえば、音色指定スイッチの操作にしたがって、ＲＯＭ１２のプリセット波形データエリアに格納されたプリセット波形データを指定する情報がＲＡＭ１３に格納される。また、ミックス比設定のスイッチにしたがって、プリセット波形データに基づく楽音波形データ（第１の楽音波形データ）と、画像データから得られた波形データに基づいて生成される楽音波形データ（第２の楽音波形データ）とのミックス比を示す情報がＲＡＭ１３に格納される。
【００２２】
スイッチ処理（ステップ３０２）の後、ＣＰＵ１１は、画像データ生成処理を実行する（ステップ３０３）。画像データ生成処理においては、画像センサ１６が出力した、センサ領域ごとの画像を、画像データ入力Ｉ／Ｆ１７が受け入れて二値化して、センサ領域ごとの画像データとして、ＲＡＭ１３の画像データエリアに格納する。これにより、センサ領域３０−１〜３０−６のそれぞれについての画像データＩｍ（ｉ）（ｉ＝１〜６）がＲＡＭの画像データエリアに格納される。なお、本実施の形態においては、画像データにおいて、弦は黒色を示す値として得られ、弦の位置しない他の部分は白色を示す値となる。
【００２３】
画像データ生成処理（ステップ３０２）の後、ＣＰＵ１１は、波形データ生成処理を実行する（ステップ３０４）。図４は、本実施の形態にかかる波形データ生成処理の例を示すフローチャートである。
【００２４】
図４に示すように、ＣＰＵ１１は、弦や画像データエリアを特定するためのパラメータｉを「１」に初期化し（ステップ４０１）、また、ＣＰＵ１１は、タイマ値ｔを取得する（ステップ４０２）。次いで、ＣＰＵ１１は、画像データに関連付ける時刻ｔｉｊをｔとして（ステップ４０３）、第ｉ弦に関する画像データＩｍ（ｉ）中の黒点の位置に相当する座標値を算出する。図５は、あるセンサ領域における画像データの例を説明する図である。図５（ａ）の例では、黒点は、ｙ（ｎ）およびｙ（ｎ＋１）に現れている。この場合には、たとえば、ＣＰＵ１１は、黒点を示す座標値、つまり、弦の座標値として、平均値（（ｙ（ｎ）＋ｙ（ｎ＋１））／２）を算出する。
【００２５】
次いで、ＣＰＵ１１は、処理回数を示すパラメータｊが「０」、つまり、最初の処理であるか否かを判断する（ステップ４０５）。ステップ４０５でＹｅｓと判断された場合には、ＣＰＵ１１は、時刻ｔｉｊにおける座標値を、ＲＡＭ１３の波形データエリアに格納する（ステップ４０６）。ステップ４０５でＮｏと判断された場合には、ＣＰＵ１１は、波形データエリアに先に格納された座標値と、今回取得された座標値とを比較して、座標値に変化があったか否かを判断する（ステップ４０７）。ステップ４０７でＹｅｓと判断された場合にも、ＣＰＵ１１は、時刻ｔｉｊにおける座標値を、ＲＡＭ１３の波形データエリアに格納する（ステップ４０６）。たとえば、弦が演奏者により弾かれると、弦は振動するため、センサ領域３０においては、弦は上下動する。図５（ｂ）の例では、座標値は（（ｙ（ｍ−１）＋ｙ（ｍ））／２）であり、図５（ａ）から変化している。このような場合に、ステップ４０７においてＹｅｓと判断される。
【００２６】
ステップ４０６の後、或いは、ステップ４０７でＮｏと判断された場合に、ＣＰＵ１１は、パラメータｉが「６」、すなわち、全ての画像データエリアについての処理が終了したか否かを判断する（ステップ４０８）。ステップ４０８でＮｏと判断された場合には、ＣＰＵ１１は、パラメータｉをインクリメントして（ステップ４０９）、ステップ４０３に戻る。その一方、ステップ４０８でＹｅｓと判断された場合には、ＣＰＵ１１は、パラメータｊをインクリメントして（ステップ４１０）、処理を終了する。
【００２７】
図６は、波形データ生成処理により得られた、第１弦についての波形データの例を示す図である。この例では、初期的には（時刻ｔ１０においては）、座標値はｙ（ｔ０）である。そこで、第１弦についての波形データエリア（符号６１０参照）に、時刻ｔ１０に関連付けられて座標値ｙ（ｔ０）が格納される（符号６１１参照）。その後、座標値が変化することで、たとえば、時刻ｔ１１では、座標値ｙ（ｔ１）となり、波形データエリアに、時刻ｔ１１に関連付けられて座標値ｙ（ｔ１）が格納される（符号６１２参照）。
【００２８】
このように、弦振動による所定の時刻ごとの弦の変位は、図６に示すような周期的なグラフ（符号６００参照）になる。図６の例では、時刻ｔ１０から時刻ｔ１ｒの間の時間間隔（ｔ１ｒ−ｔ１０）を波形の周期と考えることができる。
【００２９】
波形データ生成処理（ステップ３０４）の後、ＣＰＵ１１は、発音処理を実行する（ステップ３０５）。図７は、本実施の形態にかかる発音処理の例を示すフローチャートである。図７に示すように、ＣＰＵ１１は、弦や画像データエリアを特定するためのパラメータｉを「１」に初期化する（ステップ７０１）。次いで、ＣＰＵ１１は、第ｉ弦の出力レベルが所定以上であるか否かを判断する（ステップ７０２）。ステップ７０２においては、たとえば、波形データエリアに格納された第ｉ弦の波形データの所定期間（たとえば、１周期）における振幅が所定のレベル以上であるか否かを判断すれば良い。或いは、ギター２５のピックアップ（図示せず）から出力される第ｉ弦の信号（原信号）が所定のレベル以上であるか否かを判断しても良い。
【００３０】
ステップ７０２でＹｅｓと判断された場合には、ＣＰＵ１１は、第ｉ弦の波形データエリアから波形データを読み出し（ステップ７０３）、波形データに基づいてピッチ抽出を実行する（ステップ７０４）。ピッチ抽出（ステップ７０４）においては、たとえば、以下のような処理が行なわれる。ＣＰＵ１１は、最新の波形データの値（座標値）から過去の波形データの値（座標値）を遡り、ゼロクロス点を検出し、図６に示すように、ゼロクロス点の間隔を演算し、当該間隔に基づいてピッチを算出すれば良い。或いは、特許文献１に記載されたように、入力された波形データにフィルタ処理を施し、フィルタ処理が施された波形データのゼロクロス点を検出し、波形データが正の値をとる時間をカウンタにて計測するとともに、波形データが負の値をとる時間を他のカウンタにて計測し、双方のカウンタ値を参照して弦の基本波の振動を検知し、これにより入力波形データのピッチを抽出しても良い。或いは、特許文献３に記載されたように、負から正に変化するゼロクロス点の時間間隔を測定するとともに、正から負に変換するゼロクロス点の時間間隔を測定し、その時間間隔が安定した時点で、当該時間間隔からピッチを決定しても良い。なお、本実施の形態において、ゼロクロス点、つまり、原点は、座標値の初期値(たとえば、図６のｙ（ｔ０）)とすれば良い。
【００３１】
次いで、ＣＰＵ１１は、音源部２１に対して、所定の音色のプリセット波形データを、算出されたピッチで読み出すように指示を与える。音源部２１は、指示にしたがって、所定のプリセット波形データを、与えられたピッチで読み出す（ステップ７０５）。音源部２１は、読み出されたプリセット波形データに対して、エンベロープにしたがった値を乗算して第１の楽音波形データを生成して出力する（ステップ７０６）。
【００３２】
また、ＣＰＵ１１は、ＲＡＭ１３の波形データエリアに格納された波形データに基づく楽音波形データを生成するように音源部２１に指示を与える。音源部２１は、波形データエリアから現在時刻ｔに対応する座標値ｙ（ｔ）に基づいて、波高値を算出し、かつ、当該波高値にエンベロープにしたがった値を乗算して第２の楽音波形データを生成して出力する（ステップ７０７）。なお、波高値として、現在の座標値ｙ（ｔ）から、初期的な座標値（たとえば、図６のｙ（ｔ０））を減算した値を使用すれば良い。
【００３３】
また、音源部２１は、第１の楽音波形データおよび第２の楽音波形データとを、所定のミックス比にしたがって合成して出力する（ステップ７０８）。オーディオ回路２２は、合成された楽音波形データをアナログ信号に変換し、変換により得られたアナログ信号を増幅してスピーカから出力する。
【００３４】
ＣＰＵ１１は、パラメータｉが「６」であるか否かを判断する（ステップ７０９）。ステップ７０９でＮｏと判断された場合には、パラメータｉをインクリメントして（ステップ７１０）、ステップ７０２に戻る。その一方、ステップ７１０でＹｅｓと判断された場合には、処理を終了する。
【００３５】
発音処理（ステップ３０５）の後、ＣＰＵ１１は、消音処理を実行する（ステップ３０６）。図８は、本実施の形態にかかる消音処理の例を示すフローチャートである。図８に示すように、ＣＰＵ１１は、弦や画像データエリアを特定するためのパラメータｉを「１」に初期化する（ステップ８０１）。次いで、ＣＰＵ１１は、第ｉ弦の出力レベルが所定のレベル未満であるか否かを判断する（ステップ８０２）。ステップ８０２においては、たとえば、波形データエリアに格納された第ｉ弦の波形データの所定期間（たとえば、１周期）における振幅が所定のレベル未満であるか否かを判断すれば良い。或いは、ギター２５のピックアップ（図示せず）から出力される第ｉ弦の信号（原信号）が所定のレベル未満であるか否かを判断しても良い。
【００３６】
ステップ８０２でＹｅｓと判断された場合には、第ｉ弦について第１の楽音波形データおよび第２の楽音波形データが出力中であるか否かを判断する（ステップ８０３）。ステップ８０３でＹｅｓと判断された場合には、ＣＰＵ１１は、音源部２１に対して、第ｉ弦について、第１の楽音波形データおよび第２の楽音波形データの消音を指示する。音源部２１は、指示に応答して、第ｉ弦について、その出力レベルを徐々に減衰させるような第１の楽音波形データおよび第２の楽音波形データを生成する（ステップ８０４）。ＣＰＵ１１は、パラメータｉが「６」であるか否かを判断する（ステップ８０５）。ステップ８０５でＮｏと判断された場合には、パラメータｉをインクリメントして（ステップ８０６）、ステップ８０２に戻る。その一方、ステップ８０５でＹｅｓと判断された場合には、処理を終了する。
【００３７】
消音処理が終了した後、ＣＰＵ１１は、他の必要な処理を実行する（ステップ３０７）。ステップ３０７における処理には、たとえば、表示部１５への画像表示や、ＬＥＤの点灯などが含まれる。
【００３８】
本実施の形態によれば、画像センサおよび画像データ入力Ｉ／Ｆにより、弦の張設方向の垂直方向における、弦の位置を示す画像データが取得され、ＣＰＵ１１は、弦の垂直方向の位置と、画像データが得られた時刻とを関連付けた波形データを生成し、当該波形データをＲＡＭ１３の波形データエリアに格納する。その後、ＣＰＵ１１は、弦の垂直方向の初期位置を原点として、波形データのゼロクロス点を算出し、当該ゼロクロス点の時間間隔に基づいて、弦が発する楽音のピッチを検出する。このように、弦の張設方向の垂直方向における、弦の変位に基づいてピッチを検出することにより、複数の弦が振動している場合であってもクロストークの影響を受けずに正確にピッチを検出することが可能となる。
【００３９】
また、本実施の形態においては、抽出されたピッチに基づいて、プリセット波形データエリアに格納されたプリセット波形データが読み出され、第１の楽音波形データが生成される。これにより、ピックアップを使用することなく、ギターの弦の振動およびそのピッチに基づく楽音信号の発生が可能となる。
【００４０】
さらに、本実施の形態においては、上記第１の楽音波形データと、波形データエリアに格納された弦振動による波形データに基づく生成される第２の楽音波形データとが合成される。これにより、いわゆるギターシンセサイザと同様に、プリセット波形データの楽音信号および弦振動による楽音信号の双方を出力することが可能となる。
【００４１】
次に、本発明の第２の実施の形態について説明する。第１の実施の形態においては、画像センサが、６つのセンサ領域に分割され、それぞれのセンサ領域が、対応する弦の位置に対応する黒点を示す値を含んでいた。第２の実施の形態においては、画像センサは単一のセンサ領域を有し、６つの弦の位置に対応する黒点を示す値を有している。図９は、第２の実施の形態にかかる波形データ生成処理の例を示すフローチャートである。図９に示すようにＣＰＵ１１は、弦や画像データエリアを特定するためのパラメータｉを「１」に初期化し（ステップ９０１）、また、ＣＰＵ１１は、タイマ値ｔを取得する（ステップ９０２）。
【００４２】
次いで、ＣＰＵ１１は、画像データに関連付ける時刻ｔｉｊをタイマ値ｔとして（ステップ９０３）、センサ領域において上方から下方に向けてセンサ値をサーチして（ステップ９０４）、黒点に相当する座標値を検出したか否かを判断する（ステップ９０５）。ステップ９０５でＮｏと判断された場合には、ＣＰＵ１１は、ステップ９０４に戻り、センサ領域中においてさらに下方のセンサ値をサーチする（ステップ９０４）。なお、第１の実施の形態と同様に、黒点に相当するセンサ値が複数連続している場合には、その平均値を座標値として算出すれば良い。
【００４３】
ステップ９０５でＹｅｓと判断された場合には、ＣＰＵ１１は、処理回数を示すパラメータｊが「０」、つまり、最初の処理であるか否かを判断する（ステップ９０６）。ステップ９０６でＹｅｓと判断された場合には、ＣＰＵ１１は、時刻ｔｉｊにおける座標値を、ＲＡＭ１３の波形データエリアに格納する（ステップ９０７）。ステップ９０６でＮｏと判断された場合には、ＣＰＵ１１は、波形データエリアに先に格納された座標値と、今回取得された座標値とを比較して、座標値に変化があったか否かを判断する（ステップ９０８）。ステップ９０８でＹｅｓと判断された場合にも、ＣＰＵ１１は、時刻ｔｉｊにおける座標値を、ＲＡＭ１３の波形データエリアに格納する（ステップ９０７）。
【００４４】
ステップ９０７の後、或いは、ステップ９０８でＮｏと判断された場合に、ＣＰＵ１１は、パラメータｉが「６」、すなわち、全ての画像データエリアについての処理が終了したか否かを判断する（ステップ９０９）。ステップ９０９でＮｏと判断された場合には、ＣＰＵ１１は、パラメータｉをインクリメントして（ステップ９１０）、ステップ９０３に戻る。その一方、ステップ９０９でＹｅｓと判断された場合には、ＣＰＵ１１は、パラメータｊをインクリメントして（ステップ９１１）、処理を終了する。
【００４５】
図１０は、第２の実施の形態におけるセンサ領域における画像データの例を説明する図である。図１０においては、センサ領域３０の上方から下方に向けて、第１弦、第２弦、・・・、第６弦に対応する黒点に相当するセンサ値が現れる。図１０において、座標ｙ（０）〜ｙ（ｐ−１）に至るまでは、センサ値が白点に相当するため、図９のステップ９０５でＮｏと判断される。その一方、座標ｙ（ｐ）は、第１弦（符号ｓｔ１）の位置であり、センサ値が黒点に相当するため、ステップ９０５でＹｅｓと判断される。同様に、第２弦の位置である座標ｙ（ｑ）や、第６弦の位置である座標ｙ（ｒ）については、ステップ９０５でＹｅｓと判断される。したがって、これらの座標値（或いは隣接する座標値との平均値）が、データエリアに書き込まれ得る。
【００４６】
第２の実施の形態においても、弦の張設方向の垂直方向における、弦の変位に基づいてピッチを検出することにより、複数の弦が振動している場合であってもクロストークの影響を受けずに正確にピッチを検出することが可能となる。
【００４７】
次に、本発明の第３の実施の形態について説明する。第１の実施の形態においては、画像センサ１６は、弦の張られた方向のサイズが小さい。これに対して、第３の実施の形態においては、画像センサは、弦の張られた方向にも比較的大きなサイズを有する。以下の例では、図１１に示すように、画像センサ１１６は、フィンガーボード１１０の下端（符号１１１参照）からサドル１１２までの弦の画像を撮影できるようなサイズを有し、６つのセンサ領域１３０−１〜１３０−６を有する。
【００４８】
図１２は、第３の実施の形態にかかる波形データ生成処理の部分の例を示すフローチャートである。第３の実施の形態においては、図１２に示す処理の後、図４に示す処理が実行される。図１２に示す処理は、一定の時間間隔で実行される。したがって、ＣＰＵ１１は、たとえば、タイマ値を参照して、ピーク値検出タイミングが到来したか否かを判断する（ステップ１２０１）。ステップ１２０１でＹｅｓと判断された場合には、ＣＰＵ１１は、弦や画像データエリアを特定するためのパラメータｉを「１」に初期化する（ステップ１２０２）。
【００４９】
次いで、ＣＰＵ１１は、第ｉ弦に関する画像データＩｍ（ｉ）をＸ軸方向に値を調べ、Ｙ座標のピーク点を検出する（ステップ１２０３）。図１３は、第３の実施の形態にかかるピーク点の検出の例を示す図である。図１３において、Ｘ軸は、予め定められたＹ座標値の初期値ｙ０に対応する。そこで、ステップ１２０３においては、ＣＰＵ１１は、Ｘ軸上のＸ座標値ｘ１、ｘ１、ｘ２・・・のそれぞれのＹ座標値ｙ１、ｙ１、ｙ２を特定し、初期値との差分値の絶対値｜ｙ１−ｙ０｜、｜ｙ２−ｙ０｜、｜ｙ３−ｙ０｜、・・・を算出する。その後、ＣＰＵ１１は、絶対値｜ｙｋ−ｙ０｜が最大となるものを検出する。
【００５０】
ＣＰＵ１１は、ピーク値ｙｋを示した位置のＸ座標ｘｋを、波形データ生成処理においてＹ座標を取得すべき位置（データ取得位置）と決定する（ステップ１２０４）。図１３において、Ｘ座標ｘｋを含む画像データ領域（符号１３０１参照）が、図４の処理において、第ｉ弦の波形データを生成するための画像データ領域となる。
【００５１】
ＣＰＵ１１は、パラメータｉが「６」、すなわち、全ての画像データエリアについての処理が終了したか否かを判断する（ステップ１２０５）。ステップ１２０５でＮｏと判断された場合には、ＣＰＵ１１は、パラメータｉをインクリメントして（ステップ１２０６）、ステップ１２０３に戻る。その一方、ステップ１２０５でＹｅｓと判断された場合には、ＣＰＵ１１は、図４のステップ４０１に進む。
【００５２】
図４においては、第ｉ弦について決定されたｘ座標ｘｋを含む画像データ領域に関して、Ｙ座標および時刻の取り込みが実行される（ステップ４０４〜４０６参照）。
【００５３】
第３の実施の形態によれば、ＣＰＵ１１は、弦の垂直方向の初期位置を原点として、原点からの変位が最大であるような弦の垂直方向の位置を特定し、当該特定された垂直方向の位置に対応する、張設方向の位置において、弦の垂直方向の位置と、画像データが得られた時刻とを関連付けた波形データを生成する。つまり、弦の垂直方向（Ｙ軸方向）において座標値がピーク値を示す、弦の張設方向（Ｘ軸方向）の位置を特定、当該Ｘ軸方向の位置におけるＹ軸方向の座標値を取得して、波形データを生成する。これにより、変位のもっとも大きな位置で波形を取得することができ、より正確なピッチの抽出が可能となる。
【００５４】
本発明は、以上の実施の形態に限定されることなく、特許請求の範囲に記載された発明の範囲内で、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【００５５】
たとえば、前記実施の形態において、ピッチ抽出を行なわず、波形データエリアに格納された、弦振動による波形データに基づいて、楽音波形データを生成して、出力するように構成しても良い。これにより、ピックアップを用いることなく、弦振動に基づく楽音信号の生成が可能となる。
【符号の説明】
【００５６】
１０        楽音発生装置
１１        ＣＰＵ
１２        ＲＯＭ
１３        ＲＡＭ
１４        サウンドシステム
１５        表示部
１６        画像センサ
１７        画像データ入力Ｉ／Ｆ
１８        操作部
２１        音源部
２２        オーディオ回路
２３        スピーカ
２５        ギター
【図１】
2010191153.tif 000003
【図２】
2010191153.tif 000004
【図３】
2010191153.tif 000005
【図４】
2010191153.tif 000006
【図５】
2010191153.tif 000007
【図６】
2010191153.tif 000008
【図７】
2010191153.tif 000009
【図８】
2010191153.tif 000010
【図９】
2010191153.tif 000011
【図１０】
2010191153.tif 000012
【図１１】
2010191153.tif 000013
【図１２】
2010191153.tif 000014
【図１３】
2010191153.tif 000015