一行Python代碼去除照片背景


使用Python去除照片背景,說到去除照片背景的方法,我首先想到的是第三方接口(如:百度AI),但本文重點在于免費使用,不花錢的那種

下面就開始介紹兩種免費去除照片背景的方法

第一種

第一種方法是:removebg(實際上還是第三方接口,不過removebg是免費的)

remove官方地址

https://www.remove.bg/


首先先注冊一個賬號,然后訪問下方鏈接獲取api_keys(代碼里面會用到)

https://www.remove.bg/api#remove-background


點擊Get API Key 即可獲取key值

獲取到key值后,咱們就開編寫python程序

# 導(dǎo)入庫
from removebg import RemoveBg
api_keys = "上面獲取到的key值"
rmbg = RemoveBg(api_key, "error.log")
#rmbg.remove_background_from_img_file("圖片路徑")
rmbg.remove_background_from_img_file("chen.jpg")

樣例效果

(圖片來源網(wǎng)絡(luò))

總結(jié)

優(yōu)點:不限于證件照,任何圖片都可以去除背景(包括全身照片以及多人合影照片等)

缺點:這個方法只能免費使用50次,超過50次就會提示報錯(如下所示)

第二種

第二種方法就是backgroundremover,其實就是一個Python庫

github地址

https://github.com/nadermx/backgroundremover


使用很簡單:就兩步(github介紹安裝中有一些沒必要安裝,可忽略)

第一步:安裝庫

pip install backgroundremover

第二步:執(zhí)行命令

# backgroundremover -i "帶背景照片" -o "去除背景照片"
backgroundremover -i "cg.jpg" -o "cg_outopt.jpg"

Python方式調(diào)用:

# 導(dǎo)入庫
import os
os.system('backgroundremover -i "cg.jpg" -o "cg_output.jpg"')

原理:實際上就是python通過os去執(zhí)行終端命令。

注意

在第二步時,初次使用需要下載模型(大概170m),下載地址是google,因此需要能夠訪問google,才能下載。

不過不用擔(dān)心,我已經(jīng)把模型下載好了

鏈接:https://pan.baidu.com/s/13a4Aqmpm9ds7bswP-MgZhg a7de

下載好的模型需要放到當(dāng)前系統(tǒng)用戶的目錄下:

## Window10:
C:\Users\用戶\.u2net\u2net.pth

## Mac:
/Users/lyc/.u2net/u2net.pth

## Linux:
/root/.u2net/u2net.pth

如果找不到這個位置的,直接搜索.u2net****文件夾位置,將模型放到.u2net文件夾也可以

樣例效果

(圖片來源網(wǎng)絡(luò))

同一張照片,使用這兩種不同的方法去除背景

效果差別不大(推薦第二種方法)

總結(jié)

優(yōu)點:不限次數(shù)使用,不僅可以對照片去除背景,還可以對視頻去除背景(github上有使用方法,感興趣的可以去看看)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容