首页 > 扩展AI
Inpaint Anything Inpaint Anything

Inpaint Anything

v1.0.0

类型:扩展AI更新时间:2025-06-04 11:56:12

简介 信息 热门 同类推荐

Inpaint Anything,Stable Diffusion插件,一键实现物体移除,内容填补,场景替换

放心AI网·扩展AI栏目来啦!小编带你挖掘那些小众但超好用的AI神器,错过就亏大啦~

InpaintAnything官网,StableDiffusion插件,一键实现物体移除,内容填补,场景替换

InpaintAnything简介

InpaintAnything是一个结合了SAMQ、图像修补模型(例如LaMa)和AIGC模型(例如StableDiffusion)等视觉基础模型的AI图像替换,修补系统。基于此系统,用户可以方便的使用IA进行图像替换,处理具有任意长宽比和2K高清分辨率的图像,且不受图像原始内容限制,并且使用方便。

InpaintAnything官网:https://github.com/Uminosachi/sd-webui-inpaint-anything

InpaintAnything核心思想InpaintAnything背后的核心思想是结合不同模型的优势,以建立一个功能强大且用户友好的图像修复Q系统。

一、InpaintAnything:一键实现物体移除、内容填补、场景替换

IMCL实验室基于Meta发布的图像分割基础模型SAM(SegmentAnythingModel),提出了修补一切模型(InpaintAnything,简称IA),

具有功能:

1.移除一切(RemoveAnything):点击一下想要移除的物体,IA将无痕地移除该物体;

2.填补一切(FillAnything):可以进一步通过文本提示告诉IA想要在物体内填充什么,IA随即通过驱动已嵌入的stablediffusion模型生成相应的内容填充物体,实现随心「内容创作」;

3替换一切(ReplaceAnything):可以通过点击选择需要保留的物体对象,并用文本提示告诉IA想要把物体的背景替换成什么,即可将物体背景替换为指定内容,实现生动「环境转换」。

整体框架:

InpaintAnything主要功能

InpaintAnything拥有三个主要功能1、移除一切(RemoveAnything):用户只需点击一下想要移除的物体,IA将无痕地移除该物体,实现高效「魔法消除」;2、填补一切(FillAnything):同时,用户还可以进一步通过文本提示(TextPrompt)告诉IA想要在物体内填充什么,IA随即通过驱动已嵌入的AIGC(Al-GeneratedContent)模型(如StableDiffusion)生成相应的内容填充物体,实现随心「内容创作」;3、替换一切(ReplaceAnything):用户也可以通过点击选择需要保留的物体对象,并用文本提示告诉IA想要把物体的背景替换成什么,即可将物体背景替换为指定内容,实现生动「环境转换」。4、移除3D材质物品(RemoveAnything3D)

修复任何内容以实现稳定的扩散WebUI

InpaintAnything扩展使用从SegmentAnything的输出中选择的任何蒙版在浏览器UI上执行稳定的扩散修复。

使用SegmentAnything,用户可以通过简单地指向所需区域来指定蒙版,而不是手动填充它们。这可以提高蒙版创建过程的效率和准确性,从而可能获得更高质量的修复结果,同时节省时间和精力。

InpaintAnything工作原理

InpaintAnything结合了SAM、图像修补模型(例如LaMa)和AIGC模型(例如StableDiffusion)等视觉基础模型。

SAM(SegmentAnythingModel)可以通过点或框等输入提示生成高质量的对象分割区域,实现指定目标的分割。更多相关的介绍可以参考一键分割图像。

图像修补模型LaMa,则能够在高分辨率图像的情况下,随意删除图像中的各种元素。模型的主要架构如下图所示。包含一个mask的黑白图,一张原始图像。将掩码图覆盖图像后输入Inpainting网络中,先是降采样到低分辨率,再经过几个快速傅里叶卷积FFC残差块,最后输出上采样,生成了一张高分辨的修复图像。

AIGC模型StableDiffusion,则只要简单的输入一段文本,StableDiffusion就可以迅速将其转换为图像。更多相关的介绍可以参考AI作画。

将三个模型结合到一起,我们可以做出很多的功能。本文就实现了在图片/视频中移除一切物体、在图片中填充一切物体和在图片中替换一切背景这三种功能,其具体实现步骤如下:

单机版

安装

要安装该软件,请按照下列步骤操作:

打开ExtensionsAUTOMATIC1111的稳定扩散WebUI上的选项卡。

选择该InstallfromURL选项。

https://github.com/Uminosachi/sd-webui-inpaint-anything.git在字段中输入URLforextension"sgitrepository。

单击按钮Install。

安装完成后,重新启动WebUI。

注意:此扩展支持AUTOMATIC1111的稳定扩散WebUIv1.3.0或更高版本。

运行应用程序

如果您打算使用内存高效的xformers,请将参数附加--xformers到您的启动命令中。例如,运行./webui.sh--xformers或webui.bat--xformers

注意:如果您在网络浏览器中启用了隐私保护扩展程序(例如DuckDuckGo),您可能无法从草图中检索蒙版。

注意:在Gradio版本3.23.0或更早版本中,分割图像在WebUI上可能会显得很小。

下载模型

导航到InpaintAnythingWebUI中的选项卡。

单击“SegmentAnythingModelID”Downloadmodel旁边的按钮。这包括SegmentAnythinginHighQualityModelID、FastSegmentAnything和FasterSegmentAnything(MobileSAM)。

