Wan2.1 I2V で画像から動画をローカル生成|ComfyUI 設定と推奨値

※本記事にはプロモーション(広告・アフィリエイトリンク)を含みます。
Wan2.1 の I2V(Image-to-Video)は、1枚の静止画を入力として数秒間の動画を生成するオープンソースモデルです。Apache 2.0 ライセンスで商用利用も可能で、ComfyUI と組み合わせてローカル環境で動かせます。この記事では、モデルの選び方からノードのインストール、ワークフローの設定値まで、VRAM 12GB 前後の環境を念頭に置いた手順を整理します。
Wan2.1 I2V の概要とモデルの選び方
Wan2.1 は Wan-AI(Alibaba)が開発した動画生成モデルで、I2V バリアントは入力画像を動画の先頭フレームとして使い、そこから自然な動きを生成します。執筆時点で公開されている I2V モデルには主に2サイズあります。
| モデル名 | パラメータ数 | VRAM の目安 |
|---|---|---|
| Wan2.1-I2V-14B-480P | 14B | 約 16GB 以上(精度・設定により異なる) |
| Wan2.1-I2V-1.3B-480P | 1.3B | 約 8〜10GB(環境により異なる) |
VRAM 12GB の環境では、14B モデルをフル精度でメモリに収めることは難しく、CPU オフロードを有効にしても生成速度が大幅に低下することがあります。まず 1.3B モデルで動作確認し、品質が足りなければ 14B + オフロードを試すという流れが現実的です。
ComfyUI 環境の準備
現時点で Wan2.1 I2V を動かす方法として広く使われているのが ComfyUI 経由です。ComfyUI 本体のインストールは公式リポジトリ(https://github.com/comfyanonymous/ComfyUI)を参照してください。
ComfyUI Manager の導入
Manager がない場合は先にインストールします。
cd ComfyUI/custom_nodes
git clone https://github.com/ltdrdata/ComfyUI-Manager.git
ComfyUI を再起動すると Manager メニューが使えるようになります。
Wan2.1 対応ノードの追加
ComfyUI-WanVideoWrapper(kijai 氏作)を使います。Manager の「Install Custom Nodes」から検索するか、直接クローンします。
cd ComfyUI/custom_nodes
git clone https://github.com/kijai/ComfyUI-WanVideoWrapper.git
cd ComfyUI-WanVideoWrapper
pip install -r requirements.txt
インストール後は ComfyUI を再起動してノードを有効化してください。
モデルのダウンロードと配置
Hugging Face から huggingface-cli を使ってダウンロードするのが確実です。
pip install huggingface-hub
# 1.3B モデルの場合
huggingface-cli download Wan-AI/Wan2.1-I2V-1.3B-480P \
--local-dir ./wan2.1-i2v-1.3b
# 14B モデルの場合
huggingface-cli download Wan-AI/Wan2.1-I2V-14B-480P \
--local-dir ./wan2.1-i2v-14b
1.3B モデルで数 GB、14B モデルで数十 GB の容量が必要です。ダウンロード前にディスクの空き容量を確認しておきましょう(Linuxディスク使用量の確認と整理も参考にしてください)。
ダウンロードしたファイルは ComfyUI-WanVideoWrapper の README に指定されたパスに配置します。ファイルごとに置き先ディレクトリが決まっているので、README を確認してから作業してください。
ワークフローの設定と推奨パラメータ
ComfyUI-WanVideoWrapper には I2V 用のサンプルワークフロー(JSON ファイル)が付属しています。ComfyUI/custom_nodes/ComfyUI-WanVideoWrapper/example_workflows/ 内の I2V 用ファイルを ComfyUI の画面にドラッグ&ドロップするか、「Load」ボタンで読み込んでください。
サンプルワークフローを起点に、以下のパラメータを調整します。
| パラメータ | 推奨値(目安) | 補足 |
|---|---|---|
| Width × Height | 832 × 480(横)/ 480 × 832(縦) | 480p 相当 |
| Frames | 16〜33 | 16fps 換算で 1〜2 秒 |
| Steps | 20〜30 | 少ないと品質が低下しやすい |
| CFG Scale | 5〜7 | 低めのほうが破綻しにくい傾向 |
| Sampler | ワークフロー既定値を優先 | euler が多い |
公式ドキュメントによると、Wan2.1 I2V の標準出力フレームレートは 16fps です。Frames を 16 にすると約 1 秒、33 にすると約 2 秒の動画になります。フレーム数を増やすほど VRAM 消費と生成時間が増えるため、最初は 16〜24 フレームで試すことをおすすめします。
入力画像は「Load Image」ノードに接続します。PNG・JPG どちらも使えます。
VRAM 不足と典型的なエラーへの対処
OOM エラーが出る場合
CUDA out of memory が発生したときは、以下の順で対処してください。
- モデルサイズを変更する — 14B を使っているなら 1.3B に切り替える
- CPU オフロードを有効にする — ノード設定の
offloadオプションを ON にする - 解像度を下げる — Width・Height を小さくすると VRAM 消費が減る
- フレーム数を減らす — Frames を 16 まで下げる
CPU オフロードを有効にすると、生成時間が GPU 処理の数倍以上になることがあります。環境によって差があります。
生成動画のファイルサイズ削減
ComfyUI の出力は MP4 が一般的です。ffmpeg を使って VP9 エンコードの WebM に変換するとファイルサイズを抑えられます。
ffmpeg -i output.mp4 \
-c:v libvpx-vp9 -crf 32 -b:v 0 \
-an output.webm
-crf 32 は品質と圧縮率のバランスを取った設定値です。値を大きくすると圧縮が強くなり、小さくすると品質が上がる代わりにファイルサイズが増えます。
入力画像の解像度と品質
解像度の低い画像を入力に使うと、動画のディテールが荒れることがあります。Real-ESRGAN などのアップスケーラーで解像度を上げてから I2V に渡すと、出力が安定しやすくなります。
まとめ
Wan2.1 I2V をローカルで動かすための要点は次の3点です。
- VRAM 12GB 前後では 1.3B モデルを第一候補にする(14B はフル精度ではメモリに収まらない可能性が高い)
- ComfyUI-WanVideoWrapper のサンプルワークフローを起点にする(Frames 16〜24、Steps 20〜30、CFG Scale 5〜7 を出発点に調整)
- 出力後の変換と入力画像の品質をセットで考える(ffmpeg VP9 変換、アップスケーラーの活用)
次のステップとして、アップスケーラーで解像度を整えた画像を I2V の入力に渡してみてください。動画のディテールが安定しやすくなります。
よくある質問
Wan2.1 I2V の 14B モデルは VRAM 12GB で動きますか?
fp16 フル精度では VRAM に収まらないケースが多いです。CPU オフロードを有効にすれば動く場合もありますが、生成が大幅に遅くなります。VRAM 12GB 環境では 1.3B モデルから試すほうが現実的です。
生成する動画の長さはどうやって設定しますか?
Frames パラメータで調整します。公式ドキュメントによると標準フレームレートは 16fps で、Frames を 16 にすると約 1 秒、33 にすると約 2 秒になります。フレーム数を増やすほど VRAM と生成時間が増えます。
ComfyUI 以外で Wan2.1 I2V を動かす方法はありますか?
diffusers ライブラリを使った Python スクリプトでも動かせます。ただし ComfyUI のほうがワークフローの管理とデバッグがしやすく、入門時は ComfyUI 経由のほうが手軽です。