溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何使用python對(duì)證件照進(jìn)行背景換色

發(fā)布時(shí)間:2021-08-20 09:31:56 來源:億速云 閱讀:202 作者:小新 欄目:開發(fā)技術(shù)

小編給大家分享一下如何使用python對(duì)證件照進(jìn)行背景換色,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

先上效果

1、尺寸長(zhǎng)寬調(diào)整為:295x413

2、背景色調(diào)為藍(lán)底 和 紅底各一張

3、還要一張透明背景的證件照。

原圖↓↓↓

如何使用python對(duì)證件照進(jìn)行背景換色

一頓操作,效果如下↓↓↓

如何使用python對(duì)證件照進(jìn)行背景換色

環(huán)境準(zhǔn)備

此處,我們需要用到兩個(gè)python模塊:pillow和removebg

pillow模塊:用于調(diào)整照片的像素大小。

removebg模塊:用于摳圖,調(diào)整背景。

#安裝python模塊
pip install pillow
pip install removebg

如何使用python對(duì)證件照進(jìn)行背景換色

證件照尺寸調(diào)整

先來調(diào)整尺寸吧,調(diào)好了,再來調(diào)整背景顏色。

詩詩小姐姐說,她考試要求的照片尺寸:295x413

from PIL import Image
 
old_img = 'C:/Users/lex/desktop/img/詩詩.png'
new_img = 'C:/Users/lex/desktop/img/詩詩-new.png'
img = Image.open(old_img)
#讀取照片尺寸
(x,y) = img.size
#重新設(shè)置照片尺寸
x_s = 295 #寬
y_s = 413 #高
out = img.resize((x_s,y_s),Image.ANTIALIAS) #resize image with high-quality
out.save(new_img)
 
print ('原始照片尺寸(寬x高): ',x,"x",y)
print ('調(diào)整后照片尺寸:(寬x高) ',x_s,"x",y_s)

照片尺寸調(diào)好了

如下圖 ↓↓↓

 如何使用python對(duì)證件照進(jìn)行背景換色

證件照背景調(diào)整

1、通過removebg模塊的方法,我們可以把人像摳圖出來。

2、我們通過顏色背景來定義三個(gè)背景顏色

BACKGROUND_COLOR = {
    'RED': (255, 0, 0, 255),
    'BLUE': (67, 142, 219, 255),
    'WHITE': (255, 255, 255, 255)
}

3、將摳出來的無背景的圖片 粘貼到我們自己畫的背景板上

#老照片路徑、新照片路徑、無背景照片路徑、顏色
def get_img_bg(old_img_path,new_img_path,no_bg_img_path,color):
    #去掉背景圖,提取照片
    rmbg.remove_background_from_img_file(old_img_path)
    foreground = Image.open(no_bg_img_path)
    background = Image.new('RGBA', foreground.size, BACKGROUND_COLOR[color])  # 背景圖,大小同前景圖
    background.paste(foreground, mask=foreground)
    background.save(new_img_path)
 
if __name__ == '__main__':
    get_img_bg('C:/Users/pacer/Desktop/img/詩詩.png','C:/Users/pacer/desktop/img/詩詩_red.png','C:/Users/pacer/desktop/img/詩詩.png_no_bg.png','RED')
    get_img_bg('C:/Users/pacer/Desktop/img/詩詩.png','C:/Users/pacer/desktop/img/詩詩_blue.png','C:/Users/pacer/desktop/img/詩詩.png_no_bg.png','BLUE')

代碼一頓執(zhí)行,所有照片都拿到了

各種背景顏色圖片

原圖、透明背景、藍(lán)色背景、紅色背景圖片全部生成。

如何使用python對(duì)證件照進(jìn)行背景換色

以上是“如何使用python對(duì)證件照進(jìn)行背景換色”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI