LordLiang/DrawingSpinUp
(SIGGRAPH Asia 2024) This is the official PyTorch implementation of SIGGRAPH Asia 2024 paper: DrawingSpinUp: 3D Animation from Single Character Drawings
DrawingSpinUp:単一のキャラクター描画から3Dアニメーションを作成
概要: 単一の2Dキャラクター描画を、元の手描きスタイルを維持したまま、完全にアニメーション化された3Dバージョンに変換する研究プロジェクト (SIGGRAPH Asia 2024) です。
課題: 通常、2D描画を3Dアニメーションにするには、3Dモデルの手動構築、テクスチャの追加、アニメーション用のリギングが必要です。このプロジェクトでは、1枚の平面画像からプロセス全体を自動化します。
仕組み(3つの主要ステップ):
輪郭の除去 — システムはまず、ニューラルネットワーク(LaMa inpaintingプロジェクトから借用したFFC-ResNet)を使用して描画の暗い輪郭を除去します。これにより、色のみのクリーンなキャラクター画像が得られます。
3Dキャラクター再構成 — クリーンアップされた画像は、マルチビュー生成モデル(Wonder3Dベース)に入力され、キャラクターがさまざまな角度からどのように見えるかを推測します。これらのビューは、テクスチャ付きの単一の3Dメッシュ(.objファイル)に統合されます。
スタイル化されたアニメーション — 3Dキャラクターはリギング(無料の自動リギングツールであるMixamoを使用)され、モーションクリップ(ジャンプやダビングなど)でアニメーション化されます。その後、システムはキャラクターごとのスタイル変換モデルをトレーニングし、元の描画の手描き風の外観をレンダリングされた3Dフレームに再適用します。これにより、最終的なアニメーションは一般的な3Dモデルではなく、元のスケッチが動いているように見えます。
技術的な注意点:
- スタイル変換器はキャラクターごとにトレーニングされます(単一のGPUで数分)。一度トレーニングすれば、再トレーニングなしで新しいアニメーションフレームに適用できます。
- RTX 4090 または 2080 Ti GPU、Python 3.8、PyTorch 2.0、CUDA 11.8が必要です。
- リポジトリには、すぐにエンドツーエンドのパイプラインを実行できるように、事前にリギングされたアニメーションを含むサンプル(
ff7ab74a67a443e3bda61e69577f4e80という名前のキャラクター)が含まれています。 - ユーザーは、独自の512×512のキャラクター描画と前景マスクを提供することもできます。
対象読者: 3D再構成、キャラクターアニメーション、スタイル転送に関心のある研究者や愛好家。このコードは研究レベルであり、Python、GPUセットアップ、コマンドラインワークフローに関するある程度の知識が必要です。
主な依存関係: LaMa (inpainting), Wonder3D (multi-view 3D reconstruction), Few-Shot-Patch-Based-Training (style transfer), Blender (for rendering frames), および Mixamo (auto-rigging)。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト