修复任何内容(使用分段修复修复任何内容)

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

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

AUTOMATIC1111 Web UI 的扩展版本

说明图

安装

请按照以下步骤安装软件:

  • 创建新的conda环境:
conda create -n inpaint python=3.10
conda activate inpaint
  • 克隆软件存储库:
git clone https://github.com/Uminosachi/inpaint-anything.git
cd inpaint-anything
  • 对于CUDA环境,安装以下软件包:
pip install -r requirements.txt
  • 如果您使用的是 macOS,请改为从以下文件安装软件包:
pip install -r requirements_mac.txt

运行应用程序

python iasam_app.py
  • 在浏览器中打开http://127.0.0.1:7860/ 。
  • 注意:如果您在网络浏览器中启用了隐私保护扩展程序(例如 DuckDuckGo),您可能无法从草图中检索蒙版。

选项

  • --save-seg:保存SAM生成的分割图像。
  • --offline:使用离线网络执行修复。
  • --sam-cpu:对CPU执行Segment Anything操作。

下载模型

  • 启动此应用程序。
  • 单击“Segment Anything Model ID”Download model旁边的按钮。这包括Segment Anything in High Quality Model ID、Fast Segment Anything和Faster Segment Anything (MobileSAM)。
    • 请注意,SAM 提供三种尺寸:基本型、大型型和巨型型。请记住,较大的尺寸会消耗更多的 VRAM。
  • 等待下载完成。
  • 下载的模型文件将存储在models该应用程序存储库的目录中。

用法

  • 将图像拖放到输入图像区域。
    • 可以通过Padding options配置比例和平衡,然后单击Run Padding按钮来实现绘制。
    • Anime Style复选框增强了分割蒙版检测,特别是在动漫风格的图像中,但代价是蒙版质量略有下降。
  • 单击按钮Run Segment Anything
  • 使用草图来指出要修复的区域。您可以撤消和调整笔大小。
    • 将鼠标悬停在 SAM 图像或遮罩图像上,然后按S全屏模式键或R重置缩放键。
  • 单击按钮Create mask。蒙版将出现在选定的蒙版图像区域中。

面罩调整

  • Expand mask region按钮:使用此按钮可以稍微扩大遮罩的区域以获得更广泛的覆盖范围。
  • Trim mask by sketch按钮:单击此按钮将从蒙版中排除草绘区域。
  • Add mask by sketch按钮:单击此按钮会将草绘区域添加到蒙版中。

修复选项卡

  • 输入所需的提示和否定提示,然后选择修复模型 ID。
  • 单击按钮Run Inpainting请注意,第一次下载模型可能需要一些时间)。
    • 在“高级”选项中,您可以调整采样器、采样步骤、指导比例和种子。
    • 如果启用该Mask area Only选项,修改将仅限于指定的遮罩区域。
  • 调整迭代滑块以使用不同的种子多次执行修复。
  • 修复过程由扩散器提供动力。

尖端

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

模型缓存

  • 修复模型保存在 HuggingFace 的缓存中,并inpaint在其 repo_id 中包含(不区分大小写),也将添加到修复模型 ID 下拉列表中。
    • 如果您想使用特定模型,可以使用以下 Python 命令提前缓存它:
python
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。
  • 单击按钮Run Cleaner请注意,第一次下载模型可能需要一些时间)。
  • 使用Lama Cleaner执行清洁过程。

仅掩模选项卡

  • 能够仅保存蒙版而不进行任何其他处理,因此可以在其他图形应用程序中使用该蒙版。
  • Get mask as alpha of image按钮:将蒙版保存为 RGBA 图像,并将蒙版放入输入图像的 Alpha 通道中。
  • Get mask按钮:将蒙版保存为 RGB 图像。

用户界面图像

自动保存图像

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

发展

借助Inpaint Anything 库,您可以使用其他应用程序的草图执行分割并创建蒙版。

执照

源代码根据Apache 2.0 许可证获得许可。