opencv笔记—开闭运算

写在前头:开运算和闭运算并不是相互可逆的。

开运算:

  • 操作流程:开运算是先腐蚀后膨胀
  • 作用:分离物体,消除小区域。特点:消除噪点,去除小的干扰块,而不影响原来的图像
    在这里插入图片描述

闭运算:

  • 具体操作:是先膨胀后腐蚀
  • 作用:是消除/“闭合”物体里面的孔洞,特点:可以填充闭合区域
    在这里插入图片描述方法调用:
cv.morphologyEx(要处理的图像, cv.MORPH_OPEN/cv.MORPH_CLOSE,核结构 kernel)

具体代码:

import numpy as np
import cv2 as cv
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']      # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False        # 用来正常显示负号

# 载入图片
img0 = cv.imread("img/img4.png")
img1 = cv.imread("img/img5.png")

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

# 图像开闭运算
# 开运算:消除噪点,去除小的干扰块,不影响原来的图像
cvOpen = cv.morphologyEx(img0,cv.MORPH_OPEN,kernel)
# 闭运算:消除/闭合物体里面的孔洞,可以填充闭合区域
cvClose = cv.morphologyEx(img1,cv.MORPH_CLOSE,kernel)

# 图像展示
fig, axes = plt.subplots(nrows=2,ncols=2,figsize=(10,8))
axes[0,0].imshow(img0)
axes[0,0].set_title("原图")
axes[0,1].imshow(cvOpen)
axes[0,1].set_title("开运算结果")
axes[1,0].imshow(img1)
axes[1,0].set_title("原图")
axes[1,1].imshow(cvClose)
axes[1,1].set_title("闭运算结果")
plt.show()

运行结果:
在这里插入图片描述cv小白的笔记,只是笔记,请大佬指点

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

滴滴da

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值