请注意,SAM提供三种尺寸:基本型、大型型和巨型型。请记住,较大的尺寸会消耗更多的VRAM。

等待下载完成。

下载的模型文件将存储在models该应用程序存储库的目录中。

用法

将图像拖放到输入图像区域。

可以通过Paddingoptions配置比例和平衡,然后单击RunPadding按钮来实现绘制。

该AnimeStyle复选框增强了分割蒙版检测,特别是在动漫风格的图像中,但代价是蒙版质量略有下降。

单击按钮RunSegmentAnything。

使用草图来指出要修复的区域。您可以撤消和调整笔大小。

将鼠标悬停在SAM图像或遮罩图像上,然后按S全屏模式键或R重置缩放键。

单击按钮Createmask。蒙版将出现在选定的蒙版图像区域中。

面罩调整

Expandmaskregion按钮:使用此按钮可以稍微扩大遮罩的区域以获得更广泛的覆盖范围。

Trimmaskbysketch按钮:单击此按钮将从蒙版中排除草绘区域。

Addmaskbysketch按钮:单击此按钮会将草绘区域添加到蒙版中。

修复选项卡

输入所需的提示和否定提示,然后选择修复模型ID。

单击按钮RunInpainting(请注意,第一次下载模型可能需要一些时间)。

在“高级”选项中,您可以调整采样器、采样步骤、指导比例和种子。

如果启用该MaskareaOnly选项,修改将仅限于指定的遮罩区域。

调整迭代滑块以使用不同的种子多次执行修复。

修复过程由扩散器提供动力。

尖端

您可以直接将修复后的图像拖放到WebUI上的输入图像字段中。(适用于Chrome和Edge浏览器)

要加载保存在PNG文件中的提示,请按照下列步骤操作:

将图像拖放到WebUI上的“PNG信息”选项卡中,然后单击Sendtotxt2img(orimg2img)。

导航至“修复任何内容”选项卡中的“修复”部分,然后单击按钮Getpromptfrom:txt2img(orimg2img)。

模型缓存

修复模型保存在HuggingFace的缓存中,并inpaint在其repo_id中包含(不区分大小写),也将添加到修复模型ID下拉列表中。

如果您想使用特定模型,可以使用以下Python命令(对于Linux和MacOS为venv/bin/python)提前缓存它:

venvS

cripts

p

ython.exe

from

diffusers

import

StableDiffusionInpaintPipeline

pipe

=

StableDiffusionInpaintPipeline

.

from_pretrained

(

"Uminosachi/dreamshaper_5-inpainting"

)

exit

()

下载的扩散器模型通常存储在您的主目录中。/home/username/.cache/huggingface/hub对于Linux和MacOS用户,您可以在以下位置找到它;C:Usersusername.cachehuggingfacehub对于Windows用户,您可以在以下位置找到它。

清洁标签

选择清洁器型号ID。

单击按钮RunCleaner(请注意,第一次下载模型可能需要一些时间)。

使用LamaCleaner执行清洁过程。

修复webui选项卡

当您有修复模型时,可以访问此选项卡。

所需的模型应inpaint在其文件名中包含(不区分大小写),并且必须位于该stable-diffusion-webui/models目录中。

一旦模型被识别,就可以从修复模型ID下拉列表中进行选择。

当稳定扩散检查点(位于WebUI的左上角)与所选的修复模型ID匹配时,该过程可以快速执行,无需加载模型。

ControlNet修复选项卡

要执行修复,请使用位于WebUI左上角的稳定扩散检查点,并将其与ControlNet修复模型配对。

输入您想要的提示和否定提示。

单击RunControlNetInpaint按钮开始该过程。

在“高级”选项中,您可以调整采样器、采样步骤、指导比例、去噪强度和种子。

控制重量和控制模式可以在ControlNet选项中修改。

如果多ControlNet设置配置为2或更高,则可以使用仅参考控制。

如果目录中存在IP适配器型号extensions/sd-webui-controlnet/models,并且ControlNet版本已更新,则可以使用IP适配器。

确保安装支持inpaint_only预处理器和ControlNet修复模型的ControlNet扩展。

需要:目录中的sd-webui-controlnet扩展和ControlNet-v1-1修复模型extensions/sd-webui-controlnet/models。

仅掩模选项卡

能够仅保存蒙版而不进行任何其他处理,因此可以将img2img中的蒙版Inpaintupload与AUTOMATIC1111中已有的任何模型/扩展/工具一起使用。

Getmaskasalphaofimage按钮:将蒙版保存为RGBA图像,并将蒙版放入输入图像的Alpha通道中。

Getmask按钮:将蒙版保存为RGB图像。

按下按钮后,Getmask您可以使用Sendtoimg2imginpaint遮罩图像下方的按钮将输入图像和遮罩发送到img2img选项卡。

自动保存图像

修复后的图像将自动保存在outputs/inpaint-anything目录中与当前日期匹配的文件夹中。

outputs/img2img-images您可以通过WebUI选项卡InpaintAnything中的部分切换到目录。Settings

发展

借助

InpaintAnything库

,您可以使用其他扩展中的草图执行分割并创建蒙版。

执照

源代码根据Apache2.0许可证获得许可。

以上就是放心AI网扩展AI栏目的全部推荐!这些隐藏好货,小编下次继续帮你淘!

需要网络免费