(57)【要約】【課題】手形の一部のみの位置データを与えることにより運指を表示でき、また、鍵盤サイズや鍵盤の画面表示上での大きさに合った手形を描画でき、自然に感じられる運指を表示できる運指表示方法およびそのためのプログラムを提供すること。【解決手段】予め記憶されている描画データを読み出し（Ｓ５１）、手の甲の中心の座標値を求める（Ｓ５２）。次に、手の甲の中心の座標値と手形のデフォルトのデータを用いて手の甲の各位置の座標値を求める（Ｓ５４）、さらに、手の甲の各位置の座標値と手形のデフォルトのデータを用いて各指の位置の座標値を求める（Ｓ５５）。求められた手の甲の各位置の座標値と各指の位置の座標値を用いて手形を描画する（Ｓ５６）。【選択図】　　図５
2004109376.tif 000002
【特許請求の範囲】
【請求項１】
鍵盤に対する手形の各部位置データに基づいて手形を描画して運指表示を行う運指表示方法において、
手形を描画可能なデフォルトのデータを用意しておき、予め記憶されている記憶位置データでは手形を描画するのに不足である場合には、前記記憶位置データと前記デフォルトのデータとを用いて鍵盤に対する手形の各部位置データを導出し、導出された各部位置データを用いて手形を描画することを特徴とする運指表示方法。
【請求項２】
手形の各部位置データが、手の甲の中心からの各指の付け根および親指側と小指側の手首の付け根の位置データと、指の付け根からの指の先端の位置データとを含むことを特徴とする請求項１に記載の運指表示方法。
【請求項３】
前記記憶位置データが押鍵する指の先端の位置データのみであり、該位置データと前記デフォルトのデータとを用いて手形の他の各部位置データが導出されることを特徴とする請求項１または２に記載の運指表示方法。
【請求項４】
前記記憶位置データおよび前記デフォルトのデータは、鍵幅および鍵奥行き長に対して正規化されており、それらデータに鍵幅および鍵奥行き長が乗算されて当該鍵盤に対する位置データが導出されることを特徴とする請求項１ないし３のいずれかに記載の運指表示方法。
【請求項５】
前記記憶位置データに、鍵に対する高さ位置を表す高さパラメータが付加され、該高さパラメータに従って当該鍵または指の表示を変化させ、あるいは付加的な表示を行わせることを特徴とする請求項１ないし４のいずれかに記載の運指表示方法。
【請求項６】
コンピュータに、予め記憶されている指の位置データを読み出す手順、前記指の位置データ、該指が位置する鍵の座標値および手形のデフォルトのデータを用いて手の甲の中心の座標値を求める手順、前記手の甲の中心の座標値および手形のデフォルトのデータを用いて手の甲の各部位置の座標値を求める手順、前記手の甲の各部位置の座標値と手形のデフォルトのデータを用いて各指の位置の座標値を求める手順、前記手の甲の各部位置の座標値と各指の位置の座標値を用いて運指を表示する手順を実行させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、運指表示方法およびそのためのプログラムに関し、特に、手形の一部のみの位置データを与えることにより手形を描画して運指表示することができ、また、容易に鍵盤サイズや鍵盤の画面表示上での大きさに合った手形を描画させることができる運指表示方法およびそのためのプログラムに関する。
【０００２】
【従来の技術】
鍵盤とともに運指の画像を表示し、これをガイドとして演奏者が押鍵を練習する電子鍵盤楽器は周知である。また、キーボードや電子ピアノなどの音楽機器をコンピュータに接続し、コンピュータに鍵盤とともに運指の画像を表示させ、練習者がそれを見ながら練習できるようにしたレッスン方式も知られている。
【０００３】
特開２０００−１１２４７０号公報には、複数種の操作運指画像データおよび複数種の経過運指画像データをＲＯＭに格納しておき、ノートオン処理の鍵の操作開始を示す運指に対応する操作運指画像データをＲＯＭから選択して読み出し、表示装置に与えて表示させ、さらに、ノートオフ処理の次に押鍵する鍵の操作開始に至るまでの経過を示す運指に対応する経過運指画像データをＲＯＭから選択して読み出し、表示装置に与えて表示させることにより、曲の進行に応じたきめ細かな演奏ガイドを行う運指表示装置が記載されている。
【０００４】
また、特開２００１−３２４９１９号公報には、表示用の手指の構造を手パートと指パートに分け、指パートをさらに関節で３つに分け、手パートは、押鍵すべき鍵の位置、該鍵の押鍵に用いる指パートの種類などに応じてｘｙ平面上に移動させ、和音の構成音を発音させるために複数の鍵を押鍵する動作は手パートのｚ軸上の位置を移動させて表現することにより、演奏動作の流れを動画で表示する演奏動作表示装置が記載されている。
【０００５】
【発明が解決しようとする課題】
きめ細かな運指を表示するためには、運指画像を生成するための多くのデータが必要となるが、前記特開２０００−１１２４７０号公報に記載された運指表示装置のように、このデータを画像データ、すなわちビットマップデータとして記憶しておくものではデータ量が多くなり、多大の記憶容量が必要となり、また、そのデータの記憶に多大の時間と労力を要するという問題がある。
【０００６】
また、鍵盤サイズや鍵盤の画面表示上での大きさが変わった場合、そのままのデータでは鍵盤サイズや鍵盤の画面表示上での大きさに合った手形が描画されない。
【０００７】
特開２００１−３２４９１９号公報に記載されているように、運指画像を生成するためのデータを手形の各パートの位置データとして格納し、その移動や回転により運指画像を生成して運指表示するものでは、鍵盤サイズや表示の大きさが変わってもそれをパラメータとしておくことにより対処できる。
【０００８】
しかしながら、これでは全パートの基点位置やそれからの移動および回転についてのデータ全てが予め記憶されていて初めて運指表示が可能になるものであり、これにおいてもデータ量が多くなり、多くのデータの入力に多くの時間と労力を要するという問題がある。
【０００９】
本発明は、前記従来の問題点を解消し、手形の一部のみの位置データを与えることにより運指を表示でき、また、容易に鍵盤サイズや鍵盤の画面表示上での大きさに合った手形を描画することができ、自然に感じられる運指を表示することができる運指表示方法およびそのためのプログラムを提供することを目的とするものである。
【００１０】
【課題を解決するための手段】
上記課題を解決するために、本発明は、鍵盤に対する手形の各部位置データに基づいて手形を描画して運指表示を行う運指表示方法において、手形を描画可能なデフォルトのデータを用意しておき、予め記憶されている記憶位置データでは手形を描画するのに不足である場合には、前記記憶位置データと前記デフォルトのデータとを用いて鍵盤に対する手形の各部位置データを導出し、導出された各部位置データを用いて手形を描画する点に第１の特徴がある。
【００１１】
また、本発明は、手形の各部位置データが、手の甲の中心からの各指の付け根および親指側と小指側の手首の付け根の位置データと、指の付け根からの指の先端の位置データとを含む点に第２の特徴がある。
【００１２】
また、本発明は、前記記憶位置データが押鍵する指の先端の位置データのみであり、該位置データと前記デフォルトのデータとを用いて手形の他の各部位置データが導出される点に第３の特徴がある。
【００１３】
また、本発明は、前記記憶位置データおよび前記デフォルトのデータは、鍵幅および鍵奥行き長に対して正規化されており、それらデータに鍵幅および鍵奥行き長が乗算されて当該鍵盤に対する位置データが導出される点に第４の特徴がある。
【００１４】
また、本発明は、前記記憶位置データに、鍵に対する高さ位置を表す高さパラメータが付加され、該高さパラメータに従って当該鍵または指の表示を変化させ、あるいは付加的な表示を行わせる点に第５の特徴がある。
【００１５】
さらに、本発明は、コンピュータに、予め記憶されている指の位置データを読み出す手順、前記指の位置データ、該指が位置する鍵の座標値および手形のデフォルトのデータを用いて手の甲の中心の座標値を求める手順、前記手の甲の中心の座標値および手形のデフォルトのデータを用いて手の甲の各部位置の座標値を求める手順、前記手の甲の各部位置の座標値と手形のデフォルトのデータを用いて各指の位置の座標値を求める手順、前記手の甲の各部位置の座標値と各指の位置の座標値を用いて運指を表示する手順を実行させるためのプログラムである点に第６の特徴がある。
【００１６】
第１ないし第３の特徴によれば、手形の一部のみの位置データを与えることにより運指を表示できるので、描画データを削減してその記憶容量やその入力に要する手間を低減することができる。
【００１７】
また、第４の特徴によれば、鍵盤サイズや鍵盤の画面表示上での大きさの変化に容易に対処することができ、自然に感じられる運指を表示することができる。
また、第５の特徴によれば、高さ方向のガイドも可能になる。
【００１８】
さらに、第６の特徴によれば、本プログラムをパソコンなどへインストールすることにより容易に運指の練習を行うことができるようになる。
【００１９】
【発明の実施の形態】
以下、図面を参照して本発明を詳細に説明する。図１は、本発明が適用できる運指練習システムの一例を示すブロック図である。パソコン１には、本発明の運指表示を行うためのプログラムがインストールされる。パソコン１の表示画面には、所定操作に従って鍵盤と共に手形による運指画像が表示され、ユーザは表示される運指画像に従ってキーボード４上などで運指の練習をすることができる。
【００２０】
また、パソコン１にはＭＩＤＩインタフェース２を介してＭＩＤＩ機器３が接続可能である。演奏データや運指描画データは、パソコン１内のＲＯＭに格納したり、ＭＩＤＩインタフェース２を介して、あるいはＦＤなどの媒体により外部から提供することができる。
【００２１】
図２は、手形を模式的に示す図であり、手形は、５本の各指の付け根ｂ〜ｆの位置データ、手首の付け根２点（親指側、小指側）ｇ、ｈの位置データ、および各指の先端ｉ〜ｍの位置データを与えることにより描画できる。また、鍵に対する手形の各部位置を定めるためには、前記位置データと鍵との位置関係を表すデータを与えればよい。なお、ａは、手の甲の中心である。
【００２２】
前記位置データの全てを予め記憶させるには多大の記憶容量および時間と労力を要するため、本発明では、まず、前記位置データの全てが与えられなくても手形を描画できるようにする。このために、手形を描画可能なデフォルトのデータを用意する。
【００２３】
図３は、デフォルトのデータの一例である。ここでは、鍵幅方向をｘ軸とし、その右方向を＋、左方向を−とし、鍵奥行き方向をｙ軸とし、その上方向を−、下方向を＋としている。デフォルトのデータにおいて、５本の指の付け根ｂ〜ｆと手首の付け根２点（親指側、小指側）ｇ、ｈの計７点からなる手の甲位置データは、手の甲の形を描画するためのものであり、これらデータは、手の中心ａからの相対位置として表わされている。
【００２４】
また、指位置データは、５本の指ｉ〜ｍの先端を描画するためのものであり、これらデータは、手がデフォルトの角度である場合、すなわち、手の中心ａと中指ｋの位置とを結ぶ直線が鍵奥行き方向と平行である場合の各指の付け根からの相対位置として表されている。
【００２５】
各データにおける数値は、鍵幅および鍵奥行き長に対して正規化されており、図示の数値に鍵幅あるいは鍵奥行き長を乗算することにより、鍵盤サイズや鍵盤の表示画面上での大きさに合った大きさの手形の描画データが生成される。
【００２６】
なお、図２および図３は、右手の例であるが、左手についても同様である。以下の説明でも右手を例として説明する。また、各指は、各指の付け根ｂ〜ｆから各指の先端ｉ〜ｍまでを、例えば鍵幅の２／３として直線で描画すればよい。
【００２７】
図４は、演奏データと共に記憶する描画データの例である。ここでは手の中心ａと押鍵する１本の指の描画データとを記憶している。図における「時間」は、音楽演奏上での時間であり、この時間に従って演奏データ（音データ）と同期するように描画データを読み出し、読み出した描画データに基づいてその時々の手形の描画データを生成し、運指表示を行う。
【００２８】
描画データにおける「データ」は、データの種類であり、手の甲の中心（以下では単に「手の中心」と記す。）／親指／人差し指／中指／薬指／小指の各先端（以下では「先端」を省略して記す。）のいずれかである。
【００２９】
「鍵番号」は、手の中心ａあるいは指ｉ〜ｍが位置する鍵のノートナンバである。「横位置」は、その鍵での横位置、例えば、鍵中央／鍵右端のいずれかを指示する幅パラメータである。「奥行き位置」は、その鍵での縦位置を指示する奥行きパラメータであり、例えば、白鍵の長さの１／２８を１としたときの鍵上部からの位置である。これら「鍵番号」、「横位置」および「奥行き位置」が手形の一部の位置データとなるものであり、これらにより当該鍵上での手形の位置が定められる。
【００３０】
また、「高さ位置」は、その鍵での高さ位置を指示する高さパラメータであり、例えば、鍵に触れている／鍵より少し浮いた位置／中ぐらい浮いた位置／高く浮いた位置などである。なお、「押鍵フラグ」は、その鍵が押鍵されるときにオンとする。
【００３１】
図４において、例えば、時間「０」の描画データは、手の中心ａを、鍵番号「６９」の鍵の横方向中央、かつ鍵上部から４１の位置（白鍵の長さを１としたとき、鍵上部から４１／２８の位置）に描画し、また、小指ｍを、鍵番号「７２」の鍵の横方向中央、かつ鍵上部から２５の位置（白鍵の長さを１としたとき、鍵上部から２５／２８の位置）に描画することを表している。
【００３２】
次に、本発明に係る運指の表示方法の実施形態について、図５および図６のフローチャートを参照して説明する。本実施形態は、図３のデフォルトが用意され、人差し指ｊのみの描画データ「データ：人差し指、鍵番号（キーナンバ）：６７、幅パラメータ：鍵中央、奥行きパラメータ：２３、高さパラメータ：鍵に触れている位置、押鍵フラグ：オン」が読み出されて与えられた場合の例である。
【００３３】
まず、ステップＳ５１で、格納されている描画データを取得する。ここで取得されるのは人差し指ｊのみの描画データであり、手の中心ａの描画データがないので、ステップＳ５２で、表示画面上での手の中心ａの座標値を求める。ここでは手の中心ａの座標値（３４２，１０５）が求められる。この座標値の求め方の詳細は後述する。なお、本実施形態では、高さパラメータや押鍵フラグは運指の表示に使用しないので、それらを読み出す必要はない。
【００３４】
次に、ステップＳ５３で、手の角度を求める。手の角度は、手の中心ａと中指ｋの位置が与えられている場合に、それらを結ぶ直線の傾きとして求めることができるが、ここでは手の中心ａおよび中指ｋの位置データが与えられていないので、手の角度はデフォルトとする。このデフォルトは、手の中心ａと中指ｋの位置とを結ぶ直線が鍵盤奥行き方向と平行である角度、すなわち、９０度とする。
【００３５】
次に、ステップＳ５４で、手の角度、デフォルトの手の甲の位置（各指の付け根および手首付け根の位置）、鍵幅および鍵奥行き長を用い、ステップＳ５２で求められた手の中心ａの座標値から手の甲の位置（付け根位置）の座標値を求める。
【００３６】
これにより親指の付け根位置の座標値（３１８，１０５）、人差し指の付け根位置の座標値（３３０，８６）、中指の付け根位置の座標値（３４２，８７）、薬指の付け根位置の座標値（３５４，８９）、小指の付け根位置の座標値（３６６，９０）、小指側手首付け根位置の座標値（３６０，１１９）、親指側手首付け根位置の座標値（３２４，１１９）が求められる。なお、ここでは鍵幅が１２、鍵奥行き長が７３である鍵盤サイズを想定し、小数点以下の端数は切り捨てて算出している。
【００３７】
例えば、デフォルトのデータにおいて、小指の付け根ｍは手の中心ａに対して右方向に（鍵幅×２＝２４）だけ変位し、下方向に（鍵奥行き長×０．２１≒１５）だけ変位しているから、表示画面上での小指の付け根ｍのｘ方向座標値は、３４２＋２４＝３６６、ｙ方向座標値は、１０５−１５＝９０となる。
【００３８】
なお、手の角度がデフォルトでない場合には、求められた各指の付け根ｂ〜ｆの座標値を手の中心ａを軸にして手の角度分回転移動させればよい。
【００３９】
次に、ステップＳ５５では、描画データが予め与えられていない指の座標値を、手の角度、各指のデフォルトのデータおよびステップＳ５４で求めた各指の付け付け根ｂ〜ｆの座標値を用いて生成する。
【００４０】
ここでは、人差し指ｊの描画データはステップＳ５１で取得されているので、親指ｉ、中指ｋ、薬指ｌおよび小指ｍの座標値を生成する。これにより親指ｉの座標値（３１８，８１）、中指ｋの座標値（３４２，４９）、薬指ｌの座標値（３５４，５２）、小指ｍの座標値（３６６，６０）が生成される。
【００４１】
人差し指ｊの座標値もここで求めてもよいが、これは、後述の表示画面上での手の中心ａの座標値を求める際に求まる座標値（３３０，５９）と同じである。
なお、手の角度がデフォルトでない場合には、手の中心ａを軸にしてこれら座標値を手の角度分回転移動させることは、手の甲と同様である。
【００４２】
以上のようにして求められた手の甲ｂ〜ｈの座標値と各指ｉ〜ｍの座標値に従い手形を描画する。この場合、各指の太さを鍵幅の２／３にして描画することができる。図７は、以上のようにして鍵盤上に描画された手形の例である。
【００４３】
図８は、図５のステップＳ５２の処理、すなわち、与えられている描画データより手の中心ａの座標値を求める処理の詳細を示すフローチャートである。まず、ステップＳ８１で、与えられている人差し指ｊについての描画データ「データ：人差し指、鍵番号：６７、幅パラメータ：鍵中央、奥行きパラメータ：２３、高さパラメータ：鍵に触れている位置、押鍵フラグ：オン」を取得し、人差し指ｊの位置を表示画面上での座標値に変換する。
【００４４】
ここでは、表示画面上での鍵番号６７の矩形座標値を（３２４，０，３３６，７３）としており、鍵幅が１２、鍵奥行き長が７３である鍵盤を想定しているのは前記したとおりである。
【００４５】
描画データを座標値への変換する処理を図９にフローチャートで示す。まず、ステップＳ９１で、与えられている人差し指ｊについての描画データ「データ：人差し指、鍵番号：６７、幅パラメータ：鍵中央、奥行きパラメータ：２３、高さパラメータ：鍵に触れている位置、押鍵フラグ：オン」を取得する。なお、この変換処理でも高さパラメータや押鍵フラグは使用しないので、それらは読み出す必要はない。
【００４６】
次に、ステップＳ９２で、人差し指ｊが位置する鍵番号「６７」の表示画面上での鍵矩形座標値を取得する。ここでは、表示画面上での鍵番号「６７」の鍵矩形座標値が（３２４，０，３３６，７３）、すなわち、ｘ軸方向で３２４〜３３６であり、ｙ軸方向で７３〜０であるとする。なお、ｙ軸方向の座標値は、鍵上部が０であり、鍵下部が７３である。
【００４７】
次に、ステップＳ９３で、人差し指ｊのｘ軸方向座標値を求める。ここでは幅パラメータが「鍵中央」であるので、人差し指ｊのｘ軸方向座標値は、（３２４＋３３６４）／２（＝３３０）となる。
【００４８】
続いて、ステップＳ９４で、人差し指ｊのｙ軸方向座標値を求める。ここでは奥行きパラメータが「２３」であるので、人差し指ｊのｙ軸方向座標値は、鍵矩形の縦方向長さの１／２８を１目盛りとして鍵矩形上辺より２３目盛りの位置、すなわち、（７３／２８）×２３（＝５９）となる。
【００４９】
図８に戻って、ステップＳ８１で求められた人差し指ｊの座標値（３３０，５９）とデフォルトのデータを用いて、ステップＳ８２では、人差し指の付け根ｃの座標値を求める。
【００５０】
デフォルトのデータにおいて、人差し指ｊの座標値は、人差し指に付け根ｃの座標値に対して（０，鍵奥行き長×０．４７７×０．８）だけ変位しており、この相対位置関係から人差し指の付け根ｃの座標値（３３０，８６）を求めることができる。なお、係数０．８は、押鍵時の指の曲がりを考慮して乗算するものであり、ここでは人差し指の押鍵フラグがオンであるので係数０．８を乗算している。もちろん、人差し指の押鍵フラグがオンでなければこの係数は１である。
【００５１】
次に、ステップＳ８３で、デフォルトのデータ、鍵幅および鍵奥行き長を用い、ステップＳ８２で求められた人差し指の付け根ｃ座標値から手の中心ａの座標値を求める。
【００５２】
本発明は、以上に説明された実施形態に限られず、種々の変形が可能である。
例えば、指の位置データと共に記憶された高さパラメータを利用して、当該指や指に対する鍵盤の表示色を変化させるようにしたり、マークを表示させるようにすれば、高さ方向のガイドも可能である。特に、押鍵フラグがオンである指について他と異ならせて表示すれば、運指の練習で有効なガイドとなる。
【００５３】
また、運指の練習においては、押鍵する指の位置が特に重要であるから、押鍵フラグがオンの指についての描画データを予め記憶させておくことが望ましく、全体指の位置配置が特に問題になるような演奏部分においては、手形を描画できる全描画データを予め記憶させ、該描画データにより運指を表示させるようにすることもできる。
【００５４】
また、複数の描画データが予め記憶されている場合には、いずれかのデータ、例えば、押鍵フラグがオンの指の描画データあるいは手の中心の描画データを優先的に使用して導出したデータを用いて手形を描画するようにすることができる。その場合、与えられている他の描画データを有効として描画に使用するか否かは任意である。
【００５５】
さらに、本発明は、運指を表示するプログラムとしても実現することができ、このプログラムをパソコンにインストールすることにより容易に運指の練習を行うことができるようになる。
【００５６】
このプログラムは、図５および図６に示すフローチャートに沿って、コンピュータに、予め記憶されている指の位置データを読み出す手順、前記指の位置データ、該指が位置する鍵の座標値および手形のデフォルトのデータを用いて手の甲の中心の座標値を求める手順、前記手の甲の中心の座標値および手形のデフォルトのデータを用いて手の甲の各部位置の座標値を求める手順、前記手の甲の各部位置の座標値と手形のデフォルトのデータを用いて各指の位置の座標値を求める手順、前記手の甲の各部位置の座標値と各指の位置の座標値を用いて運指を表示する手順を順次実行させることを基本とするものである。
【００５７】
【発明の効果】
以上説明したように、本発明によれば、手形の一部の位置データを与えれば運指を表示することができるので、描画データを削減してその記憶容量やその入力に要する手間を低減することができ、また、描画データやデフォルトのデータを鍵幅および鍵奥行き長に対して正規化しているので、鍵盤サイズや鍵盤の画面表示上での大きさの変化に容易に対処することができ、自然に感じられる運指を表示することができる。
【図面の簡単な説明】
【図１】本発明が適用できる運指練習システムの一例を示すブロック図である。
【図２】手形を描画するための位置データを示す模式図である。
【図３】デフォルトのデータの一例を示す説明図である。
【図４】予め記憶される描画データの例を示す説明図である。
【図５】本発明の実施形態における処理のフローチャートである。
【図６】図５の続きのフォローチャートである。
【図７】画面上での運指表示の例を示す説明図である。
【図８】描画データより手の中心の座標値を求める処理のフローチャートである。
【図９】描画データを座標値への変換する処理のフローチャートである。
【符号の説明】
１・・・パソコン、２・・・ＭＩＤＩインタフェース、３・・・ＭＩＤＩ機器、４・・・キーボード
【図１】
2004109376.tif 000003
【図２】
2004109376.tif 000004
【図３】
2004109376.tif 000005
【図４】
2004109376.tif 000006
【図５】
2004109376.tif 000007
【図６】
2004109376.tif 000008
【図７】
2004109376.tif 000009
【図８】
2004109376.tif 000010
【図９】
2004109376.tif 000011