千家信息网

Python中图像形态学运算技术的示例分析

发表于:2025-02-16 作者:千家信息网编辑
千家信息网最后更新 2025年02月16日,这篇文章主要为大家展示了"Python中图像形态学运算技术的示例分析",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Python中图像形态学运算技术的示例分
千家信息网最后更新 2025年02月16日Python中图像形态学运算技术的示例分析

这篇文章主要为大家展示了"Python中图像形态学运算技术的示例分析",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Python中图像形态学运算技术的示例分析"这篇文章吧。

1 图像形态学运算

在Python OpenCV图像处理之图像滤波特效详解中我们将图像滤波进行了以下分类:

邻域滤波

  • 线性滤波

  • 非线性滤波

频域滤波

  • 低通滤波

  • 高通滤波

在非线性滤波中,之前只介绍了中值滤波,事实上,还有一类非常常用的非线性滤波方法,称为图像形态学运算(Morphological operations)。

图像形态学运算是一类基于图像形状运算的非线性滤波技术,其基本思想是利用一些特殊的结构元来测量或提取图像中相应的形状和特征,以便进一步进行图像分析和处理。这里结构元素就相当于我们在滤波中所涉及到的模板--一个给定像素的矩阵,这个矩阵形状可以任意,但一般是正方形。

接下来,我们分析一下几种经典的图像形态学运算算法,再编程测试一下~

2 腐蚀

腐蚀就是用局部灰度最小值代替目标像素值实现对高亮区域的腐蚀。

举个例子,有这样一张图像和这样一个结构元素,其中结构元素的蓝色方块表示的是模板原点。

下面我们开始遍历这张图像,到下图这个位置的时候,模板内灰度最小值是灰色方格的像素,因此替换掉模板原点中蓝色方格处的像素为灰色(原本为白色,被腐蚀了)

就这样遍历完这张图像得到

3 膨胀

膨胀就是用局部灰度最大值代替目标像素值实现对高亮区域的膨胀。

和腐蚀类似,遍历这张图像,到下图这个位置的时候,模板内灰度最大值是白色方格的像素,因此替换掉模板原点中蓝色方格处的像素为白色(原本为灰色,膨胀了)

就这样遍历完这张图像得到膨胀的最终结果为

上个实物图感受下腐蚀和膨胀的效果

4 开运算与闭运算

理解了图像腐蚀与膨胀,那么开闭运算就很容易了

  • 开运算(Opening):先腐蚀再膨胀

  • 闭运算(Closing):先膨胀再腐蚀

开运算能够除有效去除孤立点、毛刺和小桥;闭运算能够填平小孔,弥合缝隙。

上图假设灰色区域为高亮。

5 顶帽运算与底帽运算

顶帽运算与底帽运算是用于表征开闭运算与原图像间差异的运算,类似边缘检测的梯度差

  • 图像顶帽运算:表征原图像与开运算得到的图像之间的区别

  • 图像底帽运算:表征原图像与闭运算得到的图像之间的区别

6 恶魔与天使

先看看原图,一对可爱的猫咪

进行腐蚀操作,首先创建结构元

int eSize = 3;  //结构元尺寸int s = eSize * 2 + 1;Mat structureElement = getStructuringElement(MORPH_RECT, Size(s, s), Point(-1, -1));

接着用结构元遍历原图,OpenCV有封装好的API,直接调用即可

erode(src, dst, structureElement);imshow("腐蚀操作后:", dst);

得到腐蚀后的图像如下所示,眼睛空洞洞的,有点恐怖片内味了,这还是原来那两只猫吗?

膨胀操作类似于腐蚀,也有OpenCV封装好的API

dilate(srcImg, dstImg, structureElement, Point(-1, -1), 1);imshow("膨胀操作后:", dstImg);

膨胀出来的小猫就显得轻松很多,感觉升华了。

今后要是想有一张照片创造光与影正与邪天使与恶魔两种反差,可以考虑采用图像腐蚀和膨胀操作。

以上是"Python中图像形态学运算技术的示例分析"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

运算 图像 形态 形态学 像素 结构 模板 分析 原图 技术 方格 灰度 灰色 非线性 示例 中图 元素 内容 区域 原点 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 大数据看板怎么连接数据库 服务器机房功率 当代人学习网络安全知识是因为 网络技术保障法制课堂 西门子怎样清除l区数据库 驻马店网络安全知识竞答 6.72折腾服务器V10魔改版 网络安全保密检查 linux做vpn服务器 军工软件开发具体用的什么语言 成都邮储软件开发中心 北斗gps校时服务器 重庆net 软件开发公司 贵州android软件开发培训 教师课堂网络技术 本地ftp服务器同时访问数量 我的世界魔王him服务器叫做什么 2019深度软件开发 重庆黑尔普网络技术有限公司 专业做架构的软件开发 泰州大型网络技术解决方案 软件开发过程的考核 互联网服务器技术防护方案 邮件投递到对方服务器可以收到吗 英威腾待遇软件开发 莆田市网络安全与信息化 深圳服务器设备供货商哪家好 网络安全教案初中大全 软考数据库系统工程师百度网盘 服务器安装程序到其他电脑
0