Krea 2 Anygles: ComfyUI向けカメラ視点制御LoRA
Krea 2 Anyglesは人物写真1枚から3D human normal LoRAで新しいカメラビューを生成します。オービット、仰角、距離を制御するComfyUIノードとワークフローも付属します。
人物にカメラを向けてから動かす。水平オービット、仰角、距離の制御はすべて1つのアダプターから行えます。Anyglesはソース画像から3D人体メッシュと位置合わせされた法線マップを復元し、そのメッシュを要求されたポーズに回転させ、レンダリングされた法線を空間制御としてKrea 2に投入します。オリジナル画像は人物同一性とスタイルの参照としてそのまま残るため、モデルは古い画像を編集するのではなく新しいビューを生成します。
![]() | ![]() |
|---|---|
| ソース画像、単一の人物被写体 | カメラ位置を回転させた同じ被写体 |
水平オービット。各フレームはオリジナルのソースから独立して生成されるため、ビュー同士が連鎖しません。
制御できる項目
- 完全な水平オービット: 360度の一周を通した連続的なヨー。
- 仰角: 体のプロポーションを自然に保ったまま、視点を被写体の上または下へ移動。
- 距離: 寄りのフレーミングからより広いビューまで引く。
- 複合モーション: ヨー、仰角、距離を1本のスムーズな軌道に沿って同時に変化させる。
- 独立した生成: 各ビューはオリジナルのソース画像から開始するため、生成済みフレームをモデルに戻すときに蓄積するドリフトを回避できます。
- ソースに合わせたフレーミング: 出力はソースのアスペクト比を維持し、サイズは16ピクセル単位で揃えられます。
公開されている制御範囲は仰角が-60~+60度、距離が0.6倍~1.8倍で、作者はこれを厳密な限界ではなくインターフェース上のガードレールと説明しています。リリース時のスイープは仰角-45~+45度、距離1.35倍~0.78倍をカバーしています。
1本の閉じたカメラ軌道に沿って方位角、仰角、距離が同時に変化します。
現在のリリースは明瞭な人物被写体1人を対象としています。動物、一般的な物体、群衆、あるいは完全な3Dシーンの正確な再構成向けには作られていません。
マルチアングルQwenベースラインとの比較
ソースリポジトリには、4ステップのLightningスケジュールで実行したQwen-Image-Edit 2511マルチアングルLoRAとの実用的な比較が含まれています。どちらも生成フレームごとにオリジナルのソース画像を独立して受け取り、すべての出力は固定したプロンプトとシードによる最初の結果です。
QwenマルチアングルベースラインとAnyglesによる360度の水平オービット比較。
作者は、QwenベースラインがAnyglesで使われるターゲット法線を受け取らないため、これは同一条件付けのアブレーションではなく機能比較であると述べています。
仕組み
- ソース画像からSAM 3D Bodyで人体メッシュを1回だけ復元します。
- メッシュを骨盤を中心に回転させ、ソースのアスペクト比に一致するキャンバス内で位置合わせされたターゲット法線としてレンダリングします。
- オリジナル画像はKrea 2の意味的参照および人物同一性の参照として残ります。
- ターゲット法線はVAEエンコードされ、ノイズ画像入力の空間Control-LoRAプロジェクションを通して注入されます。
- 短い相対カメラ文が意図したビューの意味を伝えます。内部角度はトレーニング時の規則に正規化され、たとえば右へ50度という要求は左へ310度として送信されますが、UIは符号付きのコントロールを保持します。
ComfyUIで実行する
ノードをインストールします:
cd ComfyUI/custom_nodes
git clone https://github.com/alexw5702-afk/krea2-anygles
cd krea2-anygles
pip install -r requirements.txtSAM 3D Bodyのライセンスに同意して人体メッシュのcheckpointをダウンロードし、LoRAを通常のフォルダーに配置します:
hf download facebook/sam-3d-body-dinov3 --local-dir ComfyUI/models/sam3d_body| ファイル | 配置先 |
|---|---|
krea2_anygles_rank32.safetensors | ComfyUI/models/loras |
krea2_turbo_int8_convrot.safetensors | ComfyUI/models/diffusion_models |
qwen3vl_4b_fp8_scaled.safetensors | ComfyUI/models/text_encoders |
qwen_image_vae.safetensors | ComfyUI/models/vae |
sam-3d-body-dinov3 | ComfyUI/models/sam3d_body |
このノードパックは4つのノードを追加します:
- Krea2 Anygles Camera はソースを位置合わせ済みキャンバスにリサイズし、人体メッシュを復元して、ヨー、仰角、距離で回転させ、ターゲット法線をレンダリングし、カメラプロンプトを組み立てます。
- Krea2 Anygles Encode はソースをQwen3-VLとKrea 2のクリーン参照パスへ送り、キャンバス全体のターゲット法線をエンコードします。
- Krea2 Anygles Load LoRA はアダプターを適用し、その非標準テンソルを破棄せずに空間プロジェクションを保持します。
- Krea2 Anygles Model Patch はノイズ画像入力に位置合わせ済みの法線トークンを注入し、クリーンな視覚参照のK/Vをキャッシュします。
モデルカードの推奨設定: 8 steps、Euler、simpleスケジューラー、CFG 1.0、アダプター強度1.0、VLM参照と参照K/Vキャッシュを有効化。SAM 3D BodyとKrea 2は順番に実行されるため、両方のフルモデルを同時にGPUへ載せる必要はありません。
入手方法
- LoRAの重み: Hugging Faceのyijunwang2/krea2-anygles、rank 32の単一ファイル。
- ComfyUIノードとワークフロー: GitHubのalexw5702-afk/krea2-anygles。
- デモSpace: yijunwang2/krea2-anygles。ローカルにインストールせずにアダプターを試せます。
- ポータブルなPythonパス: リポジトリにはComfyUIの外でDiffusersパイプラインを使って実行するための
prepare_normal.pyとexample.pyが含まれています。
これは非公式のコミュニティリリースです。隠す側面や背景のコンテンツは計測された形状から復元されるのではなく生成されるため、アクセサリー、テキスト、指、遮蔽された細部が変化することがあり、大きなカメラ移動ではライティングや体のプロポーションが変わる可能性があります。人体の復元精度が低い場合、激しい遮蔽、極端に小さい被写体、複数人物などでは、誤った法線制御が生じることがあります。


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