ComfyUI完全入门:图生图局部重绘
大家好,我是每天分享AI应用的萤火君!
这篇文章的主题和美女有关,不过并不是教大家生产美女视频,而是讲解 ComfyUI 的图生图局部重绘,其中将会以美女图片为例,来展示局部重绘的强大威力。
先看看效果:

ComfyUI是什么?
在AI绘画领域,Stable Diffusion 因其开源特性而受到广泛的关注和支持,背后聚拢了一大批的应用开发者和艺术创作者,是AI绘画领域当之无愧的王者。
目前使用 Stable Diffusion 进行创作的工具主要有两个:Stable Diffusion WebUI 和 ComfyUI。
Stable Diffusion WebUI 开箱即用,基本功能齐全,社区也有很多的插件支持,入门比较简单,适合新手,但是可定制性稍微差点,很多作品不容易传播复现,使用API进行操作也有一定的难度。
ComfyUI 虽然出来的晚一点,但是它的可定制性很强,可以让创作者搞出各种新奇的玩意,通过工作流的方式,也可以实现更高的自动化水平,创作方法更容易传播复现,发展势头特别迅猛。从解放生产力以及工业化批量生产的角度看,ComfyUI 具备更广阔的应用前景。
但是 ComfyUI 的上手门槛有点高,对 Stable Diffusion 以及各种扩展能力的原理需要有一定的理解,动手能力要求也比较高。为了让 ComfyUI 走进千家万户,从这篇文章开始,我将开始介绍一些 ComfyUI 的概念和使用方法,让大家更快的掌握 ComfyUI 的使用技巧,创作出自己独特的艺术作品。
如何安装 ComfyUI?
本地或手动安装
本系列的第一篇文章中已经详细的介绍过安装步骤,需要的同学请点此前往:ComfyUI 完全入门:安装部署
云环境使用
如果你的电脑没有配置高性能的Nvidia显卡,我建议你可以先在云环境试试,推荐两个云平台:
京东云:京东云最近大举进入AIGC领域,新上了AI服务器,价格十分美丽,目前4090每小时1.89,最重要的是还可以领取2个小时的代金券(领取方式见文末)。为了让大家在京东云尽快跑起来,萤火君也正在制作相应的 ComfyUI 镜像,内置常见模型和插件,敬请关注。
智算服务的地址:智算服务-京东云
AutoDL:AutoDL是一个云计算平台,提供多种显卡服务器租用服务,可按小时付(1-2元左右),显卡价格相比阿里云、腾讯云有明显的优势,我一直在用,推荐本地硬件性能不足的同学试试。
镜像地址:CodeWithGPU | 能复现才是好算法
镜像使用方法:打开镜像页面,点击右下角的“AutoDL创建实例”,按照使用说明操作即可。

ComfyUI局部重绘
基本重绘方法
我们先来看一个最简单的局部重绘示例,在这个示例中,我将在姑娘左边的地板上增加了一条黄色的小狗。工作流下载见文末。

加载重绘图片
从左向右看,最左边是加载需要做局部重绘的图片,并在图片中添加一个遮罩,遮罩的区域内将绘制一条小狗。这个部分包括4个节点,我分别介绍下:

加载图像:从文件夹选择一张图片,或者上传一张图片。然后我们在图片上点击右键,在弹出的菜单中继续点击“在遮罩编辑器中打开”,在打开的页面中我们就可以绘制遮罩了,完成绘制点击右下角的“Save to node”就可以了,操作如下图所示:

VAE编码:图片要进行重绘,还是要走扩散模型的基本流程,这里需要使用VAE模型将图片编码到潜空间。
遮罩羽化:让遮罩部分生成的内容和图片的其它部分融合的更好一些,不那么突兀。
遮罩平滑:我们手动操作可能比较毛糙,让遮罩的编码更加平滑。
设置Laten滤波遮罩:给潜空间中的遮罩区域增加噪音,这样可以让生成的内容和图片融合的更好些。
设置SD参数
然后我们还要设置Stable Diffusion的基本参数,包括:
加载SD基础模型:可以使用所有的SD基础模型,SD1.5、SDXL都可以。
填写提示词和反向提示词:描述要重绘的内容,不想出现的内容等。
设置采样器:常用的K采样器即可,所有参数都是用默认设置即可。
最终保存图像:可以设置一个文件名前缀。

然后就可以“添加提示词队列”去生成图片了。
使用ControlNet精细重绘
终于到了更换丝袜的环节了。因为我们只是想要更换丝袜的颜色,腿形啥的都不想有大的改变,这就需要更为精细的控制,可以通过引入 ControlNet 达到这个目的。
Canny控制网
我们先使用 Canny 控制网来进行处理,Canny 是一个线稿模型,它可以控制图片按照线稿的约束进行生成,效果不错。工作流的其它部分基本不用改变,我们只需要增加 ControlNet 的部分,并把这些节点添加到工作流中。这里主要介绍下ControlNet的部分(完整的工作流请在文末获取),看下面这张图:

先看左边三个节点:
- Canny细致线预处理器器:从要重绘的图片中提取线稿图,这里边有个分辨率的参数,需要设置为图片最小边的像素值,所以引入了“数学表达式”和“图像信息”两个节点。
- 图像信息:提取要重绘图片的宽度和高度。
- 数学表达式:获取图片宽度和高度的最小值。
再看右边两个节点:
- DiffControlNet加载器:用来加载ControlNet模型,注意模型要和预处理器匹配。
- ControlNet应用:用来定义一个ControlNet节点,其中的强度、开始时间和结束时间,是用来控制 ControlNet 参数图片生成的影响力的,开始时间和结束时间的取值范围是0-1,代表在采样过程中的介入时机。
另外需要注意的是遮罩的绘制和提示词的编写:
先看遮罩的绘制,因为只是更改丝袜的颜色,我们这里需要只把腿覆盖上,其它部分尽量不要覆盖,以免出图效果不好。

再看提示词,我们需要在提示词中描述丝袜的颜色、质地等特征。
最后还是点击“添加提示词队列”去生成图片。
Tile控制网
另外我也做了一个Tile控制网的工作流,Tile的主要能力是细节完善,修改颜色比较困难,但是也能把丝袜处理的更好看一些,所以还是简单介绍下。
这里也需要一个预处理器,Tile平铺预处理器,它主要是把图片变模糊。这里的分辨率我没有自动计算,直接设置为了图片最小边的长度,你生成图片的时候请注意修改。
其它ControlNet模型的选择就没什么好说的了,工作流下载还是见文末。

