JPH0785315A - 三次元形状データ変形処理方法およびアニメーション作成方法 - Google Patents

三次元形状データ変形処理方法およびアニメーション作成方法

Info

Publication number
JPH0785315A
JPH0785315A JP5187041A JP18704193A JPH0785315A JP H0785315 A JPH0785315 A JP H0785315A JP 5187041 A JP5187041 A JP 5187041A JP 18704193 A JP18704193 A JP 18704193A JP H0785315 A JPH0785315 A JP H0785315A
Authority
JP
Japan
Prior art keywords
data
deformation
dimensional shape
sets
transformation
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
JP5187041A
Other languages
English (en)
Inventor
Kiyoshi Arai
清志 新井
Tsuneya Kurihara
恒弥 栗原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP5187041A priority Critical patent/JPH0785315A/ja
Publication of JPH0785315A publication Critical patent/JPH0785315A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

(57)【要約】 【目的】全体的な変形と局所的な変形を組み合わせた変
形をリアルタイムで行なうことができる三次元形状デー
タ変形処理方法を提供することを目的とする。また、そ
のような三次元形状データ変形処理方法を用いてアニメ
ーションを容易に作成することができるアニメーション
作成方法を提供することを目的とする。 【構成】三次元形状を構成する各点の三次元空間上での
移動量を表す全体的変形データを少なくとも2組以上入
力し、該三次元形状を二次元に展開して得られる二次元
パラメータ空間上での各点の移動量を表す局所的変形デ
ータを少なくとも2組以上入力し、該複数組の全体的変
形データと該複数組の局所的変形データとを組み合わせ
て複数組の複合変形データを作成し、該複数組の複合変
形データの加重平均を算出することにより、変形後の三
次元形状データを得るようにする。 【効果】全体的な変形と局所的な変形を組み合わせた変
形をリアルタイムで行なうことが可能となる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、計算機上に保持された
三次元形状データによって定義される三次元形状を変形
処理する方法に関し、特に全体的な変形と局所的な変形
を組み合わせた変形をリアルタイムで行なう場合に用い
て好適な三次元形状データ変形処理方法およびそのよう
な変形処理方法を適用したアニメーション作成方法に関
する。
【0002】
【従来の技術】コンピュータグラフィックスの分野にお
いては、計算機上に保持された三次元形状データによっ
て表された三次元物体の形状を、対話的に変形処理する
場合がある。この場合、全体的(グローバル)な変形と
局所的(ローカル)な変形を組み合わせた変形を行なう
ことが多い。例えば、計算機上の三次元顔モデル(人間
や動物の顔を三次元形状データで表したモデル)を変形
する場合には、顔の人相を変更するために全体的な変形
が、顔の表情を変更するために局所的な変形が、それぞ
れ、用いられる。
【0003】全体的な変形を行なう方法としては、三次
元形状を構成する各点に対して、三次元空間上での移動
量を与える方法があった。この方法は、物体の変形を表
現する最も直接的で簡単な方法であり、多くの三次元コ
ンピュータアニメーションの中で用いられている。
【0004】局所的な変形を行なう方法として、特開平
4−24876号公報に開示された技術がある。これ
は、三次元形状を二次元に展開して得られる二次元パラ
メータ空間上で、三次元形状を構成する各点の移動量を
与えることにより、局所的な変形を実現する方法であ
る。この方法は、特に三次元顔モデルの表情を表現する
場合に用いて好適な方法である。
【0005】一方、このような変形方法を用いて計算機
上に作成した三次元形状データを用いてアニメーション
を作成することができる。従来は、変形した三次元形状
を駒撮りしていくことによりアニメーションを作成する
のが一般的であった。
【0006】
【発明が解決しようとする課題】ところが、全体的な変
形と局所的な変形を各々独立に計算し、計算結果を足し
合わせても、ユーザの意図する変形結果にはならない。
例えば、三次元顔モデルにおいて、別の人相の顔(全体
的な変形)に同じ表情(局所的な変形)を付す場合、人
相が別であると、その人相ごとに局所的な変形を行なわ
なければならない。言い替えると、全体的な変形を変更
するたびに、局所的な変形の計算をやり直す必要があっ
た。
【0007】このため、全体的な変形および局所的な変
形を変更するためには、多くの計算が必要であり、この
変更をリアルタイムで行なうことは困難であった。上述
の三次元顔モデルを扱う場合においては、人相が変更さ
れるたびに表情の計算をやり直す必要があり、人相と表
情の両方の変更をリアルタイムで行なうことは困難であ
った。
【0008】本発明の目的は、三次元形状データに対
し、全体的な変形と局所的な変形を組み合わせた変形を
リアルタイムで行なうことができる三次元形状データ変
形処理方法を提供することにある。また、本発明の目的
は、そのような三次元形状データ変形処理方法を用いて
アニメーションを容易に作成することができるアニメー
ション作成方法を提供することにある。
【0009】
【課題を解決するための手段】上記目的を達成するた
め、本発明は、計算機上に保持された三次元形状データ
によって定義される三次元形状を変形して、変形後の三
次元形状データを生成する三次元形状データ変形処理方
法であって、三次元形状を構成する各点の三次元空間上
での移動量を表す全体的変形データを少なくとも2組以
上入力するステップと、該三次元形状を二次元に展開し
て得られる二次元パラメータ空間上での各点の移動量を
表す局所的変形データを少なくとも2組以上入力するス
テップと、該複数組の全体的変形データと、該複数組の
局所的変形データとを組み合わせて、複数組の複合変形
データを作成するステップと、該複数組の複合変形デー
タの加重平均を算出することにより、変形後の三次元形
状データを得るステップとを備えたことを特徴とする。
【0010】二次元パラメータ空間は、三次元形状を構
成する各点の位置を円柱座標または極座標で表わし、該
円柱座標または極座標の半径成分を捨てて二次元に展開
することによって得られる平面を用いればよい。
【0011】局所的変形データは、三次元形状を構成す
る各点の二次元パラメータ空間上での移動先の位置を、
二次元パラメータ空間上の他の点の位置の線形内挿によ
って表現するのがよい。また、三次元形状を構成する各
点の二次元パラメータ空間上での移動先の位置を、二次
元パラメータ空間上に設けた所定の制御点の位置の線形
内挿によって表現するようにしてもよい。
【0012】全体的変形データをK組入力し、局所的変
形データをL組入力した場合は、複合変形データをK×
L通り作成するとよい。また、複数組の複合変形データ
の加重平均を算出する際の各複合変形データの重みは、
ユーザが入力できるようになっているのがよい。複合変
形データの重みは、複数組の全体的変形データのそれぞ
れに対する重み、および複数組の局所的変形データのそ
れぞれに対する重みに分かれているのが便宜である。
【0013】さらに、変形後の三次元形状データを得た
後に、新たな全体的変形データや局所変形データを入力
したときには、連続的に変形の調節がなされるようにす
る。
【0014】このような本発明の三次元形状データ変形
処理方法を用いて、計算機上に三次元形状データを生成
し、該形状データを変形していけば、簡単にアニメーシ
ョンのデータを作成することができる。特に、複合変形
データの加重平均を算出する際に用いる重みを徐々に変
化させ、それに応じて変形していく一連の三次元形状デ
ータを作成し、これら一連の三次元形状データを用いて
アニメーションを作成するのがよい。
【0015】本発明の三次元形状データ変形処理方法を
用いて、顔モデルとしての三次元形状データを作成・変
形し、種々の人相および表情を表すアニメーションを作
成することもできる。この場合、顔モデルの人相は全体
的変形データで定義し、顔モデルの表情は局所的変形デ
ータで定義するのがよい。
【0016】
【作用】複数組の全体的変形データと複数組の局所的変
形データとを組み合わせて複数組の複合変形データを作
成し、それらの複合変形データの加重平均を算出するこ
とにより三次元形状データを得るので、全体的な変形と
局所的な変形の代表的な組み合わせをあらかじめ計算し
ておくことができる。
【0017】また、局所的変形データとして線形内挿に
よる表現を用いることにより、局所的変形データを全体
的な変形に依存しない形式で保持できる。
【0018】さらに、複合変形データの加重平均の算出
は、あらかじめ計算された複合変形データを足し合わせ
る割合を変えるだけで全体的な変形および局所的な変形
の調節を行なうものであり、計算機上で非常に早く行な
える。以上により、全体的な変形と局所的な変形を組み
合わせた変形の計算量が削減され、三次元物体形状の変
形をリアルタイムで行なうことが可能となる。
【0019】
【実施例】以下、図面を用いて、本発明の実施例を説明
する。
【0020】図1は、本発明の一実施例に係る三次元形
状データ変形処理の概念の説明図である。まず、図1を
参照して、本実施例の三次元形状データ変形処理方法の
概要を説明する。
【0021】図1において、M1 (102 )およびM2
(103 )は、本発明の方法で用いる2種類の変形のうち
の全体的な変形を表す。M1 (102 )およびM2 (103
)は、具体的には、三次元物体を構成する点とそれら
を結ぶポリゴンのデータからなり、三次元物体形状を表
している。これらは、例えば、三次元顔モデルにおい
て、別々の人相を表すための全体的な頭部の形状を表す
と考えてよい。
【0022】S(101 )は、三次元物体形状Mi (102,
103 )を二次元に展開した二次元パラメータ空間を示
す。本実施例の三次元形状データ変形処理方法において
は、この図に示すように、二次元パラメータ空間S(10
1 )を三次元物体形状Mi (i=1,2,... )(102,103 )
と対応させて用いる。すなわち、二次元パラメータ空間
S上の点およびポリゴンと、三次元物体形状Mi 上の点
およびポリゴンとは、1対1に対応している。例えば、
二次元パラメータ空間S上の点P0 (111 )は、三次元
物体形状M1 上の点P1 (121 )および三次元物体形状
M2 上の点P2 (131 )に対応する。
【0023】二次元パラメータ空間S上の点の移動によ
り、本発明の方法で用いる2種類の変形のうちの局所的
な変形が実現される。例えば、三次元顔モデルにおいて
別々の表情を表すための局所的な変形は、二次元パラメ
ータ空間S上の点の移動により表される。
【0024】局所的な変形についてさらに説明する。二
次元パラメータ空間S(101 )上の点P0 (111 )に
は、点P0 の移動量を表わすベクトル(112,115 )が与
えられる。このベクトルによって、点P0 の移動先P0i
(i=1,2,... )(113,116 )が決まる。図1では、点P
0 の移動先が2つ(P01,P02)例示されている。移動
先P0i(113,116 )は、それぞれ、二次元パラメータ空
間S上のポリゴンの中の1つに含まれ、P0iとそれを含
むポリゴンとの関係は、三次元物体形状Mi 上でも保持
される。
【0025】例えば、点P0 (111 )の移動量を表わす
ベクトル112 は、三次元物体形状M1 (102 )上ではベ
クトル122 、三次元物体形状M2 (103 )上ではベクト
ル132 となり、移動先P01(113 )とそれを含むポリゴ
ン114 は、三次元物体形状M1 上では点P11(123 )と
ポリゴン124 、三次元物体形状M2 上では点P21(133
)とポリゴン134 となる。同様にして、点P0 の移動
量を表わすベクトル115は、三次元物体形状M1 上では
ベクトル125 、三次元物体形状M2 上ではベクトル135
となり、移動先P02(116 )とそれを含むポリゴン117
は、三次元物体形状M1 上では点P12(126 )とポリゴ
ン127 、三次元物体形状M2 上では点P22(136 )とポ
リゴン137 となる。
【0026】局所的な変形のデータは、二次元パラメー
タ空間S(101 )上のすべての点に対して、その点の移
動を定義するベクトル112 やベクトル115 などのベクト
ルを与えることにより構成される。すなわち、二次元パ
ラメータ空間S(101 )上のすべての点に対するこのよ
うなベクトルの集合により、局所的な変形のデータが構
成される。
【0027】上述したように、三次元顔モデルでは、全
体的な変形データが人相を表し、局所的な変形データが
表情を表す。このとき、ある人相と別の人相との中間の
人相を実現するため、2組の全体的な変形データの中間
の変形データが必要な場合がある。同様に、ある表情と
別の表情との中間の表情を実現するため、2組の局所的
な変形データの中間の変形データが必要な場合がある。
このような中間の変形データを得るため、本実施例で
は、少なくとも2組の全体的変形データと2組の局所的
変形データを組み合わせる。
【0028】M(104 )は、三次元物体形状の変形結果
を示す。M(104 )上で、点P11(123 )は、全体的変
形M1 と局所的変形122 を組み合わせた結果である点P
0 の移動先を示す。同様に、点P12(126 )は全体的変
形M1 と局所的変形115 を組み合わせた結果の移動先、
点P21(133 )は全体的変形M2 と局所的変形122 を組
み合わせた結果の移動先、点P22(136 )は全体的変形
M2 と局所的変形115を組み合わせた結果の移動先、を
それぞれ示す。
【0029】最終的に、三次元物体形状の変形結果M
(104 )における点P0 の移動先P(141 )は、Mi
(i=1,2,... )(102,103 )上における移動先Pij(i=
1,2,...,j=1,2,... )(123,126,133,136 )の加重平均
によって決定される。
【0030】以下、本実施例における処理の詳細につい
て説明する。
【0031】[1]処理の流れ 図2は、本実施例における処理の流れを示す。全体的な
変形を表すデータを全体的変形データと呼ぶ。三次元顔
モデルを扱う場合において、全体的変形データは、図8
の810,820,830 のような顔の人相を表すものである。図
2において、データ201 は複数の全体的変形データの集
合である。
【0032】局所的な変形を表すデータを局所的変形デ
ータと呼ぶ。三次元顔モデルを扱う場合において、局所
的変形データは、図8の801,802,803 のような顔の表情
を表すものである。図2において、データ202 は複数の
局所的変形データの集合である。
【0033】まず、全体的変形データの選択処理(211
)によって、全体的変形データ201の中からK組の全体
的変形データを選び出す。また、局所的変形データの選
択処理(212 )によって、局所的変形データ202 の中か
らL組の局所的変形データを選び出す。選ばれたK組の
全体的変形データとL組の局所的変形データの集合をデ
ータ203 とする。
【0034】ここで、選択処理とは、具体的には、特定
の全体的変形データ名または局所的変形データ名をユー
ザが入力し、該当するデータを集めることによってデー
タ203 を得る処理である。
【0035】次に、全体的変形と局所的変形の組み合わ
せ処理(213 )によって、データ203 に含まれるK組の
全体的変形データのそれぞれとL組の局所的変形データ
のそれぞれとを組み合わせ、K×L通りの複合変形デー
タの集合(204 )を求める。
【0036】三次元顔モデルを扱う場合においては、組
み合わせ処理(213 )とは、図8の人相データ(810,82
0,830 )のそれぞれと表情データ(801,802,803 )のそ
れぞれとを組み合わせ、特定の人相に特定の表情を加え
た三次元形状(811,812,813,821,822,823,831,832,833
)を得る処理である。得られた三次元形状が、複合変
形データである。例えば、人相データ810 と表情データ
801 とを組み合わせると、複合変形データ811 が得られ
る。
【0037】最後に、複合変形データの加重平均処理
(214 )によって、複数(K×L通り)の複合変形デー
タの加重平均を計算して、三次元形状の変形結果(205
)を得る。三次元形状の変形結果(205 )は、図1の
M(104) に相当する。もちろん、三次元形状の変形結果
(205 )には、その三次元形状を構成するすべての点の
移動に関する情報が含まれている。
【0038】三次元顔モデルを扱う場合における加重平
均処理とは、例えば、図8の複合変形データ811,812,82
1,822 に重みを付けて平均する処理である。これによ
り、全体的変形を示す人相データ810 と820 の中間の人
相の顔に、局所的変形を示す表情データ801 と802 の中
間の表情を加えた三次元形状を得ることができる。加重
平均処理(214 )で各々の複合変形データに与える重み
の値を変化させて変形結果を調節するときは、220 の部
分の処理だけを繰り返す。
【0039】なお、本実施例では(図1でもそうであっ
たが)、2組の全体的変形データ(人相データ)と2組
の局所的変形データ(表情データ)とを組み合わせる例
を主として説明するが、これに限らず、2組以上の全体
的変形データと2組以上の局所的変形データとを組み合
わせることもできる。
【0040】[2]システム構成 図3は、本実施例の三次元形状データ変形処理方法を用
いた顔のリアルタイムアニメーションシステムの構成を
示す。
【0041】306 は記憶装置、308 は入力装置、309 は
中央処理装置を示す。中央処理装置(309 )に接続され
た記憶装置(306 )の中に、顔の人相を表す全体的変形
データの集合(201 )および顔の表情を表す局所的変形
データの集合(202 )が設けられている。これらの変形
データは、三次元形状変形プログラム(301 )によっ
て、顔の三次元形状の変形結果(205 )に変換される。
【0042】三次元形状変形プログラム(301) は、図2
の処理211 、処理212 、処理213 、および処理214 を実
行するプログラムである。ユーザ(307 )は、入力装置
(308 )から、全体的変形データと局所的変形データの
選択、および加重平均の重みの変更等の入力を行なう。
【0043】変形結果であるデータ(205 )は、顔のア
ニメーションにおける顔モデルの1フレーム分の情報を
表すデータである。この変形結果データ(205 )は、ア
ニメーションデータ入出力プログラム(302 )によっ
て、顔のアニメーションデータ(304 )の中に逐次格納
される。
【0044】顔のアニメーションデータ(304 )の中か
らプログラム(302 )によって顔モデルの1フレーム分
の情報を逐次読み出すことにより、プログラム(301 )
から変形結果データ(205 )がリアルタイムで出力され
ている場合と同一の状態を再現できる。変形結果データ
(205 )と背景の形状データ(305 )とを三次元形状表
示プログラム(303 )に入力することにより、顔のリア
ルタイムアニメーションの画像データが得られる。
【0045】この画像データは、中央処理装置(309 )
を介してコンバータ(310 )に入力する。そして、コン
バータ(310 )によってビデオ信号に変換され、スクリ
ーン(314 )に映される。スクリーン(314 )とは、1
台あるいは多数台のCRTでもよいし、プロジェクター
による投影システムなどでもよい。
【0046】スクリーン(314 )に映される顔モデル
は、ユーザ(307 )の指示に応じて、人相と表情をリア
ルタイムで変化させることができる。したがって、スク
リーンの前にいる人物(313 )とスクリーン(314 )に
映される顔モデルとが、アドリブで対話するような状況
を作り出すことができる。人物(313 )とスクリーン
(314 )の映像を、カメラ(312 )とVTR装置(311
)を用いて録画することにより、人物(313 )とリア
ルタイムで動く顔モデルとの対話の様子を表す映像ソフ
ト(315 )を容易に作成することができる。
【0047】なお、コンバータ(310 )から出力される
ビデオ信号は、直接、VTR装置(311 )によって映像
ソフト(315 )として格納することもできる。この際、
カメラ(312 )からの映像を合成するようにしてもよ
い。
【0048】[3]全体的変形データ 本実施例の方法で用いる2種類の変形データのうち、全
体的変形データについて、詳しく説明する。
【0049】全体的変形データは、図1の三次元物体形
状M1 (102 )やM2 (103 )によって表現される。具
体的には、三次元物体形状を構成する点とそれらを結ぶ
ポリゴンのデータから成る。1組の全体的変形データに
より、1つの三次元物体形状が定義される。
【0050】1つの三次元物体を対象としてそれを全体
的に変形していく限りにおいて、それらの変形を表す複
数組の全体的変形データのトポロジーは互いに等しい。
したがって、全体的変形データの中の特定の1組の全体
的変形データでは各点のデータを絶対的な位置ベクトル
で表現し、他の全体的変形データでは各点のデータを差
分ベクトル(前記の絶対的な位置ベクトルで表現された
点からの差分)で表現することができる。
【0051】例えば、図1の三次元物体形状M1 (102
)上の点P1 (121 )は絶対的な位置ベクトルでその
位置を表現し、これに対応する三次元物体形状M2 (10
3 )上の点P2 (131 )は点P1 と点P2 の位置ベクト
ルの差分で表現することができる。このとき、この差分
ベクトルは、点P1 に対する点P2 の「変形」を表して
おり、差分ベクトルによって構成される三次元物体形状
M2 のデータは、三次元物体形状M1 のデータに対する
「全体的な変形」を表している。
【0052】三次元顔モデルを扱う場合においては、全
体的変形データは顔の「人相」を表現するのに適してい
る。
【0053】[4]二次元パラメータ空間 次に、本実施例の方法で用いている二次元パラメータ空
間について、詳しく説明する。局所的な変形(次の
[5]で説明する)は、この二次元パラメータ空間の上
で表わされる。
【0054】本実施例では、図1に示すような二次元パ
ラメータ空間S(101 )を用いる。二次元パラメータ空
間Sは、三次元物体形状Mi (i=1,2,... )(102,103
)の中の特定の1つを円柱座標で表し、角度成分と高
さ成分を用いて二次元に展開することによって得る。言
い替えると、三次元物体形状の各点を半径成分、角度成
分、および高さ成分で表し、そのうちの半径成分を捨て
て、角度成分と高さ成分のみを用いて各点の位置を表す
ことにより、二次元パラメータ空間S(101 )を得る。
【0055】あるいは、三次元物体形状Mi の中の特定
の1つを極座標で表し、緯度成分と経度成分を用いて
(すなわち半径成分を捨てて)二次元に展開することに
よって、二次元パラメータ空間Sを得ることもできる。
【0056】三次元物体形状Mi のトポロジーはすべて
等しいので、このようにして得た二次元パラメータ空間
S上の各点およびポリゴンは、三次元物体形状Mi の中
の任意の1つを構成する点およびポリゴンと1対1に対
応する。
【0057】そこで、二次元パラメータ空間S上の点P
0 (111 )がポリゴン114 に含まれる点P01(113 )に
移動するとき、点P0 に対応するM1 (102 )上の点P
1 (121 )は、ポリゴン124 に含まれる点P11(123 )
に移動すると考え、点P0 に対応するM2 (103 )上の
点P2 (131 )は、ポリゴン134 に含まれる点P21(13
3 )に移動すると考える。ポリゴン124 およびポリゴン
134 は、ポリゴン114に対応するポリゴンである。
【0058】同様にして、点P0 (111 )がポリゴン11
7 に含まれる点P02(116 )に移動するとき、対応する
M1 (102 )上の点P1 はポリゴン127 に含まれる点P
12(126 )に移動すると考え、対応するM2 (103 )上
の点P2 はポリゴン137 に含まれる点P22(136 )に移
動すると考える。
【0059】したがって、点P0 の移動量を表すベクト
ル112 は、点P1 の移動量を表すベクトル122 、および
点P2 の移動量を表すベクトル132 に対応する。同様に
して、点P0 の移動量を表すベクトル115 は、点P1 の
移動量を表すベクトル125 、および点P2 の移動量を表
すベクトル135 に対応する。
【0060】ただし、ベクトル122,132,125,135 は三次
元空間上のベクトルなので、ベクトル112,115 によって
規定されない成分を持つことができる。例えば、三次元
物体形状M1 (102 )上の点P11(123 )は、ポリゴン
124 上の点として求めたのち、円柱座標あるいは極座標
の半径方向に移動する修正を加えたものとしてよい。こ
の修正内容は、二次元パラメータ空間S(101 )上の点
P0 (111 )に対して、二次元パラメータ空間S上での
移動量を表すベクトル(122,115 など)と共に与えれば
よい。
【0061】三次元顔モデルを扱う場合においては、三
次元空間上で点が移動する際に半径成分が保存されるよ
うな修正が適している。具体的には、三次元物体形状M
1 (102 )上の点P11(123 )の座標の半径成分は、移
動前の点P1 (121 )の座標の半径成分に一致させる、
というようにする。
【0062】[5]局所的変形データ 次に、本実施例の方法で用いる2種類の変形データのう
ち、局所的変形データについて、詳しく説明する。
【0063】局所的変形データは、二次元パラメータ空
間S(101 )上のすべての点に対して、その点の移動を
定義する図1のベクトル112 やベクトル115 などのベク
トルを与えることにより構成される。上述した全体的変
形データが三次元空間での座標を用いて表現されている
のに対して、二次元パラメータ空間S(101 )上のベク
トル112,115 に対応するベクトル122,132,125,135 が指
し示す移動先は、三次元空間での座標に依存せず、互い
に対応する特定のポリゴンに含まれる。
【0064】このように、二次元パラメータ空間S(10
1 )上のベクトル112,115 に基づいて構成されるデータ
を「局所的な変形」を表すデータと考える。三次元顔モ
デルを扱う場合においては、局所的変形データは顔の
「表情」を表現するのに適している。
【0065】二次元パラメータ空間S(101 )上のベク
トルが指し示す移動先は、上記の性質を満たすため、そ
の移動先が含まれるポリゴンの頂点の線形内挿で表され
る。そして、局所的変形データは、この線形内挿の係数
の集合によって表現される。例えば、二次元パラメータ
空間S(101 )上において、点P0 の移動先である点P
01(113 )が、点T1 (151 )、T2 (152 )、T3
(153 )を頂点とするポリゴン114 に含まれるとき、そ
の点P01は次式(1)のように表される。
【0066】 P01 = w1 T1 + w2 T2 + w3 T3 (w1 + w2 + w3 = 1) …(1) なお、数式においては、点の名称と位置を同じ記号で表
すものとする。例えば、上記式(1)において、P01、
T1 、T2 、T3 は、それぞれ、点P01(113)の位置
ベクトル、点T1 (151 )の位置ベクトル、点T2 (15
2 )の位置ベクトル、点T3 (153 )の位置ベクトルを
示すものとする。
【0067】点P01に対応するM1 (102 )上の点P11
(123 )は、その点を含むポリゴン124 の頂点を、数1
のw1 、w2 、w3 を係数として線形内挿した点に、上
記[4]で述べた修正を必要に応じて加えることによっ
て決定される。
【0068】このようにして、局所的変形データを、全
体的変形データに依存しない形式で保持でき、任意の全
体的変形データと局所的変形データを少ない計算量で組
み合わせることができるようになる。
【0069】ここで、二次元パラメータ空間S(101 )
上のベクトル(112,115 )は、二次元パラメータ空間S
上のすべての点に対して与えてもよいが、二次元パラメ
ータ空間S上に複数の制御点を置き、それらの制御点に
与えたベクトルの線形内挿によってS上のすべての点に
対するベクトルを求めるようにすると便利である。言い
替えると、二次元パラメータ空間S上のすべての点の移
動を定義するベクトルを与える代わりに、幾つかの制御
点の移動を定義するベクトルを与えて、それにより二次
元パラメータ空間S上のすべての点の移動を定義すると
よい。
【0070】具体的には、二次元パラメータ空間S上の
制御点をドローネ網で結び、それらの制御点を頂点とす
る三角形で二次元パラメータ空間Sを分割し、各々の三
角形に含まれる点に対するベクトルを、その三角形の頂
点の制御点に与えたベクトルを線形内挿することによっ
て求める。
【0071】図4は、制御点に与えたベクトルの線形内
挿によって、二次元パラメータ空間S上の各点のベクト
ルを求める様子を示す説明図である。この図に示すよう
に、二次元パラメータ空間S上に、制御点C1 (401
)、C2 (402 )、C3 (403)を置き、これらにベク
トルD1 (404 )、D2 (405 )、D3 (406 )を与え
たとする。このとき、制御点C1 、C2 、C3 を結ぶ三
角形に含まれる点P0 (111 )は、次式(2)のように
表すことができる。
【0072】 P0 = k1 C1 + k2 C2 + k3 C3 (k1 + k2 + k3 = 1) …(2) したがって、点P0 に与えるベクトルD(112 )は、上
記式(2)の係数k1、k2 、k3 を次式(3)に代入
することによって得られる。
【0073】 D = k1 D1 + k2 D2 + k3 D3 …(3) このように、制御点に与えるベクトルにより局所的変形
を表すようにすれば、例えば二次元パラメータ空間S上
の100個の点の移動を10個の制御点の移動で表現で
きることとなり、局所的変形データとして用意すべきデ
ータが簡易化する。
【0074】なお、制御点に二次元パラメータ空間S上
での移動量以外の量を与えた場合、そのような量に対し
ても上記式(2)の係数k1 、k2 、k3 を用いた線形
内挿を行えばよい。例えば、円柱座標や極座標の半径成
分の変化量を制御点に与え、二次元パラメータ空間S上
の各点でのこの変化量の線形内挿結果を、上記[4]で
述べた三次元物体形状上の点の修正に用いることができ
る。
【0075】[6]複合変形データの生成 本実施例の方法では、1組の全体的変形データと1組の
局所的変形データを組み合わせて得られる変形データを
複合変形データと呼ぶ。そして、あらかじめ複数の複合
変形データを求めておき、それら複数の複合変形データ
の加重平均によって、最終的な変形結果を決定する。こ
れにより、複数の複合変形データの間の中間的な変形を
実現する。
【0076】図1の三次元物体形状Mi (i=1,2,... )
(102,103 )上における移動先Pij(i=1,2,...,j=1,
2,... )(123,126,133,136 )は、いずれも異なる複合
変形データを構成する要素である。全体的な変形と局所
的な変形の代表的な組み合わせを複合変形データとして
求めておけば、これらの加重平均の割合を変化させるだ
けで、全体的な変形および局所的な変形の調節ができ
る。したがって、この調節をリアルタイムで行なうこと
ができる。三次元顔モデルを扱う場合においては、1個
の人相と1個の表情を組み合わせて得られる変形データ
が複合変形データとなる。
【0077】[7]加重平均による変形結果の決定 図1の例では、2個の全体的変形データと2個の局所的
変形データが与えられており、これらの組み合わせによ
って4通りの複合変形データを求めている。三次元物体
形状の変形結果M(104 )における点P0 (111 )の移
動先P(141 )は、M1 (102 )が表す第1の全体的変
形データと組み合わされた第1および第2の局所的変形
データによる移動先P11(123 )およびP12(126 )
と、M2 (103 )が表す第2の全体的変形データと組み
合わされた第1および第2の局所的変形データによる移
動先P21(133 )およびP22(136 )を用いて、次式
(4)によって得ることができる。
【0078】 P=s1 (t1 P11+t2 P12)+s2 (t1 P21+t2 P22) (s1 +s2 =t1 +t2 =1) …(4) 三次元物体を構成するすべての点のM(104 )における
移動先は、共通の重みs1 、s2 、t1 、t2 を用い
て、同様に求められる。重みs1 、s2 、t1 、t2 の
値を変化させることにより、4通りの複合変形データを
足し合わせる割合が変化し、全体的な変形および局所的
な変形の調節ができる。なお、重みs1 およびs2 は全
体的変形データに関する重みを示し、重みt1 およびt
2 は局所的変形データに関する重みを示している。
【0079】一般に、K組の全体的変形データとL組の
局所的変形データが与えられたとき、これらの組み合わ
せによってK×L通りの複合変形データが得られる。i
番目の全体的変形データと組み合わされたj番目の局所
的変形データによる移動先をPijとすると、それらを加
重平均して得られる結果Pは、次式(5)によって求め
ることができる。
【0080】
【数1】
【0081】上記式(5)における重みsi (i=1,
2,...,K )、および重みtj (j=1,2,...,L )の値を変
化させることにより、K×L通りの複合変形データを足
し合わせる割合が変化し、全体的な変形および局所的な
変形の調節ができる。すなわち、K×L通りの複合変形
データの中間の変形が実現される。
【0082】[8]全体的変形データの更新 以上のようにして、複数の全体的変形データと複数の局
所的変形データを組み合わせて複数の複合変形データを
作成し、それらを加重平均して所望の変形を実現した後
に、全体的変形データを更新したい場合がある。
【0083】例えば、三次元顔モデルにおいて、第1の
人相および第2の人相を定義する2組の全体的変形デー
タと、第1の表情および第2の表情を定義する2組の局
所的変形データとを用意し、これらから4組の複合変形
データを求め、その4組の複合変形データを加重平均し
て、所望の人相および表情を表す変形を実現したとす
る。その後、人相を第3の人相に更新したい場合があ
る。このような場合、本実施例では、特定の表情と組み
合わせる人相を更新しながら、変形の調節を連続的に実
行することができる。
【0084】図5は、全体的変形データの更新の説明図
である。この図に示すように、2組の全体的変形データ
と2組の局所的変形データの組み合わせによって、三次
元物体形状の変形結果における点P(141 )を決定する
複合変形データの要素P11(123 )、P12(126 )、P
21(133 )、P22(136 )が与えられているとする。た
だし、i番目の全体的変形データと組み合わされたj番
目の局所的変形データによる移動先をPijとする(i=1,
2,j=1,2 )。加重平均した結果の移動先Pは、上記式
(4)によって決定されている。この状態から、新たな
全体的変形データを1つ呼びだして変形の調節を続行す
るときには、以下のような処理を行なう。
【0085】現在の重みs1 、s2 (全体的変形デー
タに関する重み)を用いて、次式(6)からP31(501
)、P32(502 )を求める。 P31 = s1 P11 + s2 P21, P32 = s1 P12 + s2 P22 …(6) 新たな全体的変形データと現在の第1、第2の局所的
変形データとの組み合わせによって得られる移動先をそ
れぞれP41(511 )、P42(512 )とする。
【0086】重みt1 、t2 (局所的変形データに関
する重み)は現在の値のままとし、s1 の初期値を1、
s2 の初期値を0とし、以降は次式(7)によって変形
の調節を続行する。 P=s1 (t1 P31+t2 P32)+s2 (t1 P41+t2 P42) (s1 +s2 =t1 +t2 =1) …(7) このようにして、新たな全体的変形データを1つずつ呼
びだすことにより、特定の局所的変形データと組み合わ
せる全体的変形データを更新しながら、変形の調節を連
続的に実行することができる。三次元顔モデルを扱う場
合においては、特定の表情と組み合わせる人相を更新し
ながら、変形の調節を連続的に実行することができる。
【0087】[9]局所的変形データの更新 同様にして、局所的変形データの更新を行なうことがで
きる。
【0088】図6は、図5と同様の状態から、新たな局
所的変形データを1つ呼びだして変形の調節を続行する
様子を表している。このときには、以下のような処理を
行なう。
【0089】現在の重みt1 、t2 (局所的変形デー
タに関する重み)を用いて、次式(8)からP13(601
)、P23(602 )を求める。 P13 = t1 P11 + t2 P12, P23 = t1 P21 + t2 P22 …(8) 新たな局所的変形データと現在の第1、第2の全体的
変形データの組み合わせによって得られる移動先をそれ
ぞれP14(611 )、P24(612 )とする。
【0090】重みs1 、s2 (全体的変形データに関
する重み)は現在の値のままとし、重みt1 の初期値を
1、t2 の初期値を0とし、以降は次式(9)によって
変形の調節を続行する。 P=s1 (t1 P13+t2 P14)+s2 (t1 P23+t2 P24) (s1 +s2 =t1 +t2 =1) …(9) このようにして、新たな局所的変形データを1つずつ呼
びだすことにより、特定の全体的変形データと組み合わ
せる局所的変形データを更新しながら、変形の調節を連
続的に実行することができる。三次元顔モデルを扱う場
合においては、特定の人相と組み合わせる表情を更新し
ながら、変形の調節を連続的に実行することができる。
【0091】[10]顔のリアルタイムアニメーション 図7は、本実施例の方法を用いた顔のリアルタイムアニ
メーションの処理の流れを示す。
【0092】まず、人相データの集合および表情データ
の集合を用意する(700 )。人相データの集合は図2の
データ201 に相当し、表情データの集合は図2のデータ
202に相当する。次に、ユーザ入力(701 )を受付け
る。ユーザ入力の内容によって、処理は以下のように分
岐する。
【0093】ユーザが人相名を入力した場合は、これ
に対応する人相データを選び(702 )、選ばれたデータ
を現在の表情データと組み合わせ(703 )、人相と表情
の複合変形データに対する加重平均の重みを修正する
(704 )。処理702 、703 は順に図2の処理211 、213
に相当する。703 から704 までの処理は、[8]で述べ
た処理に相当する。 ユーザが表情名を入力した場合は、これに対応する表
情データを選び(705 )、選ばれたデータを現在の人相
データと組み合わせ(706 )、人相と表情の複合変形デ
ータに対する加重平均の重みを修正する(707 )。処理
705 、706 は順に図2の処理212 、213 に相当する。70
6 から707 までの処理は、[9]で述べた処理に相当す
る。
【0094】ユーザが加重平均の重みを入力した場合
は、人相と表情の現在の複合変形データに対する加重平
均処理のみを行なう(708 )。 ユーザが終了コマンドを入力した場合は、アニメーシ
ョンを終了する。 ユーザが終了コマンド以外を入力した場合は、上記の
〜の処理の後、描画処理(709 )を行なう。これによ
り、変形された結果の三次元形状が表示される。この
後、ユーザ入力(701 )に戻り、以後これを繰り返す。
【0095】従来の方法においては、人相と表情を混ぜ
合わせる割合を変更するたびに上記またはに相当す
る処理が必要であったが、本実施例の方法においては、
ユーザが人相と表情を混ぜ合わせる割合を変更している
間はの流れを繰り返すだけでよい。この計算は簡単な
ものであるから、ユーザ入力に対する結果をリアルタイ
ムアニメーションとして表示することができる。
【0096】以上のようにして、全体的な変形と局所的
な変形を組み合わせた変形の計算量が削減される。本発
明の方法を用いることにより、この変形をリアルタイム
で行なうことが可能となる。
【0097】
【発明の効果】本発明によれば、三次元形状データに対
し、全体的な変形と局所的な変形を組み合わせた変形を
リアルタイムで行なうことが可能となる。したがって、
アニメーションを容易に作成することができるようにな
る。
【図面の簡単な説明】
【図1】本発明の一実施例に係る三次元形状データ変形
処理の概念説明図である。
【図2】本実施例の処理の流れの説明図である。
【図3】本実施例を用いたリアルタイムアニメーション
システムの構成図である。
【図4】パラメータ空間上の制御点の説明図である。
【図5】全体的変形データの更新の説明図である。
【図6】局所的変形データの更新の説明図である。
【図7】本実施例によるリアルタイムアニメーションの
処理の流れの説明図である。
【図8】顔のアニメーションにおける全体的変形デー
タ、局所的変形データ、複合変形データの説明図であ
る。
【符号の説明】
201…全体的変形データ(人相データ)の集合、20
2…局所的変形データ(表情データ)の集合、205…
三次元形状(顔)の変形結果、301…三次元形状変形
プログラム、302…アニメーションデータ入出力プロ
グラム、303…三次元形状表示プログラム、304…
顔のアニメーションデータ、305…背景の形状デー
タ、306…記憶装置、307…ユーザ、308…入力
装置、309…中央処理装置、310…コンバータ、3
11…VTR装置、312…カメラ、313…スクリー
ンの前の人物、314…スクリーン、315…映像ソフ
ト。

