顶帽(Top Hat):
原图像与开运算图的区别(差值),突出原图像中比周围亮的区域
黑帽(Black Hat):
闭操作图像 - 原图像,突出原图像中比周围暗的区域
形态学梯度(Gradient):
基础梯度:基础梯度是用膨胀后的图像减去腐蚀后的图像得到差值图像,称为梯度图像也是opencv中支持的计算形态学梯度的方法,而此方法得到梯度有称为基本梯度。
内部梯度:是用原图像减去腐蚀之后的图像得到差值图像,称为图像的内部梯度。
外部梯度:图像膨胀之后再减去原来的图像得到的差值图像,称为图像的外部梯度。
import cv2
import numpy as np
from matplotlib import pyplot as plt
__author__ = "zxsuperstar"
__email__ = "zxsuperstar@163.com"
"""
顶帽、黑帽、形态学梯度
"""
def top_hat_demo(image): #顶帽
cv2.imshow("image", image)
gray = cv2.cvtColor(image, cv2.COLOR_BGRA2GRAY)
kernel = cv2.getStructuringElement(cv2.MORPH_RECT, (5,5))
dst = cv2.morphologyEx(gray, cv2.MORPH_TOPHAT, kernel)
# 增加亮度
cimage = np