(57)【特許請求の範囲】
【請求項１】
アニメーションを構成する複数フレームのそれぞれについて、隣接するフレームとの間の境界に対応するタイミングを指示するタイミング指示信号を入力するための指示信号入力ステップと、
前記指示信号入力ステップにより前記タイミング指示信号が入力された時刻を、現在のフレームの表示終了の時刻かつ次のフレームの表示開始の時刻として一時的に記録する入力時刻記録ステップと、
前記複数フレームのそれぞれについて、前記入力時刻記録ステップにより記録された該フレームの前記表示終了時刻と前記表示開始時刻との差に可変の係数を乗じた時間を、該フレームの表示時間として決定する時間決定ステップと、
前記時間決定ステップにより決定された前記表示時間を示す情報を、前記複数フレームのそれぞれごとに媒体に記録するステップとを備える、アニメーション作成方法。
【請求項２】
前記指示信号入力ステップでは、
各フレーム固有の表示再生時間の基準となるガイドトラック情報を予めメモリに入力しておき、前記ガイドトラック情報を再生しつつ、前記タイミング指示信号を入力することを特徴とする、請求項１に記載のアニメーション作成方法。
【請求項３】
前記アニメーションの各フレームはキーフレーム補間方式のアニメーションのキーフレームであることを特徴とする請求項１又は２に記載のアニメーション作成方法。
【請求項４】
前記ガイドトラック情報は、音声を発生させるための波形又は音符の情報であることを特徴とする請求項２に記載のアニメーション作成方法。
【請求項５】
前記ガイドトラック情報は、予めメモリに記録された動画の情報であり、その動画と、新たに作成するアニメーションの画像とを合成し、ディスプレイ画面に表示するステップをさらに備える請求項２に記載のアニメーション作成方法。
【請求項６】
前記ガイドトラック情報は、コンピュータ内部のタイマによって発生させる、テンポが任意に設定可能なメトロノーム信号であり、前記ガイドトラック情報を再生させるステップとして、前記メトロノーム信号の変換ステップ及び出力ステップを用いてなることを特徴とする請求項２に記載のアニメーション作成方法。
【請求項７】
前記タイミング指示信号は、前記ガイドトラック情報に対応した、任意の抽出条件のフィルタを通した信号であることを特徴とする請求項２に記載のアニメーション作成方法。
【請求項８】
アニメーションを構成する複数フレームのそれぞれについて、隣接するフレームとの間の境界に対応するタイミングを指示するタイミング指示信号を入力するための指示信号入力手段と、
前記指示信号入力手段により前記タイミング指示信号が入力された時刻を、現在のフレームの表示終了の時刻かつ次のフレームの表示開始の時刻として一時的に記録する入力時刻記録手段と、
前記複数フレームのそれぞれについて、前記入力時刻記録手段により記録された該フレームの前記表示終了時刻と前記表示開始時刻との差に可変の係数を乗じた時間を、該フレームの表示時間として決定する時間決定手段と、
前記時間決定手段により決定された前記表示時間を示す情報を、前記複数フレームのそれぞれごとに媒体に記録する手段とを備える、アニメーション作成装置。
【請求項９】
アニメーションを構成する複数フレームのそれぞれについて、隣接するフレームとの間の境界に対応するタイミングを指示するタイミング指示信号を入力するための指示信号入力ステップと、
前記指示信号入力ステップにより前記タイミング指示信号が入力された時刻を、現在のフレームの表示終了の時刻かつ次のフレームの表示開始の時刻として一時的に記録する入力時刻記録ステップと、
前記複数フレームのそれぞれについて、前記入力時刻記録ステップにより記録された該フレームの前記表示終了時刻と前記表示開始時刻との差に可変の係数を乗じた時間を、該フレームの表示時間として決定する時間決定ステップと、
前記時間決定ステップにより決定された前記表示時間を示す情報を、前記複数フレームのそれぞれごとに媒体に記録するステップとをコンピュータにより実現するためのアニメーション作成プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、コンピュータを用いて各フレームの固有の表示時間を持ったアニメーションを作成するアニメーション作成装置、作成方法及び記録媒体に関するものである。
【０００２】
【従来の技術】
コンピュータを用いて、動きのタイミングが任意に調整されたアニメーションを作成する方法として、いくつかの方法が実用化され、提案されている。
【０００３】
第１の例として、マクロメディア社のオーサリングソフトウェアであるＤｉｒｅｃｔｏｒ（商品名）を用いて音声を同期させたアニメーションを作成する方法を説明する。
【０００４】
図８は、Ｄｉｒｅｃｔｏｒで用いられる、アニメーションを制御するための、スコアと呼ばれる表を模式的に描いたものである。スコアの縦軸はサウンドチャンネル１００１、アニメーションチャンネル１００２、テンポチャンネル１００９等のチャンネルによって構成され、横軸は時間に沿ったアニメーションの各フレーム１００３で構成されている。従って、縦１列がひとつのフレームとして扱われる。Ｄｉｒｅｃｔｏｒでは、この、各チャンネルと各フレームの交点に位置する、セルと呼ばれる升目１００４に、図９のキャストと呼ばれる音声データ１１０１や画像データ１１０２などを対応づけることにより、アニメーションを作成する。
【０００５】
キャストはキャスト番号１１０３を持ち、キャストが対応付けられたスコアのセルには、通常、１００５などに示すように、キャスト番号が表示される（ここでは混乱を避けるために、キャスト番号を丸で囲んだが、実際には丸は付されていない）。Ｄｉｒｅｃｔｏｒでは、スコアに対応付けられたキャストをスプライトと呼んでいる。
【０００６】
Ｄｉｒｅｃｔｏｒのサウンドチャンネルでは、同じキャスト番号に対応するスプライトが横方向に隣接している場合、１回の音声データとして扱われる。例えば、４個のフレームのサウンドチャンネルに対応付けられたスプライト１００５《キャスト番号（１１）》では、左端のフレームの先端に対応する時刻に音声データの再生が開始され、右端のフレームの後尾に対応する時刻に再生が終了する。
【０００７】
同一のフレームに位置するスプライトは、同一時刻に再生される。例えば、図８のスコアにおいては、キャスト番号（１１）のスプライト（音声）とキャスト番号（２１）のスプライト（画像）は同時に再生が開始される。
【０００８】
また、各フレームの表示時間は、テンポチャンネル１００９によって制御される。テンポチャンネルの各セルには、図１１のようなテンポ設定画面が対応付けられ、テンポ設定画面の番号が表示される（１０３１〜１０３４）。
【０００９】
テンポ設定画面では、通常、スライダ１３０３によって１秒間のフレーム数を設定する。また、１３０３又は１３０４の選択ボタンが選択されている場合は、スライダ１３０２が無視され、サウンドチャンネル１００１のいずれかの対応する音声の再生の終了を待って次のフレームに進む。
【００１０】
第２の例として、コンピュータを用いたビデオ編集システムの中に、同期の作業を容易にするために、音声を波形として視覚的に編集した上で、映像を編集する方法もある。図１２に、そのような編集システムのユーザインターフェイスの例を示す。この例は、波形として表示された音声トラック１４０１に、画像トラック１４０２を同期させようとするものである。
【００１１】
操作としては、画像トラック１４０２の各画像を、マウスなどの入力手段を用いて、対応する音声の部分の波形の部分に移動する。
【００１２】
第３の例として、特開平４−３２４７７７号公報に、映像データと音声データの時間の長さの差を検出して、一方の信号の読み出し時間間隔を調整することにより、他方の時間に合わせ、映像と音声の同期を図ろうとする技術が提案されている。
【００１３】
【発明が解決しようとする課題】
第１の例において、Ｄｉｒｅｃｔｏｒを使って、例えば、前述の「いち、に、さん、し」の音声１１０１に、画像１１０２によるアニメーションを同期させようとする場合について、作業手順の流れ図（図１０）を参照して説明する。
【００１４】
再生してみて（ステップＳ１２０２）、まず２つめ（ｉ＝２）の画像《キャスト番号（２２）》が「に」の音声と同期しているかどうか確認（ステップＳ１２０３）し、仮に画像の方が早ければ、１つめ（ｉ＝１）のフレームのテンポチャンネルに対応する設定画面（図１１）を開き、テンポを幾分遅く設定する（ステップＳ１２０５）。次に再び再生し（ステップＳ１２０３）、今度は仮に音声の方が早ければ、１つめ（ｉ＝１）のフレームのテンポチャンネルに対応する設定画面（図１１）を開き、テンポを幾分か早く設定する（ステップＳ１２０４）。
【００１５】
このような試行錯誤を繰り返して、２つめの画像が音声に同期できた段階で、ようやく次のフレーム（ｉ＝３）に進む（ステップＳ１２０７）。以上のような試行錯誤を、「さん」（ｉ＝３）、「し」（ｉ＝４）のそれぞれの画像についても、繰り返す必要がある。
【００１６】
また、音声を用いず、単に画像のアニメーションだけを作成しようとする場合についても、制作者の意図どおりの時間の流れに沿った、正確な動きを実現するためには、図１０のフローチャートと同様の手順を要し、修正作業に多大な労力を要する。当然、長いアニメーションを対象とすれば、労力はさらに増大する。
【００１７】
第２の例として示した、波形表示の機能を持ったビデオ編集システムを用いて、音声とアニメーションを同期させようとする場合、長い音声であれば、波形をみて音声のどの部分であるかを推測するのは容易でない。このため、音とアニメーションを再生しながら、同期していない部分を検出し、前から順に逐次修正する、と言った図１０の作業の流れと類似の試行錯誤の繰り返しが不可欠であり、作業には多大な労力を要する。
【００１８】
第３の例として示した特開平４−３２４７７７号公報の技術では、映像と音声のそれぞれの対応する部分（断片）が予め与えられている場合に、それぞれの同期を図ろうとするものであり、それぞれの対応する部分を切り出す方法については述べられていない。例えば、ひとつのショット（撮影の単位）の短い台詞に対応する映像と音声が予め切り出されている場合については、特開平４−３２４７７７号公報の技術により、効率的に同期を行うことが可能である。
【００１９】
しかし、長い映像と長い音声を同期させようとする場合、全体の開始時点と終了時点は容易に合わせることができるが、途中の動作と音声をすべて同期させるためには、映像と音声の、それぞれの対応する部分を、別途、何らかのシステムを用いてすべて切り出し、複数の断片として保有した上で、それぞれの断片について特開平４−３２４７７７号公報の技術による同期を行っていくという、数多くの作業を要する。
【００２０】
本発明は以上の問題に鑑み、より少ない作業時間で、制作者の意図どおりの時間の流れに沿った動きを持ったアニメーションデータで作成し、特に音声などと同期されたアニメーションデータの作成を容易にすることを目的とする。
【００２１】
【課題を解決するための手段】
アニメーション作成方法は、コンピュータプログラムを用いて、各フレーム固有の表示時間を持ったアニメーションを作成するためのアニメーション作成方法であって、任意の速度によって進行する時間の中で、アニメーションの各フレームの境界となるタイミングを指示する信号をタイミング信号入力部に入力するステップと、入力された信号に基づいて、各フレーム固有の表示時間を求め、メモリに記録するステップと、を少なくとも有してなることによって上記目的を達成する。
【００２２】
ここで、アニメーションの対象となる各フレームの画像を入力するステップは、予め入力しおいても、上述の処理を終えた後、即ち、各フレーム固有の表示時間を決定し記録した後に入力してもよい。
【００２３】
処理が開始されると、タイマが初期化された後、以下の繰り返しが行われる。まず、そのフレームと次のフレームの境界となるタイミングを指示する信号の入力待ち状態となる。タイミングを指示する信号が入力されると、タイマからその時点の時刻情報を得て、前回の時刻情報との差を求め、そのフレームの固有の表示時間として記録する。タイミングを指示する信号は、実時間の中で、制作者が思い通りの間隔で直感的に入力することができるので、各フレーム固有の表示時間を先頭から逐次試行錯誤しつつ入力するのとは異なり、はるかに短時間で入力を完了させることができる。
【００２４】
また、タイマから得た時刻情報に、一定の係数をかけることにより、異なった速度の時間の進行の中で、各フレームの境界となるタイミングを指示する信号を入力することが可能となる。
【００２５】
この係数が１の場合は、目的とする再生速度と同一の時間の進み方の中で信号を入力することになるが、この係数が１より小さい場合は、スローモーションの状態で入力することになり、より精密、またはより細かく分割されたタイミングの指示が可能となると同時に、反射神経やリズム感が比較的劣る制作者でも、より正確なタイミング指示が可能となる。
【００２６】
逆に、制作者にとってタイミング指示の動作に十分な余裕がある場合、この係数を１より大きくすれば、早送りの状態でタイミング指示を行うことになり、より早く作業を完了させることが可能となる。
【００２７】
アニメーション作成方法は、コンピュータプログラムを用いて、各フレーム固有の表示時間を持ったアニメーションを作成するためのアニメーション作成方法であって、各フレーム固有の表示再生時間の基準となるガイドトラック情報を予めメモリに入力しておき、任意の速度によって進行する時間の中で、前記ガイドトラック情報を前記速度に基づいた再生レートで再生しつつ、アニメーションの各フレームの境界となるタイミングを指示する信号をタイミング信号入力部に入力するステップと、入力された信号に基づいて、各フレーム固有の表示時間を求め、メモリに記録するステップと、を少なくとも有してなることによって上記目的を達成する。
【００２８】
ガイドトラック情報を再生しながら、それに合わせて、タイミングを指示する信号を入力することにより、ガイドトラック情報と同期されたアニメーションを容易に作成することができる。
【００２９】
また、異なった速度の時間の進行の中で、それに合わせた速度に基づいた再生レートでガイドトラック情報を再生しながら、各フレームの境界となるタイミングを指示する信号を入力していくことによる利点は、請求項１の場合と同様である。
【００３０】
アニメーション作成方法は、前記アニメーションの各フレームがキーフレーム補間方式のアニメーションのキーフレームであることによって上記目的を達成する。
【００３１】
キーフレーム補間方式のアニメーションでは、特開昭６０−１９１３６６号公報にあるように、その再生に際して、各キーフレームの間に位置する複数の中間フレームを補間計算によって生成することにより、少ない元画像からなめらかなアニメーションを生成しようとするものであるが、アニメーションの各フレームを、キーフレーム補間方式のアニメーションの各キーフレームとすることによって、各キーフレーム間の再生時間を、実時間の中で、制作者が思いどおりに直感的に入力することができるので、各キーフレーム間の再生時間を先頭から逐一試行錯誤しつつ入力するのとは異なり、はるかに短時間で入力を完了させることができる。
【００３２】
アニメーション作成方法は、前記ガイドトラック情報が、音声を発生させるための波形又は音符の情報であることによって上記目的を達成する。
【００３３】
まず、波形の情報について述べる。
【００３４】
波形の情報を、予め設定された速度によって進行する時間を並行して、同じ速度に基づいた再生レートで再生するために、一定のサンプリング（標本化）レートに基づいて波形の振幅情報が１サンプルずつ格納されたメモリの配列に対し、読み取りレートとして、サンプリングレートに一定の係数を掛けたのを用いることによって実現する。この係数は、前記タイマーから得た時刻情報に掛ける係数と同一とすることにより、予め設定された速度に同期することができる。読み出された振幅情報は、ディジタル・アナログ（Ｄ／Ａ）変換器によってアナログの電気信号に変換し、増幅回路を経てスピーカによって音声として再生される。
【００３５】
次に、音符の情報について述べる。
【００３６】
音符の情報について、波形の場合のように再生速度を変更するためには、情報の格納方法により、実現方法が異なる。一例として、ＭＩＤＩ（ＭｕｓｉｃａｌＩｎｓｔｒｕｍｅｎｔ  Ｄｉｇｉｔａｌ  Ｉｎｔｅｒｆａｃｅ）と呼ばれる音符情報の一般的な格納方法（Ｓｔａｎｄａｒｄ  ＭＩＤＩ  Ｆｉｌｅ）では、データの先頭付近およびテンポを変更する時点に対応する位置に、テンポ情報を数値として格納している（ここで言うテンポとは、１分間に再生される特定の音符の数）。したがって、ひとつのＳｔａｎｄａｒｄ  ＭＩＤＩ  Ｆｉｌｅの再生速度を変更するためには、ファイルに含まれるすべてのテンポ情報の数値に対して、一定の係数を掛けることが必要である。尚、音符の情報を音声として出力する方法として、ＣＰＵに接続された音源モジュール（ミュージックシンセサイザ）を発音させる方式や、メモリ上に展開された波形テーブルを読み出して、前記波形の情報の場合と同様の原理でＤ／Ａ変換によって発音させる方式が、公知技術としてある。
【００３７】
以上のようにして、予め設定された速度によって進行する時間と並行して、同じ速度に基づいた再生レートで音声の波形や音符の情報を再生することにより、音声や音符に同期したアニメーションを容易に作成することが可能となる。
【００３８】
アニメーション作成方法は、前記ガイドトラック情報が、予めメモリに記録された動画の情報であり、その動画と、新たに作成するアニメーションの画像とを合成し、ディスプレイ画面に表示するステップ、とを含んでなることによって、上記目的を達成する。
【００３９】
動画の再生レートの変更に関しては、音声の場合とほぼ同様であり、音声の説明で述べた１サンプルの振幅情報の変わりに、動画の情報の中の１フレームの画像情報を用いる。
【００４０】
予め記録された動画のひとつのフレーム（以下画像Ａ）と今回作成するアニメーションの画像（以下画像Ｂ）との合成の方法には、主に、２つの方法が考えられる。
【００４１】
第１の方法は、画像Ａまたは画像Ｂのいずれかについて、特定の色域を透明色と定義して、透明色の部分に他方の画像情報を転送して合成する方法である。これは、ハードウェアによる方法とソフトウェアによる方法とがあり、いずれも、スーパーインポーズと呼ばれる公知の技術であるため、ここではこれ以上の詳細は述べない。
【００４２】
第２の方法は、画像Ｂが線や多角形などの図形の描画コマンドによって描かれる方式である場合に適用できる方法であり、画像Ａの画素情報が展開されたメモリを対象領域として、画像Ｂを描くための描画コマンドを実行する。これによって、画像Ａに対して、画像Ｂを構成する図形が上書きされた画像が生成される。
【００４３】
これらの方法は、実写画像を画像Ａとし、キャラクタアニメーションや実写を説明する文字や矢印などを画像Ｂとして合成する場合に、特に効果的である。
【００４４】
以上のように、予め設定された速度によって進行する時間と並行して、同じ速度に基づいた再生レートで予め記録された動画の情報を再生し、今回作成するアニメーションと合成することにより、動画に同期し、合成されたアニメーションを容易に作成することが可能となる。
【００４５】
アニメーション作成方法は、前記ガイドトラック情報が、コンピュータ内部のタイマによって発生させる、テンポが任意に設定可能なメトロノーム信号であり、前記ガイドトラック情報を再生させるステップとして、前記メトロノーム信号の変換ステップ及び出力ステップを用いてなることにより上記の目的を達成する。
【００４６】
出力されたメトロノーム信号を基準として、アニメーションの各フレームの境界となるタイミングを指示する信号を入力することにより、音声などのタイミングと無関係なアニメーションを作成する場合であっても、客観的な速度に基づいた動きをつけることが可能となる。また、全体の尺（時間の長さ）が決められたアニメーションの作成が容易となる。例えば、１秒に１回再生されるメトロノーム信号に合わせて動きをつける場合、３０回のメトロノーム信号が再生される時間内に、すべてのフレームに対して境界となるタイミングを指示する信号を入力するようにフレーム割りを設計すれば、正確な３０秒の長さのアニメーションを容易に作成することができる。
【００４７】
メトロノーム信号の変換手段および出力手段としては、各種の方法が考えられるが、いずれもメトロノーム信号をトリガ信号として用い、音声、画像、発光ダイオードなどの出力手段を用いることにより、制作者に知覚可能な出力信号に変換する。
【００４８】
アニメーション作成方法は、アニメーションの各フレームの境界となるタイミングを指示する信号が、前記ガイドトラック情報に対応した、任意の抽出条件のフィルタを通した信号であることにより上記の目的を達成する。
【００４９】
例えば、ガイドトラック情報が音声の波形の情報である場合、波形の振幅の絶対値が一定のしきい値を越えた場合に、アニメーションの各フレームの境界となるタイミングを指示する信号を自動的に発生させることができる（但し、この場合、チャタリングによる影響を除去するために、信号の一定時間内の連続発生を抑制する必要がある。）。この場合、自動的にしきい値を越える大きな音が鳴る瞬間を正確にアニメーションのフレームの境界に合わせることが可能となる。
【００５０】
また、ガイドトラック情報が動画の情報である場合、ショット（撮影の単位）の境界を検出し、アニメーションの各フレームの境界となるタイミングを指示する信号を自動的に発生させることができる。これにより、自動的に、ショットの境界を正確にアニメーションのフレームの境界に合わせることが可能となる。ショットの境界を検出するためには、様々な手法が考えられるが、ひとつの方法として、画像を構成する各画素の色情報が、１フレーム前と大きく変化した時点をショットの境界と見做すことができる。
【００５１】
特定の条件のフィルタを通した結果の信号を改めて入力することになる場合の入力方法は、入力装置を用いる場合に限らず、メモリ内部に展開されたプログラムを構成するモジュール間でのデータ受け渡しによる入力を含む。
【００５３】
抽出された信号により、実時間で、各フレームの固有の表示時間を記録していくが、実時間ではなく、計算により信号に対応するフレームの位置を求め、そのフレームの固有の表示時間を記録していく。したがって、この方法は、信号の抽出処理の負荷により、実時間処理が困難な場合に有効である。
【００５４】
アニメーション作成装置は、コンピュータプログラムを用いて、各フレーム固有の表示時間を持ったアニメーションを作成するためのアニメーション作成装置であって、任意の速度によって進行する時間の中で、アニメーションの各フレームの境界となるタイミングを指示する信号をタイミング信号入力部に入力する手段と、入力された信号に基づいて、各フレーム固有の表示時間を求め、メモリに記録する手段と、を少なくとも有してなることにより、上記の目的を達成する。
【００５５】
記録媒体は、コンピュータプログラムを用いて、各フレーム固有の表示時間を持ったアニメーションを作成する際、任意の速度によって進行する時間の中で、アニメーションの各フレームの境界となるタイミングを指示する信号をタイミング信号入力部に入力するステップと、入力された信号に基づいて、各フレーム固有の表示時間を求め、メモリに記録するステップと、を実現するためのアニメーション作成プログラムを記録したコンピュータ読み取り可能な記録媒体を提供することにより、上記の目的を達成する。
【００５６】
【発明の実施の形態】
図１を参照して、本願発明のアニメーション作成方法を説明する。本アニメーション作成方法は、コンピュータ１００により、実現される。コンピュータ１００は、所定のプログラムを実行することにより本願発明の各ステップの処理を実現するためのＣＰＵ１０１と、ＣＰＵ１０１に接続されたメモリ１０２と、時刻に関する情報をＣＰＵ１０１が得るためのタイマ１０６と、タイミングを指示する信号を入力するためのタイミング信号入力部１０７とを含み、以上を基本構成とする。また、下記実施例に示すように、拡張部分としてＣＰＵ１０１がアニメーション画像を書き込むグラフィックメモリ１０８と、グラフィックメモリ１０８上の画像を表示するためのディスプレイ画面１０９と、ガイドトラック情報を再生するための、ガイドトラック情報再生部１１０を用いてもよい。
【００５７】
メモリ１０２は、複数のフレーム情報を記憶するフレーム情報記憶部１０３と、ＣＰＵ１０１が実行する、本願発明のアニメーション作成方法を実現するためのプログラム情報を記憶するプログラム情報記憶部１０４とを含み、また、拡張部分として、ガイドトラック情報記憶部１０５を用いることがある。
【００５８】
フレーム情報記憶部１０３は、アニメーションのフレーム数（図２ではｎ個）のフレーム情報が用意され、フレーム番号２０３によって管理される。ひとつのフレーム情報は、表示時間情報２０１と、フレーム画像情報２０２により構成される。
【００５９】
ところで、本発明は、各フレームがそれぞれ固有の表示時間を持って表示されることにより再生されるアニメーションを対象とする。これに対し、一般的なアニメーションの方式では、各フレームの表示時間が固定されていることが多い。例えば、秒間１２フレームのアニメーションでは、１フレーム表示時間は１／１２秒に固定されている。しかし、表現上の理由、或いは、制作コスト削減の目的で、ある一定の区間のフレーム群の中で同一の画像を連続して用いることがよくある。このようなアニメーションを本発明を用いて制作する場合、同一の画像が連続するひとまとまりのフレーム群を、制作時においては１フレームとして扱い、制作の仕上げの段階で、フィルムやビデオテープその他の記録媒体に記録する際に、各媒体の秒間フレーム数に応じたフレーム群に分割するとよい。
【００６０】
また、本発明の請求項３に示す、キーフレーム補間方式のアニメーションでは、図２のフレーム情報は、キーフレーム情報となる。キーフレーム補間方式のアニメーションでは、その再生に際して、各キーフレームの間に位置する複数の中間フレームを補間計算によって生成することにより、少ない元画像からなめらかなアニメーションを生成しようとするものであるが、本発明を用いてキーフレーム補間方式のアニメーションを制作する場合、図２の各フレームの固有の表示時間２０１は、現在のキーフレームから次のキーフレームまでの間を補間しつつ再生する時間という意味となる。尚、この補間による中間フレーム生成は、アニメーション作品の再生時に実時間で行ってもよいし、本発明によるアニメーション作成を終えてから再生に至る前までの制作段階で行ってもよい。
【００６１】
図６は、本願発明のアニメーション作成方法を実現するための機器構成の一例である。筺体６０１には図１のＣＰＵ１０１、メモリ１０２、タイマ１０６、グラフィックメモリ１０８などが内蔵されている。キーボード６０２は、タイミング信号入力部１０７に該当する。スピーカ６０４は、ガイドトラック情報再生部１１０に含まれる。ガイドトラック情報として音声を用いる場合は、ＣＰＵ１０１からスピーカ６０４に至る経路として、１１０の内部に図に現れない、ディジタル・アナログ変換器や音声信号増幅器を用いるが、これらは通常筺体６０１に内蔵するとよい。
【００６２】
図７は、以降で述べる実施例で用いる、アニメーションの各フレーム情報（Ａ）及びガイドトラック情報（Ｂ、この場合音声情報）がメモリ内に格納されている状態を説明する模式図である。この例では、制作者は、ガイドトラック情報として「いち、に、さん、し」とうい音声を聞きながら、実時間の中で、キーボードを用いて、順次、各フレームの境界となるタイミングを指示することによって、各フレームの画像である、「いち」「に」「さん」「し」に対応するそれぞれのフレーム画像の表示時間を決定していく。
【００６３】
以上のような実施例を実現するためのプログラムの制御の流れを次に説明する。プログラムは、図１に示されるプログラム情報記憶部１０４により記憶されており、ＣＰＵ１０１により実行されることにより、本願発明の各ステップ（図３参照）の機能を実現する。
【００６４】
まず、ステップＳ１においてタイマ１０６（図１参照）が初期化される。本実施の形態では初期化によりタイマ１０６の値が０にリセットされる。他の形態として、タイマ１０６は連続的に動作しており、この初期化時のタイマ１０６の値がメモリ１０２上の所定の領域に複写されて、以後の処理の基準値を示す値として利用してもよい。
【００６５】
続く説明で、複数の作業用レジスタを用いるが、各レジスタｘの値を「変数ｘ」と呼ぶ。
【００６６】
続いて、ステップＳ２で、現在のフレームの表示開始予定時刻を表す変数Ｔａにタイマ１０６の初期値である０が代入される。この場合の「時刻」とは、アニメーションの再生開示時点を０とした時刻であり、以下も同様である。「予定時刻」と呼ぶ理由は、後述する係数ｒにより、アニメーションの制作時と再生時とでは、時間の進み方を異ならせることができるためであり、「予定時刻」とは、再生時の時刻を指す。現在のフレームは、表示開始予定時刻Ｔａから表示終了予定時刻Ｔｂに至る時間にわたって表示され、各フレームがそれぞれ固有の時間を持って表示されることにより、アニメーションが再生される。
【００６７】
さらに、ステップＳ３で、先頭を１とした現在のフレーム番号を示す変数ｉに１が代入される。ステップＳ１２、ステップＳ１３については後述する。
【００６８】
ステップＳ４とステップＳ５は、本発明の請求項１で述べたアニメーションの各フレームの境界となるタイミングを指示する信号（以降、「信号」と呼ぶ）の入力を待つ繰り返し処理である。ステップＳ４において、ＣＰＵ１０１は、タイミング信号入力部１０７からの信号の入力の有無を取得する。この入力部の具体例としては、キーボードやマウスなどの入力装置がある。この場合、制作者が任意のタイミングで信号の入力を行うことになる。続いて、ステップＳ５において、信号の有無の判定により分岐を行う。信号が入力されていなければ、ステップＳ４に戻って処理を繰り返す。尚、ステップＳ４の処理については、以上のように処理プログラムが能動的に信号の有無を監視する方法の他、信号が入力された時点で、ハードウェア割り込みと呼ばれる処理を起動することによって、処理プログラムに信号の入力を通知する方法がある。
【００６９】
いずれの場合も、ステップＳ５によって、信号の入力が確認されると、ステップＳ６に進み、タイマ１０６の値（この場合、ステップＳ１からの経過時間）を読み出し、変数ｔに格納する。
【００７０】
次いで、ステップＳ７により、現在のフレームの表示終了予定時刻を示す変数Ｔｂが計算される。ＴｂはステップＳ１からの経過時間ｔに、時間の進む速度を決める係数ｒを掛け合わせたものである。標準的には、ＴｂはＳ１からの経過時間ｔと一致する。すなわち、係数ｒ＝１が標準的な場合である（ｒ≠１の場合については後述する。）。
【００７１】
次いで、ステップＳ８で、現在（第ｉ番目）のフレームに対応する再生時間を示す変数Ｔｉに、現在のフレームの表示開始予定時刻から表示終了予定時刻に至る時間、すなわち、Ｔｂ−Ｔａが代入される。
【００７２】
以上が、ひとつのフレームに対する処理であり、ステップＳ９では現在のフレームが、ｎ番目のフレーム、すなわち、最終フレームであるかどうかが判定され、最終フレームの場合は処理を終了する。最終フレームでない場合はステップＳ１０でｉに１が加算され、次のフレームの処理に移り、ステップＳ１１で現在のフレームの表示開始予定時刻を示す変数Ｔａが前のフレームの表示終了予定時刻を示す変数Ｔｂによって置き換えられた上で、ステップＳ４に戻って処理を繰り返す。
【００７３】
以上の処理により、実時間の中で、各フレームの固有の表示時間を順次入力していくことが可能となる。
【００７４】
より精密、或いは、より細かく分割されたタイミング指示が必要な場合、又は反射神経やリズム間が比較的劣る制作者がタイミング指示の操作を行う場合は、予め、ステップＳ７で用いる係数ｒを１より小さい値に設定しておくとよい。例えば、ｒ＝０．５と設定しておくことにより、再生を想定している速度の半分の速度（いわゆるスローモーション）の中での、余裕を持ったタイミング指示が可能となる。
【００７５】
逆に、制作者にとって、タイミング指示の動作に十分な余裕がある場合、例えば、係数ｒを２にすれば、２倍の速度（いわゆる早送り）の状態でタイミング指示を行うことになり、半分の時間で同期の作業を終わらせることが可能となる。
【００７６】
次に、ステップＳ１２について述べる。
【００７７】
アニメーションの対象となる各フレームの画像を入力するステップについては、本発明の構成の範囲外であるが、予め入力しておいてもよいし、本発明によって各フレーム固有の表示時間を決定し、記録した後で入力してもよいが、ここでは、前者の「各フレームの画像を予め入力しておく」場合についての、より効果的な実施例について説明する。
【００７８】
図３のステップＳ１２の位置に、「予め入力しておいた、ｉ番目のフレームの画像を表示装置に表示する」とういステップを挿入すれば、現在のフレームが制作者に容易に確認可能となり、実時間の中でフレームの画像の動きを確認しながら、各フレームの境界となるタイミングを指示する信号を入力していくことが可能となる。表示された画像は、次ぎのフレームを表示するまでの間、グラフィックメモリ１０８などを用いて、表示を保持するとよい。本発明の請求項３に記載した、キーフレーム補間方式のアニメーションでは、上記のフレームの代わりにキーフレーム画像を表示すれば、同様の効果が得られる。また、キーフレーム補間方式のアニメーションでは、再生時には、各時刻に対応するように生成した、中間フレームの画像を表示することになるが、本発明では、アニメーション作成以前の時点では、各キーフレーム間の時間が未定であることから、中間フレームではなく各キーフレームの画像を表示するとよい。
【００７９】
次に、本発明の請求項２に記載した、各フレームの再生時間の基準となるガイドトラック情報を用いる場合について説明する。ＣＰＵの働きによって直接ガイドトラックを再生しようとする場合、図３のステップＳ１３にて、予め入力しておいたガイドトラック情報について、その時点のタイマの値に対応したガイドトラック情報の断片の再生を行う。ガイドトラック情報の断片は、図３の処理に従って、繰り返し再生されることにより、アニメーションの制作者には連続したものとして知覚される。制作者は、この再生されたガイドトラック情報に合わせて、入力装置を通じてタイミングを指示する信号を入力する。これによって、アニメーションの各フレームに、ガイドトラックに合わせた表示時間を記録していくことが可能となる。
【００８０】
尚、上記の実施例は、単一のＣＰＵの働きによって直接ガイドトラック情報を再生しようとする場合であるため、ＣＰＵによる繰り返し処理の中に、ガイドトラック情報の再生処理であるステップＳ１３を組み入れているが、本発明の請求項２の発明の別の実現方法としては、図３の処理の開始と同時にトリガ信号を発生させ、ＣＰＵに直接制御されないようなガイドトラック再生装置を起動する方法も考えられる。
【００８１】
ＣＰＵに直接制御されないようなガイドトラック再生装置の例としては、録音テープ又はビデオテープの再生装置などが考えられる。ただし、このような再生装置には、前述の時間の進む速度を決める係数ｒを可変とした場合、係数ｒに応じて再生速度を可変とする機構が必要となる。
【００８２】
次に、本発明の請求項４に記載した、ガイドトラック情報が音声である場合のうち、音声の波形の情報を用いる場合について説明する。図４は、波形の振幅の情報を１標本ずつ格納したメモリ（以下、波形メモリと呼ぶ）の例を示している。ここでは説明を簡単にするために、タイマの増分を１／１００００秒とし、また、波形の振幅の情報を標本化する間隔も同様に１／１００００秒毎とする。したがって、ここでは、タイマに１が加算される都度、波形メモリから１標本ずつ読み出してディジタル・アナログ変換（以下Ｄ／Ａ変換と呼ぶ）などを行えば、本来の再生速度及び本来の周波数で音声が再生されることになる。
【００８３】
図５の流れ図は、ガイドトラック情報として音声の波形の情報を用いる場合の実施例を示し、この一連の処理は図３におけるステップＳ１３に相当する。ステップＳ５１ではタイマから値を取得して変数ｔに代入する。このタイマは、図３のステップＳ１で初期化したタイマと同一とする。タイマから取得される値は、前述のように１／１００００秒単位とする。次にステップＳ５２にて、再生速度を決める係数ｒを掛け、小数点以下の端数が切り捨てられた上で、波形メモリの要素を示すポインタ変数ｊに格納される。この係数ｒは図３のステップＳ７で使われる係数ｒと同一とする。
【００８４】
次にステップＳ５３にて、ポインタ変数ｊが波形メモリの範囲内（ｊ≦ｍ）を示しているかどうかを判定し、範囲内である場合のみ、ステップＳ５４にて、波形メモリから該当する時点の１標本分の振幅情報Ｍｊを読み出し、音声として再生する。この場合の再生とは、Ｍｊを元にしてＤ／Ａ変換を行い、増幅回路を経た後、スピーカを駆動することを指す。
【００８５】
尚、以上の例はＣＰＵが十分に高性能で、安定した間隔で波形メモリを読み出すことが可能であることを前提としているが、そうでない場合は、波形メモリを読み出す際、振幅情報Ｍｊを起点とした一定区間の振幅情報を、ＣＰＵとは独立した機構によって、ＣＰＵの動作を並行してＤ／Ａ変換器に転送すればよい。このような処理は当業者によって一般的に行われている公知技術である。
【００８６】
最初の実施例で示したように、上記変数ｒは、例えば、再生を想定している速度の半分でタイミングの指示入力を行う場合は、０．５に設定する。図５のステップＳ５２で、係数ｒ＝１の場合に、ｊの値が１、２、３、４、５、・・・というように１ずつ増加していくと仮定する（実際はＣＰＵ能力により増分が異なる）と、係数ｒ＝０．５の場合には、ｊの値が１、１、２、２、３、３、４、４、５、５、・・・というように重複しながら、増加してゆく。したがって、ステップＳ５４で波形メモリを読み出す速度が半分になり、ｊの波形の標本数であるｍに達するまでの時間が倍になる。すなわち、時間の進行の基準となる音声が、本来の半分の速度でゆっくりと再生されるため、制作者が、より正確にタイミングの指示入力を行うことが可能となり、よって、正確に音声と同期されたアニメーションを作成することが可能となる。
【００８７】
逆に、音声に対して、アニメーションのフレームの進み方が比較的ゆっくりしたものであり、制作者にとって、タイミング指示に十分な余裕がある場合は、例えば、係数ｒ＝２とすることにより、上記の例ではｊの値が１、３、５、７、９、・・・というように間引かれながら増加し、２倍の速度で音声が再生される。
【００８８】
尚、読み出しレートの変動に伴い、再生音の周波数（ピッチ）が変動し、制作者が再生音を聞きづらくなることがある。これについては、メモリからの波形の振幅情報の読み出しに際し、タイムストレッチ及びピッチシフトと呼ばれる手法を組み合わせて用いることにより、原音と同一又は近い周波数の音声信号に補正して再生することにより改善が可能であるが、これらの手法については、当業者に周知であり、ここでは、詳細については述べない。
【００８９】
音声を発生させるために、波形の情報を用いる方法の他、音符の情報（音の高さ・長さ・強弱・テンポなどを数値又は記号で表したもので、代表的なのものにＭＩＤＩがある）があるが、これについても同様に、ガイドトラックとして用いることができる。ＭＩＤＩデータについての再生速度を変更させる方法は、前述した通りである。
【００９０】
本発明の請求項５のように、ガイドトラックとして動画の情報を用いる場合は、図４の波形メモリの代わりに、動画情報を１フレームずつ記憶したメモリ（以下、動画メモリと呼ぶ。）を用い、図５に示すステップＳ５４にて動画メモリから画像情報を読み出し、表示装置に表示する。係数ｒによって動画の表示速度を変える方法は、音声の波形の場合と同様である。作成対象のアニメーションのフレームの画像情報が予め用意されている場合は、動画メモリから読み出した画像を、表示装置に表示する前に、その時点に対応するフレームの画像を合成し、しかる後に表示するとよい。画像の合成の方法に関しては、前述した通りである。
【００９１】
本発明の請求項６のように、ガイドトラック情報を、タイマによって発生させるメトロノーム信号とする場合は、図３のステップＳ１３に該当する部分において、タイマを監視し、一定時間を経過するごとに信号を出力するのがひとつの実施例である。その他の方法としては、タイマによって一定間隔でハードウェアに割り込みを発生させることによって、メトロノーム信号を取得する方法がある。
【００９２】
いずれの方法においても、タイマによって発生させたメトロノーム信号を制作者が認識できるようにするには、前述したように、音声、画像、発光ダイオードなどの出力手段を持ちいる。例えば、音声を用いる場合は、メトロノーム信号を直接Ｄ／Ａ変換器に入力することによりクリック音としての音声信号に変換するのがひとつの方法であるし、メトロノーム信号をトリガ信号として各種の音源を駆動させる方法もある。
【００９３】
また、前記クリック音の音声信号と同様の電気信号によって、スピーカでなく発光ダイオードを駆動することも可能である。さらに、画像を用いた出力の例としては、ユーザインターフェイスとしての特定の表示画像を用いて、メトロノーム信号発生の都度、表示画像を変化させる方法や、メトロノーム信号の発生後、特定の短い時間のみ、表示画像を変化させる方法などがある。
【００９４】
次に、本発明の請求項７のように、ガイドトラック情報を元にして、フレームの境界となるタイミングを指示する信号を自動的に発生させる場合の実施例について述べる。ガイドトラック情報が音声の波形情報である場合であって、ある強さを越える音が鳴った時点をフレームの境界としたり場合、図５を図３のステップＳ１３に組み入れた処理において、図５のステップＳ５４にて読み出した振幅情報Ｍｊの絶対値が一定のしきい値を越える場合に信号を発生させ、その信号の有無を図３のステップＳ５にて判定するとよい。この場合、ステップＳ４の処理は、ステップＳ１３に内包される。したがって、この場合は、図３上ではステップＳ４はないものとする。
【００９５】
しかし、振幅情報Ｍjの絶対値が一定のしきい値を越える場合は、連続して発生することが多いため、ある強さを越える音が鳴った時点からの短い区間内で１つ以上の信号が発生しないようにする必要がある。このための対処法は、いくつか考えられるが、例えば、図３において、ステップＳ８でＴｂ−Ｔａを計算した後、その値、すなわち、現在のフレームの再生予定時間が一定より小さい場合次のステップＳ９に進まずに、ステップＳ１３に戻る等の方法が考えられる（図示せず。）。
【００９６】
ガイドトラック情報が画像上である場合であって、ショット（撮影の単位）が切り替えられた時点をフレームの境界としたい場合、図５を図３のステップＳ１３に組み入れ、波形メモリを前記動画メモリに置き換えた処理において、ｊ＞１の時、図５のステップＳ５４にて読み出した画像情報Ｍjの各画素の色情報（光の３原色である、赤、緑、青のそれぞれの明るさ）について、ひとつ前の画像情報Ｍj-1の対応するすべての画素の色情報と比較し、そのさいの平均値が、ある一定のしきい値を越える場合に信号を発生させ、その信号の有無を図３のステップＳ５にて、判定するとよい。
【００９７】
この場合、ステップＳ４の処理は、ステップＳ１３に内包される。したがって、図３上でステップＳ４は無いものとする。
【００９８】
ところで、この例では、ＣＰＵの処理時間を比較的多く消費し、実時間の処理が困難な場合がある。処理が困難でない場合は、上記のような、本発明の請求項７に記載の処理が可能であるが、処理が困難な場合は、以下に述べる適用が効果的である。
【００９９】
すなわち、まず、一定の条件のフィルタを用いて信号の抽出処理を行い、ガイドトラック上で抽出された信号の先頭からの位置（図４ではＭの添え字に相当）を求め、それにより各フレームの表示時間を計算し、格納する。例えば、画像メモリの標本化間隔が１／３０秒と仮定すると、抽出された信号に対する添え字（画像メモリ内の順序）が最初から順にそれぞれ、３０、４５、９０の３件であれば、各フレームの長さは最初から順にそれぞれ（３０−０）÷３０＝１秒、（４５−３０）÷３０＝０．５秒、（９０−４５）÷３０＝１．５秒、というように計算した上で、実時間と無関係に記録することができる。
【０１００】
【発明の効果】
上述のように本発明によれば、各フレームの固有の表示時間を持ったアニメーションを作成するにあたり、一定の速度を持った時間の進行の中で、各フレームの境界を制作者が思いどおりの間隔で直感的に指示入力することができるので、各フレームの固有の表示時間を先頭から逐一試行錯誤しつつ入力するのとは異なり、はるかに短時間で入力を完了させることができる。
【０１０１】
また、時間の進行の速度を任意に変更することにより、より精密、または、より効率的な指示入力が可能となる。また、指示入力の作業と並行して、同一の速度を持った時間の進行の中で、音声や映像やメトロノームなど、時間の基準となるガイドトラック情報を再生することにより、そのようなガイドトラック情報に同期したアニメーションを容易に作成することが可能となる。
【０１０２】
また、ガイドトラック情報から一定の条件によりフレームの境界となるタイミング信号を抽出することにより、場合によっては、自動的に、各フレーム固有の表示時間を正確に記録することが可能となる。
【図面の簡単な説明】
【図１】本発明の実施例を説明するためのコンピュータのブロック図である。
【図２】本発明のフレーム情報を模式的に示す図である。
【図３】本発明のアニメーション作成方法を実現するためのプログラムの流れ図である。
【図４】ガイドトラック情報としての波形メモリの例である。
【図５】図３のステップＳ１３に該当する詳細処理の流れ図である。
【図６】本発明を実現するための機器構成の外観例を示す図である。
【図７】本発明の実施例で用いるデータを説明するための模式図である。
【図８】従来方式（Ｄｉｒｅｃｔｏｒ）のスコアを説明するための模式図である。
【図９】従来方式（Ｄｉｒｅｃｔｏｒ）のキャストを説明するための模式図である。
【図１０】従来方式（Ｄｉｒｅｃｔｏｒ）による音声同期の作業手順を説明するための流れ図である。
【図１１】従来方式（Ｄｉｒｅｃｔｏｒ）によるテンポ設定画面の模式図である。
【図１２】編集システムのユーザインターフェイスの例を示す図である。
【図１】
0003645716.tif 000002
【図２】
0003645716.tif 000003
【図３】
0003645716.tif 000004
【図４】
0003645716.tif 000005
【図５】
0003645716.tif 000006
【図６】
0003645716.tif 000007
【図７】
0003645716.tif 000008
【図８】
0003645716.tif 000009
【図９】
0003645716.tif 000010
【図１０】
0003645716.tif 000011
【図１１】
0003645716.tif 000012
【図１２】
0003645716.tif 000013