Rembg是一个删除图像背景的工具。就是这样。
如果这个项目对你有所帮助,请考虑捐款。
python: >3.7, <3.11
中央处理器支持:
pip install rembg
显卡支持:
pip install rembg[gpu]
从远程图像中删除背景
curl -s http://input.png | rembg i > output.png
从本地文件中删除背景
rembg i path/to/input.png path/to/output.png
从文件夹中的所有图像中删除背景
rembg p path/to/input path/to/output
启动服务器
rembg s
并转到:
http://localhost:5000/docs
带背景的图像:
https://upload.wikimedia.org/wikipedia/commons/thumb/9/9a/Gull_portrait_ca_usa.jpg/1280px-Gull_portrait_ca_usa.jpg
无背景图片:
http://localhost:5000/?url=https://upload.wikimedia.org/wikipedia/commons/thumb/9/9a/Gull_portrait_ca_usa.jpg/1280px-Gull_portrait_ca_usa.jpg
你也可以将文件作为表单数据(多部分/表单数据)发送:
<form
action="http://localhost:5000"
method="post"
enctype="multipart/form-data"
>
<input type="file" name="file" />
<input type="submit" value="upload" />
</form>
输入和输出为字节
from rembg import remove
input_path = 'input.png'
output_path = 'output.png'
with open(input_path, 'rb') as i:
with open(output_path, 'wb') as o:
input = i.read()
output = remove(input)
o.write(output)
输入和输出为 PIL 图像
from rembg import remove
from PIL import Image
input_path = 'input.png'
output_path = 'output.png'
input = Image.open(input_path)
output = remove(input)
output.save(output_path)
输入和输出为 numpy 数组
from rembg import remove
import cv2
input_path = 'input.png'
output_path = 'output.png'
input = cv2.imread(input_path)
output = remove(input)
cv2.imwrite(output_path, output)
试试这个:
docker run -p 5000:5000 danielgatis/rembg s
带背景的图像:
https://upload.wikimedia.org/wikipedia/commons/thumb/9/9a/Gull_portrait_ca_usa.jpg/1280px-Gull_portrait_ca_usa.jpg
无背景图片:
http://localhost:5000/?url=https://upload.wikimedia.org/wikipedia/commons/thumb/9/9a/Gull_portrait_ca_usa.jpg/1280px-Gull_portrait_ca_usa.jpg
所有模型都下载并保存在目录的用户主文件夹中。
.u2net
可用的型号有:
如果你需要更多微调模型,请尝试以下操作: https://github.com/danielgatis/rembg/issues/193#issuecomment-1055534289
有时可以通过打开 alpha 消光来获得更好的效果。例:
curl -s http://input.png | rembg i -a -ae 15 > output.png
源语言 | 无阿尔法消光 | 带阿尔法消光 (-a -ae 15) |
如果你需要帮助将其放在云上,请通过 danielgatis@gmail.com 与我联系。
喜欢我的一些作品吗?给我买杯咖啡(或者更可能是啤酒)
版权所有 (c) 2020 年至今 丹尼尔·加蒂斯
根据 MIT 许可证获得许可