大家好,我是每天分享AI应用的萤火君!
不知道大家是否还记得华为 Pura 70的「AI消除」事件,当时使用 华为Pura 70 系列手机的智能消除功能时,该功能可以被用来消除照片中女性胸口处的衣物,这一功能曾引发广泛的关注和伦理担忧,后来华为迅速修复了这一问题。
这篇文章就来介绍如何通过 ComfyUI 来实现类似的涂抹消除功能,当然我们也会避免出现之前的争议问题。在之前的文章中,我曾经介绍过普通的局部重绘方式(见:告别人山人海,AI绘画让你的照片更美!),但是经常出现画面融合不太好的问题,需要不断抽卡,本文使用的方法相较之前的普通处理方式会有很大的改善。
效果展示
话不多说,先看几张效果图。
第一张是原图,后边两张是涂抹掉胸口前小熊的图。
使用这个能力,我们还可以用来解决景点拍照时人多过于拥挤的问题,把多余的人P掉就行了。
运行环境
很多同学本地都没有高性能的Nvidia显卡,安装模型插件也经常遇到问题,为了方便大家测试,我在云平台上创建了一个ComfyUI的镜像,已经内置好了常用的插件和模型,可以直接运行本文介绍的工作流,欢迎大家使用:
https://www.haoee.com/applicationMarket/applicationDetails?appId=27&IC=XLZLpI7Q
新用户会赠送一定的额度,可免费使用若干小时,如没有收到,请留言或私信给我。
使用方法
先来整体的看看这个工作流,有个基本的认识。
从左到右,依次介绍下:
重绘区域加遮罩:首先上传一张要重绘的图片,然后在图片上右键,选择“在遮罩编辑器中打开”,用鼠标涂抹需要重绘的区域即可。
加载模型:根据图片风格选择合适的SD基础模型,也可以搭配LoRA。比如照片就选择真实风格的模型,动漫就选择动漫风格的模型。
遮罩预处理:这里最主要的是提取遮罩和Lama内补。提取遮罩是用来告诉模型需要重绘哪些部分;Lama内补是用来对遮罩部分先进行一个简单的抹除重绘,让遮罩部分和周围的图片区域融合的更自然一些,然后我们再把Lama处理后的图片送入下一步SD重绘,得到更好的重绘效果。
Fooocus Inpaint:这块是增强模型的局部重绘能力,有了它,就不需要专门的Inpainting模型了。
遮罩Latent:使用局部重绘时,我们需要把原图和遮罩一起送入潜空间Latent,注意为了更好的涂抹消除,这里的原图是Lama处理之后的图片。
线稿ControlNet:这里使用ControlNet是为了让新生成的部分更好的约束在原有图片的构图中,起到增强控制的效果。
采样和VAE解码:这就是基本的通用操作了。
资源下载
发消息“工作流”到G众\号“萤火遛AI”即可领取这个涂抹消除工作流,另外还包括其它几十个免费的ComfyUI 工作流。
本文用到的模型及存放位置包括:
models/checkpoints/Juggernaut-XL_v9_RunDiffusionPhoto_v2.safetensors
models/inpaint/inpaint_v26.fooocus.patch
models/inpaint/fooocus_inpaint_head.pth
models/lama/big-lama.pt
这些模型都可以通过 Github 和 Huggingface 下载到,如果你下载不方便也可以通过我整理的网盘资源获取,另外还包括 Stable Diffusion WebUI 和 ComfyUI 的全面实战教程,还有更多的高级工作流可以下载,有兴趣的可以点击链接看看:
https://xiaobot.net/post/03340243-9df6-4ea0-bad6-9911a5034bd6
后记
用好 ComfyUI:
- 首先需要对 Stable Diffusion 的基本概念有清晰的理解,熟悉 ComfyUI 的各种基础操作;
- 然后需要在实践过程中不断尝试、不断加深理解,提升综合运用各类节点进行创作的能力。
我将在后续文章中持续输出 ComfyUI 的相关知识和热门作品的工作流,帮助大家更快的掌握 ComfyUI,创作出满足自己需求的高质量作品。
以上就是本文的主要内容,如有问题,欢迎留言交流。