'-?B.5& )9>F1AD ,FE+CE+=E725C

10 !(#$4<8F"GCOE 4<8F

0D:@F5/B;*6.3%&3110

Motivation! Computer generated face/character! A key in visual storytelling! The most challenging object! Our focus: facial animation! No perfect method to make it efficiently! Addresses many theoretical/practical problems

An overview

顔のモデリング、レンダリング、アニメーション

Objects and issues! 顔の幾何モデル、質感 Face geometry/ texture! Eyes, mouth, ears, nose, wrinkles…
! Hair, teeth, tongue,…

! レンダリング! Photorealistic skin - subsurface scattering! Real-time rendering! アニメーション! 効率の良い制作プロセスの構築のために! 表情, 唇の動きと音声の同期 (lip-synch)…

Face geometry! “Sculpting” face (head): 彫刻を作るように

R. Parent: “Computer Animation (2nd ed.), Morgan Kaufman 2008.

! Subdivision surfaces: 再分割曲面! Laplacian editing: ラプラシアンを用いた平滑化

Face geometry using digitizer! Point-marking on the actual model (“mock”)! Measuring the points by digitizer“Tin Toy” by Pixar 1988

Modeling/ animating hair
! Typical case: Hair strand as a set of linear

segments! (Option) Partially modeled with texture

Yizhou Yu et al. In Proc. Symposium onComputer Animation 2002

Modeling/ animating hair

Yizhou Yu et al. In Proc. Symposium on Computer Animation 2002

! Placing “sparce” hair-guide models! Calculating using the guide models! Dynamics! Hair-to-hair interaction! Interpolating them for finer hair animation and rendering

Rendering: BRDF vs. BSSRDF! fr : BSSRDF (Bidirectional Scattering Surface

Reflectance Distribution Function)

Rendering skin transparency! BSSRDF! Real-time rendering withGPU

Rendering hair
! Focusing on! Anisotropic reflection! Multiple scattering

A. Zinke et al: Dual Scattering Approximation
for Fast Multiple Scattering in Hair
(SIGGRAPH2008)

Facial&expression

表情のモデルFACS! Facial Action Coding System! Ekman and Friesen 1978 (心理学)! 顔の表情をアクションユニット(Action Unit)に分類する

G AUの例: brow lowerer, inner brow raiser, wink, cheek raiser,
upper lip raoser, jaw drop,... (全部で46 AUs).
! あくまで「分類」が目的で時間変化(感情の変化)に伴う動きは考慮していない

FACS
AU Number
12
4
5
67
8
91018
20
2223
24
25
262728FACS Name

Muscular Basis

Inner Brow Raiser
Frontalis, Pars Medialis
Outer Brow Raiser
Frontalis, Pars Lateralis
Brow Lowerer
Depressor Glabellae; Depressor Supercilli; Corrugator
Upper Lid Raiser
Levator Palpebrae Superioris
Cheek Raiser
Orbicularis Oculi, Pars Orbitalis
Lid Tightener
Orbicularis Oculi, Pars Palebralis
Lips Toward Each Other
Orbicularis Oris
Nose Wrinkler
Levator Labii Superioris, Alaeque Nasi
Upper Lip Raiser
Levator Labii Superioris, Caput Infraorbitalis
Lip Puckerer
Incisivii Labii Superioris; Incisivii Labii Inferioris
Lip Stretcher
Risorius
Lip Funneler
Orbicularis Oris
Lip Tightner
Orbicularis Oris
Lip Pressor
Orbicularis Oris
Lips PartDepressor Labii, or Relaxation of Mentalis or Orbicularis OrisJaw DropMasetter; Temporal and Internal Pterygoid Relaxed
Mouth StretchPterygoids; Digastric
Lip SuckOrbicularis Or

FACS応用!

DreamWorks Animationでの例:! 各AUをパラメータ制御! ４層からなる制御システム:

Bone layer -1) 頭蓋骨 --> 骨の上のflesh ( 顔表面)の動きの近似に用いる ;2) muscles for the jaw.

Mask layer1) muscles for the flesh2) low resolution surfaces- edge = muscle

Flesh layer1) fleshy fat gets pushed by aroundmuscles; cheek, lips2) moved by mask layer

Facial Animation

Skin layer1) fine detailed functionality e.g., 皺表情アニメーション

準備: CGモデル! スケルトンモデル (skeleton model) は、階層的に定義されている．

! 各ポーズは頂点の位置ベクトル vi ∈R3で定まるが、表面(skin)は、簡単には定まらない．

! スキニング (skinning) : スケルトンモデルの位置、回転、スケール情報から表面の頂点位置を決定すること．

準備: さまざまな変形技術

Skeleton subspace deformation
Pose space deformation
Cage deformers
Muscle systems

SSD: Skeleton Subspace Deformation! 最も実際的な手法!

各頂点の「変形」操作後の位置は、アフィン変換後の重み付け線形和で表される.

