翻看家里的老照片,发现一只小 dog,很趣致吧,这眼神汪汪地~ (背景是在厨房)。
有时候就想把某些照片里的人物或者主角抠出来,然后贴到喜欢的背景图里,比如你想自己制作一个 DIY 的头像。
虽然有很多 APP 或者小程序可以提供这类的功能,付费购买服务固然没问题,但是免费的服务都是带有瑕疵的,比如输出的最终图片带有广告水印,或者像素过低导致图片略显模糊等等。
你想要免费的早午晚三餐,我都懂。求人不如求己,发挥极客精神,让我们自己动手吧。接下来就介绍一个非常好用的 python 工具包 Rembg,其中也应用了大模型之类的 AI 来辅助提取人像或者主角,详情往下看。
环境准备–linux
Rembg 是用 python 开发的,依赖于 python3 的执行环境,而且要求版本在 python 3.7 ~ 3.11 之间。
我比较常使用的平台是 linux,现在大部分的 linux 发行版都是默认安装了 python3,开始之前还是确认一下 python 的版本
$ cat /etc/issue
Ubuntu 20.04.4 LTS
$ python -V
Python 3.8.10
如果你最先安装的是 python 2,然后又安装了 python 3,那么可以
$ python3 -V
环境
在安装工具包之前,有必要提醒一下,每个工具都有其依赖的特定环境,那么环境的相互隔离就显得很有必要了,在 python 生态中,我们可以运用好虚拟环境的特性做到这点。
创建一个工程目录 rembg,并在里边新建虚拟环境,存放环境的目录名这里定为 .venv,然后切换 python 环境到虚拟环境下
$ python -m venv .venv
$ source .venv/bin/activate
(.venv) $
进入虚拟环境后,命令行的最前面会自动加上虚拟环境的目录,表示已经