(57)【特許請求の範囲】
【請求項１】
演奏における発音のタイミングに関する２以上の観測値を受け付けるステップと、
前記２以上の観測値の中から、複数の観測値を選択するステップと、
前記複数の観測値を用いて、前記演奏における次の発音のイベントのタイミングに関する状態変数を更新するステップと、
前記更新された状態変数を出力するステップと
を有するイベントのタイミング予想方法。
【請求項２】
前記更新された状態変数に基づいて定められるタイミングで発音手段に発音させるステップ
を有する請求項１に記載のタイミング予想方法。
【請求項３】
前記演奏における発音手段の発音を示す音符の密度に対する、前記演奏における演奏者の発音を示す音符の密度の比率に応じて、前記複数の観測値を選択する
請求項１または２に記載のタイミング予想方法。
【請求項４】
前記比率に応じて、前記選択の態様を変更するステップを有する
請求項３に記載のタイミング予想方法。
【請求項５】
前記比率が所定の閾値よりも大きい場合には、前記比率が所定の閾値以下である場合と比較して、
前記選択される観測値の個数を少なくする、
請求項３または４に記載のタイミング予想方法。
【請求項６】
前記複数の観測値は、前記２以上の観測値のうち、選択期間において受け付けられた観測値であり、
前記比率が所定の閾値よりも大きい場合には、前記比率が所定の閾値以下である場合と比較して、
前記選択期間を短くする、
請求項３または４に記載のタイミング予想方法。
【請求項７】
演奏における発音のタイミングに関する２以上の観測値を受け付ける受付部と、
前記２以上の観測値の中から、複数の観測値を選択する選択部と、
前記複数の観測値を用いて、前記演奏における次の発音のイベントのタイミングに関する状態変数を更新する更新部と、
前記更新された状態変数を出力する出力部と、
を備えるイベントのタイミング予想装置。
【請求項８】
プロセッサを、
演奏における発音のタイミングに関する２以上の観測値を受け付ける受付部と、
前記２以上の観測値の中から、複数の観測値を選択する選択部と、
前記複数の観測値を用いて、前記演奏における次の発音のイベントのタイミングに関する状態変数を更新する更新部と、
前記更新された状態変数を出力する出力部と、
して機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、タイミング予想方法、タイミング予想装置、及び、プログラムに関する。
【背景技術】
【０００２】
演奏における発音を示す音信号に基づいて、演奏者による演奏の楽譜上における位置を推定する技術が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−７９１８３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、演奏者と自動演奏楽器等とが合奏をする合奏システムにおいては、例えば、演奏者による演奏の楽譜上における位置の推定結果に基づいて、自動演奏楽器が次の音を発音するイベントのタイミングを予想する処理が行われる。しかし、このような合奏システムでは、演奏者による演奏を示す音信号の入力タイミングの突発的なずれが、演奏に係るイベントのタイミングの予想結果に対して影響を及ぼすことがあった。【０００５】
本発明は、上述した事情を鑑みてなされたものであり、演奏に係るイベントのタイミングを予想する場合において、演奏者による演奏を示す音信号の入力タイミングの突発的なずれによる影響を小さく抑える技術の提供を、解決課題の一つとする。
【課題を解決するための手段】
【０００６】
本発明に係るイベントのタイミング予想方法は、演奏における発音のタイミングに関する複数の観測値を用いて、前記演奏における次の発音のイベントのタイミングに関する状態変数を更新するステップと、前記更新された状態変数を出力するステップとを有することを特徴とする。【０００７】
また、本発明に係るイベントのタイミング予想装置は、演奏における発音のタイミングに関する複数の観測値を受け付ける受付部と、前記複数の観測値を用いて、前記演奏における次の発音のイベントのタイミングに関する状態変数を更新する更新部と、を備えることを特徴とする。
【図面の簡単な説明】
【０００８】
【図１】一実施形態に係る合奏システム１の構成を示すブロック図。
【図２】タイミング制御装置１０の機能構成を例示するブロック図。
【図３】タイミング制御装置１０のハードウェア構成を例示するブロック図。
【図４】タイミング制御装置１０の動作を例示するシーケンスチャート。
【図５】発音位置ｕ［ｎ］及び観測ノイズｑ［ｎ］を例示する図。
【図６】本実施形態に係る発音時刻の予想を説明するための説明図。
【図７】タイミング制御装置１０の動作を例示するフローチャート。
【発明を実施するための形態】
【０００９】
＜１．構成＞
図１は、本実施形態に係る合奏システム１の構成を示すブロック図である。合奏システム１は、人間の演奏者Ｐと自動演奏楽器３０とが合奏を行うためのシステムである。すなわち、合奏システム１においては、演奏者Ｐの演奏に合わせて自動演奏楽器３０が演奏を行う。合奏システム１は、タイミング制御装置１０、センサー群２０、および、自動演奏楽器３０を有する。本実施形態では、演奏者Ｐおよび自動演奏楽器３０が合奏する楽曲が既知である場合を想定する。すなわち、タイミング制御装置１０は、演奏者Ｐおよび自動演奏楽器３０が合奏する楽曲の楽譜を示すデータ（以下、「楽曲データ」と称する）を記憶している。
【００１０】
演奏者Ｐは楽器を演奏する。センサー群２０は、演奏者Ｐによる演奏に関する情報を検知する。本実施形態において、センサー群２０は、演奏者Ｐの前に置かれたマイクロフォンを含む。マイクロフォンは、演奏者Ｐにより演奏される楽器から発せられる演奏音を集音し、集音した演奏音を音信号に変換して出力する。
タイミング制御装置１０は、演奏者Ｐの演奏に追従して自動演奏楽器３０が演奏するタイミングを制御する装置である。タイミング制御装置１０は、センサー群２０から供給される音信号に基づいて、（１）楽譜における演奏の位置の推定（「演奏位置の推定」と称する場合がある）、（２）自動演奏楽器３０による演奏において次の発音がなされるべき時刻（タイミング）の予想（「発音時刻の予想」と称する場合がある）、および、（３）自動演奏楽器３０に対する演奏命令の出力（「演奏命令の出力」と称する場合がある）、の３つの処理を行う。ここで、演奏位置の推定とは、演奏者Ｐおよび自動演奏楽器３０による合奏の楽譜上の位置を推定する処理である。発音時刻の予想とは、演奏位置の推定の結果を用いて、自動演奏楽器３０が次の発音を行うべき時刻を予想する処理である。演奏命令の出力とは、自動演奏楽器３０に対する演奏命令を、予想された発音時刻に応じて出力する処理である。なお、自動演奏楽器３０による発音は、「発音のイベント」の一例である。
自動演奏楽器３０は、タイミング制御装置１０により供給される演奏命令に応じて、人間の操作によらず演奏を行う楽器であり、一例としては自動演奏ピアノである。
【００１１】
図２は、タイミング制御装置１０の機能構成を例示するブロック図である。タイミング制御装置１０は、記憶部１１、推定部１２、予想部１３、出力部１４、および、表示部１５を有する。
記憶部１１は、各種のデータを記憶する。この例で、記憶部１１は、楽曲データを記憶する。楽曲データは、少なくとも、楽譜により指定される発音のタイミングおよび音高を示す情報を含んでいる。楽曲データが示す発音のタイミングは、例えば、楽譜において設定された単位時間（一例としては３２分音符）を基準として表される。楽曲データは、楽譜により指定される発音のタイミングおよび音高に加え、楽譜により指定される音長、音色、および、音量の少なくとも１つを示す情報を含んでもよい。一例として、楽曲データはＭＩＤＩ（Musical Instrument Digital Interface）形式のデータである。
【００１２】
推定部１２は、入力された音信号を解析し、楽譜における演奏の位置を推定する。推定部１２は、まず、音信号からオンセット時刻（発音開始時刻）および音高に関する情報を抽出する。次に、推定部１２は、抽出された情報から、楽譜における演奏の位置を示す確率的な推定値を計算する。推定部１２は、計算により得られた推定値を出力する。
本実施形態において、推定部１２が出力する推定値には、発音位置ｕ、観測ノイズｑ、および発音時刻Ｔが含まれる。発音位置ｕは、演奏者Ｐによる演奏において発音された音の楽譜における位置（例えば、５小節目の２拍目）である。観測ノイズｑは、発音位置ｕの観測ノイズ（確率的な揺らぎ）である。発音位置ｕおよび観測ノイズｑは、例えば、楽譜において設定された単位時間を基準として表される。発音時刻Ｔは、演奏者Ｐによる発音が観測された時刻（時間軸上の位置）である。なお以下の説明では、楽曲の演奏においてｎ番目に発音された音符に対応する発音位置をｕ［ｎ］と表す（ｎは、ｎ≧１を満たす自然数）。他の推定値も同様である。
【００１３】
予想部１３は、推定部１２から供給される推定値を観測値として用いることで、自動演奏楽器３０による演奏において次の発音がなされるべき時刻の予想（発音時刻の予想）を行う。本実施形態では、予想部１３が、いわゆるカルマンフィルタを用いて発音時刻の予想を行う場合を、一例として想定する。
なお、以下では、本実施形態に係る発音時刻の予想についての説明に先立ち、関連技術に係る発音時刻の予想についての説明を行う。具体的には、関連技術に係る発音時刻の予想として、回帰モデルを用いた発音時刻の予想と、動的モデルを用いた発音時刻の予想と、について説明する。
【００１４】
まず、関連技術に係る発音時刻の予想のうち、回帰モデルを用いた発音時刻の予想について説明する。
回帰モデルは、演奏者Ｐおよび自動演奏楽器３０による発音時刻の履歴を用いて次の発音時刻を推定するモデルである。回帰モデルは、例えば次式（１）により表される。
【数１】
0006631713.tif 000002
ここで、発音時刻Ｓ［ｎ］は自動演奏楽器３０による発音時刻である。発音位置ｕ［ｎ］は演奏者Ｐによる発音位置である。また、式（１）に示す回帰モデルでは、「ｊ＋１」個の観測値を用いて、発音時刻の予想を行う場合を想定する（ｊは、１≦ｊ＜ｎを満たす自然数）。なお、式（１）に示す回帰モデルに係る説明では、演奏者Ｐの演奏音と自動演奏楽器３０の演奏音とが区別可能である場合を想定する。行列Ｇｎおよび行列Ｈｎは、回帰係数に相当する行列である。行列Ｇｎおよび行列Ｈｎ並びに係数αｎにおける添え字ｎは、行列Ｇｎおよび行列Ｈｎ並びに係数αｎがｎ番目に演奏された音符に対応する要素であることを示す。つまり、式（１）に示す回帰モデルを用いる場合、行列Ｇｎおよび行列Ｈｎ並びに係数αｎを、楽曲の楽譜に含まれる複数の音符と１対１に対応するように設定することができる。換言すれば、行列Ｇｎおよび行列Ｈｎ並びに係数αｎを楽譜上の位置に応じて設定することができる。このため、式（１）に示す回帰モデルによれば、楽譜上の位置に応じて、発音時刻Ｓの予想を行うことが可能となる。
【００１５】
このように、式（１）に示す回帰モデルは、楽譜上の位置に応じて発音時刻Ｓの予想が可能である、という利点を有する一方で、以下の問題点を有する。第１の問題点は、行列Ｇおよび行列Ｈの設定のために事前に人間同士の演奏により学習（リハーサル）をする必要がある点である。第２の問題点は、式（１）に示す回帰モデルでは、発音時刻Ｓ［ｎ−１］と発音時刻Ｓ［ｎ］との間の連続性を保証していないため、発音位置ｕ［ｎ］に突発的なずれが生じた場合に、自動演奏楽器３０の挙動が唐突に変わる可能性が存在する点である。
【００１６】
次に、関連技術に係る発音時刻の予想のうち、動的モデルを用いた発音時刻の予想について説明する。
動的モデルは、一般的には、例えば以下の処理により、動的モデルによる予想の対象となる動的システムの状態を表す状態ベクトルＶを更新する。
具体的には、動的モデルは、第１に、動的システムの経時的な変化を表す理論上のモデルである状態遷移モデルを用いて、変化前の状態ベクトルＶから、変化後の状態ベクトルＶを予測する。動的モデルは、第２に、状態ベクトルＶと、観測値との関係を表す理論上のモデルである観測モデルを用いて、状態遷移モデルによる状態ベクトルＶの予測値から、観測値を予測する。動的モデルは、第３に、観測モデルにより予測された観測値と、動的モデルの外部から実際に供給される観測値とに基づいて、観測残差を算出する。動的モデルは、第４に、状態遷移モデルによる状態ベクトルＶの予測値を、観測残差を用いて補正することで、更新された状態ベクトルＶを算出する。
本実施形態では、一例として、状態ベクトルＶが、演奏位置ｘと速度ｖとを、要素として含むベクトルである場合を想定する。ここで、演奏位置ｘとは、演奏者Ｐによる演奏の楽譜における位置の推定値を表す状態変数である。また、速度ｖとは、演奏者Ｐによる演奏の楽譜における速度（テンポ）の推定値を表す状態変数である。但し、状態ベクトルＶは、演奏位置ｘ及び速度ｖ以外の状態変数を含むものであってもよい。
また、本実施形態では、一例として、状態遷移モデルが、以下の式（２）により表現され、観測モデルが、以下の式（３）により表現される場合を想定する。
【数２】
0006631713.tif 000003
【数３】
0006631713.tif 000004
ここで、状態ベクトルＶ［ｎ］は、ｎ番目に演奏された音符に対応する演奏位置ｘ［ｎ］及び速度ｖ［ｎ］を含む複数の状態変数を要素とするｋ次元のベクトルである（ｋは、ｋ≧２を満たす自然数）。プロセスノイズｅ［ｎ］は、状態遷移モデルを用いた状態遷移に伴うノイズを表すｋ次元のベクトルである。行列Ａｎは状態遷移モデルにおける状態ベクトルＶの更新に関する係数を示す行列である。行列Ｏｎは観測モデルにおいて観測値（この例では発音位置ｕ）と状態ベクトルＶとの関係を示す行列である。なお、行列や変数等の各種要素に付された添字ｎは、当該要素がｎ番目の音符に対応する要素であることを示している。
【００１７】
式（２）および（３）は、例えば、以下の式（４）および式（５）として具体化することができる。
【数４】
0006631713.tif 000005
【数５】
0006631713.tif 000006
式（４）および（５）から演奏位置ｘ［ｎ］および速度ｖ［ｎ］が得られれば、将来の時刻ｔにおける演奏位置ｘ［ｔ］は次式（６）により得られる。
【数６】
0006631713.tif 000007
式（６）による演算結果を、以下の式（７）に適用することで、自動演奏楽器３０が（ｎ＋１）番目の音符を発音すべき発音時刻Ｓ［ｎ＋１］を計算することができる。
【数７】
0006631713.tif 000008
【００１８】
動的モデルは、楽譜上の位置に応じた発音時刻Ｓの予想が可能であるという利点を有する。また、動的モデルは、原則として事前でのパラメータチューニング（学習）が不要であるという利点を有する。更に、動的モデルは、発音時刻Ｓ［ｎ−１］と発音時刻Ｓ［ｎ］との連続性を考慮しているため、回帰モデルと比較して、発音位置ｕ［ｎ］の突発的なずれに起因する自動演奏楽器３０の挙動の変動を抑制できるという利点を有する。
しかし、上述した動的モデルでは、特に、観測モデルを用いた観測値の予想、及び、外部から供給される観測値に基づく観測残差の算出において、発音位置ｕ［ｎ］及び観測ノイズｑ［ｎ］等のｎ番目の音符に対応する最新の観測値のみが用いられるため、発音位置ｕ［ｎ］等の観測値の突発的なずれに起因して、自動演奏楽器３０の挙動が変動する可能性が存在する。このため、例えば、演奏者Ｐの発音位置ｕの推定にずれが生じると、当該ずれに釣られて、自動演奏楽器３０による発音のタイミングもずれてしまい、結果として自動演奏楽器３０による演奏が乱れてしまうことがあった。
【００１９】
これに対し本実施形態に係る予想部１３は、上述した動的モデルをベースとしつつ、上述した動的モデルと比較して、発音位置ｕ［ｎ］の突発的なずれに起因する自動演奏楽器３０の挙動の変動をより効果的に抑制可能な、発音時刻の予想を行う。
具体的には、本実施形態に係る予想部１３は、最新の観測値に加えて、過去の複数の時刻において推定部１２から供給された複数の観測値を用いて、状態ベクトルＶを更新する動的モデルを採用する。本実施形態では、過去の複数の時刻において供給された複数の観測値は記憶部１１に記憶される。予想部１３は、受付部１３１、選択部１３２、状態変数更新部１３３、および予想時刻計算部１３４を有する。
【００２０】
受付部１３１は、演奏のタイミングに関する観測値の入力を受け付ける。本実施形態において、演奏のタイミングに関する観測値は、発音位置ｕおよび発音時刻Ｔである。また、受付部１３１は、演奏のタイミングに関する観測値に付随する観測値の入力を受け付ける。本実施形態において、付随する観測値は、観測ノイズｑである。受付部１３１は、受け付けた観測値を記憶部１１に記憶させる。
【００２１】
選択部１３２は、記憶部１１に記憶されている、複数の時刻に対応する複数の観測値の中から、状態ベクトルＶの更新に用いられる複数の観測値を選択する。選択部１３２は、例えば、受付部１３１が観測値を受け付けた時間、観測値に対応する楽譜上の位置、または、選択すべき観測値の個数の、一部または全部に基づいて、状態ベクトルＶの更新に用いられる複数の観測値を選択する。より具体的には、選択部１３２は、現時刻よりも所定時間だけ前の時刻から現時刻までの期間（「選択期間」の一例。例えば、直近の３０秒間）において、受付部１３１が受け付けた観測値を選択してもよい（以下、当該選択の態様を、「時間フィルタに基づく選択」と称する）。また、選択部１３２は、楽譜において所定の範囲（例えば、直近の２小節）に位置する音符に対応する観測値を選択してもよい（以下、当該選択の態様を、「小節数に基づく選択」と称する）。また、選択部１３２は、最新の観測値を含む所定数の観測値（例えば、直近の５音に対応する観測値）を選択してもよい（以下、当該選択の態様を、「音符数に基づく選択」と称する）。
【００２２】
状態変数更新部１３３は、動的モデルにおける状態ベクトルＶ（状態変数）を更新する。状態ベクトルＶの更新には、例えば式（４）（再掲）および次式（８）が用いられる。状態変数更新部１３３は、更新された状態ベクトルＶ（状態変数）を出力する。
【数８】
0006631713.tif 000009
【数９】
0006631713.tif 000010
ここで、式（８）の左辺におけるベクトル（ｕ［ｎ−１］，ｕ［ｎ−２］，…，ｕ［ｎ−ｊ］）Ｔは、複数の時刻において推定部１２から供給された複数の発音位置ｕを、観測モデルにより予測した結果を示す観測値ベクトルＵ［ｎ］である。
【００２３】
予想時刻計算部１３４は、更新された状態ベクトルＶ［ｎ］に含まれる演奏位置ｘ［ｎ］及び速度ｖ［ｎ］を用いて、自動演奏楽器３０による次の発音の時刻である発音時刻Ｓ［ｎ＋１］を計算する。具体的には、予想時刻計算部１３４は、まず、式（６）に対して、状態変数更新部１３３により更新された状態ベクトルＶ［ｎ］に含まれる演奏位置ｘ［ｎ］および速度ｖ［ｎ］を適用することで、将来の時刻ｔにおける演奏位置ｘ［ｔ］を計算する。次に、予想時刻計算部１３４は、式（７）を用いて、自動演奏楽器３０が（ｎ＋１）番目の音符を発音すべき発音時刻Ｓ［ｎ＋１］を計算する。
式（８）では複数の時刻において推定部１２から供給された複数の発音位置ｕ［ｎ−１］〜ｕ［ｎ―ｊ］が考慮されるので、例えば、式（５）のように最新時刻における発音位置ｕ［ｎ］のみが考慮される例と比較して、発音位置ｕ［ｎ］の突発的なずれに対して頑強な、発音時刻Ｓの予想を行うことができる。予想時刻計算部１３４は、計算された発音時刻Ｓを出力する。
【００２４】
出力部１４は、予想部１３から入力された発音時刻Ｓ［ｎ＋１］に応じて、自動演奏楽器３０が次に発音すべき音符に対応する演奏命令を自動演奏楽器３０に対して出力する。タイミング制御装置１０は内部クロック（図示略）を有しており、時刻を計測している。演奏命令は所定のデータ形式に従って記述されている。所定のデータ形式とは例えばＭＩＤＩである。演奏命令は、ノートオンメッセージ、ノート番号、およびベロシティを含む。
【００２５】
表示部１５は、演奏位置の推定結果に関する情報と、自動演奏楽器３０による次の発音時刻の予想結果に関する情報と、を表示する。演奏位置の推定結果に関する情報は、例えば、楽譜、入力された音信号の周波数スペクトログラム、および、演奏位置の推定値の確率分布のうち少なくとも１つを含む。次の発音時刻の予想結果に関する情報は、例えば、状態ベクトルＶの有する各種状態変数を含む。表示部１５が演奏位置の推定結果に関する情報と次の発音時刻の予想結果に関する情報とを表示することにより、タイミング制御装置１０の操作者が合奏システム１の動作状態を把握することができる。
【００２６】
図３は、タイミング制御装置１０のハードウェア構成を例示する図である。タイミング制御装置１０は、プロセッサ１０１、メモリ１０２、ストレージ１０３、入出力ＩＦ１０４、および表示装置１０５を有するコンピュータ装置である。
プロセッサ１０１は、例えば、ＣＰＵ（Central Processing Unit）であり、タイミング制御装置１０の各部を制御する。なお、プロセッサ１０１は、ＣＰＵの代わりに、または、ＣＰＵに加えて、ＤＳＰ（Digital Signal Processor）、ＦＰＧＡ（Field Programmable Gate Array）等の、プログラマブルロジックデバイスを含んで構成されるものであってもよい。また、プロセッサ１０１は、複数のＣＰＵ（または、複数のプログラマブルロジックデバイス）を含むものであってもよい。メモリ１０２は、非一過性の記録媒体であり、例えば、ＲＡＭ（Random Access Memory）等の揮発性メモリである。メモリ１０２は、プロセッサ１０１が後述する制御プログラムを実行する際のワークエリアとして機能する。ストレージ１０３は、非一過性の記録媒体であり、例えば、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read-Only Memory）等の不揮発性メモリである。ストレージ１０３は、タイミング制御装置１０を制御するための制御プログラム等の各種プログラム、及び、各種データを記憶する。入出力ＩＦ１０４は、他の装置との間で信号の入力または出力を行うためのインターフェースである。入出力ＩＦ１０４は、例えば、マイクロフォン入力およびＭＩＤＩ出力を含む。表示装置１０５は、各種の情報を出力する装置であり、例えばＬＣＤ（Liquid Crystal Display）を含む。
【００２７】
プロセッサ１０１は、ストレージ１０３に記憶された制御プログラムを実行し、当該制御プログラムに従って動作することで、推定部１２、予想部１３、及び、出力部１４として機能する。メモリ１０２およびストレージ１０３の一方または双方は、記憶部１１としての機能を提供する。表示装置１０５は、表示部１５としての機能を提供する。
【００２８】
＜２．動作＞
図４は、タイミング制御装置１０の動作を例示するシーケンスチャートである。図４のシーケンスチャートは、例えば、プロセッサ１０１が制御プログラムを起動したことを契機として開始される。
【００２９】
ステップＳ１において、推定部１２は、音信号の入力を受け付ける。なお、音信号がアナログ信号である場合、例えば、タイミング制御装置１０に設けられたＤＡ変換器（図示略）によりデジタル信号に変換され、当該デジタルに変換された音信号が推定部１２に入力される。
【００３０】
ステップＳ２において、推定部１２は、音信号を解析して、楽譜における演奏の位置を推定する。ステップＳ２に係る処理は、例えば以下のとおり行われる。本実施形態において、楽譜における演奏位置の遷移（楽譜時系列）は確率モデルを用いて記述される。楽譜時系列の記述に確率モデルを用いることにより、演奏の誤り、演奏における繰り返しの省略、演奏におけるテンポの揺らぎ、および、演奏における音高または発音時刻の不確実性等の問題に対処することができる。楽譜時系列を記述する確率モデルとしては、例えば、隠れセミマルコフモデル（Hidden Semi-Markov Model、ＨＳＭＭ）が用いられる。推定部１２は、例えば、音信号をフレームに分割して定Ｑ変換を施すことにより周波数スペクトログラムを得る。推定部１２は、この周波数スペクトログラムから、オンセット時刻および音高を抽出する。推定部１２は、例えば、楽譜における演奏の位置を示す確率的な推定値の分布をDelayed-decisionで逐次推定し、当該分布のピークが楽譜上でオンセットとみなされる位置を通過した時点で、当該分布のラプラス近似および１または複数の統計量を出力する。具体的には、推定部１２は、楽曲データ上に存在するｎ番目の音符に対応する発音を検知すると、当該発音が検知された発音時刻Ｔ［ｎ］、楽譜における当該発音の確率的な位置を示す分布における楽譜上の平均位置および分散を出力する。楽譜上の平均位置が発音位置ｕ［ｎ］の推定値であり、分散が観測ノイズｑ［ｎ］の推定値である。なお、発音位置の推定の詳細は、例えば特開２０１５−７９１８３号公報に記載されている。
【００３１】
図５は、発音位置ｕ［ｎ］及び観測ノイズｑ［ｎ］を例示する図である。図５に示す例では、楽譜上の１小節に、４つの音符が含まれている場合を例示している。推定部１２は、当該１小節に含まれる４つの音符に応じた４つの発音と１対１に対応する確率分布Ｐ［１］〜Ｐ［４］を計算する。そして、推定部１２は、当該計算結果に基づいて、発音時刻Ｔ［ｎ］、発音位置ｕ［ｎ］、および、観測ノイズｑ［ｎ］を出力する。
【００３２】
再び図４を参照する。ステップＳ３において、予想部１３は、推定部１２から供給される推定値を観測値として用いて、自動演奏楽器３０による次の発音時刻の予想を行う。以下、ステップＳ３における処理の詳細の一例について説明する。
【００３３】
ステップＳ３において、受付部１３１は、推定部１２から供給される発音位置ｕ、発音時刻Ｔ、及び、観測ノイズｑ等の観測値の入力を受け付ける（ステップＳ３１）。さらに、受付部１３１は、これらの観測値を記憶部１１に記憶させる。記憶部１１は、例えば、少なくとも一定時間に亘り、受付部１３１が受け付けた観測値を記憶する。つまり、記憶部１１には、現時刻よりも一定時間だけ過去から現時刻に至る期間において受付部１３１が受け付けた複数の観測値が記憶されている。
【００３４】
ステップＳ３において、選択部１３２は、記憶部１１に記憶されている複数の観測値（「２以上の観測値」の一例）の中から、状態変数の更新に用いられる複数の観測値を選択する（ステップＳ３２）。そして、選択部１３２は、選択した複数の観測値を記憶部１１から読み出し、状態変数更新部１３３に出力する。
【００３５】
ステップＳ３において、状態変数更新部１３３は、選択部１３２から入力された複数の観測値を用いて、状態ベクトルＶの有する各状態変数を更新する（ステップＳ３３）。以下の説明では、状態変数更新部１３３は、次式（９）〜（１１）を用いて状態ベクトルＶ（状態変数である演奏位置ｘ及び速度ｖ）を更新する。すなわち、以下では、状態ベクトルＶの更新において、式（４）及び式（８）に代えて、式（９）及び式（１０）を用いる場合を例示して説明する。より具体的には、以下では、状態遷移モデルとして、上述した式（４）の代わりに、式（９）が採用される場合を例示して説明する。また、以下に示す式（１０）は、本実施形態に係る観測モデルの一例であり、式（８）を具体化した式の一例である。なお、状態変数更新部１３３は、式（９）〜（１１）を用いて更新した状態ベクトルＶを、予想時刻計算部１３４に出力する（ステップＳ３４）。
【数１０】
0006631713.tif 000011
【数１１】
0006631713.tif 000012
【数１２】
0006631713.tif 000013
ここで、式（９）の右辺第２項は、速度ｖ（テンポ）を基準速度ｖｄｅｆ［ｎ］に引き戻すための項である。なお、基準速度ｖｄｅｆ［ｎ］は、楽曲を通じて一定であってもよく、逆に、楽曲内の位置に応じて異なる値が設定されてもよい。例えば、基準速度ｖｄｅｆ［ｎ］は、楽曲中の特定箇所で演奏のテンポが極端に変化するように設定されてもよいし、演奏が人間らしいテンポの揺らぎを有するように設定されてもよい。なお、式（１１）を「ｘ〜Ｎ（ｍ，ｓ）」と表した場合、「ｘ」は、平均が「ｍ」であり且つ分散が「ｓ」である正規分布、から生成された確率変数であることを意味する。
【００３６】
ステップＳ３において、予想時刻計算部１３４は、状態変数更新部１３３から入力された状態ベクトルＶの有する状態変数である演奏位置ｘ［ｎ］及び速度ｖ［ｎ］を、式（６）及び式（７）に適用し、（ｎ＋１）番目の音符を発音すべき発音時刻Ｓ［ｎ＋１］を計算する（ステップＳ３５）。そして、予想時刻計算部１３４は、計算により得られた発音時刻Ｓ［ｎ＋１］を、出力部１４に対して出力する。
【００３７】
図６は、本実施形態に係る発音時刻の予想を説明するための説明図である。図６に示す例では、推定部１２から発音位置ｕ［１］〜ｕ［３］が供給された後において、自動演奏楽器３０による最初の発音に対応する音符をｍ［１］としている。そして、図６に示す例では、自動演奏楽器３０が、音符ｍ［１］を発音すべき発音時刻Ｓ［４］を予想する場合を例示する。なお、図６に示す例では、説明を簡単にするため、演奏位置ｘ［ｎ］と発音位置ｕ［ｎ］とが等しい位置であることと仮定する。
図６に示す例において、まず、式（４）および（５）に示す動的モデル（すなわち、「関連技術に係る動的モデル」）により、発音時刻Ｓ［４］を予想する場合を検討する。なお、以下では、説明の便宜上、関連技術に係る動的モデルを適用した場合に予想される発音時刻を「ＳＰ」と表現し、関連技術に係る動的モデルを適用した場合に求められる状態変数のうち演奏の速度を「ｖＰ」と表現する。関連技術に係る動的モデルでは、状態ベクトルＶの更新において、最新の観測値しか考慮しない。このため、関連技術に係る動的モデルでは、複数の観測値を考慮する場合と比較して、２番目の音符に対応して求められる速度ｖｐ［２］に対する、３番目の音符に対応して求められる速度ｖｐ［３］の変化の自由度が小さくなる。よって、関連技術に係る動的モデルでは、複数の観測値を考慮する場合と比較して、発音時刻ＳＰ［４］の予想における、発音位置ｕ［３］からの影響が大きくなる。
これに対し本実施形態によれば、過去の複数の時刻において推定部１２から供給された複数の観測値が考慮されるため、関連技術に係る動的モデルと比較して、２番目の音符に対応して求められる速度ｖ［２］に対する、３番目の音符に対応して求められる速度ｖ［３］の変化の自由度を大きくすることができる。よって、本実施形態によれば、関連技術に係る動的モデルと比較して、発音時刻Ｓ［４］の予想における、発音位置ｕ［３］からの影響を小さくすることができる。このため、本実施形態によれば、関連技術に係る動的モデルと比較して、発音時刻Ｓ［ｎ］（例えば、発音時刻Ｓ［４］）の予想において、観測値（例えば、発音位置ｕ［３］）の突発的なずれによる影響を小さく抑えることが可能となる。
【００３８】
再び図４を参照する。予想部１３から入力された発音時刻Ｓ［ｎ＋１］が到来すると、出力部１４は、自動演奏楽器３０が次に発音すべき（ｎ＋１）番目の音符に対応する演奏命令を、自動演奏楽器３０に出力する（ステップＳ４）。なお、実際には、出力部１４および自動演奏楽器３０における処理の遅延を考慮して、予想部１３により予想された発音時刻Ｓ［ｎ＋１］よりも早い時刻に演奏命令を出力する必要があるが、ここではその説明を省略する。自動演奏楽器３０は、タイミング制御装置１０から供給された演奏命令に従って発音する（ステップＳ５）。
【００３９】
あらかじめ決められたタイミングで、予想部１３は、演奏が終了したか判断する。具体的には、予想部１３は、演奏の終了を、例えば、推定部１２により推定された演奏位置に基づいて判断する。演奏位置が所定の終点に達した場合、予想部１３は、演奏が終了したと判断する。演奏が終了したと判断された場合、タイミング制御装置１０は、図４のシーケンスチャートに示される処理を終了する。演奏が終了していないと判断された場合、タイミング制御装置１０及び自動演奏楽器３０は、ステップＳ１〜Ｓ５の処理を繰り返し実行する。
【００４０】
なお、図４のシーケンスチャートに示されるタイミング制御装置１０の動作は、図７のフローチャートとしても表現することができる。すなわち、ステップＳ１において、推定部１２は、音信号の入力を受け付ける。ステップＳ２において、推定部１２は、楽譜における演奏の位置を推定する。ステップＳ３１において、受付部１３１は、推定部１２から供給される観測値の入力を受け付けるとともに、受け付けた観測値を記憶部１１に記憶させる。ステップＳ３２において、選択部１３２は、記憶部１１に記憶されている２以上の観測値の中から、状態変数の更新に用いるための複数の観測値を選択する。ステップＳ３３において、状態変数更新部１３３は、選択部１３２により選択された複数の観測値を用いて、状態ベクトルＶの有する各状態変数を更新する。ステップＳ３４において、状態変数更新部１３３は、ステップＳ３３において更新した状態変数を、予想時刻計算部１３４に対して出力する。ステップＳ３５において、予想時刻計算部１３４は、状態変数更新部１３３から出力された更新後の状態変数を用いて、発音時刻Ｓ［ｎ＋１］を計算する。ステップＳ４において、出力部１４は、発音時刻Ｓ［ｎ＋１］に基づいて、演奏命令を自動演奏楽器３０に対して出力する。
【００４１】
＜３．変形例＞
本発明は上述の実施形態に限定されるものではなく、種々の変形実施が可能である。以下、変形例をいくつか説明する。以下の変形例のうち２つ以上のものが組み合わせて用いられてもよい。
【００４２】
＜３−１．変形例１＞
タイミング制御装置１０によるタイミングの制御の対象となる装置（以下「制御対象装置」という）は、自動演奏楽器３０に限定されない。すなわち、予想部１３がタイミングを予想する「次のイベント」は、自動演奏楽器３０による次の発音に限定されない。制御対象装置は、例えば、演奏者Ｐの演奏と同期して変化する映像を生成する装置（例えば、リアルタイムで変化するコンピュータグラフィックスを生成する装置）であってもよいし、演奏者Ｐの演奏と同期して映像を変化させる表示装置（例えば、プロジェクターまたは直視のディスプレイ）であってもよい。別の例で、制御対象装置は、演奏者Ｐの演奏と同期してダンス等の動作を行うロボットであってもよい。
【００４３】
＜３−２．変形例２＞
演奏者Ｐは人間ではなくてもよい。すなわち、自動演奏楽器３０とは異なる他の自動演奏楽器の演奏音をタイミング制御装置１０に入力してもよい。この例によれば、複数の自動演奏楽器による合奏において、一方の自動演奏楽器の演奏タイミングを、他方の自動演奏楽器の演奏タイミングにリアルタイムで追従させることができる。
【００４４】
＜３−３．変形例３＞
演奏者Ｐおよび自動演奏楽器３０の数は実施形態で例示したものに限定されない。合奏システム１は、演奏者Ｐおよび自動演奏楽器３０の少なくとも一方を２人（２台）以上、含んでいてもよい。
【００４５】
＜３−４．変形例４＞
タイミング制御装置１０の機能構成は実施形態で例示したものに限定されない。図２に例示した機能要素の一部は省略されてもよい。例えば、タイミング制御装置１０は、選択部１３２を有さなくてもよい。この場合、例えば、記憶部１１は、所定の条件を満たす１または複数の観測値のみを記憶し、状態変数更新部１３３は、記憶部１１に記憶されている全部の観測値を用いて状態変数を更新する。
ここで、所定の条件としては、例えば、「観測値が、現時刻よりも所定時間だけ前の時刻から現時刻までの期間において、受付部１３１により受け付けられた観測値であるという条件」、「観測値が、楽譜において所定の範囲に位置する音符に対応する観測値であるという条件」、または、「観測値が、最新の観測値に対応する音符から数えて所定数以内の音符に対応する観測値であるという条件」、を例示することができる。
【００４６】
別の例で、タイミング制御装置１０は、予想時刻計算部１３４を有さなくてもよい。この場合、タイミング制御装置１０は、状態変数更新部１３３により更新された状態ベクトルＶが有する状態変数を単に出力するだけでもよい。この場合、状態変数更新部１３３により更新された状態ベクトルＶが有する状態変数が入力される装置であって、タイミング制御装置１０以外の装置において、次のイベントのタイミング（例えば、発音時刻Ｓ［ｎ＋１］）を計算をしてもよい。また、この場合、タイミング制御装置１０以外の装置において、次のイベントのタイミングの計算以外の処理（例えば、状態変数を可視化した画像の表示）を行ってもよい。さらに別の例で、タイミング制御装置１０は、表示部１５を有さなくてもよい。
【００４７】
＜３−５．変形例５＞
受付部１３１に入力される演奏のタイミングに関する観測値は、演奏者Ｐの演奏音に関するものに限定されない。受付部１３１には、演奏者Ｐの演奏タイミングに関する観測値（第１観測値の一例）である発音位置ｕ及び発音時刻Ｔに加えて、自動演奏楽器３０の演奏タイミングに関する観測値（第２観測値の一例）である発音時刻Ｓが入力されてもよい。この場合、予想部１３は、演奏者Ｐの演奏音と自動演奏楽器３０の演奏音とが状態変数を共有するものとして計算を行ってもよい。具体的には、本変形例に係る状態変数更新部１３３は、例えば、演奏位置ｘが、演奏者Ｐによる演奏の楽譜における位置の推定値と、自動演奏楽器３０による演奏の楽譜における位置の推定値との両方を表し、また、速度ｖが、演奏者Ｐによる演奏の楽譜における速度の推定値と、自動演奏楽器３０による演奏の楽譜における速度の推定値との両方を表すものとして、状態ベクトルＶの更新を行ってもよい。
【００４８】
＜３−６．変形例６＞
選択部１３２が、複数の時刻に対応する複数の観測値の中から状態変数の更新に用いられる複数の観測値を選択する手法は実施形態で例示されたものに限定されない。
選択部１３２は、実施形態で例示した手法で選択された複数の観測値のうちの一部を除外してもよい。除外される観測値は、例えば、当該観測値に対応する観測ノイズｑが所定の基準値よりも大きいものである。除外される観測値は、例えば、あらかじめ決められた回帰線からのずれが所定の基準値よりも大きいものであってもよい。回帰線は例えば事前の学習（リハーサル）によって決められる。これらの例によれば、演奏誤りの可能性が高い観測値を除外することができる。あるいは、除外される観測値は、楽譜に記述された楽曲に関する情報を用いて決められてもよい。具体的には、選択部１３２は、特定の音楽記号（一例としてはフェルマータ）が付された音符に対応する観測値を除外してもよい。また逆に、選択部１３２は、特定の音楽記号が付された音符に対応する観測値のみを選択してもよい。この例によれば、楽譜に記述された楽曲に関する情報を用いて観測値を選択することができる。
【００４９】
別の例で、選択部１３２が、複数の時刻に対応する複数の観測値の中から状態変数の更新に用いられる複数の観測値を選択する手法は、楽譜上の位置に応じてあらかじめ設定されていてもよい。例えば、楽曲の開始から２０小節目までは直近の１０秒の観測値を考慮し、２１小節目から３０小節目までは直近の４音の観測値を考慮し、３１小節目から終点までは直近２小節の観測値を考慮する、というように設定されていてもよい。この例によれば、楽譜上の位置に応じて、観測値の突発的なずれに対する影響の程度を制御することができる。なおこの場合において、楽曲の一部に、最新の観測値のみを考慮する区間が含まれていてもよい。
【００５０】
＜３−７．変形例７＞
選択部１３２が、複数の時刻に対応する複数の観測値の中から状態変数の更新に用いられる複数の観測値を選択する手法は、演奏者Ｐの演奏音と自動演奏楽器３０の演奏音との音符の密度の比に応じて変更されてもよい。具体的には、自動演奏楽器３０の発音を示す音符の密度に対する、演奏者Ｐの発音を示す音符の密度の比率（以下、「音符密度比」と称する）に応じて、状態変数の更新に用いられる複数の観測値を選択してもよい。
例えば、本変形例において、選択部１３２は、時間フィルタに基づいて複数の観測値を選択する場合であって、音符密度比が所定の閾値よりも高い場合（演奏者Ｐの演奏音の方が相対的に音符数が多い場合）には、音符密度比が所定の閾値以下の場合と比較して、時間フィルタの時間長（選択期間の時間長）が短くなるように、状態変数の更新に用いられる複数の観測値を選択してもよい。
また、例えば、本変形例において、選択部１３２は、音符数に基づいて複数の観測値を選択する場合であって、音符密度比が所定の閾値よりも高い場合には、音符密度比が所定の閾値以下の場合と比較して、選択される観測値の個数が少なくなるように、状態変数の更新に用いられる複数の観測値を選択してもよい。
また、本変形例において、選択部１３２は、音符密度比に応じて、状態変数の更新に用いられる複数の観測値の選択の態様を変更してもよい。例えば、選択部１３２は、音符密度比が所定の閾値よりも高い場合には、複数の観測値を音符数に基づいて選択し、音符密度比が所定の閾値以下の場合には、複数の観測値を時間フィルタに基づいて選択してもよい。
また、本変形例において、選択部１３２は、小節数によって観測値が選択される場合であって、音符密度比が所定の閾値以下の場合（例えば、自動演奏楽器３０の演奏音の方が相対的に音符数が多い場合）には、観測値の選択の対象となる小節数が長くなるように、状態変数の更新に用いられる複数の観測値を選択してもよい。
なお、音符の密度は、演奏者Ｐの演奏音（音信号）に対しては検知されたオンセットの数に基づいて計算され、自動演奏楽器３０の演奏音（ＭＩＤＩメッセージ）に対してはノートオンメッセージの数に基づいて計算される。
【００５１】
＜３−８．変形例８＞
上述した実施形態及び変形例では、予想時刻計算部１３４が式（６）を用いて、将来の時刻ｔにおける演奏位置ｘ［ｔ］を計算するが、本発明はこのような態様に限定されるものではない。
例えば、状態変数更新部１３３が、状態ベクトルＶを更新する動的モデルを用いて、演奏位置ｘ［ｎ＋１］を算出してもよい。この場合、状態変数更新部１３３は、状態遷移モデルとして、上述した式（４）または式（９）に代えて、例えば、以下の式（１２）または式（１３）を用いてもよい。また、この場合、状態変数更新部１３３は、観測モデルとして、上述した式（８）または式（１０）に代えて、例えば、以下の式（１４）または式（１５）を用いてもよい。
【数１３】
0006631713.tif 000014
【００５２】
＜３−９．変形例９＞
センサー群２０により検知される演奏者Ｐの挙動は、演奏音に限定されない。センサー群２０は、演奏音に代えて、または加えて、演奏者Ｐの動きを検知してもよい。この場合、センサー群２０は、カメラまたはモーションセンサーを有する。
【００５３】
＜３−１０．他の変形例＞
推定部１２における演奏位置の推定のアルゴリズムは実施形態で例示したものに限定されない。推定部１２は、あらかじめ与えられた楽譜、および、センサー群２０から入力される音信号に基づいて、楽譜における演奏の位置を推定できるものであれば、どのようなアルゴリズムが適用されてもよい。また、推定部１２から予想部１３に入力される観測値は、実施形態で例示したものに限定されない。演奏のタイミングに関するものであれば、発音位置ｕおよび発音時刻Ｔ以外のどのような観測値が予想部１３に入力されてもよい。
【００５４】
予想部１３において用いられる動的モデルは、実施形態で例示したものに限定されない。上述した実施形態及び変形例において、予想部１３は、カルマンフィルタを用いて状態ベクトルＶを更新したが、カルマンフィルタ以外のアルゴリズムを用いて状態ベクトルＶを更新してもよい。例えば、予想部１３は、粒子フィルタを用いて状態ベクトルＶを更新してもよい。この場合、粒子フィルタにおいて利用される状態遷移モデルは、上述した式（２）、式（４）、式（９）、式（１２）、または、式（１３）でもよいし、これらとは異なる状態遷移モデルを利用してもよい。また、粒子フィルタにおいて用いられる観測モデルは、上述した式（３）、式（５）、式（８）、式（１０）、式（１４）、または、式（１５）でもよいし、これらとは異なる観測モデルを利用してもよい。
また、演奏位置ｘおよび速度ｖに代えて、または加えて、これら以外の状態変数が用いられてもよい。実施形態で示した数式はあくまで例示であり、本願発明はこれに限定されるものではない。
【００５５】
合奏システム１を構成する各装置のハードウェア構成は実施形態で例示したものに限定されない。要求される機能を実現できるものであれば、具体的なハードウェア構成はどのようなものであってもよい。例えば、タイミング制御装置１０は、単一のプロセッサ１０１が制御プログラムを実行することにより推定部１２、予想部１３、および、出力部１４として機能するのではなく、推定部１２、予想部１３、および、出力部１４のそれぞれに対応する複数のプロセッサを有してもよい。また、物理的に複数の装置が協働して、合奏システム１におけるタイミング制御装置１０として機能してもよい。
【００５６】
タイミング制御装置１０のプロセッサ１０１により実行される制御プログラムは、光ディスク、磁気ディスク、半導体メモリなどの非一過性の記憶媒体により提供されてもよいし、インターネット等の通信回線を介したダウンロードにより提供されてもよい。また、制御プログラムは、図４のすべてのステップを備える必要はない。例えば、このプログラムは、ステップＳ３１、Ｓ３３、およびＳ３４のみ有してもよい。
【００５７】
＜本発明の好適な態様＞
上述した実施形態及び変形例の記載より把握される本発明の好適な態様を以下に例示する。
【００５８】
＜第１の態様＞
本発明の第１の態様に係るタイミング予想方法は、演奏における発音のタイミングに関する複数の観測値を用いて、演奏における次の発音のイベントのタイミングに関する状態変数を更新するステップと、更新された状態変数を出力するステップとを有することを特徴とする。
この態様によれば、演奏におけるイベントのタイミングの予想に対する、演奏における発音のタイミングの突発的なずれによる影響を小さく抑えることができる。
【００５９】
＜第２の態様＞
本発明の第２の態様に係るタイミング予想方法は、第１の態様に係るタイミング予想方法において、更新された状態変数に基づいて定められるタイミングで発音手段に発音させるステップを有することを特徴とする。
この態様によれば、予想されたタイミングで発音手段に発音させることができる。
【００６０】
＜第３の態様＞
本発明の第３の態様に係るタイミング予想方法は、第１または第２の態様に係るタイミング予想方法において、演奏における発音のタイミングに関する２以上の観測値を受け付けるステップを有し、２以上の観測値の中から、状態変数の更新に用いられる複数の観測値を選択するステップを有することを特徴とする。
この態様によれば、演奏におけるイベントのタイミングの予想に対する、演奏における発音のタイミングの突発的なずれによる影響の大きさを制御することができる。
【００６１】
＜第４の態様＞
本発明の第４の態様に係るタイミング予想方法は、第３の態様に係るタイミング予想方法において、演奏における発音手段の発音を示す音符の密度に対する、演奏における演奏者の発音を示す音符の密度の比率に応じて、複数の観測値を選択することを特徴とする。
この態様によれば、演奏におけるイベントのタイミングの予想に対する、演奏における発音のタイミングの突発的なずれによる影響の大きさを、音符密度の比率に応じて制御することができる。
【００６２】
＜第５の態様＞
本発明の第５の態様に係るタイミング予想方法は、第４の態様に係るタイミング予想方法において、比率に応じて、選択の態様を変更するステップを有することを特徴とする。
この態様によれば、演奏におけるイベントのタイミングの予想に対する、演奏における発音のタイミングの突発的なずれによる影響の大きさを、音符密度の比率に応じて制御することができる。
【００６３】
＜第６の態様＞
本発明の第６の態様に係るタイミング予想方法は、第４または第５の態様に係るタイミング予想方法において、比率が所定の閾値よりも大きい場合には、比率が所定の閾値以下である場合と比較して、選択される観測値の個数を少なくする、ことを特徴とする。
この態様によれば、演奏におけるイベントのタイミングの予想に対する、演奏における発音のタイミングの突発的なずれによる影響の大きさを、音符密度の比率に応じて制御することができる。
【００６４】
＜第７の態様＞
本発明の第７の態様に係るタイミング予想方法は、第４または第５の態様に係るタイミング予想方法において、複数の観測値が、２以上の観測値のうち、選択期間において受け付けられた観測値であり、比率が所定の閾値よりも大きい場合には、比率が所定の閾値以下である場合と比較して、選択期間を短くする、ことを特徴とする。
この態様によれば、演奏におけるイベントのタイミングの予想に対する、演奏における発音のタイミングの突発的なずれによる影響の大きさを、音符密度の比率に応じて制御することができる。
【００６５】
＜第８の態様＞
本発明の第８の態様に係るタイミング予想装置は、演奏における発音のタイミングに関する複数の観測値を受け付ける受付部と、複数の観測値を用いて、演奏における次の発音のイベントのタイミングに関する状態変数を更新する更新部と、を備えることを特徴とする。
この態様によれば、演奏におけるイベントのタイミングの予想に対する、演奏における発音のタイミングの突発的なずれによる影響を小さく抑えることができる。
【符号の説明】
【００６６】
１…合奏システム、１０…タイミング制御装置、１１…記憶部、１２…推定部、１３…予想部、１４…出力部、１５…表示部、２０…センサー群、３０…自動演奏楽器、１０１…プロセッサ、１０２…メモリ、１０３…ストレージ、１０４…入出力ＩＦ、１０５…表示装置、１３１…受付部、１３２…選択部、１３３…状態変数更新部、１３４…予想時刻計算部。
【図１】
0006631713.tif 000015
【図２】
0006631713.tif 000016
【図３】
0006631713.tif 000017
【図４】
0006631713.tif 000018
【図５】
0006631713.tif 000019
【図６】
0006631713.tif 000020
【図７】
0006631713.tif 000021