Claims (14)

    【特許請求の範囲】
  1. 【請求項1】計算機上に保持された三次元形状データに
    よって定義される三次元形状を変形して、変形後の三次
    元形状データを生成する三次元形状データ変形処理方法
    であって、 三次元形状を構成する各点の三次元空間上での移動量を
    表す全体的変形データを少なくとも2組以上入力するス
    テップと、 該三次元形状を二次元に展開して得られる二次元パラメ
    ータ空間上での各点の移動量を表す局所的変形データを
    少なくとも2組以上入力するステップと、 該複数組の全体的変形データと、該複数組の局所的変形
    データとを組み合わせて、複数組の複合変形データを作
    成するステップと、 該複数組の複合変形データの加重平均を算出することに
    より、変形後の三次元形状データを得るステップとを備
    えたことを特徴とする三次元形状データ変形処理方法。
  2. 【請求項2】請求項1に記載の三次元形状データ変形処
    理方法において、前記二次元パラメータ空間は、前記三
    次元形状を構成する各点の位置を円柱座標で表わし、該
    円柱座標の角度成分と高さ成分とを用いて二次元に展開
    することによって得られる平面であることを特徴とする
    三次元形状データ変形処理方法。
  3. 【請求項3】請求項1に記載の三次元形状データ変形処
    理方法において、前記二次元パラメータ空間は、前記三
    次元形状を構成する点の位置を極座標で表わし、該極座
    標の緯度成分と経度成分とを用いて二次元に展開するこ
    とによって得られる平面であることを特徴とする三次元
    形状データ変形処理方法。
  4. 【請求項4】請求項1に記載の三次元形状データ変形処
    理方法において、前記局所的変形データは、前記三次元
    形状を構成する各点の前記二次元パラメータ空間上での
    移動先の位置を、前記二次元パラメータ空間上の他の点
    の位置の線形内挿によって表現したものであることを特
    徴とする三次元形状データ変形処理方法。
  5. 【請求項5】請求項1に記載の三次元形状データ変形処
    理方法において、前記局所的変形データは、前記三次元
    形状を構成する各点の前記二次元パラメータ空間上での
    移動先の位置を、前記二次元パラメータ空間上に設けた
    所定の制御点の位置の線形内挿によって表現したもので
    あることを特徴とする三次元形状データ変形処理方法。
  6. 【請求項6】請求項1に記載の三次元形状データ変形処
    理方法において、前記全体的変形データをK組入力し、
    前記局所的変形データをL組入力して、前記複合変形デ
    ータをK×L通り作成することを特徴とする三次元形状
    データ変形処理方法。
  7. 【請求項7】請求項1に記載の三次元形状データ変形処
    理方法において、前記複数組の複合変形データの加重平
    均を算出する際の、各複合変形データの重みを入力する
    ステップを備えたことを特徴とする三次元形状データ変
    形処理方法。
  8. 【請求項8】請求項1に記載の三次元形状データ変形処
    理方法において、前記複合変形データの重みが、前記複
    数組の全体的変形データのそれぞれに対する重み、およ
    び前記複数組の局所的変形データのそれぞれに対する重
    みであることを特徴とする三次元形状データ変形処理方
    法。
  9. 【請求項9】請求項8に記載の三次元形状データ変形処
    理方法において、 複数組の全体的変形データと複数組の局所的変形データ
    とを組み合わせて複数組の複合変形データを作成し、上
    記全体的変形データと局所的変形データのそれぞれの重
    みを用いて上記複数組の複合変形データの加重平均を算
    出し、これにより変形後の三次元形状データを得た後
    に、さらに新たな全体的変形データを入力したときに
    は、 上記複数組の局所的変形データごとに、各局所的変形デ
    ータに係る上記複数組の複合変形データを上記全体的変
    形データの重みで加重平均し、これにより複数組の複合
    変形データを求め、 上記新たな全体的変形データと上記複数組の局所的変形
    データとを組み合わせて複数組の複合変形データを求
    め、 これらの複合変形データを加重平均することにより、新
    たな三次元形状データを得ることを特徴とする三次元形
    状データ変形処理方法。
  10. 【請求項10】請求項8に記載の三次元形状データ変形
    処理方法において、 複数組の全体的変形データと複数組の局所的変形データ
    とを組み合わせて複数組の複合変形データを作成し、上
    記全体的変形データと局所的変形データのそれぞれの重
    みを用いて上記複数組の複合変形データの加重平均を算
    出し、これにより変形後の三次元形状データを得た後
    に、さらに新たな局所的変形データを入力したときに
    は、 上記複数組の全体的変形データごとに、各全体的変形デ
    ータに係る上記複数組の複合変形データを上記局所的変
    形データの重みで加重平均し、これにより複数組の複合
    変形データを求め、 上記新たな局所的変形データと上記複数組の全体的変形
    データとを組み合わせて複数組の複合変形データを求
    め、 これらの複合変形データを加重平均することにより、新
    たな三次元形状データを得ることを特徴とする三次元形
    状データ変形処理方法。
  11. 【請求項11】請求項1から10のいずれかに記載の三
    次元形状データ変形処理方法を用いて、計算機上に三次
    元形状データを生成し、該形状データを変形してアニメ
    ーションのデータを作成することを特徴とするアニメー
    ション作成方法。
  12. 【請求項12】請求項1から10のいずれかに記載の三
    次元形状データ変形処理方法を用いて、前記複合変形デ
    ータの加重平均を算出する際に用いる重みを徐々に変化
    させ、それに応じて変形していく一連の三次元形状デー
    タを作成し、これら一連の三次元形状データを用いてア
    ニメーションを作成することを特徴とするアニメーショ
    ン作成方法。
  13. 【請求項13】請求項11または12のいずれかに記載
    のアニメーション作成方法において、前記三次元形状デ
    ータが顔モデルであることを特徴とするアニメーション
    作成方法。
  14. 【請求項14】請求項13に記載のアニメーション作成
    方法において、前記顔モデルの人相は全体的変形データ
    で定義し、前記顔モデルの表情は局所的変形データで定
    義することを特徴とするアニメーション作成方法。
