共计 1284 个字符,预计需要花费 4 分钟才能阅读完成。
【导语】:一款可用于疾速移除背景图片的开源工具,装置配置后可在服务器、命令行中对图片进行批量操作。
简介
rembg 是应用 Python 实现的用于移除背景图片的工具,要求 Python 3.8 或更高版本,反对批量操作,应用形式比拟灵便,能够间接应用命令行、作为服务运行、在 docker 中应用,还能够作为库调用。
下载安装
我的项目的源码地址是:
https://github.com/danielgati…
要求 Python 3.8 或更高版本,应用以下命令进行装置:
pip install rembg
简略应用
1、在命令行中应用
在命令行中能够对服务端图片、本地图片以及整个文件夹图片进行操作,如下:
(1)对近程图片进行操作:
curl -s http://input.png | rembg > output.png
(2)对本地图片进行操作:
rembg -o path/to/output.png path/to/input.png
(3)对整个文件夹里的图片进行操作:
rembg -p path/to/inputs
2、作为服务应用
(1)启动服务
rembg-server
(2)如果图片能够间接链接拜访,则能够通过浏览器间接关上以下地址操作:
http://localhost:5000?url=http://image.png
也能够应用 HTML 表单通过上传文件的模式进行操作:
<form action="http://localhost:5000" method="post" enctype="multipart/form-data">
<input type="file" name="file"/>
<input type="submit" value="upload"/>
</form>
3、在 docker 中应用
在 docker 中应用也很不便,间接运行以下命令:
curl -s http://input.png | docker run -i -v ~/.u2net:/root/.u2net danielgatis/rembg:latest > output.png
4、作为库调用
间接在脚本里调用也很简便,先创立 app.py,内容如下:
import sys
from rembg.bg import remove
sys.stdout.buffer.write(remove(sys.stdin.buffer.read()))
再执行命令运行:
cat input.png | python app.py > out.png
我的项目样例应用成果:
高级应用
有些图片可能应用 alpha matting 模式(即应用 -a -ae 15 选项)解决成果会更加完满,命令如下:
curl -s http://input.png | rembg -a -ae 15 > output.png
成果比照图如下:
结语
remgb 简略介绍就到这里了,感兴趣的童鞋能够亲自下载安装体验一下,更具体介绍,请见我的项目主页。
开源前哨
日常分享热门、乏味和实用的开源我的项目。参加保护 10 万 + Star 的开源技术资源库,包含:Python、Java、C/C++、Go、JS、CSS、Node.js、PHP、.NET 等。