欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用python半分鐘輕松完成證件照換底色

 更新時間:2021年09月01日 14:16:22   作者:顧木子吖  
是不是很多小伙伴兒都不清楚公司是需要藍底還是紅底的證件照,今天小編直接帶大家做一款Python換底色的一款小程序,不管什么底色兒,放馬過來

導(dǎo)語

小伙伴們都知道,剛?cè)肼毜臅r候都是要求新人入職帶著自己的證件照的,這應(yīng)該是幾寸的來著,小編入職這么久都忘記了!?。?/p>

昨天下班之后跟之前的老朋友聚餐,其實一個兄弟的跟我說:“老表,你現(xiàn)在是編程的,又沒得辦法幫我一個忙?” 我這一聽:“什么事兒?你說”

“我老婆前幾天剛?cè)肼毿鹿?,但是入職之后才曉得照片是需要藍底兒的,主要是那個照證件照的離家太遠了,索性問下你有啥辦法沒?“

那當(dāng)然,為了節(jié)省他們的時間,這小忙我義不容辭,也就幾分鐘的事兒。?

正文

環(huán)境安裝部分(1):

Python3.6;

numpy函數(shù)庫;

opencv庫。

pip install numpy

pip install opencv-python

證件照的讀取與縮放比列(2):

# step1:
讀取照片img = cv2.imread(file)
# step2:
縮放圖片()img = cv2.resize(img, None, fx=1.5, fy=1.5)rows, cols, channels = img.shape

三色圖片有RGB三個顏色通道,無法進行腐蝕和膨脹的操作。

這個就需要我們將彩色圖片轉(zhuǎn)換為hsv灰度圖像后,再完成腐蝕和膨脹的操作(3):

# 展示圖片
cv2.imshow("original...", img)# step2.1 
圖片轉(zhuǎn)換為灰度圖并顯示hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)

將圖片進行二值化處理(4):

紅底變藍底,將在兩個閾值內(nèi)的像素值設(shè)置為白色(255)

而不在閾值區(qū)間內(nèi)的像素值設(shè)置為黑色(0)

lower_red= np.array([0,125,125])
upper_red = np.array([255,255,255])
mask = cv2.inRange(hsv, lower_red, upper_red)

圖象的腐蝕和膨脹、遍歷每個像素點進行顏色替換(5):

