ディープラーニングの最新CG/CV 応用

ディープラーニングの最新CG/CV 応用

2020/2/4 情報処理学会/最先端表現技術利用推進協会 短期集中セミナー
「ここまで来た ! 空間表現の先端事例と技術動向~CG/CV/VR/HCIの最先端~」
講演資料

Fc0225dd1bc875c739e0c6d636023a39?s=128

Yoshihiro Kanamori

February 04, 2020
Tweet

Transcript

  1. ディープラーニングの 最新 CG/CV 応用 筑波大学 システム情報系 金森 由博 (kanamori@cs.tsukubai.ac.jp) 1

    2020/2/4 「ここまで来た ! 空間表現の先端事例と技術動向 ~CG/CV/VR/HCIの最先端~」講演資料
  2. 自己紹介 • 学生時代からコンピュータグラフィクス (CG) の研究に従事 • 学生時代 (~2009): (リアルタイム) 3DCG

    • 筑波大着任後 (2009~現在): 画像を入力とした CG • スイスに留学 (2014~2016): 手描きアニメ制作支援 • 研究テーマ • 写実的 CG、画像処理、コンピュータビジョン、 制作支援、深層学習 (deep learning) 2
  3. 計算幾何学とグラフィックス研究室 • 三谷純 教授 • 計算折り紙・曲面折り紙で有名 • 遠藤結城 助教 •

    元教え子、前職は NTT 研究員 • 深層学習が得意 → 金森にとっての師 3
  4. 本日の内容 • 金森が把握している、ディープラーニング 関係の最新手法を広く浅く紹介 • 対象分野は CG およびコンピュータビジョン (CV)、 特に

    CG と CV の境界・融合領域 • 参考文献の出処の例: • CG 系: SIGGRAPH (Asia), Transactions on Graphics • CV 系: CVPR, ICCV, ECCV • AI, ML 系・その他: ICLR, NeurIPS, arXiv 4
  5. 今日のトピック 5 画像生成 動画生成 再照明 3D 復元 人物関係

  6. 画像生成 (1/2) • Generative Adversarial Network (GAN) の普及 • 偽物を生成する

    Generator と、本物と偽物を見分ける Discriminator を相互に学習させる • 「本物か否か」の損失関数は汎用的で広く利用される • ただし RMSE などの通常の数値誤差は増大しがち 6 画像の出典: https://sites.google.com/site/aidysft/generativeadversialnetwork
  7. 画像生成 (2/2) • 乱数 (ノイズ) からの画像生成で写実性が 劇的に向上 • 段階的学習 “Progressive

    GAN” [Karras+, 2017] • ネットワークの大規模化 “BigGAN” [Brock+, 2019] • 生成画像の属性ごとの制御“StyleGAN” [Karras+, 2019a] • 正規化の改良と潜在空間を滑らかにする制約 “StyleGAN2” [Karras+, 2019b] ← New!! ※ 上記 [Karras+, ???] は NVIDIA の研究チーム 7
  8. 最新手法: StyleGAN2 [Karras+, 2019b] • 「人間の顔」の潜在空間での補間 8 動画の出典: https://www.youtube.com/watch?v=6E1_dgYlifc

  9. Image-to-Image Translation (pix2pix) (1/3) • 画像ドメイン間の「翻訳」[Isora+, 2017] • 例: 意味ラベル→実写風、実写→地図、白黒→カラー、

    昼→夜、エッジ画像→実写風、などなど 9
  10. Image-to-Image Translation (pix2pix) (2/3) • 乱数 (ノイズ) の代わりに入力データを ネットワークに与えて条件付け •

    conditional GAN; cGAN 10 生成画像 入力画像 Generator Discriminator 正解画像
  11. Image-to-Image Translation (pix2pix) (3/3) • 汎用的で応用多数、引用 4,224 件(1 月末現在) 11

    画像補完 [Iizuka+, 2017] 白黒画像の対話的色付け [Zhang+, 2017] スケッチからの地形生成 [Guérin+, 2017] 煙シミュレーションの高解像度化 [Xie+, 2018]
  12. CycleGAN [Zhu+, 2017] (1/2) • 入力・正解画像ペアに画素単位の対応が 取れていなくても変換を学習できるように 12

  13. CycleGAN [Zhu+, 2017] (2/2) • pix2pix (左) では画素の対応の取れたペアが 必要だったが、CycleGAN (右)

    では不要 • ドメイン X, Y 間の相互変換関数を学習 (cycle consistency) 13
  14. pix2pix の高解像度化 (pix2pixHD) [Wang+, 2018] • 特に意味ラベルからの画像合成の例で 高解像度 (例: 2048×1024)

    を扱えるように • 低解像度と高解像度の 2 段階学習 14 意味ラベルマップ 実写風生成画像 (高解像度)
  15. pix2pix の高解像度化 (pix2pixHD) [Wang+, 2018] • 低解像度 (中央) と高解像度 (両端)

    の 2 段階学習 • まず低解像度のネットワークを学習 • 安定したら両端に高解像度のネットワークを追加 15
  16. 意味的画像合成の改良 [Park+, 2019] • 意味ラベルからの画像合成を安定に、 より軽量なネットワークで実現 • 意味ラベルを捉える正規化層 (SPADE) を導入

    16
  17. 意味的画像合成の改良 [Park+, 2019] • 意味ラベルを考慮した正則化層 SPADE を 多重解像度で追加することで安定化 • 2

    段階学習は不要、デコーダのみのネットワーク 17
  18. 画像生成についての参考文献 [Karras+, 2017] "Progressive Growing of GANs for Improved Quality,

    Stability, and Variation," ICLR2017. [Brock+, 2019] "Large Scale GAN Training for High Fidelity Natural Image Synthesis," ICLR2019. [Karras+, 2019a] "A Style-Based Generator Architecture for Generative Adversarial Networks," CVPR2019. [Karras+, 2019b] "Analyzing and Improving the Image Quality of StyleGAN," arXiv, 2019. [Isora+, 2017] "Image-to-Image Translation with Conditional Adversarial Nets," CVPR2017. [Iizuka+, 2017] "Globally and Locally Consistent Image Completion," SIGGRAPH2017. [Zhang+, 2017] "Real-Time User-Guided Image Colorization with Learned Deep Priors," SIGGRAPH2017. [Guérin+, 2017] "Interactive Example-Based Terrain Authoring with Conditional Generative Adversarial Networks," SIGGRAPH Asia2017. [Xie+, 2018] "tempoGAN: A Temporally Coherent, Volumetric GAN for Super-resolution Fluid Flow," SIGGRAPH2018. [Zhu+, 2017] "Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks," ICCV2017. [Wang+, 2018] "High-Resolution Image Synthesis and Semantic Manipulation with Conditional GANs," CVPR2018. [Park+, 2019] "Semantic Image Synthesis with Spatially-Adaptive Normalization," CVPR2019 18
  19. 今日のトピック 19 画像生成 動画生成 再照明 3D 復元 人物関係

  20. 静止画像からの動画生成 • 一枚の静止画像から動きを予測 • 最近の手法: 3D 畳み込み and/or 生成モデル (GAN,

    Variational Auto Encoder; VAE) などが主流 20 [Vondrick+, 2016] [Li+, 2018] [Xue+, 2016] [Xiong+, 2018]
  21. 静止画像からの動画生成の難しさ • 静止画の生成の場合よりも、動画の方が バリエーションが大きく、学習が困難 • アーティファクトが多く低画質になりがち • 3D 畳み込みの消費メモリが大きい •

    予測できるフレーム数に限界がある (~32 フレーム) • 扱える動画の解像度が小さくなってしまう (1282) 21
  22. 色変化のアニメーション • 静止画向けの手法でアニメーション生成 • 時間的な一貫性がないのでチラつきが発生 22 入力画像 (※右と同サイズ) 静止画向け既存手法 [Karacan+,

    2019]
  23. 景観画像のアニメーション生成 • 高解像度&予測フレーム数の制限なし& 動きと色の変化を制御可能 [Endo+, 2019] 23 入力画像 動きのみ予測 動きと色変化を予測

    プロジェクトページ: http://www.npal.cs.tsukuba.ac.jp/~endo/projects/AnimatingLandscape/
  24. [Endo+, 2019] の長所とその理由 • 高解像度 (1024×576 など) • 流れ場を予測し、それを利用して入力画像の画素 から予測フレームを再構成

    • 予測フレーム数の制限なし (1000 フレーム超) • 出力をまた入力にして繰り返し推定 (recurrent prediction) • 一様&定常的な動きを仮定することで、低解像度の 流れ場を予測すれば十分となり、誤差が累積しにくい ※上記は動きについてのみ、色の変化は別アプローチ • 動きと色の変化を制御可能 • それぞれ潜在変数に依存させつつ独立に学習・予測 24
  25. 既存手法との比較 (1/2) 25 入力画像 流れ場 (予測) 流れ場 (予測) [Endo+, 2019]

    (640×360, 200 フレーム) [Endo+, 2019] (1010 フレーム) [Li+, 2018] (128×128, 16 フレーム) [Xiong+, 2018] (128×128, 32 フレーム) ×2 倍速再生
  26. 既存手法との比較 (2/2) • 色の変化を長期で予測してもチラつきなし • 色の変化の予測時に時間方向の補間ができるため (色を直接補間するのではなく潜在変数を補間) 26 入力画像 [Karacan+,

    2019] (2.7 秒) [Endo+, 2019] (10.4 秒)
  27. 動きのユーザ制御 • 「矢印」を配置して雲の動きを制御 27 指定された 動きの方向 入力画像

  28. 色の変化のユーザ制御 • 「パッチ」を使って色の変化を制御 28 色の指定のためのパッチ 入力画像 出力動画

  29. SinGAN [Shaham+, 2019] • 一枚の画像から定常的なアニメーションを 自動生成、ICCV 2019 のベストペーパー 29 動画の出典:

    https://www.youtube.com/watch?v=xk8bWLZk4DU
  30. 動画生成についての参考文献 [Vondrick+, 2016] "Generating Videos with Scene Dynamics," NIPS2016. [Xie+,

    2016] "Visual Dynamics: Probabilistic Future Frame Synthesis via Cross Convolutional Networks," NIPS2016. [Xiong+, 2018] "Learning to Generate Time-Lapse Videos Using Multi-Stage Dynamic Generative Adversarial Networks," CVPR2018. [Li+, 2018] "Flow-Grounded Spatial-Temporal Video Prediction from Still Images," ECCV2018. [Karacan+, 2019] "Manipulating Att ributes of Natural Scenes via Hallucination," ToG2019. [Endo+, 2019] "Animating landscape: self-supervised learning of decoupled motion and appearance for single-image video synthesis," SIGGRAPH Asia 2019. [Shaham+, 2019] "SinGAN: Learning a Generative Model from a Single Natural Image," ICCV2019. 30
  31. 今日のトピック 31 画像生成 動画生成 再照明 3D 復元 人物関係

  32. 再照明 (Relighting) とは? • ある照明環境下で撮影された物体を、 別の照明環境下でレンダリングする技術 • 3DCG では光源・形状・材質が既知として計算 32

    Paul Debevec の Light Stage による撮影風景と再照明の様子
  33. 一枚の画像を入力とした再照明 • 画像から、光源・形状・材質 (反射特性) を推定する必要あり (逆レンダリング) • よくある仮定: • 凸形状

    (顔など) なので光の遮蔽は無視できる • ほぼ拡散反射なので球面調和関数 (SH) で近似可能 33 [Sengupta+, 2018] [Tewari+, 2017] [Barron and Malik, 2015]
  34. 光の遮蔽を考慮するか否かの影響 • 非凸形状の場合、見た目に大きく影響 • リアルタイム CG の分野で研究済み [Sloan+, 2002] 34

    光の遮蔽を無視 光の遮蔽を考慮
  35. 光の遮蔽を考慮することの難しさ • 光の遮蔽を無視すると 法線さえわかれば 解析的に計算可能 • 光の遮蔽を考慮するには 「どの方向なら遮られる・ 遮られない」まで必要 •

    解析的には求まらない • レイを飛ばして調べる必要あり…高コスト 35 光 光 光 光 光 物体表面の凹み 物体表面の凹み 光 光 光 光 光
  36. 光の遮蔽を考慮した再照明 • 光の遮蔽を明示的に考慮 [Kanamori+, 2018] • 事前に計算した遮蔽情報を用いて教師あり学習 • 畳み込みニューラルネット (CNN)

    で逆レンダリング • 適用例は人物画像だが、一般物体にそのまま適用可能 36 入力画像 光伝達マップ 反射率マップ 光源 CNN 光の遮蔽を含む SH 係数マップ プロジェクトページ: http://kanamori.cs.tsukuba.ac.jp/projects/relighting_human/
  37. 適用例 37

  38. 実写画像を用いた比較 • テクスチャなし (左) とあり (右) の結果 39 光の遮蔽を無視 光の遮蔽を考慮

    [Kanamori+, 2018]
  39. 後続の研究 • Light Stage を使って撮影された高品質 データを用いて教師あり学習 [Sun+, 2019] • 光の遮蔽を含めた照明計算は暗黙的に考慮される

    40 入力画像と 推定された光源 再照明結果とそれに用いた光源情報
  40. 再照明についての参考文献 [Barron and Malik, 2015] "Shape, Illumination, and Refl ectance

    from Shading," TPAMI2015. [Tewari+, 2017] "MoFA: Model-Based Deep Convolutional Face Autoencoder for Unsupervised Monocular Reconstruction," ICCV2017. [Sengupta+, 2018] "SfSNet: Learning Shape, Refl ectance and Illuminance of Faces 'in the Wild'," CVPR2018. [Sloan+, 2002] "Precomputed radiance transfer for real-time rendering in dynamic, low-frequency lighting environments," SIGGRAPH2002. [Kanamori and Endo, 2018] "Relighting Humans: Occlusion-Aware Inverse Rendering for Full-Body Human Images," SIGGRAPH Asia 2018. [Sun+, 2019] "Single Image Portrait Relighting," SIGGRAPH2019. 41
  41. 今日のトピック 42 画像生成 動画生成 再照明 3D 復元 人物関係

  42. 3D 復元 • 一枚 or 複数枚の画像から形状を復元する 手法が多数 … 以降は入力一枚に限定 •

    3D ベンチマーク [Xiang+, 2014][Chang+, 2015] での形状復元の性能を競う • 3D データを使った教師あり学習が大半 • 出力となるデータの表現方法は様々 • 例: ボクセル、オクツリー、点群、メッシュ、 デプスマップ、陰関数、など 43
  43. 3D 表現方法と長所・短所 (1/2) • ボクセル ◦単純、位相構造に制限なし ✕メモリ消費大、低解像度 • オクツリー (八分木)

    ◦ボクセルよりメモリ効率改善 ✕より複雑、低解像度 • 点群 (Point Cloud) ◦より解像度を上げやすい ✕まだ粗い、表面抽出が必要 44 [Xie+, 2019] [Tatarchenko+, 2017] [Fan+, 2017]
  44. 3D 表現方法と長所・短所 (2/2) • メッシュ ◦表面形状が平坦 or 滑らか ✕位相構造に制限あり •

    デプスマップ ◦省メモリ、位相構造に制限なし ✕相互の整合を取りづらい • 陰関数 ◦省メモリ、表面形状が滑らか △表面の詳細形状を扱いづらい 45 [Chen+, 2019] [Richter and Roth, 2018] [Mescheder+, 2019]
  45. 注目の技術: 微分可能レンダリング (1/4) • レンダリング処理を微分可能にし、各種 パラメータを最適化して入力画像を再現 • 最適化対象: 座標変換、テクスチャマップ、形状、 光源など

    46 入力画像から形状・テクスチャ・光源を同時に推定 [Chen+, 2019]
  46. 注目の技術: 微分可能レンダリング (2/4) • 基本アイディア: ラスタライズ処理を 近似的に微分可能に 47 微分可能レンダリングの基本原理 [Kato+,

    2018] 通常処理: 微分不可 ブラー適用: 微分可能
  47. 注目の技術: 微分可能レンダリング (3/4) • メッシュベースの手法では初期形状 (球や 楕円体など) と異なる位相構造を扱えない • 点群

    (Surface Splat) の集合として、任意の 位相構造を扱える手法も登場 [Wang+, 2019] 48 初期形状 ターゲット 最適化結果 メッシュ化
  48. 注目の技術: 微分可能レンダリング (4/4) • レイトレーシングに基づく微分可能 レンダラ “Mitsuba 2” [Nimier-David+, 2019]

    • 初期シーンを写真に近づける [Loubet+, 2019] 49 初期シーン 最適化結果 写真
  49. Kaolin: 3D 関係の PyTorch ライブラリ • 3D 復元を含む 3D 処理関係のための

    NVIDIA 発 PyTorch ライブラリ[Murthy+, 2019] • 名称は粘土 (カオリン) に由来、原型制作に使われる 50 Kaolin が提供する主な機能 [Murthy+, 2019]
  50. その他の単視点 3D 復元手法 • 3D シーンを対象とした手法も多数存在 • 入力画像から可視範囲の深度 (と法線) マップを推定

    • 屋内シーン • 屋内は平面が 支配的なので、 明示的に平面部分を抽出 • 屋外シーン • 車載カメラの動画を 入力とした手法が多い 51 PlaneRCNN [Liu+, 2019] Monodepth2 [Godard+, 2019]
  51. 3D 復元についての参考文献 [Xiang+, 2014] "Beyond PASCAL: A Benchmark for 3D

    Object Detection in the Wild," WACV2014. [Chang+, 2015] "ShapeNet: An information-rich 3D model repository," arXiv, 2015. [Xie+, 2019] "Pix2Vox: Context-aware 3D Reconstruction from Single and Multi-view Images," ICCV2019. [Tatarchenko+, 2017] "Octree Generating Networks: Efficient Convolutional Architectures for High-resolution 3D Outputs," ICCV2017. [Fan+, 2017] "A Point Set Generation Network for 3D Object Reconstruction from a Single Image," CVPR2017. [Chen+, 2019] "Learning to Predict 3D Objects with an Interpolation-based Differentiable Renderer," NeurIPS2019. [Richter and Roth, 2018] "Matryoshka Networks: Predicting 3D Geometry via Nested Shape Layers," CVPR2018. [Mescheder+, 2019] "Occupancy networks: Learning 3d reconstruction in function space," CVPR2019. [Kato+, 2017] "Neural 3D Mesh Renderer," CVPR2018 [Wang+, 2019] "Differentiable Surface Splatting for Point-based Geometry Processing," SIGGRAPH Asia 2019. [Nimier-David+, 2019] "Mitsuba 2: A Retargetable Forward and Inverse Renderer," SIGGRAPH Asia 2019 [Loubet+, 2019] "Reparameterizing Discontinuous Integrands for Diff erentiable Rendering," SIGGRAPH Asia 2019 [Murthy+, 2019] "Kaolin: A PyTorch Library for Accelerating 3D Deep Learning Research," arXiv, 2019. [Liu+, 2019] "PlaneRCNN: 3D Plane Detection and Reconstruction from a Single Image," CVPR2019. [Godard+, 2019] "Digging into Self-Supervised Monocular Depth Prediction," ICCV2019. 52
  52. 今日のトピック 53 画像生成 動画生成 再照明 3D 復元 人物関係

  53. 人物を対象とした深層学習手法 • 様々な技術の混成、実用化への期待大 54 ランドマーク推定 [Cao+, 2018] ポーズ&体型推定 [Kolotouros+, 2019]

    化粧の転写 [Li+, 2018] 意味的領域分割 [Lin+, 2019] 衣服の仮想試着 [Han+, 2018]
  54. 注目の技術: Deep Fake (1/4) • 動画中の人物の 顔を別人にすげ 替える技術 • 2017

    年に有名女優 の偽ポルノ動画で 一躍有名に • 南アフリカなどでは政治スキャンダルに悪用 • 世界的に問題視、2020 年のダボス会議でも話題に • 騙す (合成)・見抜く (検出) 技術の双方の研究が盛ん 55 Deep Fake の例 動画の出典: https://www.technologyreview.jp/s/99024/the-defense- department-has-produced-the-first-tools-for-catching-deepfakes/
  55. 注目の技術: Deep Fake (2/4) • 騙す (合成) 技術の例 [Kim+, 2018]

    1. 顔の動きの元となる入力動画と、ターゲット人物の 動画に対し、顔の 3DCG モデルを当てはめる 2. 変形させた顔の 3DCG モデルからニューラルネットで 写実的な顔の動画を合成 56
  56. 注目の技術: Deep Fake (3/4) • 見抜く (検出) 技術の例 [Rossler+, 2019]

    • YouTube から 1,000 動画をダウンロードし、既存の Deep Fake 技術で約 140 万動画を合成 • 顔部分を検出しニューラルネットで Real/Fake を判定 57
  57. 注目の技術: Deep Fake (4/4) • 指定した言語のナレーション動画を自動 生成するサービス “Synthesia” • BBC

    の天気予報で最近利用された 58 https://www.synthesia.io/
  58. 注目の技術: 人物の 3D 復元 (1/3) • 独 Max Planck 研究所を中心に盛ん

    • Amazon から集中投資、e コマースへの応用を期待 • 変形可能メッシュ “SMPL” がデファクト • 人体モデルの姿勢と体格をパラメータで制御可能 • Linear-blend or dual-quaternion skinning で変形 59 SMPL [Loper+, 2015]
  59. 注目の技術: 人物の 3D 復元 (2/3) • 着衣人物の 3D 復元 [Weng+,

    2019] • SMPL 自体はほぼ裸体だが、メッシュを歪めて 着衣人物のそれらしい形状を再現、アニメーション化 60
  60. 注目の技術: 人物の 3D 復元 (3/3) • SMPL によらない手法も多数登場 • スカートなど身体にフィットしない形状や

    手荷物など SMPL では扱えない形状も扱える 61 前面・背面のデプス・テクスチャマップを推定 [Smith+, 2019] [Gabeur+, 2019] 陰関数を利用 [Saito+, 2019]
  61. 人物関係についての参考文献 [Cao+, 2018] "OpenPose: realtime multi-person 2D pose estimation using

    Part Affinity Fields," arXiv, 2018. [Kolotouros+, 2019] "Learning to Reconstruct 3D Human Pose and Shape via Model-fitting in the Loop," ICCV2019. [Li+, 2018] "BeautyGAN: Instance-level Facial Makeup Transfer with Deep Generative Adversarial Network," Multimedia2018. [Han+, 2018] "VITON: An Image-based Virtual Try-on Network," CVPR2018. [Kim+, 2018] "Deep Video Portraits," SIGGRAPH2018 [Rossler+, 2019] "FaceForensics++: Learning to Detect Manipulated Facial Images," ICCV2019. [Loper+, 2015] "SMPL: A Skinned Multi-Person Linear Model," SIGGRAPH Asia 2015. [Weng+, 2019] "Photo Wake-Up: 3D Character Animation from a Single Photo," CVPR2019. [Smith+, 2019] "FACSIMILE: Fast and Accurate Scans From an Image in Less Than a Second," ICCV2019. [Gabeur+, 2019] "Moulding Humans: Non-parametric 3D Human Shape Estimation from Single Images," ICCV2019. [Saito+, 2019] "PIFu: Pixel-Aligned Implicit Function for High-Resolution Clothed Human Digitization," ICCV2019. 62
  62. まとめと今後の展望 63

  63. まとめと今後の展望 (1/2) • 深層学習は基盤的なツールとして普及 • CG 分野の研究でも当たり前に使われている • (遠い?近い?) 将来には

    CG は自動で 生成できるようになりそう • 「ドメイン知識なしで達成」… 機械学習の究極目標 • そのとき CG の研究分野は…? 64
  64. まとめと今後の展望 (2/2) • いずれの分野でも改善の余地が大きい • 精度・品質・汎用性向上、省メモリ・コンパクト化 • CG に関する知識が非常に有用 •

    「如何に合成 (CG) データを作るか・誤差を測るか」 • 教師データについての課題 • CG データで学習 → 実写で推論するため、 ドメイン適応 (domain adaptation) が重要 • そもそも大量の教師データを集めるのは困難なので 教師なし学習や自己教示学習に注目が集まっている 65
  65. 最新手法を追いかけるには? • “Papers with Code” 66 https://paperswithcode.com/sota