欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

【scipy】 scipy.ndimage 数学形态学(Mathematical morphology)

发布时间:2024/1/1 79 豆豆
生活随笔 收集整理的这篇文章主要介绍了 【scipy】 scipy.ndimage 数学形态学(Mathematical morphology) 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

____tz_zs笔记

形态学

形态学(morphology)一词通常表示生物学的一个分支,该分支主要研究动植物的形态和结构。而我们图像处理中指的形态学,往往表示的是数学形态学。

数学形态学(Mathematical morphology) 是一门建立在格论和拓扑学基础之上的图像分析学科,是数学形态学图像处理的基本理论。其基本的运算包括:二值腐蚀和膨胀、二值开闭运算、骨架抽取、极限腐蚀、击中击不中变换、形态学梯度、Top-hat变换、颗粒分析、流域变换、灰值腐蚀和膨胀、灰值开闭运算、灰值形态学梯度等。

数学形态学以形态结构元素为基础对图像进行分析的数学工具。数学形态学的应用可以简化图像数据,保持它们基本的形状特征,并除去不相干的结构。通常用于处理二值图像。

形态学目的

  • 图像预处理(去噪声,简化形状)
  • 增强物体结构(抽取骨骼,细化,粗化,凸包,物体标记)
  • 从背景中分隔物体
  • 物体量化描述(面积,周长,投影,Euler-Poincare特征)

 

腐蚀和膨胀

首先需要注意,腐蚀和膨胀是对白色部分(高亮部分)而言的,不是黑色部分。膨胀就是图像中的高亮部分进行膨胀,“领域扩张”,效果图拥有比原图更大的高亮区域。腐蚀就是原图中的高亮部分被腐蚀,“领域被蚕食”,效果图拥有比原图更小的高亮区域。

腐蚀和膨胀基本上是所有形态学操作的基础,除此之外还有补集(即二值图全部取反的操作,0变1,1变0),和反射(将所有坐标去反)。

膨胀:

 

  • 桥接缝隙(缝隙点为0,且宽度比SE的宽度小)
  • 消除细小的黑点(二值图像中的0,黑点比SE小)

 

腐蚀:

 

  • 消除“桥梁”(细线装的白色条纹,值为1,宽度小于SE的宽度)
  • 消除细小的白点(二值图像中的1,白点比SE小)

 

开操作和闭操作

 

简单来说所谓开操作和闭操作就是把腐蚀和膨胀结合起来,先腐蚀后膨胀就是开,膨胀后腐蚀就是关。

开操作,一般会平滑物体轮廓,断开较窄的狭颈(细长的白色线条),所以叫开,并消除细小的突出物。

闭操作,一般也会平滑物体轮廓,但与开操作相反,弥合较窄的间断和细长的沟壑,所以叫闭,消除小的空洞,填补轮廓线的中的断裂。

·

# -*- coding: utf-8 -*- """ @author: tz_zs 数学形态学 """import numpy as np import matplotlib.pyplot as plt from scipy import ndimagesquare = np.zeros((32, 32)) square[10:15, 10:20] = 1 square[16:20, 10:20] = 1 square[22:28, 10:20] = 1square[4:8, 10] = 1 square[4:8, 12] = 1x, y = (np.random.random((2, 15)) * 32).astype(np.int) square[x, y] = 1plt.imshow(square) plt.show() # 图1# 腐蚀 square_erosion = ndimage.binary_erosion(square) plt.imshow(square_erosion) plt.show() # 图2# 膨胀 square_dilation = ndimage.binary_dilation(square) plt.imshow(square_dilation) plt.show() # 图3# 开运算 square_open = ndimage.binary_opening(square) plt.imshow(square_open) plt.show() # 图4# 闭运算 square_closing = ndimage.binary_closing(square) plt.imshow(square_closing) plt.show() # 图5

·图1

·图2

·图3

·图4

·图5

·

 

参考资料:

https://blog.csdn.net/poem_qianmo/article/details/23710721

https://blog.csdn.net/tonyshengtan/article/details/42119773

总结

以上是生活随笔为你收集整理的【scipy】 scipy.ndimage 数学形态学(Mathematical morphology)的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。