IOPaint
一个免费开源的修复与扩展图像工具,基于最先进的AI模型。
擦除(LaMa) | 替换物体(PowerPaint) |
---|---|
绘制文字(AnyText) | 扩展画面(PowerPaint) |
---|---|
功能
-
完全免费开源,支持自托管,兼容CPU、GPU和Apple Silicon
-
支持多种AI模型,用于执行擦除、修复或扩展任务。
-
插件:
- Segment Anything: 精确快速的交互式对象分割
- RemoveBG: 移除图像背景或生成前景对象的遮罩
- Anime Segmentation: 类似RemoveBG,专为动漫图像训练的模型
- RealESRGAN: 超分辨率
- GFPGAN: 面部修复
- RestoreFormer: 面部修复
-
文件管理器: 方便浏览你的图片,并将其直接保存到输出目录。
快速开始
启动Web界面
IOPaint提供了一个方便的Web界面,使用最新的AI模型来编辑你的图像。你可以通过运行以下命令轻松安装并启动IOPaint:
# 为了使用GPU,请首先安装CUDA版本的PyTorch。
# pip3 install torch==2.1.2 torchvision==0.16.2 --index-url https://download.pytorch.org/whl/cu118
# AMD GPU用户请使用以下命令,该命令仅在Linux上有效,因为PyTorch尚不支持Windows上的ROCm。
# pip3 install torch==2.1.2 torchvision==0.16.2 --index-url https://download.pytorch.org/whl/rocm5.6
pip3 install iopaint
iopaint start --model=lama --device=cpu --port=8080
就是这样,你可以通过在浏览器中访问http://localhost:8080开始使用IOPaint。
所有模型将在启动时自动下载。如果你想更改下载目录,可以添加--model-dir
。更多文档可以在这里找到。
你可以在这里查看其他支持的模型,并了解如何使用本地的sd ckpt/safetensors文件,请访问这里。
插件
你可以在启动服务时指定要使用的插件,并可以通过使用iopaint start --help
查看启用插件的命令。
更多关于插件的演示可以在这里看到。
iopaint start --enable-interactive-seg --interactive-seg-device=cuda
批处理
你也可以在命令行中使用IOPaint对图像进行批处理:
iopaint run --model=lama --device=cpu \
--image=/path/to/image_folder \
--mask=/path/to/mask_folder \
--output=output_dir
--image
是包含输入图像的文件夹,--mask
是包含相应遮罩图像的文件夹。当--mask
是一个遮罩文件的路径时,所有图像都将使用此遮罩进行处理。
你可以在下方看到有关IOPaint支持的可用模型和插件的更多信息。
开发
安装nodejs,然后安装前端依赖项。
git clone https://github.com/Sanster/IOPaint.git
cd IOPaint/web_app
npm install
npm run build
cp -r dist/ ../iopaint/web_app
在web_app
中创建.env.local
文件,并填写后端的IP和端口。
VITE_BACKEND=http://127.0.0.1:8080
启动前端开发环境
npm run dev
安装后端依