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

新年福利來(lái)一波之Python輕松集齊五福(demo)

 更新時(shí)間:2020年01月20日 09:32:34   作者:呀哈呀哈呀哈  
這篇文章主要介紹了新年福利來(lái)一波之Python輕松集齊五福的小demo,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

新的一年又要到來(lái)了,各個(gè)大的公司又在這年末為大家送上了新春的祝福,支付寶還是延續(xù)了這幾年的傳統(tǒng),在年末為大家送上了集五福的活動(dòng),為了大家能更快更好的掃出來(lái)大大的“?!保裉炀蛶ьI(lǐng)大家利用python做一個(gè)一“?!鞭D(zhuǎn)“N”福的小demo。

先看效果圖

首先,我們需要拿到一張大大的“?!弊謭D片,然后,我們就可以對(duì)于這張圖進(jìn)行操作了。我們今天要實(shí)現(xiàn)的就是將一張“福”字轉(zhuǎn)化為五種不同的風(fēng)格,現(xiàn)為大家呈上效果圖。

灰度圖

首先為大家展示的是灰度圖,灰度圖就是將彩色的RGB三通道圖像,轉(zhuǎn)化為單通道的灰色圖像,RGB三個(gè)通道的顏色通過(guò)比例系數(shù)進(jìn)行相加。程序如下所示。

def Gray_fu(self):
 gray_img = cv2.cvtColor(self.ori_img, cv2.COLOR_BGR2GRAY)
 return gray_img

輪廓圖

接下來(lái)是輪廓圖,輪廓圖需要輸入一張灰度圖像,首先是對(duì)圖像進(jìn)行濾波處理,去除噪聲,然后針對(duì)于灰色的圖片中像素突然變化的點(diǎn)來(lái)檢測(cè)邊緣,什么是邊緣突然變化呢,參考我們的灰度圖,灰度圖中,“?!弊值倪吘壨尘邦伾霈F(xiàn)了巨大的差異,這種差異就是尋找邊緣輪廓的依據(jù),程序如下圖所示。

def Canny_fn(self):
 img = cv2.cvtColor(self.ori_img, cv2.COLOR_BGR2GRAY)
 img = cv2.GaussianBlur(img, (3, 3), 0)
 canny_img = cv2.Canny(img, 50, 150)
 return canny_img

反色圖

對(duì)于反色圖,理解起來(lái)并不難,就是用255減去將原圖中的每一個(gè)像素值,得到的就是我們的反色圖,程序如下:

def invert_fu(self):
 img = 255 - self.ori_img
 return img

腐蝕圖

對(duì)于腐蝕圖,因?yàn)樵谖覀冞x取的圖像中,紅色是背景,黑色才是福字,所以對(duì)紅色進(jìn)行膨脹也就是對(duì)黑色進(jìn)行腐蝕。這也是 OpenCV 的內(nèi)置功能。我們只需要調(diào)用opencv中的膨脹函數(shù)即可。

def dilate_fu(self):
 # img = cv2.cvtColor(self.ori_img, cv2.COLOR_BGR2GRAY)
 kernel = cv2.getStructuringElement(cv2.MORPH_RECT, (5, 5))
 img = cv2.dilate(self.ori_img, kernel, iterations=1)
 print(img.shape)
 return img

福到家

最后是我們的“福到家”,我們只需要將福字進(jìn)行旋轉(zhuǎn)即可。

def rotate_fu(self):
 img = cv2.rotate(self.ori_img, 1)
 return img

完整代碼

import cv2
class Change_pic():
 def __init__(self, img):
  self.ori_img = cv2.imread(img)
 def Gray_fu(self):
  '''灰度圖'''
  gray_img = cv2.cvtColor(self.ori_img, cv2.COLOR_BGR2GRAY)
  return gray_img
 def Canny_fn(self):
  '''輪廓圖'''
  img = cv2.cvtColor(self.ori_img, cv2.COLOR_BGR2GRAY)
  img = cv2.GaussianBlur(img, (3, 3), 0)
  canny_img = cv2.Canny(img, 50, 150)
  return canny_img
 def invert_fu(self):
  '''反色圖'''
  img = 255 - self.ori_img
  return img
 def dilate_fu(self):
  '''腐蝕圖'''
  # img = cv2.cvtColor(self.ori_img, cv2.COLOR_BGR2GRAY)
  kernel = cv2.getStructuringElement(cv2.MORPH_RECT, (5, 5))
  img = cv2.dilate(self.ori_img, kernel, iterations=1)
  print(img.shape)
  return img
 def rotate_fu(self):
  '''福到家'''
  img = cv2.rotate(self.ori_img, 1)
  return img

總結(jié)

以上所述是小編給大家介紹的新年福利來(lái)一波之Python輕松集齊五福,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!

相關(guān)文章

最新評(píng)論