Guide

您所在的位置:网站首页 ui动态动画 Guide

Guide

2024-07-18 07:35:39| 来源: 网络整理| 查看: 265

此篇是在C站发表的一篇文章,我学习时顺手翻译了过来,与学习ComfyUI的小伙伴共享。

https://www.zhihu.com/video/16997296639188336641.介绍

ComfyUI 中的 AnimateDiff 是生成人工智能视频的绝佳方法。在本指南中,我将尝试帮助您入门并提供一些起始工作流程供您使用。我在这里的尝试是为了为您提供一个起点,让您开始制作自己的视频。工作流程附在此帖子的右上角,可在附件中下载.

2.系统要求

需要一台搭载 NVIDIA 显卡的 Windows 计算机,显存至少为 10GB(您可以在较小的分辨率下使用,512x512 分辨率搭配 2 个 ControlNets,或 Txt2VID 工作流程最低需要 8GB 显存)。对于其他方面的问题,我会尽力指导您,但可能无法协助您解决。请注意,在我使用的分辨率下,加入 2 个 ControlNets 时,显存已经接近 9.9-10GB,因此如果系统性能边缘,可能会出现问题。

3.安装依赖项

以下是您安装和使用 ComfyUI 所需的内容。

GIT - https://git-scm.com/downloads - 这使您可以从 GitHub 下载扩展并在更新发布时更新节点。(可选) - https://ffmpeg.org/download.html - 这是用于将图像转换为 GIF 的合并节点使用的工具。安装它本身就是一项指南。我建议在系统 PATH 中安装它,您可以在 YouTube 上找到如何安装的教程。如果没有安装这个工具,节点会报错,但工作流程仍然会运行,您将获得帧图像。7zip - https://7-zip.org/ - 用于解压缩 ComfyUI Standalone。4.安装 ComfyUI 和 Animation 节点

现在让我们安装 ComfyUI 以及 Animate Diff 所需的节点!

1.使用以下直链下载 ComfyUI:https://github.com/comfyanonymous/ComfyUI/releases/download/latest/ComfyUI_windows_portable_nvidia_cu118_or_cpu.7z,或者在网页上导航至:https://github.com/comfyanonymous/ComfyUI(如果您使用的是 Mac 或 AMD GPU,则有更复杂的安装指南)。

2. 使用上面安装的 7zip 进行解压缩。请注意,它不需要被正式安装,只需解压到目标文件夹即可。

3. 导航到 Comfy 的自定义节点部分。

4.在资源管理器选项卡中(如上图所示的框),点击选择并键入 CMD,然后按 Enter 键,您现在应该打开了一个命令提示框。它应该看起来像这样:

5.接下来,您将键入以下命令(您可以逐个复制/粘贴) - 我们在这里所做的是使用上面安装的 Git 来下载我们想要的节点存储库(有些可能需要一些时间):

git clone https://github.com/Kosinkadink/ComfyUI-AnimateDiff-Evolvedgit clone https://github.com/ltdrdata/ComfyUI-Managergit clone https://github.com/Kosinkadink/ComfyUI-Advanced-ControlNetgit clone https://github.com/Kosinkadink/ComfyUI-VideoHelperSuite

对于 ControlNet 预处理器,您不能简单地下载它们,必须使用我们上面安装的管理器。首先,在 ComfyUI_windows_portable 文件夹中运行 "run_nvidia_gpu"。它将初始化上面提到的一些节点。然后,点击 "Manager" 按钮,然后点击 "install custom nodes",搜索 "Auxiliary Preprocessors" 并安装 ComfyUI 的 ControlNet Auxiliary Preprocessors。与 ControlNet 预处理器类似,您需要搜索 "FizzNodes" 并安装它们。这是用于工作流程 4/5 中的提示处理的工具。然后关闭 Comfy UI 窗口和命令窗口,当您重新启动时,它们将被加载。

6. 下载checkpoint并将其放入checkpoint文件夹。您可以根据sd 1.5 基础选择任何模型。对于我的教程,您可以下载:https://civitai.com/models/24779?modelVersionId=56071,

还有https://civitai.com/models/4384/dreamshaper。

顺便说一句,出于某种原因,真实/中度真实的模型通常在 AnimateDiff 中表现不佳,除了 Epic Realism Natural Sin 似乎表现特别好且不模糊。将这些模型放入checkpoint文件夹。