#step3:腐蝕膨脹 若是腐蝕膨脹后仍有白色噪點,可以增加iterations的值
erode = cv2.erode(mask, None, iterations=5)
# cv2.imshow('erode', erode)dilate = cv2.dilate(erode, None, iterations=7)
# step3.1遍歷每個像素點,進行顏色的替換'''
#若是想要將紅底變成藍底img[i,j]=(255,0,0),
#若是想將藍底變?yōu)榧t底則img[i,j]=(0,0,255),
#若是想變白底
img[i,j]=(255,255,255)'''for i in range(rows):  
  for j in range(cols):        
  if dilate[i,j] ==255: 
# 像素點255表示白色,180為灰度            img[i,j]=(255,0,0) 
# 此處替換顏色,為BGR通道,不是RGB通道

圖片效果:

????????????

附源碼:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import cv2
import numpy as np
file=r".\\pic\\小姐姐.png"
# step1:讀取照片
img = cv2.imread(file)
# step1.2:縮放圖片()
img = cv2.resize(img, None, fx=1.5, fy=1.5)
rows, cols, channels = img.shape
# 展示圖片
cv2.imshow("original...", img)
# step2.1 圖片轉(zhuǎn)換為灰度圖并顯示
hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
# :圖片的二值化處理
# 紅底變藍底
# 將在兩個閾值內(nèi)的像素值設(shè)置為白色(255),
#而不在閾值區(qū)間內(nèi)的像素值設(shè)置為黑色(0)
# 
lower_red= np.array([0,125,125])
upper_red = np.array([255,255,255])
mask = cv2.inRange(hsv, lower_red, upper_red) 
#step2.3:腐蝕膨脹 若是腐蝕膨脹后仍有白色噪點,可以增加iterations的值
erode = cv2.erode(mask, None, iterations=5)
# cv2.imshow('erode', erode)
dilate = cv2.dilate(erode, None, iterations=7) 
# step3遍歷每個像素點,進行顏色的替換
'''
#若是想要將紅底變成藍底img[i,j]=(255,0,0),
#若是想將藍底變?yōu)榧t底則img[i,j]=(0,0,255),
#若是想變白底img[i,j]=(255,255,255)
'''
for i in range(rows):
    for j in range(cols):
        if dilate[i,j] ==255: # 像素點255表示白色,180為灰度
            img[i,j]=(255,0,0) # 此處替換顏色,為BGR通道,不是RGB通道 
#step4 顯示圖像
new_file=r".\\pic\\小姐姐_blue.png"
cv2.imwrite(new_file, img)
res = cv2.imread(new_file)
cv2.imshow('result...', res)
# 窗口等待的命令,0表示無限等待
cv2.waitKey(0)

安啦!換證件照的小程序就寫好了。換上自己的圖片試試叭??!

以上就是使用python半分鐘輕松完成證件照換底色的詳細(xì)內(nèi)容,更多關(guān)于python完成證件照換底色的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 用python簡單實現(xiàn)mysql數(shù)據(jù)同步到ElasticSearch的教程

    用python簡單實現(xiàn)mysql數(shù)據(jù)同步到ElasticSearch的教程

    今天小編就為大家分享一篇用python簡單實現(xiàn)mysql數(shù)據(jù)同步到ElasticSearch的教程,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • 基于python實現(xiàn)銀行管理系統(tǒng)

    基于python實現(xiàn)銀行管理系統(tǒng)

    這篇文章主要介紹了基于python實現(xiàn)銀行管理系統(tǒng),文中有非常詳細(xì)的代碼示例,對正在學(xué)習(xí)python項目制作的小伙伴們有很好的幫助,需要的朋友可以參考下
    2021-04-04
  • Python第三方模塊apscheduler安裝和基本使用

    Python第三方模塊apscheduler安裝和基本使用

    本文主要介紹了Python第三方模塊apscheduler安裝和基本使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • 利用scrapy將爬到的數(shù)據(jù)保存到mysql(防止重復(fù))

    利用scrapy將爬到的數(shù)據(jù)保存到mysql(防止重復(fù))

    這篇文章主要給大家介紹了關(guān)于利用scrapy將爬到的數(shù)據(jù)保存到mysql(防止重復(fù))的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。
    2018-03-03
  • Python制作數(shù)據(jù)導(dǎo)入導(dǎo)出工具

    Python制作數(shù)據(jù)導(dǎo)入導(dǎo)出工具

    正好最近在學(xué)習(xí)python,于是打算用python實現(xiàn)了數(shù)據(jù)導(dǎo)入導(dǎo)出工具,由于是新手,所以寫的有些不完善的地方還請見諒
    2015-07-07
  • Python3中多線程編程的隊列運作示例

    Python3中多線程編程的隊列運作示例

    這篇文章主要介紹了Python3中多線程編程的隊列運作示例,文中用一個簡單的例子展示了Python下嘗試多線程時隊列的進站出站是如何運作的,需要的朋友可以參考下
    2015-04-04
  • python自動化測試用例全對偶組合與全覆蓋組合比較

    python自動化測試用例全對偶組合與全覆蓋組合比較

    這篇文章主要為大家介紹了python自動化測試用例全對偶組合與全覆蓋組合比較,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-06-06
  • Python回文字符串及回文數(shù)字判定功能示例

    Python回文字符串及回文數(shù)字判定功能示例

    這篇文章主要介紹了Python回文字符串及回文數(shù)字判定功能,結(jié)合實例形式分析了Python針對字符串的反轉(zhuǎn)、判定等相關(guān)操作技巧,需要的朋友可以參考下
    2018-03-03
  • 基于Python獲取城市近7天天氣預(yù)報

    基于Python獲取城市近7天天氣預(yù)報

    這篇文章主要介紹了基于Python獲取城市近7天天氣預(yù)報,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-11-11
  • Django中使用CORS實現(xiàn)跨域請求過程解析

    Django中使用CORS實現(xiàn)跨域請求過程解析

    這篇文章主要介紹了Django中使用CORS實現(xiàn)跨域請求過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-08-08

最新評論