Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【玩转 GPU】Stable-Diffusion Inpaint小知识:Masked content的作用

【玩转 GPU】Stable-Diffusion Inpaint小知识:Masked content的作用

原创
作者头像
buzzfrog
修改于 2023-06-09 08:01:26
修改于 2023-06-09 08:01:26
5.7K3
举报
文章被收录于专栏:云上修行云上修行

大家在使用stable diffusion webui,通过img2img做Inpaint局部绘制,包括Inpaint、Inpaint sketch、Inpaint upload,会听到很多与蒙版mask相关专业术语。我将会写一系列文档来说明白各个专业术语对应参数的作用。

测试环境为:

  • 腾讯云CVM: GPU推理型GI3X | GI3X.8XLARGE64 | 32核 64GB 配置 1 颗 NVIDIA T4
  • 操作系统: CentOS 8 64位
  • stable-diffusion-webui
  • python: 3.10.6
  • torch: 1.13.1+cu117
  • xformers: N/A
  • gradio: 3.23.0
  • commit: 22bcc7be
  • checkpoint: 6ce0161689

Inpaint局部绘制

在stable-diffusion-webui中,"Inpaint" 功能可以通过黑色的画笔,确定需要重绘的区域,然后通过sd重绘该区域的内容。

Inpaint
Inpaint

"Inpaint Sketch" 功能可以通过彩色的画笔,确定需要重绘的区域,并且像Sketch功能一样设置重绘的颜色。

Inpaint Sketch
Inpaint Sketch

"Inpaint Upload" 功能可以通过上传一张蒙版图,帮助用户修复或编辑的【蒙版图白色区域】(当Mask mode值为Inpaint not masked时,则为蒙版图黑色区域)图像,并进行后续的操作和处理。

Inpaint Upload
Inpaint Upload

额外说明一下,在稳定扩散图像处理中,"Inpaint" 是一种技术,用于修复图像中的缺陷或缺失部分。它可以通过对图像周围的像素进行插值或外推来填补缺失的区域,从而使图像看起来更完整。

Mask蒙版

在图像处理中,"Mask"(蒙版,或翻译为掩模,这里统一使用蒙版)是一种用于指定图像区域的二进制图像。掩模图像中的像素值通常为 0 或 1,其中 0 表示不包含在指定区域内的像素,1 表示包含在指定区域内的像素。在二进制图像中,通常约定 0 表示黑色,1 表示白色。在这种约定下,黑色通常表示需要排除或去除的区域,白色则表示需要保留或处理的区域。这个原始概念在“Inpaint Upload”上,就需要理解为蒙版图白色区域是需要重绘的(而非保留不变的)区域。

蒙版相关参数

Mask blur:蒙版羽化,在 0-64 之间调节,就是将我们涂抹(或正常白色蒙版)区域,从边缘向中间透明过渡。数值较小的时候,边缘越锐利,所以一个合适的值会让图片看起来更真实,数值一般默认4即可,对于更换背景图这样的场景,一般建议设置为0

Mask transparency(缺省仅在Inpaint sketch栏目中才有):蒙版透明度,一般默认为0,即不透明,因为透明度越高,AI发挥的空间越小,基本上当透明度大于60,预处理就会失去作用

Mask mode:模版模式,包括 inpaint masked绘制蒙版内容、inpaint not masked绘制非蒙版内容,选择第一个就是只在蒙版区域重绘,另一种则相反(可以理解为将蒙版图中的0与1,黑与白互换),默认值是inpaint masked绘制蒙版内容

Masked content:蒙版内容,包括 fill 填充、original 原图、latent noise 潜在噪声、latent nothing 无潜在空间。

Inpaint area:重绘区域,包括 whole picture全图、only masked仅蒙版。全图重绘是指在原图大小的基础下绘制蒙版区域,优点就是内容与原图融合的更好,缺点是不够细节;而蒙版重绘是指处理的时候将蒙版区域进行放大到原图的尺寸,画完之后再缩小放到原图的相应的位置,优点就是细节更好,缺点也是细节太多,与原图融合的不够好

Only masked padding, pixels:当选择Only masked 仅重绘蒙版区域 模式时,我们可以通过此参数来调整放大区域的边界来控制重绘的精度。边界越大,运行Only masked模式时放大的倍数就越小,但是周围能参考的区域也就越多,这样绘制出来的效果相对更加平滑,不容易出现瑕疵。反之,如果边界越小,放大的倍数就越大,这样就能够更加精细地绘制出图像的细节,但也可能会出现与原始图像中其他物体关系错乱的情况,例如人物的衣着不连续或阴影明暗错位。因此,在选择放大倍数时,需要根据具体情况进行权衡和取舍,以得到最佳的绘制效果。

Masked content

Masked content有四种选项:

  • fill 填充
  • original 原图
  • latent noise 潜在噪声
  • latent nothing 无潜在空间

这是一种预处理的步骤,其中fill 填充是指使用蒙版边缘图像的颜色填充,不过颜色已经被高度模糊;original 原图则是同原图一样不改变任何细节;而latent noise 潜在噪声则是使用噪点进行填充;而latent nothing 无潜在空间就是噪点值为0的状态

本文在Inpaint upload下,结合实战案例来看一下Masked content的各个值的效果。

参数截图如下:

这里需要说明一下,Steps代表采样迭代步骤,采样迭代步骤越多,就越接近目标要求,或者采样迭代步骤过大变得过拟合;Denoising(Denoising strength)本质代表去除噪声的强度,这个参数决定了我们重绘幅度,也就是说参数越高,幅度越大,图片生成差距越大。经测试参数超过0.75基本上和原图没啥关系了。

fill 填充

fill 填充是指使用蒙版边缘图像的颜色填充,不过颜色已经被高度模糊

fill 填充
fill 填充

左上角Steps=1,Denoising=0.0,基本代表初始化的原始图。右上角Steps=20,Denoising=0.0,代表在fill 填充模式下,直观展示使用蒙版边缘图像的颜色填充的图。右下角几张图代表是相对最符合prompts提示词的生成图。

original 原图

original 原图则是同原图一样不改变任何细节

original 原图
original 原图

左上角Steps=1,Denoising=0.0,基本代表初始化的原始图。右上角Steps=20,Denoising=0.0,代表在original 原图模式下,直观展示使用原图改变任何细节的图。右下角几张图代表是相对最符合prompts提示词的生成图。

latent noise 潜在噪声

latent noise 潜在噪声则是使用噪点进行填充

latent noise 潜在噪声
latent noise 潜在噪声

左上角Steps=1,Denoising=0.0,基本代表初始化的原始图。右上角Steps=20,Denoising=0.0,代表在latent noise 潜在噪声模式下,直观展示使用噪点进行填充的图。右下角几张图代表是相对最符合prompts提示词的生成图。

latent nothing 无潜在空间

latent nothing 无潜在空间就是噪点值为0的状态

latent nothing 无潜在空间
latent nothing 无潜在空间

左上角Steps=1,Denoising=0.0,基本代表初始化的原始图。右上角Steps=20,Denoising=0.0,代表在latent nothing 无潜在空间模式下,直观展示使用噪点值为0的状态图。右下角几张图代表是相对最符合prompts提示词的生成图。

总结

为什么以上四种模式左上角的图不一样,这是因为已经跑了一个Step,且seeds设置为-1,每次生成时的seeds都不一样的缘故。

我用一致的seeds再重新跑了四张,初始化的原始图就明显比较一致了,见下图。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
3 条评论
热度
最新
https://ivonblog.com/posts/stable-diffusion-webui-manuals/zh-cn/features/inpaint-outpaint/
https://ivonblog.com/posts/stable-diffusion-webui-manuals/zh-cn/features/inpaint-outpaint/
回复回复点赞举报
Stable Diffusion|解开Clip Skip值的秘密 https://zhuanlan.zhihu.com/p/630875053
Stable Diffusion|解开Clip Skip值的秘密 https://zhuanlan.zhihu.com/p/630875053
回复回复点赞举报
最新!Stable Diffusion Controlnet Tile 模型详解 https://baijiahao.baidu.com/s?id=1764736327465499679
最新!Stable Diffusion Controlnet Tile 模型详解 https://baijiahao.baidu.com/s?id=1764736327465499679
回复回复点赞举报
推荐阅读
编辑精选文章
换一批
【玩转 GPU】Stable-Diffusion Inpaint小知识:Mask blur的作用 二
大家在使用stable diffusion webui,通过img2img做Inpaint局部绘制,包括Inpaint、Inpaint sketch、Inpaint upload,会听到很多与蒙版mask相关专业术语。我将会写一系列文档来说明白各个专业术语对应参数的作用。
buzzfrog
2023/06/09
2.8K2
【玩转 GPU】Stable-Diffusion Inpaint小知识:Mask blur的作用 二
最新版本 Stable Diffusion 开源 AI 绘画工具之图生图进阶篇
🎈 图生图基本参数图生图功能主要包括六大类:图生图 / img2img、涂鸦绘制 / sketch、局部绘制 / inpaint、局部绘制之涂鸦蒙版 / inpaint sketch、局部绘制之上传蒙版 / inpaint upload、批量处理 / batch而图生图的基本参数包括但不限于以下几种:Resize mode: 缩放模式,包括 拉伸/Just resize、裁剪/crop and resize、填充/resize and fill、仅调整大小(潜空间放大/just resize (latent
江户川码农
2023/04/12
4.2K3
最新版本 Stable Diffusion 开源 AI 绘画工具之图生图进阶篇
『SD』局部重绘
SD 的局部重绘是图生图里很常用的功能。它能够局部修改图片或者删除图片里多余的功能。比如你想给自己的照片换个衣服(额,你懂的),比如你想把照片里的路人P走。这个功能可以送走一批初级美工。
德育处主任
2024/05/25
5330
『SD』局部重绘
【玩转 GPU】Stable-Diffusion Inpaint小知识:Mask blur的作用
大家在使用stable diffusion webui,通过img2img做Inpaint局部绘制,包括Inpaint、Inpaint sketch、Inpaint upload,会听到很多与蒙版mask相关专业术语。我将会写一系列文档来说明白各个专业术语对应参数的作用。
buzzfrog
2023/06/09
3.8K1
【玩转 GPU】Stable-Diffusion Inpaint小知识:Mask blur的作用
【重绘一切】stable diffusion webui之Inpaint Anything
最近几个月以来,Meta发布了一款名为SAM(Segment Anything Model)的图像分割基础模型,其强大的能力和简便的操作方式引起了广泛关注。SAM模型通过简单的点击选择物体,即可实时准确地将其分割出来,其在GitHub上的受欢迎程度也可见一斑,截至4月15日,其仓库的Star数已高达26k。
buzzfrog
2023/09/11
9.5K1
【重绘一切】stable diffusion webui之Inpaint Anything
AI绘画专栏stablediffusion 之Inpaint Anything 模特换装 手把手教你电商应用实战 (49)
SD目前最大的问题还是显存占用问题,特别是个别视频插件,包括最近出的Stability videoAI,更是将显存占到了极致,再加上4090的禁售,这对硬件玩家很不友好,那么可以考虑将你的AI绘画应用部署到腾讯云,结合GPU服务器达到线上使用的效果,使用COS对象存储你的图片
疯狂的KK
2023/11/29
3.8K0
AI绘画专栏stablediffusion 之Inpaint Anything 模特换装 手把手教你电商应用实战 (49)
在stable diffussion中完美修复AI图片
修复小缺陷的不可或缺的方法是图像修复(inpainting)。在这篇文章中,我将通过一些基本示例来介绍如何使用图像修复来修复缺陷。
程序那些事
2024/09/09
2041
在stable diffussion中完美修复AI图片
AI绘画第七课:局部重绘的应用
第七课:局部重绘的应用 *喜欢的话可以一键三连 笔记下载看这篇专栏cv25267334 🚩00:01前言
yuanshuai
2023/11/17
1.7K0
AI绘画第七课:局部重绘的应用
03:一文搞懂stable diffusion扩散去噪原理,玩转AI绘画
本来想单独写Noise predictor这个U-Net模型的,奈何实力尚浅,觉得还是结合stable diffusion中的diffusion(扩散)的概念一起写,才能更好地理解Noise predictor。
叫我阿柒啊
2024/04/17
1.8K1
03:一文搞懂stable diffusion扩散去噪原理,玩转AI绘画
Stable Diffusion WebUI详细使用指南
Stable Diffusion WebUI(AUTOMATIC1111,简称A1111)是一个为高级用户设计的图形用户界面(GUI),它提供了丰富的功能和灵活性,以满足复杂和高级的图像生成需求。由于其强大的功能和社区的活跃参与,A1111成为了Stable Diffusion模型事实上的标准GUI,并且是新功能和实验性工具的首选发布平台。
程序那些事
2024/05/29
3.5K0
Stable Diffusion WebUI详细使用指南
Stable Diffusion WebUI详细使用指南
这个就不多讲了,大家登上github,拷贝下来直接启动就行了。但是确保你有大于8G的显存,否则在使用中会非常慢,并且可能会出现某些功能无法使用的问题。
程序那些事
2024/06/04
6550
Stable Diffusion WebUI详细使用指南
AI绘画专栏之statble diffusion SDXL 1.0 Inpainting anything VS segment-anything 使用教程
Inpaint Anything扩展使用从Segment Anything的输出中选择的任何蒙版在浏览器UI上执行稳定的扩散修复。
疯狂的KK
2023/11/15
1.8K0
AI绘画专栏之statble diffusion SDXL 1.0 Inpainting anything VS segment-anything 使用教程
使用HuggingFace实现 DiffEdit论文的掩码引导语义图像编辑
本文中,我们将实现Meta AI和Sorbonne Universite的研究人员最近发表的一篇名为DIFFEDIT的论文。对于那些熟悉稳定扩散过程或者想了解DiffEdit是如何工作的人来说,这篇文章将对你有所帮助。
deephub
2023/01/18
1.2K0
Stable Diffusion 的一些基础知识
Stable Diffusion 作为一种先进的深度学习模型,在人工智能领域尤其是图像生成方面具有重要意义。 这个章节是学习使用AI绘图绕不过的,无论使用哪种工具,都需要对其原理有个基础的的了解。
keyle
2024/11/06
1700
Stable Diffusion 的一些基础知识
AI绘画专栏之 SDXL controlnet API教程(36)
https://huggingface.co/lllyasviel/ControlNet-v1-1/tree/main
疯狂的KK
2023/11/17
1.3K0
AI绘画专栏之 SDXL controlnet  API教程(36)
神奇!AI扩图&改图还能这么玩?
最近,靠着出其不意的扩图效果,“AI扩图”功能凭借搞笑的补全结果频频出圈,火爆全网。网友们踊跃尝试,180度的大反转也让网友们直呼离谱,话题热度高居不。
CV君
2024/03/26
4450
神奇!AI扩图&改图还能这么玩?
Stable Diffusion的入门介绍和使用教程
Stable Diffusion是一个文本到图像的潜在扩散模型,由CompVis、Stability AI和LAION的研究人员和工程师创建。它使用来自LAION-5B数据库子集的512x512图像进行训练。使用这个模型,可以生成包括人脸在内的任何图像,因为有开源的预训练模型,所以我们也可以在自己的机器上运行它,如下图所示。
deephub
2023/01/18
7.1K0
AI绘画专栏之 SDXL 插件之segment-anything(40)
GroundingDINO 软件包、GroundingDINO 型号和 ControlNet 注释器型号将在您首次使用时自动安装
疯狂的KK
2023/11/20
2.3K0
AI绘画专栏之 SDXL 插件之segment-anything(40)
原来Stable Diffusion是这样工作的
stable diffusion是一种潜在扩散模型,可以从文本生成人工智能图像。为什么叫做潜在扩散模型呢?这是因为与在高维图像空间中操作不同,它首先将图像压缩到潜在空间中,然后再进行操作。
程序那些事
2024/06/06
2770
原来Stable Diffusion是这样工作的
PS上的开源Stable Diffusion插件来了:一键AI脑补,即装即用
机器之心报道 编辑:蛋酱、泽南 网友:「它能颠覆整个行业。」 Stable Diffusion 是今年 AI 领域内大火的新技术,得益于 Stability AI 的开源精神,它催生了众多 AI 绘画的应用。相比传统的绘画方法,根据文本生成图像的方法操作简单,画图速度也快,每次生成都会呈现不一样的效果。 随着技术的发展,消费级 GPU 也已能在数十秒内生成图片,人们开始考虑将 AI 绘图能力用于生产力。鉴于 Stable Diffusion 早已开源,开发者将其用来创建做图工具也是情理之中。 比如此前的 A
机器之心
2023/03/29
3.5K0
PS上的开源Stable Diffusion插件来了:一键AI脑补,即装即用
推荐阅读
相关推荐
【玩转 GPU】Stable-Diffusion Inpaint小知识:Mask blur的作用 二
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档