Upgrade to Pro — share decks privately, control downloads, hide ads and more …

コンピュータグラフィックス 画像情報教育振興協会 5章アニメーション 5-1~5-3

E2dd989b2ba0f83d8a981b9cb3197bf1?s=47 mocobt
June 26, 2020

コンピュータグラフィックス 画像情報教育振興協会 5章アニメーション 5-1~5-3

内輪輪読会で使った資料の改変版

書籍: コンピュータグラフィックス[改訂新版] (画像情報教育振興協会出版)
Link: https://www.cgarts.or.jp/book/cg_engineer/

元スライドだとgifを多用していたのですが、Uploadの都合上省略しました。
見たい場合は連絡してください

E2dd989b2ba0f83d8a981b9cb3197bf1?s=128

mocobt

June 26, 2020
Tweet

Transcript

  1. コンピュータグラフィックス
 画像情報教育振興協会
 5章5-1~5-3 アニメーション
 @mocobt


  2. About this material • この資料について: 内輪輪読会で使った資料の改変版 • 目的: CG全般の基礎知識への理解を深める •

    主な対象: 初心者 (B1~) • 書籍: CG-ARTS出版「コンピュータグラフィックス」 https://www.cgarts.or.jp/book/cg_engineer/index.html • 連絡先: mocobt@gmail.com or Twitter @mocobt
  3. Agenda 5-1 CGアニメーションの構成 5-2 キーフレームアニメーション 5-3 手続き型アニメーション

  4. Agenda 5-1 CGアニメーションの構成 5-2 キーフレームアニメーション 5-3 手続き型アニメーション

  5. 5-1-1 アニメーションとは Animation: 本来動かないものに動きを与えること Animationが普及したのはいつごろ?

  6. 5-1-1 アニメーションとは Théâtre Optique: 世界原初の動画映写機 [Charles-Émile Reynaud (フランスの理科教師), 1892] Animation:

    本来動かないものに動きを与えること 『哀れなピエロ』: Théâtre Optiqueによる最初期のAnimation
  7. 5-1-2 仮現運動とコマ撮り 仮現運動(apparent motion): 動いていないものが動いて見える視覚現象 仮現運動を用いたAnimation time コマ撮り(single picture crank)

    コマ
  8. 中割り time 中割り(in-between): 時間的に隣接する2枚の画像から中間画像を生成する手法 ? unknown frame 中割り生成 by DeNA

       を    と    で補間 ?
  9. 5-1-3 ストップモーション・アニメーション Stop motion animation: 静止している物体を1コマ毎に撮影した画像を使う手法 Puppet animation (人形を用いたストップモーション・アニメーション) Cray

    animation (粘土を用いたストップモーション・アニメーション)
  10. コマ撮りアニメのメイキングと研究 かなりつらいので,楽をしたい Animated meshを独立に動くパーツ群に分離 → フィギュア作成に活用 [Abdrashitov et al. TOG

    2019]
  11. 5-1-3 セルシェーディング・アニメーション 3DCGをセル画調にすることで,2D Animationを再現する手法が人気 Phong shading(left) & toon shading(right) 実装が超簡単

    髪の毛の複雑な動き 複雑なカメラワーク を描くのはつらい → 3Dで簡略化
  12. Research related to toon shading Shading手法自体は飽和気味... ただCVと組み合わせる研究はたまにある • 線画と影付きの絵のLarge Dataset

    • [Sun et al. TOG 2019] likeなLightingが可能なUNetを導入 [Zheng et al. CVPR 2020] • 「人間が書いた影っぽいか?」という質問を60人に実施 • Scoringは9段階の主観評価値(高いほど人が描いている感がある) • 結果が若干恣意的なような....
  13. Toon shadingを用いた推しアニメ 『楽園追放 -Expelled from Paradise-』 Full CG!面白い!おすすめ! 『キルラキル』 一部

    CG!面白い!おすすめ!! 『プロメア』 一部 CG!面白い!おすすめ!!! 熱が39度あったけど,無理矢理観に行った
  14. 5-1-4 CGアニメーションの各種技法 Squash and Stretch ボールが跳ねるときに変形を加える Timing and Motion 動作タイミングを変えて物理状態(e.g.

    重さ)を表現 Anticipation 次の動作に対する準備動作を追加 (立ち上がるために右手を地面につけている) Slow In and Out Animation開始/終了付近は動作をゆっくりにする 各区間は時間 技法として名前が定着しているかは謎なので,「そういうのあるんだ」くらいの認識で大丈夫です Arcs 動きの自然な流れ.弧を描くような手の振りなど Appeal 観客の興味を引くようなキャラクタや動きのデザイン
  15. 5-1-5 カメラワーク High angle 被写体を見下ろす点にカメラ設置 俯瞰的な状況を伝えるのに便利 Low angle 被写体を見上げる点にカメラ設置 奥行きのある表現が可能

    Eye level 被写体の目の高さにカメラ設置 日常的なシーンにしたいときに便利
  16. 5-1-5 フレーミング Up shot Screen spaceの大部分が顔 瞬間的な表情を短いカットで伝えるのに便利 Middle shot 胸から上がほぼ映るぐらい

    動作の表現に便利 Long shot 全身が余裕で入る~全身が点景になるレベル シーンの奥行きを強調できる
  17. 5-1-5 カメラの基本動作

  18. Agenda 5-1 CGアニメーションの構成 5-2 キーフレームアニメーション 5-3 手続き型アニメーション

  19. 5-2-1 キーフレーム法とスケルトン法 キーフレーム法: key frame群のパラメータだけで,それ以外のframeを補完 • スケルトン法: 骨格の動きに合わせて,形状を変化させる手法 Rigging +

    skinning キーフレーム法 •: key frame parameters: joint translations
  20. 5-2-2 キーフレームの補間 rotation angle (degree) Key frame間の補間は, 3D spline functionにより滑らかに接続

  21. 5-2-3 形状変形アニメーション Blend shape: 頂点数と隣接関係が同一の複数メッシュの重み付き和で形状表現 • 教科書にある,画像上での morphing/warpingも原理は大体同じです α +(1-α)

    = blend weight
  22. Research related to blend shape SMPL [Loper et al. CVPR

    2015] FLAME [Li et al. TOG 2015]
  23. Research related to blend shape SMPL [Loper et al. CVPR

    2015] Shape-dependent offset   Pose-dependent offset   Part-wise blend weights Skinning function (LBS or DQS)   Template vertices    
  24. 5-2-4 自由形状変形 FFD (Free Form Deformation): Latticeのvertexを変形→内側の変形を補間 • 複雑な形状も簡単に変形可能 (Ref:

    differentiable cage-based deformation [Yifan et al. CVPR 2020])
  25. Ref: Finite Element Method (FEM) FEM: Meshを有限要素に区切って変形や熱伝播を計算; CAEでよく用いられる https://github.com/taichi-dev/games201/releases 変形後の頂点位置

    初期姿勢の頂点位置 deformation map (R^3 → R^3) deformation gradient (translation invariant) 体積変化率 ← ある頂点の次フレームの速度 ← ある頂点の次フレームの位置 ある頂点に加わる外力 気合で外力を求める (chain ruleに基づけば、簡単に求められる ) よくわからないやつは全部定数
  26. Research related to mesh discretization 水棲軟体生物(e.g. タコ)の筋収縮を FEMとRLで再現 [Min et

    al. TOG 2019] BEM (Boundary Element Method)ベースの 手法で任意形状の笛を作成する手法 [Umetani et al. TOG 2016]
  27. Agenda 5-1 CGアニメーションの構成 5-2 キーフレームアニメーション 5-3 手続き型アニメーション

  28. 5-3-1 進化・成長のアニメーション L system (Lindenmayer system): 正規文法で植物の成長を記述 応用: 外的要因(受光量や植生)を考慮, 道路網やビル群の生成を同様に表現

    Reference: https://www.borndigital.co.jp/book/6342.html 生成規則
  29. 5-3-2 流体表現 基本的にコレを解けば良い Incompressible Navier-Stokes equations for a Newtonian fluid

    (Strong form) 解析的に解くのは難しいので, 数値計算で近似的に解く 移流項 (流れの分布が自身の流れによって変化する項 ) Accuracy and speed of fluid simulation Game CG Movie CG CAE Rough Accurate Slow Fast 直感的には,微小要素単位の運動方程式 (解説) 解くのが難しい主な原因はダブルピースしているように見えるこいつ
  30. 5-3-2 流体計算手法 解法としては,Eulerian法(格子法)とLagrangian法(粒子法)の2流派が存在 Eulerian 格子(Grid; Mesh)単位で計算 代表手法: FVM, FEM Lagragian

    粒子(Particle)単位で計算 代表手法: MPS, SPH, DEM
  31. Ref: Eulerian view https://github.com/taichi-dev/games201

  32. Ref: Lagrangian view https://github.com/taichi-dev/games201

  33. (おまけ) Hybridな手法 速度場等の大まかな計算をEulerianで行って、 Lagrangian空間で速度等をParticleに反映させる手法のHybridな手法が人気 反映時に一定の損失が生じるため、理論的な妥当性は保証されていない。一方で、 Topologyをぶっ壊す変形を表現可能 (= CG用途の手法) 物質点法(MPM)による雪のシミュレーション [Stomakhin

    et al. TOG 2013] 正直なところ理解曖昧なので,確認のために読み会したい
  34. History of CG simulation with MPM

  35. 流体CG知りたい人向け資料 Eulerian • [Stam. GDC 2003]: Real-time fluid simulationの祖 SPH

    (Lagrangian) • Eurographics Tutorial (2019): Interactive Computer Graphics(RWTH)によるTutorial • [Ihmen et al. Eurographics 2014]: SPHのSurvey論文 • [コンピュータグラフィクス論]: NII 高山先生&安東先生の講義資料 (他にも一般的なCGの講義資料あり) • Indie Visual Lab: SPHやCompute Shader等のUnity実装と日本語解説 MPM (Hybrid) • [Stomakhin et al. TOG 2013]: CG Simulation用途にMPMを初めて導入した論文 • SIGGRAPH Courses (2016, 2019): 達人による詳細な資料(少し難しい) • [yuanming-hu/taichi_mpm]: Sparse data computation用のPython-like language - https://github.com/taichi-dev/games201: ↑のTutorial (in English and Chinese) • https://nialltl.neocities.org/articles/mpm_guide.html: MPMのUnity実装(Tutorial込み)
  36. おわり