Viggle-Animate: 単一の再描画フレームからの H3 キャラクター置換
Viggle-Animate は、DMD 蒸留を備えた MiniMax H3 ref2va の 33.1B ファインチューンで、1 つの再描画フレームから動画キャラクターを置換し、3 回の順伝播、クリップあたり 26 秒です。
モデルカードからのティーザー:描画されたキャラクターが駆動動画を引き継ぎますが、モーション、カメラ、タイミングはそのままです。
仕組み
ほとんどのキャラクター置換パイプラインは中間表現に基づいて構築されています:ポーズスケルトン、セグメンテーションマスク、背景プレート、顔クロップなど。各抽出器は実行する別のモデルであり、情報が失われる別の場所です。Viggle-Animate はそれらのいずれも使用しません。参照がクリップ自体のフレームの 1 つであるため、そのポーズ、カメラ、フレーミング、照明はすでに映像と一致しており、下流の処理はこれらを再度整合させる必要がありません。モデルには新しいキャラクターが何であるかは伝えられません:クラスなし、アイデンティティエンコーダーなし、ユーザーテキストプロンプトなし。
2 つの入力が動画ステージに入ります:駆動クリップと 1 つの再描画フレーム。テキストエンコーダーは決して読み込まれません。条件付けは重みと一緒に提供される 1 つの凍結 embedding で、すべてのレンダリングに共通です。
速度は二重の意味で得られます。再描画フレームが存在すれば、他に実行すべきものはありません。サンプラー自体も蒸留されています:ノイズレベルで分割された 2 つの教師間の共同蒸留で、ファインチューンは置換を決定する高ノイズ側を監督し、オリジナルの MiniMax H3 は詳細とテクスチャを決定する低ノイズ側を監督します。デフォルトは --steps 4 --flow-shift 3 で、これは 4 つのシグマ境界を指定するため、したがって 3 回の順伝播になります。チームは 4 ステップが操作点であり、ショートカットではないと述べています:蒸留されたモデルは教師よりもシャープなレンダリングを行い、ステップが増えすぎると過度なシャープ化に陥ります。
Wan2.2-Animate との比較
同じ B200、同じソース動画、同じ解像度とフレーム数でのマッチド比較:
| Viggle-Animate | Wan2.2-Animate-14B | |
|---|---|---|
| 入力 | 駆動動画 + 再描画フレーム 1 つ | 駆動動画 + キャラクター画像、さらにポーズ、顔、マスク、背景トラックを生成する前処理パス |
| レンダリング、重み読み込み後 | 26 秒 | 160 秒 |
| 順伝播回数 | 3 | 40 (20 ステップ x 2 チャンク) |
| パラメータ | 33.1 B | 17.3 B |
これはレンダリングあたり 6.1 倍速く、サンプリングのみでも 10.3 倍速く、Wan の前処理パスは 160 秒に含まれていないことも考慮するとです。公開された比較クリップは、Wan がぼやけ、Viggle-Animate が正しいフレームにポーズを合わせる高速運動時に最も大きな差を示しています。デモスペース と viggle.ai/h3 が稼働中で、出力を直接判断したい場合は利用できます。
人間を超えて一般化
ループ内の何もがキャラクターが人間であると仮定していないため、アニメートできるものはあなたが描けるものに限定されます。モデルカードには、耳とひれを持つ動物が駆動クリップにない足で動く様子、スタイルの境界を保つクレイフィギュア、そして塗装した翼がフルクリップの間アクターの腕に固定された旅客機が示されています。
描画された参照と出力:描画が解剖学を配置し、レンダリングはそれが常にそこにあったかのようにアニメートします。
モデルカードからの既知の制限:クローズアップでのリップシンクは弱く、マルチキャラクターシーンやカットが落ちるショットでは品質が低下し、モデルは画像編集を受け継ぐため、描画と動画が不一致の場合は動画が勝ります。これらの 3 つのケースを対象とした大幅に優れたモデルはすでにトレーニング中です。
入手方法
- 重み: Hugging Face の Viggle/Viggle-Animate にて、MiniMax H3 コミュニティライセンスの下で提供。33.1B bf16 ファインチューン(14 シャード)と 2.5GB rank-128 DMD2 蒸留 LoRA を同梱。VAE、音声 VAE、スケジューラーはベースモデルの自分のコピーから読み込みます。
- 推論: diffusers ベース、リポジトリ内の
inference/sample.py、アップストリームパイプラインのフォークまたはパッチは不要。bf16 では 1 つの 80GB カードでは不十分です(480x832 / 124 フレームのレンダリングは最大 80.1 GiB に達します):96GB+ のカードを使用するか--offloadを使用してください。 - ネイティブ ComfyUI サポートはまだありません: 公式の Python 推論パスを使用してください。LoRA はファインチューンされたトランスフォーマー上の差分なので、ストック H3 ref2va 重みに読み込み中にするとゴミが生成されます。
- デモ: Viggle/viggle-animate Space と viggle.ai/h3。
コメント
GitHubでサインインしてディスカッションに参加しましょう。