JPH06503663A - 動画作成装置 - Google Patents

動画作成装置

Info

Publication number
JPH06503663A
JPH06503663A JP4500477A JP50047792A JPH06503663A JP H06503663 A JPH06503663 A JP H06503663A JP 4500477 A JP4500477 A JP 4500477A JP 50047792 A JP50047792 A JP 50047792A JP H06503663 A JPH06503663 A JP H06503663A
Authority
JP
Japan
Prior art keywords
image
data
point
frame
images
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP4500477A
Other languages
English (en)
Inventor
ベレンド,アンドリュー ルイス チャールズ
ウィリアムズ,マーク ジョナサン
ブロックルハースト,マイケル ジョン
ジョーンズ,ギャビン ティモシー
ホウキンズ,スチュアート フィリップ
Original Assignee
ケンブリッジ アニメーション システムズ リミテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from GB909026120A external-priority patent/GB9026120D0/en
Priority claimed from GB919100632A external-priority patent/GB9100632D0/en
Priority claimed from GB919102125A external-priority patent/GB9102125D0/en
Priority claimed from GB9110945A external-priority patent/GB2256118A/en
Priority claimed from GB9117409A external-priority patent/GB2258790A/en
Application filed by ケンブリッジ アニメーション システムズ リミテッド filed Critical ケンブリッジ アニメーション システムズ リミテッド
Publication of JPH06503663A publication Critical patent/JPH06503663A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/802D [Two Dimensional] animation, e.g. using sprites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour

Abstract

(57)【要約】本公報は電子出願前の出願データであるため要約のデータは記録されません。

Description

【発明の詳細な説明】 動画作成装置 発明の分野 この発明は、例えば漫画映画などの、動画化された一連の画像を制作するための 装置およびその方法に関するものである。
背景技街の説明 従来の動画を作成する方法は手描きによるものであり、一連のフレームをいちい ち手で描き、これを比較的速い速度で連続して再生すると動きのある画像が形成 されるようになされたものであった(典型的なフレーム速度は1秒当たり24. 25或いは30フレームである。ただし、場合によっては同一のフレームが2回 反(宴される)。短い動画の場合ですら、数千フレームもの多くのフレームを手 で描く必要があるから、このように多くのフレームを手で描くには熟練した動画 作成者とその助手による大がかりなチームが必要である。今日においても、はと んど全ての動画作成は、依然としてこのようにして行われているのである。
動画作成の主要な工程は以下のようなものである。
1、 「キー・フレーム の この工程では、上級動画作成者によって全動画列の中の重要なポイントにおける 各登場キャラクタの描画が行われる。
2、[B百イ in betweeninこの工程では、通常の技能を有する画 像作成者(上級画像作成者はどには技能がない)によって、隣接するキー・フレ ームとキー・フレームとの間のフレームが、目視による内挿によって作成される 。
3、」之ヱンヱ区上り この工程では、一連のキー・フレームおよびそれらの中間フレームをフィルムま たはビデオ・テープに録画し、これを再生して間違いがないかを確認する。もし 、必要があれば、この時点でフレームが再度描き直される。もし、間違いがない 場合には、鉛筆による下図をクリア・セルに転換し、インクでトレースし、必要 な色づけを行って、さらにキャラクタを所望の背景の中に置いて、フィルムある いはビデオ・テープに録画する。
このような方法で動画を作成するには、莫大な量の絵を描く必要があり、そのた めには多くの時間と費用とが必要となる。そのため、動画作成処理の一部を自動 化しようとの試みがなされてきた。インクによるトレースと色づけは非常にうま く自動化がなされており、これによっである程度の人員数と時間の節減が可能と なった。
また、内挿あるいは中間画像作成についても、自動化の提案がすでに行われてい る。このような提案による方法では、上級動画作成者によって作成されたキー・ フレームを適当な入力手段によってスキャンして、例えばプログラムされたコン ピュータなどの画像処理装置に入力して、それぞれのキー・フレームを対応する 内部表現として記憶する。2つのキー・フレームの対応する点あるいは線、また はその他の対応する部分をマニュアル操作によって識別し、各中間フレームの類 似する点、線、あるいは類似部分を記憶されている2つの隣接キー・フレームか ら内挿して作成することにより、指定された部分についての一連の中間画像フレ ームが生成される。次に、指定された点や部分以外の残りの部分についてフレー ムを完成させる。
しかしながら、このような提案はどれもうまくいっていない。その理由は原画か ら導出した2つのキー・フレームにおいて、それらの間の対応部分を識別するこ とが極めて難しいからである。同一の動画作者によって描かれた2つのキー・フ レームは人間の目には類似して見えるかもしれないが、実際には2つの線の間で 、個々の点は異なっており、画像処理装置では、このような差異と、動きによる 差異、すなわち意図的な差異との違いを認識することができないのである。すな わち、実際に差異が存在し、それらの差異の中間点を内挿でめるべきなのか、ま たは、そのような差異は単なる偶発的なものであるのかをEllすることができ ない。
キャラクタ動画に対して、すでに提案されている1つの方法は、1987年に開 催された゛87年ジグラフ会議(Siggraph Conference)に おける、「コンピュータによる3Dキャラクタ動画(3D character  animation by COmputer)Jに関する講座の中の講義ノ ートとして発行されたP、バーガロン(Bergeron)による「記号システ ムによる3−Dキャラクタ動画(3−D character animati on on the symbolics system) Jに開示されてい るものである。
この文献による方法では、3次元モデルプログラム(S幾何学:S−geoa+ etry )および、 (広い意味での)動画プログラム(S変化:S−dyn amics )とを用いて、キャラクタの動画が作成される。各々のキャラクタ は、網状の管理点によって定義されるスプライン表面を用いてモデル化される。
この論文は、異なる画像に対して複数の「表現」を「原」表現から導き出して生 成する方法を提案している。
「表現」は「原」表現の複数の網状管理点に対して、S幾何学プログラムを用い た変換を実行することによって生成される。
表現の生成を行った後に、独立したS変化プログラムを用いて、一連の画像を生 成する。棒グラフの棒の高さとしてタイムラインに沿って表示される制御変数の 値を位置検出入力装置(マウス)を用いて対話的に変えることによって、異なっ た一連の画像を生成あるいは変形する。制御変数によって、実行すべきある与え られた変換演算(例えば回転など)の量を写し取ることができる。或いは、予め 定められた表現のパーセント比率を与えて、ある与えられた画像について、「原 」表現と与えられた表現との間でそのパーセント比率に比例して内挿画像をめる ようにすることができる。この場合、一連の内挿画像列が単一表現の第1及び第 2のパーセント比率との中間で生成されるようにすることができる。また、別の 副画像列を結合して、副画像列の各画像からの制御変数によって定義される合成 画像列を生成することもできる。
この文献は、制御変数の「キー」値(例えば、単一表現のパーセント比率など) とキー値との間でS変化プログラムを用いて自動内挿を行うことが可能であるこ とを教示している。ところで、キャラクタ動画においては、このような方法を用 いて表現のパーセント比率の内挿値をめるのではなく、ユーザが各フレームに対 してフリーハンドによるスケッチによって個々の制御変数の値を指定することが 特に重要である。さらに、制御変数の値は編集することができるものの、その画 像列が保持されている間は「表現」そのものは編集することができない。また、 我々はこの文献に記載された装置によるキャラクタ動画作成は比較的遅く、また 骨が折れる作業を必要とすることを見い出している。
上に引用したS幾何学3次元モデルプログラムでは、図形表面の網状制御点で構 成される金網骨格モデルによって3次元図形の表示を行う。これとは異なった方 法で問題の解決を行おうとしている、従来の3次元モデルシステムもある。例え ば、GBl 3999538では、位置検出トランスデユーサによってマネキン モデルを操作できるようになっており、ユーザがマニュアルでマネキンを操作す ると、コンピュータがその関節位置を検出するようになされている。WO891 09458では同様な原理を採用しているが、マネキンの代わりに位置検出器を 備えたスーツを着用した人間の俳優により実施されるようになっている。US3 364382では、偏向電圧によって図形の骨格をブラウン管上に表示し、さら に変調電圧によって骨格の周囲の肉付けを重畳表示する。US3747087に おける動画図形(2次元)の異なる構成要素(例えば手足)の処理方法は、各構 成要素の実画像のスキャンを行い、これから動画図形を得て、これらのラスク構 成要素動画図形を結合させるものである。
US4600919では、ロボット像(ヒユーマノイド)の3次元モデルが用い られ、関節に接続された手足を定義する3次元座標を指定することによって動画 面イ象を作成する。この手足は硬直したものであり、多角形の箱を構成する角を 定義する点によってこれらの手足が定まる。従って、丸まった、あるいは曲がっ た像を表すには、曲面を近似的に表現するための非常に多くの角を必要とし、編 集が非常に複雑となり、また計算に時間を要して遅い。
光切9!豹 このような状況を鑑み、我々が提示する第1の実施例のシステムの装置は、「表 現」を指定して単一表現のパーセント比率を変え、一連の動画像列あるいは副動 画イ象を生成するのでなく、予め定められた時刻において実際に生じる画像を一 連の動画画像列の中に、まず定義しておき、次に、これらの画像の中間画像を内 挿することによって生成するようになされている。内挿は、ある1システムモー ドにおいては、予め定められた(例えば、線形の)曲線、或いはルールに従って 、自動的に実行することができる。この場合、特に内挿が常にうま(いくとは限 らないので、編集手段を備えさせて、生成された一連の画像列に対して、内挿生 成された後に続けてユーザが編集を行えるようにすることが強(望まれる(ただ し、全ての実施例に必須というわけではない)。多くの場合、内挿は受け入れ可 能なものであるが、受は入れ不可な場合に対する修正のための必要な柔軟性を備 えることによって、動画像作成処理が非常に加速される。
本発明の1つの態様における装置では、キー・フレームを互いに明白な対応関係 を有するように生成して、これらのキー・フレーム間の内挿を行うようになされ ている。好適には、キー・フレームは助変数(parametric)曲線(即 ち、制御点によって制御される曲線)として定義されたデータとして記憶される 。また2つのキー・フレームの制御点は互いに対応するようにラベル付けを行う 。好適には、装置は、ユーザがキー・フレームを定義することを可能とするため の手段を含む。また、好適には、キー・フレームの定義は、共通のテンプレート ・キー・フレームを変形することによって行われる。こうすることによって、全 てのキー・フレームが互いに対応を有するようにすることができる。
好適には、装置は、ユーザがさらに別の制御点を挿入することによって、フレー ムの複雑さを変更することを可能とする手段を備えている。また、好適には、こ の実施例においては、テンプレートも同様にさらに制御点を附加して変更するこ とができる。さらに、附加された制御点が、関連するフラッグによって有効状態 にも、またも休止状態にもなるようにしておくと都合が良い。こうすると、異な る複雑さを有する2つのキー・フレームの間で内挿あるいは結合を行うことがで きる。
好適には、装置は既存のキー・フレームの間に新たなキー・フレームを生成ある いは挿入することができるようになされている。こうすることによって、先に議 論した従来技術において存在していた内挿における問題を克服する助けが得られ る。このような問題は、2つのキー・フレームが、固体目標物体あるいは目標物 体を2次元面に投影した像であることによって生じる。目標物体は、キー・フレ ーム間において3次元空間中を動き、キー・フレームが存在している2次元空間 中を単純に動(わけではない。従って、2次元空間においてキー・フレーム間の 内挿を行うことによって、歪が生じ、この歪のため、しばしば、内挿で得られた フレームが非現実的に見えてしまう、しかし、単純な形に対しては、この歪は特 別に気付くようなものではない。
2次元で内挿を行ってから、この内挿された画像列を再生し、もしこのような問 題のために内挿がうまく行われなかった部分があれば、その部分に対して、ユ− ザが中間キー・フレームを新たに挿入するようにすることが、効果的な解決策で あることを我々は見い出している。
本発明の他の態様においては、システムは、記憶画像の定義を行うための手段と 、予め定められた比率で記憶画像を内挿し、一連の動画像列を作成するための内 挿手段とを備えており、ここで、この内挿手段は、上記のように自動化すること もできるし、また先に引用した従来技術におけるようにマニュアルで制御するよ うにもできるが、いずれにせよ、画像を少数の(好適には最小の)制御点によっ て定義された線によって与え、肉太で、なめらかな曲線が得られるようにするこ とで、上記の従来技術におけるような不必要な複雑さが回避されている。非常に 好適には、編集手段を備えるようにし、複数の制御点に対して上記の従来技術に おけるような変換を施すのではなく、オペレータが別々の制御点を個々に編集す ることによって画像の編集を行うことができるようになされている。これは、キ ャラクタの動画を生成するための簡単で、かつ高速、有効な方法であることが確 認されている。
容易に内挿が行えるようにするために、異なる画像の制御点の数は一般には同じ となるようになされる。また一般には、制御点は、異なる画像間で互いに対応す るようになされる。しかしながら、特に好適な実施例においては、2つの異なる 種類の点を記憶する手段を有するようになされており、第1の(有効状態の)種 類は線の特性を定義し、内挿手段が内挿画像を生成するのに使用される。第2の (休止状態の)種類のものは、線の特性定義は行わない。また編集手段は、その ような休止状態にある点を有効状態へ変換することができるようになされている 。有効状態への変更の際に他の画像との間の点の対応性が維持できるようになさ れており、これによって、画像間の対応性を失うことなしに特定の画像の複雑さ を他の画像の複雑さよりも増加できるようになされているため、内挿を容易に行 うことができ、また、制御点数を少数としたままで、線を肉太に維持でき、また 処理が簡略化される。
他の好適な実施例においては、全ての画像が、オリジナル画像あるいはテンプレ ート画像から導出されるようになされており、特定の画像に対して新たな制御声 を附加して、その複雑さを増加させることができ、その際には対応する制御点( 好適には休止状態)がテンプレート画像にも附加されて、画像間の対応性が維持 されるようになされている。
本発明の他の態様による動画画像作成システムでは、3次元モデル手段によって 少なくとも1組の2次元テンプレート・データが生成され、このデータを2次元 空間において編集して異なる編集バージョンのテンプレートの間での2次元内挿 を行うことが可能なようになされている。こうして、動画作成システムによって 、ユーザは、まず3次元でキャラクタにポーズを取らせ、次に所望の2次元画像 を選択し、さらにこの2次元画像から動画を作成することができるようにするこ とができる。
本発明の他の態様による3次元物体モデルシステムでは、連結された骨組み、骨 格、あるいは枠部分を3次元座標データで定義することによって、物体を表すよ うになされており、このデータによって、曲がった骨組みの経路が定義され、ま たこのデータによって骨組み経路の編集が行われる。これによって、例えばUS J600919の装置と比較して、ずっと高度の図形制御を行うことができる。
好適には、曲がった骨組み経路を定義するデータは、スプライン曲線を定義する 制御点データによって構成される。これにより、US4600919の直線経路 の場合と比較して、はとんどデータ量を増やすことなく、複雑な曲線経路を表現 することができる。
本発明の他の態様による、対象物の3次元モデルシステムでは、対象物は3次元 の骨組み部分によって定義され、また対象物の表面(3次元空間の骨組みの外被 )の定義は、骨組みに沿って隔てられた位置に配置された少なくとも1つの断面 を定義するデータを与えることによって行われる。好適には、この断面は、骨組 みに対して直角となるようになされる。この断面は、骨組みを取り囲むようにす ることができるが、しかし、そうしなければならいというわけではない。断面は 、その境界曲線を、記憶されている制御点データを用いてスプライン曲線として 定義することによって好都合に定義できる(望ましくは、ベジェ(Bezier )・フォーマットを用いる)。こうすることによって、複雑な断面を少数のデー タを用いて表現することができ、また容易に断面の編集変更を行うことができる 。
好適には、断面の位置は、骨組みに沿って計ったときの長さを示すスカラ値(好 適には比を示す値)によって定義される。こうして、もし、骨組みの位置あるい は長さが互いに異なるような2つの異なる3次元モデルを結合したり、あるいは 、2つの異なる3次元モデルの間で内挿を行うことが必要な場合に、断面を骨組 みに従って動かし、変化させることができる。このことは、例えば、キャラクタ を表す手足が度々広げられるような、漫画映画において特に利点となる。
本発明の他の態様による、結合された骨組みで構成されたキャラクタの3次元モ デル編集用システムは、異なった視点角度から骨格を見たときの、第1および第 2の骨格の姿を表示するための表示手段と、前記表示手段へ入力を与えて上記表 示手段の選択された文字上にカーソル記号を表示するための位置検知入力手段と 、上記の2つの視点方向のカーソル記号の動きに対応するデータを定義すること によって骨組みを修正する手段とを備えていることを特徴とするものである。
これにより、既に学んだ3次元キャラクタを編集する方法を提供できる。
本発明のさらに他の態様による3次元内挿システムでは、3次元キャラクタに対 して、第1回目バージョンと、第2回目バージョンの2つの異なるバージョンで 3次元キャラクタを定義し、これらのバージョンの間で内挿を行うことによって 少なくとも1つの内挿バージョンを生成できるようになされている。ここで物体 (対象物)の上記各バージョンは物体ベクトルを定義する点データによって表現 される。また、このシステムでは、テンプレート物体が具備されており、いずれ の場合でも点データは、各バージョンの点のテンプレート物体の対応する点から の差異を表すようになされている。こうすることによって、内挿を容易に実行で きる。このようにテンプレートからの差異として物体バージョンを記憶する原理 は、他の目的でも用いることができ、その際にはまた別の利点が得られる。例え ば、もし、このようなフォーマットで記憶されているときには、第1のバージョ ンと第2のバージョンとの和をとるだけで、物体の合成バージョンを生成するこ とができる。
後に記述するように、あるいは後に請求の範囲において定義するように本発明は 、これら以外の他の好適な態様および実施例を有し、これらの実施例を単独ある いは組み合わせて用いることにより、高速で、簡単に用いることができるキャラ クタ動画のための動画作成システムを得ることができる。また、本発明の多くの 態様は動画以外の他の分野(例えば、計算機支援設計など)において採用するこ ともできることは明らかであろう。
以下に、添付図面を参照しながら、本発明をさらに詳細に説明するが、これらは 単なる例示であって、本発明がこれらに限定されるわけではない。
落面Q間惠望説朋 図1a〜図1eは曲線の近似方法を示す図である。
図28及び図2bは3次助変数曲線に用いられる制御変数を変化させると、とよ うな結果が得られるかを示した図である。
図3は本発明の一実施例の装置を示すブロック図である。
図4は本発明の他の実施例の装置を示すブロック図である。
図5は本発明のさらに他の実施例の装置を示すブロック図である。
図68は、この実施例の装置のメモリに記憶される情報を示す図であり、図6b はこの情報によって表される曲線を示す図である。
図7は、これらの実施例において表示を行う場合の処理を示す概略図である。
図8は、図7に示した装置の動作の概略を示す流れ図である。
図9は、図6aに示したデータの編集処理動作の概略を示すブロック図である図 10は、図9に示した装置の処理動作の概略を示す流れ図である。
図11は、上記実施例の装置のユーザによってなされる一連の処理の概略を示す 流れ図である。
図12は、データがリンクされたリストとしてどのようにメモリ中に記憶される かを、概略的に示したブロック図である。
図13a〜図13eは、図12の要素中に記憶されるデータを、さらに詳細に示 した図である。
図14は、メモリに記憶されている、表示画像に対応するデータについて、さら に詳細に示した図である。
図15はリンクされたリストとしてメモリ中に記憶されている図14の情報につ いて、概略を示した図である。
図16は上記実施例における、画像記憶装置の中味を概略的に示したブロック図 である。
図17は上記実施例における表示装置の表示領域を示す概略図である。
図18は表示領域の中の関連する表示の様子を示した図である。
図19a〜図19cは、可能な表示形式例を示した図である。
図20は編集中における表示の様子を示した図である。
図21は上記実施例における表示領域の様子を概略的にさらに示した図である図 22は、本発明の1実施例による、動画像フレームを内挿する方法を概略的に示 した図である。
図23は、図22の方法の一部について、概略的に示した図である。
図24は、この実施例において、キー・フレームを内挿フレームに変換する方法 について、概略的に示した図である。
図25は、この実施例において、キー・フレームを削除する方法について、概略 的に示した図である。
図26は、この実施例において、キー・フレームを動かす方法について、概略的 に示した図である。
図27a〜図27dは、図22〜図26の動作に対応してモニタ装置に表示され る表示結果を概略的に示した図である。
図28a〜図28dは、制御点の曲線から曲線への変換を行うと、その結果がモ ニタ160上でどのように表示されるかを概略的に示した図である。
図29a〜図29dはこれに対応して生じる、メモ1月21の内容の変化を示し た図である。
図30は、フレームの内挿あるいは追加のための準備を行う方法を概略的に示し た図である。
図31は、フレームを1つに足し合わして、合成フレームを生成する方法を概略 的に示した図である。
図32は、フレームの内挿または合成において、曲線の点位置を導出する方法を 概略的に示した図である。
図33は、本発明のこの実施例において、1プロセツサ中に具備されている機能 要素の説明図である。
図34は、本発明の第2の態様による装置において、ユーザによってなされる一 連の処理の概略を示す流れ図である。
図35は、第2の態様において採用される3次元モデルを概略的に示した図であ る。
図36は、図35のモデルの結合点(関節)について図式的に説明した図である 。
図37は、図39のモデルのセグメントを記述するデータをより詳しく示した図 である。
図38は、図35の骨格モデルについて、とようにして外被が得られるかを図式 的に示した図である。
図39aは、図38の外被構成要素が断面によってどのように表されるかを図式 的に示した図である。
図39bは、図39aの断面を取り囲む外形部分について図式的に示した図であ る。
図40aは、図38または図35のモデルの一部を形成する骨組みについて、断 面の配置を図式的に示した図である。
図40bは、断面配置上の骨組みを曲げたときの結果がどうようになるかを、図 式的に説明した図である。
図41は、図38のモデルを表すのに必要となる、図3のメモリ中に保持されて いる表を図式的に示した図である。
図42は、図41の表の内容をさらに詳細に示した図である。
図43は、図39aおよび図39bに示された構成要素を表している、図42の 内容の一部についてさらに詳細に示した図である。
図44は、図35のモデルのモニタ160上の表示を示した図である。
図45は、図44のモニタ160上の表示の一部である、図39aの断面表示部 分について示した図である。
図46は図44のモニタ160上において、図39bの断面表示をより詳細に示 す図である。
図47は、図46の表示の一部をさらに詳細に示した図である。
図48aは、図44の表示におけるモニタ160の領域に対応する視、壱角度な 哀す、図3のメモリに保持されている表を示した図である。
図48bは、図48aの表の内容の物理的意味を図式的に説明した図である。
図49は、図42の表から図44の表示を行うための処理を示す流れ図である図 50は、図49の処理に用いられる空間的変換の表として、図3のメモリに保持 されているデータを示した図である。
図51は、本発明の第2の態様において位置検出入力装置を利用できるように、 図10の一部を変えた図を示している。
図52は、図39bに示された外形を、図43に示した表を用いてめるための処 理を概略的に示した図である。
図53は、外形を表すデータを記憶するための、図3のメモリの表を概略的に示 した図である。
図54は、図52の処理の一部を図式的に示した図である。
図55a及び図55bは、図52の処理の一部を更に図式的に示した図である図 56は、図52の処理一部をさらに詳細に示す流れ図である。
図57a〜図57dは、図52の処理において起こり得る潜在的な問題を概略的 に示した図である。
図57e及び図57fは、本発明の1実施例による解決を行ったときに得られる 効果を図式的に示した図である。
図58は、図52の処理について、さらに進んだ段階を図式的に示した図である 。
図59は、図46に示したものよりもさらにP1雑な断面のモニタ160の表示 の様子を示した図である。
図60は、モニタ160上に表示されている、断面を定義している骨組みと交差 しないような断面の様子を示した図である。
図61は断面を編集する際のモニタ160上の表示の様子を示した図である。
図62a及び図62bは、構成要素の結合点(関節)における重なりを示した図 である。
図63は、骨組みが曲げられたときに起こり得る断面の重なりを説明するための 図である。
図64は、奥行きに応じて色づけを行った物体を、モニタ160上に表示した様 子を示した図である。
図65は、ある物体の外形を、モニタ160上に表示したときの様子を示した図 である。
図66は、3次元内挿処理についての流れ図である。
Z次元動画 Harametric curves 本発明を詳細に議論する前に助変数曲線について簡単に説明する。この曲線は熟 練した技術者には、通常の一般知識の一部として知られているものであり、例え ば、P、バーガー(P、 Burget)およびD、ギリー(D、G11lie s) (エジソン・ウニズリ−(Edison Wesley) 、I SBN  0−201−17439−1.1989)による「対話的コンピュータ・グラ フィックス(Interactive Computer Graphics)  Jにおいて、あるいは、モルガン・カウフマン(lI%organ Kauf ma曲)社から刊行されているRlH,パードル(R,H,Bartels)、 J、C,ビーティ(J、C,Beaty)、およびB、A。
バースキ(B、A、 Barsky) (ISBN 0−934613−27− 3 )による「コンピュータ・グラフィックおよび幾何学的モデルに用いるスプ ライン入門(An 1ntroduction to 5plines for  Use in Computer Graphics and Geomet ric lAodellingj Jに説明 されている(上記の2つをここに参照併合する)、。
図1aを参照すると、これは、フリーハンドで描かれた、かなり滑らかな曲線を 示している。図1bは、曲線を表す1つの方法として、真っ直ぐな線分を点から 点へと次々に結んで描いていくやり方を示したものである。しかし、この方法で 曲線を線分で十分に模擬するには、図ICに示されているように、多くの線分が 必要となる。
別の方法として、点と点との間を次々に曲線セグメントで結んでい(ことによっ て所望の曲線を表現するやり方がある。図1dに示したように、隣接する曲線セ グメントの接続点における傾きが互いに同じとなるようにすることによって、曲 線を滑らかに接続していくことができる。
よく知られている1つの曲線近似法は、近似曲線として3次曲線を採用する方法 であり、この方法では、座標変数Xおよびyを、それぞれtをパラメータとする 3次子項式を用いて表わす0通常、パラメータの値は、0と1との間に入るよう になされる。従って、各曲線セグメントは、次のように表される:x =a、  t” + bz t” + CIl t + d* (1)y=a、t” 十す 、t″+cy t+dy (2)各セグメントは、2つの端点を持っている必要 があり、これらの端点においては、それぞれ1=0およびt=1となる。従って 、1=0となる端点の座標はX o ” d * 、3’ o ” d yとな り、一方、t=1の端点における座標は、以下のようになる: X l=a++ +b++ + cx +dx (3)y+ :=fi、+l) 、+c、+d、 (4)もし必要ならば、各セグメントが隣のセグメントと連続 的な曲線として結がるように、これらの端点における曲線セグメントの傾きを固 定あるいは予め定めらでいる値とすることができる。
端点と端点との間の曲線の形状は、端点における傾きを与えることによって部分 的に定めることができるが、さらに完全に形状を指定する情報を視覚的にわかり やすく表現する別の方法がある。すなわち、各端点において接線ベクトルを導入 して、その接線ベクトルの長さを用いるのである。2つの端点の間の曲線は、そ の端点においである決まった傾きを持つように端点に束縛固定されていると考え ることができる。このとき、接線ベクトルの長さを変えると、端点から接線の方 向へ引っ張り出される曲線の長さが接線ベクトルの長さに比例して変化する。
すなわち、接線ベクトルの長さが長げれば長いほど、曲線は、より広い範囲でそ の接線に添う傾向を示す。接線ベクトルは上記の方程式(1)〜(4)から導き 出すことができ、逆に接線ベクトルを与えると方程式が定まる。例えば、ベジェ 接線ベクトルの端点が、1=0における端点の座標がXx、yxで表され、また t=1の端点の座標が、Xs + y”で表されているとき、係数a、b、cは 次のように与えられる。
屯:Xo (同様に dy =yo ) (5)bx =3 (xo 2Xt  +Xs )(by同様) (6)cm =3 (xz −Xo ) (cyも同 様) (7)ay ”3Xx Xo −3xs +X+ (ayも同様) (8 )曲線方程式を変数tについて微分すると次の形の式となる:c+2bt+3a t” (9) 1=0及びt=1の点における微分値はそれぞれ、以下のようになる。
3 (x+ xx )=cx +2bx +3a++3 (3’ + !s )  =Cy + 2 by + 3 ayこれらの方程式から、検査によって次の ことがわかる。即ち、ベジェ制御点(X2.y2)、 (xs 、 yx )に おける接線の長さは、実際の接線ベクトルの長さの1/3となる。実際の接線ベ クトルを採用することも可能であるが、ベジェ接線ベクトル(方向は同一である が、長さが1/3であるベクトル)を採用した方が数学的に便利である。
いわゆる、エルミート(Hermite)形式で3次方程式を表すと、曲線セグ メントを定義するのに用いられるデータは端点の座標、端点における接線ベクト ルの傾き、および各接線ベクトルの長さである。一方、ベジェ・フォーマットで は、曲線セグメントを定義するデータとして、端点の座標、および各接線ベクト ルの先端点の座標とを用いる。エルミート形式とベジェ形式との間の変換は、単 なる極座標形式から直交座標形式への変換、あるいはその逆の変換である。
図28は接線ベクトルの角度を一定としたままで、大きさ、すなわち長さを変化 させると、どのような効果が得られるかを示したものである。図かられかるよう に、接線ベクトルの長さに応じて、曲線が接線ベクトルの方向に引き出されるよ うな効果がある。
一方、図2bは、接線ベクトルの大きさを一定に保ったままで、その角度を変え たときに、どのような結果が得られるかを示したものである。
他の型の3次曲線を用いる方法も知られている。例えば、2つの端点と、その中 間に存在するが曲線が通過しないような複数の制御点によって定義されるB−ス プライン方法がある。しかし、多くの応用においては、ベジェ曲線による表現が 用いられている。その理由は、これが比較的容易に取り扱えることにある。例え ば、近似された曲線を既存の曲線に適合させようとするとき、曲線上の任意の点 の座標およびその点における接線の角度は直接に測定が可能であり、また指定が できる。多くのレーザプリンタの制御に用いられいるボストスクリプト(Pos tScriptlのコマンド言語は、この曲線表現を採用しており、曲線セグメ ントの端点の座標を定義する値と、それに対応する接線ベクトルの先端点の座標 を定義する値とが用いられている。
一般に、滑らかな曲線が、上記のような端点を数多く定義することによって得ら れる。このとき、各曲線セグメントは隣接する曲線セグメントと端点を互いに共 有することになる。もし、曲線を滑らかとする必要があるときには、その共有端 点において、それぞれの曲線セグメントに対して定義される接線の角度が同一と なるようにする必要がある。但し、接線ベクトルの長さは互いに同一とする必要 は一般にはない。
しかし、端点における接線の角度をその端点と接続されている2つのセグメント の間で互いに異なったものとすることにより、図1eに示したように、曲がり方 が不連続であるような曲線を表すことも可能である。
ここでの目的において、このような曲線表現形式を用いることの主要な利点は、 少数の係数あるいは制御点を用いるだけで、滑らかで、肉太な曲線を定義するこ とができ、また、全ての曲線にわたる莫大な再計算をすることなしに、曲線の修 正を行うことができるということである。
なお、各点が3次元座標を有している場合には、3次元3次スプラインを指定す るためにZに関する方程式が必要となるが、これは上記の方程式から視察によっ て容易に導き出すことができる。
本発明を実施するための装置について以下に説明する。
装置の概略説朋 図3に示されているように、本発明の1実施例による装置は、コンピュータ10 0を有しており、このコンピュータ100は中央演算装置110と、CPU 1 10のプログラムを記憶し、また読み出し書き込み可能な作業メモリとしても動 作する記憶装置120と、生成すべきあるいは処理すべき像の各点とそれぞれに 対応関連づけられた一連の記憶場所を有するフレーム記憶装置130と、外部装 置から読み込みあるいは外部装置へ書き出しをするための入出カポ−I−を有す る入出力制御装置140とを備えており、これらはすべて、共通並列データ・ア ドレスバス150を介して互いに結合されている。
また、装置には、コンピュータ100に接続されたモニタ160が備えられてお り、その表示内容はCPUll0の制御の下にフレーム記憶装置130によって 更新される。さらに、少なくとも1つのユーザ入力装置170a、170bが備 えられている。170bは、典型的にはキーボード170bであり、これによっ てコマンドの入力、または像の生成あるいは像の処理動作の開始、終了、記憶な どの周辺動作を制御するための制御信号の入力を行う。また、170aは、典型 的には、位置検出入力装置であり、例えばスタイラスとディジタイズ・タブレッ トとを組み合わせたもの、あるいはマウス、またはモニタ160上のタッチセン シティブスクリーンや、トラックボール装置、ジョイスティックなどが用いられ る。位置検出入力装置170aからの信号に応じてカーソル記号がコンピュータ 100から発生され、このカーソル記号がモニタ160上に表示される。これに より、像の生成あるいは処理を行うときユーザは、モニタ160上で像を詳細に 観察して、像の点または領域を選択あるいは措定することができる。
分解能を十分に高(すると、1フレ一ム分の1つの像に関連するデータ量は大き なものとなるので、好適には、例えば、ハードディスク装置などの大容量記憶装 置180を備え、これを用いて長期間の像の保存を行う。また、好適には、大容 量記憶装置180はフロッピディスクドライブ、あるいは大容量テープドライブ などの交換可能な媒体による記憶装置を具備しており、これによってコンピュー タ100への、或いはコンピュータ100からのデータ転送がなされる。
好適には、入出力装置140には更に、生成された像を恒久的に見ることが可能 な形式で出力記録を供給するためのプリンタ190が接続されている。この出力 は、透明紙あるいは通常の紙に対してなされるようにできる。また、好適にはフ ィルム記録装置196および/あるいはビデオレコーダ197、および連続した 一連のフレームから成る適当にフォーマットされた動画像出力を生成する手段と が備えられている。
例えばスライドなどの像をスキャンし、これに対応するビデオ信号をコンピュー タ100に対して入力するためのスキャナなどの画像記憶装置195を備えるよ うにすることもできる。
図4を参照する。本発明の1実施例の動画像作成システムは、図3に示したコン ピュータ100を備えており、このコンピュータは動画像作成者が作業をするた めの作業端末となる。また、この動画像作成システムは、内挿装置101、再生 装置103、および描画装置105かもなる3つの異なる画像列処理を実行でき るようになされている。内挿装置については、本発明が主に係わるものであるが 、一連の画像フレームを生成するためのものである。再生装置103は、既に生 成されて記憶されている一連の画像列を呼び出し、この画像列を動画として動画 作成者作業端末装置のモニタ160上に表示する。仕上げ描画装置105は像に 色づけを行い、また線表現の表現具合(例えば厚さ)を変更する。この仕上げ描 画装置105は、好適には、我々の以前の出願9110945.4および本発明 と同日に出願され同じ優先権主張をしている我々のPCT出願PCT/GB91 /・・・・ (代理人資料番号5086399)に開示されているようにして動 作する。
図5を参照する。本発明による大規模な動画像生産のための1実施例では、複数 の作業端末110a〜110cが備えられており、別々の異なるユーザが与えれ な動画像列の中の異なる部分を制御用プロセッサを備えたディスクドライブ装置 などの共通の大規模記憶装置180(ファイルサーバ)を共用しながら作成する ことができるようになされている。なお、この大規模記憶装置180は、作業端 末にイーサネットなどのローカルエリアネットワーク(LAN)を介して接続さ れている。
通常、仕上げ描画処理は、本発明による各フレームに対する内挿処理と比較して さらに多くのビクセル演算を必要とするから、独立したプロセッサ110d〜1 10f(典型的には少数)を備えて、これらをローカルエリアネットワークを介 して作業端末110a−110cと接続させ、仕上げ描画処理作業を実行するよ うにすることが望ましい。このようすることによって、より簡易なコンピュータ を動画作成者作業端末110a−110cに用いることも可能となる。また、こ れらは、例えば数値演算コプロセッサ及び/或いは高級なグラフィックスエンジ ンなどを備えていなくともよい。あるいは、同一のプロセッサを必要に応じて描 画プロセッサと作業端末とで使い分けるようにしてもよい。この場合、制御手段 を備えさせて、各ブロッセサの現在の負荷を判定し、負荷を割り当てて与えたり 、作業端末のタスクをネットワークに接続されているプロセッサに与えて処理負 荷を管理する(例えば、バランスをとる)ようにすることができる。
上記図3及び図4の実施例を実現するのにふされしいコンピュータ100の1つ の例は、米国ネクストコンピュータ社(NeXTComputer、 Inc) 製のネクストディメンジョン(NextdioIension)カラーボードを 備えたネタストキューブ(NeXTCUBE)コンピュータである。この装置構 成を用いると、フォーマット化された出力を直接にビデオカセットレコーダある いはその他のビデオ記憶装置に対して出力することができ、また、逆にビデオ入 力信号を受け取ることができる。さらに、このコンピュータはディスク記憶装置 180に記憶させる際に画像圧縮を行うための手段、またこのようにして記憶さ れた画像を伸長して表示させる手段を有している。
(以下金白) 本発明のこの実施例においては、対象物の線画が表示フレームに表示されて、ま た/あるいは記憶されている制御点データ(好適には、データは上記のベジェ形 式で記憶さねている)を参照しながら編集が行われる。言い換えれば、記憶され ている表示フレームの表現はライン表示を構成するラインセグメントを定義する 複数の制御点から構成されている。
図63を参照する。メモ1月20は作業メモリ領域121を有しており、この領 域に対してデータが書き込まれる(例えば、ランダムアクセスメモリ領域)。
図6bに示すように、モニタ160に表示された画像は少なくとも1つのライン Aを含んでおり、このラインは3つの制御点A、、A、、Asによって定義され る3次曲線によって描かれる。この線画を表すための対応する画像フレームデー タは、作業メモ1月21の中のフレームテーブル122に曲線列(曲線l、曲線 2等)として記憶されており、これら曲線列の各々はそれぞれ制御点列(点1、 rυ、2、点3)によって定義されている。各制御点はその制御点が表示される 領域の位置を表す位置データ(x+ 、’I+ )と、制御点の両側の曲線セグ メントに関する2つの接線の先端点を定義する接線データ(X*+、y*++  Xt++ 3’Jとによって表される。接線先端点データ(X * l+ ya  + * X t + + yr + )は、接線の先端の位置を定義する位置 データX、Yとして記憶される。あるいは、制御点からのオフセット量x、yと して記憶するようにもできる。
モニタ160は通常はラスクスキャン型が用いられる。従って、モニタ160に はラスタスキャン画像を供給する必要があり、先に議論したように、メモリマツ プされた画像記憶装置130から供給される。従って、ライン表示出力発生手段 111を備えていることが必要であり、これによってフレームを構成する曲線セ グメントを表す記憶データを読み出し、これに対応して、複数のビクセルから構 成されるラスタ画像データを生成して、画像記憶装置130に記憶する。白黒表 示装置を用いた場合には、各ビクセルデータは1ビット或いは短いビット数しか 必要としない。
従って、図7に示したライン表示ジェネレータ111はメモリ122にアクセス して、記憶されているデータを読出し、また、画像記憶装置130にビクセルデ ータを書き込む。図8に示したように、このライン表示ジェネレータは中間点位 置を算出し、画像記憶装置130の中の曲線上に存在するビクセルに対応する記 憶場所を「暗」にセットし、その他の全ての記憶場所を「明」にセットする。
画像記憶装置130の内容は、モニタ160上に表示される。実際には、ライン 表示出力発生手段111は、メモ1月20のプログラム記憶領域に記憶されたプ ログラムによって制御されて動作するCPUll0によって構成される。コンピ ュータ100が、上記のネクストコンピュータによって構成されている場合には 、ライン表示出力発生手段111はオペレーティングシステムの中に具備されて いる「ポストスクリプト(PostScript月表示コマンド言語の制御の下 に動作するCPtJlloによって構成される。
さて、上記の装置によ−)で行われる基本的な動作について、いくつかを次に説 明する。
22二ムク編栗 後に、さらに詳細に議論するように本発明の好適な実施例では、ユーザがフレー ムを編集することを可能とする手段が備えられている。フレームの編集は、既存 のライン軌道を変更することと、或いは(変更に比べるとまれであるが)新たな ラインを付は加えることによって行われる。従って、フレームテーブル122に 保存されているデータを修正することができるようになっており、また好適には 画像記憶装置130に記憶されている画像データも修正することができ、ユーザ はこれら変更結果を見ることができるようになされている。テーブル122に記 憶されているフレームデータな修正するための手段をユーザに提供する最良の方 法はユーザが位置検出入力装置170aを用いて、モニタ160のスクリーンに 表示されたフレーム画像を直接的に修正することができるようにすることだとい うことがわかっている。
且を男J肚1凍 この実施例においては、図9に示されているように、ユーザは例えばマウスなど の位置検出入力装置170aを操作し、この位置検出入力装置170aを動かす ことによりて、動きの方向と大きさとを示す信号を発生させる。この信号は、装 置入出力制御器140によって検出され、これに対応する信号がカーソル位置制 御装置112(実際は、CPUll0が、記憶されているプログラムの制御の下 に処理を行う)に供給される。カーソル位置制御装置112は、記憶されている x、y座標表現によるカーソルの現在位置データを保持しながら、カーソル位置 制御装置112からの信号に従って、記憶されているカーソル位置を更新する。
カーソル位置制御装置112は、画像記憶装置130にアクセスして記憶されて いるカーソル位置に対応する画像データを修正し、モニタ160上にカーソル位 置記号りを表示する。このようにして、ユーザは入力装置170aを動かすこと によって、カーソル位置記号りの表示位置を移動させることができる。
好適な実施例においては、ライン表示ジェネレータ111は編集モードにおいて 、ラインAに対応するデータを画像記憶装置130に書き込むだけでなく、制御 点データを表示できるようにすることも可能なようになされている。従って、各 制御点A、、A2に対して、ライン表示ジェネレータ111は制御点記号(例え ば、黒の滴点)を表すデータを、制御点の座標x、yに対応する画像記憶装置の アドレス位置に書き込む。
さらに、ライン表示ジェネレータ111は、好適には、各制御点に対し、これに 対応させて第2の制御点記号E+(或いは、このような記号を2つ)を、点A1 から制御点接線データによって定義される直線に沿って移動した点に相当する位 置、即ち、位置X@II ye11および/またはX t + 、 yt +に 発生させる。好適には、接線そのものを表す2点A、およびE、の間の直線が同 様にして生成される新たな曲線Aを入力するには、ユーザはそのようにしたいの だという意志を示す信号(例えば、キーボード170bからコマンドをタイプす ることによって、または、カーソル記号を制御メニュー表示の所定の領域に移動 させることによって)を発生させ、カーソル記号dを表示装置160上の所望の 位置に移動させる。次いで、位置検出入力装置170aを操作して、所望の点に 到達したことを示す制御信号を発生させる。カーソル位置制御装置112は、カ ーソル現在位置データをフレームテーブル122に制御点位置座標として与える 。また、これに対応して表示ジェネレータ111は制御点記号を表すデータを、 画像記憶装置130に制御点座標に対応するアドレス位置に対して書き込む。次 にユーザは、接線先端位置情報を例えば、キーボード170bを介して、または 、後に述べるような方法で入力する。第2の経路制御点がこのようにして定義さ れテーブル122に記憶されると、これに対応して監視画像ジェネレータ111 は中間画像点を画像記憶装置130に書き込むことによって、これらの間のライ ンセグメントを監視表示装置上に表示させる。
図10に示したように、監視表示装置上に表示されているラインAの経路の形状 を修正するには、ユーザは入力装置170aを操作し2てカーソル位置記号りを 移動させ、表示装置160上の制御点記号A、またはElのいずれかと一致させ る。ユーザは制御信号を発生させて(例えば、マウス入力装置170aを「クリ ック(click) Jさせる)、カーソルが所望の位置にあることを示す。デ バイス入出力コントローラ140はこれに応答して、制御信号をカーソル位置制 御装置112に供給する。カーソル位置制御装置112はカーソル位置データを 監視画像エディタ113(実際には、CPUll0が記憶されているプログラム の制御の下にこの機能を果たす)に供給し、ここで、記憶されているカーソル位 置と、点Aの位置(X、Y)および点Eの位置(xe + ye )とを各位置 に対して比較する。
カーソル位置が位置Aあるいは接線先端位置Eのどれかと一致していると判断さ れると、次に画像エディタ113が、更新されたカーソル位置をカーソルコント ローラから受け取り、カーソル記号がそれと一致しているような点A、に対応す る点データを修正し、その点をその後のカーソルの動きに対して追随させて移動 させる。
カーソルが曲線Aの点A+の位置にある場合に、ユーザが入力装置170aの操 作を行うと、ラインテーブル122の中の位置データ(x+ 、Y+ )が修正 される。しかし、接線データ(x、+ :!□)は影響を受けずに元のままとな っている。一方、カーソルが接線先端点E、の位置にあるときに、ユーザが入力 装置170aを操作した場合には、メモリ120の中のフレームテーブル122 の接線先端点データが変更され、一方、制御点位置データ(x、 y)は影響を 受けないいずれの場合も、それぞれ上記のような修正がラインテーブル122の 内容の内容に対して行われてから、画像ジェネレータ111は、今問題となって いる制御点によって影響を受けたラインセグメントを、画像記憶装置130に再 生成し、モニタ160上のライン表示を変更する。
一旦、ラインが所望の位置に修正されると、ユーザはさらに制御信号を発生させ る(例えば、マウス入力装置170aを「クリック」させる)。すると、監視画 像エディタ113はメモリ120の内容の修正を停止する。一方、カーソル制御 装置112は記憶されているカーソル位置の更新を続行して行う。
この方法を用いてライン表示を修正すると、非常に簡単にすばや(できることが 確認されている。
2) −重両イ の 7日 本発明による好適な実施例の装置によって実行される、ユーザが動画画像列を定 義できるようにするための処理は、以下のように行われる。
1、 百とすべき・ の 例えば、キャラクタ等。後にさらに詳細に説明するように、この実施例の装置で は、動画とすべきキャラクタまたは対象を位相幾何学的表現を用いて定義するこ とが可能である。
2・曳二ニアに二ム安定程 既に定義されているキャラクタを特定の形状で表示し、動画像列の中の離れたフ レームに対応させてキャラクタの向きや、位置を定める。
3、巴連スに二ムの作成 上記のようにして作成されたキー・フレームから、複数の中間フレームを作成し てその対象物を操作する。
4・衣示乙編! キー・フレーム及び内挿されたフレーム列、またはその画像が表示され、編集さ れても良い。
5、再生 フレーム列をビデオ画像に相当する一定の表示速度(1秒当たり24.25又は 30フレーム)で連続的に表示装置に表示し、ユーザが動画列画像を見ることが できるようにする。画像列は、関連する音響トラックとともに再生することもで き、タイミングについて、および同期がうまく取れているかについて評価を行う 。
6、仕上げ描画fRendering)フレームあるいは画像列に対して色づけ 、及び/又は陰影づけ、及び/又は所望の背景との合成を行い、ビデオ画像列と して完成させる。
2ンーシステムの の この実施例の1つの典型的な動作シーケンスを図11に示す。まず最初に、ユー ザは動画とすべきキャラクタ或いは対象を作成する。対象物の形状を変えること は可能であるが、しかし5、その下地になっているトポロジー(topol、o gy)は一定のままに維持される。従って、ユーザは最初の[テンブレー) ( template)J 、即ち下地となるトポロジーのデータを作成する。この テンプレートは、すべてラインで構成されている(従って、全て制御点によって 定義されている)キャラクタ或いは対象物の画像であり、後に最終動画像中に用 いようとしているキャラクタ或いは対象物について作成する。このテンプレート の画像すなわちフレームは、後にさらに詳細に説明するように、好適には位置検 出入力装置170a(例えば[マウス」)を用いてモニタ160上に表示させな がら作成する。
この段階で、テンプレートデータ(曲線制御点、及び、テンプレートをラベル付 けする識別データ)を大容量記憶装置180に記憶しておくことが望ましい。
また、ユーザはテンプレートを新たに作成せずに、記憶されているテンプレート を大容量記憶装置180から呼び出して用いることもできる。
次の段階で、多数のキー・フレームを作成する0手描きで動画像を作成する場合 におけるのと同様に、キー・フレームは時間的に間を置いて動画とすべき対象の キャラクタあるいは物体の形状や位置が変化したものをフレームとして作成した ものである。従って、各キー・フレームは、時々刻々と生起するフレーム画像列 の同一の点同士が対応するようなデータを有していることになる。
キー・フレームは対応するテンプレートから直接に作成することができる。即ち 、テンプレートを構成している制御点データを複写し、この複写された制御点デ ータを編集して元のテンプレートと異なったキー・フレームを作成する。好適に は、編集は、先の場合と同様に位置検出入力装置170aを用い、編集結果をモ ニタ160上で見ながら対話的に実行される。こうして編集された制御点デー夕 はキー・フレームデータを構成する。キー・フレームは既存のフレームを複写す ることによって同様に作成することもできる。この場合には、テンプレートフレ ームを間接的に複写したことになる。
この時点で、キー・フレームを大容量記憶装置180に保存しておくのば便利で あろう。好適には、キー・フレーム制御点データは、ある与えられた該当フレー ムデータと、テンプレート中のそれに対応するデータとの差を表すオフセットデ ータによって構成される。このようにすると、テンプレートを修正したとき、キ ー・フレームを個々に修正する必要がない、このような表現方式のその他の利点 については後に議論する。
このようにして作成されたキー・フレーム、あるいは大容量記憶装置180から 呼び出されたキー・フレームから、次にこれらの中間のフレーム(内挿フレーム )を導出するための処理を行う。各内挿フレームは、先の場合と同様に画像フレ ームを構成する曲線あるいは直線を定義する制御点の集合によって構成される。
各内挿フレームの各制御点は、その内挿フレームがある2つのキー・フレームの 間に内挿しようとしているものであるとするとき、それらの2つのキー・フレー ムの制御点の間の点となるように導出される。内挿フレーム数は、その間に内挿 しようとしている2つのキー・フレームの時間間隔に依存する。
次に、ユーザは内挿されたフレーム列がどのようになっているかを見てみる。
典型的には、キー・フレームは1秒以下の時間間隔を有し、その間に30枚以下 の内挿フレームが生成される(もちろん、時間間隔をもつと太き(とることも可 能である)。従って、いくつかのキー・フレームと、それらの間に内挿されたフ レームの像をモニタ160のスクリーン上に同時に表示することが可能である。
ユーザは、この段階で内挿フレーム列を大容量記憶装置180に記憶することも できるし、あるいは、内挿フレーム列に何らかの修正を施すこともできる。
第1の修正は、キー・フレームの生起時刻を変更することである。この場合、キ ー・フレーム自身は描き直されないで、内挿数が変更される。従って、内挿がや り直される。あるいは、ユーザは、キー・フレームを編集することもできる。
次に、ユーザは(後に議論するように)このような直接的な内挿では良い結果か えられず、新たなキー・フレームを既存の2つのキー・フレームの間に挿入する 必要があるかどうかを判定する。この新たなキー・フレームの挿入は内挿で得ら れたフレームをキー・フレームに変換することによって達成できる(後にさらに 詳細に議論する)。
典型的には、次の段階で、フレーム列を動画として見てみて、タイミングおよび 外観が正しくできているかどうかを調べる。つまり、装置で各キー・フレームお よび内挿されたフレーム列を順番に短い時間間隔をおいて表示していく、フレー ム列を「普通の」走行速度で表示しようと思えば、フレーム間隔はl/24゜1 /25或いはl/30秒である。しbル、好適には、ユーザはフレーム反復速度 を変更して、フレーム列をスローモーションとして見ることもできるようになさ れている。好適には、ユーザはまたフレーム列の中から短い副フレーム列を権定 して、その短い副フレームだけを順方向にあるいは逆方向に何度も動画として見 てみることもできる。もし、フレーム列がうまくできていない場合には、先のよ うに、ユーザはキー・フレームの外観あるいは時間位置を編集するか、または、 キー・フレームの追加・削除を行う。次に、典型的には、画像列のフレームを構 成している制御点データを後の使用のために大容量記憶装置180に保存するさ らに、フレームに色づけ、および/または、塗り込み、および/または、既存の 背景への組み込み(「仕上げ描画」)を行ってから、対応するラスク画像フレー ムを作成し、これをカラーモニタ上に表示したり、あるいはビデオテープレコー ダに保存したり、または圧縮符号化して大容量記憶装置180に保存する。
図11および以下の説明から、上記の一連の作業は、ユーザが各段階で行うこと ができるオプションのすべてについて述べたわけでは決してないことは明かであ ろう。
メモリ120へのデータの舌 上記のことから、装置を用いて、いろいろな異なる種類のデータを評価し、記憶 することによって、完全な動画画像列を作成完成していく必要があることは明か であろう。次に、データのアレンジのやり方の例を以下に説明する。
完成されたときの動画はいろいろなキャラクタを含んでいるであろうし、また、 いろいろな区分、画像列から成っているであろう。図13aに示したように、完 成した個々の動画(図12及び図13において「エポック(epoch) Jと 記されている)に対して、データのテーブル1000を定義し、このテーブルに 動画画像列の識別名(表題)を表すデータサウンドトラック関連データ、および 連続したフレームからなる画像列1100,1200,1300.1400につ いてのテーブルを記述する。画像列は連続的に生起する。画像列のリンクされた リストを作業メモリ121にに記憶してお(のが便利である。言い換えれば、総 合動画テーブルは画像列テーブル1100.・・・の中の最初の(また、好適に は、最後のものも)位置を識別するデータをメモリ121中に記憶しており、一 方、各画像列テーブル1100.・・・は次の画像列テーブル(好適には、前の 画像列テーブルについても)のアドレスを識別するデータを保持している。
例えば、漫画における動画では、キャラクタまたは対象物のいくつかの部分を、 その部分だけを部分的に同時に、また、事実上独立に動かすことが極(普通のこ ととして行われている。例えば、キャラクタが、歩きながら、同時に話すといっ たことである。本発明の好適な実施例においては、同一のテンプレートの異なっ た部分に対して独立した動作を定義することが可能なようになされている。これ は、テンプレートの異なった部分に対して、別々に独立したキー・フレームとそ れらの間の内挿フレームとを作成し、これらを別々に編集して所望の動作をさせ るようにし、最後にこれらを以下に説明するように併合することによって達成で きる。キー・フレームとその内挿フレームから成るそれぞれの集合は、それぞれ の集合ごとに時刻によって順序づけられているフレーム列を形成しているが、以 下では、「画像列」という用語を(胎されたフレームの列に対してのみ用いるこ ととし、また、テンプレートの個々の部分に対して独立に形成され後に画像列と して1つに併合される→のフレームの集合(キー・フレームと内挿フレーム)に 対しては「タイムラ1′ン」という用語を用いることとする。もちろん、対象物 全体を同時に動かすような場合には、1つのタイムラインが最終的な画像列を形 成することになる。
従って、一般には、図13bに示されているように、各画像列テーブル1100 は、その画像列が動画を作成するの橙どのテンプレートフレームを用いたのかを 定義するデータ、画像列1100がどの動画すなわちエポックtoooに対応し ているのかを示すデータ(例えばポインタ)、合成されたすなわち併合された画 像列(リンクされたフレームのリストとして記憶するのが便利である)で構成さ れるフレームテーブルの集合(曲線群)、タイムラインテーブルの集合1110 .1120.1130.・・・(以下に説明する)、現在表示されているタイム ラインを定義するデータ、および、望ましくは、現在表示されているタイムライ ンを除いたすべての併合タイムラインの和で構成されているフレームの集合また は曲線群とで構成されている。これによって、現在表示されているタイムライン を容易に編集することができ、次いで編集が終わったタイムラインを「基礎(b ase)」フレーム列に併合して既存の合成画像列と置き換えることができる。
また、合成画像列の長さ、最初フレームアドレス、最後のフレームアドレスも記 憶される同様に、図13cに示したように、各タイムラインテーブル1110, 1120、・・・によって、→のフレームデータテーブルが定義され、望ましく は、これらは、キー・フレーム1111,1112,1113.・・・のリンク されたリストとして記憶される。
図13dに示したように、各キー・フレームデータテーブル1111,1112 .1113はフレームテーブル122を指し示すポインタと、さらにその他のデ ータとからなる。この中には、そのキー・フレームから次のキー・フレームの間 に内挿されている内挿フレームを定義する内挿フレームテーブルのリスト指し示 すポインタも含まれている。フレームテーブル122は、記憶されているフレー ムの種類を示すインディケータと関連づけられており、この場合では、フレーム テーブル122がキー・フレームであることを示している。さらに、キー・フレ ーム番号(即ち、タイムライン1110のキー・フレームの中の順番)を定義す るデータが記憶されている。
図13eに示したように、各キー・フレーム1111に対する内挿フレームデー タテーブルIIIIA、IIIIB、lllIc、・・・は、それぞれ、フレー ム曲線群データテーブル122を指し示すポインタを有している。また、それぞ れ、次のキー・フレーム1112にどの程度に依存するのかを定義する内挿係数 (典型的には0〜1)を有している。こうして、連続した内挿フレームIIII A、IIIIB、lllIC,・・・に対して、内挿係数は、0に近い値から1 に近い値へとだんだんと増大する。内挿フレーム1111A及びキー・フレーム 1111は、それぞれ、タイムライン1110におけるその位置、および画像列 1100における位置を定義するフレーム番号を保持している。フレーム番号は 互いに1/24.1/25、又はl/30秒(或いは、その他の任意の所望のフ レーム反復速度を採用できる)の時間間隔で時間的に連続している点に対応した 番号である。
図14及び図15は図68のフレームテーブル122の配列について、さらに詳 細に示したものである。各フレームテーブル122は、フレームに描かれている 対象物或いはキャラクタ(位相的にテンプレートと対応している)を構成する直 線あるいは曲線の集合のリストを含んでいる。テンプレート、キー・フレームお よび内挿フレームは、すべて同様にフレームテーブル122によって表現される 。直線あるいは曲線はリンクされた曲線テーブル2100,2200,2300 .2400のリストとして与えるようにするのが便利であり、これらの各曲線テ ーブルは曲線制御点のリスト2110,2120.2130 (これもリンクさ れたリストとして記憶するのが便利である)で構成される。
各制御点211Oは、制御I1点、座標を示す位置データと、制御点接線先端座 標を示す位置データとから成る。次の制御点までの曲線セグメントは、属性制御 点(後にさらに詳細に説明する)を含むことができ、これによって仕上げ描画処 理における色や透明度などの属性値を制御したり、あるいは、以下に議論するよ うに内挿を行う際の適合性が得られるようにする。その際、その間で定義されて いるキー・フレームの間においてこれらの属性制御点の位置も内挿しておくこと が望ましい。
従って、制御点2110.・・・は次の曲線制御点までの曲線セグメントの属性 制御点のリストあるいはテーブルを含んでいる。各属性制御超克テーブル項目は その声、によって制i卸される属性値(例えば、ライン色或いは透明度)を定義 するデータを含むようにすることができる。また、属性別(押点のラインセグメ ントに沿った位置を定義するデータを含み、これにはその点におけるパラメータ tの値を用いるのが便利である。属性制御点についてのさらに詳細については我 々が以前に出願した英国出願第9110945.4、および本発明と同日に出願 し同一の優先権を主張しているPCT出願PCT/GB91/・・・ (代理人 資料番号5086399)に記述されており、これらの全ての部分をここに参照 併合する。
フレームデータ、タイムラインデータおよび画像列データを記憶するのに、上記 のようなリンクされたリスト配列を使用しなければならないというわけではない が、こうすることによって、フレームや画像列あるいは副画像列の、どちらかの 側でリンクを置き換えたり、リンクを破ったりすることによって個々のフレーム 、画像列または副画像列を時間とともに動くようにすることができるので、特に 好適なのである。
装置の稼働中、上記のすべてのデータテーブルは、通常、作業メモリ121に常 駐する モニタ160 への 六 上記のことから分かるように、かなりの量のデータが装置を使用する際に装置に よって保持されており、また、そのデータはユーザにとっては直ちには、理解で きないような形式で保持されていることが明かであろう。従って、どのようにし てデータをモニタ160を介してユーザに示し、またモニタ160を介してユー ザがどのようにしてデータを修正することができるのかは非常に重要なことであ り、これが本発明の装置の主要な機能的性能に影響を与える。
まず、1つのフレーム表示装置および、記憶されているフレーム(内挿フレーム またはキー・フレーム)のどれを表示するのかを指定する手段とを備えるのが望 ましい。単独の1フレームを表示するには、表示ジェネレータ111は対応する フレームテーブル122を読み取って、それに対応する画像データを画像バッフ ァ130に対して出力し、これが表示される。
従って、図16に示したように、好適には、複数の画像バッファ130a、13 0cを画像記憶装置130に備えるようにする。その中の1つのバッファ130 aは表示バッファで構成され、これによってモニタ160上への表示を行う(表 示装置にマツプされている)。他のバッファ130b、130c、・・・によっ てコンピュータ技術として一般に知られている「ウィンドウズ(windows ) Jがサポートされ、これらの各々のバッファはモニタ160の表示の任意の 部分に形成されるラスク画像に対応する画像データを含んでいる。フレームバッ ファ130b、130c、・・・に保持されている画像はバッファ130aに結 合され、その大きさ、位置および順序(即ち、ウィンドウズによって重ね書きさ れる領域)が多くの市販パーソナルコンピュータのオペレーティングシステムに おけるのと同様にしてユーザのキーボード170b或いはマウス170aの操作 によって定められる。これは良く知られており、本発明の一部をなすものではな い。
従って、図17に示したように、モニタ166上の表示は、バッファ130b〜 130eのどれかと、或いはこれら全部と対応する表示領域160b〜160e を有する。好適には、ユーザがこれらの領域の中の1つ、或いはいくつかを選択 するための手段(入力手段170及びCPU11o)が備えられている。
以上に説明したように、バッファ130bは画像列の中から選択された1枚のフ レームに対応する画像データを有している。
同様に、バッファ130cは1枚のフレーム画像を保持できるサイズを有し、そ の画像は記憶されたテンプレートに対応する画像である。
バッファ130dは、連続したフレーム番号を有し、タイムラインまたは画像列 のどの部分であるのかを後に詳細に説明する方法で表すようになされた連続した フレーム(キー・フレームおよび内挿フレーム)の合成画像から成る画像を記憶 する。
バッファ130eは、複数の棒グラフ画像を記憶するようになされており、各棒 グラフはそれぞれバッファ130dの画像の中の1つのフレームに対応しており 、それぞれの棒グラフは対応するフレームの内挿係数の値を棒の長さとして表す ようになっている。
これに対応する表示例の様子を図18に示した。ここで、暗い像がキー・フレー ムに対応し、灰色の像が内挿フレームに対応している。この実施例では、ある与 えられたフレームを3つの異なるやり方で同時に表示することができるというこ とがわかるであろう。即ち、第1に、画像記憶装置130bの内容に対応して表 示領域160bに1つの独立した表示ができる。第2に、画像記憶装置130d に対応して画像列表示160dに画像列の一部を表示することができる。第3に 、画像がそこに含まれているタイムラインを表す棒グラフの棒を表示領域160 eに画像バッファ130eに対応させて表すことができる。
図19a〜図19cを参照する。画像列バッファ130dに保持されている画像 はいろいろな形式で表示することが可能である。第1の形式では、図18a及び 図18bに示されているように、バッファ130dに書き込むことによって画像 列の画像がその画像列を構成している各フレームに対応するラスク画像データと して生成され、表示装置160にフレーム画像が次々に表示されてい(。ただし 、ある程度の重なりをもたせるようになされており、各フレーム画像はバッファ 130dに記憶されている直前のフレームと部分的に重ね書きされる。フレーム 画像は、必要ならば、次々と置き換えてい(代わりに、重畳させて表示するよう にもできる。
図19cは他の実施例を示したものであり、この実施例では、各フレーム画像は バッファ130dに重なりを持たせずに空間的に別々の部分に書き込まれる。
この実施例については、図18にも示されている。図19cの表示形式では、対 象物を連続したフレームの中の対応する部分を取り出して互いに近(の位置に表 示するので、動きを観察するのに都合がよい。一方、図19aの表現形式を用い ると、各フレームをもっと明瞭に調べることができる。本発明の好適な実施例で は、これらのモードを選択するための手段(例えば、キーボード170b)を有 している。また、図19cに示したモードでは、連続したフレーム画像同士の間 での置き換えが可能となっている。
図20を参照する。この図は、フレームを編集する場合のフレーム表示領域16 0bのフレーム表示を示したものである。フレームを選択することによって、ユ ーザが編集の意志を示すと(キーボード170b或いは位置検出入力装置170 aを操作することによって行われる)、表示ジェネレータ111はフレーム画像 データをフレームバッファ130bに対して出力するだけでなく、記号(例えば ドツト)を曲線制御点に出力する。好適には、接線の先端、および、さらに好適 には接線の長さを示す直線が表示される。さらに、カーソル記号(「+」で示さ れている)が表示され、これによってユーザはフレーム画像を先に説明したよう に位置検出入力装置170bを用いて編集することができる。
図21を参照する。表示領域160eには、タイムラインバッファ130eに保 持されている棒グラフデータ画像が表示される。それぞれの棒はある1つのタイ ムライン中のフレーム(キー・フレーム或いは内挿フレーム)と関連をもってい る。棒の長さは内挿フレームに関する内挿係数を表しており、キー・フレームは (その定義どおり)内挿されていないから、キー・フレームに対応する棒の長さ は最大値か最小イ直かいずれかとなる。タイムライン画像160e及び、それに 対応するバッファ130eは、まず、ユーザに画像Jl領域160dに情報の大 要を示し、次に特別に簡単な方法でタイムラインを編集することができるように なっており、その、タイムライン編集の結果を全体として見ることができ、位置 検出入力装置170aを用いてカーソル記号を表示160eの中の選択したい棒 の位置にもっていき、適当な制御信号を発生させる。
そのような修正の1つのタイプは、ある与えられた内挿フレームの内挿係数を変 更することである。この場合には、そのフレームに対応する棒の高さが、ユーザ のカーソル位置記号操作に応じて変化し、これに応じて、対応するフレームテー ブル1llaに記憶されている内挿値が修正される。まず、互いに隣同士となっ ているキー・フレームの間の連続したフレームの内挿係数の値が、通常は線形数 Jllである徐々に変化する数タリに従って変化する。ただし、線形111を用 いずに任意の予め定められた曲線(通常は単調に変化する)に応じて変化するよ うにもできる。各棒の高さが2つの色で表示されるようにしておくことが望まし く、ある値を境にして棒の高さは、この2つの間で変わる。このとき、キー・フ レームの捧を示す色(その)し/−ム番号によってキー・フレームかどうか力輝 1fされる)は交互に変オっることになる。内挿フレームに対する棒の高さは、 あるキー・フレームの後ろの部分では内挿係数に従って増大し、次のキー・フレ ームの後ろで+1逆に内挿係数とともに減少していくようになっており、鋸の歯 状の変化ではなく次第に大きくなり次に次第に減少する。この方がユーザにはわ かりゃすい。
このような勘タリを用いることによって、ユーザは直ちに画像列を生成してそれ を見ることができ、これは、それぞれの内挿値を個々に指定しなければならない 方法と比較してずっと簡単である。はとんどの場合、同じ数列(例えば、線形内 挿)を採用することができることが見いだされている。しかし、ある与えられた フレームに対して、 (描き直したり、フレームを編集することなしに)単に内 挿値を変更するだけで画(Mlを修正できるようにしておくと非常に便利である 。この修正は、位置検出入力装置170aを用いて、棒グラフ画像をオンスクリ ーン操作することによって非常に便利に達成できる。
他のタイプの修正はフレームまたはフレーム列の時間軸における移動である。
これは、位置検出入力装置170aを用いて、図表による視覚化された手段によ って達成される。また、ユーザは1つあるいは複数のフレームを指定して、フレ ームをタイムラインに沿ってカーソル記号を用いて所望の位置まで移動する。こ の場合、装置はユーザが選択したフレームのフレーム番号を変更し、必要に応じ て新たな中間フレームを生成(或いは古いフレームを削除)するようになされて いる。さらに詳細については後に説明する。
・な動 についてのi 1つの具体的な動作についてそれを実行する方法の例を以下に述べる。
テンプレートフレームの ユーザは新しいテンプレートを作成したい旨を示す信号を、キーボード170b または位置検出入力装置170aを用い、典型的にはモニタ160上に表示され たオプションメニュー(恒久的に表示しておくようにもできる)の中から選択す ることによって発生させる。
こうしてCPUll0によって作業メモリ121の中にテンプレートテーブルが 作成される。このテーブルはフレームテーブル122と、フレームがテンプレー トであることを示すデータとから構成される。テンプレートフレームは、それ自 身は画(11の中には採用されないので画像t1番号は必要でない。ユーザは典 型的には、キーボード170bを介してそのテンプレートに関する名前を示す信 号を発生させ、この信号は作業メモリ121中に記憶される。テンプレート表示 領域160cがモニタ160上に作成される。また、カーソル記号が表示領域1 60cの中に表示され、ユーザはテンプレート作成作業に進むことができる。テ ンプレート作成において、ユーザは以下のオプションの中から適当なものを選択 することができる。
机い」仲眩群成 カーソルの現在位置によって第1の制御点のx、 y座標を与える。この点にお ける接線の長さはOに設定される。これらの値は、フレームテーブル122に書 き込まれる。カーソル位置は連続的にモニタされて第2の制御点位置の座標が与 えられる。この値はテーブル122においてカーソルの動きにつれて連続的に更 新されていき、ユーザが制御信号を発生すると、この第2の制御点の座標は固定 確定される。第1と第2の制御点の間のラインが連続的にラインジェネレータ1 11によってテンプレートバッファ130cの中に生成されて、テンプレート表 示装置160上に表示される。これによって、ユーザは第2の制御点が正しい位 置に作成されたかどうかを判定することができる。第2の制御点接線の長さは、 同様に、初期値としてOに設定される。
剋御点の修正 図1Oを参照しながら、上述したようにして行われる。
所長y1す貼癌可…如 曲線中に、制御点をさらに挿入して、曲線のセグメントを2つに分割することに より、さらに複雑な曲線を作成することができる。即ち、ユーザは、テンプレー ト表示領域に表示された曲線に沿ってカーソル記号を所望の位置まで移動させ、 キーボード170bあるいは位置検出入力装置170aを介して信号を発生する (例えば、マウスを「クリックコさせる)。すると、カーソルの現在位置座標が 読み取られる0次いで、そのカーソルの現在位置に相当する点をはさんでその両 側に、曲線に沿って位置する2つの制御点が8BIJされてめられる。カーソル の現在位置座標を用いて3次方程式を解くことによって、カーゾルの現在位置に おけるパラメータtの値がめられる。新しい制御点レコード2110がそのテン プレートに対するフレームテーブル122中に作成され、この新しい制御点レコ ードには、曲線上の隣接する2つの制御点を指し示すポインタが含まれている。
周囲の制御点データレコード中の「次の制御点」および「前の制御点」のポイン タフィールドが新しい制御点を指し示すように修正される。新しい制御点におけ る接線の傾き及び大きさが算出され、新しい制御点レコードに記憶される。新し い制御点はその点を通過する曲線の形状を変えるために編集を行うこともできる 。
製御点の削除 ユーザによって適当な信号が発生されると、カーソルが位置している場所の制御 点が、カーソルの現在位置座標を用いてテーブル122の中で探し出されて対応 する制御点レコードが削除される0曲線セグメント上の隣接する制御点の「次の 制御点」フィールドおよび「前の制御点」フィールドが互いに互いを指し示すよ うに修正されて、削除された制御点への参照が取り除かれる。
ラインセグメントを追加・編集することによって、所望のライン画像がテンプレ ート表示領域160c上に形成される。また、対応する曲線データ群がテンプレ ートに対応するラベル力qtgすられたフレームテーブル122に記憶される。
直接にテンプレートの形状を変える上記の処理に加えて、ユーザは、属性制御点 を附加して最終的に描画される画像の属性を制御することもできる。これは、表 示装置160上に表示されている曲線セグメントに沿ってカーソル記号を所望の 点まで移動させてから、適当な制御信号を発生する(例えば、キーボード17o bの適当なキーを押す)ことによって実現される。すると、カーソルの現在位置 を用いて、新しい属性制御点レコードを挿入しようとしている属性制御点リスト に対して、曲線に沿ったその1つ前の曲率制御点がめられて、周囲の属性制御点 ポインタが、それに従って変更される。パラメータtの値がめられて、属性制御 点レコードに記録される。また、ユーザは、後に使用するために、その点の属性 値に関するデータを入力することもできる(以前の我々のUK出願911094 5.4、および上に引用したPCT出願PCT/GB9115086399に記 載されているように行う)。
所望のテンプレートが作成が終了すると、典型的には、テンプレートテーブル1 22の内容が大容量記憶装置180に保存されて、そのテンプレートに対する名 前或いは8刻すデータ(例えばファイル名)を用いて再呼び出しが可能なように なされる。
そ=1旦二鼾囲戒 キー・フレームを構成する曲線の集合は編集してキー・フレームテーブルに保存 することができ、テンプレートに関して上記に説明したのと同様なやり方で対応 する画像が、フレームバッファ130bから読み取られてフレーム表示領域16 0bに表示される0画(iF11中におけるキー・フレームの生Jla顆’L? 、、も重要である、従って、キー・フレームがどの画像列或いはタイムラインに 属しているかを表すデータ、その画(11中において、キー・フレームが他のキ ー・フレームに対してどのような相対位置にあるのかを示すデータ、及び画(1 1或いはタイムライン中のそのキー・フレームの絶対位置(フレーム番号)を表 すデータを記憶しておく必要がある。
これらのデータは、ユーザによってキーボード170bを介して入力することが できる。或いは、もしカーソル・トラッカ112によってカーソルが表示領域1 60eに表示されている棒グラフ画像のある棒の位置にあること力1蛎りされた ときには、それに対応するフレーム番号がキー・フレームに割り当てられる。こ のようなデータ入力が何もなされなかった場合には、装置は、好適には、現在最 も大きいフレーム番号に1を足したフレーム番号をキー・フレームに対して割り 当て、またキー・フレーム番号としては、最大のキー・フレーム番号に1を足し たものを割り当てて、そのフレームを既存のタイムラインの最後に加える。
次に、新しいキー・フレームテーブル122がメモ1月20中に作成され、CP Ull0によってテンプレートフレームテーブルの内容が新しいキー・フレーム テーブルにコピーされ、新しいキー・フレームがテンプレートと同一となるよう になされる。新しいキー・フレームのメモ1月20におけるアドレスがタイムラ イン中の隣接するキー・フレームの「次のキー・フレーム」ポインタに代入され る。また、メモリ中のその他のポインタに対して、キー・フレームが新たに追加 されたことを反映できるように必要なセットアツプがなされる。
(以下余白) タイムライン画像バッファ】30eが修正されて、表示領域160eのキー・フ レーム位置に新しい棒が表示される。さらに、前のキー・フレームに対して内挿 されたフレームがあった場合には、これを再計算する(後にさらに詳細に説明す る)。後に続くキー・フレームがある場合には、そのキー・フレームに対する一 式の内挿フレームがやはり再計算されて、それに対応するメモリ120中の内挿 フレームデータテーブルのリストが新しいキー・フレームを指し示すようにセッ トアツプされる。次に、画像列バッファが更新されて新しい内挿フレームを含む ようになされ、これに応じてモニタ160上の表示領域160dの画像が、タイ ムライン棒グラフ表示領域160eにおける場合と同様にして変更される。
雅 上記のように、キー・フレームが作成されたり修正されたり、あるいは削除され たり、または時間的に移動された場合には、変更部分の両側の内挿フレームを再 計算する必要がある。図22に示すように、まず、CPUll0によってタイム ライン中にすぐ直前のキー・フレームが存在するかどうかがチェックされる(ボ ックス2201)。もし、存在している場合には、言い換えれば、問題としてい るキー・フレームがタイムラインの最初のフレームでない場合には、2つのキー ・フレームのフレーム番号がどれだけ離れているかをめ(ボックス2202)、 内挿フレームの数がこれと等しくなるように設定する。次に、図23に示した内 挿ルーチンを実行して、前のキー・フレームからの内挿を行う(ボックス220 3)。
図23に示したように、前のキー・フレームの内挿フレームのリストの長さを調 べて(ボックス2301)、もし新たな内挿フレーム数を、リスト中の現在の数 とは違ったものとする必要があるときには、あるいは、リストが存在しないとき には、現在のリストを削除して、必要な長さの新しいリストを作成する(メモリ のボックス2302)。次に、リスト中のそれぞれの内挿フレームに内挿係数を 割り当てる(ボックス2303)。その際に、線形内挿を行う場合には、n個の 要素からなるリスト中のi番目のリスト要素(即ち、前のキー・フレームから数 えてi番目のフレーム)に対してL=i/nの内挿係数を割り当てる。また、非 線形内挿の場合には、F(i/n)を割り当てる。ただし、Fは非線形関数であ る。使用可能な非線形関数の1つはS状関数である。すなわち、両端部では平坦 な関数となっており、中間では単調に増加する。この関数を用いると、キー・フ レームに対してゆっくりとした速度で内挿が行われ、キー・フレームに対して滑 らかに変化していく。また、同様な滑らかな変化を行わせるようなその他の関数 も可能である。
次に(ボックス2304)、各内挿フレームに対して曲線データが導出され、関 連する内挿フレームテーブルに記憶される。各キー・フレームは同じテンプレー トから導出されているので、同じ数の曲線制御点を有している。内挿係数りを有 するようなある与えられた内挿フレームに対して、CPUll0は、前のキー・ フレームの第1の曲線制御点と、後のキー・フレームの第1の曲線制御点とを読 み取り、これら2つの値の中間の値を内挿フレームの第1の曲線制御点に対して 割り当てる。具体的には、内挿点のx、y位置は次のように導出する。
x=x+ (1−T−) +X2 し ただし、X、は前のフレーム(内挿フレームが属しているリストにおいて前のフ レーム)であり、x2は後ろのフレームである。同様に、y座禅は次のようにま た、制圃、申における接線の先端点の座標が全く同じやり方でめられる。
好適な実施例では、Lは1よりも大きな値を取ることが許されている。これによ って、キャラクタを「オーバシュート(overshoot) Jさせることが でき、望ましい視覚効果を漫画動画で得ることができる。この場合では、 (1 −L)の項は0にセットされる。オーバシュートをさせるには、内挿を、例えば 、8フレームをL=Oか61.2で行い、これに続く次の2つのフレームを1. 2から1.0で行う。
次に、CPt、Jlloは2つのキー・フレームの中の次の制御点に進み、2つ のキー・フレームの中のすべての曲線のすべての制御点が内挿されて、対応する 制(利点が内挿フレームに作成されるまで処理を続ける。CPUILOは次の内 挿フレームを選択し、対応するより大きな内挿係数で同じ処理を繰り返す。
図22に戻り、次に(ボックス2204)、CPUI 10は(例えば、タイム ラインテーブル1110に保持されているポインタを参照することにより)後続 のキー・フレームがタイムラインの中に存在するかどうかを判定する。そして、 もし存在すれば、(言い換えれば、もしそのキー・フレームがタイムランの最後 のフレームでないならば)ボックス2202の処理を繰り返し、また図23に示 した処理を再び実行して(ボックス2206)そのキー・フレームとその後のキ ー・フレームとの間にフレームを内挿する。対応する内挿フレームテーブルの計 算が終了すると、CPUI 10はタイムライン画像バッファ130eに保持さ れているデータを修正し、新しい内挿係数を反映させて表示領域160eを更新 する(ボックス2207)。
同様にして、新しい内挿値に対応して新しい画像が画像列記憶装置130dに作 成され、画像列表示領域160dが更新される。
フレームのキー・フレームへのパ もし、内挿された画像列が満足できるものでなかった場合には(3次元で動いて いる対象物の画像列を表示する場合にときにそのようなことが起こる。というの は内挿は2次元で行われるからである)、画像列を改善する1つの便利な方法は 内挿フレームの中の1つをキー・フレームに変換して、そのキー・フレームを所 望のものとなるように編集することである。そのような意志を表明するには、ユ ーザは例えばカーソル2号をタイムライン表示領域160eの棒の位置まで移動 させ、適当な制御信号を発生させる(例えば、マウス170aを2回「クリック 」させる)。すると、CPUll0はカーソル位置を識別して、対応する内挿フ レームのフレーム番号をめる。次に、CPUll0は、その内挿フレームに対す るフレームテーブルを読み取り、キー・フレームリストから内挿されたフレーム が元々保存されていた位置にキー・フレームを配置する(ボックス2401)。
次に(ボックス2402)、図24に示したように、CPUll0は新しいキー ・フレームデータテーブルを作成し、キー・フレームにその内挿フレームが前に 属していたキー・フレーム番号の次のキー・フレーム番号を割り当てる。ただし 、フレーム番号は元のままに維持される。次に、内挿フレームテーブル122の 曲線データを新しいキー・フレームテーブルに複写し、内挿フレームテーブルを 削除する。
新しいキー・フレームへの参照データをタイムラインテーブル中の内挿フレーム の親キー・フレームの後に保持されているキー・フレームのリストに代入する( ボックス2403)、次に、新しいキー・フレームがフレーム表示領域160b に表示するために選択されて(ボックス2404)、対応する画像データがフレ ーム画像バッファ130d中に生成され、モニタ160上に表示される(ボック ス2405)。フレームの表示中には好適には図20に示したように、編集のた めの曲線制御点と接線も同時に表示される。
新しいキー・フレームを挿入したのにともない、タイムラインテーブルに保存さ れているリストの中の後続のキー・フレームに対して再番号付けが行われ、各々 1だけ番号が増加される(ボックス2406)。次に、図22の内挿処理が実行 され(ボックス2407)、これに対応して画像列記憶装置130dが修正さね 、更新された画像列が表示領域160dに表示される(ボックス2408)。
線形内挿の場合には、他の内挿フレームの図形の様子は新しいキー・フレームの 編集が終了するまではもとのままで変化しないが、それぞれに対する内挿係数は すでに修正されている。
1:ニ2に二み9削除 もし可能であれば、キー・フレームの数を最小限にとどめて、画像列の計算が簡 単となるようにするのが望ましい。従って、時には、キー・フレームを削除する ことができるようになっており、その際には新たに互いに隣接することとなった 2つのキー・フレームの間で内挿が行われる。図25に示したように、ユーザが キー・フレームを削除したい旨を示す信号を発すると(例えば、カーソル記号を 対応する棒グラフ表示領域160eの棒の位置まで移動させ、位置検出入力装置 170eまたはキーボードを用いて適当な制御信号を発する)、CPU11Oは 対象となっl::キー・フレームのキー・フレーム番号を読み取り、タイムライ ンデータテーブルにアクセスする。タイムラインテーブルに保存されているリス トの中の後続のキー・フレームのキー・フレーム番号が1ずつ減少される(ボッ クス2501)。次に現在のキー・フレームテーブルをメモリ121から削除す る(ボックス2502)。キー・フレームテーブルにリストされている全ての内 挿フレームテーブルが同様に削除される。
CPU110はキー・フレームリスト中にもっと前のキー・フレームが存在する かどうかをテストする(ボックス2503)。もし、そのキー・フレームがタイ ムラインの最初のキー・フレームであれば、さらにしなければならない作業は、 単に画像データを画像列バッファ130d中に再作成し、画像列表示160dを 更新しくボックス2505)、また同様にタイムラインバッファ130eと表示 領域160e修正しくボックス2504)、また、削除されたキー・フレームお よびそれからの内挿されたフレームへの参照を抹消することだけである。また、 後続のフレームは時間的に前にシフトされる。
一方、もし削除されたキー・フレームが画像列のより後ろの方に位置していたの であれば、CPUll0は図23に示された内挿処理を削除されたキー・フレー ムの前のキー・フレームから、その新たな後続キー・フレームとなったキー・フ レームまでの間で実行する(ボックス2506)。
後続のキー・フレームのフレーム番号がまだ変更されていないので、キー・フレ ームは内挿フレームと(ボックス2507)置き換えられて表示される。画像列 記憶装置130d中の画像列および棒グラフ画像バッファ130e中の棒グラフ 画像がCPUll0によって更新され(ボックス2505) 、これに対応して モニタ160が再表示される。
曳二ニアにニムの移動 内挿画像列の時間的な長さを変えるため、あるいは画像列の順序を並べ変えるた め、好適な実施例においては、ユーザが特定のキー・フレームを指定して画像列 中での生起時刻(例えばフレーム番号)を変更することができるようになされて いる。
典型的には、ユーザはキー・ボード170bまたは位置検出入力装置170aを 介してカーソル記号を棒グラフ表示領域160eの所望のキー・フレームの棒ま で移動させて適当な制御信号を入力することによってキー・フレームを移動させ たい旨の意志を示し、次いで、カーソル記号を所望の新しいキー・フレーム位置 まで移動させる。
図26に示したように、CPUll0はカーソル記号の位置から、新しい位置に 対応するフレーム番号をめ、そのめたフレーム番号が隣接するキー・フレームを 越えて移動していないかどうかを調べる(ボックス2601)。もし、フレーム がどちらの隣接するキー・フレームを越えて移動していない場合には、キー・フ レームのフレーム番号を新しい位置に対応するフレーム番号に変更しくボックス 2602)、図22の内挿ルーチンを実行する(ボックス2603)。もし、キ ー・フレームが隣接するキー・フレームのフレーム番号と丁度同じとなる位置に 移動されている場合には、その位置に前に存在していたキー・フレームを削除し くボックス2604)、キー・フレームリストを修正して、その位置に存在して いたキー・フレームへの参照を抹消する。次いで、キー・フレームリスト中の後 続するすべてのキー・フレームのキー・フレーム番号をデクリメントさせる(ボ ックス2605)。その後、cpuitoは、上記の場合と同様に、該キー・フ レームに新しいフレーム番号を割り当て、図22の処理を用いて内挿を行う(ボ ックス2602.2603)。
もし、キー・フレームがどちらかの隣接キー・フレームを越えて移動している場 合には、CPUll0は、まず(ボックス2606)そのキー・フレームをキー ・フレームリストから削除し、隣接キー・フレームのポインタをリンクさせる。
次いで、図23の内挿ルーチンを実行して、削除したキー・フレームの位置的に 前となるキー・フレームに対する内挿フレームを再生成する(ボックス260次 に、ボックス2608において、CPUll0は該キー・フレームをキー・フレ ームリスト中において選択したキー・フレームをそこに移動しようとしている新 しいフレーム位置或いはその直前の位置に配置する。もし、すでに選択したキー ・フレームをそこに移動させようとしている位置にキー・フレームが存在してい る場合には、CPUll0は、そのキー・フレームのレコードを削除する(ボッ クス2609)、次に、キー・フレームテーブル中の「以前の」及び「次の」ポ インタを修正することによって、タイムテーブル中に保持されているキー・フレ ームリスト中の以前のキー・フレーム位置の直後に、選択されたキー・フレーム を挿入する(ボックス2610)。
旧位置および折位置の間のキー・フレームのキー・フレーム番号をディクリメン トさせて(ボックス2611)、新しいキー・フレーム順序が反映されるように する。さらに、もし、該キー・フレームがその位置の既存のキー・フレームと置 き換えられた場合には、後続のキー・フレームについてもやはりデクリメントを 行う。その後、CPUll0は上記の場合と同様に、キー・フレーム番号を更新 しくボックス2602)、新しい内挿フレームを該キー・フレームとそのどちら かの側に隣接するキー・フレーム作成しくボックス2603)、画像列バッファ 130dと表示160dの再生成を行い、また、これに対応してタイムラインバ ッファ130eおよび表示領域160eの再生成を行う(ボックス2612)好 適な実施例においては、CPUll0は連続したフレームのブロックを時間的に 移動させる命令を受け付けることができるようになされている。この実施例の上 記の処理と本質的に同じ処理が、これらのフレームの各々に対して繰り返される 。
処理手順Ω例 図27a〜図27d及び図18を参照しながら、上記の処理によってどのような 結果が得られるかを説明する。
図27aに示すように、ユーザは位置検出入力装置を用いてカーソル記号をモニ タ160の棒グラフ表示領域160eの次の空の位置へ移動させて、その位置に 新しいキー・フレームを作成したい旨を示す制御信号を発生させる。
cpuitoは、上述したように、テンプレート(または既存のキー・フレーム )を複写して新しいキー・フレームテーブルをメモリ121中に作成する。画像 列表示バッファ130dが再生成され、これに対応して表示領域160に新しい キー・フレームが画像列の最後に表示される。棒グラフ表示領域160eにも同 様に新しいキー・フレームの棒が表示される。
また好適には、装置は既存のキー・フレームを複写して新しいキー・フレームを 作成することができるようにもなされている。この場合には、ユーザは位置検出 入力装置170aを用いてカーソル記号を適当な位置に移動させることによって 、複写したい既存のキー・フレームの指定を行う。入力装置を介して適当な制御 信号が発生されると、CPUll0はテンプレートテーブルを複写するのではな く、指定されたキー・フレームテーブルの曲線データを複写して新しいキー・フ レームテーブルの曲線データを作成する。
次に図27bに示したように、ユーザは今、作成されたキー・フレームを時間的 に4フレ一ム分だけ後ろに移動させたい旨の意志を示す入力信号を発生させる。
すると、CPUll0は、図26の中央のバスのルーチンを実行し、4つの内挿 されたフレームを前に位置するキー・フレームの内挿フレームリスト中に加える 。画像列表示160d及びタイムライン表示160eが上記のようにして更新さ れる。
図27cに示したように、ユーザが前に位置するキー・フレームを削除したい旨 を示す信号を発すると、cpuitoは図25のルーチンの実行を行う。このと き、最後の2つのキー・フレームは本質的に同じものとなっているから、これら の2つのキー・フレームの間に内挿されるキー・フレームも同様に同じように見 える。
図27dに示したように、次にユーザは中間に内挿されたフレームの1つをキー ・フレームに変換して編集できるようにしたい旨の意志を示す信号を発生させる 。すると、cputioは図24のルーチンを実行して表示160dおよび16 0eを更新する。
フレームへの たな の自 上記の実施例においては、各キー・フレーム(および各内挿されたフレームも) の曲線はすべて、テンプレートフレームに存在する曲線制御点によって定義され た曲線だけで構成されている。制御点および新しい曲線をテンプレートに追加す る方法については、すでにいままで説明した。
まず上述したように、各キー・フレームはそれと本質的に同じであるテンプレー トの曲線データと同じ曲線データによって構成されている。しカルながら、しば しばユーザが、ある与えられたキー・フレームに対するテンプレートのある一部 分を削除したいと思うことが起こる。例えば、対象物が回転したときには、対染 物の他の部分にβ!されて多(のラインが見えなくなってしまう。従って、回転 した対象物に対応するキー・フレームはこれらのラインを含んでいる必要がない 従って、ユーザは制御点(および/または曲線)のどれかをキー・フレームから 削除することできるようになされており、これに対応してフレームテーブル12 2中のポインタは削除された点および曲線への参照を抹消するようにリセットさ れる。この場合、CPUll0は他のキー・フレームあるいはテンプレートフレ ームテーブルに対しては影響を与えないようになされている。また、フレームテ ーブル122中のポインタの再配置は残存の制御点および曲線とそれらに対応す るテンプレートの集合との間の対応性に影響を与えない。それぞれの制御点およ び曲線は、依然として、CPUがどのテンプレート集合のどの特定の点と対応し ているのかを明確に識別できるようになっている。
このように、異なる別々のフレームがテンプレートの集合の異なる別々のサブセ ットに対応するようにさせることが可能である。また、特定のキー・フレームを 準備するに当たり、ユーザがいくつかの制御点からなる制御点または曲線をさら に追加したいと思うことが起こるかもしれない。直接にそのようなことを行うと 、テンプレート集合に対応する部分がない点を導入する結果となってしまう。
また、特定のキー・フレームに直接的に結果を得るために、テンプレート集合を 編集しなければならないのは不便である。従って、好適な実施例においては、装 置はユーザがテンプレートフレームにおけるのと同じやり方でさらに制御点をキ ー・フレームに追加することができるようになされている。そのようにできるよ うにするため、CPUll0は、対応する制御点をテンプレートフレームテーブ ルに加えるようになされている。従って、テンプレートフレームテーブルは必ず 各キー・フレームに保持されている点のスーパセットとなっている。
ある1つのフレームが、よけいに制御点あるいは曲線を含んでいるようなときで も、フレーム間での内挿を行うこと、および異なるタイムラインのフレームを足 し合わせて合成フレームを作成することが依然として可能である。
フレーム間の内挿処理と、足し合わせ処理を行うには、いずれも、曲線制御点間 で1対lの対応性が取れていることが必要である。従って、これらの処理のどち らかを実行するには、まずその間で内挿を実行しようとしているフレームあるい は互いに1つに足し合わせを行おうとしているフレームにおいて、点の数が同じ となるようにして2つのフレームに適合性をもたせることが必要である。これを 達成するための方法を図28及び図29に示した。
図28aに、曲線がフレーム表示領域160aにどのように表示されるかが示さ れている。曲線の形状は対応する曲線の接線によって示される2つの制御点A1 、A2によって定義される。2つの制御点AIとA2との間に、3つの属性制御 点B1.B2.B3が曲線セグメント上に表されている。図29は、作業メモ1 月21中に保存されている対応する曲線テーブル2100を示したものである。
このテーブルは2つの曲線制御点レコードを含んでおり、第1のものはA1に対 応し、A2に対応する次のレコードを指し示すようになされている。また、Al に対応する曲線制御点レコードは属性制御点レコードのリストを指し示すように なされており、その属性制御点レコードの第1のものはBlに対応しており、さ らにこれがB2に対応する属性制御点レコードを詣し示し、これが同様にしてさ らにB3に対応する属性制御点レコードを指し示すようになされている。
図28bに示したように、ユーザが選択した属性制御点B2を、曲線の同じ点の 曲率制御点に変換したい旨を示す制御信号を発生させると、CPUll0は、新 しい曲線制御点レコードA3を曲線テーブル2100中に生成する。点A1に対 応するレコードは新しいレコードを指し示すように変更され、またこの新しいレ コードはさらにA2を指し示すようになされる。B2に対応する属性制御点レコ ードは属性制御点リストから削除される。新しい制御点A3に対して保存される 制御点データは、その属性制御点が占めていた曲線の位置に対応するようになさ れ、また接線が新しい制御点におけるその接線の傾きが属性制御点B2において 有していた傾きと同じになるように引かれる。また、3つの曲率制御点Al。
A2.A3における接線の長さが、曲線の形状が変化せずにもとのままに維持さ れるようにめられる0図28bから制御点Al及びA2における接線の長さが、 変更されたことがわかろう、一方、角度は変化していない。従って、新しい先端 点データがAI及びA2に対応するレコードにcpuiioによって書き込まれ る。
属性制御点B3は、A1に対する曲率制御点レコードリストから削除されてA2 のリストに加えられる。
属性制御点Bl、B3の曲線に沿った位置を定義する位置データが曲線セグメン トA1〜A3およびA3−A2の範囲で再計算されて新しいデータが属性制御点 レコードBl、B3に保存される。
新しい曲率制御点A3の生成が終了すると、次に、ユーザはこの実施例の装置を 用いて、上に述べたように、制御点データを変更することによって曲線の形状を 修正することができる。特に、図28cに示されているように、接線の角度が異 なった方向を向くように先端点を設定すると、その点では曲線の接続が不連続的 となる。
図28dに示したように、もし、必要な場合には、この実施例の装置は、制御点 を属性制御点に変換することができるようになされている。この場合、制御点レ コードA3が削除され、Atのレコードに記憶されているポインタが、A2のレ コードを指し示すように修正される。新しい属性制御点B2に対して新しい属性 制御点レコードが作成される。B2及びB3の属性点レコードがA1の曲率制御 点レコードのために保持されているリスト中に追加される。曲線がcpuiiO によって再計算され、3つの属性制御点に対して位置データが修正される。
本発明のこの実施例では、対応する属性制御点がテンプレートフレームに存在す るときには、キー・フレームはそのキー・フレームを導出した元のテンプレート が含んでいた曲率制御点よりも更に多くの曲率制御点を含むことが許されている 。従って、2つのフレームを足し合わせようとするとき、あるいは2のフレーム の間で内挿を実行しようとするとき、そのうちの1のフレームが他方のフレーム が有していないような曲率制御点を有していることが起こりえる。しかし、他方 のフレームは同じテンプレートから導き出したものであるから、対応する属性制 御点を含んでいる。従って、図30に示したように、CPUll0は、対応する 曲率制御点が他のフレーム中に存在しないような曲率制御点が存在しているとき には、対応する属性制御点を他方のフレームに配置して、その点を先に図288 及び図28b及び図29a、図29bを参照しながら説明したように、曲率制御 点に変換することができるようになされている。こうして、2つのフレームは互 いに対応するようになり、足し合わせたり、上述したようにその間の内挿を実施 したりすることができるようになる。
並夕1タイムラインのフレームの しAわせ上に述べたように、好適な実施例の 1つの利点は、対象物の異なる部分を別々に独立に動画として動かすことができ 、この別々の副画像列(タイムライン)を足し合オ)せて1つにすることができ るということである。このようなことが可能なのは、異なるタイムラインのすべ てのフレームが同じトポロジーを有しているからであり、即ち、これらのフレー ムがすべて同じ共通のテンプレートテーブルのサブセットとなっているからであ る。以下に議論するように、フレームを足し合わせる処理は内挿の処理と似てい る。ただし、内挿においては、予め定められた比で2つのフレームが足し合わさ れるのに対し、2つのフレームの足し合わせの場合では一般に(必ずそうしなけ ればならないわけではないが)各フレームを等しい比で足し合わせる。
本質的には、CPUll0は異なったタイムラインの同じ時刻に生起する2つの (あるいは一般的には複数の)フレームを配置し、存在する各フレームの対応す る曲線制御点を取り出して合成フレームを導出する。これらの座標の値から、テ ンプレートフレームの対応する点の座標の値が減算され、キー・フレームの制i 押点の座標値とそれに対応するテンプレートフレームの座標値との差を定義する 差分座欅値がめられる。
次に、各フし・−ムにおける対応する制御点に対する差分座標が1つに足し合わ ンされて、合成フレームのその制御点に対する差分座標の和が形成され、これに テンプレートの対応する制@点の絶対座標が加えられて合成制御押点座櫟が導出 される。
こうして、異なるタイムラインの時間整列されたフレームの対応する制御点とア ンプ1ノー1−との差に、対応するテンプレート制御点座標を足したものに各合 成制御占は対応し2ている。
史に一般的には、予め定められた一定値で重み付けされたベクトル差の和を形成 させ、合成フレームがある1つのタイムラインからのフレームの方に、他のタイ ムラインからのフレームよりもより強く依存するようにすることも可能である。
同様に、演算のしかたを、タイムラインのフレームの座標をまず1つに足し合オ つせ、次にこの和からテンプレート座標の予め定められた倍数を差し引きするよ うにすることも、もちろん可能である。
このようにして、画像列の異なるタイムラインのテンプレートからの偏位量の和 に対応する合成フレーム列が形成される。
図31に示したように、複数のフレームを足し合わせる1つの方法は以下の通り である。まず、以後、差分テーブルと呼ぶことにする新しいフレームテーブルが 、足し合わせようとしている各フレームに対して、CPUll0によって一時的 にメモリ121に作成される。各フレームの各曲線制御点の座標値をテンプレー トテーブル中に記憶されている対応する座標値から差し引き、この座標の差をそ のフレームに対応する差分フレームテーブル中に保存する。足し合わせしようと している全てのフレームに対して差分テーブルのセットアツプが終了すると、図 30の処理に従って、この差分テーブルが互いに適合性がとれたものとなるよう にする。
次に、CPUll0は結果フレームテーブルをメモリ110の中に作成する。
更にCPUll0はテンプレートテーブルを読み取り、各曲線レコードに対して 、その曲線レコードがどれかの差分フレームの中に存在するかどうかのチェック を行う。もし、対応する曲線がどの差分フレームにも存在しない場合には、CP olloはテンプレートテーブルの中の次の曲線に進む。もし、対応する曲線が すべての差分フレームに存在する場合には、画像列の各曲線制御点に対して、差 分座標テーブルの中の対応する制御点の差分座標の和が取られ、その結果がテン プレートテーブルの対応する点の座標に足し合わされ、結果テーブルに保存され る。次いで、テンプレートテーブル中の次の曲線が処理される。
もし、曲線が、足し合わせようとしている全てのフレーム中に存在しないときに は、cpuiloは足し合わせようとしているどれかのフレームがキー・フレー ムであるかどうかを調べ、もし、そうならば問題となっている曲線がキー・フレ ーム中にあるかどうかどうかを調べる。もしあるならば、その曲線が存在してい るそのフレームに対して差分座標の和がとられ、これが先の場合と同様にテンプ レート座標と加え合わされる。もし、曲線が存在していないときには、言い換え れば、その曲線が内挿されたフレーム中だけに存在する場合には、その曲線は結 果フレームテーブルから削除される。
テンプレートテーブル中の全ての曲線についてcpuitoの検討が終了するど 、今や、結果フレームテーブルは必要なすべての曲線制御点を含んでいることに なる。この段階で、CPU110は全ての属性点の位置を、図32に示したよう に、まず結果71ノームチ−プル中の各曲線を取り出し、次に各属性点を検討す ることによってめる。もし、足し合わせようとしている曲線のすべてに属性点が 存在している場合には、CPUll0は、属性点位置パラメータに対して、ある いは、属性点レコードに記憶されている任意の属性データに対して随意、平均( E t、た値、あるいは内挿値をめる。次に、内挿値(例えば平均値)を結果テ ーブル中に記憶する。
も11、属性点が足し合オ)せようどしているフレームの全てに存在しない場合 には、属性つ、が存在するフレームがキー・フレームでなければ、CPU110 はテンプレート中の位置の値に等しい値を属性4点が存在しないフレームの各々 に対して割り当て、更に全てのフレーム値の間に新しい位置を、上記のように内 挿させる、 θイ適には、属性点位置の内挿は、対応する2つの内挿フレームの2つの助変数 位置データの値の間で単純に内挿させたようなものではなく、内挿フレーム中の 対応する曲線セグメントの長さをめることによってめるようになされている。ま た実際の曲線セグメントの長さは必要な内挿比に分割され、これに対応する曲線 −トの(ffitがめられ、さらに、その位置における対応するパラメータtの 値がめられて、これが内挿屑性点位置として記憶される。
もし属性点がキー・フレーム中に存在する場合には、そのキー・フレームの属性 へ位置データは、内挿フレームより導き出された位置よりも重要であるので、二 わを結果テーブル中に保存する。
上に述べたように、好適には、各画像列に対して、フレームテーブルの集合から 成る現在の合成画像列が、対応する基礎画像列とともに保持される。ここで、基 礎画像列はフレームテーブルのさらなる集合に対応したものとなっており、また 、この基礎画像列は編集のため、現在表示しているタイムラインではなく、上に 議論したように、すべてのタイムラインの合成和である。現在のタイムラインの 編集が終了すると、そのタイムラインを単に基礎合成画像列に足し合わすだけで 、新しい合成画像列が生成される。従って、必要な演算量が節減できる。
内挿および足し合わせの処理は非常に似たように見えるであろう。上記の実施例 においては、わかりやすくするために、フレーム間の内挿、およびテンプレート とのフレーム差分の和とについて述べた。一方、フレーム差分を用いて内挿を行 うことも可能であり(その結果をテンプレートフレーム座標と足し合わせる)、 また、フレームの足し合わせも可能である(テンプレート座標を差し引く、或い は更にそれを倍にする)。実際には、便宜上、メモリ121は絶対点座標として フレームテーブルを記憶するか、或いはテンプレートテーブルの対応する座標か らの差を示す座標としてフレームテーブルを記憶するかのどちらかである。図3 0〜図32に示された処理も同様に適用可能であり、好適には、必要な変更を加 えて内挿に適用される。
再生X置上旦旦 本発明の1実施例においては、再生装置103は、記憶された適当なプログラム の下で動作するCPUll0を具備している。
1つの実施例では、再生装置は画像列を最終的に表示しようとしているのと同じ フレーム反復速度(24,25或いは30Hz)に対応する速度でフレームを表 示し、オペレータが画像列を現実的な速度で見ることができるようになされてい る。しかしながら、好適には、再生装置103は、キー・ボードあるいは他の入 力装置からの、再生速度を指定する入力命令を受け付けることもできるように適 合されている。これは、オペレータが画像列の中の重要な部分をスローモーショ ンで見るために、また、全体をさっと調べるために画像列をすばやく動かして見 るのに非常に有用である。
他の実施例においては、再生装置103は、(キーボード170b、或いは更に 好適にはタイムライン表示協働する位置検出入力装置170aから)画像列中の どこからどこまでを再生すべきかを指定するための最初のおよび/または最後の フレームを指定する入力信号を受け付けるようになされている。これによってオ ペレータは、画像列の特定の部分を再生するように指定することができる。する と、再生装置103は指定された最初と最後のフレームの間の各フレームを順番 に表示していく、もし、再生装置103が開始フレームと終了フレームとの間を 一定のサイクルで繰り返すようになされていると特に便利である。これは、画青 刈を最初のフレームから最後のフレームまで繰り返し表示するか、或いは画像列 を順方向に(開始フレームから終了フレームへ)表示した後に、逆方向に(最後 のフレームから最初のフレームへ)表示するようになされる。これは、オペレー タが正しくないフレーム、或いは一連のフレームの存在場所を見つけ出して編集 するために特別に有用である。
もし、CPUll0が十分に高速に動作するのであれば、再生装置113をメモ ’J 120にアクセスするように構成し、表示ジェネレータ111が画像列の 指定された最初と最後のフレームの間の各フレームに対応する各フレームテーブ ル122に対して順番にアクセスしていくようにすることが可能である。しがし 、現在利用できる多くのCPUは、フレーム全体を実時間で生成するだけの能力 を有していない。従って、そうする代わりに、再生装置103は、表示すべき各 フレームに対してマスク画像を生成するための初期処理だけを行って、表示ジェ ネレータ111に順番に各フレームテーブル122にアクセスさせ、画像を画像 記憶装置130に生成させる。各画像が生成されると、再生装置103は画像を 大容量記憶装置180(例λばハードディスク)に記憶する。この点に関しては 、コンピュータは、画像を圧縮符号化してハードディスクに記憶する画像圧縮手 段を有していることが望ましい。というのは、さもないと、比較的短い画像列に 対応する画像データの分量でさえも極めて大きいものとなってしまうからである 。
1つの画像データあるいは複数のフレームの大容量記憶装置180への保存が終 了すると、再生装置103は、各フレームに対応する画像データをアクセスし、 所望のフレーム反復速度で画像記憶装置130をリフレッシュすることによって 画像列の表示を行うようになされている。オペレータが再生をやめたい旨を示す 信号を発すると、再生された画像列のフレームに対応する画像データファイルを 大容量記憶装置180から削除して使用メモリ量を削減することも可能である。
好適な実施例においては、再生装置103は、画像列の準備の初期の段階におい て、再生画像列をカラー画像として見ることができるように、および/または、 背景の中にはめ込んだ状態で見ることができるように、以下に議論するように描 画装置105によって各フレームに対して描き入れを行うことができるようにな されている。
画像列或いはその一部分を再生して見終わった後に、画像列の編集を行うことが 多(の場合型まれる。この場合、オペレータは、CPUll0に対して再生を停 止して編集を着手するように命令を発する。
イ し 百 RerIderer 105仕上げ描画装置105も、記憶された プログラムの下に動作するcputt。
を有し、あるいはこれとは異なる独立したコンピュータ100を備えるようにす ることもできる。いずれの場合においても、仕上げ描画処理は、従来技術におけ るのと同様に、画像を色づけし、及び/或いは、画像を背景と混合する処理であ る。従って、仕上げ描画装置105は、仕上げ描画処理をすべきフレームに対応 するテーブル122に記憶されているデータを読み取り、予め記憶された色、及 び/又は、背景情報に応じたフレームに対する処理を行う。特に、先に議論した ように、属性制御点に色やその他の属性情報(例えば、透明度)を含ませて記憶 させることができる。仕上げ描画の方法については、我々の英国出願第9110 945.4および本出願と同日に出願されたPCT出願PCT/GB91/・・ ・ (代理人資料番号508639)に記載されており、これらの全てをここに 参照併合する。
・・〉 およびその の 先に述べたように、属性制御点がいくつかの目的のために採用されている。第1 に、属性の値を設定して、後の仕上げ描画に用いることができる。こうすると単 に個々のキー・フレームに対してのみ指定するだけで、仕上げ描画に必要な非常 に多くの情報が指定できる。キー・フレームの間に内挿されたフレームに対して は、自動的に正しい位置に挿入される。第2は、属性制御点を用いることによっ て、余分な曲線制御点を有することができるようにすることができる。これによ り、必要な部分の複雑さを増大させることができるようになる。その際でも、フ レーム間の位相的な対応性を維持することができる。
また、装置は、ラインの経路を制御する限られた数の制御点によって、ラインを 定義することができるようになされており、また、ライン上の予め定められた点 における属性或いは特徴的な特性を指定することができるようになされており、 これによって更に次のような有用性が得られる。例えば、我々の英国出願第91 10945.4に記載されているように、このような点を用いて、曲線あるいは 曲線構造が、ある1本のラインにさらに接続されるような点をマークすることが できる。これは2次元、あるいは3次元の動画において特に有用である。もちろ ん、その他へも同様に応用できる。同様に、曲率を定義するために別々の独立し た点に属性値をいちいち設定する必要はなく、曲率制御点を用いることによって 設定できる。曲線セグメント上の点にも属性を定義することができる融通性を備 えるようにしてお(のが非常に好適である。
ヱヱ旦処理手順 本発明の1つの態様における、他の具体的な応用の1つは、フィルム、ビデオ或 いは類似の視聴覚製品において画像を合成するのに、即ち、画像を1つに結合す るのに用いる一連の画像マスク、即ち、マットを自動的に作成するシステムへの 応用である。画像合成とは、2つ或いはそれ以上の画像を結合することであり、 通常、いろいろな画像のどの部分を最終的な画像列に残そうとしているのかを指 定するマスク、即ち、マットを定義することによって実行される。例えば、普通 に用いられている技術の1つは、1つのキャラクタを1つの画像列から取り出し 、そのキャラクタを、他の画像列の既存の絵の所定の位置に重畳する方法である 。従来のフィルム作成におけるマット、即ち、マスクとしては、これを通して画 像の一部分だけを見ることができるようになされたステンシルを用いている。
電子画像処理においては、マット或いはマスクとしては透過性マツプが用いられ ており、これによって画像を他の画像と合成する際に画像のどの部分を見えるよ うにするのかを定める透明度の値が画像の部分に対して割り当てられる。
フィルムおよびテレビジョン作成においては、「クロマキー(chromake y) Jとして知られている技術を用いて画像列が1つに結合されている。この 技術では、ライブ・キャラクタを青の背景中に録画し、このキャラクタには青を 含んでいないようにしておき、後のビデオ処理において青の部分を無視すること によって、背景を異なる背景に置き換えらえる。フィルム作成では、光学フィル タを用いた類似の技術が用いられている。画像の青の部分によって、それを通し てキャラクタを見ることができるようなマスクが形成される。
しかし、選択しようとしている画像の部分を、単純に色の差異に基づいて識別す ることができないような状況が、しばしば起こる。このような場合には、オペレ ータあるいはアーティストは、画像列の各フレームに対して、分離しようとして いる画像の部分の周囲のアウトラインを手描きによって描(ことにより、対応す るマスクフレームを作成しなければならない。従来のフィルム作成においては、 マットあるいはマスクが必要となる画像列の各フレームに対して、アーティスト は、必要なマスクが描かれた明瞭な背景に対してフレームを投影させる。また、 アーティストがスタイラスとディジタイズタブレット用いて、それぞれの像の周 囲にラインを描くことによって適当なマットあるいはマスクを作成する電子シス テムが知られている。
しかしながら、いずれの場合においても、アーティストは別々の独立したマスク をそれぞれのフレームに対して作成する必要がある。これは時間がかかる作業で ある。さらに、各フレームは完全に独立に作成されるので、アーティストのこの 作業によって何らかの不正確さ、あるいは差異が生じてしまい、これが「ジッタ 」あるいは「ボイル」として知られている、画像の縁の部分が動(非常に目立つ 現象として現れる。さらに、電子システムにおいては、マットはビクセルごとに 作成されるので、画像の分解能が高くなるほど、正確なマットを作成するにはア ーティストにとってもまた電子画像処理装置にとっても多(の作業が必要となる 。
(以下余白) 従って、本発明の1つの態様においては、合成しようとしている画像の部分を時 間的に離れたフレーム(キー・フレーム)に対してだけ定義し、中間のフレーム に対しては、この定義された部分から内挿されるような、画像列を合成するため のシステムが提供される。これによって、アーティストが行わなければならない 作業量を低減することができ、またこの方法は内挿を用いているので連続したフ レームの縁に従来の技術で発生するようなランダムなジッタが含まれていないこ とを保証できる。非常に好適には、上記の実施例における場合と同様に、マット は滑らかな曲線を作成・編集するための限られた数の制御点を用いて線画として 作成される。これによって、実際的なまた効率のよい内挿を行うことができ、さ らに、画像の分解能への依存性が少なくなる。
さらに、上に記載したように、また、先に参照した我々の同時係属出願PCT/ GB91/・・・に記載されているように、属性制御点をマットの透明度を制御 するのに採用することによって、マットの透明度を時間とともに滑らかに変える ことができ、また、マットに沿って滑らかに変えることも、あるいはこれらの両 方を同時に行うこともできる。これによって、非常に自由度の大きな融通性のあ るまた非常に精巧なマットの特性指定が画イ象合成において可能となる。ここで も、時間に関して内挿を用いるので、マットを時間とともに不規則性を生じさせ ずに滑らかに変化さゼることができる。
従一つで、このようにして作成されたマットは分離しようとしている画像の部分 を取り囲むアウトライン画像によって構成されている一連の電子両前からなり、 これらの点に関する透明度を指定する属性データを有している。これらのマット 画像は後の光学的合成のために別途プリントすることもできるし、また画像バッ ファ130が透明画面と3つのカラー画面とを有するようになし、マットしよう としているフレームの各ビクセルに対しては対応するマットの透明値を掛は合わ せ、また結合し7ようとしているフレームのビクセルに対しては透明値の逆数を 掛は合わせることによって、マット画像を直接に電子的に導入することもできる 。
さらに具体的には、各画像の各ビクセルは、赤の値(8画面)、青の値(8画面 )、および縁の値(6画面)から構成されており、2つを合成する処理は以下の ようになされる。すなわち、第1の画像のR,G、 Bのビクセル値にマット画 像の対応するビクセルの透明値を掛は合わせ、また、第2の画像のR,G、Bの ビクセル値に対してはマット画像の対応するビクセルの透明値よりも小さな値の 単位を掛は合わせる。
次に、各ビクセルの各カラー値を画像バッファ中に以下の値となるようにセット する: C=C+ + (1−AI )ct 但し、A、は透明値(そのビクセルにおけるマットから定まる)であり、またC 、、C,は上記のように透明値を乗算したカラー値である。もし、最終的な画像 の各ビクセルが透明値を有している必要がある場合には、この透明値は、もとの 画像の透明値に、マット・の透明値のあらかじめ定められた一定比を各ビクセル に対して加算することによって定められる。
玉し=生画像愈成 全く同じ原理を用いて、スチール画面を合成するためのマスクを作成することが でき、この方法は自由度が大きく、解像度への依存性が低減されている利点を有 する。スチール画像合成は例えば電子画像システム、卓上出版システム、一般的 なイラストおよびデザインシステム、商用デモ用グラフィックス、視聴覚システ ムなどの応用に用いられている。
フィルムおよびビデオ百 の フィルムおよびビデオ画像列はしばしば汚れなどの欠陥部分を含んでいる。また 、しばしば、画像、あるいは画像列は何らかの理由で満足できるものとなってい ないことがある。長い聞手描きによって再ペイントして、そのような画像を修復 することが行われてきた。さらに、もともと白黒で撮られた画像にカラーを附加 させることが最近まで行われてきた。
また、電子グラフィックス装置をこのような処理に適用し、画像なビクセルごと に電子的にカラー化する方法も知られている。
本発明の他の態様における描画および色づけ技術では、画像の一部分あるいは全 体の色づけが、上に引用した同時係属出願のPCT出願PCT/GB/・・・に 記載されているように、スクリーンに表示された画像を見ながら空間的に離れた 属性制御点に対して色の値を指定することによって色づけを行い、その色づけさ 第1だ画像を色づけすべき下地画像上に重ねていくことで行われる。もし、71 ノ一ム画像列の色づけあるいは修正が必要な場合には、この処理方法を用いて、 キー・フレームに対して色を指定し、上記実施例の装置を用いてこれらのキー・ フレームの間に内挿フレームを生成することができる。
−刃欠んモfグング こわまで、本発明は2次元物体の動画について説明してきたが、本発明の原理は 一般的に、助変数制御点によって3次元で表現されている物体についても同様に 適用することが可能である。特に、本発明は3次元内挿動画システムに対して適 用することができる。この場合には、すべてのキー・フレームが3次元モデルの 2次元投影図として与えられ、2次元テンプレートは用いられない。代わりに: 3次元テンプレートが3次元システムでは保存される。すべての2次元投影図は 3次元テンプレートから導かれたものであるので、互いに対応関係を有している ス19概要 3次元的なポーズ、編集、動画を行うための装置は、図3に示したよりな構成要 素を用いて実現することができる。図3〜図5に示した装置は、上記のような2 次元動画と3次元キャラクタモデルとの両方を備えていることが特に好適である 。ここで、それぞれの機能を別々に実行可能なようにルーチンが記憶されており 、コンピュータ100あるいはワークステーション100a〜100Cは、オペ レータがこれらの、どちらかのルーチンを一時的にすべてのカレントデータを保 持させたまま、別のもう一方のルーチンを呼び出すことが可能なようになされて いる。
3次元モデルルーチンによって作成された2次元投影画面を定義するデータのフ ォーマットは、好適には、図14に示したものと整合性を有するようになされて おり、いずれのルーチンも他のルーチンによって作成されメモリ120中あるい は大容量記憶装置180に保存されたファイルテーブルを読み取ることができる ようになっている。
さらに、好適には、我々の同時係属出願である本発明と同日に出願されたPCT 出願PCT/GB91/・・・・ (代理人資料番号5086399)に記載さ れている描画色づけルーチンを、整合性がとられた曲線データファイルを用いた ルーチンとして用いるようにする。
3次元モデリング処理についての一般的な流れを図34に示した。まず、3次元 物体を定義するデータを、例えば、記憶されているデータを大容量記憶装置18 0から、あるいは入力装置170から読み取ることによって入力する。3次元物 体を定義するデータによって、物体が実際に見える見え方とは関係なく独立に、 空間におけるその物体を表現する。
次に、その物体をどの視点方向から見るのかを定義する具体的な視点方向を表す データが定義される。典型的には、入力装置170を介して入力されるか、ある いは、動きつつある視点方向を定義するデータを参照することによって計算され る。
次に、所望の2次元的眺望を与える特定の面(この面は、画像が最終的に出力さ れる、あるいは表示される出力装置あるいはモニタ160の画面に対応する)に 3次元物体座標が投影される。オペレータがこの結果を見ることができるように なされており、ついで、オペレータは3次元物体を修正(形状あるいは位置)す ることもできるし、また、2次元視点方向、すなわち、投影面を変更することも できる。所望の投影図が達成されると、この投影図は印刷されるか、あるいは大 容量記憶装置180またはフィルム196、あるいはビデオレコーダ197に記 録される。
図35を参照しながら、次に3次元対象物(例えば漫画キャラクタ)を定義する 方法を説明する。図35は骨格像を示したものである。この像は、複数の骨B1 〜BIOから構成されている。これらの骨はシロインドJ1〜J8で互しAに結 合されている0人物像の場合には、多くのジヨイントは球およびソケットジヨイ ントであり、図36に示されているように、2つの軸を中心にして、および自分 自身を回転軸として自由に回転させることができる。
本発明の好適な実施例においては、各々のジヨイントにおけるこのような自由度 は、3つの独立した回転データによって図36に示されているような蝶番旧〜H 3として定義することによって各ジヨイントを表すことができろ、類似の3次元 間節像表示システムが「歩く像のコンピュータ動画のためのコンピュータ・モデ リング(Comput、ational 動deling for the C omputer Animation of Legg■п@F igures) J (ギラード(Girard) 、マノジュースキーOAa ciejeweski) ;コンピュータフラフィックス(Computer  Graphics) 19. No、 3. 1985)に開示されている。ま た、動画作成者が自由にキャラクタまたは物体のデザインおよび操作ができるよ うに、それぞれの骨B1〜BIOは直線による定義ではなく (例えばUS 3 600619) 、 3次元助変数曲線(例えば、3次スプライン)、好適には 3次元ベジェ曲線によって定義される。従って、それぞれの骨は対の(3次元) 端点座標およびこれに対応する対の(3次元)接線先端座標によって図37に示 されたように定義される。骨B1かたどる3次元経路は、2つの端点ど接線先端 点の座標から直接的な方法で再構成することができる。図35は、例として人物 の骨格を示したものであり、実際のところ、多くの場合、動画とすべき漫画の対 象物は人物、ヒユーマノイド、あるいは動物像であり、これらは原則として骨に よって関節連係が定義される。本発明のこの態様は3次元モデリングに対しても 、あるいはその他の物体の動画に対しても適用することが可能であり、以下、骨 を包含するものとして「骨組み(armature) Jという用語を用いるこ ととする。
図38に示されているように、複雑なヒユーマノイド像の形状を関節で結合され た骨格の列(実線で示されている)を用いて表現でき、これらの関節の部分で関 節運動を行うことができ、またこれらの骨格の周辺を3次元の外被(そのアウト ラインが破線で示されている)が取り囲んでいる。外被の形状は3次元において 固定されているが、その実際に見えるアウトラインはその対象物を異なった視点 から見れば異なったものとなる。関節のところで、外被が完全に分割されている というわけではないが、実際のところ、それぞれの骨格の骨を取り囲む外被部分 は、それぞれが分離していてその隣接の外被部分から分かれているように見える 。
従って、本発明においては、我々は、1つあるいはそれ以上の外被構成要素を定 義するデータをそれぞれの骨に対して与えることによって(典型的には、1つの 骨あるいは骨組みに対して、1つの外被構成要素)、外被を定義するデータを与 えることとする。
図39a及び図39bに示したように、各外被構成要素は、骨組みBlに対して 予め定められた角度(例えば直角)どなるように外被構成要素を切断する1つあ るいはそれ以上の断面Ft、、F2を定義するデータによって表される。さらに 、外被構成要素は、骨上の点Kl、に2を用いて定義するのが便利である。これ らの点として、通常はそのようにはしないが、骨組みB1の端を表す曲線制御点 を採用することができる。
3次元物体の外被構成要素のアウトラインを得るためには、本発明では、まず、 断面を所望の2次元基準図に投影し、次に投影された断面の横方向の端点L1〜 L4を、これらの端点とさらに端点Kl、に2をも通過する滑らか曲線で結ぶ従 って、図38aをある与えられた所望の視点から見たときの2次元アウトライン は、各外被構成要素を投影して、それらのまわりのアウトラインを描(ことによ って得られる。
好適には、断面Fl、F2は、(典型的には)断面の周辺を定義する2次元曲線 で表される。この曲線は、先に詳細に述べたように、曲線の制御点とその制御点 における接線を表す接線先端点とによって表現される2次元曲線制御点データと して記憶し、処理するのが特に都合がよい。こうすることは、通常一般には滑ら かで丸い管状のキャラクタあるいは物体が登場する漫画動画において好適である 。3次スプライン表現を用いることによって、複雑なしかし、滑らかな曲線を、 画像の分解能に依存せずに、比較的少数のデータを記憶・処理することによって 容易に取り扱うことができる。
各断面周辺を表す2次元制御点が算出されて、骨組みに直角な面に、骨組みを基 準とした位置座標として記録される。図4081図40bに示したように、もし 骨組みB1の形状、あるいは、配置が変更されたときでも(例えば、図示の場合 のように接線先端点を変化させて曲率を変える)、断面の位置は骨組みのもと位 置に、骨組みに対して垂直のまま維持され、断面を表す曲線制御点データを再計 算する必要がない。このように、形状に関する3次元データの再計算を行う必要 なしに、漫画キャラクタを曲げたり、伸ばしたり、動かしたりしてねじることが 可能である。
以上に、3次元物体を表現する構造について説明したが、次にその構造を実現す る方法について、さらに詳細に説明をする。
図41に示したように、作業メモリ121中にキャラクタテーブル5000が、 3次元処理を行おうとする各対象物或いはキャラクタに対して作成される。
テーブル5000は、対象物あるいはキャラクタの識別名あるいは名前を示すフ ィールド5001、およびキャラクタの3次元空間位置(例えば、X、 Y、  Z)を示すフィールド5002を含んでいる。キャラクタ上に1つの基準点が取 られて、その空間的位置を識別するのに用いられる。
テーブル5000に保持される各キャラクタに対するデータは、キャラクタの空 間的位置を定義する骨組みに対する項目5100,5200.5300及び各骨 組みに関する外被構成要素、すなわち、その骨組みを取り囲む外被を定義するデ ータを保持する外被構成要素データフィールド5110,5210.5220と で構成されている。
図42は図41のテーブル5000をより詳細に示したものである。図示のよう に、各骨組みに関係するデータは、曲線の2つの端点と、接線先端点(あるいは 、もし異なるスプライン表現が用いれれている場合には、それに対応する曲線制 御点データ)の座標から構成されている。なお、取扱いを容易にするために、ま た、後に議論する理由によって、座標は、キャラクタ位置の場合の座標5002 のように同一の3次元空間基準フレームを基準にして定義するのではな(、骨組 みそれ自身を基準とした相対空間座標によって定義される。例えば、第1の端内 を0.0.0にとることができ(記憶する必要はない)第1の接線の方向をX軸 に取ることができ、このようにすると、その接線に対してただ1つのデータを記 録するだけですんでしまう。
このようにすることは、次のような利点を有する。すなわち、ユーザがキャラク タの位置を変化させたときに、各骨組みを表すデータを再計算する必要がない。
実際、後に説明するように、この原理は拡張が可能で、例えば骨組みを階層的に 構成することによって、より高い階層の位置(例えば、大腿骨を表す位置)を有 する骨組みが変化しても、低い階層の骨組み(例えば足の指)に関係するデータ を修正する必要がないようにできる。
従って、ある与えられた記憶されているキャラクタ位置5002を基準とじた、 骨組みの相対的配置(回転、および/または、並進)を定義するデータは、骨組 みの制御点からは得ることができない。その代わりに、キャラクタが定義されて いる共通空間フレームの点に骨組みの空間的フレームを変換する3次元アフィン 変換の係数として保存される。これについては後に議論する。
もう一度、図36を参照する。2つの連結された骨組みの曲率制御点B1.B2 が図中に四角で表示されている。第1の骨組みB1の座標空間中の点を第2の骨 組みB2の座標空間点に変換あるいはその逆の変換を行うのに必要な変換、はこ れらの骨組みの対応する制御点(例えば、左側の四角)の間の動きによってもた される並進と回転とによって定義される。この変換は、2つの要素から成ってい る。すなわち、左側の制御点B1から、2つが結合されている関節J1への並進 (接線軸の付随する回転を含む)と、関節J1を介した回転(その軸のまわりの 空間的回転)とである。先に述べたように、この回転は3つの成分に分解するこ とが可能である。
関節Bl、B2の空間フレームの間の変換を定義するデータは、4つの独立した 別々の変換によって表される。第1のものは、骨組みB1に沿って関節J1への 空間的変換を定義する。他の3つのうちの1つは、3つの独立した回転のうちの 1つであるHl、H2,H3で表される関節Jl内の回転を定義する。骨組みB 2および同じ空間に定義された点をB1に対して定義された空間中に描くために は、その各制御点に並進行列を順番に乗算する。
再度図35を参照する。骨組みB7を2次元視平面に描くには、B7の制御点を たった今説明したように、B6の空間フレームに変換し、次いで全く同様の方法 でBlの空間フレームへ計算変換することによって可能である。
もう一度、図42を参照する。変換テーブル5400は対象テーブル5000の 中に保持され、各項目には、変換マトリックス(例えば、16.4X4の要素) の係数一式と、助変数で表現された骨組みに沿っての位置(通常は、端点の間で あり、従ってOから1の間の正規化された値を有する)が記録される。テーブル 5400は、図36の骨組みBlの左側の端点と、関節Jlとの間の変換のため の、項目(1,1)、第1の向きでの回転(蝶番H1として表示されている)に 関する第2の変換(1,2) 、第2の向きの回転(蝶番H2として表示されて いる)に関する第3の変換(i、3)、および第3の軸のまわりの回転(蝶番H 3として表示されている)を表す第4の変換(1,4)とを、含んでいる。
テーブル5000に記録される各骨組み5100.5200に対するレコードに は、そのt絹みの関節4こ関する変換の参照すなわちポインタと、その貴組みに 沿った各関節への並進のポインタが含まれている。関節に関する4つの変換(第 1のものは、関節の座標空間を、その関節が接続されている骨組みの座標空間へ マツプし、他の3つは関節を定義する)の集合は、端点に関節を有する骨組みの 、その2つの端点の間の骨組みに沿っての助変数距離を表す距離値を有している 。従って、各骨組みテーブル5100に対する、各4つの変換の変換テーブル5 400中の集合に対するポインタは、これらの変換が起こる骨組みの、骨組みに 沿っての助変数距離と関連することになる。かくして、各関節は、骨組みに沿っ た属性設定制御点として働き、先の2次元における第1の態様において説明した のと全(同じ方法で表現され、属性によって関節の点とその関節の変換とが結び 付けられる。後に述べる内挿処理において、関節位置は、第1の態様における属 性制御点におけるのと全く同じ方法で内挿される。さらに、各骨組みに対するレ コード5100.5200は、直前の変換の識別子を含んでいる。従って、骨組 みB′/!に対する1、−]−ド5200は、関節Jlにおいてその骨組みに先 行する最後のレコードを指し示すポインタを含んでいる。また、第1の骨組みに 対するレコード5100は、キャラクタ位置フィールド5002を指し示すポイ ンタを含んでいる。
最後に、各骨組みテーブル5100.5200はその骨組みの外被に関する外被 構成要素データテーブル5110を指し示すポインタを含んでいる。図43に示 1−5だように、各、外被構成要素テーブル5110は2図39a及び図39b に不さ才また端点あるいは層頂点Kl、に2の、骨組みに沿っての位置を定義す る項目5111.5112及び図39a及び図39bに示された断面Fl、F2 の各々に対する項目5113.5114. ・・・5115とで構成されている 。各断面項目5113−5115は、曲線の端点を基準とした、曲線に沿っての 断面の位置を表すデータと、断面の周辺曲線上の少なくとも1つの制御点の位置 データ(xl、yl ; X2 、Y2 )と、そのような制御点に関しての、 断面の平面における2つの接線の先端点を定義する曲線制御データ(X、、、Y □、x、、、y、、)とを含んでいる。すべての座標は断面自身の平面内に存在 するから、断面の周辺曲線を描くことが可能である。
最後に、もし、外被構成要素情報が骨組み情報5100の独立したテーブル51 10に記録されている場合には、その外被構成要素と関連する骨組みを指し示す ポインタ情報が得られる(5116)。
亙二ヱ上旦旦上Ω人示 2次元内挿と関連して上に説明したように、モニタ160を介してデータをユー ザに対して表示するやり方、およびデータがデータを修正するやり方は、ユーザ が本発明を有効に使用する上で非常に重要である。
図44に示したように、3次元物体を取り扱っている際には、モニタ160上の 表示は、1つあるいはそれ以上(好適には、少なくとも2つ)の投影画面領域1 60f、160gを有し、図形を指定された視点方向から見たときの異なった投 影画面として表示するようになされており、好適には、これらの視点方向は互い に直角となるように維持される。また、表示領域160hには、選択した断面を 表示することができる。
表示領域160f、160gには、骨組みが、曲線制御点によって定義されたラ インとしである1つのモードで表示されており、また関節が円として表示されて いる。
図44に示された例では、表示領域160f、160gに、対象物の直交正射投 影図が2つ表示されている。
図45に示したように、断面表示領域160hには、所望の断面のその断面平面 上における周辺曲線が表示される。また、骨組みが、その平面と交わる点も表示 される。
図45には、制御点自身における周辺曲線への接線も表示されている。さらに、 猾組みと断面平面との交点における矢によって表示領域160f、160gのう ちの1つの画像に対応する視点方向が示されている。
図46では、骨組みと関連する外被構成要素が表示領域160f、160gに骨 組みを取り囲むアウトライン曲線として表示されている。さらに、編集のために 、アラi・ライン曲線を定義する断面(Fl、F2)が、上端Kl、下端に2と ともに表示されている。また、選択された第1の断面F1のその断面平面上の形 状が表示領域160hに表示されている。表示領域160f。160gに表示さ れている断面のうちの、どの断面が断面表示領域160hに表示されいるのかを ユーザに知らせるために、表示領域1GOf、160g中の当該断面が暗く表示 され、一方、該当しない断面は明るく表示される。あるいは他の視覚的に識別で きる方法、例えば色を変えたり、破線を用いたりして表示される。
図47に示したように、表示領域160fの視点方向を回転させて、骨組みを視 平面に対して傾けるように再定義すると、断面の周辺曲線(破線で表示されてい る)が投影曲線とり、て見えるようになり、アウトライン曲線は奥行きのある形 で表示されるようになる。
さて、表示領域160f〜160hの表示を変更する処理について、以下にさら に詳細に説明する。
すなわち、以下のような処理を行う。
1、対象物少黒二乏2グ(posing)(a)対象物を動かす (b)対象物の=一部分を関節のまわりに、他の部分に対して回転させる2・亙 象物Ω編! (a)骨組みの編集 (b)外被構成要素の編集 いずれの場合においても、ユーザが位置検出入力装置170a(例えば「マウス 」)を用いて対象物の操作および編集における処理の実行を命令することができ るようになされていることが非常に望ましい。特に、ユーザが位置検出入力装置 170aを移動させ、これに対応してモニタ160のスクリーン上のカーソル記 号を動かすことにより、そのカーソルが移動した位置に対応する問題となってい る点に関する、メモリ121中に保存されているデータを変更し、これに応じた カーソル記号位置の移動を行うようになされていることが望ましい。
カーソル記号位置を読み取り、それに対応したメモリ121中のデータを修正す る一般的な方法については、すでに図9及び図1Oと関連させながら説明したの で、ここで再び長々と繰り返し説明することは避けて、上記の場合と異なる手続 きだけを以下にさらに詳細に述べる。
同様に、表示領域160f、170hに表示を行わせる方法は、図7および8と 関連づけて先に説明した方法と同じである。同様に対応する画像記憶装置130 の領域が、3つの表示領域、すなわち「ウィンドウズJ160f〜160hの各 々に対して、1つずつ具備されている。表示装置160hの場合、表示領域の中 に区画を表示するには、例えば、ライン表示ジェネレータ111は項目5113 に保持されているその区画のための制御点データを読み取り、対応する曲線を図 7と関連して先に述べたようにして生成する。
表示領域160f、160gの場合では、図34に示されているように、各2次 元領域に対して3次元の点データを2次元画像に投影するステップをライン表示 を行う前に実行する点を除いて同じ処理が実行される。この投影ステップについ ては、後にさらに詳細に説明する。
且象携の表示 ある与えられた対象物を表示するようにとの命令を受け取ると、コンピュータ1 00は対応するテーブル5000をメモIJ 121内に配置し、位置フィール ド5002を読み取る。
図48に示すように、画面定義テーブル3000も作業メモリ121内に記憶さ れる。また、各画面表示領域160f、160gに対して、視点方向定義する( 例えば、表示領域160f、160gに対応する観察面に対して垂直な、図48 bに示されている、ベクトルNのベクトルのX、Y、Z座標として定義する)が 記憶される。また、画面のX、Y方向を示す、すなわち、観察画面の直交軸Nの まわりのねじれを示す、2つの直交ベクトルU、■のx、 y、 z座標も記憶 される。
また、好適には、遠近法画像を表示するために、表示領域に対応する視点と対象 物との間の距離の尺度も含まれている。ズームすなわち倍率データMを同じ目的 に具備するようにもできる。
好適な実施例においては、そのようなテーブル3000が各表示領域160f、 160gに対して1つずつ備えられる。
図49に示したように、表示領域160f、160gに対象物の表示を行うため (簡単のために、正射影について議論する)、コンピュータ100は第1の表示 領域160fに対応するテーブル3000をメモリ121から読み取る。また、 対応する観察画面に対する対象物の向きを定義する、視点方向座標データを読み 取る。
次に、コンピコ、−夕100は対象物の3次元位置を、メモ1月21中の対応す るテーブル5000の項目5002から読み取る。
次いで、対象物の全体的な位置を、座標に変換行列を乗算することによって、表 示領域160fに対応する観察面の2次元座標に変換する。すなわち、(ただし 、Tx、Ty、Tzは対象物と視点との間の任意の並進を示す。)正射影では、 X、Yの値を用いて、対応する記号(例えば、図44では3角形として表示され ている)を、表示領域160fに対応する画像バッファ130fの、上記のよう にしてめられたX、Y射影値によって定義されるメモリ位置に描くことができる 。
正射影ではな(、遠近画像の投影を行うには、2次元変換によって得られたZの 値をX座標およびY座標に分割する。
3次元から2次元への変換のさらに詳細については、例えば、「コンピュータグ ラフィックス(ComputerGraphics) J (バーン(Hear n)およびベーカ−(Baker)、プレンティス・ホール(Prentice −Hall)社刊、I S B N : 0−13−165598−1 )に記 載されている。
次に、その位置に連結されている骨組み(図44および図35においてBlとし て示されている)に対するテーブル5100が、コンピュータ100によって読 み取られる。さらに、個々の点の基準座標系で定義されている制御点の座標およ び接線の先端点の座標を、それぞれにキャラクタのx、y、z位置を加算するこ とによって、共通3次元座標系に変換する。実際には、この加算は以下に示した ような行列の乗算によって好都合に実行される。
ただし、Tx、Ty、 1’zは、この場合においては、テーブル5000の項 目5002から導かれた位置の値X、 Y、 Zに対応している。
図50に示したように、コンピュータ100は積算変換テーブル4000を対象 物データテーブルに対して作成し、この4×4変換行列を定義する16個の値が 、テーブル4000の骨組みB1に対応する項目4001に記録される。
次に、テーブル4000の項目4001で指定された変換によってめられたx、 y、z座標が、上記のように視点方向を定義するデータを用いて観察面上に変換 され、テーブル3000に記録される。このようにして射影された各制御点およ び各接線先端点のX座標およびY座標が、表示ジェネレータ111に供給され、 表示ジェネレータ111は、これに対応して画像バッファ130fのビクセル値 をセットすることによって2次元3次スプライン曲線を生成して、表示装置16 0f上に当該の骨組みを表示する。
次に、コンピュータ100は、第2の骨組みB2に対応する項目5200を読み 取る。なお、項目5200はテーブル5400の中の骨組みB2を骨組みBlに 結合する関節を表す変換に関する項目である。関節の3つの回転のそれぞれに対 してテーブル5400に保持されたデータに対応する変換行列が、前の骨組みB 1に対する項目4001に記憶されている変換行列と乗算され、さらに、やはり テーブル5400に記録されている前の骨組みの端から端までの変換行列が乗算 される。結果として得られる積算変換行列が骨組みB2に対応する項目4002 に保存される。この積算変換行列は、骨組みB2の基準空間に記述された点を、 対象物が定義されている共通3次元基準空間にマツプするための変換に対応する ものである。
従って、第2の骨組みB2に対してテーブル5200に保存されている各曲線制 御点の座標および各接線先端点の座標に、その骨組みに対応するテーブル400 0の項目4002に記憶されている変換行列が乗算され、その結果として得られ る3次元座標が、さらに今関心となっている表示領域160fに対応する観察面 上の2次元座標に上記のようにして変換される。2次元射影曲線制御点から、表 示ジェネレータ111は、先の場合のように、ビクセル値を表示装置160fに セットすることによって2次元3次スプラインを生成する。
もし、次に描(べき骨組みが図44でB3のラベルを有するものであれば、コン ピュータ100は、テーブル5000の中の対応する骨組みレコードを読み取り 、その前の骨組みB2からの座標空間シフト(すなわち、B2とB3との間の関 節を中心とした回転とB2に沿っての並進による変換)を定義する、変換テーブ ル5400中の変換を配置し、これらの変換にB2に対して積算変換テーブル4 000の項目4002に記憶されている変換を乗算し、骨組みB3に対する項目 を生成する。
このようにして、図49の処理が続行されて、すべての骨組みが、まず対象物位 置が定義されている共通3次元空間に変換され、次に2次元観察面に変換されて 表示される。従って、テーブル4000はこの段階においては、各骨組みに対し ての変換行列の要素を記録する項目を含んでおり、これらの各項目によって定義 される変換は、次の骨組みに対する項目によって定義される対象物の基準位置方 向内側への変換に2つの骨組みの間にある関節と内側の骨組みに沿っての並進に 対応する変換を乗算したものに対応している。
その後に、異なった視点方向から見た場合に対応する画像を表示領域160gに 表示するため、図49の処理が反復されるが、ただしこの場合にはテーブル30 00の中の項目3200が表示領域160gに対して用いられる。また、デープ ル4000の中の項目の導出は行われず、また修正もされr、各項目が関連する 骨組みの制(利点および接線の先端点を単に直接的に変換するだけである。
同様に、視点方向が変更された場合には、修正データがテーブル3000に人力 され、各骨組みに対してテーブル4000中に記憶された変換を用い、テーブル を再導出することなく、図49の処理が反復される。
一方、もし、対象物が移動された場合、あるいは編集された場合には、テーブル 4000又はその一部を以下に詳細に記述するように更新する必要がある。
動画作成者が、あたかもカメラを扱うかのように、対象物が定義されている3次 元空間における視点方向を扱うことができるように、またフィルムメーカが用い るカメラの操作技術を動画作成者が用いることができるように、専用の位置検出 入力装置を用いた画面制御操作が可能となされており、画面制御操作は、例えば 、ズームのためのフェーダや、倍率、カメラ位置および/またはカメラ角度のた めのトラカーボールによってなされるようにされているか、あるいは、カーソル 制御位置検出入力装置170aを用い、またスクリーン上の表示領域にズームお よび倍率のためのスライダ画像、トラックボール画像を表示し、カーソル位置を 検出してこれらの画面操作機能を模擬するようになされているつなお、この種の トラッカーボールを模擬する方法は、「グラフィックスジェム(Graphic s Gem5)」(グラスナ−(Glasner) 、アカデミツクプレス(A cademic PresS)社、l5BN : 0−12−286165−5  )の462ページに記述されている。
このような仮想トラックボールを2つ備えるようにすると好都合である。第1の ものは、表示画面に対応する観察面の原点のまわりに、観察軸を回転させる(あ たかもカメラを三脚の上で回転させるように)ためのものであり、また、第2の ものは、観察軸を対象物の位置基準点のまわりに回転させるためのものである複 数のあらかじめ定められた視点方向(例えばx=o、y=o、z=oの軸に沿っ た方向)を与えておき、ボタンを押すことによって、対象物の各基準画面が表示 されるようにしておくと好都合である。
フレームバッファ160e、160fからのマスク画像は、記憶装置180ある いはフィルム196またはビデオレコーダ197に対して出力することもできる 。
江引加恵勤 対象物を全体として、空間において移動させるには、ユーザは「移動」を開始す る旨の意志を示す信号を発する(例えば、キーボード170b上の「移動」のラ ベルが付けられたボタンを押すか、あるいは位置検出入力装置170aを用いて モニタスクリーン160の対応する領域を指示する)。すると、コンピュータ1 00はテーブル5000をアクセスして、位置検出入力装置170aによって操 作されたカーソル記号の表示領域160f、160gにおける位置をモニタする 0表示領域160f、160gは異なる画面(好適には互いに直角)と関係して いるので、ユーザは1つの画面における移動、あるいは他方の画面のおける移動 とを組み合わせることによって、対象物を3次元の任意の方向に動かすことがで きる。例えば、対象物を右側前方向に動かすには、図44において、表示領域1 60gによって前方向の移動を行わせ、また、表示領域160fによって右方向 の移動を行わせることができる。
観察面上においてカーソル位置と対象物位置との2次元のオフセットは、テーブ ル3000から、対応する視点方向に対しての逆変換をめ、カーソル位置(カー ツJl、)ラッカー112からめる)と射影2次元対象物位置との差を逆変換す ることによって、対象物の3次元の変化量に変換される。この結果として得られ る位置シフト座標が、位置フィールド5002の現在の値に加算される。次に、 図49の処理が実行され、積算変換テーブル4000の各項目が再計算される図 51に示された処理が、カーソルの移動が完了するまで反復される。
対象物の尤二乏2ヱ(posing) 3次元対象物の骨組みの位置は、骨組みと骨組みとの間にある関節を中心として 移動させて、他の骨組みとの相対位置を変化させることができる。まず、対象物 にポーズを取らせる意志を示す信号を発し、さらにカーソル記号を、選択すべき 骨組みの位置に移動させて制御信号を発する(例λばマウス170aをクリック させる)ことによって骨組みを選択する。その後にカーソル記号を移動させると 、そのカーソル記号の移動に応じて、骨組みを、選択された表示領域に対応する 観察面において、その貴組みを隣なりの骨組みと結合させている関節のまわりに 対象物位置の基準点方向内側に回転させることができる。従って、その骨組みの 関節とは反対の端部は、その関節を中心とする球の表面を3次元空間において描 くことになる。従って、このモードでは、図51において、カーソルトラッカ1 12からめたカーソル位置は、骨組みの自由端部が観察面に射影されたものとし て扱オ)れ、これを3次元座標に変換して、簡単な球幾何学計算を用いてその骨 組みが関節を中心として回転している回転角をめる。
従って、テーブル5000の中のテーブル5400の蝶番と関連する変換データ が修正され、テーブル4000の回転した骨組みに対する項目と、およびそれに 結合されているすべCの骨組みに対する項目が、テーブル4000の前の項目を 参照しながら、またテーブル5400に新たに導出された項目を用いて再計算さ れる。
位置検出入力装置を用いて、別の射影面に関する骨組みの回転を行わせることに よって、容易に、またすばやく、骨組みを任意の所望の位置まで回転させること ができる。
引ル藏キ弔互 ユーザが骨組みをこのモードで操作する旨の意志を示す信号を発すると、その後 のカーソルの移動は、骨組みの自分自身を軸としたねじれを指定するものと解釈 されて、ねじれ角度に関連するテーブル5400の中の変換が図51に示された ようにして修正される。また、積算変換テーブル4000のねじられた骨組みに 対する項目と、この骨組と結合している全ての骨組みに対する項目が同様に上記 のようにして修正される。
外被9土成 肴組みB1を取り囲む、対象物の外側表面の射影について示す、このような射影 を得る方法を以下に説明する。
既に説明したように、外被を定義するデータは、その骨組みに関して定義された 少なくとも1つの断面の周辺曲線を表す制御点と、さらに骨組み上の2つの端点 (または、骨組みの端部を越えて射影された接線上の端点)を定義する制御点と して保存されている。
図39b及び図47に示したように、与えられた観察面における外被構成要素の アウトライン曲線は、まず、断面Fl、F2の関心となっている観察面への射影 における最大横方向法がり点と、最上点に1及び最下点に2とをめ、次に、これ らを曲線制御点として用いて、アウトラインとなる滑らかな2次元曲線を描(こ とによって生成することができる。
実のところ、この処理は正確な幾何学的射影を生成しないが、十分に滑らかなア ウトライン曲線を、比較的少い計算量で得ることができる。しかしながら、ある 状況下では、このような簡単な方法では十分に満足できる結果が得られないこと が起こる。これは、骨組みの上端点および下端点が射影面の近(にあるがあるい はその内側に存在しているために骨組みが実際上見えなくなってしまうような場 合である。
図52を参照しながら、外被構成要素アウトライン曲線の生成処理について、以 下にさらに詳細に説明する。
ある与えられた外被構成要素のアウトライン曲線を作成するため、コンピュータ 100はアウトライン曲線レコード2117を成分2110中に図53に示され たように作成する。
テーブル2117は多(の曲線制御点に対するフィールドを含んでおり、これら の各々がX、Y座標(2次元)で表された点位置および2つの接線先端点とを有 している。テーブル211T中の制御点フィールドの数は、初期値として外被構 成要素の断面の数の2倍に1を足した数にセットされる。第1の制御点の座標は 以下のようにしてめられる。まず、骨組み(フィールド5111に記録されてい る)に沿っての第1の端点の助変数位置を取り出し、曲線制御点を対応する骨組 みテーブル5110から読み取って、対応する3次元助変数方程式をx、 y、 Zについて解くことにより、端点の3次元座標(骨組みの基準空間での座標)を める。次にこれらの3次元座標を、まず、テーブル4000の中のその骨組みに 対して指定されている変換を適用しくこうすると、3次元座標が共通3次元座標 系、即ち「ワールド空間」に変換される)、次にテーブル3000によって指定 されている変換を適用することによって、これらを観察面に射影する。
(以下余白) 次に、射影された2次元座標はテーブル2117の第1の位置項目に入力される 。
次に、骨組みに沿っての端点に最も近い助変数位置を有する断面が外被構成要素 テーブル5110中に配置される。先の場合のように、対応する骨組みテーブル 5110に記録されている制御点がコンピュータ100によって読み出され、コ ンピュータに100によって骨組みが断面と交差する位置がめられる。また、そ の点における骨組みへの接線の方向がめられる。なお、この接線は断面と直交し ている。これらのデータからコンピュータ100は、(例えば)外被構成要素テ ーブル5110の対応する項目5113に記録されている断面の周辺曲線の制御 点の、骨組みの空間的基準フレームにおける位置を計算する。
次に、これらの各点はその外被構成要素と対応骨組みに対するテーブル4000 に記録されている変換を用いて、共通3次元座標系に変換され、次いで、2次元 観察面座樟系に、テーブル3000に記録されているデータを参照することによ って変換される。
図54を参照する。次のステップは観察面に射影された断面上の2つの点におい て、その2つの点の間が断面上で最も長くなるような点(「広がり点」)をめる ことである。図54に示されているように、射影された断面の境界曲線への接線 は射影された骨組み接線と平行となる(もし断面の境界が凹部を含んでいる場合 には、このようなことが成立するような点が他にもありえる)。
従って、図55a、図55b、図56に示したように、射影骨組みの接線先端と 観察面のY軸との間の回転角度を計算することで、計算の複雑さが低減できる。
射影曲線制御点をこの角度だけ他の方向へ回転する変換を実施しく射影骨組み接 線がY軸と平行となるようにする)、次に、曲線への接線がY軸と平行になる点 に対する最小および最大X座標値をめる。この回転変換を実行することによって 、X座標だけを考慮すればよくなるので、問題の複雑さが低減される。
従って、図56にさらに詳細に示したように、各断面に対して2つの広がり点を める処理は、次のようなステップで行う。まず、回転行列を計算する。断面の曲 線制御点および接線先端点のそれぞれに対して計算した回転行列を乗算してこれ らを図55bに示されているように整列させる。最小、最大X座標値の初期値を 設定しく最小値を適当に大きな値に、最大値を適用に小さな値に設定する)、第 1及び第2の曲線制御点の間にある第1の曲線セグメントを這釈する。次にこの セグメント内の曲線のX座標の最小および最大値を計算する。
この計算は次のようにして達成できる。I、 、、1.t X座標の3次方程式 を導出する。
これを微分し、この微分値が0となる点をK)る。次にこれらの解を比較して、 曲線セグメント内での最大のもの、および最小のものをめる。
この最大値は記憶されている最大値ど比較され、また、最小値は記憶されている 最小値と比較される。もし、最大値が記憶さ第1ている最大値よりも大きければ 、あるいは最小値が記憶されている最小値よりも小さければ、新たにめられた値 を前の最大値あるいは最小値と置き換えて記憶する。
これらのステップは射影境界曲線の全てのセグメントに対して、Xの最小及び最 大値がテストされるまで反復される。このようして記憶されたXの最小値及び最 大値が、図55bにおける広がり点のX座標として採用される。
次に、これらの広がり点の対応するY座標を請求められたX座標が存在している 曲線セグメントに関するYの3次方程式を用いてめる。さらに、上で用いられた 回転変換の逆回転変換を適用することによって広がり点のX、 Y座標を表示領 域1GOfに関する観察面の2次元座標空間に回転して戻す。
もし、さらに各曲線区域に対して「境界領域」 (すなわち、制御点および接線 の先端点)のX座標の最大、最小値のテストを曲線それ自身の最大、最小をめる 前に実行すると、ベジェ曲線の経路はこの境界領域内に存在するので、上記の処 理の計算の数をいくぶん減少させることができる。
図56の処理が完了すると、第1の区分の端にある2つの所望の点がめられたこ とになる。図52を再び参照し、最小値広がり点をテーブル2117の開始行か ら数えて最初の空のフィールドに加え、最大値広がり点をテーブル2117の終 了行の前の!後の空フィールドに加える。
次に、他の全ての区分に対して広がり点をめる処理を同様にして反復実行し、最 小X値座標広がり点をテーブル2117の開始行からの最初の部分に加え、最大 X値広がり点をテーブル2117の終了行からのより後ろの部分に加える。
全てのセグメントに対する広がり点の計算が終了したなら、第2の端点を観察面 に第1の場合と全く同じ方法T′I↑影し、テーブル2117の中間に加えるい 図57を参照する。図57a4Cおいて、1つの夕[被構成要素をこの外被構成 要素を定義している肯組みとほとんど直角な視点軸に沿った方向2す)ら見たと きの像が示されている。外被構成要素のアウトラインが、先に議論したJ、うに 、上端、下端、および2つの断面のそれぞれの2つの広がり点を用いてうまく定 義されている。
図57b im示され5ている人うに、視点軸を骨組みの軸に対してさら心こ傾 番づると、2つの断面F1.F2の広がり点と、2点Kl、に2とによって生成 される791〜912曲線は、2つの端点KN、に2が(視点方向において)断 面F1..F2の射影境界曲線を越えない間は満足な状態を維持する。し7かし 、境、界曲線が近づくと、端点Kl、に2を用いて定義されるアウトライン曲線 は射影断面の一部をクリップしてしまい、アウトライン曲線によって外被構成要 素を完全には表現できなくなる。
図57cにおいて、端点に1或いはに2が断面F1或いはF2のどちらかの射影 周辺曲線の内部に移動すると、上記の方法で生成されたアウトライン曲線は断面 の射影周辺曲線の内部に入ってしまうので、生成されたアウトライン曲線は実際 よりも縮みすぎているということが明かであろう。
図57dに示したように、視点軸が骨組みの軸に対してさらに平行になるように 動いていくにつれて、この効果はどんどん著しくなってい(。外被構成要素をそ のほぼ端の方向から見たときには、アウトライン曲線は断面Fl、F2の射影周 辺曲線の内側に図57dにおけるように縮んでしまうのではなく、射影周辺曲線 を少なくとも取り囲んでいなければならない。
従って、図57e、図57f及び図52に示したように、コンピュータ100は 、端点Kl、に2のどれかが、その端点から最も近くにある断面の射影の内側に 存在するかどうかを判別するテストを実行する。もし、そうであれば、対応する 射影断面のうちの、2つの広がり点の間に存在する部分をアウトラインとして用 い、その端点は図57e及び図57f(これらの図は図57c、図57dに対応 している)に示されているようにアウトライン曲線を生成するのに用いないよう にする。
もし、外被構成要素の断面が骨組みの軸に沿って急速に大きくなっている場合に は、端点がその端点から最も近い射影断面に交差する前に他の射影断面と交差す ることが起こり得る。コンピュータ100は、端点から最も近い射影断面に対し てだけテストするのではなく、端点がすべての射影断面の内側に存在するのかど うかをテストするようになすことが可能である。
端点が射影断面の内側に存在するかどうかのテストを行うには、射影断面を定義 する3次方程式と端点な通過する直線との連立方程式を解き、そのとき得られる 解の数によってその点が内側に存在するのか、それとも外側に存在するのかを知 ることができる。その理由は、閉じた曲線の内側を始点とする直線はその曲線と 奇数回(少なくとも1回)交わり、一方、外側の点からの直線は偶数回曲線と交 わるからである。
外被構成要素アウトライン曲線テーブル2117の接線先端点項目をめるため、 コンピュータ100はすでにテーブル2117に記録されている点位置を読み取 り、各点に対し、隣接する制御点(即ち、テーブル2117において前後の点) の位置に応じて2つの接線先端点を以下のようにして算出する:TAN1.=に 、−Tl、(K、、、−に、−I)/6TAN2+=に+ T2+ (K+++  K+−+)/にこで、K、=制御点iの座標、T、=各接線に対する引っ張り 値(例えば1)である。
一般に、異なる[引っ張り(tensionl J値を各点に対してセットする ことができる。ただし、引っ張り値T、を全で1とすると滑らかな曲線が得られ る。
もし、図52において、1つの端点が射影断面の内側に存在していることがわか ったなら、その端点に対するテーブル2117の項目は削除され、代わりに、2 つの広がり点の間に存在する問題となっている断面の制御点に対する項目で置き 換えられる。
この場合、その断面から十分に遠方に存在するテーブル2117の中の各点に対 する接線先端点は、前の場合のようにして算出する。しかし、射影断面上に存在 する制御点に対する接線先端点は、テーブル5110に記録されている接線値の 観察面への射影となる。
しかし、図58に示したように、置換断面及びその最近接断面の広がり点に対応 する接線先端点の再計算を行い、滑らかな移り変わりが得られるようにするのが 望ましい。各、広がり点に対して、その最も近くのものから離れた方向を向いて いる接線については再計算を行う必要がない。図58に示された断面Fl上に、 外被構成要素の中心から外向き方向を向いている2つの接線は、テーブル511 0に記憶されている断面の制御点を2次元に射影し、広がり点において解いた値 を有している。断面F2の広がり点における接線は、上記のように、テーブル2 117の隣接する点の位置データからめたものである。断面F1の各店がり点に おける残りの接線は、断面F2の方を向いており、同じ方法でめるが、ただしこ の場合には、図58においてraJと記されている断面Fl上の次の制御点に対 応するテーブル2117の隣接の点データを用いる代わりに、a゛の点を用いて 以下のように計算される。
a=6 (TANI−b)+c ただし、bおよびCは図58における2つの広がり点である。
上述した技術を用いると、断面がかなり滑らかで類似の形状と大きさを有してい るような場合に、視覚的に良好な3次元物体が表現される。ヒユーマノイド像が このような場合に当てはまり、上記の方法によってほとんどの漫画において受け 入れ可能な品質を得ることができる。さらに幾何学的に正確な結果を得るには、 図52の方法の代わりに、アウトライン曲線として最も外側の扇形を合併させる 方法を用いることができる。
図52の処理がテーブル5000に保持されている各々の外被構成要素に対して 反復され、各画像領域160f、160gの対象物の外被アウトラインが作成さ れる。2次元アウトラインがこうしてテーブル2117の集合によって表され、 外被構成要素のそれぞれごとに1つのテーブルを有し、それぞれが閉じた曲線を 表す。
各表示領域160f、160gの各外被構成要素に対してそれぞれ別の独立した テーブル2117が必要である。
図59は断面は滑らかな凸上である必要はなく、比較的少数の制御点によって表 される複雑な形状を取ることもできることを示したものである。
図60は断面が骨組みと垂直な平面内で定義されている限りは、断面の制御点に よって定義される周辺曲線自身はその骨組みを必ずしも取り囲んでいなくともよ いことを示したものである。従って、断面の位置は骨組みによって制約されるも のの、骨組みを取り囲む必要はない。
対象物の場! 対象物の形状を変更するために、テーブル5000中に保持されているデータを 以下に述べるようないろいろなやり方で編集することができる。それぞれに対す る、編集モードを開始する旨のユーザの意志を表すには、命令をキーボード17 0bにタイプするか、あるいは位置検出入力装置170aを用いてカーソル記号 でモニタスクリーン160の適当な命令領域(ソフトボタン)を指し示す。する と、コンピュータ100は、テーブル5000に保持されているデータの修正に 着手する。必要な場合には、それぞれの修正の後に、変換テーブル4000に保 持されているデータも同様に修正される。各修正の後に図49の処理が再実行さ れ、また、もし外被構成要素が定義されたのであれば、あるいは定義されている ならば、それぞれに対して図52の処理が再実行される。
従って、ユーザは、表示領域160f、160g、160h上に編集と関連する 更新された表示を見ることができ、対話的手法によってすばやく編集を行うこと ができる。
計組みの追加 ユーザは、新たに骨組みを追加したいとの意志を示す信号を発した後、位置検出 入力装置170aを操作して、カーソル記号を既存の骨組み上の点まで移動させ る。カーソルトラッカから座標がめられて、さらに、助変数位置(即ち、骨組み に沿っての長さを表すスケール値)が導出される。その骨組みの基準座標系にお ける関節点の位置および接線がめられ、これからその骨組みの座標系と新しい猾 組みの座標系との間の並進を表す変換行列が導出されてテーブル5400の新し い項目に記録され、この新しい項目への参照が、既存の骨組みに対するテーブル 5100に挿入される。
さらに、既存の骨組みと追加しようとしている新しい骨組みとの間の関節に対応 する3つのレコードが変換テーブル5400にオーブンされて、また、これらへ の参照が既存の骨組みに対するテーブル5100に挿入される。
テーブル4000に、既存の変換のそれぞれに1つずつ、4つの項目が新たに作 成される。
新しい骨組みテーブル5200がテーブル5000の中に作成されて、端点位置 および接線先端点位置のデフォルト値(例えば、全て0或いはl)が設定される 。
こうして、新しい骨組みの追加が完了し、動カルたり(上記を参照)、編集した り(下記を参照)することができる。
且組立の削肋 ユーザはカーソル記号で削除しようとしている骨組みの位置を指し示す。すると 、コンピュータ100は、その骨組みと関連するテーブル5200を読み取り、 そのテーブルが参照している各変換を削除する。これによって、その骨組みを結 合している関節が削除され、またその骨組みにさらに他の骨組みを結合している すべての関節が削除される。
また、コンピュータ100はこれらの変換を参照している他のすべての骨組みを 削除し、さらに、これらの骨組みが参照しているすべての変換を削除する。この ようにして、1つの骨組みが削除されると、それに結合している他の骨組みが全 てその対象物の位置基準点から切り離されて削除される。例えば、図44におい て、もし、ユーザが大腿骨B2を削除すると、その下に接続されている、すね骨 が、脚骨や足指などのさらにその下に接続されているすべての骨組みとともに削 除される。
削除された各変換に対する積算変換テーブル4000の対応する項目が同様にし て削除され、また、削除された骨組みが参照しているすべての外被構成要素テー ブルが同様に削除される。
且組立Ω伸張 図37を参照する。骨組みの第2の制御点の位置を変化させることによって、全 体の曲率を維持したままで、骨組みの長さを増加(または減少)させることが可 能である。これはユーザがカーソル記号で第2の制御点を指し示し、2つの別々 の表示領域160f、160gの画像を用いながら3次元の端点な移動させるこ とによって達成するようにするのが好都合である。すると、コンピュータ100 は、先の場合のように、それぞれの表示領域のカーソル位置を読み取って2次元 カーソル位置からその端点の3次元の移動量をめる。次に、この移動量は、その 骨組みに対してテーブル4000において指定されている変換の逆変換を用いて 、骨組みの座標系に変換される。次に、こうして修正された端点位置が骨組みテ ーブル5100に記録され、テーブル5400の骨組みが参照している並進ある いは変換値が修正される。そして、その後に続く積算変換テーブル4000の変 換をまず、古い変換値で除算し、次に新しい変換値を乗算することによって修正 する。
このような1組みの伸張は、キャラクタの手足がしばしば実在しないような誇張 された伸張を行う漫画動画において特に有用である。
骨組みを取り囲む対象物の外被部分構成要素を定義する断面の位置は、骨組みの 全長に対する比によって定義されるので、骨組みの長さを変えたときに、外被構 成要素テーブルのデータを修正する必要がないということに注意すべきである。
従って、ユーザは3次元図形を、その構断面を一定に保ちながら伸張させること ができ、対象物を取り囲む外被をつりあいを保ちながら伸張させることができる 。
1徂ム9湾皿 図37を参照する。ユーザが骨組みを曲げる(すなわち曲率を変化させる)意志 を示す信号を発すると、コンピュータ100は、その骨組みに対する接線先端点 位置の座標をテーブル5100から読み取り、これらを各表示領域1GOf。
160gに対する2次元観察座標系に射影し、骨組みの端点から接線先端点まで のラインを表示し、その骨組みに対する3次元接線を表す。次に、ユーザは接線 先端点のうちの所望の1つを上記におけるのと同様にカーソルで指示し、2つの 表示領域160f、160gのそれぞれのカーソルを移動させる。すると、コン ピュータ100は、対応する表示領域中の接線先端点の2次元射影がカーソルの 動きに追従して動くように、テーブル5100に保持されている接線先端点デー タを再書き込みする。テーブル5100中の接線先端点データの1回の修正が終 わると、続けて同じステップが接線の伸張に従って(上記のように)反復される 好適には、選択可能な平面曲げモードが用意され、関節に接続された骨組みの端 点における接線の動きが、関節のアングル(この角度は図36の最初の2つの変 換によって定義される)が位置している平面内にだけ制約されて動けるようにな されている(また、好適には、その骨組みが関節を介して接続されている他の骨 組みの接線も同様に制約される)。このモードは、人間のひじや、ひざなどの平 坦関節の現実感のある湾曲を模擬するのに有用である。
好適には、他の曲げモードが備えられており、関節によって互いに結合されてい る2つの骨組みの接線先端点が同一の直線上に乗るように制御することによって 、関節での骨組みと骨組みとの移り変わりが滑らかに見えるようになされる。
a動(Inverse Kinematics)[多運動制約を用いた対話的実 時間関節結合形状操作(Interactive Real TimeArti culated Figure 題n1pulation Using Mul tiple Kinematics Con5tr≠奄獅狽刀j 」と題されたフィリップス(Philips) 、ザーオ(Z11&O)、ボー ルダ(hdler)による論文(ジグラフ(Siggraph) 1990講義 ノート(Course Notes)) 、及び「関節制約および空間的制約を 有する実時間逆運動(Real Time Inverse Kinemati cs withJoint Lim1ts and 5patial Con5 traLnts)Jと題されたザーオ(茄初)及びボールダ(Badler)に よる論文(ペンシルベニア大学(tlniversity of Penn5y lvania)、MS−CIS−89−90)に、強固なセグメントを関節結合 鎖によって「目的地(goal) Jへ向かって結合していく方法が記載されて おり、これら2つをここに参照併合する。
これらの論文において、特に、後者の論文の付録Aにおいて、骨格における目的 地までの空間的距離(さらに具体的には、骨格の[効果器(end effec tor) Jからの距離)を表す関数を用いた空間的な「目的地」への逆運動集 束のアルゴリズムについて述べられている。目的地へのベクトルが、セグメント の結合部位間の空間的変換を用いて計算され、さらに、このベクトルから距離が 算出される。このアルゴリズムでは、さらに対話的に、セグメント間の関節に対 して、目的地への距離を最小とするような関節アングルの集合を生成するように なされている。
本発明の1つの実施例においては、この技術を用いて、ユーザによって定められ た空間的な点に向かって、対象物が動いていくときの 対象物の関節に関するテ ーブル2400の変換を算出する。
上記のような骨組みはその長さと曲率が変化するので、上記に引用した付録Aに おいて記載されている関数g (0)の評価方法を変更して、骨組みが「目的地 」の方向に伸張することができるように従来技術を拡張することが特に好適であ る。
こうして、逆運動によって骨組みの鎖が目的地まで伸びているとき、骨組みを目 的地の方向に長く伸ばすことができるようになり、伸張の大きさは、目的地まで の距離と、ユーザが設定できる調節可能なパラメータによって定まる。逆に、関 節で結合された鎖を、より近い目的地に向かって縮めるときには、これに応じて 骨組みの長さを小さくできるようにする。
この実施例は漫画キャラクタにおいてしばしば観察される種類の動きを生み出す ように設計されている。
外被の鴫清 粧妃Wツ或都閥准滅 新たに外被構成要素を作成するためには、新しい外被構成要素テーブル5110 をテーブル5000に作成する。ユーザは表示領域160f或いは160gの所 望の骨組みの位置をカーソルで指示する。新しい外被構成要素テーブルへの参照 が骨組みテーブルに記入され、また逆の参照も作成される。デフォルト値として 、2つの端点位置項目5111.5112がそれぞれ0及び1.0にセットされ て、この骨組みの端点に対応するようになされる。
例えば、0.5の位置データ(即ち、骨組みの中央の位置)を有するデフォルト の断面レコードが作成される。
次に図52の処理が実行されて新しい境界テーブル2117が作成され、外被構 成要素のアウトラインが表示領域160f、160gの少なくとも1つに表示さ れる。
断面の制御点及び接線が予め定められた任意な都合のよい値に設定され、コンピ ュータ100によって断面が表示領域160hに上記の2次元曲線の場合におけ るのと同じやり方で表示される。次に、ユーザは、断面を所望の形状に編集する (以下を参照) コンピュータ100は、カーソルが指示した部位に隣接する対応する外被構成要 素テーブル5110と、それに対応する境界テーブル2117を削除する。
断面の磯! 図61を参照する。画面160f、1.60gのいずれかにおいてユーザがカー ソルで断面を指示することによって編集しようとする断面が選択される。すると 、選択された断面が表示領域160hに表示され、また、テーブル5110の項 目5113に保持されている制御点と接線先端点を表す記号が表示される。カー ソルで所望の点あるいは接線先端点を指示して、カーソルを動かすことによって 、ユーザはコンピュータ100にカーソル位置に追随して、テーブル5110の 項目5113に保持されている点位置データを先の場合と全く同様にして修正さ せて、断面の形状を変更する。
テーブル5110の各修正が終了すると、表示領域160f、160gの各々の 画面に対して別々のアウトラインテーブル2117a、2117bが作成されて 、表示領域1GOf、160gの各々に対して、図52の処理が再実行されるこ のようにして、断面を変更したことによる3次元対象物への影響は直ちに視覚化 される。このような対話的な方法でユーザは対象物の3次元外被をすばやく設計 することができる。
駈二り断面Ω追加 ユーザは新しい断面を加えることによって、骨組みに沿った長さ方向の複雑さを 増加させることができる。コンピュータ100はユーザが新しい断面を追加しよ うとして指示しているカーソル位置を読み取り、骨組みの端点間の対応する助変 数距離をめる。新しい断面レコードがテーブル5110の断面と端点との間の新 たな断面を置こうとしている位置にオーブンされる。
第1の実施例においては、断面制御点および端点が、隣接する断面からこれらを 複写することによって作成される。
第2の実施例においては、制御点は2つの視点方向160f、160gのそれぞ れに対応するアウトラインテーブル2117中の隣接する2つの断面のひろがり 点を内挿することによって作成される。或いは、隣接する断面と隣接する端点と の間で内挿を行う。
こうして今や、新しい断面を上述したようにして所望の形状に編集することがで きる。
1 みに17つでの 重 ユーザがカーソルを骨組みに沿って動かすと、カーソル位置が追跡され、これに 対応してカーソルに追尾するように断面位置が増加あるいは減少する。なお、断 面の周辺曲線を定義する制御点データに対する変更はなされない。
外被遣或!累9移動 全く同じ処理が実行される。ただし、テーブル5110の各断面および端点に対 する位置の値が全て修正される。端点あるいは断面が骨組みの端点を越えて動い た場合には、動きは投影された接線にそって続行される。
先における場合のように、テーブル5110が変更される度にアウトラインテー ブル2117が更新されるので、ユーザは行った変更の効果を直ちに見ることが できる。
アウトライン の 各外被構成要素に対してテーブル2117によって定義されたアウトライン曲線 の集合によって、3次元形状の表示領域160f或いは160gに対応する与久 られた視点方向への2次元射影が構成される。これらは、上記の2次元編集技術 を用いて直接的に編集することが可能であり、曲線制御点をテーブル2117に さらに追加したり、あるいは、属性制御点を追加することができる。追加された どの曲線制御点も、アーチ形状あるいは外被構成要素の他の部分の編集を行って 再構成すると、テーブルから削除される。ただし、属性制御点は維持される。
上記のように、テーブル2117の各属性制御点に対する項目はその2つの曲線 制御点間のアウトライン曲線上の助変数位置とその点での属性値とで構成されて いる。
属性の一般的な議論として、我々の同時係属PCT出願PCT/GB91/・・  (代理人資料番号5086399)をここに参照併合する。
図62を参照する。2つの骨組みが結合される部位において、その外被構成要素 が図62aに示されているように、重なり合うことができるということがわがる であろう。従って、アウトライン曲線の重なり合う部分を表示しないようにする ために属性制御点がそれぞれの曲線の、例えば、曲線が交わる点(図62bの第 1の曲線上のMla、M2a、第2の曲線上のMlb、M2b) 、或いはその 他の点にユーザによって附加される。各属性制御点における不透明値を0に設定 して、上に引用した同時係属出願PCT/GB91/・・・に記載しであるよう に、表示領域160f、160gに表示される際に、各境界曲線の重複部分が表 示されないようになされる。
或いは、全ての外被構成要素に対するテーブル2117の集合を第1の態様によ るキー・フレームテーブル122の形式で記憶しく必要ならば、そのような形式 に変換してから記憶する)、これに関して先に説明したのと同様にして編集を行 う。
外3体引炙翌ヌにと即f 図40a及び図40bに示されているように、骨組みが(上記のようにして)曲 げられたとき、断面形状は、骨組みに沿った断面の相対的な位置と同様に、変化 せずに元のままに維持される。従って、骨組みが曲げられたとき、外被構成要素 テーブル2110のどのデータも修正の必要が起こらない。必要な唯一のステッ プは周辺曲線の再計算を上記のように図52の処理によって行うことだけである 。
図63を参照する。骨組みを極端が曲げ方をした場合には、断面の射影広がり点 が交差することがある。このような場合、後の図52の手続きを行う際にある困 難を生じる。その理由は、このような場合のテーブル2117中の点は内側に窪 んだ曲線を定義していることになってしまうからである。実際には、このような ことが起こらないかもしれないが、好適な実施例では、もし起こった場合に解決 するための手段を備えている。それには、以下の1つの方法を用いる。
(1)テーブル2117に関する2つの広がり点の順番を交換する。こうするこ とによって、交点の周辺で滑らかな曲線を得ることができる。
(2)上記の(1)の場合と同じようにするが、ただし、さらに制御点を交点に 加える。そこでの接線は鋭角となるようにする。こうすると、例えば人間のひざ の裏側にできるような[折り目(crease) Jができる。
(3)両方の広がり点を交点に位置する1つの点と交換する。あるいは広がり点 の平均的位置の点と交換する。
辻上げ描画 各外被構成要素に対して、図52の処理を用いて生成されたアウトライン曲線は 、仕上げ描画ができる。例えば、ユーザが予め定められた色を設定して、対応す る外被構成要素テーブル2117と関連させて記憶しておくと、曲線の内側部分 をこの色で埋めることができる。好適には、隠れた表面を除去して見えな(する ために、各アウトライン曲線の内側を深さの順で順々に埋めていく。こうすると 、視点に最も近い部分によって、それより奥の方の部分が重ね書きされる。従っ て、各外被構成要素の名端点がすでに説明したようにして観察面に射影されると きに、Zすなわち深さ値が変換により生成されて、アウトラインテーブル211 7に記憶され、各画面に対して、外被構成要素に対する色づけが図64に示した ようにZの値が次第に減少していくような順番で行われる。
λ次元動画 上記の3次元キャラクタモデリングシステムを用いると、すでに説明したように 関節で結合された対象物(例えば漫画キャラクタ)を任意の所望の視点方向に見 たときのアウトライン曲線を作成することができ、またキャラクタにポーズをと らセ編集することができる。図65は、アウトライン曲線の集合を表したもので あり、これらのアウトライン曲線はそれぞれテーブル2117に保持されている 2次元閉曲線制御点データによって記述されており、これらのデータによってア ウトライン曲線が生成される。
好適には、本発明のこの態様は、先に記述した本発明の第1の態様による2次元 内挿と動画システムと組み合わされ、閉曲線の集合をテンプレート122として 用いで、簡単に2次元内挿を行うことができるようになされる。
どの画面でも、外被構成要素の数と骨組みの数とは同じであるから、多(の場合 においては、同一の図形から導出された2つの異なったアウトライン曲線は、対 応する外被構成要素アウトライン曲線テーブル2117をそれぞの場合に対して 有しており、従って、上記のように一方から他方へ2次元内挿を行うことが可能 である。しかし、常にそのようになるわけではなく、図57と関連づけて説明し たように、末端の方向から見たときには外被構成要素アウトライン曲線は余分な 曲線制御点を含むんでしまうことがある。しかし、本発明の第1の態様において 述べたように、2つの曲線の組を整合性がとれるようにすることが可能である旦 次元巴挿 3次元内挿を行うための、本発明のこの態様による実施例は、キャラクタのデー タを3次元テンプレートとして含むテーブル5000を、典型的には、大容量記 憶装置に180に記憶するようになされている。キャラクタの位置および比率を とように選択してテンプレートテーブルに定義するかは、ユーザの自由にまかさ れているが、一般には、中間位置において関節での各回転が起こるような位置を 選択するのが便利である。同様に例えば人間そっくりのキャラクタが立っている 位置のように、見たときに意味がある位置を選択するのが便利である。
テンプレートテーブルが記憶されると、テーブル500oがメモ1月21に複写 されて記憶され、その内容がユーザが動カル、ポーズをとらせ、或いは形状を編 集することによって修正されていく。
3次元内挿を行うには、ユーザはまず、対象物を操作して第1の位置に配置し、 フレームあるいはタイムスロット番号をその第1の位置に対して割り当てる(入 力する)。次に、コンピュータlOOがテーブル5000を読み取り、そのテー ブルの各点の座標から、テンプレートテーブルから読み取った対応するテンプレ ートの点の座標を減算し、差分座標を第1の対象物差分テーブルに記憶する。
テーブル5400に保持される関節に関する変換を得るために、テンプレートテ ーブルの変換からの角度差を同様にして算出し、差分テーブルに記憶する。
従って、このようにして導出された第1の差分テーブルは、テンプレートからの 第1のタイムスロットに対応する対象物の第1バージヨンの偏差を表しており、 図66に示されているように、第1のタイムスロット番号とともに記憶されるユ ーザはそれから対象物を操作して第2の位置に配置する。ユーザは、テーブル5 000に保持されている骨組み制御点データ値および外被構成要素データ値を編 集することもできる。次に、ユーザは第2のフレームあるいはタイムスロット番 号を入力し、第2の対象物にポーズをとらせる。するとコンピュータがメモリ1 21中の現在の対象テーブル5000の各点および変換に対してテンブレー1− テーブルからの差を算出し、これを差分テーブルに第2の差分テーブルとして言 己憶する。
次に、コンピュータは、ユーザによって指定されたこれらの2つのフレームある いはタイムスロットの間に入る中間フレームあるいはタイムスロットの数を数え 、それに対応する数の、テンプレートテーブルと等しい数の等しく配置された項 目を有する内挿テーブルをメモリ121にオーブンする。各内挿テーブルの各項 目は記憶されている2つのテーブルの間で(例えば線形な)内挿を行うことによ ってめられ、例えば、8つの中間内挿テーブルが存在する場合には、第1の内挿 テーブルの各個は第2の記憶されているテーブルを0.1倍し、第1の記憶され ているテーブルを0.9倍したものとしてめられ、第2の内挿テーブル以下も同 様にしてめられる(線形内挿の場合)。この原理は、本発明の第1の態様におい て議論した2次元内挿に完全に類似したものである。
各内挿差分値が各内挿テーブルに対して算出されると、対応する値が記憶されて いるテンプレートテーブルから加え戻されて、各内挿テーブルに対して積算変換 テーブル4000が作成される。1秒当たり5〜30フレームの反復速度で各内 挿に対して順にすべての外被構成要素に対するアウトラインテーブル2117を 作成することによって、内挿された各ポーズを、与えられた角度から次々にモニ タ160上に動画列として表示させることができる。
この装置の特に有利な1つのモードを採用すると、ユーザはある与えられた姿態 のキー・ポーズを作成し、次にまばらに散在するポーズを3次元において内挿す る。このようにして、アウトライン曲線集合が導出されてテンプレートあるいは キー・フレームファイルとして記憶され、これを用いて、先に記述した第1の態 様の2次元動画作成処理が実行されて、さらに内挿フレームが作成される。この ようにして、長い2次元内挿フレーム列を作成するときに発生する歪を防ぐこと ができる。
なる・ ポーズの士人 各骨組み(また、それに関連する外被構成要素データ)は、それ自身の基準空間 において定義されるので、もし、同じ3次元対象物の別々に編集された2つのバ ージョンを、記憶されたテンプレートテーブル5000に対応する、それぞれ等 しい骨組みと外被構成要素制御点に対する等しいデータ項目を有する2つのテー ブルとして保存すると、対応する2つの差分テーブルが上記のようにして算出さ れる。これらの2つを1つに足し合わせると、これら2つの両方の特徴を有する 合成姿態が本発明の第1の態様の同一のテンプレートからの対応するタイムライ ンにおけるのと全く同じ方法で作成される。
従って、別々の動画作成者あるいはアーチイス1−が同じキャラクタの異なる部 分について担当し、これらの結果を結合させることが可能である。
これを達成するには、新しい合成対象テーブル5000をメモリ121中にオー ブンするが、この新しい合成対象テーブル5000は、テンプレートテーブルに 存在する各項目に対応する項目を有するようになされるので、従って、作成され る合成対象物は、これら2つのテーブルの両方を用いて作成される。
つぎに、合成テーブルの各項目が、2つの差分テーブルの対応する項目を互いに 1つに足し合わせる(或いは、もし所望であれば、予め定められた比で足し合わ せる)ことによって、上記の内挿におけるのと全く同一の方法で作成され、対応 するテンプレートテーブル項目に足し戻される。
従って、内挿処理と合成対象物ポーズ作成処理は本発明の2次元の態様と等価な ものである。第2の態様の好適な実施例においては、各骨組みテーブルおよび/ または外被構成要素テーブルが骨組みにそっての助変数位置を含む属性制御点あ るいは境界曲線、および、制御点が有効であるかどうかを示すフラッグを配憶す ることができるようになされている。前と同様に、ユーザがフラッグを変更する と、コンピュータ100がその点を新しい制御点として扱うようになされている 。点が骨組みの上に存在するような場合には、コンピュータlooは、新しい骨 組みテーブルと関節に関連する変換を作成し、既存の骨組みを新しい制御点にお いて分割し、回転の初期値として0が設定された変換を有する新しい関節を備え させて、以後、骨組みをユーザがその関節のまわりで編集することができるよう にしている。
このようにして、2次元の場合と全(同様に、ユーザは3次元対象物の所望の場 所の複雑さを増加させることができ、また、休止状態のこの種の曲線制御点を有 するテンプレートを作成することによって、異なる複雑さを有する2つの3次元 対象物を、内挿させたり、或いは足し合わせたりすることができる。
その の7、および 1対象惣 本発明の好適な実施例においては、好適には、コンピュータ100は、それぞれ が異なる対象物を定義する複数の並行対象テーブル5000a、5000b・・ ・を作業メモリ121内に受け付けることができるようになされている。各対象 物に積算変換テーブル4000が関連づけられ、また全ての対象物はそれぞれを 既に述べたやり方で並行して表示することができ、動画作成者がいくつかの対象 物或いはキャラクタを異なる空間に配置したシーンを合成作成することができる ようになされている。
ライブラリ 本発明の好適な実施例においては、コンピュータ100は大容量記憶装置180 かもあらかじめ定められた対象テーブルを読み取って、さらに編集を行うための 基礎としたり、あるいは上記のように結合させて合成対象物を作成することがで きるようになされている。例えば、図35に示したような種類の人間のような骨 格を具備させると、多くの動画漫画キャラクタはこのような骨格に基づいている ので好都合である。
同様に、共通のテンプレートから導出した1つの対象物の異なるポーズに対応し て記憶されている複数の対象テーブルを有しており、例えば歩いている動画列な どのストックを提供できるようになされいる。このようなテーブルは、好適には 、差分テーブルとして記憶される。その際、胃組みだけを記憶するようにするの が好都合である。この実施例においては、コンピュータ100はこれらの記憶さ れた骨組み差分テーブルを、1式の外被構成要素を含む対象物を定義するテンプ レートと結合させ、骨組みの動きが予め記憶されたポーズから写しとられ、一方 、外被構成要素は、関心のある特定の対象物から供給されるようになされている 。このように、漫画キャラクタ(例えば図38の兎)を作成し、歩行などの予め 定められた一連の動きを表す、前もって記憶された人間のような骨組みを参照す ることによって、動画にすることができるようになされている。
好適な実施例においては、これらのライブラリ技法を容易に実現することができ るが、それは以下のような特徴によるものである。即ち、使用する制御点の数が 少なくて済むこと、対象物の経路を別々に局部空間に定義することができるとい う特徴を有すること、また対象テーブルがあらかじめ定められたポーズを有する 共通分からの差として記憶されるという特徴によってである。これらの特徴は各 々単独でも、また、これらが合わさったことによっても寄与している。
同様にして、外被構成要素のライブラリを提供し、大容量記憶装置から読み出し て、所望の骨組みに足し合わせるようにすることも可能である。
このように1、まず、(例えば)1つの漫画キャラクタの与えられたポーズおよ びバージョンを記憶し、次に、いろいろな多くのキャラクタの基本原画となるポ ーズの列(例えば、歩行の列)を記憶することによるライブライの使用は、動画 両前列を作成する上で、時間と労力の節減ができ、非常に価値の高いものである 。
土の他詳細 第1の態様と関連して記述したタイムライン表示の特徴は、同様に第2の態様に も適用可能なものである。また、第1の態様のその他の詳細についても必要な変 更を行って同様に第2の態様に適用できる。
(以下余白) H63゜ F/6.6a H59゜ 口1句 F/6.77 F/67B。
F/(5,79こ F/6.20゜ F/に、27a Fl6 、27b Fl5.27c Fl(i、27d FIG、 28. Fl6.29 c′デル釘唱導196197 ロ ロ 0 \す F/(i、 47 F/6.57c、 Foci、57d。
F/6.59゜ F/6.60゜ (〕 F/に、64 H565 フロントページの続き (31) i失権主張番号 9102125.3(32)優先臼 1991年1 月31日(33)優先権主張国 イギリス(GB)(31)!光種主張番号 9 110945.4(32)優先臼 1991年5月21日(33)優先権主張国  イギリス(GB)(31)優先権主張番号 9117409.4(32)優先 臼 1991年8月12日(33)優先権主張国 イギリス(GB)(81)指 定国 EP(AT、BE、CH,DE。
DK、 ES、 FR,GB、 GR,IT、 LU、 NL、 SE)、AU 、BR,CA、FI、GB、HU、JP、KP、 KR,NO,PL、 SU、  US(72)発明者 ウィリアムス、マーク ジョナサンイギリス国 ビイ− イー176エフジエイ、キャンズ、ハンチイントン、エステイ−、アイビス、ネ ネ ウェイ 20 (72)発明者 ブロックルバースト、マイケル ジョンイギリス国 シイ−ビ ー13ビイーズイー ケンブリッジ、マルタ ロード 41(72)発明者 ジ ョーンズ、ギヤビン ティモジ−イギリス国 シイ−ビー12イーエイ ケンブリツジ、マラソン ロード 25(72)発明者 ホウキンズ、スチュア ート フィリップイギリス国 シイ−ビー21エイエイ ケンブリツジ、レジエンド テラス、ロイズ ハウス 1

Claims (1)

  1. 【特許請求の範囲】 1.動画画像列を作成するための装置であって、複数の画像を定義するデータと 、それらの各々に対して上記画像列中における時間的位置を定義するデータとを 記憶する手段と、少なくとも1対の画像に関する前記記憶されたデータを読取り 、前記記憶された画像の間の時間的位置において生起する1つ或いはそれ以上の 中間画像を定義するデータを生成する手段と、 とを備えたことを特徴とする装置。 2.上記データを編集して、上記画像列を修正するための手段をさらに備えたこ とを特徴とする請求項1に記載の装置。 3.各画像を定義する記憶されたデータが、前記画像を構成するラインを定義し このラインと関係する複数の点データを有し、各画像の点は他の画像の点と位相 的に対応し、前記記憶された画像データによって互いに位相的に対応する画像を 定義することを特徴とする請求項1または2に記載の装置。 4.前記画像を表す前記データが、複数のラインを定義するデータを有し、それ ぞれのラインを定義するデータが複数の制御点位置データを備えることを特徴と する請求項3に記載の装置。 5.前記複数の制御点データの各々が、前記ライン上の点を定義する位置データ と、その点におけるそのラインへの接線を定義するデータとを備えることを特徴 とする請求項4に記載の装置。 6.前記制御点データが各点で2つの接線を定義するデータを含み、1つの点を 傾きの不連続性を示すように定義するできることを特徴とする請求項5に記載の 装置。 7.作成手段が、画像列において次から次へ生起する第1及び第2の記憶された 画像の記憶された点データを読取り、中間に内挿される少なくとも1つの画像を 生成する手段を備え、前記中間に内挿される画像は、各々の点データが、2つの 記憶されたフレームに対して位相的に対応する点から、内挿画像の時間的位置と 各記憶された画像の時間的位置との間の時間的相対的距離とを単調に関連付けて 予め定められた比率で導出される複数の点データを備えることを特徴とする請求 項3から6までのいずれかに1項に記載の装置。 8.前記予め定められた比率は、前記2つの時間的距離の比に比例するようにな されており、これによって前記記録された画像と画像との間で線形内挿を行うこ とを特徴とする請求項7に記載の装置。 9.前記予め定められた比率の比が時間的距離と時間的距離との比の非線形関数 となっており、前記関数が一般的にS字状の内挿を与えるような関数であって、 これにより内挿された画像列の間の移り変わりを滑らかにすることを特徴とする 請求項7に記載の装置。 10.前記予め定められた比率が1を越えられることを特徴とする請求項7に記 載の装置。 11.前記編集手段が、制御信号に応答して、少なくとも1つの内挿された画像 に対して予め定められた比率を修正するように動作することを特徴とする請求項 2に請求項7から10のいずれか1項を附加した装置。 12.前記編集手段が、1つの画像に対してだけ予め定められた比率を修正でき その他の内挿された画像の予め定められた比率は不変のままに保つことを特徴と する請求項11に記載の装置。 13.前記編集手段が、制御信号に応答して、記憶されている画像に関連する画 像データを修正することを特徴とする請求項2に記載、又は請求項2に請求項3 から12項までのいずれか1項を附加した装置。 14.前記編集手段が、1つの前記の点に関連するデータを他の前記点に影響を 与えることなく修正できることを特徴とする請求項3,4,5のいずれかに請求 項13を附加した装置。 15.前記記憶されたデータによって表される少なくとも1つの前記記憶された 画像を表示するための表示手段を更に備えることを特徴とする前出の請求項のい ずれかの1項に記載の装置。 16.前記編集手段がマニュアルで操作可能な位置検出入力手段を備えており、 前記位置検出入力手段をマニュアルで操作することによって、前記装置が前記画 像データを修正して、前記表示手段上の表示を変更するようになされており、こ れによって対話的編集を可能にしたことを特徴とする請求項2又は請求項3から 14のいずれか1項に請求項15を附加した装置。 17.第1の方向に前記記録された画像の時間的位置を表す図表を備える前記画 像列の説明を、前記表示手段に表示するための手段を更に備えることを特徴とす る請求項15又は16に記載の装置。 18.前記編集手段が、記憶された画像の位置を前記列表示中に示す信号と、さ らに少なくとも前記記憶された画像によって占められるべき前記画像列中の異な る時間的位置を指定する信号を入力手段から受け取り、これに対応して前記記憶 された画像の時間列データを修正することを特徴とする請求項15に請求項17 を附加した装置。 19.前記編集手段が、時間的移動をなすべき複数の前記画像を指定する入力手 段からの信号を受け取り、複数の前記画像と関係する前記データを修正すること を特徴とする請求範囲18に記載の装置。 20.前記列表示が、記憶されたあるいは内挿された画像列中の画像に対応する 棒を有する棒グラフ表示を備えることを特徴とする請求範囲17から19のいず れか1項に記載の装置。 21.前記編集手段が前記棒の1つを指定し、前記棒の1つに対する修正された 長さを示す信号を入力手段から受け取り、これに対応して予め定められた比率を 修正し、前記棒を再表示するようになされており、これによって予め定められた 比率を対話的に編集することが可能なようになされていることを特徴とする請求 項11又は請求項12及び請求項16に請求項20を附加した装置。 22.前記表示装置上に前記画像列の複数の画像を生成するための手段を備えた ことを特徴とする請求範囲15に記載の装置。 23.前記画像が互いに少しずつずらされて表示されるようになされていること を特徴とする請求項22に記載の装置。 24.前記互いにずらされた画像が重なり合わないように表示されることを特徴 とする請求項23に記載の装置。 25.前記互いにずらされた画像が重なり合って表示されることを特徴とする請 求項23に記載の装置。 26.前記内挿された画像が、前記記憶された画像と視覚的に区別できるように 表されることを特徴とする請求項22に記載の装置。 27.前記画像が動画化画像列として表示されることを特徴とする請求項22に 記載の装置。 28.動画画像列を生成するための装置において、複数の画像を指定するデータ を記憶するための手段と、少なくとも1対の画像に関する前記記憶されたデータ を読取って、それらから1つあるいはそれ以上の内挿による中間画像を表すデー タを生成するための手段と、 前記記憶された画像データを編集するための手段と、を備えていることを特徴と する装置。 29.前記画像列の複数の連続した画像を表示するための手段をさらに備え、こ れによって前記編集を容易に行うことができることを特徴とする請求範囲28に 記載の装置。 30.各画像を表す記憶されたデータが、前記画像を構成するラインに関連して これを定義する複数の点データを有しており、各画像の点は他の画像の点と位相 的に対応するようになされており、これによって、一般的な位相的対応性を有す る画像を記憶された画像データによって定義することができるとともに、前記編 集手段は、記憶された画像を修正して、1つの画像と他の画像との間の位相的対 応性を、それらの間での内挿の可能性を維持したままで変更することを特徴とす る請求項28又は請求項29に記載の装置。 31.前記編集手段は前記内挿された画像を指定する信号に応答して、前記内挿 された画像に対応する新らしく記憶される画像の画像データを生成することを特 徴とする請求項2または請求項28に記載の装置。 32.前記記憶手段は第1及び第2の種類の点データを記憶するようになされて おり、前記第1の種類の点データは、前記画像を構成するライン上の点位置を定 義し、前記第2の点データは前記ラインに沿った点位置を有し、前記第2の点デ ータ位置が前記の第1の種類の点データを参照することによって定義されること を特徴とする請求項3又は請求項30に記載の装置。 33.第1の画像を定義する第1の種類の点データが、第2の画像と関連付けて 記憶された第2の種類の点データと位相的に対応でき、また、前記編集手段が、 適当な制御信号に応答して第2の種類の点データを前記第1の種類の点データに 変換して画像の複雑さを増大させるようになされており、又/或いは、逆のやり 方で画像の複雑さを減少させることを特徴とする請求項32に記載の装置。 34.前記編集手段は、画像のラインに沿って第2の種類の点データの位置を修 正できることを特徴とする請求項32又は請求項33に記載の装置。 35.前記記憶された画像に対応するテンプレート画像を定義する画像データを 記憶するための手段を更に備えることを特徴とする請求項3又は請求項30に記 載の装置。 36.前記編集手段は、記憶された画像に対応する画像データを修正して点デー タを追加して画像の位相的複雑さを増大させ、これに対応して前記編集手段がテ ンプレートデータを修正できることを特徴とする請求項33に記載の装置。 37.点位置データが、記憶された各画像の点位置とテンプレート画像の点位置 との差を定義するデータとして記憶されることを特徴とする請求項35又は請求 項36に記載の装置。 38.複数の前記画像列を記憶、生成、編集し、また、前記複数の前記画像列の 各画像列の時間的に対応する画像同士を併合して、併合画像列を供給するように したことを特徴とする前出の請求項のいずれか1項に記載の装置。 39.前記併合画像列の中の1つの前記画像列を除いた他の全てに対応する併合 画像列を記憶し、前記1つの画像列を編集し、さらに続けて前記編集された画像 列を前記記憶された併合画像列に併合するための手段を更に備えていることを特 徴とする請求項38に記載の装置。 40.キャラクタ動画作成システムにおいて、記憶された画像を指定するための 手段と、記憶された画像を予め定められた比率で内挿して中間画像を供給するこ とによって動画化された画像列を作り上げるための手段とを備え、前記画像が少 数の制御点によって定義されたラインから構成されていることを特徴とするシス テム。 41.動画作成システムにおし、て、 少なくとも1つのラインを定義するデータを記憶し、更に前記ラインに沿った点 を定義するデータと、その点における又はその点に関連付けて前記ラインの経路 とは関係のない特性とを記憶するための手段と、前記ラインを含む少なくとも2 つの画像を定義するための手段と、前記点が前記第1及び第2の画像から与えら れているような前記ラインを含む第3の画像に関するデータを生成するための手 段と、を備えていることを特徴とするシステム、42.他の像と結合すべき像の 部分を指定する合成マスクを定義するための合成システムにおいて、 時間的に互いに離れた位置にある1対の画像の前記部分を指定するための手段と 、 前記離れた部分から、中間フレームのための対応する部分を内挿によって生成す るための手段と、 を備えていることを特徴とするシステム。 43.各部分が、その部分の形状を定義するラインと関連するデータによって定 義され、前記データが複数の点データを有し、各像の点データが位相的に他の像 の点データに対応することを特徴とする請求項42に記載のシステム。 44.他の像に加えれらる像の部分の比率を示す透明度レベルデータを指定する ための手段を更に備えていることを特徴とする請求項42或いは43に記載のシ ステム。 45.透明度データが対応する点における透明度レベルを定義する点データを有 していることを特徴とする請求項43に請求項44を附加したシステム。 46.第2の像と結合すべき第1の像の部分を指定することによって合成を行う 装置において、 前記部分を取り囲む曲線を特徴づける制御点を定義することによって、前記部分 を定義するための手段を備えていることを特徴とする装置。 47.既存の像を色仕上げするための装置において、曲線を定義する制御点を記 憶することによって曲線を指定する手段と、曲線に沿った点におけるその色を指 定し、色点と色点との間の色値を内挿する手段と、 を備えていることを特徴とする装置。 48.3次元の対象物を指定、編集または操作するための装置において、3次元 経路の骨格構造を定義するデータを記憶する手段を備え、前記データが曲がった 経路を定義することができるデータであることを特徴とする装置。 49.前記データを編集するための編集手段を更に備えていることを特徴とする 請求項48に記載の装置。 50.前記編集手段が前記データを編集して前記の径路の曲率を変更できること を特徴とする請求項49に記載の装置。 51.前記データが、複数の点の3次元空間の位置を定義する制御点データを含 み、また前記装置が前記制御点データから、その経路に沿った点の座標を導き出 す手段を更に備えていることを特徴とする請求項48から50までのいずれか1 項に記載の装置。 52.前記制御点データが前記経路上の位置を定義するデータと、その位置にお ける少なくとも1つの経路接線を定義するデータとを含んでいることを特徴とす る請求項51に記載の装置。 53.骨格構造に対してある角度をなす、対象物の断面の形状を定義するデータ を記憶する手段を更に備えていることを特徴とする請求項48から52までのい ずれか1項に記載の装置。 54.3次元対象物を指定、編集または操作するための装置において、複数の3 次元経路を有する骨格構造を定義するデータを記憶する手段と、前記経路に対し てある角度をなし、前記経路に沿って隔てられた位置における対象物の少なくと も1つの断面の形状を定義するデータを記憶する手段と、を備えていることを特 徴とする装置。 55.前記断面が前記経路に対して直魚となるように定義されていることを特徴 とする請求項53又は54に記載の装置。 56.前記断面が、前記断面内の対象物の周辺の経路を定義するデータによって 定義されていることを特徴とする請求項53乃至55のいずれか1項に記載の装 置。 57.データを定義する経路が、曲がった断面周辺を定義する制御点データを備 えることを特徴とする請求項56に記載の装置。 58.前記制御点データが、周辺曲線上の位置と、その位置における少なくとも 1つの曲線接線を定義するデータとを備えることを特徴とする請求項57に記載 の装置。 59.前記データは断面の空間位置に依存することなく断面を定義することを特 徴とする請求項53乃至58のいずれか1項に記載の装置。 60.前記断面の空間的位置が、前記断面の平面の交点の3次元経路に沿った長 さを定義する長さデータによって定義されることを特徴とする請求項59に記載 の装置。 61.前記長さデータが、経路自身に対する長さの比として記憶されることを特 徴とする請求項60に記載の装置。 62.ある与えられた方向から見た対象物の2次元アウトラインを、その方向に 対しての断面の最大横方向広がり点を導出し、その点を通過する曲線を生成する ことによって曲線を生成する手段を備えていることを特徴とする請求項53乃至 61のいずれか1項に記載の装置。 63.3次元経路に対して、各々少なくとも1つの断面を有している3次元外被 構成要素と、外被構成要素の1対の端点とを定義するデータを記憶する手段を備 え、前記曲線を生成する手段が、端点の位置に応じて曲線を生成することを特徴 とする請求項62に記載の装置。 64.前記経路を定義するデータが、局所座標空間において各経路を定義するデ ータと、その経路座標空間から共通座標空間への遷移を定義するデータとを備え ることを特徴とする前出の請求項のいずれか1項に記載の装置。 65.前記遷移定義データが、各経路に対して、他の経路の座標空間への遷移を 定義するデータを備えることを特徴とする請求項64に記載の装置。 66.少なくとも基準骨格構造定義データを有している基準対象物データを記憶 する手段と、偏位した対象物部分の位置と前記基準対象物の対応する部分の位置 との差を表す対象物の偏位データを求める手段とを更に備えることを特徴とする 前出の請求項のいずれか1項に記載の装置。 67.3次元内挿を実行するために、対象物の異なるバージョンに対応する第1 及び第2の対象物の偏位データを定義する手段と、中間部分位置データを前記第 1及び第2の対象物の差から内挿することによって中間対象物データを生成する 手段とを備えていること特徴とする請求項66に記載の装置。 68.合成対象物を第1及び第2の前記偏位対象物から生成する装置において、 前記合成対象物の各点に対して、前記第1および第2の偏位対象物の部分差デー タを結合することによって、合成対象物を生成すること特徴とする請求項67に 記載の装置。
JP4500477A 1990-11-30 1991-11-29 動画作成装置 Pending JPH06503663A (ja)

Applications Claiming Priority (11)

Application Number Priority Date Filing Date Title
GB9026120.7 1990-11-30
GB909026120A GB9026120D0 (en) 1990-11-30 1990-11-30 Computer animation and graphics systems
GB9100632.0 1991-01-11
GB919100632A GB9100632D0 (en) 1991-01-11 1991-01-11 Animation system
GB9102125.3 1991-01-31
GB919102125A GB9102125D0 (en) 1991-01-31 1991-01-31 Animation system
GB9110945A GB2256118A (en) 1991-05-21 1991-05-21 Image synthesis and processing
GB9110945.4 1991-05-21
GB9117409.4 1991-08-12
GB9117409A GB2258790A (en) 1991-08-12 1991-08-12 Animation
PCT/GB1991/002122 WO1992009965A1 (en) 1990-11-30 1991-11-29 Animation

Publications (1)

Publication Number Publication Date
JPH06503663A true JPH06503663A (ja) 1994-04-21

Family

ID=27517011

Family Applications (2)

Application Number Title Priority Date Filing Date
JP4500061A Pending JPH06505817A (ja) 1990-11-30 1991-11-29 画像合成及び処理
JP4500477A Pending JPH06503663A (ja) 1990-11-30 1991-11-29 動画作成装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP4500061A Pending JPH06505817A (ja) 1990-11-30 1991-11-29 画像合成及び処理

Country Status (5)

Country Link
US (2) US5692117A (ja)
EP (3) EP0559708A1 (ja)
JP (2) JPH06505817A (ja)
AU (2) AU9015891A (ja)
WO (4) WO1992009965A1 (ja)

Families Citing this family (185)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2100893A1 (en) * 1992-08-06 1994-02-07 Michael E. Stickney Interactive computerized witness interrogation recording tool
DE69332110T2 (de) * 1992-09-21 2002-11-14 Matsushita Electric Ind Co Ltd Einblenden von graphischen Daten mit Speicherung der graphischen Parameter
JPH07146931A (ja) * 1993-03-08 1995-06-06 Canon Inf Syst Res Australia Pty Ltd 画像創成方法
GB2277856A (en) * 1993-04-05 1994-11-09 Cambridge Animation Syst Computer generating animated sequence of pictures
JP3359401B2 (ja) * 1993-12-02 2002-12-24 富士通株式会社 図形編集装置およびその方法
AU706423B2 (en) * 1994-09-13 1999-06-17 Canon Kabushiki Kaisha Edge to edge blends
DE69525117T2 (de) 1994-09-13 2002-06-27 Canon Kk Ecke-zu-Ecke-Mischung
JPH08202850A (ja) * 1995-01-26 1996-08-09 Sony Corp 紙の繊維構造データ作成方法、紙の繊維構造データ作成装置、紙の繊維構造データ、にじみ描画方法及びにじみ描画装置
CA2167237A1 (en) * 1995-02-17 1996-08-18 Steven Charles Dzik Line smoothing techniques
CN1114891C (zh) 1995-05-19 2003-07-16 世雅企业股份有限公司 图象处理装置、方法及设备
AUPN360295A0 (en) * 1995-06-16 1995-07-13 Canon Information Systems Research Australia Pty Ltd Blend control system
US6028593A (en) 1995-12-01 2000-02-22 Immersion Corporation Method and apparatus for providing simulated physical interactions within computer generated environments
JP3785700B2 (ja) * 1995-12-18 2006-06-14 ソニー株式会社 近似化方法および装置
US5854634A (en) * 1995-12-26 1998-12-29 Imax Corporation Computer-assisted animation construction system using source poses within a pose transformation space
FR2743241B1 (fr) * 1995-12-28 1998-02-13 Sagem Procede de modification de la resolution d'une image numerisee
US5764814A (en) * 1996-03-22 1998-06-09 Microsoft Corporation Representation and encoding of general arbitrary shapes
JPH09326990A (ja) * 1996-06-07 1997-12-16 Matsushita Electric Ind Co Ltd 映像編集装置
US5982389A (en) * 1996-06-17 1999-11-09 Microsoft Corporation Generating optimized motion transitions for computer animated objects
US5889532A (en) * 1996-08-02 1999-03-30 Avid Technology, Inc. Control solutions for the resolution plane of inverse kinematic chains
US6115051A (en) * 1996-08-07 2000-09-05 Adobe Systems Incorporated Arc-length reparameterization
JP3211679B2 (ja) * 1996-09-25 2001-09-25 松下電器産業株式会社 編集装置および編集方法
US5977319A (en) * 1996-10-21 1999-11-02 Cambridge Antibody Technology Limited Specific binding members for estradiol; materials and methods
US6252604B1 (en) 1997-01-10 2001-06-26 Tom Snyder Productions, Inc. Method of animating an image by squiggling the edges of image features
US7616198B2 (en) * 1998-02-20 2009-11-10 Mental Images Gmbh System and computer-implemented method for modeling the three-dimensional shape of an object by shading of a two-dimensional image of the object
US6400368B1 (en) * 1997-03-20 2002-06-04 Avid Technology, Inc. System and method for constructing and using generalized skeletons for animation models
US5999195A (en) * 1997-03-28 1999-12-07 Silicon Graphics, Inc. Automatic generation of transitions between motion cycles in an animation
US6128001A (en) * 1997-04-04 2000-10-03 Avid Technology, Inc. Methods and apparatus for changing a color of an image
CA2233380A1 (en) * 1997-04-04 1998-10-04 Microsoft Corporation Parametric function curve editing
US6351264B1 (en) * 1997-05-20 2002-02-26 Adam S. Iga Method for computer image color shading painting or recreation
JPH1118071A (ja) * 1997-06-25 1999-01-22 Nec Corp スロー再生システム
US6072502A (en) * 1997-06-25 2000-06-06 Adobe Systems Incorporated Characterization of corners of curvilinear segment
US6271864B1 (en) * 1997-06-30 2001-08-07 Sun Microsystems, Inc. Representing a path as an object with transformation capability
JP3047007B2 (ja) * 1997-09-26 2000-05-29 株式会社島精機製作所 画像処理装置
US5977965A (en) * 1997-09-29 1999-11-02 Intergraph Corporation Automatic frame accumulator
US6070167A (en) * 1997-09-29 2000-05-30 Sharp Laboratories Of America, Inc. Hierarchical method and system for object-based audiovisual descriptive tagging of images for information retrieval, editing, and manipulation
US6307576B1 (en) * 1997-10-02 2001-10-23 Maury Rosenfeld Method for automatically animating lip synchronization and facial expression of animated characters
US6119123A (en) * 1997-12-02 2000-09-12 U.S. Philips Corporation Apparatus and method for optimizing keyframe and blob retrieval and storage
US6260044B1 (en) * 1998-02-04 2001-07-10 Nugenesis Technologies Corporation Information storage and retrieval system for storing and retrieving the visual form of information from an application in a database
US6404435B1 (en) * 1998-04-03 2002-06-11 Avid Technology, Inc. Method and apparatus for three-dimensional alphanumeric character animation
WO1999052063A1 (en) * 1998-04-05 1999-10-14 Automedia Ltd. Feature motivated tracking and processing
US6240198B1 (en) * 1998-04-13 2001-05-29 Compaq Computer Corporation Method for figure tracking using 2-D registration
US6269172B1 (en) * 1998-04-13 2001-07-31 Compaq Computer Corporation Method for tracking the motion of a 3-D figure
US6256418B1 (en) 1998-04-13 2001-07-03 Compaq Computer Corporation Method and system for compressing a sequence of images including a moving figure
US6323879B1 (en) * 1998-05-14 2001-11-27 Autodesk, Inc. Method and system for determining the spacing of objects
US6317125B1 (en) 1998-06-19 2001-11-13 Interplay Entertainment Corp. Saxs video object generation engine
JP3432149B2 (ja) * 1998-07-13 2003-08-04 株式会社島精機製作所 画像処理方法とその装置
US6377259B2 (en) * 1998-07-29 2002-04-23 Inxight Software, Inc. Presenting node-link structures with modification
US7536706B1 (en) 1998-08-24 2009-05-19 Sharp Laboratories Of America, Inc. Information enhanced audio video encoding system
AUPP557898A0 (en) * 1998-08-28 1998-09-24 Canon Kabushiki Kaisha Method and apparatus for orientating a character stroke
US6535213B1 (en) * 1998-09-22 2003-03-18 Sony Corporation Curve edition system, curve-loop detecting system, curve-loop removing system
GB2342026B (en) * 1998-09-22 2003-06-11 Luvvy Ltd Graphics and image processing system
US6246419B1 (en) * 1998-09-30 2001-06-12 Xerox Corporation PDL operator overloading for line width management
US6201551B1 (en) * 1998-09-30 2001-03-13 Xerox Corporation PDL operator overloading for line width management
US6331854B1 (en) * 1998-10-05 2001-12-18 Azi International Srl Method and apparatus for accelerating animation in a video graphics system
JP3427973B2 (ja) * 1998-12-09 2003-07-22 日本電気株式会社 オブジェクト表示記述文書変換装置及びブラウザ
EP1073017A4 (en) * 1999-02-16 2003-08-13 Sega Enterprises Kk IMAGE DISPLAY DEVICE, IMAGE PROCESSING DEVICE, IMAGE DISPLAY SYSTEM
US7188353B1 (en) 1999-04-06 2007-03-06 Sharp Laboratories Of America, Inc. System for presenting synchronized HTML documents in digital television receivers
US6512522B1 (en) * 1999-04-15 2003-01-28 Avid Technology, Inc. Animation of three-dimensional characters along a path for motion video sequences
AU4458500A (en) * 1999-04-16 2000-11-02 Avid Technology, Inc. A method and apparatus for hierarchically combining regions
US6870550B1 (en) * 1999-04-26 2005-03-22 Adobe Systems Incorporated Digital Painting
US6681043B1 (en) * 1999-08-16 2004-01-20 University Of Washington Interactive video object processing environment which visually distinguishes segmented video object
US6633300B1 (en) * 1999-12-22 2003-10-14 Adobe Systems Incorporated Method and apparatus for painting groups of objects
US7082436B1 (en) 2000-01-05 2006-07-25 Nugenesis Technologies Corporation Storing and retrieving the visual form of data
GB2360919A (en) * 2000-01-20 2001-10-03 Anthropics Technology Ltd Appearance modelling
TWI282956B (en) * 2000-05-09 2007-06-21 Sharp Kk Data signal line drive circuit, and image display device incorporating the same
US7647340B2 (en) 2000-06-28 2010-01-12 Sharp Laboratories Of America, Inc. Metadata in JPEG 2000 file format
US7079158B2 (en) * 2000-08-31 2006-07-18 Beautyriot.Com, Inc. Virtual makeover system and method
EP1187066A3 (en) * 2000-09-01 2004-04-21 Sony Computer Entertainment Inc. Method and apparatus for image enlargement/reduction
AU2001292202A1 (en) * 2000-09-19 2002-04-02 Technion Research And Development Foundation Ltd. Method and apparatus for shape deformation and placement
US7006694B1 (en) * 2000-10-05 2006-02-28 Coreco Imaging, Inc. System and method for pattern identification
EP1207498A3 (en) * 2000-11-15 2003-10-15 Sega Corporation Display object generation method in information processing equipment
US6765589B1 (en) * 2000-11-16 2004-07-20 Adobe Systems Incorporated Brush for warping and water reflection effects
EP1423978A2 (en) * 2000-12-22 2004-06-02 Anthropics Technology Limited Video warping system
EP1518211A2 (en) * 2000-12-22 2005-03-30 Anthropics Technology Limited Image processing system
GB2370709A (en) * 2000-12-28 2002-07-03 Nokia Mobile Phones Ltd Displaying an image and associated visual effect
NO313477B1 (no) * 2001-01-08 2002-10-07 Simsurgery As Fremgangsmåte og system for å simulere en tråd i datamaskinbaserte grafiske simuleringer
US9781408B1 (en) 2001-01-23 2017-10-03 Visual Effect Innovations, Llc Faster state transitioning for continuous adjustable 3Deeps filter spectacles using multi-layered variable tint materials
US8750382B2 (en) 2001-01-23 2014-06-10 Kenneth Martin Jacobs System and method for calculating 3Deeps action specs motion estimation from the motion vectors in an MPEG file
US10742965B2 (en) 2001-01-23 2020-08-11 Visual Effect Innovations, Llc Faster state transitioning for continuous adjustable 3Deeps filter spectacles using multi-layered variable tint materials
US20020130872A1 (en) * 2001-03-15 2002-09-19 Elena Novikova Methods and systems for conflict resolution, summation, and conversion of function curves
US6963350B1 (en) * 2001-07-03 2005-11-08 Adobe Systems Incorporated Painting interface to computer drawing system curve editing
KR20010113584A (ko) * 2001-11-08 2001-12-28 (주)시스튜디오 컴퓨터에 의한 만화 애니메이션 구현방법 및 만화애니메이션 실행데이터를 기록한 컴퓨터로 읽을 수 있는기록매체
JP4002502B2 (ja) * 2001-11-27 2007-11-07 三星電子株式会社 座標インタポレータの符号化/復号化装置及びその方法
KR100480787B1 (ko) * 2001-11-27 2005-04-07 삼성전자주식회사 좌표 인터폴레이터의 키 값 데이터 부호화/복호화 방법 및 장치
US7026960B2 (en) * 2001-11-27 2006-04-11 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding key data
KR100426313B1 (ko) * 2001-12-28 2004-04-06 한국전자통신연구원 영상 제작에서 관절형 객체 자세 변경 방법
AU2003200347C1 (en) * 2002-02-07 2005-04-21 Canon Kabushiki Kaisha A Method for Stroking Flattened Paths
US7199805B1 (en) * 2002-05-28 2007-04-03 Apple Computer, Inc. Method and apparatus for titling
US6822653B2 (en) * 2002-06-28 2004-11-23 Microsoft Corporation Methods and system for general skinning via hardware accelerators
US6970169B1 (en) 2002-09-24 2005-11-29 Adobe Systems Incorporated Digitally synthesizing seamless texture having random variations
US7809204B2 (en) 2002-10-18 2010-10-05 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding key value data of coordinate interpolator
US7319764B1 (en) * 2003-01-06 2008-01-15 Apple Inc. Method and apparatus for controlling volume
AU2003900809A0 (en) * 2003-02-24 2003-03-13 Aristocrat Technologies Australia Pty Ltd Gaming machine transitions
US7333111B2 (en) * 2003-04-25 2008-02-19 Honda Giken Kogyo Kabushiki Kaisha Joint component framework for modeling complex joint behavior
US7164423B1 (en) * 2003-04-30 2007-01-16 Apple Computer, Inc. Method and apparatus for providing an animated representation of a reorder operation
US7259764B2 (en) * 2003-05-14 2007-08-21 Pixar Defrobulated angles for character joint representation
WO2004111819A1 (en) 2003-06-09 2004-12-23 Immersion Corporation Interactive gaming systems with haptic feedback
US7372464B2 (en) * 2003-07-21 2008-05-13 Autodesk, Inc. Processing image data
US7317457B2 (en) * 2003-07-21 2008-01-08 Autodesk, Inc. Processing image data
US7164410B2 (en) * 2003-07-28 2007-01-16 Sig G. Kupka Manipulating an on-screen object using zones surrounding the object
GB2406028A (en) * 2003-09-11 2005-03-16 Autodesk Canada Inc Tangent handle adjustment for Bezier curves
US7593015B2 (en) * 2003-11-14 2009-09-22 Kyocera Wireless Corp. System and method for sequencing media objects
US8237712B2 (en) * 2004-03-18 2012-08-07 Apple Inc. Manipulation of image content using various image representations
US8121338B2 (en) * 2004-07-07 2012-02-21 Directsmile Gmbh Process for generating images with realistic text insertion
US20060093309A1 (en) * 2004-10-05 2006-05-04 Magix Ag System and method for creating a photo movie
US7376894B2 (en) * 2004-11-18 2008-05-20 Microsoft Corporation Vector path merging into gradient elements
US20060130679A1 (en) 2004-12-20 2006-06-22 Dubois Radford E Iii Automated cutting system for customized field stencils
US7920144B2 (en) * 2005-01-18 2011-04-05 Siemens Medical Solutions Usa, Inc. Method and system for visualization of dynamic three-dimensional virtual objects
JP4866013B2 (ja) * 2005-03-31 2012-02-01 富士通株式会社 文字画像生成プログラム、そのシステム、及びその方法
US7830384B1 (en) * 2005-04-27 2010-11-09 Image Metrics Limited Animating graphical objects using input video
US8260056B2 (en) * 2005-08-19 2012-09-04 Telefonaktiebolaget Lm Ericsson (Publ) Resizing video and aligning video image edges to block boundaries and picture boundaries
US20070091112A1 (en) * 2005-10-20 2007-04-26 Pfrehm Patrick L Method system and program for time based opacity in plots
US7782324B2 (en) * 2005-11-23 2010-08-24 Dreamworks Animation Llc Non-hierarchical unchained kinematic rigging technique and system for animation
JP5111772B2 (ja) * 2006-03-24 2013-01-09 株式会社沖データ 印刷装置
US8281281B1 (en) * 2006-06-07 2012-10-02 Pixar Setting level of detail transition points
US7965294B1 (en) * 2006-06-09 2011-06-21 Pixar Key frame animation with path-based motion
US8902233B1 (en) 2006-06-09 2014-12-02 Pixar Driving systems extension
US8147315B2 (en) * 2006-09-12 2012-04-03 Aristocrat Technologies Australia Ltd Gaming apparatus with persistent game attributes
US8081187B2 (en) * 2006-11-22 2011-12-20 Autodesk, Inc. Pencil strokes for vector based drawing elements
US7697002B2 (en) * 2007-01-25 2010-04-13 Ricoh Co. Ltd. Varying hand-drawn line width for display
US7884834B2 (en) * 2007-04-13 2011-02-08 Apple Inc. In-context paint stroke characteristic adjustment
US20080291212A1 (en) * 2007-05-23 2008-11-27 Dean Robert Gary Anderson As Trustee Of D/L Anderson Family Trust Software for creating engraved images
US20080310747A1 (en) * 2007-05-23 2008-12-18 Dean Robert Gary Anderson As Trustee Of D/L Anderson Family Trust Software for creating engraved images
KR100917887B1 (ko) * 2007-06-11 2009-09-16 삼성전자주식회사 라인 가속 기능을 지원하는 그래픽 처리 방법 및 장치
US8000529B2 (en) * 2007-07-11 2011-08-16 Hewlett-Packard Development Company, L.P. System and method for creating an editable template from a document image
US20090058863A1 (en) * 2007-09-04 2009-03-05 Apple Inc. Image animation with transitional images
US20090079743A1 (en) * 2007-09-20 2009-03-26 Flowplay, Inc. Displaying animation of graphic object in environments lacking 3d redndering capability
US8310483B2 (en) * 2007-11-20 2012-11-13 Dreamworks Animation Llc Tinting a surface to simulate a visual effect in a computer generated scene
US8134558B1 (en) 2007-12-06 2012-03-13 Adobe Systems Incorporated Systems and methods for editing of a computer-generated animation across a plurality of keyframe pairs
US8253728B1 (en) * 2008-02-25 2012-08-28 Lucasfilm Entertainment Company Ltd. Reconstituting 3D scenes for retakes
US20090284532A1 (en) * 2008-05-16 2009-11-19 Apple Inc. Cursor motion blurring
US20090295791A1 (en) * 2008-05-29 2009-12-03 Microsoft Corporation Three-dimensional environment created from video
JP4561883B2 (ja) * 2008-06-19 2010-10-13 コニカミノルタビジネステクノロジーズ株式会社 画像形成装置、プログラム及び画像形成処理方法
US8788963B2 (en) * 2008-10-15 2014-07-22 Apple Inc. Scrollable preview of content
DE102008057512A1 (de) * 2008-11-15 2010-07-01 Diehl Aerospace Gmbh Verfahren zur Darstellung von Linienzügen
WO2010083272A1 (en) * 2009-01-15 2010-07-22 Simquest Llc Interactive simulation of biological tissue
US20120026174A1 (en) * 2009-04-27 2012-02-02 Sonoma Data Solution, Llc Method and Apparatus for Character Animation
US8543921B2 (en) * 2009-04-30 2013-09-24 Apple Inc. Editing key-indexed geometries in media editing applications
US8566721B2 (en) * 2009-04-30 2013-10-22 Apple Inc. Editing key-indexed graphs in media editing applications
KR101080255B1 (ko) * 2009-07-21 2011-11-08 (주)펜앤프리 필기 패턴에 따른 필기 정보 입력 장치 및 필기 정보 입력 방법
US9672646B2 (en) * 2009-08-28 2017-06-06 Adobe Systems Incorporated System and method for image editing using visual rewind operation
JP5476103B2 (ja) * 2009-11-27 2014-04-23 富士フイルム株式会社 ページ記述データ処理装置、方法及びプログラム
US20110276891A1 (en) * 2010-05-06 2011-11-10 Marc Ecko Virtual art environment
US8860734B2 (en) 2010-05-12 2014-10-14 Wms Gaming, Inc. Wagering game object animation
JP5494337B2 (ja) 2010-07-30 2014-05-14 ソニー株式会社 情報処理装置、情報処理方法及び情報処理プログラム
JP5552947B2 (ja) * 2010-07-30 2014-07-16 ソニー株式会社 情報処理装置、表示制御方法及び表示制御プログラム
US9305398B2 (en) * 2010-10-08 2016-04-05 City University Of Hong Kong Methods for creating and displaying two and three dimensional images on a digital canvas
US8861890B2 (en) * 2010-11-24 2014-10-14 Douglas Alan Lefler System and method for assembling and displaying individual images as a continuous image
US8988461B1 (en) 2011-01-18 2015-03-24 Disney Enterprises, Inc. 3D drawing and painting system with a 3D scalar field
US9142056B1 (en) * 2011-05-18 2015-09-22 Disney Enterprises, Inc. Mixed-order compositing for images having three-dimensional painting effects
JP5741282B2 (ja) * 2011-07-26 2015-07-01 カシオ計算機株式会社 画像処理装置及び画像処理方法、並びにプログラム
US8907957B2 (en) 2011-08-30 2014-12-09 Apple Inc. Automatic animation generation
US9164576B2 (en) 2011-09-13 2015-10-20 Apple Inc. Conformance protocol for heterogeneous abstractions for defining user interface behaviors
US8819567B2 (en) 2011-09-13 2014-08-26 Apple Inc. Defining and editing user interface behaviors
US9478058B2 (en) * 2012-08-06 2016-10-25 CELSYS, Inc. Object correcting apparatus and method and computer-readable recording medium
US8947216B2 (en) * 2012-11-02 2015-02-03 Immersion Corporation Encoding dynamic haptic effects
US9898084B2 (en) 2012-12-10 2018-02-20 Immersion Corporation Enhanced dynamic haptic effects
US20140198080A1 (en) * 2013-01-11 2014-07-17 Research In Motion Limited Method and Apparatus Pertaining to Pre-Associated Stylus-Input User Preferences
JP6472171B2 (ja) * 2013-08-27 2019-02-20 キヤノン株式会社 画像処理装置およびその方法
US8980273B1 (en) 2014-07-15 2015-03-17 Kymab Limited Method of treating atopic dermatitis or asthma using antibody to IL4RA
US8986691B1 (en) 2014-07-15 2015-03-24 Kymab Limited Method of treating atopic dermatitis or asthma using antibody to IL4RA
JP6307873B2 (ja) * 2013-12-24 2018-04-11 富士通株式会社 対象線検出装置、方法、及びプログラム
USD906348S1 (en) * 2014-11-26 2020-12-29 Intergraph Corporation Computer display screen or portion thereof with graphic
US10089291B2 (en) * 2015-02-27 2018-10-02 Microsoft Technology Licensing, Llc Ink stroke editing and manipulation
US9792723B2 (en) * 2015-04-07 2017-10-17 Disney Enterprises, Inc. Method and system for progressively sculpting three-dimensional geometry
WO2016172506A1 (en) 2015-04-23 2016-10-27 Hasbro, Inc. Context-aware digital play
US9740310B2 (en) * 2015-05-22 2017-08-22 Adobe Systems Incorporated Intuitive control of pressure-sensitive stroke attributes
US9741133B2 (en) * 2015-09-29 2017-08-22 Adobe Systems Incorporated Identifying shapes in an image by comparing Bézier curves
US20170236318A1 (en) * 2016-02-15 2017-08-17 Microsoft Technology Licensing, Llc Animated Digital Ink
JP6062589B1 (ja) 2016-04-28 2017-01-18 株式会社Live2D プログラム、情報処理装置、影響度導出方法、画像生成方法及び記録媒体
US10299750B2 (en) * 2016-08-05 2019-05-28 Toshiba Medical Systems Corporation Medical image processing apparatus and X-ray CT apparatus
CN106476479B (zh) * 2016-09-20 2017-10-17 北京理工大学 一种支持手绘和svg文件导入的可变绘图比例绘图小车
JP6930091B2 (ja) * 2016-11-15 2021-09-01 富士フイルムビジネスイノベーション株式会社 画像処理装置、画像処理方法、画像処理システムおよびプログラム
WO2018115469A1 (en) * 2016-12-22 2018-06-28 Episurf Ip-Management Ab System and method for optimizing an implant position in an anatomical joint
US10712840B2 (en) * 2017-10-13 2020-07-14 Dell Products L.P. Active pen system
US10424086B2 (en) 2017-11-16 2019-09-24 Adobe Inc. Oil painting stroke simulation using neural network
US10510186B2 (en) 2017-12-22 2019-12-17 Adobe Inc. Digital media environment for intuitive modifications of digital graphics
US10388045B2 (en) 2018-01-04 2019-08-20 Adobe Inc. Generating a triangle mesh for an image represented by curves
BR102018004967A2 (pt) * 2018-03-13 2019-10-01 Samsung Eletrônica da Amazônia Ltda. Método para processar o movimento de ponteiros virtuais
US10410317B1 (en) * 2018-03-26 2019-09-10 Adobe Inc. Digital image transformation environment using spline handles
RU2702498C1 (ru) * 2018-05-15 2019-10-08 Юрий Александрович Акименко Способ преобразования основных видов в комплекты аксонометрических видов
US10832446B2 (en) 2019-01-07 2020-11-10 Adobe Inc. Bone handle generation
US10943375B2 (en) 2019-04-17 2021-03-09 Adobe Inc. Multi-state vector graphics
US11630504B2 (en) * 2021-03-16 2023-04-18 Htc Corporation Handheld input device and electronic system
US11631207B2 (en) 2021-09-09 2023-04-18 Adobe Inc. Vector object stylization from raster objects

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5837543A (ja) * 1981-08-31 1983-03-04 Meidensha Electric Mfg Co Ltd エポキシ樹脂中の硬化剤の分析方法
US4582520A (en) * 1982-09-30 1986-04-15 Owens-Corning Fiberglas Corporation Methods and apparatus for measuring and controlling curing of polymeric materials
JPS62103540A (ja) * 1985-10-30 1987-05-14 Mitsubishi Heavy Ind Ltd 有機系接着剤の硬化時間の測定方法

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3364382A (en) * 1967-01-03 1968-01-16 Control Image Corp Automatic generation and display of animated figures
BE793543A (fr) * 1971-12-30 1973-04-16 Ibm Methodes de codage de position de mecanismes
US3898438A (en) * 1972-09-28 1975-08-05 Walt Disney Prod Programmable method for digital animation apparatus for assembling animation data
GB1437795A (en) * 1973-07-04 1976-06-03 Computer Image Corp Digitally controlled computer animation generating system
US4189744A (en) * 1976-12-20 1980-02-19 New York Institute Of Technology Apparatus for generating signals representing operator-selected portions of a scene
US4189743A (en) * 1976-12-20 1980-02-19 New York Institute Of Technology Apparatus and method for automatic coloration and/or shading of images
DE2806820C2 (de) * 1978-02-17 1982-02-25 Messerschmitt-Bölkow-Blohm GmbH, 8000 München Verfahren zum synthetischen Generieren von Trickfilmen
NL8300872A (nl) * 1983-03-10 1984-10-01 Philips Nv Multiprocessor-rekenmachinesysteem voor het tot een gekleurde afbeelding verwerken van in een hierarchische datastruktuur gedefinieerde objekt-elementen.
US4600919A (en) * 1982-08-03 1986-07-15 New York Institute Of Technology Three dimensional animation
US4620287A (en) * 1983-01-20 1986-10-28 Dicomed Corporation Method and apparatus for representation of a curve of uniform width
US4646075A (en) * 1983-11-03 1987-02-24 Robert Bosch Corporation System and method for a data processing pipeline
US4739317A (en) * 1984-03-30 1988-04-19 International Business Machines Corporation Draw graphics capabilities
US4683468A (en) * 1985-03-11 1987-07-28 International Business Machines Corp. Method for manipulation of graphic sub-objects in an interactive draw graphic system
US4764763A (en) * 1985-12-13 1988-08-16 The Ohio Art Company Electronic sketching device
EP0246340A1 (de) * 1986-05-17 1987-11-25 Andreas Dipl.-Math. Wetjen Verfahren zur Simulation der Bewegungen von menschlichen Körpermodellen
US4760548A (en) * 1986-06-13 1988-07-26 International Business Machines Corporation Method and apparatus for producing a curve image
JPH0785271B2 (ja) * 1986-06-27 1995-09-13 株式会社日立製作所 形状モデリング方法
JPS63109581A (ja) * 1986-10-27 1988-05-14 Video Toron Kk アニメ−シヨン画像処理装置
JPH0743774B2 (ja) * 1986-12-05 1995-05-15 富士通株式会社 アニメーション作成処理装置
US4897638A (en) * 1987-02-27 1990-01-30 Hitachi, Ltd. Method for generating character patterns with controlled size and thickness
AU2999189A (en) * 1988-02-15 1989-08-17 Information Concepts Pty. Ltd. Electronic drawing tools
SE8801043D0 (sv) * 1988-03-22 1988-03-22 Orjan Strandberg Genimator
EP0342752B1 (en) * 1988-05-20 1997-08-06 Koninklijke Philips Electronics N.V. A computer method and an aparatus for generating a display picture representing a set of object elements including a brush object element
DE3821322A1 (de) * 1988-06-24 1990-01-04 Rolf Prof Dr Walter Verfahren zur steuerung einer grafischen ausgabevorrichtung
US5025394A (en) * 1988-09-09 1991-06-18 New York Institute Of Technology Method and apparatus for generating animated images
US4952051A (en) * 1988-09-27 1990-08-28 Lovell Douglas C Method and apparatus for producing animated drawings and in-between drawings
CA1329433C (en) * 1988-10-24 1994-05-10 Lemuel L. Davis Computer animation production system
US5233671A (en) * 1989-02-22 1993-08-03 Ricoh Company Ltd. Image coding method for coding characters using a modified Bezier curve
US5155805A (en) * 1989-05-08 1992-10-13 Apple Computer, Inc. Method and apparatus for moving control points in displaying digital typeface on raster output devices
US5214758A (en) * 1989-11-14 1993-05-25 Sony Corporation Animation producing apparatus
US5155813A (en) * 1990-01-08 1992-10-13 Wang Laboratories, Inc. Computer apparatus for brush styled writing
BE1004117A5 (fr) * 1990-04-20 1992-09-29 Neurones Procede et dispositif de memorisation et d'animation de donnees.
US5416899A (en) * 1992-01-13 1995-05-16 Massachusetts Institute Of Technology Memory based method and apparatus for computer graphics

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5837543A (ja) * 1981-08-31 1983-03-04 Meidensha Electric Mfg Co Ltd エポキシ樹脂中の硬化剤の分析方法
US4582520A (en) * 1982-09-30 1986-04-15 Owens-Corning Fiberglas Corporation Methods and apparatus for measuring and controlling curing of polymeric materials
JPS62103540A (ja) * 1985-10-30 1987-05-14 Mitsubishi Heavy Ind Ltd 有機系接着剤の硬化時間の測定方法

Also Published As

Publication number Publication date
US5692117A (en) 1997-11-25
AU8932191A (en) 1992-06-25
WO1992009966A1 (en) 1992-06-11
EP0585298A1 (en) 1994-03-09
EP0559714A1 (en) 1993-09-15
WO1992009965A1 (en) 1992-06-11
JPH06505817A (ja) 1994-06-30
WO1992021096A1 (en) 1992-11-26
WO1992021095A1 (en) 1992-11-26
EP0559708A1 (en) 1993-09-15
US5611036A (en) 1997-03-11
AU9015891A (en) 1992-06-25

Similar Documents

Publication Publication Date Title
JPH06503663A (ja) 動画作成装置
US5619628A (en) 3-Dimensional animation generating apparatus
US8698809B2 (en) Creation and rendering of hierarchical digital multimedia data
JPH06507742A (ja) 動画作成装置
JP3954211B2 (ja) 三次元シーンにおける形状及び模様の復元方法及び装置
EP0950988B1 (en) Three-Dimensional image generating apparatus
US6208360B1 (en) Method and apparatus for graffiti animation
US20110102424A1 (en) Storyboard generation method and system
US20080018665A1 (en) System and method for visualizing drawing style layer combinations
KR20020054243A (ko) 다중 영상을 이용한 대화형 모델 생성 장치 및 그 방법
JPH10255081A (ja) 画像処理方法及び画像処理装置
US8358311B1 (en) Interpolation between model poses using inverse kinematics
US11625900B2 (en) Broker for instancing
GB2258790A (en) Animation
Akeo et al. Computer Graphics System for Reproducing Three‐Dimensional Shape from Idea Sketch
JP2832463B2 (ja) 3次元モデルの再構成方法および表示方法
US11393180B2 (en) Applying non-destructive edits to nested instances for efficient rendering
US8228335B1 (en) Snapsheet animation visualization
US20040164982A1 (en) Method and apparatus for editing three-dimensional model, and computer readable medium
JP2003158710A (ja) 映像オブジェクト編集装置及び映像オブジェクト編集プログラム
JP3268665B2 (ja) コンピュータ・グラフィックス制作装置
JPH10111934A (ja) 3次元形状モデル作成方法及び媒体
US20230196702A1 (en) Object Deformation with Bindings and Deformers Interpolated from Key Poses
JPH0773342A (ja) 画像生成装置
Fei et al. 3d animation creation using space canvases for free-hand drawing