资源分享
工作流:请给公众号“萤火遛AI”发消息:局部重绘,即可获取。
京东云代金券:请+V yinghuojun007 领取。
以上就是本文的主要内容。
用好 ComfyUI:
- 首先需要对 Stable Diffusion 的基本概念有清晰的理解,熟悉 ComfyUI 的基本使用方式;
- 然后需要在实践过程中不断尝试、不断加深理解,逐步掌握各类节点的能力和使用方法,提升综合运用各类节点进行创作的能力。
我将在后续文章中持续输出 ComfyUI 的相关知识和热门作品的工作流,帮助大家更快的掌握 Stable Diffusion,创作出满足自己需求的高质量作品,感兴趣的同学请及时关注。
另外我还创建了一个AI绘画专栏,可以零门槛,全面系统的学习 Stable Diffusion 创作,让创作灵感轻松落地!如有需要请点击此处进入。
相关文章:
ComfyUI完全入门:图生图局部重绘
大家好,我是每天分享AI应用的萤火君! 这篇文章的主题和美女有关,不过并不是教大家生产美女视频,而是讲解 ComfyUI 的图生图局部重绘,其中将会以美女图片为例,来展示局部重绘的强大威力。 先看看效果&…...
基于UDP的网络多人聊天室
UDP服务器 #include <myheader.h>//宏定义打印错误信息 #define PRINT_ERR(msg) \do \{ \printf("%S,%D,%S\n",__FI…...
美国FDA认证是什么,食品FDA注册申请流程
美国FDA认证是什么? 美国FDA认证,全称为美国食品药品监督管理局(Food and Drug Administration)的认证,是美国政府为了确保食品、药品、医疗器械等产品的安全性和有效性所设立的重要制度。FDA认证的种类繁多&#x…...
golang的context和chan 的使用
1. context 作用 context包的context的接口,主要是控制协程执行上下文的时间,以及取消程序的执行,以及上下文中传递数据等作用,golang中耗时或者需要协同的操作都会见到context的身影。 context有几个常用的方法 1.1 context.B…...
洛谷P3574 [POI2014] FAR-FarmCraft(树形dp)
洛谷 P 3574 [ P O I 2014 ] F A R − F a r m C r a f t (树形 d p ) \Huge{洛谷P3574 [POI2014] FAR-FarmCraft(树形dp)} 洛谷P3574[POI2014]FAR−FarmCraft(树形dp) 文章目录 题意题目说明 思路标程 题目…...
vue/core源码中ref源码的js化
起源: 当看见reactivity文件中的ref.ts文件长达五百多的ts代码后,突发奇想想看下转化成js有多少行。 进行转化: let shouldTrack true; // Define shouldTrack variable let activeEffect null; // Define activeEffect variable// 定义…...
准备打ccf
准备打ccf...
k8s遇到的错误记录
时隔四年有开始重新鼓捣k8s了,重新安装后遇到的错误记录如下: Error: Package: kubelet-1.14.0-0.x86_64 (kubernetes) Requires: kubernetes-cni 0.7.5 Available: kubernetes-cni-0.3.0.1-0.07a8a2.x86_64 (kubernetes) …...
全局平均池化笔记
全局平均池化(Global Average Pooling, GAP)是一种用于卷积神经网络(CNN)中的池化操作,其主要作用和优点包括: 减少参数数量:全局平均池化层将每个特征图通过取其所有元素的平均值,压…...
【数仓系列】maxcompute、postgresql、sparksql等行转列数据处理实战总结(其他类型持续总结更新)
1.熟悉、梳理、总结项目研发实战中的SQL开发日常使用中的问题、经验总结,都是常用的开发技能,可以省去很多时间,时间长就忘记了 2.欢迎点赞、关注、批评、指正,互三走起来,小手动起来! 文章目录 1.maxcompu…...
用数据,简单点!奇点云2024 StartDT Day数智科技大会,直播见
在充满挑战的2024,企业如何以最小化的资源投入和试错成本,挖掘新的增长机会,实现确定性发展? “简单点”是当前商业环境的应对策略,也是奇点云2024 StartDT Day的核心理念。 5月28日,由奇点云主办的2024 S…...
Cloneable接口和深拷贝
在java中如何对对象进行拷贝呢?我们可以使用Object类中的clone方法。 一、浅拷贝 在使用clone方法对对象进行拷贝的时候,需要注意: 1.需要重写clone方法; 2.clone方法的返回值是Object类,需要强制类型转化…...
C++:vector的介绍及使用
✨✨✨学习的道路很枯燥,希望我们能并肩走下来! 文章目录 文章目录 前言 一、vector的介绍 二、vector的使用 2.1.构造和赋值重载(Member functions) 2.2 vector iterator 的使用 2.3 vector 空间增长问题 2.4 vector 增删查改 三 sort 四 v…...
【机器学习】大模型在机器学习中的应用:从深度学习到生成式人工智能的演进
🔒文章目录: 💥1.引言 ☔2.大模型概述 🚲3.大模型在深度学习中的应用 🛴4.大模型在生成式人工智能中的应用 👊5.大模型的挑战与未来展望 💥1.引言 随着数据量的爆炸性增长和计算能力的提…...
营销短信XML接口对接发送示例
在现代社会中,通信技术日新月异,其中,短信作为一种快速、简便的通信方式,仍然在日常生活中占据着重要的地位。为了满足各种应用场景的需求,短信接口应运而生,成为了实现高能有效通信的关键。 短信接口是一种…...
【C语言刷题系列】求一个数组中两个元素a和b的和最接近整数m
💓 博客主页:倔强的石头的CSDN主页 📝Gitee主页:倔强的石头的gitee主页 ⏩ 文章专栏:C语言刷题系列 目录 一、问题描述 二、解题思路 解题思路: 解题步骤: 三、C语言代码实现及测试 一、问题描述 给定一…...
Python pdf2imges -- pdf文件转图片
pdf文件转图片,需要安装PyMuPDF包,具体PyMuPDF包介绍可以参考:Python 处理 PDF 的神器 -- PyMuPDF import fitz # pip install PyMuPDF# PDF转换为IMG统一管理 def pdf_to_images(pdf_path, img_path, filename):"""pdf_p…...
分布式版本控制工具 git
git 是什么 分布式版本控制工具。github 是代码托管平台。 git 有什么用 保存文件的所有修改记录。使用版本号(sha1 哈希值) 进行区分。随时可浏览历史版本记录。可还原到历史指定版本。对比不同版本的文件差异。 为什么要使用 git 多人协作开发一个大…...
Flutter 中的 ExpansionTile 小部件:全面指南
Flutter 中的 ExpansionTile 小部件:全面指南 在 Flutter 应用中,ExpansionTile 是一个常用的折叠列表项,它允许用户点击标题来展开或折叠更多的内容。这个组件在实现可折叠列表、FAQ 部分或显示详情信息时非常有用。本文将详细介绍 Expansi…...
二进制的协议的测试程序
一、引子 由于要调试二进制私有协议,不想用C重头到尾写,用C写工程量有点大,因此想找一个比较简单的工具,postman无法实现,外界的几乎找不到合适的工具,只能考虑手写一个。 前面写了一个python通过tcp协议发…...
【Axure高保真原型】引导弹窗
今天和大家中分享引导弹窗的原型模板,载入页面后,会显示引导弹窗,适用于引导用户使用页面,点击完成后,会显示下一个引导弹窗,直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...
【决胜公务员考试】求职OMG——见面课测验1
2025最新版!!!6.8截至答题,大家注意呀! 博主码字不易点个关注吧,祝期末顺利~~ 1.单选题(2分) 下列说法错误的是:( B ) A.选调生属于公务员系统 B.公务员属于事业编 C.选调生有基层锻炼的要求 D…...
三体问题详解
从物理学角度,三体问题之所以不稳定,是因为三个天体在万有引力作用下相互作用,形成一个非线性耦合系统。我们可以从牛顿经典力学出发,列出具体的运动方程,并说明为何这个系统本质上是混沌的,无法得到一般解…...
leetcodeSQL解题:3564. 季节性销售分析
leetcodeSQL解题:3564. 季节性销售分析 题目: 表:sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...
拉力测试cuda pytorch 把 4070显卡拉满
import torch import timedef stress_test_gpu(matrix_size16384, duration300):"""对GPU进行压力测试,通过持续的矩阵乘法来最大化GPU利用率参数:matrix_size: 矩阵维度大小,增大可提高计算复杂度duration: 测试持续时间(秒&…...
selenium学习实战【Python爬虫】
selenium学习实战【Python爬虫】 文章目录 selenium学习实战【Python爬虫】一、声明二、学习目标三、安装依赖3.1 安装selenium库3.2 安装浏览器驱动3.2.1 查看Edge版本3.2.2 驱动安装 四、代码讲解4.1 配置浏览器4.2 加载更多4.3 寻找内容4.4 完整代码 五、报告文件爬取5.1 提…...
docker 部署发现spring.profiles.active 问题
报错: org.springframework.boot.context.config.InvalidConfigDataPropertyException: Property spring.profiles.active imported from location class path resource [application-test.yml] is invalid in a profile specific resource [origin: class path re…...
Python基于历史模拟方法实现投资组合风险管理的VaR与ES模型项目实战
说明:这是一个机器学习实战项目(附带数据代码文档),如需数据代码文档可以直接到文章最后关注获取。 1.项目背景 在金融市场日益复杂和波动加剧的背景下,风险管理成为金融机构和个人投资者关注的核心议题之一。VaR&…...
使用Spring AI和MCP协议构建图片搜索服务
目录 使用Spring AI和MCP协议构建图片搜索服务 引言 技术栈概览 项目架构设计 架构图 服务端开发 1. 创建Spring Boot项目 2. 实现图片搜索工具 3. 配置传输模式 Stdio模式(本地调用) SSE模式(远程调用) 4. 注册工具提…...
Netty从入门到进阶(二)
二、Netty入门 1. 概述 1.1 Netty是什么 Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty是一个异步的、基于事件驱动的网络应用框架,用于…...
