久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

python 圖像處理:一福變五福

 編程教室 2021-03-18

快過年了,,各種互聯(lián)網(wǎng)產(chǎn)品都出來撒紅包,。某寶一年一度的集五福(shua hou)活動(dòng)更是成為每年的必備活動(dòng)。雖然到最后每人大概也就分個(gè)兩塊錢,,但作為一個(gè)全民話題,,大多數(shù)人還是愿意湊湊熱鬧,。畢竟對(duì)于如今生活在大城市的人來說,,集福領(lǐng)紅包和空蕩的地鐵車廂或許已是最大的“年味”了。

既然是湊熱鬧,,怎么能少得了我,。前年過年我發(fā)過一篇:《一行代碼掃出“敬業(yè)福”》,,介紹的是 OCR 文字識(shí)別的使用,。今年再來對(duì)“福”字做文章,,演示下如何用 python 的圖像處理功能,,把一幅“福”字圖片轉(zhuǎn)出 5 種不同的效果

python 最圖像處理最常用的兩個(gè)模塊是 PILOpenCV,,這里我們選擇 OpenCV,。

讀取圖片及展示代碼:

import cv2
from matplotlib import pyplot as plt img = cv2.imread('fu.png')
# 轉(zhuǎn)換顏色模式,顯示原圖
img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) plt.imshow(img) plt.show()

因?yàn)?OpenCVmatplotlib顏色模式不一樣,,所以需要做一次轉(zhuǎn)換,,如果是直接通過 cv2 展示和保存圖片則不需要。

上面的效果分別用到了以下功能:

1,、灰度福

這里沒有選擇直接將圖片轉(zhuǎn)出灰度圖,,因?yàn)檫@樣會(huì)導(dǎo)致福字不明顯。而是通過將紅,、綠,、藍(lán)三通道分離后,選擇色差最大的紅色通道,。

r,g,b = cv2.split(img)

2,、輪廓福

使用了 OpenCV 自帶的圖像輪廓提取功能。為了更好的效果,,這里對(duì)紅色通道進(jìn)行二值化后,,再查找輪廓。

_, img_bin = cv2.threshold(r, 50, 255, cv2.THRESH_BINARY) _, contours, _ = cv2.findContours(img_bin, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) img_cont = np.zeros(img_bin.shape, np.uint8)     cv2.drawContours(img_cont, contours, -1, 255, 3)

3,、反色福

發(fā)色的實(shí)現(xiàn)是將每個(gè)像素值 x 轉(zhuǎn)成 255-x,。如果遍歷像素計(jì)算會(huì)比較慢,于是用了一個(gè)小技巧:轉(zhuǎn)成 numpy 的 ndarray 再進(jìn)行矩陣運(yùn)算

img_i = np.asarray(img) img_i = 255 - img_i

4,、膨脹福

這里其實(shí)是“圖像腐蝕”操作(與“圖像膨脹”操作相反),。因?yàn)樵谖覀冞x取的紅色通道中,白色是背景,,黑色才是福字,,所以對(duì)白色的“腐蝕”也就是對(duì)黑色的“膨脹”。這也是 OpenCV 的內(nèi)置功能,。做完這一步,,又對(duì)圖像進(jìn)行了切割,直接通過列表的切片操作實(shí)現(xiàn),。

kernel = cv2.getStructuringElement(cv2.MORPH_RECT,(25, 25)) eroded = cv2.erode(r, kernel) size = img.shape eroded = eroded[int(size[1]*0.15):int(size[1]*0.7),int(size[0]*0.2):int(size[0]*0.85)]

5,、福到了

OpenCV 提供了翻轉(zhuǎn)操作,第二個(gè)參數(shù)是旋轉(zhuǎn)軸的選取,,你可以試試 0 和 1 的效果,。

img_r = cv2.flip(img, -1)

完整代碼可以在公眾號(hào)(Crossin的編程教室)里回復(fù)關(guān)鍵字:五福

以上就是我送給大家的 5 個(gè)福。試過了,,都能被掃出來,。我已集齊

如果你還沒湊齊,可以掃這個(gè)圖,。祝大家新年有福氣,!


    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多