7.下载 VAE 模型

并将其放入 VAE 文件夹。对于我的教程,请下载 https://civitai.com/models/76118?modelVersionId=80869。这是一个不错的通用 VAE 模型,总体上 VAE 并不会对结果产生巨大影响。

8.下载动画模块

(原始模块在这里:https://huggingface.co/guoyww/animatediff/tree/main,

经过微调的模块也可以像

https://huggingface.co/CiaraRowles/TemporalDiff/tree/main、https://huggingface.co/manshoety/AD_Stabilized_Motion/tree/main,

或 https://civitai.com/models/139237/motion-model-experiments 那样)。对于我的教程,请下载原始版本 2 模型和 TemporalDiff 模型(您也可以只使用其中一个,但最终的结果会与我的略有不同)。需要注意的是,动作模型对结果产生相当大的影响,特别是在 AnimateDiff 生成新动作时。因此,尝试不同的模块,将它们放入 Animate Diff 节点中:

9.下载 Controlnets 并将它们放入 Controlnets 文件夹。https://huggingface.co/lllyasviel/ControlNet-v1-1/tree/main。对于我的教程,您需要 Lineart、Depth 和 OpenPose(下载 pth 和 yaml 文件)。

5.使用 AnimateDiff 制作视频

本文顶部提供了可以下载的基本工作流。压缩文件中包含了来自预先分割的视频的帧,可供您开始,如果您想完全复制我的工作流。基本上有两种方法可以使用 AnimateDiff 制作视频。一种是使用 text2Vid,这种方法很不错,但动作并不总是您想要的;另一种是使用 Vid2Vid,它使用 ControlNet 提取视频中的一些动作以引导变换过程。

如果您使用 Vid2Vid,您需要从视频中分割帧(可以使用编辑程序或类似 http://ezgif.com 这样的网站),然后将帧率降低到所需的帧率(通常我会删除视频中的一半帧,选择 12-15 帧每秒)。您可以在下面指定的 "load images" 节点中使用跳过选项,而不必手动删除帧。如果您想复制我的工作流,您可以使用我提供的输入帧(请注意,原本有大约 115 帧,但由于文件大小限制,我将其减少到 90 帧)。在 ComfyUI 文件夹中运行 "run_nvidia_gpu",如果这是第一次运行,可能需要一些时间来下载并安装一些内容。要加载工作流程,可以单击 "load" 或将工作流程拖到 comfy 上(值得一提的是,任何图像都会附带 comfy 工作流程,因此您可以将任何生成的图像拖到 comfy 中,它将加载创建它的工作流程)。下面我将解释工作流程,如果您想从某个工作流程开始,我建议从标记为 "1-Basic Vid2Vid 1 ControlNet" 的工作流程开始。我将逐一介绍节点和它们的含义。Run(这一步需要一些时间,因为它一次生成所有动画的帧)6.节点解释

有些节点应该是很容易理解的,不过我会对大多数节点做一些说明。

ImagesLoad节点您需要选择帧所在的目录(即,如果您按照教程进行操作,要选择从哪里提取了帧的 ZIP 文件)。image_load_cap:如果设置为 0,它将加载每一帧,否则它将加载您选择的帧数,从而确定动画的长度。skip_first_images:如果需要,可以在批处理的开头跳过一定数量的帧。select_every_nth:如果需要跳过某些帧,此节点将按照指定的规则选择帧。例如,设置为 1 时选择每一帧,设置为 2 时选择每隔一帧,设置为 3 时选择每隔两帧,以此类推。

模型加载节点

上述每个节点都与一个模型相关联。您拥有的模型名称和我提供的示例中的名称可能不完全相同。您需要单击每个模型名称,并选择您拥有的模型。如果没有找到相关模型,那么您可能将模型放错了文件夹(参见上述的 "安装 ComfyUI" 部分)。

Clip提示词节点

节点解释 绿色代表正面提示 红色代表负面提示 它们的颜色不是因为它们特殊,而是通过右键单击它们来设置的。 值得注意的是,动作模块使用您的提示来帮助确定要使用的动作,因此如果您使用了比如 "walking"(走路)的提示,它会尝试使角色走路。如果您使用了 "windy"(有风)之类的提示,不要感到惊讶如果事物开始更多地移动。在负面提示中可能会出现一些奇怪/意想不到的结果,所以如果您要复制一个较长的负面提示(或正面提示),如果在动作方面出现奇怪的情况,请考虑简化它们。

Uniform Context Options节点(统一上下文选项)

Uniform Context Options是新功能,基本上是设置无限上下文长度的方法。没有它,Animate Diff 一次只能处理 24 帧(v1)或 36 帧(v2)。它的作用基本上是将 AD 运行的连续和重叠部分连接在一起以平滑处理。动画的总长度由加载程序馈送的帧数来决定,而不是上下文长度。加载程序根据以下选项决定如何操作,以下是各个选项的含义。默认设置是我使用的,相当不错。

Context Length 上下文长度 - 这是每个 Animate Diff 运行的长度。如果偏离 16 太远,您的动画将看起来不太好(这是 Animatediff 的一个限制)。默认设置目前还不错。

Context Overlap 上下文重叠 - 每次运行 Animate Diff 与下一个运行的帧有多少重叠(即,它运行帧 1-16,然后 12-28,有 4 帧重叠以使结果一致)。

closed loop 闭合循环 - 选择此选项将尝试使 Animate Diff 成为一个循环视频,但不适用于 Vid2Vid。

context stride 上下文跨步 - 这个比较难解释。当设置为 1 时,它关闭。大于 1 时,它尝试使 AD 通过整个动画的单个运行,然后填充帧。其想法是通过创建一个框架,然后填充中间帧来使整个动画更加一致。然而,在实际操作中,我发现它目前没有太大帮助。使用它将显著增加运行时间,因为它意味着要运行更多次的 Animate Diff。

ControlNet节点

这是一个基本的 Controlnet 设置。其中包括一个预处理器(左下角)。一个 Controlnet,以及强度和起始/结束,就像 A1111 一样。需要注意的是,第一次使用预处理器时需要下载,这个过程可能会根据您的互联网连接速度而花费相当长的时间。

Prompts scheduler

这是新的节点:FizzNodes 的提示调度器。

pre_text - 提示之前要放在前面的文本(这样您不必为每次更改都复制和粘贴大段的提示)。app_text - 提示之后要放在后面的文本。

主文本框中的文本格式是 "帧编号": "提示",(请注意,最后一个提示不需要逗号,如果在列表的末尾放一个逗号会导致错误)。它将在提示之间进行混合,所以如果您想保持提示不变,建议您将其放在两次,一次是从开始到结束,一次是从结束到开始。此节点还有更多复杂的用法(您可以通过时间使单个术语发生变化)。有关此节点的文档可以在 https://github.com/FizzleDorf/ComfyUI_FizzNodes 找到。"pw..." 的东西是用于此目的。

KSSampler节点

这是 KSampler - 实际上就是Stable Diffusion,现在我们已经加载了制作动画所需的一切。

以下是一些参数的解释:

步骤(Steps):这很重要,需要超过 20 步。25 是最低值,但很多人发现使用更多步骤可以获得更好的结果。CFG:可以适当增加,超过通常的稳定扩散设置。Sampler(采样器):采样器的选择也很重要。Euler_a 是不错的选择,但在较低的步骤下,Euler 不太适用。您可以尝试不同的设置来找到适合您的参数。Denoise(降噪):除非您在进行 Vid2Vid,否则将其保持为 1。如果您在进行 Vid2Vid,可以降低这个值,以保持与原始视频更接近。Save Images节点

以下是输出节点,最终将生成的结果存在下面路径:

请注意如何设置保存图像节点,以便将结果保存到文件夹中。对于合并节点,默认会创建 GIF。请知道 GIF 看起来比单独的帧差很多,所以即使 GIF 看起来不太好,它在视频中可能看起来很棒。frame_rate - GIF 的帧速率loop_count - 在停止之前循环的次数。0 表示无限循环。format - 更改输出格式,如 GIF、MP4 等。pingpong - 视频将通过所有帧,然后返回,而不仅仅是单向播放。save image - 保存视频的一帧图像(因为视频不包含元数据,这是一种保存工作流程的方法,如果您不同时保存图像的话)。

7.工作流程解释Basic Vid2Vid 1 ControlNet - 这是基本的 Vid2Vid 工作流程,使用了新节点进行更新。Vid2Vid Multi-ControlNet - 这基本上与上述工作流程相同,但使用了两个 ControlNet(不同的模型)。我提供了这个工作流程,因为有人对如何使用多个 ControlNet 感到困惑。Basic Txt2Vid - 这是基本的文本到视频工作流程 - 一旦您确保模型已加载,只需单击提示(prompt)即可运行。请注意,此工作流程使用了一种称为 "number of frame primal" 的节点来替代 "load image" 节点,并没有使用 ControlNet。需要知道的是,我不经常使用 txt2vid,所以这个工作流程生成的输出质量尚可,但并非出色。Vid2Vid with Prompt Scheduling - 这基本上是 Vid2Vid 与提示调度器节点的组合。这是我用来制作 Reddit 视频的工作流程。请参阅上面的新节点文档。Txt2Vid with Prompt Scheduling - 基本的文本到图像工作流程,使用了新的提示调度节点。

使用 VHS Loader 节点时,它只是将一个文件夹复制到 comfy 输入文件夹中。

您可以简单地将输入帧移动到输入目录中,然后从目录中进行选择。如果多次上传相同的文件夹,它将进行复制。如果您上传的文件夹与之前上传的具有相同名称的文件夹相同,它将合并文件夹。我已经与开发者讨论过这个问题,可能会有修复措施。目前,如果出现这个问题,请转到上述位置,删除有问题的文件夹,然后重新开始。

8.接下来做什么?更改 Vid2Vid 的视频输入(显然需要这样做)!有一些新节点可以直接将视频拆分为帧。请查看 "Load video nodes" - 这个节点是相对较新的。调整参数!在 KSampler 中,稳定扩散检查点和降噪强度会产生很大的影响(对于 Vid2Vid)。您可以添加/删除 ControlNet 或更改其强度。如果您习惯于制作其他稳定扩散视频,我发现与纯粹的稳定扩散相比,您需要的 ControlNet 强度要少得多,您将获得的效果也不仅仅是滤镜效果。我还建议尝试 OpenPose。尝试高级 K Sampler尝试添加 loras尝试 Motion loras: https://civitai.com/models/153022?modelVersionId=171354使用第二个 KSampler 进行高分辨率修复(一些更好的示例可以在 Kosinkadink 的 Animatediff GitHub https://github.com/Kosinkadink/ComfyUI-AnimateDiff-Evolved 上找到)。使用掩模或区域提示(这可能会成为一个单独的指南,因为在这个指南发布时,人们才刚刚开始尝试这样做)。

通过这些基本工作流程,添加所需的内容应该就像添加或删除一些节点那么简单。祝您好运!

9.故障处理

随着事物的进一步发展,这个指南可能会逐渐过时,其中一些节点可能会被弃用。但这并不意味着它们不一定会继续工作。希望我能有时间制作另一个指南,或者其他人会制作。

如果出现空类型错误,请确保在上述每个位置加载了模型。

如果您已经使用 ComfyUI 进行其他工作,有几个节点仓库可能会与动画节点发生冲突并导致错误。

如果出现张量不匹配错误或重复帧的问题,这是因为 VHS Loader 节点会将图像 "上传" 到 ComfyUI 的输入部分。

您可以转到这个文件夹,然后删除文件夹并重置事物。

10. 后续

我会继续学习支持XL的视频制作,和一些深入一点的视频制作例子. 有兴趣的小伙伴可以一起学习起来, 关注我或者私信我都可以.

本教程附带的例子

链接:https://pan.baidu.com/s/1NVERVIr1DUJ9VmEtGuKtfA?pwd=hd37

提取码:hd37

下面是稍微复杂一点的视频成果

https://www.zhihu.com/video/1699729793975738371



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


    图片新闻

    实验室药品柜的特性有哪些
    实验室药品柜是实验室家具的重要组成部分之一,主要
    小学科学实验中有哪些教学
    计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
    实验室各种仪器原理动图讲
    1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
    高中化学常见仪器及实验装
    1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
    微生物操作主要设备和器具
    今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
    浅谈通风柜使用基本常识
     众所周知,通风柜功能中最主要的就是排气功能。在

    专题文章

      CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