JP5187041A 1993-06-30 1993-06-30 三次元形状データ変形処理方法およびアニメーション作成方法 Pending JPH0785315A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5187041A JPH0785315A (ja) 1993-06-30 1993-06-30 三次元形状データ変形処理方法およびアニメーション作成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5187041A JPH0785315A (ja) 1993-06-30 1993-06-30 三次元形状データ変形処理方法およびアニメーション作成方法

Publications (1)

Publication Number Publication Date
JPH0785315A true JPH0785315A (ja) 1995-03-31

Family

ID=16199145

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5187041A Pending JPH0785315A (ja) 1993-06-30 1993-06-30 三次元形状データ変形処理方法およびアニメーション作成方法

Country Status (1)

Country Link
JP (1) JPH0785315A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009019899A1 (ja) * 2007-08-08 2009-02-12 Konami Digital Entertainment Co., Ltd. ゲーム装置、ゲーム装置の制御方法、プログラム及び情報記憶媒体
CN117095086A (zh) * 2023-10-18 2023-11-21 腾讯科技(深圳)有限公司 动画处理方法、装置、设备及存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009019899A1 (ja) * 2007-08-08 2009-02-12 Konami Digital Entertainment Co., Ltd. ゲーム装置、ゲーム装置の制御方法、プログラム及び情報記憶媒体
CN117095086A (zh) * 2023-10-18 2023-11-21 腾讯科技(深圳)有限公司 动画处理方法、装置、设备及存储介质
CN117095086B (zh) * 2023-10-18 2024-02-09 腾讯科技(深圳)有限公司 动画处理方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
US6876364B2 (en) Method for mapping facial animation values to head mesh positions
EP0268984B1 (en) Image orientation and animation using quaternions
US6597380B1 (en) In-space viewpoint control device for use in information visualization system
JP2002298155A (ja) 感情による3dコンピュータグラフィックス表情モデル形成システム
US20030001834A1 (en) Methods and apparatuses for controlling transformation of two and three-dimensional images
JP2002520703A (ja) コンピュータ・グラフィックス・アニメーションの装置及び方法
WO2005024728A1 (ja) 形態変形装置、物体動作符号化装置および物体動作復号化装置
JPH04220783A (ja) 表示装置及び表示方法
US6307561B1 (en) Animation generating apparatus and method
US5736991A (en) Animation editing apparatus
JPH0785315A (ja) 三次元形状データ変形処理方法およびアニメーション作成方法
JPH08297751A (ja) 三次元モデルの作成方法および装置
JP2739434B2 (ja) コンピュータグラフィックスにおける動作生成方法
JP2739447B2 (ja) しわの表現可能な三次元像生成装置
JP2800309B2 (ja) ハイブリッド制御装置及びハイブリッド制御方法
Walter et al. Investment learning with hierarchical PSOMs
JPH10149455A (ja) 画像生成表示装置および生成表示画像編集装置
JP3636681B2 (ja) 画像処理方法、画像処理装置、半導体デバイス、コンピュータプログラム及び記録媒体
KR102649693B1 (ko) 체험형 디지털 입체공간 구축시스템 및 그 입체공간 구축방법
JPH05233780A (ja) 形状変形方法
JP2739436B2 (ja) コンピュータグラフィックスにおける動作表示生成方法
JP3159845B2 (ja) アニメーション作成装置
JP3229384B2 (ja) ベクトル形状編集装置
JPH04306782A (ja) 画像合成器
JPH04167077A (ja) 二次元ラスタ画像の変形装置