文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

cv2.getStructuringElement()函数及开、闭、腐蚀、膨胀原理讲解

2022-12-22 18:00

关注

cv2.getStructuringElement()函数的作用是返回一个结构元素(卷积核),具体解析如下:

kernel = cv2.getStructuringElement(a,b,c): # 得到一个结构元素(卷积核)。主要用于后续的腐蚀、膨胀、开、闭等运算。
因为这些运算都是依赖于卷积核的,不同的卷积核(形状、大小)对图形的腐蚀、膨胀操作效果不一样

输入参数:
         a设定卷积核的形状、b设定卷积核的大小、c表示描点的位置,一般 c = 1,表示描点位于中心。(下文细说)
返回值:
         返回指定形状和尺寸的结构元素(一般是返回一个矩形)、也就是腐蚀/膨胀用的核的大小。(下文细说)

a取不同的参数会导致卷积核有不同的形状,a参数有三个:

①:MORPH_RECT(函数返回矩形卷积核)

②:MORPH_CROSS(函数返回十字形卷积核)

③:MORPH_ELLIPSE(函数返回椭圆形卷积核)

b:用一个(x,y)的形式表示,表示卷积核有x行,y列。

腐蚀操作

①:腐蚀操作的对象是二值化图像,二值图像前景物体为1,背景为0,卷积核也是只含有0和1。

②:比如这是图像A和一个卷积核(结构元素):

(注意A的像素点(方格)不是0就是1。B的描点(中心点)就是我们通过getStructuringElement函数中的参数c来确定的,也可以设立在其他地方)

腐蚀的步骤就是用卷积核B的描点(此处就是中心点),来对齐A中的每一个小方格,然后选取卷积核B的方格中的数据的最小值,意思就是当B的描点对齐A的边界方格的时候,那么B的其他四个方格可能位于A图像中的0像素点,那么最小值就是0,那么就把卷积核B的描点对应的A中的小方格设为0,这就导致使用腐蚀操作后,我我们能看到的白色区域减少的原因。

kernel = cv2.getStructuringElement(a,b,c)
cv2.erode(img, kernel, iteration = 1)# 腐蚀操作

膨胀操作

原理与腐蚀操作一样,只不过是取最大像素值,其他地方没差别。

kernel = cv2.getStructuringElement(a,b,c)
cv2.dilate(img, kernel, iteration = 1)# 膨胀操作

开、闭

开:先进行腐蚀运算,再进行膨胀运算。

闭:先进行膨胀运算,再进行腐蚀运算。

kernel = cv2.getStructuringElement(a,b,c)
opening = cv2.morphologyEx(img, cv2.MORPH_OPEN,kernel) # 开运算
opening = cv2.morphologyEx(ima,cv2.MORPH_CLOSE,lernel) # 闭运算

开运算和闭运算都是处理噪点用的:

开:消去一个黑图中的很多小白点

闭:小区一个白图中的很多小黑点 如:

原图:

开运算:

闭运算:

总结

到此这篇关于cv2.getStructuringElement()函数及开、闭、腐蚀、膨胀原理讲解的文章就介绍到这了,更多相关cv2.getStructuringElement()函数内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