MiniMax H3 ORB360: 360度カメラオービットとCardSpin LoRA

ComfyUI Wikinews

MATLOWのORB360 LoRAは、MiniMax H3 Ref2VAに、静止した被写体の周囲を時計回りに360度旋回するカメラワークを与えます。さらに写真そのものを空間内で回転させるCardSpinバリアントも用意されています。

MiniMax-H3-ORB360-CardSpin は、MATLOWが制作した MiniMax H3 Ref2VA 用のrank-32 LoRAセットです。ORB360_CW は被写体をその場に固定したままカメラを時計回りに1周させ、CardSpinのファイル群は参照写真そのものを薄い物理的なカードのように空間内で回転させます。最初のファイルは9月28日に公開され、9月30日には高解像度のstep-1500オービットと2回目のCardSpinパスが続きました。
MiniMax H3 ORB360 LoRAで1枚の写真からレンダリングした単一の360度オービット

雪のシーンにいる猫の周囲を1周。1枚の参照写真から生成。ソース: MiniMax-H3-ORB360-CardSpin。

LoRAの機能

MiniMax H3の参照から動画は、入力画像を外観の参照として扱います。これはポーズや見た目には十分ですが、カメラの動きには不十分です。ORB360は代わりに、実際のオービットの幾何学をモデルに教えます。1回転、1方向、固定された被写体、そして説得力のある距離と高さを保つカメラです。シーンの残りの部分は、写真が置いた場所にとどまります。

step-1500オービット、1024 x 768、124フレーム、20ステップ、シード20260926。

CardSpinは同じオービットLoRAから出発し、生成済みの単一クリップで50トレーニングステップを追加します。その結果、写真の中の人物を周回するのではなくなります。写真を平坦なオブジェクトとして扱い、それを回転させます。これは空間に吊るされたプリントやカードのように見えます。

CardSpin v2。同じ写真とシードにcard-spinプロンプトを使用。

どのファイルを使うか

ファイル内容用途
minimax_h3_orb360_step1500.safetensorsオービットLoRA。高解像度Blenderレンダーで1500ステップ、カメラの高さは下から上まで、ラベル付き参照画像を1〜4枚使用クリーンな360度オービット。3つの中で最もシャープ
minimax_h3_orb360_cardspin_v2_step50.safetensorsstep 1500に50のcard-spinステップを追加カードスピン。高解像度オービットから開始
minimax_h3_orb360_cardspin_step50.safetensorsCardSpin v1。古い750ステップのオービットをベースに構築オリジナルのcard-spinリリース

以下のクリップは、CardSpinを生んだ偶然の産物です。オービットLoRAを、トレーニングに使ったグレー背景のレンダーではなく実際の写真でテストしていたとき、MATLOWはJulia Margaret Cameronによるサー・ジョン・ハーシェルの1867年の肖像画を入力しました。するとモデルは、人物ではなく写真そのものを回転させる対象だと判断しました。

19世紀の肖像画に対する750ステップのオービットLoRA。ソース: MiniMax-H3-ORB360-CardSpin。

その1つのクリップのキャプションで50ステップを実行すると、効果はトレーニングが一度も見ていない写真にも転移しました。高解像度パスは見た目以上に重要です。step-1500オービットは750ステップ版と比べて細部をおよそ2倍にします。一方、50のcard-spinステップは触れるものすべてを柔らかくするため、クリーンなオービットが欲しいときにCardSpinは選ぶべきファイルではありません。

白猫360、同じ写真、プロンプト、シード、長さオービット step 750CardSpin v1ORB360 step 1500CardSpin v2
細部(Laplacian分散)30.219.856.120.7
step 1500に対する細部0.54x0.34x1.00x0.35x
エッジエネルギー(Tenengrad)10988091343841
最初のフレームと写真の比較、PSNR / SSIM28.0 dB / 0.8724.5 dB / 0.8528.5 dB / 0.8722.5 dB / 0.77
4つのオービットLoRAによる同じフレームのネイティブピクセルクロップ

同じフレームのネイティブピクセルクロップ。1列につき1つのLoRA。ソース: MiniMax-H3-ORB360-CardSpin。

step-1500オービットの精度

作者は、トレーニング用に一度もレンダリングされていない3つのオブジェクトについて、それぞれ1シードでstep 1500をテストし、真のオービットのBlenderレンダーと比較しました。

テスト結果
20度でのオービット、3つの視点(0/120/240)すべてのフレームで真のオービットの1フレーム以内(2.9度)
下からのオービット(中心から30度と10度下、床なし)124フレーム中118〜124フレームで正しい高さ、クリーンな1回転
45度から撮影した写真で、5度のオービットを要求3つのオブジェクトすべてで低いオービット、ほとんどのフレームがターゲットの5〜10度以内
1枚の正面写真からの高いオービット(45度)高いオービット、ほとんどのフレームで30〜45度、見えない側は生成
45度から撮影した写真で、30度下のオービットを要求失敗。参照写真の高さに向かってドリフトする
クリップ中に高さが変化、例えば上45度から下30度へ失敗。カメラが動く代わりにオブジェクトがタンブルする

これらの数値はグレー背景のレンダーから得られたものです。実際の写真では、現時点でオービットは参照写真の高さにとどまります。作者はこれを主要な未解決問題として挙げています。

ComfyUIでLoRAを使う

両方のファイルは、MiniMax H3 Ref2VA モデル上で、スタンダードな Lora Loader ノードを使い、model-onlyモード、強度1.0でロードします。これらは lora_unet_*、lora_down、lora_up、alpha キーを持つkohyaスタイルのLoRAで、200個のモジュールすべてがComfyUIがすでにロードするMiniMax H3の重みに対応します。

  • 参照画像をRef2VAの条件付けに入力します。参照が1つの場合、モデルはそれをオービットの最初と最後のフレームとして扱います。
  • クリップは 124フレーム、24 fps に保ちます。リポジトリ内のプロンプトには「at 1.708333 seconds (zero-based frame 41), 120 degrees」のようなタイムコードが含まれており、この長さを前提としています。
  • 重みには4つのプロンプトが同梱されています。写真自体の周囲を保つ単一写真オービット、前面・120度・240度ビュー用の3参照バリアント、そしてstep-1500パスがトレーニングされた正確なキャプション形式2つ(ホールドアウトテストから取得)です。
  • 動作が確認されている解像度は、ランドスケープで 800 x 800、1024 x 768、1152 x 768、ポートレートで 672 x 832、832 x 1024 です。
  • キャプションはMiniMaxのRef2VAプロンプトレイアウトに従い、両方の音声セクションを N/A に設定して無音を要求します。これがないとH3はサウンドトラックを勝手に生成しがちです。

トレーニング

両ステージはmusubi-tunerで、rank 32、アルファ32、AdamW、一定学習率1e-4、bf16混合精度、動画のみのlossにより、単一のNVIDIA RTX PRO 6000上でトレーニングされました。step-1500オービットでは、Blenderでレンダリングした23アセットを、3つの長さで345の時計回り1回転オービットとして使用し、各クリップが異なる参照画像で3つのトレーニング行に登場したため、960行、1500ステップ、約26時間となりました。

制限事項

  • 高さの制御はグレー背景のレンダーには引き継がれますが、実際の写真にはまだ引き継がれません。
  • クリップ中に高さが変わるオービットは失敗し、被写体がタンブルします。
  • CardSpinの出力は、派生元のstep-1500オービットよりも明らかに柔らかくなります。
  • 例のキャプションの高さ、時間、角度はリポジトリ内のテストオブジェクトを記述したものであり、他の被写体には編集が必要です。

コメント

GitHubでサインインしてディスカッションに参加しましょう。

コメントを読み込み中…
MiniMax H3 ORB360: 360度カメラオービットとCardSpin LoRA | ComfyUI Wiki