!

頂点のウェイト付けはペイント処理で行う

SSD: Skeleton Subspace Deformation! 各ポーズは頂点の位置ベクトル vi ∈R3で定まるが、表面(skin)の変形後の位置は、簡単には定まらない (それを定める標準的な手法がない)．

! この問題に対する最初に出た方法、すなわ

ち、スキニング方法が SSD である．

SSD: Skeleton Subspace Deformation!

!"5'4(#),0:s´ss´´t´tt´´/.上記の変換を施すと線分 s´s´´上のどこかに移る．
→ これは ‘collapsing elbow’ problem を引き起こしてしまう(後述)．

SSD: 問題点! Joint collapsing artifact! Candy-wrapper artifact

SSD: Skeleton Subspace Deformation!

!"5'4(#),0:vertex
weight at vertex v
homogeneous transform matrix

PSD: Pose Space Deformation! 5'3+! ,0%-&*0
vk = S (v0 + d k )−1$' n jo int
d k = %% ∑ w j (v)T j "" vk − v0#& j =1
   %5'213+$5'215'-&同次変換行列

PSD! Results:! Applicable for facial animation

ブレンドシェープ
Original formulation
Direct manipulation
Learned direct manipulation

Blendshapes ブレンドシェープ! Semantic Approach! Facial Animation のスタンダード! 色々な顔の表情の「決め」ポーズをまず沢山作る! それらの線形和で顔を作り、その重みを時間変化(補間)してアニメーションにする! 直感的だが手間がかかる

ブレンドシェープ : Formulation! 顔ひとつひとつは、ポリゴンモデルとする! 顔のポリゴンを形成する頂点列 (x1, y1, z1), (x2, y2, z2), ....

を一列に並べた(縦)ベクトルを考える．

! 一般的な顔 f"は、neutral face を f0 と記し、行列

B は target face fi と f0 の差 (fi - f0)を並べて作る:
これにより、0 ≤w≤1 の範囲で顔のバリエーションが出来る! w は各キーフレーム(keyframe)での設定をアニメータが行い、後はコンピュータで補間される!

ブレンドシェープ : 利点と欠点! 単純な仕組み、直感的! スライダーバーを動かしてwを調整する! 微調整には向いている! [問題] ポーズが増えると操作が膨大な手間となる! 映画「アバター」では主人公に2000個以上のtarget shapeを制作: 一人を作るのに 2.5年

Direct Manipulation Blendshapes! [問題] の解決策
! 顔モデルへの直接(編集)操作からw を割り出す! 直接操作とスライダー調整という２つの編集モードで表情を編集できる! See more in [Lewis and Anjyo 2010: IEEE CG&A]

Direct Manipulation Blendshapes! [解法] 次の最適化問題を解く{2min BΔ w− Δm + α Δ w
Δw2}Δ:m (,.&)%$(+-*))( " !#B
'# "( BΔ w  

Direct Manipulation Blendshapes: 評価
 操作性の向上: 当たりをつけるラフデザイン作業がスピードアップ

Learned Direct Manipulation! We have lots of motion capture data oranimation archives.
! We want to accelerate the edit process by“learning”.

DMB応用編"(学習版)!

Step 1: アニメーション(時系列データ) の学習: 次の共分散行列Aの (正固有値の) 固有ベクトルを用いて顔ベクトルを表現する! ここで[TA = E ( x− e0 )( x− e0 )]x は時系列データ(縦ベクトル)を表す! e0 は時系列データからできる平均ベクトル! A は顔の頂点ベクトル総数×3 のサイズの正方行列

DMB応用編"(学習版)!

Step 2: 前記の固有ベクトルを並べた行列を U とし、 顔ベクトルをこれら固有ベクトルの線形和で表すときの係数を c とし、次の最適化問題を解く:{2min UΔc − Δm + β Δc AΔc! ここで U = (u1, u2, ..., up);2}

A ui = λi ui で λi > 0 (1≤ i ≤ p).
pdi 2d A :=∑i=1 λi
2DMB応用編"(学習版)!

考察: DMBとLDMのそれぞれで、似たような最適化問題を解いた! どちらも正値対称行列

A から作られる像空間 A(Rn)における極値問題を解いている．
G DMB では A = E (単位行列)
G LDM では A = 共分散行列! 像空間

A(Rn) を、有限次元の再生核ヒルベルト空間(RKHS, Reproducing Kernel Hilbert Space) と見なすと、ノルム ⋅ A は RKHSに対するノルムと一致している．

LDM: w と"c の関係!

学習効果をwの値として反映させたい!

もともと次の関係がある:

U c + e 0 = Bw + f 0!

従って c と w との関係は次のようになる:−1w = ( B B) BT (U c + e 0 − f 0 )Tc = UT ( Bw + f 0 − e 0 )Lipsync + DMB

DMBの応用リップシンク %$#!

"

PSDで表情を作る – –  Demo