1.op = cv2.TOPHAT 礼帽:原始图片-开运算后的图片
2. op=cv2.BLACKHAT 黑帽: 闭运算后的图片-原始图片
礼帽:表示的是原始图像-开运算(先腐蚀再膨胀)以后的图像
黑帽:表示的是闭运算(先膨胀再腐蚀)后的图像 - 原始图像
代码:
第一步:读取图片
第二步:使用cv2.MOPRH_TOPHAT获得礼帽图片
第三步:使用cv2.MOPRH_BLACKHAT获得黑帽图片
import cv2
import numpy as np # 第一步读入当前图片
img = cv2.imread('dige.png')
cv2.imshow('img', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
# 第二步:使用cv2.MORPH_TOPHAT获得礼帽图片
kernel = np.ones((3, 3), np.uint8)
tophat = cv2.morphologyEx(img, cv2.MORPH_TOPHAT, kernel)
cv2.imshow('tophat', tophat)
cv2.waitKey(0)
cv2.destroyAllWindows()
# 第三步:使用cv2.MORPH_BLACKHAT获得黑帽图片
kernel = np.ones((3, 3), np.uint8)
blackhat = cv2.morphologyEx(img, cv2.MORPH_BLACKHAT, kernel)
cv2.imshow('blackhat', blackhat)
cv2.waitKey(0)
cv2.destroyAllWindows()