OpenCV实现图像的礼帽和黑帽

礼帽运算

黑帽运算

参数

python 复制代码
cv.morphologyEx(img,op,kernel)

参数:

  • img : 要处理的图像
  • op: 处理方式

代码实现

python 复制代码
import numpy as np
import cv2 as cv
import matplotlib.pyplot as plt
from pylab import mpl

mpl.rcParams['font.sans-serif'] = ['SimHei']

#读取图像

img1 = cv.imread("lena.png")


#创建核结构
kernel = np.ones((10,10),np.uint8)

#图像礼帽核黑帽运算
cvopen = cv.morphologyEx(img1,cv.MORPH_TOPHAT,kernel)   #礼帽运算

cvclose = cv.morphologyEx(img1,cv.MORPH_BLACKHAT,kernel)   #黑帽运算

#图像显示
fig,axes = plt.subplots(nrows=2,ncols=2,figsize=(6,6),dpi=100)

'''在代码axes[0, 0]和axes[0, 1]中,[0, 0]和[0, 1]表示子图的位置。

axes[0, 0]表示第一行第一列的子图,axes[0, 1]表示第一行第二列的子图。

子图的位置索引是从左上角开始计数,第一行为0,第一列也为0。因此,[0, 0]代表左上角的子图,[0, 1]代表右上角的子图。

在代码中,通过imshow()方法显示图像,再通过set_title()方法设置子图的标题,以便更好地标识每个子图所代表的内容。
'''


axes[0,0].imshow(img1[:,:,::-1])
axes[0,0].set_title("原图")

axes[0,1].imshow(cvopen[:,:,::-1])
axes[0,1].set_title("顶帽")

axes[1,0].imshow(cvclose[:,:,::-1])
axes[1,0].set_title("礼帽")

plt.show()

运行结果展示

总结:

顶帽和礼帽是形态学图像处理中的两种操作,它们都是基于图像的开运算和闭运算来实现的。

顶帽(Top Hat)操作:

顶帽操作可以通过先对原图像进行腐蚀操作,再用原图像减去腐蚀后的结果得到。顶帽操作可以提取出比原图像亮且尺寸较小的细节或者噪声。

顶帽操作的效果是突出原图像中边缘、细节和亮点。它通常用于增强图像中的细微结构或者检测图像中的小尺度目标。

礼帽(Black Hat)操作:

礼帽操作是先对原图像进行膨胀操作,再用膨胀后的结果减去原图像得到。礼帽操作可以提取出比原图像暗且尺寸较小的细节或者噪声。

礼帽操作的效果是突出原图像中的边缘、细节和暗点。它通常用于增强图像中的细微结构或者检测图像中的小尺度目标。

综上所述,顶帽操作用于突出图像中的亮细节,而礼帽操作用于突出图像中的暗细节。这两种操作都可以帮助我们提取和强调图像中细小而重要的特征。

相关推荐
信誓旦旦的程序猿几秒前
【Python量化实战宝典 #26】止损与回撤控制手册:移动止损、最大回撤(Python 可跑)
python·1024程序员节·股票数据api·股票数据api接口·股票api数据接口·股票量化数据api·股票量化数据接口
2501_944521593 分钟前
Deepmerge 跨端三方库仓颉适配全流程
java·python·eclipse·github
Patrick在香港21 分钟前
同一行 strftime,两台机器跑出两种日期
python·datetime·时区·locale·日期处理
2601_9679873731 分钟前
用Python+OpenCV+YOLO写个游戏脚本:从自动瞄准到自动采集的保姆级教程
python·opencv·yolo·目标检测·游戏自动化
meiying883832 分钟前
快递单号批量查询Python脚本:从手动到自动化的完整实现
开发语言·python·自动化
在所不辞兄34 分钟前
【零基础学智能仿真-63】ABACUS作业工具与MCP接口
人工智能·深度学习·神经网络·机器学习·智能仿真
楚山之石40 分钟前
【Medical Image Analysis】深度学习医学图像合成综述:伪CT、合成MRI与合成PET的架构、性能与临床边界
图像处理·人工智能·学习·mr·mri
人工智能导论实践课1 小时前
【GUI桌面开发3】PyCharm配置外部工具
ide·python·pycharm
blackappleD1 小时前
百度 Unlimited OCR 2 拆解:SR-SWA 如何让百页文档的 KV 缓存不再涨
人工智能·llm
数字新视界1 小时前
国产动环数据库在智能机房环境监控中的应用与优势分析
大数据·人工智能·数据中心·机房管理·模块化机房