タグ: AnimateDiff

  • [ComfyMaster39] AnimateDiffで最初と最後のフレームの画像を指定して動画を生成しよう!

    特定の画像を動画にしたくないですか?
    AnimateDiffでも最初と最後のフレームの画像を指定して動画生成できます!

    こんにちわ、AICU media編集部です。
    ComfyUI マスターガイド」第36回目になります。
    本記事では、具体的なワークフローと実際の設定値を使用しながら、最初のフレームと最後のフレームを指定した動画生成の実践的な手順を詳しく説明していきます。

    本連載の初回はこちら。前回はこちらで、ComfyUIを使った動画生成の中でもAnimateDiffとControlNetを組み合わせることで、動画のスタイル変換を行う「video-to-video(v2v)」手法を解説しました。全体の目次はこちらです。

    [ComfyMaster38] LoRAで動画のスタイル変えよう! #ComfyUI

    1. 概要

    本章では、Stable DiffusionとComfyUIを使用して、静止画から動画を生成する方法を解説します。画像生成AIとして注目を集めるStable Diffusionですが、適切な拡張機能を使用することで、魅力的な動画も作成できます。

    ここでは、2枚の静止画を滑らかにつなぎ合わせて短い動画を作る手順を、具体的な例を用いて説明していきます。使用するのは以下の主要な要素です:

    • RealVisXL V5.0 Lightning:高速な画像生成が可能な最新のモデル
    • AnimateDiff:静止画から動画を生成するための拡張機能
    • ControlNet:画像の特徴を保持しながら変換を行うための機能

    初心者の方でも理解しやすいよう、インストールから設定、実行までを段階的に解説していきます。

    2. カスタムノードのインストール

    以下のカスタムノードを使用するため、ComfyUI Managerからインストールしてください。

    ComfyUI-AnimateDiff-Evolved

    ComfyUI-AnimateDiff-Evolvedは、Stable Diffusionモデルを拡張して動画生成を可能にするカスタムノードです。元のAnimateDiffを進化させたバージョンで、動画生成のためのモーションモジュールと高度なサンプリング技術を組み込んでいます。

    https://github.com/Kosinkadink/ComfyUI-AnimateDiff-Evolved

    ComfyUI-VideoHelperSuite

    ComfyUI-VideoHelperSuiteは、動画生成を支援するためのカスタムノードです。動画の編集や加工を容易にする機能を提供します。今回は、一連の画像を動画にして保存するノードを使用するために必要となります。

    https://github.com/Kosinkadink/ComfyUI-VideoHelperSuite

    ComfyUI-Advanced-ControlNet

    ComfyUI-Advanced-ControlNetは、ControlNetの機能を強化するカスタムノードです。ControlNetの強度をタイムステップやバッチ化された潜在変数にわたってスケジュールする機能を提供します。

    https://github.com/Kosinkadink/ComfyUI-Advanced-ControlNet

    3. モデルのインストール

    RealVisXL V5.0 Lightning

    今回は、RealVisXLのLightningバージョンを使用します。Lightningバージョンでは、サンプリングのステップ数を4-6回に抑えることができます。生成量の多いAnimateDiffでは、TurboやLightningなどの数ステップで生成完了するモデルを選ぶと良いでしょう。
    以下のリンクよりモデルをダウンロードし、「ComfyUI/models/checkpoints」フォルダに格納してください。

    https://huggingface.co/SG161222/RealVisXL_V5.0_Lightning/blob/main/RealVisXL_V5.0_Lightning_fp16.safetensors

    SDXL Motion Module

    今回は、SDXLのモデルで動画生成するため、SDXLのモーションモジュールをダウンロードします。使用するモデルは「Hotshot-XL」です。以下のリンクからモデルをダウンロードし、「ComfyUI/custom_nodes/ComfyUI-AnimateDiff-Evolved/models」フォルダに格納してください。

    https://huggingface.co/hotshotco/Hotshot-XL/blob/main/hsxl_temporal_layers.f16.safetensors

    ControlNet Union SDXL

    video-to-video (v2v)にControlNetを使用します。以下のControlNetをダウンロードし、「ComfyUI/models/controlnet」フォルダに格納してください。

    https://huggingface.co/xinsir/controlnet-union-sdxl-1.0/blob/main/diffusion_pytorch_model_promax.safetensors

    4. 素材

    以下の2枚の画像を使用します。1枚目が最初のフレームの画像で、2枚目が最後のフレームの画像です。両方とも画像生成AIで生成した画像で、プロンプトのみで制御して生成したため、同じ外見にはできていないですが、今回はこれらを利用しましょう。

    画像
    画像

    以下のリンクより画像をダウンロードください。

    https://note.com/api/v2/attachments/download/061a0c7037e95c2fdaa987382bde0429

    https://note.com/api/v2/attachments/download/a47c93096840719c1f51318db202a613

    5. ワークフロー

    このワークフローは、2つの入力画像間を滑らかに遷移するアニメーション動画を生成する高度な例です。ControlNetを使用して各入力画像の特徴を保持しつつ、AnimateDiffで滑らかなアニメーションを生成し、Latent Keyframe Interp.で2つの画像間の遷移を制御しています。

    画像

    文末のリンクか、メンバーシップのdiscordでお伝えしているワークフローをダウンロードしてください。
    「workflow_animatediff_i2v.json」

    ワークフローをフローチャート形式で表示したものが以下になります。

    画像

    以下に、このワークフローの主要な部分とその機能を詳細に説明します。

    1. 画像入力
      • Load Image ノード (2つ): “girl_01.jpg” と “girl_02.jpeg” という2つの画像を読み込みます。
    2. モデルとAnimateDiffの設定
      • Load Checkpointノード: 「RealVisXL_V5.0_Lightning_fp16.safetensors」モデルを読み込みます。
      • AnimateDiff Loaderノード: 「hsxl_temporal_layers.f16.safetensors”」AnimateDiffモデルを適用します。
      • View Options Standard Uniform ノード: AnimateDiffのビューオプションを設定します(8フレーム、2キーフレーム)。
      • Context Options Views Onlyノード: ビューオプションをコンテキストオプションに変換します。
    3. ControlNet設定
      • Load ControlNet Modelノード: 「CN-anytest_v4-marged.safetensors」 ControlNetモデルを読み込みます。
      • 2つのApply Advanced ControlNetノード: 各入力画像に対してControlNetを適用します。
    4. サンプリング設定
      • FreeInit Iteration Optionsノード: FreeInit samplingのパラメータを設定します(2イテレーション、ガウシアンノイズ)。
      • Sample Settingsノード: AnimateDiffのサンプリング設定を構成します(FreeNoiseモード)。
    5. キーフレームタイミング
      • 2つのLatent Keyframe Interp.ノード: 2つの画像間の遷移タイミングを制御します。
        • 1つ目は0-5フレームで最初の画像からフェードアウト
        • 2つ目は4-8フレームで2番目の画像にフェードイン
    6. プロンプト処理
      • ポジティブプロンプト: 「1girl, black hair, short hair, bob cut, green background, looking to the side, grey t-shirt, overalls, casual outfit, simple background, slightly open mouth, upper body, sharp jawline, cute, indoors」
      • ネガティブプロンプト: 「(worst quality, low quality, illustration, 3d, 2d, painting, cartoons, sketch), 」
    7. 画像生成
      • Empty Latent Imageノード: 512×512の8フレームの空の潜在画像を生成。
      • KSampler ノード:
        • Seed: 596721632997297
        • Steps: 4
        • CFG Scale: 2
        • Sampler: dpmpp_sde
        • Scheduler: karras
        • Denoise: 1.0
    8. 出力処理
      • VAE Decode ノード: 生成された潜在表現を実際の画像にデコードします。
      • Video Combineノード: 生成された画像シーケンスを8fpsの動画に変換し、「AnimateDiff」というプレフィックスで保存します。

    6. ワークフローの実行

    それでは、ワークフローを実行してみます。Hotshot-XLの最大フレームである8フレームで動画を生成しました。非常に短い動画になりますが、精度の高いHotshot-XLで、且つ、フレーム間で崩れを少なくするには、このフレーム数に制限されます。
    生成結果を見ると、袖が伸びてしまっている点を除いては、自然に横を向く動きが生成できているのではないでしょうか。長い動画を作成する際は、この動画の最後のフレームを使用して、次の動画を生成していけば、比較的一貫性のある動画を作成できるでしょう。

    画像

    7. まとめ

    本章では、Stable DiffusionとComfyUIを使用して、2枚の静止画から自然な動きのある動画を生成する方法を学びました。今回の主な気づきは以下の通りです

    • 短いフレーム数でも自然な動きの表現が可能
    • 長い動画は、生成した動画の最終フレームを使って連続的に作成可能
    • ControlNetによって画像の特徴を維持しながら変換が可能

    このワークフローは、動画生成の基礎となる重要な技術を含んでいます。ここで学んだ手法を応用することで、より長い動画や異なる種類の変換効果を持つ動画を作成することも可能です。

    次のステップとして、異なるプロンプトや画像での実験、フレーム数やパラメータの調整など、様々な可能性に挑戦してみることをお勧めします。

    次回はAnimateDiffのimage2imageで背景素材を作成します。
    X(Twitter)@AICUai もフォローよろしくお願いいたします!

    画像生成AI「ComfyUI」マスターPlan

    画像生成AI「Stable Diffusion」特に「ComfyUI」を中心としたプロ向け映像制作・次世代の画像生成を学びたい方に向けたプランです。最新・実用的な記事を優先して、ゼロから学ぶ「ComfyUI」マガジンからまとめて購読できます。 メンバーシップ掲示板を使った質問も歓迎です。

    • メンバー限定の会員証が発行されます
    • 活動期間に応じたバッジを表示
    • メンバー限定掲示板を閲覧できます
    • メンバー特典記事を閲覧できます
    • メンバー特典マガジンを閲覧できます
    • 動画資料やworkflowといった資料への優先アクセスも予定
    • [new] Discordでの質問も歓迎です!

    ゼロから学ぶ「ComfyUI」マガジン

    https://note.com/aicu/m/md2f2e57c0f3c

    マガジン単体の販売は1件あたり500円を予定しております。
    2件以上読むのであればメンバーシップ参加のほうがお得です!というのもメンバーシップ参加者にはもれなく「AICU Creator Union」へのDiscordリンクをお伝えし、メンバーオンリー掲示板の利用が可能になります。

    https://note.com/aicu/membership/boards/61ab0aa9374e/posts/db2f06cd3487?from=self

    もちろん、初月は無料でお試しいただけます!
    毎日新鮮で確かな情報が配信されるAICUメンバーシップ。
    退会率はとても低く、みなさまにご満足いただいております。
    ✨️オトクなメンバーシップについての詳細はこちら


    この記事の続きはこちらから https://note.com/aicu/n/n633ae36958a9

    Originally published at https://note.com on Dec 9, 2024.

  • [ComfyMaster38] LoRAで動画のスタイル変えよう!

    「動画をもっと簡単に、でも個性的に作りたい」
    そんな願いを持つクリエイターの方々に朗報です。AnimateDiffとControlNetを組み合わせることで、簡単に動画のスタイル変換が可能になります!

    こんにちわ、AICU media編集部です。
    ComfyUI マスターガイド」第38回目になります。
    本記事では、前回ご紹介したAnimateDiffとControlNetを組み合わせた「video-to-video (v2v)」を応用して、参照動画のスタイルを変換してする方法を解説します。

    本連載の初回はこちら。前回はこちら、目次はこちらです。

    [ComfyMaster37] SDXL+AnimateDiff+IPAdapterで参照画像から動画を生成しよう! #ComfyUI

    1. 概要

    この記事では、ComfyUIを使用した高度な動画生成ワークフローについて解説します。特に、AnimateDiffやControlNetを活用して動画の各フレームをスタイライズし、LoRAを用いたスタイル変換を行う手法に焦点を当てています。ComfyUIのカスタムノードを導入し、Stable Diffusionモデルを活用したスムーズなアニメーション生成や、スタイルの適用による独自の映像表現を作成するための手順を説明します。具体的には、RealVisXL V5.0 LightningモデルやSDXL Paint Splash Style、Dissolve StyleといったLoRAを使用し、参照動画をもとに動画変換を行うプロセスを詳述しています。

    2. カスタムノードのインストール

    以下のカスタムノードを使用するため、ComfyUI Managerからインストールしてください。

    ComfyUI-AnimateDiff-Evolved

    ComfyUI-AnimateDiff-Evolvedは、Stable Diffusionモデルを拡張して動画生成を可能にするカスタムノードです。元のAnimateDiffを進化させたバージョンで、動画生成のためのモーションモジュールと高度なサンプリング技術を組み込んでいます。

    https://github.com/Kosinkadink/ComfyUI-AnimateDiff-Evolved

    ComfyUI-VideoHelperSuite

    ComfyUI-VideoHelperSuiteは、動画生成を支援するためのカスタムノードです。動画の編集や加工を容易にする機能を提供します。今回は、一連の画像を動画にして保存するノードを使用するために必要となります。

    https://github.com/Kosinkadink/ComfyUI-VideoHelperSuite

    ComfyUI-Advanced-ControlNet

    ComfyUI-Advanced-ControlNetは、ControlNetの機能を強化するカスタムノードです。ControlNetの強度をタイムステップやバッチ化された潜在変数にわたってスケジュールする機能を提供します。

    https://github.com/Kosinkadink/ComfyUI-Advanced-ControlNet

    ComfyUI-KJNodes

    動画サイズのリサイズのためにComfyUI-KJNodesを導入します。ComfyUI-KJNodesは様々な便利なノードを格納しています。

    https://github.com/kijai/ComfyUI-KJNodes

    3. 画像生成モデルのダウンロード

    RealVisXL V5.0 Lightning

    今回は、RealVisXLのLightningバージョンを使用します。Lightningバージョンでは、サンプリングのステップ数を4-6回に抑えることができます。生成量の多いAnimateDiffでは、TurboやLightningなどの数ステップで生成完了するモデルを選ぶと良いでしょう。
    以下のリンクよりモデルをダウンロードし、「ComfyUI/models/checkpoints」フォルダに格納してください。

    https://huggingface.co/SG161222/RealVisXL_V5.0_Lightning/blob/main/RealVisXL_V5.0_Lightning_fp16.safetensors

    4. LoRAのダウンロード

    今回は、2つのLoRAを使用してスタイル変換を試してみます。

    SDXL Paint Splash Style

    カラフルなインクを塗布したような画像を生成するLoRA「SDXL Paint Splash Style」を使用します。以下のリンクよりモデルをダウンロードし、「ComfyUI/models/loras」に格納してください。

    https://civitai.com/models/140335/sdxl-paint-splash-style

    Dissolve Style

    体や物の一部が崩壊していくような画像を生成するLoRA「Dissolve Style」を使用します。以下のリンクよりモデルをダウンロードし、「ComfyUI/models/loras」に格納してください。

    https://civitai.com/models/245889/dissolve-style-lora-15sdxl?modelVersionId=277389

    5. ControlNetモデルのダウンロード

    ControlNet AnyTest v4

    video-to-video (v2v)にControlNetの「AnyTest v4」を使用します。以下のリンクよりControlNetをダウンロードし、「ComfyUI/models/controlnet」フォルダに格納してください。

    https://huggingface.co/2vXpSwA7/iroiro-lora/blob/main/test_controlnet2/CN-anytest_v4-marged.safetensors

    6. AnimateDiffのモーションモジュールのダウンロード

    SDXL Motion Module

    今回は、SDXLのモデルで動画生成するため、SDXLのモーションモジュールをダウンロードします。使用するモデルは「Hotshot-XL」です。以下のリンクからモデルをダウンロードし、「ComfyUI/custom_nodes/ComfyUI-AnimateDiff-Evolved/models」フォルダに格納してください。

    https://huggingface.co/hotshotco/Hotshot-XL/blob/main/hsxl_temporal_layers.f16.safetensors

    7. 素材のダウンロード

    v2vで使用する参照元動画を用意します。以下のダンス動画をControlNetで参照します。

    画像

    この動画は、以下のリンクより無料でダウンロードできます。

    https://www.pexels.com/ja-jp/video/2795746

    8. ワークフローの解説

    このワークフローは、入力ビデオの各フレームを変換し、スタイライズされたアニメーション動画を生成する高度な例です。ControlNetを使用して入力フレームの構造を保持しつつ、AnimateDiffで滑らかなアニメーションを生成し、LoRAでPaintSplashスタイルを適用しています。

    画像

    文末のリンクからワークフローをダウンロードしてください。

    ワークフローをフローチャート形式で表示したものが以下になります。

    画像

    以下に、このワークフローの主要な部分とその機能を詳細に説明します。


    この記事の続きはこちらから https://note.com/aicu/n/n8f000f1b4be2

    Originally published at https://note.com on Dec 7, 2024.

  • [ComfyMaster37] SDXL+AnimateDiff+IPAdapterで参照画像から動画を生成しよう!

    前回のAnimateDiffによるtext-to-video(t2v)での生成方法に興味を持った方は、さらに一歩進んだ動画生成を試してみませんか?

    こんにちわ、AICU media編集部です。
    ComfyUI マスターガイド」第37回目になります。
    本記事では、AnimateDiffにIPAdapterを組み合わせることで、ただのテキストからの動画生成を超え、画像の特徴を反映させたより一貫性のあるアニメーションを作成する方法を紹介します。特定のビジュアルテーマやキャラクターを保持したまま、ダイナミックな動画を生成できるこの手法は、クリエイティブなプロジェクトにおいて強力なツールになるはずです。IPAdapterを活用して、これまでにない精度と表現力を持つ動画制作に挑戦してみましょう!

    本連載の初回はこちら。前回はこちら、目次はこちらです。

    [ComfyMaster36] 動画から新しい動画を生成しよう!  #ComfyUI

      1. 概要

      本記事では、AnimateDiffとIP Adapterを組み合わせて、text-to-video(t2v)での動画生成を行う方法を解説します。IP Adapterは、画像の特徴を抽出して生成プロセスに反映させる機能を持ち、これにより元の画像を参照しながら、一貫性のあるアニメーションを作成できます。従来のt2vでの生成に対して、IPAdapterを使うことで、より具体的で視覚的なテーマに沿った動画を作ることが可能です。

      このワークフローでは、複数のカスタムノードやモデルをインストールし、それらを適切に組み合わせて動画生成を行います。具体的には、RealVisXLやSDXL Motion Modelを使用してサンプリング効率を向上させ、CLIP Visionを通じて画像の特徴を抽出し、IP Adapterでそれらを動画生成に反映させます。

      2. カスタムノードのインストール

      以下のカスタムノードを使用するため、ComfyUI Managerからインストールしてください。

      ComfyUI-AnimateDiff-Evolved

      ComfyUI-AnimateDiff-Evolvedは、Stable Diffusionモデルを拡張して動画生成を可能にするカスタムノードです。元のAnimateDiffを進化させたバージョンで、動画生成のためのモーションモジュールと高度なサンプリング技術を組み込んでいます。

      https://github.com/Kosinkadink/ComfyUI-AnimateDiff-Evolved

      ComfyUI-VideoHelperSuite

      ComfyUI-VideoHelperSuiteは、動画生成を支援するためのカスタムノードです。動画の編集や加工を容易にする機能を提供します。今回は、一連の画像を動画にして保存するノードを使用するために必要となります。

      https://github.com/Kosinkadink/ComfyUI-VideoHelperSuite

      ComfyUI IPAdapter plus

      ComfyUI IPAdapter Plusは、ComfyUI上でのIP Adapterの使用をサポートするカスタムノードで、画像をプロンプトとして使用する機能を提供します。キャラクター、スタイル、構図の転写や高度な一括処理が可能で、動画や漫画の生成時に一貫したビジュアルテーマを維持するために使用されます。

      https://github.com/cubiq/ComfyUI_IPAdapter_plus

      3. モデルのインストール

      RealVisXL V5.0 Lightning

      今回は、RealVisXLのLightningバージョンを使用します。Lightningバージョンでは、サンプリングのステップ数を4-6回に抑えることができます。生成量の多いAnimateDiffでは、TurboやLightningなどの数ステップで生成完了するモデルを選ぶと良いでしょう。
      以下のリンクよりモデルをダウンロードし、「ComfyUI/models/checkpoints」フォルダに格納してください。

      https://huggingface.co/SG161222/RealVisXL_V5.0_Lightning/blob/main/RealVisXL_V5.0_Lightning_fp16.safetensors

      SDXL Motion Model

      今回は、SDXLのモーションモジュールとして、「Hotshot-XL」を使用します。Hotshot-XLは、コンテクスト長が8フレームしかありませんが、AnimateDiff-SDXLより品質が良いためです。以下のモデルをダウンロードし、「ComfyUI/custom_nodes/ComfyUI-AnimateDiff-Evolved/models」フォルダに格納してください。

      https://huggingface.co/hotshotco/Hotshot-XL/blob/main/hsxl_temporal_layers.f16.safetensors

      CLIP Vision

      IP Adapterを使用するためにCLIP Visionを使用します。以下のリンクよりモデルをダウンロードし、「ComfyUI/models/clip_vision」フォルダに格納してください。

      CLIP Visionは画像を入力として受け取り、特徴を抽出してトークンに変換します。これらのトークンは、テキストプロンプトと組み合わせて画像生成に使用されます。

      https://huggingface.co/h94/IP-Adapter/blob/main/models/image_encoder/model.safetensors

      IP Adapter

      CLIP Visionで抽出した画像の特徴を画像生成モデルに組み込むためにIP Adapterのモデルが必要になります。以下のリンクよりモデルをダウンロードし、「ComfyUI/models/ipadapter」フォルダに格納してください。

      https://huggingface.co/h94/IP-Adapter/blob/main/sdxl_models/ip-adapter-plus_sdxl_vit-h.safetensors

      4. 使用素材

      今回は、女性の画像と風景の画像を使用します。それぞれ以下よりダウンロードしてください。

      女性の画像

      画像

      https://note.com/api/v2/attachments/download/6e510797a934edbe4ae95dd091d08571

      風景の画像

      画像

      https://note.com/api/v2/attachments/download/3608f75a8949f1124d304471accbed38

      5. ワークフローの解説

      以下がワークフローの全体像になります。このワークフローは、入力画像の特徴を活かしながらアニメーション動画を生成する高度な例です。IP-Adapterを使用することで、入力画像の視覚的特徴(この場合、若い日本人女性の外見)を生成プロセスに組み込みます。AnimateDiffとの組み合わせにより、入力画像に基づいた一貫性のあるアニメーション動画が生成されます。

      画像

      ワークフローは、文末のリンクよりダウンロード可能です。

      このワークフローの構造をフローチャートで表現すると、以下のようになります。

      画像

      以下に、このワークフローの主要な部分とその機能を詳細に説明します。

      1. 入力画像とモデルの準備
        • Load Imageノード: 「girl_01.jpg」という画像ファイルを読み込みます。
        • IPAdapterModelLoader ノード: 「ip-adapter-plus_sdxl_vit-h.safetensors」モデルを読み込みます。
        • CLIPVisionLoader ノード: 「CLIP-ViT-H-14-laion2B-s32B-b79K.safetensors」を読み込み、画像の特徴を抽出します。
        • CheckpointLoaderSimple ノード: 「RealVisXL_V5.0_Lightning_fp16.safetensors」モデルを読み込みます。
      2. AnimateDiffの設定
        • ADE_AnimateDiffLoaderGen1 ノード: 「hsxl_temporal_layers.f16.safetensors」 AnimateDiffモデルを適用し、「autoselect」モードを使用します。
        • ADE_StandardUniformViewOptions ノード: AnimateDiffのビューオプションを設定します(16フレーム、2キーフレーム)。
        • ADE_ViewsOnlyContextOptions ノード: ビューオプションをコンテキストオプションに変換します。
      3. サンプリング設定
        • FreeInit Iteration Optionsノード: FreeInit samplingのパラメータを設定します。イテレーション回数が多いほど、生成される動画の詳細度や一貫性が高まります。今回は、最低回数の2回だけイテレーション処理を行います。
        • Sample Settingsノード: AnimateDiffのサンプリング設定を構成します(FreeNoiseモード)。
      4. IP-Adapter処理
        • IPAdapterAdvanced ノード: 入力画像の特徴を抽出し、生成プロセスに組み込みます。重み1.0、「ease in」ブレンドモード、「concat」適用方法を使用。
      5. プロンプト処理
        • ポジティブプロンプト: 「Japanese young girl, casual dress, black hair, bob cut, upper body, looking at view, green background」
        • ネガティブプロンプト: 「(worst quality, low quality, illustration, 3d, 2d, painting, cartoons, sketch), open mouth,」
      6. 画像生成
        • KSampler ノード
          • Seed: 118362085301702
          • Steps: 4
          • CFG Scale: 2.0
          • Sampler: dpmpp_sde
          • Scheduler: karras
          • Denoise: 1.0
      7. 出力処理
        • VAE Decode ノード: 生成された潜在表現を実際の画像にデコードします。
        • VHS_VideoCombine ノード: 生成された画像シーケンスを16fpsの動画に変換し、「AnimateDiff」というプレフィックスで保存します。

      6. ワークフローの実行

      それでは、ワークフローを実行してみましょう。女性の画像を参照した場合と、風景の画像を参照した場合、それぞれの結果を確認してみます。

      女性の画像を参照しての動画生成

      まずは、Load Imageノードに女性の画像を設定し、以下のプロンプトをポジティブプロンプトに入力し、実行してみます。

      Japanese young girl, casual dress, black hair, bob cut, upper body, looking at view, dynamic expressions, green background

      実行結果は以下になります。参照元画像の特徴を捉えて生成されていることが分かります。しかし、あくまで参照なので、参照元画像のままで生成されていません。また、参照により動きがあまり変化しない特徴があります。

      画像

      IPAdapterの強度を下げれば、動きの変化が強くなりますが、その分参照元画像に似なくなります。以下は、IPAdapterの強度を0.5に下げて生成した動画です。

      画像

      風景画像を参照しての動画生成

      次に風景の画像を参照し、そこから動画生成したいと思います。Load Imageノードに風景の画像を設定し、以下のプロンプトをポジティブプロンプトに入力し、実行してみます。

      wide landscape view, sunset, golden hour, large clouds, pink sky, ocean in background, water reflections, distant mountains, lush green trees, flowers in foreground, gentle breeze, glowing sunlight, ethereal atmosphere, serene, soft lighting, cinematic composition, high detail, vivid colors, dreamy, fantasy setting

      以下が生成結果です。参照元画像に近い状態で動画生成されています。先ほどの女性と同様、参照元画像に引っ張られるため、動きは小さいです。

      画像

      IPAdapterを使用しない場合は、以下のようにさらに躍動的な動画になります。

      画像

      7. まとめ

      今回の記事では、AnimateDiffとIPAdapterを組み合わせたtext-to-video生成の手法を解説しました。IPAdapterを活用することで、従来の動画生成におけるテキストプロンプトだけでなく、参照画像の特徴を反映した一貫性のあるアニメーション動画を作成することができます。これにより、キャラクターやスタイル、構図の再現が容易になり、より具体的で表現豊かな動画制作が可能になります。

      記事内で紹介した手順を参考に、カスタムノードのインストールやモデルの準備を行い、IPAdapterの設定を適切に調整することで、プロジェクトに合わせた多彩なアニメーションを生成することができるでしょう。今回の手法は、特にクリエイティブな作品や映像制作において、大きな可能性を秘めています。

      今後もこの技術を活用し、自分だけのユニークなアニメーション動画を作成してみてください。次のステップでは、さらに高度なカスタマイズや他のツールとの組み合わせを試して、より洗練された映像表現を目指していきましょう。

      次回は、AnimateDiffでvideo-to-video(v2v)をする方法を紹介します。乞うご期待!
      X(Twitter)@AICUai もフォローよろしくお願いいたします!

      画像生成AI「ComfyUI」マスターPlan

      画像生成AI「Stable Diffusion」特に「ComfyUI」を中心としたプロ向け映像制作・次世代の画像生成を学びたい方に向けたプランです。最新・実用的な記事を優先して、ゼロから学ぶ「ComfyUI」マガジンからまとめて購読できます。 メンバーシップ掲示板を使った質問も歓迎です。

      • メンバー限定の会員証が発行されます
      • 活動期間に応じたバッジを表示
      • メンバー限定掲示板を閲覧できます
      • メンバー特典記事を閲覧できます
      • メンバー特典マガジンを閲覧できます
      • 動画資料やworkflowといった資料への優先アクセスも予定

      ゼロから学ぶ「ComfyUI」マガジン

      https://note.com/aicu/m/md2f2e57c0f3c

      マガジン単体の販売は1件あたり500円を予定しております。メンバーシップ参加のほうがお得です!というのもメンバーシップ参加者にはもれなく「AICU Creator Union」へのDiscordリンクをお伝えし、メンバーオンリー掲示板の利用が可能になるだけでなく、さまざまな交流情報や、ComfyUIを学習するためのメンバー向け情報をお伝えしています。

      https://note.com/aicu/membership/boards/61ab0aa9374e/posts/db2f06cd3487?from=self

      もちろん、初月は無料でお試しいただけます!
      毎日新鮮で確かな情報が配信されるAICUメンバーシップ。
      退会率はとても低く、みなさまにご満足いただいております。
      ✨️オトクなメンバーシップについての詳細はこちら


      この記事の続きはこちらから https://note.com/aicu/n/na46215301e73

      Originally published at https://note.com on Dec 2, 2024.

    1. [ComfyMaster36] 動画から新しい動画を生成しよう!

      既存の動画をトレースして、新しい動画を作る方法、知りたくないですか?
      本記事では、そんな期待に応えるべく、AnimateDiffとControlNetを使って参照動画から動きを抽出し、それを基に新しい動画を生成する方法を解説します。

      こんにちわ、AICU media編集部です。
      ComfyUI マスターガイド」第36回目になります。
      本記事では、前回ご紹介したAnimateDiffとControlNetを組み合わせて、動画から異なる動画を生成する「video-to-video (v2v)」を行う方法を解説します。
      「どんなクリエイティブなことができるのか?」と想像を膨らませながら、ぜひ最後まで読み進めてください。きっと新しい発見やアイデアが得られるはずです。

      ★本内容については著作権侵害の可能性がある技術を取り扱います。実験、研究目的とする場合も、参照元にする画像との依拠性・類似性については十分に配慮し、業務的な製作においては所属機関の法務部や担当弁護士などに法的見解を確認してから実施することをおすすめします。

      本連載の初回はこちら。前回はこちら、目次はこちらです。

      [ComfyMaster35] ここから始める動画編!SDXL+AnimateDiffでテキストから動画を生成しよう! #ComfyUI [無料]

        1. 概要

        前回は、AnimateDiff+IP Adapterでテキストから動画の生成を行いました。AnimateDiffに関しては、前回の記事で解説していますので、前回の記事と合わせてご覧ください。

        今回は、動画を参照し、その動画と同じ動きで別の動画を作成します。作成にはControlNetを使用し、参照元動画の動きをトレースし、それを動画生成に適用します。

        2. カスタムノードのインストール

        ★復習[ComfyMaster4]ComfyUIカスタムノード導入ガイド! 初心者でも安心のステップバイステップ解説

        Google ColabでのComfyUI環境設定から学びたい方はこちら
        ★復習[ComfyMaster1] Google ColabでComfyUIを動かしてみよう!

        準備ができたら、以下のカスタムノードを使用するため、ComfyUI Managerからインストールしてください。

        ComfyUI-AnimateDiff-Evolved

        ComfyUI-AnimateDiff-Evolvedは、Stable Diffusionモデルを拡張して動画生成を可能にするカスタムノードです。元のAnimateDiffを進化させたバージョンで、動画生成のためのモーションモジュールと高度なサンプリング技術を組み込んでいます。

        https://github.com/Kosinkadink/ComfyUI-AnimateDiff-Evolved

        ComfyUI-VideoHelperSuite

        ComfyUI-VideoHelperSuiteは、動画生成を支援するためのカスタムノードです。動画の編集や加工を容易にする機能を提供します。今回は、一連の画像を動画にして保存するノードを使用するために必要となります。

        https://github.com/Kosinkadink/ComfyUI-VideoHelperSuite

        ここまでが、前回の「Text to Video」を実現するカスタムノードのインストールと共通部分になります。

        ここから先は、ControlNet環境を作っていきます。

        ComfyUI-Advanced-ControlNet

        ComfyUI-Advanced-ControlNetは、ControlNetの機能を強化するカスタムノードです。ControlNetの強度をタイムステップやバッチ化された潜在変数にわたってスケジュールする機能を提供します。

        https://github.com/Kosinkadink/ComfyUI-Advanced-ControlNet

        ComfyUI’s ControlNet Auxiliary Preprocessors

        ComfyUI’s ControlNet Auxiliary Preprocessorsは、ControlNetの前処理を支援するカスタムノードです。高度なヒント画像を生成し、画像の質と正確さを向上させる機能を提供します。

        https://github.com/Fannovel16/comfyui_controlnet_aux

        ComfyUI-KJNodes

        動画サイズのリサイズのためにComfyUI-KJNodesを導入します。ComfyUI-KJNodesは様々な便利なノードを格納しています。

        https://github.com/kijai/ComfyUI-KJNodes

        3. モデルのインストール

        RealVisXL V5.0 Lightning

        今回は、RealVisXLのLightningバージョンを使用します。Lightningバージョンでは、サンプリングのステップ数を4-6回に抑えることができます。生成量の多いAnimateDiffでは、TurboやLightningなどの数ステップで生成完了するモデルを選ぶと良いでしょう。
        以下のリンクよりモデルをダウンロードし、「ComfyUI/models/checkpoints」フォルダに格納してください。

        https://huggingface.co/SG161222/RealVisXL_V5.0_Lightning/blob/main/RealVisXL_V5.0_Lightning_fp16.safetensors

        SDXL Motion Module

        今回は、SDXLのモーションモジュールとして、「Hotshot-XL」を使用します。Hotshot-XLは、コンテクスト長が8フレームしかありませんが、AnimateDiff-SDXLより品質が良いためです。以下のモデルをダウンロードし、「ComfyUI/custom_nodes/ComfyUI-AnimateDiff-Evolved/models」フォルダに格納してください。

        https://huggingface.co/hotshotco/Hotshot-XL/blob/main/hsxl_temporal_layers.f16.safetensors

        ControlNet Union SDXL

        video-to-video (v2v)にControlNetを使用します。以下のControlNetをダウンロードし、「ComfyUI/models/controlnet」フォルダに格納してください。

        https://huggingface.co/xinsir/controlnet-union-sdxl-1.0/blob/main/diffusion_pytorch_model_promax.safetensors

        4. 素材

        v2vで使用する参照元動画を用意します。以下の動画を利用し、DWPoseとDepthで動きを抽出し、ControlNetでこの動きを再現します。

        画像

        以下のリンクより無料でダウンロードできます。

        https://www.pexels.com/ja-jp/video/2795746

        5. ワークフローの解説

        このワークフローは、AnimateDiffを使用して動画を生成する高度な例です。入力動画を基に、AIモデルを使用してスタイライズされたアニメーション動画を作成します。

        画像

        この記事の続きはこちらから https://note.com/aicu/n/n54988052abb7

        Originally published at https://note.com on Nov 28, 2024.

      1. [ComfyMaster35] ここから始める動画編!SDXL+AnimateDiffでテキストから動画を生成しよう!

        Stable Diffusionをベースに開発されたAnimateDiffは、シンプルなテキストプロンプトから動画を簡単に作成できます。画像生成AIを使って動画を生成する基本を知りたい方に向けて、この記事で一気に詳しく解説しています。

        ※本記事はワークフロー含め、期間限定無料で提供します!

        [PR] ComfyUIマスター:カスタムノードとアプリ開発

        https://j.aicu.ai/Coloso3

        こんにちわ、AICU media編集部です。
        ComfyUI マスターガイド」第35回目、ついに動画編に突入です!

        本記事では、SDXLとAnimateDiffを用いて、テキストから動画を作成する方法を説明します。AnimateDiff単体では、生成された動画は一貫性を保持しにくいですが、その原因と緩和方法をあわせて解説していきます。

        本連載の初回はこちら。前回はこちら目次はこちらです。

        [ComfyMaster34] 便利LoRA紹介: Detail Tweaker XLで画像の精細さをコントロール #ComfyUI

          1. AnimateDiffの概要

          AnimateDiffとは

          AnimateDiffは、Stable Diffusionをベースに開発された画像から動画を生成するtext-to-video(t2v)の技術です。既存のtext-to-image(t2i)モデルを特別な調整なしにアニメーション生成モデルに変換する実用的なフレームワークであり、これにより、ユーザーは高品質な画像生成能力を持つt2iモデルを、そのまま滑らかで視覚的に魅力的なアニメーションを生成するために活用できるようになります。

          AnimateDiffの仕組み

          AnimateDiffの核心は「モーションモジュール」という、事前にトレーニングされたプラグアンドプレイのモジュールにあります。このモジュールは、リアルな動画データからモーションプライア(Motion Priors)を学習しており、一度トレーニングされると、同じ基盤となるT2Iモデルを使用する他のパーソナライズT2Iモデルにもシームレスに統合可能です。具体的な仕組みは以下の3つのステップに分かれます。

          モーションプライア(Motion Priors)とは?

          モーションプライアとは、動画データから学習される「動きの先行知識」を指します。これには以下の特徴があります。

          • 動きのパターンの学習:モーションプライアは、動画の連続フレーム間の変化やダイナミクスを捉え、自然な動きを再現します。
          • 汎用性の確保:一度学習されたモーションプライアは、異なるt2iモデルにも適用可能で、モデルごとに動きを学習し直す必要がありません。
          • 高品質なアニメーション生成:モーションプライアにより、生成されるアニメーションが時間的な一貫性と滑らかさを持ちます。

          1. ドメインアダプターの導入

          画像

          AnimateDiffでは、まず「ドメインアダプター」と呼ばれる別のネットワークを導入します。これは、画像データと動画データの間に存在する画質や内容の違いを補正するためのものです。動画データはしばしば動きのブレや圧縮アーティファクト、ウォーターマークが含まれるため、直接学習させるとアニメーションの品質が低下する恐れがあります。ドメインアダプターを用いることで、モーションモジュールはモーションプライアのみを学習し、画像の質に関する情報は元のT2Iモデルが保持します。

          2. モーションモジュールの学習

          画像

          次に、「モーションモジュール」を学習します。これは、動画データから動きのパターンであるモーションプライアを抽出し、アニメーション生成に必要な時間的なダイナミクスをモデルに追加する役割を担います。モーションモジュールは、Transformerアーキテクチャをベースにしており、動画の各フレーム間の関連性を学習します。このモジュールをT2Iモデルに統合することで、生成される画像が時間とともに自然に動くアニメーションへと変換されます。

          3. MotionLoRAによる動きのパターンの微調整

          画像

          最後に、「MotionLoRA」と呼ばれる軽量な微調整技術を用います。これは、既に学習済みのモーションモジュールを新しい動きのパターンに適応させるためのもので、例えばカメラのズームインやパンニングといった特定の動きを追加したい場合に使用します。MotionLoRAは少数の参考動画と短時間のトレーニングで新しい動きのパターンを学習できるため、ユーザーは簡単に特定の効果を追加できます。

          AnimateDiffの利点

          AnimateDiffの主な利点は以下の通りです。

          • モデル固有の調整が不要: 既存のt2iモデルをそのままアニメーション生成に活用できるため、ユーザーは手間をかけずにアニメーションを作成できます。
          • 高品質なアニメーション: モーションモジュールがモーションプライアを学習することで、生成されるアニメーションは自然で視覚的に魅力的です。
          • 柔軟な動きのカスタマイズ: MotionLoRAを用いることで、特定の動きのパターンを簡単に追加・調整できます。
          • 効率的なトレーニングと共有: MotionLoRAは少量のデータと短時間のトレーニングで動きを学習できるため、ユーザー間でのモデル共有も容易です。

          2. カスタムノードのインストール

          さて早速はじめていきましょう。
          ComfyUIでのカスタムノードのインストール方法があやふやな方はこちらを復習お願いいたします。

          ★復習[ComfyMaster4]ComfyUIカスタムノード導入ガイド! 初心者でも安心のステップバイステップ解説

          Google ColabでのComfyUI環境設定から学びたい方はこちら
          ★復習[ComfyMaster1] Google ColabでComfyUIを動かしてみよう!

          準備ができたら、以下のカスタムノードを使用するため、ComfyUI Managerからインストールしてください。

          ComfyUI-AnimateDiff-Evolved

          ComfyUI-AnimateDiff-Evolvedは、Stable Diffusionモデルを拡張して動画生成を可能にするカスタムノードです。元のAnimateDiffを進化させたバージョンで、動画生成のためのモーションモジュールと高度なサンプリング技術を組み込んでいます。

          https://github.com/Kosinkadink/ComfyUI-AnimateDiff-Evolved

          ComfyUI-VideoHelperSuite

          ComfyUI-VideoHelperSuiteは、動画生成を支援するためのカスタムノードです。動画の編集や加工を容易にする機能を提供します。今回は、一連の画像を動画にして保存するノードを使用するために必要となります。

          https://github.com/Kosinkadink/ComfyUI-VideoHelperSuite

          3. モデルのインストール

          RealVisXL V5.0 Lightning

          今回は、RealVisXLのLightningバージョンを使用します。Lightningバージョンでは、サンプリングのステップ数を4-6回に抑えることができます。生成量の多いAnimateDiffでは、TurboやLightningなどの数ステップで生成完了するモデルを選ぶと良いでしょう。
          以下のリンクよりモデルをダウンロードし、「ComfyUI/models/checkpoints」フォルダに格納してください。

          https://huggingface.co/SG161222/RealVisXL_V5.0_Lightning/blob/main/RealVisXL_V5.0_Lightning_fp16.safetensors

          SDXL Motion Module

          SDXLのモデルで動画生成するため、SDXLのモーションモジュールをダウンロードします。SDXLのモーションモデルには、「AnimateDiff-SDXL」「Hotshot-XL」の2種類があります。AnimateDiff-SDXLは16フレーム、Hotshot-XLは8フレームのコンテクストに対応しており、AnimateDiff-SDXLのコンテクストは長く、一貫した動画を作成しやすいですが、一方で品質が悪いことが指摘されています。詳細は、以下のIssueをご確認ください。

          https://github.com/guoyww/AnimateDiff/issues/382

          今回は、両方のモデルを使用してみます。それぞれ以下よりダウンロードし、「ComfyUI/custom_nodes/ComfyUI-AnimateDiff-Evolved/models」フォルダに格納してください。

          • AnimateDiff-SDXL

          https://huggingface.co/guoyww/animatediff/blob/main/mm_sdxl_v10_beta.ckpt

          • Hotshot-XL

          https://huggingface.co/hotshotco/Hotshot-XL/blob/main/hsxl_temporal_layers.f16.safetensors

          4. ワークフローの解説

          以下がワークフローの全体像になります。このワークフローは、テキストプロンプトから直接アニメーション動画を生成する簡潔な例です。AnimateDiffを使用することで、フレーム間の一貫性を保ちながら滑らかなアニメーションを生成します。低ステップ数(4ステップ)での高速生成を行いながら、AnimateDiffの特性を活かして品質を維持しています。

          画像

          ワークフローは、以下のリンクよりダウンロードしてください。

          https://note.com/api/v2/attachments/download/2aaedfeba22c3cfd52c3184503b3c893

          このワークフローの構造を以下の通りにフローチャートで表現します。

          画像

          以下に、このワークフローの主要な部分とその機能を詳細に説明します。

          1. モデルとAnimateDiffの設定:
            • Load Checkpoint ノード: 「RealVisXL_V5.0_Lightning_fp16.safetensors」モデルを読み込みます。
            • AnimateDiff Loader ノード: AnimateDiffのモーションモジュールをベースモデルに適用します。
              • model_name: 「mm_sdxl_v10_beta.ckpt」または「hsxl_temporal_layers.fp16.safetensors」を設定します。
              • beta_schedule: autoselect
            • Context Options Standard Uniformノード: AnimateDiffのコンテキストオプションを設定します。
              • context_length: 16(Hotshot-XLの場合は8)
              • context_stride: 1
              • context_overlap: 4
              • fuse_method: pyramid
              • use_on_equal_length: false
              • start_percent: 0
              • guarantee_steps: 1
            • Sample Settingsノード: アニメーション生成プロセスの様々な要素をコントロールするための設定をまとめるノード
              • noise_typeをFreeNoiseに設定します。FreeNoiseは、FreeInitという、動画生成モデルにおける時間的一貫性を向上させるための手法を利用して各フレームを生成します。これにより、一貫性を持った動画を作成しやすくなります。コンテクスト間で一貫性を保てる一方、FreeNoiseを使用しない場合と比較して、変化が小さくなります。
          2. サンプリング設定:
            • FreeInit Iteration Optionsノード: FreeInit samplingのパラメータを設定します。
            • Sample Settingsノード: AnimateDiffのサンプリング設定を構成します(FreeNoiseモード)。
          3. プロンプト処理:
            • ポジティブプロンプト: 「1girl, Japanese, cute, black long hair, white shirt, navy blue skirt, white shoes, upper body, green background,」
            • ネガティブプロンプト: 「(worst quality, low quality, illustration, 3d, 2d, painting, cartoons, sketch), open mouth, socks,」
          4. 潜在画像の準備:
            • Empty Latent Image ノード: 1024×1024の80フレームの空の潜在画像を生成。
              • Hotshot-XLは、次の解像度でトレーニングされているため、次の解像度のいずれかを設定してください: 320 x 768、384 x 672、416 x 608、512 x 512、608 x 416、672 x 384、768 x 320
          5. 画像生成:
            • KSampler ノード:
              • Seed: 12345
              • Steps: 4
              • CFG Scale: 2
              • Sampler: dpmpp_sde
              • Scheduler: karras
              • Denoise: 1.0
          6. 出力処理:
            • VAE Decode ノード: 生成された潜在表現を実際の画像にデコードします。
            • Video Combine ノード: 生成された画像シーケンスを16fpsの動画に変換し、「AnimateDiff」というプレフィックスで保存します。

          5. ワークフローの補足

          Context OptionsとView Options

          通常、モーションモジュールでは、短いフレーム数しか扱えない(AnimateDiffは16フレーム、HotshotXLは8フレーム)です。これをかいかつするのがContext OptionsView Optionsです。これらは、アニメーションを作成する際に、AnimateDiffやHotshotXLといったモデルの制限を超えて、より長いアニメーションを作るための方法です。

          Context Optionsは、アニメーションの一部ずつを処理する方法です。これにより、同時に使うメモリ(VRAM)の量を制限できます。要するに、大きな作業を小分けにして進めることで、VRAMの負担を減らしているのです。これには、Stable Diffusionの拡散処理やControlNetなどの補助技術が含まれます。

          View Optionsは、モーション(動き)を処理するモデルが、見るべきデータ(潜在変数)を小分けにする方法です。この方法ではVRAMを節約できませんが、処理が安定しやすく、より速く動きます。なぜなら、データが全ての処理を経る必要がないからです。

          Context OptionsとView Optionsの違いは、Context Optionsがメモリを節約して少しずつアニメーションを処理するのに対し、View Optionsはメモリの節約はできませんが、速くて安定しています。

          この2つを組み合わせることで、長くて安定したアニメーションを作りながら、VRAMの使用量をうまく調整することができます。VRAMに余裕がある場合は、処理をより速く行うためにView Optionsをメインに使うこともできます。

          Sample Settings

          「Sample Settings」ノードは、通常のKSamplerノードでは設定できないサンプリングプロセスをカスタマイズするための機能を提供します。デフォルトの設定では何の影響も与えないため、安全に接続しても動作に変更はありません。

          Sample Settingsのnoise_typeで生成されるノイズのタイプを選択できます。この中のFreeNoiseは、安定性を増すために利用できます。FreeNoiseは、FreeInitという、動画生成モデルにおける時間的一貫性を向上させるための手法を用いています。この方法は、追加のトレーニングを行うことなく、ビデオ拡散モデルを使用して生成された動画の全体的な品質を改善します。
          基本的に最初のcontext_lengthウィンドウと同じ初期ノイズをコンテキストの重複部分で再利用し、それ以降のコンテキストウィンドウの重複部分にはランダムにシャッフルされたバージョンを配置します。コンテキストウィンドウの重複部分でノイズをシャッフルしないため、context_lengthフレームごとに内容が繰り返されるという副作用があります。

          FreeInit イテレーションオプション

          前述したFreeInitの特性上、FreeInitはイテレーションが最低2回必要になります。FreeInitの動作としては、最初のイテレーションで生成された動画から低周波のノイズを取得し、それをランダムに生成された高周波のノイズと組み合わせて次のイテレーションを実行します。各イテレーションは完全なサンプルであり、イテレーションが2回行われると、1回またはイテレーションオプションが接続されていない場合に比べて実行時間が2倍になります。

          1. FreeInit [sampler sigma]: この方法は、サンプラーから得られるシグマ値を使用してノイズを適用します。既存の潜在変数からの低周波ノイズとランダムに生成された潜在変数からの高周波ノイズを組み合わせることで、アニメーションの時間的一貫性を高めることを目的としています。
          2. FreeInit [model sigma]: この方法は、サンプラーではなくモデルからシグマ値を使用します。カスタムKSamplerを使用する際に特に有用で、ノイズの適用がモデルの特性と一致するようにします。
          3. DinkInit_v1: これはFreeInitの初期実装で、開発者が方法をさらに洗練する前に作成されたものです。他の2つのオプションほど最適化されていないかもしれませんが、特定のコンテキストで満足のいく結果を得ることができます。

          6. ワークフローの実行

          それでは、ワークフローを実行してみましょう。マシンスペックにもよりますが、5秒の動画を生成するにも多くの時間を要します(A100のGPUで1分、A6000で3分ほどでした)。

          AnimateDiff-SDXLの結果

          以下は、Sample Settingsを適用しない場合の生成結果です。プロンプトに従い女性の動画が生成されていますが、一貫性がないことが分かります。これは、AnimateDiffの特性で、Context Optionsノードのcontext_length内でしかコンテクストを正しく保持できないためです。context_overlapで数フレームをオーバーラップさせることで、次のコンテクストでの生成に前の生成結果を反映させますが、それも限界があるようです。

          画像

          次にSample Settingsのnoise_typeをFreeNoiseにして生成結果です。先ほどよりも変化が少なく、コンテクスト間で一貫性が保たれていることが分かります。

          画像

          その他に、一貫性を保つ方法として、Motion LoRAを使う方法があります。しかし、Motion LoRAは、SD1.5用しか存在せず、SDXLには適用できません。SD系列だと、SDXLがメジャーになっている中で、SD1.5を使用する人はあまりいないと思います。そのため、これがSDXL+AnimateDiffでのt2vの限界だと思います。ただし、この特性を活かした面白い表現をしたり、抽象的な表現をするには十分にAnimateDiffを活かせると思います。

          Hotshot-XLの生成結果

          次は、Sample Settingsのnoise_typeをdefautで、モーションモデルにHotshot-XLを使用して生成した結果です。コンテクスト長が8フレームしかないため、0.5秒ごとにコンテクストが変わってしまい、AnimateDiff-SDXL以上に変化の激しい動画となっています。

          画像

          次にSample Settingsのnoise_typeをFreeNoiseにして生成した結果です。AnimateDiff-SDXLと同様、先ほどよりも一貫性が増しました。Hotshot-XLの方がAnimateDiff-SDXLより明瞭だと言われますが、対応している解像度がAnimateDiff-SDXLは1024×1024、Hotshot-XLは512×512なので、解像度が異なることもあり、違いが分かりづらいです。Hires.fixすれば、どちらもそれほど気にならないかもしれません(text2videoに限れば)。

          画像

          7. まとめ

          AnimateDiffは、Stable Diffusionの技術を基に、画像生成AIの枠を超えて動画生成を実現した画期的なツールです。軽量でありながら、自然で一貫性のあるアニメーションを生成できるため、クリエイティブな用途に広く活用が期待されます。特に、テキストプロンプトから直接アニメーションを生成できる点は、デザイナーやアニメーターにとって大きな利便性を提供します。

          しかし、現状ではContext Optionsノードの制約やMotion LoRAの対応が限定的で、完全に安定した結果を得るためには工夫が必要です。今後、SDXLシリーズに最適化された技術の進展により、さらに質の高い動画生成が可能になることが期待されます。

          新しい技術に挑戦し続けることは、より高品質で魅力的なコンテンツを生み出す力となります。AnimateDiffを駆使して、これまでにないアニメーション表現に挑戦してみてください。

          次回は、AnimateDiffでvideo-to-video(v2v)をする方法を紹介します。乞うご期待!
          X(Twitter)@AICUai もフォローよろしくお願いいたします!

          [PR] ComfyUIマスター:カスタムノードとアプリ開発

          https://j.aicu.ai/Coloso3

          画像生成AI「ComfyUI」マスターPlan

          画像生成AI「Stable Diffusion」特に「ComfyUI」を中心としたプロ向け映像制作・次世代の画像生成を学びたい方に向けたプランです。最新・実用的な記事を優先して、ゼロから学ぶ「ComfyUI」マガジンからまとめて購読できます。 メンバーシップ掲示板を使った質問も歓迎です。

          • メンバー限定の会員証が発行されます
          • 活動期間に応じたバッジを表示
          • メンバー限定掲示板を閲覧できます
          • メンバー特典記事を閲覧できます
          • メンバー特典マガジンを閲覧できます
          • 動画資料やworkflowといった資料への優先アクセスも予定

          ゼロから学ぶ「ComfyUI」マガジン

          https://note.com/aicu/m/md2f2e57c0f3c

          マガジン単体の販売は1件あたり500円を予定しております。
          2件以上読むのであればメンバーシップ参加のほうがお得です!というのもメンバーシップ参加者にはもれなく「AICU Creator Union」へのDiscordリンクをお伝えし、メンバーオンリー掲示板の利用が可能になります。

          https://note.com/aicu/membership/boards/61ab0aa9374e/posts/db2f06cd3487?from=self

          もちろん、初月は無料でお試しいただけます!
          毎日新鮮で確かな情報が配信されるAICUメンバーシップ。
          退会率はとても低く、みなさまにご満足いただいております。
          ✨️オトクなメンバーシップについての詳細はこちら


          この記事の続きはこちらから https://note.com/aicu/n/n1728bd0668f5

          Originally published at https://note.com on Nov 20, 2024.