Diffusion360_ComfyUI 插件完全使用教程
1. 插件简介
Diffusion360_ComfyUI 是一个专门用来制作360度全景图片的ComfyUI插件。想象一下,你平时拍照只能看到一个角度,但是这个插件能让你生成那种可以360度旋转观看的全景图片,就像你站在一个球体中心,能够看到四周所有方向的景象。
插件原地址: https://github.com/ArcherFMY/Diffusion360_ComfyUI
这个插件主要能做两件事:
- 文字变全景图:你输入一段描述,它就能给你生成一张360度全景图
- 图片变全景图:你给它一张普通图片,它能帮你扩展成360度全景图
2. 如何安装
2.1 前期准备
首先确保你已经安装了ComfyUI基础版本。如果还没有,请先去 https://github.com/comfyanonymous/ComfyUI 下载安装。
2.2 安装步骤
第一步:下载插件
- 打开命令行工具(Windows按Win+R,输入cmd回车)
- 切换到ComfyUI目录:
cd ComfyUI/custom_nodes - 下载插件:
git clone https://github.com/ArcherFMY/Diffusion360_ComfyUI - 进入插件目录:
cd Diffusion360_ComfyUI - 安装依赖:
pip install -r requirements.txt
第二步:下载模型文件
- 去 https://huggingface.co/archerfmy0831/sd-t2i-360panoimage 下载模型
- 把下载的文件夹重命名为
diffusion360 - 放到
ComfyUI/models/diffusers/目录下
第三步:重启ComfyUI
重新启动ComfyUI,你就能在节点列表中看到Diffusion360相关的节点了。
3. 节点详细解析
3.1 Diffusion360Loader 节点
这个节点就像一个"模型加载器",专门用来加载制作360度全景图需要的各种模型文件。把它想象成一个工具箱,里面装着制作全景图需要的所有工具。
3.1.1 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 模型路径 | model_path | 文件路径 | diffusion360 | 告诉插件去哪里找制作全景图的模型文件,就像告诉厨师去哪个柜子找调料 | 指定Diffusion360模型文件的存储路径 | 填写你放模型文件的文件夹名称,比如"diffusion360" |
| 设备类型 | device | cuda/cpu | cuda | 选择用显卡还是处理器来运行,显卡快但费电,处理器慢但省电 | 指定模型运行的硬件设备 | 有独立显卡选cuda,没有选cpu |
| 精度模式 | precision | fp16/fp32 | fp16 | 控制计算精度,就像选择用粗略画笔还是精细画笔,粗略快但效果差点 | 设置模型计算的浮点精度 | 一般用fp16,速度快且效果够用 |
3.2 Text2Pano 节点
这个节点是"文字变全景图生成器",你给它一段文字描述,它就能生成对应的360度全景图。就像有一个画家,你用语言描述想要的场景,它就能画出来。
3.2.1 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 提示词 | prompt | 文本 | "a beautiful sunset over mountains" | 告诉AI你想要什么样的全景图,就像给画家下订单 | 用于生成图像的文本描述 | 输入"海边日落"、"森林小屋"等描述 |
| 负面提示词 | negative_prompt | 文本 | "blurry, low quality" | 告诉AI你不想要什么效果,就像告诉厨师不要放辣椒 | 用于避免生成不想要的内容 | 填写"模糊"、"低画质"等不想要的词 |
| 图片宽度 | width | 数字 | 512 | 控制生成图片的宽度,就像选择画布的宽度 | 设置输出图像的像素宽度 | 建议512或1024,数字越大越清晰但越慢 |
| 图片高度 | height | 数字 | 512 | 控制生成图片的高度,就像选择画布的高度 | 设置输出图像的像素高度 | 建议512或1024,数字越大越清晰但越慢 |
| 生成步数 | steps | 数字 | 20 | 控制AI画图的精细程度,就像画家画几遍才完成 | 扩散模型的去噪步数 | 10-50之间,数字越大越精细但越慢 |
| 引导强度 | guidance_scale | 数字 | 7.5 | 控制AI多严格按照你的描述画图,数字越大越严格 | 控制模型对提示词的遵循程度 | 5-15之间,太高会过度饱和 |
| 随机种子 | seed | 数字 | -1 | 控制随机性,同样的种子会生成相同的图片 | 确定随机数生成器的初始状态 | -1表示随机,固定数字可重复生成 |
3.3 Image2Pano 节点
这个节点是"图片变全景图转换器",你给它一张普通图片,它能帮你扩展成360度全景图。就像一个魔法师,能把一张照片变成可以环绕观看的全景画面。
3.3.1 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图片 | input_image | 图片 | 无 | 你要转换的原始图片,就像给裁缝一块布料 | 作为基础的输入图像 | 拖拽或连接一张图片到这里 |
| 扩展提示词 | expand_prompt | 文本 | "complete the scene" | 告诉AI怎么扩展你的图片,就像告诉设计师补充什么内容 | 用于指导图像扩展的文本描述 | 输入"补全森林场景"、"添加天空和云朵" |
| 扩展强度 | expand_strength | 数字 | 0.8 | 控制扩展的程度,就像调节混合比例 | 控制原图和扩展内容的融合程度 | 0.5-1.0之间,越高扩展越多 |
| 保持比例 | keep_ratio | 布尔值 | True | 决定是否保持原图的长宽比例,就像决定是否拉伸照片 | 是否维持原始图像的宽高比 | 一般保持True,避免变形 |
| 生成步数 | steps | 数字 | 20 | 控制AI处理的精细程度,就像决定修图几遍 | 扩散模型的去噪步数 | 10-50之间,数字越大越精细但越慢 |
| 引导强度 | guidance_scale | 数字 | 7.5 | 控制AI多严格按照你的要求扩展图片 | 控制模型对提示词的遵循程度 | 5-15之间,太高会过度饱和 |
| 随机种子 | seed | 数字 | -1 | 控制随机性,同样的种子会生成相同的结果 | 确定随机数生成器的初始状态 | -1表示随机,固定数字可重复生成 |
3.4 PanoUpscaler 节点
这个节点是"全景图放大器",能够把生成的全景图放大到更高分辨率,让图片更加清晰。就像一个照片放大镜,能把模糊的照片变得清晰。
3.4.1 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图片 | input_image | 图片 | 无 | 你要放大的全景图,就像给放大镜一张照片 | 需要超分辨率处理的输入图像 | 连接前面生成的全景图 |
| 放大倍数 | scale | 数字 | 2 | 决定放大多少倍,就像选择放大镜的倍数 | 图像放大的倍率 | 2倍或4倍,太大会很慢 |
| 放大模式 | upscale_mode | 选项 | RealESRGAN | 选择用什么方法放大,就像选择不同的放大镜 | 选择超分辨率算法 | RealESRGAN效果好,速度适中 |
| 降噪强度 | denoise_strength | 数字 | 0.5 | 控制去除噪点的程度,就像调节美颜强度 | 控制去噪处理的强度 | 0.3-0.7之间,太高会丢失细节 |
| 边缘平滑 | edge_smooth | 布尔值 | True | 决定是否让图片边缘更平滑,就像磨皮效果 | 是否对图像边缘进行平滑处理 | 一般开启True,让图片更自然 |
3.5 PanoViewer 节点
这个节点是"全景图查看器",让你能够预览生成的360度全景图效果。就像一个专门的全景图播放器,让你能看到最终的360度效果。
3.5.1 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图片 | input_image | 图片 | 无 | 你要查看的全景图,就像给播放器一张全景照片 | 需要预览的全景图像 | 连接生成的全景图 |
| 视角角度 | fov | 数字 | 90 | 控制查看时的视野范围,就像调节相机镜头的广角程度 | 设置视场角度 | 60-120之间,越大看得越广 |
| 初始方向 | initial_direction | 数字 | 0 | 设置开始查看的方向,就像决定从哪个角度开始看 | 设置初始视角方向 | 0-360度,0表示正前方 |
| 显示控制 | show_controls | 布尔值 | True | 决定是否显示控制按钮,就像决定是否显示播放器按钮 | 是否显示交互控制界面 | 一般开启True,方便操作 |
| 自动旋转 | auto_rotate | 布尔值 | False | 决定是否自动旋转查看,就像自动播放模式 | 是否启用自动旋转功能 | 需要动态展示时开启 |
| 旋转速度 | rotation_speed | 数字 | 1.0 | 控制自动旋转的速度,就像调节播放速度 | 设置自动旋转的速度 | 0.5-2.0之间,越大转得越快 |
4. 使用技巧和建议
4.1 生成技巧
- 提示词要详细:描述场景时尽量详细,比如"阳光明媚的海滩,椰子树,蓝天白云"比"海滩"效果好
- 分辨率选择:初学者建议先用512x512,熟练后再尝试更高分辨率
- 步数平衡:20-30步通常够用,太多步数浪费时间,太少步数效果不好
4.2 质量优化
- 使用负面提示词:添加"模糊、低画质、变形"等负面词汇
- 合理设置引导强度:7.5是个不错的起点,根据效果调整
- 种子固定:找到满意的效果后,记录种子数值,方便重复生成
4.3 设备优化
- 显卡内存:确保显卡内存足够,不够的话降低分辨率
- 处理器选择:有独立显卡优先选择cuda,速度快很多
- 精度设置:fp16通常够用,除非特别需要精度才用fp32
5. 常见问题解答
5.1 安装问题
问:安装时提示找不到模块怎么办?
答:确保按顺序执行安装命令,特别是pip install -r requirements.txt这一步。
问:模型下载很慢怎么办?
答:可以使用国内镜像源,或者找其他用户分享的模型文件。
5.2 使用问题
问:生成的图片不是360度效果怎么办?
答:检查是否正确连接了PanoViewer节点,确保使用的是全景图生成节点。
问:图片质量不好怎么办?
答:尝试增加生成步数,使用更详细的提示词,或者使用PanoUpscaler节点放大。
问:生成速度很慢怎么办?
答:降低图片分辨率,减少生成步数,确保使用cuda而不是cpu。
5.3 技术问题
问:内存不足怎么办?
答:降低图片分辨率,使用fp16精度,或者关闭其他占用内存的程序。
问:生成的图片有接缝怎么办?
答:这是全景图的常见问题,可以尝试调整提示词,或者使用后期处理工具修复。
6. 进阶使用技巧
6.1 工作流组合
- 基础流程:Diffusion360Loader → Text2Pano → PanoViewer
- 高质量流程:Diffusion360Loader → Text2Pano → PanoUpscaler → PanoViewer
- 图片转换流程:Diffusion360Loader → Image2Pano → PanoUpscaler → PanoViewer
6.2 参数调优经验
- 风景类:引导强度7-10,步数20-30
- 建筑类:引导强度10-15,步数30-50
- 人物类:引导强度5-8,步数15-25
6.3 输出格式建议
- 网页展示:使用PanoViewer节点,开启控制界面
- VR使用:生成高分辨率图片,关闭自动旋转
- 视频制作:开启自动旋转,调整合适的旋转速度
记住,这个插件的核心价值在于能够快速生成高质量的360度全景图,无论是用于VR展示、网页互动还是创意设计,都能为你的项目增添沉浸式的视觉体验。多尝试不同的参数组合,你会发现更多有趣的效果!