前文傳送門:
「Python 圖像處理 OpenCV (1):入門」
「Python 圖像處理 OpenCV (2):像素處理與 Numpy 操作以及 Matplotlib 显示圖像」
「Python 圖像處理 OpenCV (3):圖像屬性、圖像感興趣 ROI 區域及通道處理」
「Python 圖像處理 OpenCV (4):圖像算數運算以及修改顏色空間」
「Python 圖像處理 OpenCV (5):圖像的幾何變換」
「Python 圖像處理 OpenCV (6):圖像的閾值處理」
「Python 圖像處理 OpenCV (7):圖像平滑(濾波)處理」
「Python 圖像處理 OpenCV (8):圖像腐蝕與圖像膨脹」
「Python 圖像處理 OpenCV (9):圖像處理形態學開運算、閉運算以及梯度運算」
引言
今天是圖形處理形態學的最後一篇,我們介紹頂帽運算和黑帽運算。
建議先閱讀前面兩篇圖像處理的內容:
「Python 圖像處理 OpenCV (8):圖像腐蝕與圖像膨脹」
「Python 圖像處理 OpenCV (9):圖像處理形態學開運算、閉運算以及梯度運算」
形態學之頂帽運算
圖像處理頂帽運算是一個獲取圖像噪聲的運算,它是由原始圖像減去圖像開運算而得到的結果:
頂帽運算 = 原始圖像 - 開運算
圖像頂帽運算同樣是使用形態學擴展函數 morphologyEx()
,它的參數是 MORPH_TOPHAT
,示例如下:
import cv2 as cv
import numpy as np
import matplotlib.pyplot as plt
# 讀取圖片
source = cv.imread("demo_noise_white.jpg", cv.IMREAD_GRAYSCALE)
# 設置卷積核
kernel = np.ones((5, 5), np.uint8)
# 開運算
open = cv.morphologyEx(source, cv.MORPH_OPEN, kernel)
# 頂帽運算
dst = cv.morphologyEx(source, cv.MORPH_TOPHAT, kernel)
# 显示結果
titles = ['Source Img','Open Img', 'Tophat Img']
images = [source, open, dst]
# matplotlib 繪圖
for i in range(3):
plt.subplot(1, 3, i+1), plt.imshow(images[i],'gray')
plt.title(titles[i])
plt.xticks([]),plt.yticks([])
plt.show()
形態學之黑帽運算
圖像處理頂帽運算是一個獲取圖像內部的小孔,或者前景色中的小黑點的運算。
它是由圖像閉運算減去原始圖像的操作:
黑帽運算 = 閉運算圖像 - 原始圖像
圖像頂帽運算同樣是使用形態學擴展函數 morphologyEx()
,它的參數是 MORPH_BLACKHAT
,示例如下:
import cv2 as cv
import numpy as np
import matplotlib.pyplot as plt
# 讀取圖片
source = cv.imread("demo_noise_black.jpg", cv.IMREAD_GRAYSCALE)
# 設置卷積核
kernel = np.ones((5, 5), np.uint8)
# 黑帽運算
dst = cv.morphologyEx(source, cv.MORPH_BLACKHAT, kernel)
# 構造显示結果數組
titles = ['Source Img', 'Black Img']
images = [source, dst]
# matplotlib 繪圖
for i in range(2):
plt.subplot(1, 2, i+1), plt.imshow(images[i],'gray')
plt.title(titles[i])
plt.xticks([]),plt.yticks([])
plt.show()
今天的內容比較短,至此,圖像形態學的幾個基礎的運算已經全部介紹完畢,希望各位同學能理解這幾個運算的原理,而不是僅僅知道了幾個參數或者說幾個方法的調用。
示例代碼
如果有需要獲取源碼的同學可以在公眾號回復「OpenCV」進行獲取。
本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理【其他文章推薦】
※帶您來了解什麼是 USB CONNECTOR ?
※自行創業缺乏曝光? 網頁設計幫您第一時間規劃公司的形象門面
※如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!
※綠能、環保無空污,成為電動車最新代名詞,目前市場使用率逐漸普及化
※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益
※教你寫出一流的銷售文案?
Orignal From: Python 圖像處理 OpenCV (10):圖像處理形態學之頂帽運算與黑帽運算
留言
張貼留言