ComfyUI Animation Nodes and Workflows 插件保姆级教程
1. 插件简介
ComfyUI Animation Nodes and Workflows 是一个专门为动画和视频制作设计的插件包,就像一个专业的动画制作工具箱。这个插件能帮你把普通的图片变成有趣的动画,比如让人物走路、让背景移动、拼接多个视频等等。
插件GitHub地址: https://github.com/Isi-dev/ComfyUI_Animation_Nodes_and_Workflows
主要功能:
- 把多个视频拼接成一个长视频(就像把几段小视频连在一起)
- 给图片或视频换背景(就像抠图换背景)
- 让静态人物图片看起来像在走路
- 创造画面移进移出的效果(就像镜头推拉)
- 让背景左右或上下移动(制造运动感)
- 把任意视频中的人脸提取出来做成512x512的小视频
2. 如何安装
方法一:通过ComfyUI Manager安装(推荐)
- 打开ComfyUI Manager
- 搜索:
ComfyUI-Animation_Nodes_and_Workflows - 点击安装即可
方法二:手动安装
- 下载插件文件:访问GitHub页面,点击绿色的"Code"按钮,选择"Download ZIP"
- 解压文件到ComfyUI的
custom_nodes文件夹里 - 打开命令行,进入插件文件夹
- 安装依赖:
pip install -r requirements.txt - 重启ComfyUI
3. 节点逐一解析
3.1 Join Videos 节点(视频拼接器)
这个节点就像一个视频胶水,能把最多5个视频粘在一起,变成一个长视频。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Video 1 | video1 | 视频文件 | 必填 | 第一个要拼接的视频 | 主要的视频输入源 | 把你最重要的视频放这里 |
| Video 2 | video2 | 视频文件 | 可选 | 第二个要拼接的视频 | 次要的视频输入源 | 要接在第一个视频后面的视频 |
| Video 3 | video3 | 视频文件 | 可选 | 第三个要拼接的视频 | 第三个视频输入源 | 继续接在后面的视频 |
| Video 4 | video4 | 视频文件 | 可选 | 第四个要拼接的视频 | 第四个视频输入源 | 第四段视频内容 |
| Video 5 | video5 | 视频文件 | 可选 | 第五个要拼接的视频 | 第五个视频输入源 | 最后一段视频内容 |
3.2 Replace Img_or_Vid_Bg 节点(背景替换器)
这个节点就像一个智能抠图工具,能把图片或视频的背景换成你想要的样子。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Source | source | 图片/视频 | 必填 | 要换背景的原图或视频 | 原始媒体输入 | 把你的人物照片放这里 |
| Mask | mask | 遮罩图 | 必填 | 告诉电脑哪里是背景 | 背景分离遮罩 | 黑白图,白色部分是要保留的 |
| New Background | new_bg | 图片/视频 | 必填 | 新的背景图片或视频 | 替换背景源 | 你想要的新背景图片 |
| Blend Mode | blend_mode | 混合模式 | normal | 新背景和原图怎么融合 | 图像混合算法 | 一般选normal就行 |
3.3 Make Portrait Walk 节点(人物行走生成器)
这个节点就像一个魔法棒,能让一张静态的人物照片看起来像在走路。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Portrait | portrait | 人物图片 | 必填 | 要制作行走动画的人物照片 | 人物肖像输入 | 选一张正面或侧面的人物照 |
| Steps | steps | 数字 | 8-16 | 要生成多少张走路的图片 | 动画帧数 | 数字越大走路越流畅,但计算时间更长 |
| Walk Speed | walk_speed | 0.1-2.0 | 1.0 | 走路的快慢程度 | 动画速度参数 | 1.0是正常速度,2.0是快走 |
| Direction | direction | left/right | right | 人物朝哪个方向走 | 运动方向 | 选right表示向右走 |
3.4 Move In_Or_Out 节点(镜头推拉器)
这个节点就像一个摄像机的变焦镜头,能创造镜头推进或拉远的效果。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Image | image | 图片 | 必填 | 要做推拉效果的图片 | 源图像输入 | 选择你的背景图片 |
| Direction | direction | in/out | in | 镜头是推进还是拉远 | 缩放方向 | in表示推进(放大),out表示拉远(缩小) |
| Frames | frames | 数字 | 30 | 要生成多少帧动画 | 动画长度 | 30帧大约是1秒的动画 |
| Zoom Factor | zoom_factor | 1.1-3.0 | 1.5 | 推拉的幅度有多大 | 缩放倍数 | 1.5表示最终放大1.5倍 |
| Center X | center_x | 0.0-1.0 | 0.5 | 推拉的中心点横坐标 | 缩放中心X坐标 | 0.5是图片中心,0.0是最左边 |
| Center Y | center_y | 0.0-1.0 | 0.5 | 推拉的中心点纵坐标 | 缩放中心Y坐标 | 0.5是图片中心,0.0是最上边 |
3.5 Move Left_Or_Right 节点(左右移动器)
这个节点就像一个横向的传送带,能让背景左右移动,制造前景物体在移动的错觉。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Background | background | 图片 | 必填 | 要移动的背景图片 | 背景图像输入 | 选择一张宽度较大的背景图 |
| Direction | direction | left/right | right | 背景向哪个方向移动 | 移动方向 | right表示背景向右移动 |
| Speed | speed | 1-50 | 10 | 移动的速度快慢 | 移动速度(像素/帧) | 数字越大移动越快 |
| Frames | frames | 数字 | 30 | 要生成多少帧动画 | 动画长度 | 30帧大约是1秒的动画 |
| Loop | loop | true/false | true | 是否循环移动 | 循环播放选项 | true表示可以无限循环 |
3.6 Move Up_Or_Down 节点(上下移动器)
这个节点就像一个垂直的电梯,能让背景上下移动,制造前景物体在垂直移动的错觉。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Background | background | 图片 | 必填 | 要移动的背景图片 | 背景图像输入 | 选择一张高度较大的背景图 |
| Direction | direction | up/down | up | 背景向哪个方向移动 | 移动方向 | up表示背景向上移动 |
| Speed | speed | 1-50 | 10 | 移动的速度快慢 | 移动速度(像素/帧) | 数字越大移动越快 |
| Frames | frames | 数字 | 30 | 要生成多少帧动画 | 动画长度 | 30帧大约是1秒的动画 |
| Loop | loop | true/false | true | 是否循环移动 | 循环播放选项 | true表示可以无限循环 |
3.7 Video for LivePortrait 节点(人脸视频提取器)
这个节点就像一个智能剪刀,能从任何视频中把人脸部分剪出来,做成标准的512x512小视频。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Input Video | input_video | 视频文件 | 必填 | 包含人脸的原始视频 | 视频输入源 | 选择有清晰人脸的视频 |
| Face Index | face_index | 0-10 | 0 | 如果有多张脸,选择第几张 | 人脸索引 | 0表示第一张脸,1表示第二张脸 |
| Crop Padding | crop_padding | 0-100 | 20 | 人脸周围要保留多少空间 | 裁剪边距 | 20表示脸部周围留20像素的空间 |
| Smooth Tracking | smooth_tracking | true/false | true | 是否平滑人脸跟踪 | 跟踪平滑选项 | true让人脸跟踪更稳定 |
| Min Face Size | min_face_size | 50-200 | 80 | 最小的人脸尺寸 | 最小人脸检测尺寸 | 太小的脸会被忽略 |
4. 使用技巧和建议
4.1 视频拼接技巧
- 分辨率要一致:拼接的视频最好是相同的分辨率,这样拼出来的效果最好
- 帧率要匹配:不同帧率的视频拼接可能会有卡顿感
- 内存管理:一次拼接太多视频可能会占用大量内存,建议分批处理
4.2 背景替换技巧
- 遮罩要精确:背景替换的效果好坏主要看遮罩的质量,边缘要处理得平滑
- 光照要匹配:新背景的光照方向最好和原图一致
- 颜色要协调:注意新背景和前景的颜色搭配
4.3 人物行走动画技巧
- 选择合适的照片:最好选择正面或侧面的全身照
- 步数要合理:步数太少会显得僵硬,太多会增加计算时间
- 速度要自然:walking speed建议设置在0.8-1.2之间比较自然
4.4 镜头移动技巧
- 中心点要准确:推拉镜头的中心点要设置在视觉重点上
- 速度要平滑:避免过快的移动,容易产生眩晕感
- 循环要自然:如果要做循环动画,注意首尾的衔接
5. 常见问题解答
Q1:为什么安装后找不到节点?
A1:
- 检查是否重启了ComfyUI
- 确认插件文件夹放在了正确的位置
- 查看控制台是否有错误信息
- 尝试重新安装依赖包
Q2:视频拼接后画质变差了怎么办?
A2:
- 检查原视频的质量,拼接不会提升画质
- 确保所有视频的编码格式兼容
- 尝试使用相同分辨率的视频
Q3:人物行走动画看起来很假怎么办?
A3:
- 选择更清晰的人物照片
- 调整步数,通常10-16步比较合适
- 选择合适的行走速度
- 确保原图中的人物姿态自然
Q4:背景替换有明显的接缝怎么办?
A4:
- 提升遮罩的质量,边缘要更平滑
- 调整混合模式
- 可以在后期再用其他工具进行边缘处理
Q5:内存不够用怎么办?
A5:
- 减少同时处理的视频数量
- 降低输出分辨率
- 分批处理大型项目
- 关闭其他占用内存的程序
6. 进阶用法和创意应用
6.1 组合使用创意
- 人物行走+背景移动:结合Move Left_Or_Right和Make Portrait Walk,创造更真实的行走效果
- 多层背景替换:先用Replace Img_or_Vid_Bg换背景,再用Move In_Or_Out创造景深效果
- 循环动画制作:利用各种移动节点的Loop功能,制作无缝循环的动画
6.2 工作流程建议
- 规划先行:在制作前先想好整体的动画效果
- 素材准备:提前准备好所有需要的图片和视频素材
- 分步测试:每个节点都先单独测试,确保效果满意
- 逐步组合:从简单到复杂,逐步建立完整的工作流
6.3 性能优化建议
- 合理设置帧数:根据实际需要设置动画帧数,不要盲目追求高帧数
- 压缩素材:在保证质量的前提下适当压缩素材文件
- 及时清理:定期清理临时文件和缓存
这个插件为ComfyUI用户提供了强大的动画制作功能,通过合理使用这些节点,你可以创造出各种有趣的动画效果。记住多实验、多尝试,每个参数的调整都会带来不同的效果!