opencv礼帽和黑帽运算

礼帽 = 原始输入 - 开运算结果,留存的以白色毛刺为主

黑帽 = 闭运算 - 原始输入,保留的更多是原始轮廓

python 复制代码
# 导入OpenCV库,用于图像处理  
import cv2  
import numpy as np  
# 从matplotlib库中导入pyplot模块,用于绘制图像  
from matplotlib import pyplot as plt  
  
# 创建一个名为'window'的窗口,窗口大小自动调整  
cv2.namedWindow('window', cv2.WINDOW_AUTOSIZE)  # cv2.WINDOW_AUTOSIZE: 窗口大小自动调整,不允许用户改变窗口大小  
  
# 使用OpenCV的imread函数读取名为"mao.jpg"的图片,参数1表示读取彩色图像  
cat = cv2.imread("mao.jpg", 0)  # cat变量存储读取的图像数据,OpenCV默认以BGR格式读取  
  
# 在名为'window'的窗口中显示图像  
cv2.imshow('window', cat)  
  
kernel = np.ones((5, 5), np.uint8)  
opening = cv2.morphologyEx(cat, cv2.MORPH_TOPHAT, kernel)  # 礼帽运算  
closing = cv2.morphologyEx(cat, cv2.MORPH_BLACKHAT, kernel)  # 黑帽运算  
cv2.imshow('window1', opening)  
cv2.imshow('window2', closing)  
  
# 等待按键事件,0表示无限期等待  
key = cv2.waitKey(0)  
  
# 检查按下的键是否是'q',如果是则销毁所有窗口  
if key & 0xFF == ord('q'):  # 0xFF是掩码,用于确保只检查最低8位  
    print("准备销毁窗口")  
    cv2.destroyAllWindows()
相关推荐
RessCris5 分钟前
opencv:距离变换 cv2.distanceTransform
图像处理·opencv·计算机视觉
yuruizai11025 分钟前
netty十八罗汉之——挖耳罗汉(Decoder)
java·人工智能·netty
Matrix_1126 分钟前
论文阅读:Non-parametric Sensor Noise Modeling and Synthesis
论文阅读·人工智能·计算摄影
带娃的IT创业者2 小时前
《AI大模型趣味实战》第10集:开发一个基于Mermaid的AI绘图网站
人工智能·pytorch·深度学习·ai·flask
9命怪猫2 小时前
AI大模型-提示工程学习笔记15—主动提示 (Active Prompt)
人工智能·机器学习·ai·prompt
KubeSphere 云原生2 小时前
云原生周刊:云原生和 AI
人工智能·云原生
SuasyYi3 小时前
【深度学习】Transformer 的常见的位置编码有哪些
人工智能·python·深度学习·语言模型·transformer
脑洞专家4 小时前
角点检测算法各自优缺点
人工智能·算法·计算机视觉
高桐@BILL5 小时前
本地部署AI模型 --- DeepSeek(二)---更新中
人工智能
玩电脑的辣条哥6 小时前
动态记忆网络 DeepMind的MEMO架构允许在推理时动态读写记忆矩阵,记忆容量提升40倍
人工智能