opencv 形态学变换(开运算,闭运算,梯度运算)


Posted in Python onJuly 07, 2020

形态学里把腐蚀和膨胀单独拿了出来,其他操作(保括膨胀和腐蚀的组合操作)都叫形态学变换。
opencv里有包:cv2.morphologyEx()
morphology :译文 形态学
使用python +opencv讲解

开运算

开运算:对图像先进行腐蚀,然后对腐蚀后的图进行膨胀

opencv 形态学变换(开运算,闭运算,梯度运算)

opencv 形态学变换(开运算,闭运算,梯度运算)

morphologyEx
运算结果=cv2.morphologyEx(源图像img,cv2.MORPH_OPEN,卷积核k)
cv2.MORPH_OPEN:开运算

import cv2
import numpy as np
o=cv2.imread("opening.bmp",cv2.IMREAD_UNCHANGED)
k=np.ones((10,10),np.uint8)
r=cv2.morphologyEx(o,cv2.MORPH_OPEN,k)
cv2.imshow("original",o)
cv2.imshow("result",r)
cv2.waitKey()
cv2.destroyAllWindows()

opencv 形态学变换(开运算,闭运算,梯度运算)

闭运算

对图像进行先膨胀,再腐蚀。
有助于关闭前景物体上的小孔,或者小黑点。

opencv 形态学变换(开运算,闭运算,梯度运算)

morphologyEx
运算结果=cv2.morphologyEx(源图像img,cv2.MORPH_CLOSE,卷积核k)
cv2.MORPH_CLOSE:闭运算

合理选择卷积核大小,太小了无法去除前景图的黑点

import cv2
import numpy as np
o=cv2.imread("closing.bmp",cv2.IMREAD_UNCHANGED)
k=np.ones((10,10),np.uint8)
r=cv2.morphologyEx(o,cv2.MORPH_CLOSE,k)
cv2.imshow("original",o)
cv2.imshow("result",r)
cv2.waitKey()
cv2.destroyAllWindows()

opencv 形态学变换(开运算,闭运算,梯度运算)

梯度运算

对二值图像分别进行膨胀和腐蚀操作。
然后膨胀图像-腐蚀图像=结果
(像素相减)0-0=0,1-1=0,1-0=1

opencv 形态学变换(开运算,闭运算,梯度运算)

运算结果=cv2.morphologyEx(源图像img,cv2.MORPH_GRADIENT,卷积核k)
cv2.MORPH_GRADIENT:闭运算

import cv2
import numpy as np
o=cv2.imread("gradient.bmp",cv2.IMREAD_UNCHANGED)
k=np.ones((5,5),np.uint8)
r=cv2.morphologyEx(o,cv2.MORPH_GRADIENT,k)
cv2.imshow("original",o)
cv2.imshow("result",r)
cv2.waitKey()
cv2.destroyAllWindows()

opencv 形态学变换(开运算,闭运算,梯度运算)

到此这篇关于opencv 形态学变换(开运算,闭运算,梯度运算)的文章就介绍到这了,更多相关opencv 形态学变换内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python中字符串前面加r的作用
Jun 04 Python
Python中list初始化方法示例
Sep 18 Python
详解TensorFlow在windows上安装与简单示例
Mar 05 Python
Python获取二维矩阵每列最大值的方法
Apr 03 Python
PyQt5每天必学之日历控件QCalendarWidget
Apr 19 Python
Python通过cv2读取多个USB摄像头
Aug 28 Python
python 调试冷知识(小结)
Nov 11 Python
python+opencv实现车牌定位功能(实例代码)
Dec 24 Python
python匿名函数lambda原理及实例解析
Feb 07 Python
如何学习Python time模块
Jun 03 Python
python中_del_还原数据的方法
Dec 09 Python
Python Pycharm虚拟下百度飞浆PaddleX安装报错问题及处理方法(亲测100%有效)
May 24 Python
解决pytorch 交叉熵损失输出为负数的问题
Jul 07 #Python
Python基于httpx模块实现发送请求
Jul 07 #Python
opencv 图像腐蚀和图像膨胀的实现
Jul 07 #Python
Pytorch损失函数nn.NLLLoss2d()用法说明
Jul 07 #Python
浅析Python __name__ 是什么
Jul 07 #Python
Pytorch上下采样函数--interpolate用法
Jul 07 #Python
pytorch随机采样操作SubsetRandomSampler()
Jul 07 #Python
You might like
php array的学习笔记
2012/05/10 PHP
WordPress后台中实现图片上传功能的实例讲解
2016/01/11 PHP
php新建文件的方法实例
2019/09/26 PHP
取得父标签
2006/11/14 Javascript
javascript倒计时功能实现代码
2012/06/07 Javascript
jquery实现select选择框内容左右移动代码分享
2015/11/21 Javascript
js获取时间精确到秒(年月日)
2016/03/16 Javascript
原生javascript实现分享到朋友圈功能 支持ios和android
2016/05/11 Javascript
node.js入门教程之querystring模块的使用方法
2017/02/27 Javascript
React Native之ListView实现九宫格效果的示例
2017/08/02 Javascript
微信小程序左右滑动的实现代码
2017/12/15 Javascript
详解如何创建并发布一个 vue 组件
2018/11/08 Javascript
详解使用uni-app开发微信小程序之登录模块
2019/05/09 Javascript
[01:12]快闪回顾DOTA2亚洲邀请赛(DAC) 静候2018新征程开启
2018/03/11 DOTA
Python实现豆瓣图片下载的方法
2015/05/25 Python
python 实现在txt指定行追加文本的方法
2018/04/29 Python
python如何创建TCP服务端和客户端
2018/08/26 Python
Python实现字典排序、按照list中字典的某个key排序的方法示例
2018/12/18 Python
Python爬虫文件下载图文教程
2018/12/23 Python
对Xpath 获取子标签下所有文本的方法详解
2019/01/02 Python
Python2和Python3的共存和切换使用
2019/04/12 Python
python实现单链表的方法示例
2019/09/03 Python
使用python实现对元素的长截图功能
2019/11/14 Python
基于python中__add__函数的用法
2019/11/25 Python
Python使用socket模块实现简单tcp通信
2020/08/18 Python
python文件排序的方法总结
2020/09/13 Python
Python识别处理照片中的条形码
2020/11/16 Python
Hertz荷兰:荷兰和全球租车
2018/01/07 全球购物
北美Newegg打造的全球尖货海购平台:tt海购
2018/09/28 全球购物
美国在线鞋类零售商:LifeStride
2019/06/09 全球购物
求职自荐书范文
2013/12/04 职场文书
缓刑期间思想汇报范文
2014/10/10 职场文书
教师见习报告范文
2014/11/03 职场文书
教务处教学工作总结
2015/08/10 职场文书
2016国庆节67周年寄语
2015/12/07 职场文书
python机器学习实现oneR算法(以鸢尾data为例)
2022/03/03 Python