(57)【要約】【課題】単純な構成により、演奏者の意図した発音タイミングを正確に検出できるようにする。【手段】ピーク検出部３５は、合成加速度の波形のピークを検出すると、演奏制御の開始のトリガとなるトリガ信号を演奏制御部３８へ出力する。ピーク予測部３６は、ピーク検出部３５によって最新のピークが検出され、その検出時刻が履歴記憶部３７に記憶されるたび、その次のローカルピークの発生時刻Ｔを算出し、発生時刻Ｔを示す信号を窓関数発生部３３に出力する。この発生時刻Ｔの引き渡しを受けた窓関数発生部３３は、以後に出力する窓関数の時間幅ｔｗの中心とその発生時刻Ｔとを一致させるように、窓関数値の出力の周期Ｔｐを調整する。【選択図】図３
2010020145.tif 000002
【特許請求の範囲】
【請求項１】
演奏操作子の挙動を示す物理量を取得し、取得した物理量を示す信号を出力する取得手段と、
窓関数を発生する窓関数発生手段と、
前記取得手段が出力する信号に前記窓関数発生手段が発生する窓関数を乗算する乗算手段と、
前記乗算手段により窓関数が乗算された信号の波形のピークを検出し、演奏制御のためのトリガ信号を発生するピーク検出手段と、
前記ピーク検出手段によりピークが検出される毎に、次回のピークの発生時刻を予測し、予測したピークの発生時刻において前記窓関数発生手段が発生する窓関数の関数値が増加するように前記窓関数発生手段による窓関数の発生を制御するピーク予測手段と
を具備することを特徴とする演奏制御装置。
【請求項２】
前記ピーク検出手段が波形のピークを検出した検出時刻の履歴を記憶する記憶手段をさらに具備し、
前記ピーク予測手段は、
前記記憶手段に記憶された履歴を基に次のピークの発生時刻を予測する
ことを特徴とする請求項１に記載の演奏制御装置。
【請求項３】
楽曲の楽譜情報を記憶した記憶手段をさらに具備し、
前記ピーク予測手段は、
前記記憶手段に記憶された楽譜情報を読み出し、読み出した楽譜情報を基に楽曲の拍点の発生時刻を予測し、この拍点の発生予測時刻を基に次のピークの発生時刻を予測する
ことを特徴とする請求項１に記載の演奏制御装置。
【請求項４】
当該演奏操作子の挙動を示す物理量を検出するセンサと、
前記センサが検出した物理量を示す信号を、請求項１から３のいずれか１項に記載の演奏制御装置へ送信する通信手段と
を具備することを特徴とする演奏操作子。
【請求項５】
コンピュータに、
演奏操作子の挙動を示す物理量を取得し、取得した物理量を示す信号を出力する取得手段と、
窓関数を発生する窓関数発生手段と、
前記取得手段が出力する信号に前記窓関数発生手段が発生する窓関数を乗算する乗算手段と、
前記乗算手段により窓関数が乗算された信号の波形のピークを検出し、演奏制御のためのトリガ信号を発生するピーク検出手段と、
前記ピーク検出手段によりピークが検出される毎に、次回のピークの発生時刻を予測し、予測したピークの発生時刻において前記窓関数発生手段が発生する窓関数の関数値が増加するように前記窓関数発生手段による窓関数の発生を制御するピーク予測手段と
を実現させるプログラム。
【請求項６】
演奏操作子と、
前記演奏操作子の挙動を示す信号を出力するセンサと、
窓関数を発生する窓関数発生手段と、
前記センサが出力する信号に前記窓関数発生手段が発生する窓関数を乗算する乗算手段と、
前記乗算手段により窓関数が乗算された信号の波形のピークを検出し、演奏制御のためのトリガ信号を発生するピーク検出手段と、
前記ピーク検出手段によりピークが検出される毎に、次回のピークの発生時刻を予測し、予測したピークの発生時刻において前記窓関数発生手段が発生する窓関数の関数値が増加するように前記窓関数発生手段による窓関数の発生を制御するピーク予測手段と
を具備することを特徴とする演奏制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、演奏操作子の振り操作に応じて演奏を行う演奏制御装置に関する。
【背景技術】
【０００２】
演奏者の手に把持させた演奏操作子の揺動を基に演奏者が意図する発音タイミングを検出し、そのタイミングに合わせて楽音を発音させる演奏制御装置がある。この演奏制御装置によると、演奏者は、「音を出したくないときは演奏操作子を動かさず、音を出したいときは演奏操作子を勢いよく振る」という簡単な操作により、その演奏意図にマッチした演奏音を奏でることができる。この演奏制御装置においては、演奏操作子に加速度センサやジャイロセンサなどの揺動センサが固定され、そのセンサの出力信号の波形がピークになるタイミングに合わせて楽音が発音されるようになっている。演奏者は、演奏操作子を振り切ったときに音が鳴るものとの理解の下に演奏を行うため、センサの出力信号の波形のピークのタイミングが演奏者が意図する発音タイミングであると解釈することは理に適っている。
しかし、演奏者の手と演奏操作子とからなる力学系では、手から演奏操作子に一方的に力が与えられるのではなく、演奏操作子からの手への反動もまた発生する。よって、この反動に起因したピークのタイミングまでも演奏者が意図した発音タイミングであるとみなして楽音を発音させてしまうと、演奏者の意図に沿った演奏を提供できない。このような、演奏者が意図した発音タイミングに該当しない波形のピークと、それに該当するピークとを判別する仕組みは、各種提案されており、たとえば、ニューラルネットワークや隠れマルコフモデルなどの解析アルゴリズムを利用するものや（特許文献１，２，３，４を参照）、演奏操作子に複数のセンサを固定し、それらのセンサの出力信号を利用した発音タイミングの検出を行うもの（特許文献５，６，７を参照）などがある。
【特許文献１】特開平０９−０９７０７０号公報
【特許文献２】特開平１１−０３８９７０号公報
【特許文献３】特開平０９−０９０９４１号公報
【特許文献４】特開平０９−１８５７１６号公報
【特許文献５】特開平０８−３０５３５８号公報
【特許文献６】特開平０８−３３９１８１号公報
【特許文献７】特開平０８−３０５３５５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
特許文献１〜７に開示された発明によれば、演奏者が意図した発音タイミングに該当する波形のピークとそうではないピークとを正確に判別することが可能ではある。しかしながら、特許文献１〜４に開示された発明の場合、センサの検出信号が出力されてからその解析を終えるまでに要する演算量が多く、演算処理能力の高いプロセッサを利用できないような状況では、リアルタイムな演奏制御に支障が生じるという問題がある。また、特許文献５〜７に記載された発明の場合、演奏操作子に複数のセンサを固定せねばならず、その装置構成が大掛かりなものになってしまうという問題がある。
本発明は、このような背景の基に案出されたものであり、単純な構成により、演奏者の意図した発音タイミングを正確に検出できるようにすることを目的とする。
【課題を解決するための手段】
【０００４】
本発明は、演奏操作子の挙動を示す物理量を取得し、取得した物理量を示す信号を出力する取得手段と、窓関数を発生する窓関数発生手段と、前記取得手段が出力する信号に前記窓関数発生手段が発生する窓関数を乗算する乗算手段と、前記乗算手段により窓関数が乗算された信号の波形のピークを検出し、演奏制御のためのトリガ信号を発生するピーク検出手段と、前記ピーク検出手段によりピークが検出される毎に、次回のピークの発生時刻を予測し、予測したピークの発生時刻において前記窓関数発生手段が発生する窓関数の関数値が増加するように前記窓関数発生手段による窓関数の発生を制御するピーク予測手段とを具備する演奏制御装置を提供する。
この発明において、ピーク検出手段は、窓関数発生手段が発生させた窓関数値が乗算された信号の波形のピークを検出し、演奏制御のためのトリガ信号を発生させる。また、ピーク予測手段は、ピーク検出手段が波形のピークを検出するたびに、その次のピークの発生時刻を予測する。そして、ピーク予測手段は、次のピークの発生時刻を予測すると、窓関数発生手段が以後に発生させる窓関数値をその発生時刻の近傍において増加させる。よって、演奏者が一定のリズムで演奏操作子を振る場合において、演奏者の意図した発音タイミングだけを正確に検出することができ、演奏者の演奏意図にマッチした演奏音を発音することができる。
【発明を実施するための最良の形態】
【０００５】
以下、図面を参照し、この発明の実施形態を説明する。
図１は、この発明の一実施形態である演奏制御システムの構成を示すブロック図である。この演奏制御システムは、演奏操作子１０と、演奏制御装置２０と、音源、電子楽器等、演奏のためのサウンドシステム（図示略）とにより構成されている。
【０００６】
演奏操作子１０は、演奏者が把持して振るなどの動作をする操作子であり、例えば何らかの楽音を発音させるタイミングを指示するのに用いられる。演奏操作子１０は、加速度センサ１１と無線通信部１２を内蔵している。加速度センサ１１は、演奏操作子１０の挙動を示す物理量である加速度を検出する。この加速度センサ１１は、演奏操作子１０に働く加速度ベクトルを互いに直交した３軸方向の各成分ａｘ、ａｙ、ａｚに分解して検出し、これらの各成分を示す各アナログ信号を各々出力する。
無線通信部１２は、一定時間長（例えば５ｍｓ）のサンプリング周期毎に、加速度センサ１１から出力される３種類のアナログ信号をサンプリングしてデジタル化することにより、加速度の３軸方向成分ａｘ、ａｙ、ａｚを示すデータを生成し、このデータを含むパケットを、無線区間を介して演奏制御装置２０に送信する。
【０００７】
演奏制御装置２０は、操作表示部２１、無線通信部２２、制御部２３、およびインターフェース（以下、「Ｉ／Ｆ」と記す）２４を有する。
操作表示部２１は、ユーザから各種の指示を受け取るとともに、ユーザに各種の情報を提供する。
無線通信部２２は、一定時間長（例えば５ｍｓ）のサンプリング周期ごとに、演奏操作子１０から送信されたパケットを受信し、そのパケットから３軸方向成分ａｘ、ａｙ、ａｚを示すデータを取り出し、制御部２３に引き渡す。
制御部２３は、加速度取得部３１、タイマ３２、窓関数発生部３３、乗算器３４、ピーク検出部３５、ピーク予測部３６、履歴記憶部３７、演奏制御部３８を有する。
加速度取得部３１は、無線通信部２２から引き渡されるデータが示す加速度の３軸方向成分ａｘ、ａｙ、ａｚを次式に入力することにより、それらを合成した合成加速度ＡＳを取得し、その合成加速度ＡＳを示すデジタル信号（以下、「合成加速度サンプル」という）を出力する。
ＡＳ＝ａｘ２＋ａｙ２＋ａｚ２  …（１）
タイマ３２は、一定周波数のクロックをカウントし、そのカウント値を時刻信号として窓関数発生部３３へ出力する。
窓関数発生部３３は、窓関数値出力処理を行う。窓関数値出力処理は、矩形窓関数における窓関数値の出力を周期的に繰り返す処理である。図２に示すように、矩形窓関数は、時間幅ｔｗの範囲外の時刻において０になりその範囲内の時刻において１になる関数である。この窓関数値出力処理において、窓関数発生部３３は、ピーク予測部３６による支援の下、ピーク検出部３５が検出するであろう次のローカルピークの発生時刻と時間幅ｔｗの中心ｔｃとを一致させるように、その窓関数値の出力の周期Ｔｐを調整する。詳しくは、後述する。
【０００８】
乗算器３４は、窓関数発生部３３が出力する矩形窓関数を加速度取得部３１から出力される合成加速度サンプルに乗算し、その乗算結果をピーク検出部３５に引き渡す。すなわち、この加算器３４は、加速度取得部３１からの合成加速度サンプルの出力に合わせて窓関数発生部３３から「１」の窓関数値が出力された場合は、その合成加速度サンプルをピーク検出部３５へ引き渡し、加速度取得部３１からの合成加速度サンプルの出力に合わせて窓関発生部から「０」の窓関数値が出力された場合は、その合成加速度サンプルに代えて「０」を示すデジタル信号をピーク検出部３５へ引き渡す。
【０００９】
ピーク検出部３５は、矩形窓関数が乗算された合成加速度ＡＳの波形（単に、「加速度波形」と呼ぶ）のローカルピークを検出する。このピーク検出部３５は、乗算器３４から合成加速度サンプルが引き渡されるたびに、その合成加速度サンプルと１つ前に引き渡されたものとの大小関係を比較し、合成加速度サンプルが示す合成加速度ＡＳが上昇から下降に転じた時点をローカルピークとする。そして、ピーク検出部３５は、ローカルピークを検出したとき、演奏制御のタイミングを指示するトリガ信号を演奏制御部３８へ出力する第１の処理と、そのローカルピークの検出時刻を履歴記憶部３７に記憶させる第２の処理とを行う。
【００１０】
演奏制御部３８は、ピーク検出部３５からトリガ信号が引き渡されるたびに、所定の音色の楽音信号を生成し、Ｉ／Ｆ２４を介してその楽音信号をサウンドシステムに送り、楽音を放音させる。これにより、楽曲の拍またはテンポの進行を、演奏者の動作により制御することが可能となる。
ピーク予測部３６は、ピーク検出部３５によって最新の検出時刻が履歴記憶部３７に記憶されるたび、ピーク発生時刻算出処理を行う。ピーク発生時刻算出処理は、履歴記憶部３７における最新の検出時刻とその１つ前の検出時刻との時間差を基に次のローカルピークの発生時刻Ｔを算出し、その発生時刻Ｔを示す信号を窓関数発生部３３に出力する処理である。
【００１１】
この発生時刻Ｔの引き渡しを受けた窓関数発生部３３は、自らが発生させる窓関数値の時間幅ｔｗの中心ｔｃとその発生時刻Ｔとを一致させるように、その窓関数値の出力の周期Ｔｐを調整する。より詳細に説明すると、窓関数発生部３３は、その発生時刻Ｔから時間幅ｔｗの１／２に相当する時間ΔＴを減算することにより、次回の窓関数値出力処理における時間幅ｔｗの始点の時刻ｔｓを求めるとともに、その発生時刻Ｔに時間ΔＴを加算することにより、次回の窓関数値出力処理における時間幅ｔｗの終点の時刻ｔｅを求める。そして、以後、タイマ３２から時刻信号が出力されるたびに、その時刻信号が示す時刻ｔと時刻ｔｓ，ｔｅとの大小関係を比較し、ｔ＜ｔｓである間およびｔ＞ｔｅである間は「０」の窓関数値を出力し、ｔｓ≦ｔ≦ｔｅである間は「１」の窓関数値を出力する。
【００１２】
以上説明したように、本実施形態では、ピーク予測部３６が、加速度波形の次のピークの発生時刻Ｔを予測し、窓関数発生部３３は、自らが発生させる窓関数値の時間幅ｔｗの中心ｔｃとその発生時刻Ｔとを一致させるように、窓関数値の出力の周期Ｔｐを調整する。これにより、演奏操作子１０内の加速度センサ１１の検出値を基に得られる波形から、演奏者が意図した発音タイミングに該当する波形のピークだけを正確に検出し、演奏者の演奏意図にマッチした演奏音を発音することができる。この作用について、図３を参照してさらに具体的に説明する。図３は、加速度取得部３１の出力信号を示す波形Ｗａと乗算器３４にてその波形Ｗａに乗算される矩形窓関数の波形Ｗｔとを、両者の時間軸を揃えて重ね合わせたものである。図３において、波形ＷａにおけるピークＰ２，Ｐ３，Ｐ６は、演奏者が意図した発音タイミングである。ここで、この波形ＷａにおけるＰ２とＰ６の前には、演奏者が意図した発音タイミングであると解釈すべきでないピークＰ１とＰ５が表れており、Ｐ３の後にもそのようなピークＰ４が表れている。よって、これらのピークＰ１，Ｐ２，Ｐ３，Ｐ４，Ｐ５，Ｐ６のすべてがピーク検出部３５によって検出され、そのたびに演奏音を発音させてしまうと、演奏者が意図した通りのリズミカルな発音ができない。これに対し、本実施形態では、波形Ｗａに波形Ｗｔが掛け合されることにより、その時間幅ｔｗの範囲外の合成加速度ＡＳの値はすべて０になる。よって、ピークＰ１，Ｐ４，Ｐ５などのようなものが演奏者が意図した発音タイミングとして誤検出される事態が回避され、演奏者が意図した通りのタイミングで演奏音を発音することができる。
【００１３】
以上、この発明の一実施形態について説明したが、この発明には他にも実施形態があり得る。例えば、以下の通りである。
（１）上記実施形態において、操作表示部２１の操作により、矩形窓関数の時間幅ｔｗを任意に設定できるようにしてもよい。
（２）上記実施形態において、窓関数発生部３３が発生させる窓関数の形状は矩形である必要はなく、これを台形型としてもよい。その場合、台形型の窓関数のサイドスロープの傾斜を操作表示部２１の操作により任意に設定できるようにしてもよい。また、窓関数発生部３３が、ガウス窓関数、ハニング窓関数、ハミング窓関数、ブラックマン窓関数などの他の窓関数を発生し、ピーク予測部３６が、発生時刻Ｔにおいて窓関数値が増加するようにその窓関数発生部３３による窓関数の発生を制御してもよい。
（３）上記実施形態において、窓関数発生部３３は、ピーク検出部３５が検出するであろう次のローカルピークの発生時刻Ｔと窓関幅ｔｗの中心ｔｃとを一致させるように、その窓関数値の出力の周期Ｔｐを調整した。しかし、その発生時刻Ｔよりも前の時刻や後の時刻と窓関数ｔｗの中心ｔｃとを一致させるようにしてもよい。
【００１４】
（４）上記実施形態において、ピーク予測部３６は、履歴記憶部３７における最新の検出時刻とその１つ前の検出時刻との時間差を基に次のローカルピークの発生時刻Ｔを求めた。しかし、履歴記憶部３７における最新の検出時刻とその前の２つ以上の検出時刻とを用いた外挿演算により、発生時刻Ｔを求めてもよい。この態様によると、演奏者が、テンポをだんだん速くしたり遅くしたりするような演奏を行う場合であっても、演奏者が意図した発音タイミングに該当する波形のピークだけを正確に検出することができる。
（５）上記実施形態において、演奏する楽曲の楽譜情報を記憶するメモリとそのメモリに記憶された楽譜情報に従って自動演奏を行う再生装置とを演奏制御システムの構成要素とし、その再生装置が再生する演奏音のテンポに合わせて演奏者が演奏操作子１０を操作するようにしてもよい。この態様において、ピーク予測部３６は、その楽譜情報をメモリから読み出す。そして、その楽譜情報におけるテンポに関するパラメータ、例えば「tempo（１分間の拍数）」のパラメータを基に楽曲における拍の発生時刻を予測し、その発生時刻を基に波形のピークの発生時刻を予測し、窓関数発生部３３が発生する窓関数値をそのピークの発生時刻において増加させる制御を行う。さらに、ピーク予測部３６は、「ritardando」、「rallentando」、「accelerando」、「stringendo」などのテンポ変化を指定するパラメータを楽譜情報から先読みし、テンポ変化時刻以降の拍の発生時刻の予測をそのパラメータを用いて行ってもよい。
（６）上記実施形態において、演奏制御システムは、演奏操作子１０の挙動を示す物理量の１つである加速度を加速度センサ１１により検出し、その加速度センサ１１の出力信号が示す波形を基に発音タイミングを特定した。しかし、磁気センサ、ジャイロセンサ、圧力センサ、傾斜センサなどの他の種類のセンサにより、演奏操作子１０の挙動を示す物理量を検出し、そのセンサの出力信号の波形を基に発音タイミングを特定してもよい。
【００１５】
（７）上記実施形態において、演奏制御システムは、加速度センサ１１の出力信号が示す波形に時間軸方向の矩形窓関数を乗算した。これに加えて、図４に示すように、振幅方向の窓関数を作用させてもよい。この態様において、ピーク検出部３５は、乗算器３４による矩形窓関数の乗算を経て出力される合成加速度サンプルが、振幅方向窓関数として設定された振幅範囲の上限と下限の間に位置するか否かを判断し、その間に位置する合成加速度サンプルのなかからローカルピークを検出する。この態様によると、ローカルピークの検出に要する演算量をより小さくすることができる。
（８）上記実施形態における演奏制御装置２０の加速度取得部３１、窓関数発生部３３、乗算器３４、ピーク検出部３５、ピーク予測部３６、および演奏制御部３８と同様の機能を実現させる制御プログラムを、コンピュータにインストールさせ、そのコンピュータを演奏制御装置２０として動作させてもよい。たとえば、加速度センサと音源を内蔵する携帯電話機にこの制御プログラムをインストールさせ、携帯電話機そのものの筺体を演奏操作子１０として機能させるようにするとよい。この実施形態では、制御プログラムは、携帯電話機のＣＰＵに、加速度取得部３１、窓関数発生部３３、乗算器３４、ピーク検出部３５、ピーク予測部３６、および演奏制御部３８を実現させ、そのＲＡＭに、履歴記憶部３７を実現させる。そして、演奏者が携帯電話機の筺体を把持して振ると、その筺体の挙動を示す加速度が内蔵の加速度センサによって検出され、演奏者が意図した発音タイミングに該当する波形のピークがその加速度の波形に現れるたびに、音源から楽音が放音される。
【図面の簡単な説明】
【００１６】
【図１】この発明の一実施形態である演奏制御システムの構成を示すブロック図である。。
【図２】図１の演奏制御システムの窓関数発生部が発生する矩形窓関数を示す図である。
【図３】図１の演奏制御システムの加速度取得部の出力信号を示す波形と乗算器にてその波形に乗算される矩形窓関数の波形とを重ね合わせた図である。
【図４】他の実施形態にかかる演奏制御システムの加速度取得部の出力信号を示す波形と乗算器にてその波形に乗算される矩形窓関数の波形とを重ね合わせた図である。
【符号の説明】
【００１７】
１０…演奏走査子、１１…加速度センサ、１２，２２…無線通信部、２０…演奏制御装置、２１…操作表示部、２４…インターフェース、３１…加速度取得部、３２…タイマ、３３…窓関数発生部、３４…乗算器、３５…ピーク検出部、３６…ピーク予測部、３７…履歴記憶部、３８…演奏制御部。
【図１】
2010020145.tif 000003
【図２】
2010020145.tif 000004
【図３】
2010020145.tif 000005
【図４】
2010020145.tif 000006