谭升
非主流人工智能科学家 我和外面那些妖艳的货不一样

【数字图像处理】3.4:二值图像-形态学处理4 其他操作

开篇废话

其实写博客是个很痛苦的过程,要准备一些东西,还怕写错会误导别人,但是在总结和准备相关资料的时候会更深入的理解其中的一些算法原理,然后再根据自己的实际操作把过程表述出来,可以发现一些错误,也能理顺思路。     我百度找资料的时候(大牛都用google你怎么还用百度?我找不到上Google的方法!
开始正题,形态学基本操作:腐蚀和膨胀,进而演化出了开操作和闭操作,后来有演化出了一些其他操作,能够应用于各种不同的场景,比如最简单的边界提取,稍微复杂的孔洞填充,与空洞填充类似的连通分量提取,凸壳不知道在哪方面应用,但是细化和骨架在很多手势识别,步态识别中应用广泛,形态学重建可以算作一种很简单的图像分割,但高速有效。

数学公式

击中:
边界提取:
孔洞填充:
连通分量提取:
凸壳:
细化:
骨架:
测地腐蚀:
测地膨胀:
(2018年补充:详情可以参考刚萨雷斯数字图像处理,或等作者后续补上)

算法介绍

  1. 击中:击中其实是一种模板匹配,如果一个结构元(模板)与图像中的一个连通区域完全相等,那么腐蚀的结果将是一个点,这就算是“击中”了,因为找到了完全一致的模式(模式的含义去查一下吧,这里的模式和模式识别的模式含义相同),但如果模板与联通区域去不完全相同,但腐蚀后的结果还是一个点,我们也称为一种“击中”,但不是严格的击中,比如我们的模板是一个直径为10的实心圆形,连通区域是一个直径为10的实心圆和一个直径为1的实心圆的并列排布,其腐蚀结果也是一个点,但其不是完美的击中,要找到完美的击中,必须在模板外面加个边框(或者是背景),这样的结果就不会出现不完美击中,我们可以选模板外一圈黑色的背景(红色背景)作为边框,与上述连通区域做击中操作,很明显。。击不中。。完美击中和不完美的击中都有很多用途,后面的操作中会继续用到。
    上图,看图更明确:

Center

红色表示背景,击中结果是只能有一个像素被点亮

Center 1

一般性的匹配,不关心背景,只寻找一个模式
2. 孔洞填充:最简单的理解,一个白色的圆环,背景为黑,想要的结果是一个白色的实心圆,这就用到了孔洞填充,孔洞填充的一个缺点在于,必须已知一个种子点,从种子点向外膨胀至整个孔洞。
下图中红色为种子点,黑色为背景
种子点和原图
Center 2
填充后结果
Center 3
3. 连通分量提取:与孔洞填充类似,孔洞处理的是被连通分量包围的背景,连通分量提取是提取的连通分量,而非中间的孔洞。所以从公式上看也非常相似。连通分量提取也需要种子点,所以也不是很智能。
四个连通分量,红点为示例种子点
Center 4
4. 凸壳:是为了找到一个凹陷的物体外壳,以不完美命中(腐蚀)为主要操作,通过调整结构元,加上原图,得到相关结果。
原图
Center 5
凸壳添加结果
Center 6
添加的凸壳
Center 7

  1. 细化:细化和骨架有点类似,但涉及到一个是否同伦操作,来贴一下同伦的含义,拓扑学的一个概念,是连通性的一个概念定义,如果变换不改变连通结构,则视为同伦,或者同伦树不变,以下来自百度百科对同伦的解释,wiki的数学有点复杂,不好理解:

Center 8

这个解释的很形象,尤其是终结者的实例,很形象。
上图:
Center 9
原图放大好多倍以后,每个方框是一个像素
结果
Center 10
6. 骨架:使用形态学腐蚀减去结果的开运算的骨架与细化相比,缺少的就是同伦性,即骨架操作得到的并不是原图像的同伦变换,而且这种骨架有些地方并不是一个像素,而是多个像素,使得这种骨架算法应用不是很广泛,但骨架却应用相当广泛
7. 形态学重建:提取原始图像中包含某些特定特征的连通区域,需要一个模板和一些种子点,比如重建开操作提取文字中有长竖“I”这种结构的,先用长竖对图像进行几次腐蚀(命中),使之得到一些点,在膨胀这些点,并以原图作为模板,最终得到包含长竖的字母。

代码

结果

击中:

Center 11
Center 12
Center 13

边界提取:
Center 14
Center 15
Center 16

孔洞填充:
Center 17
Center 18

连通分量:
Center 19
Center 20

凸壳:
Center 21
Center 22

细化:
Center 23
Center 24

骨架:
Center 25
Center 26

形态学重建:

Center 27
Center 28

Share

You may also like...

说点什么

avatar
  Subscribe  
提醒

由于博客移至wordpress,部分公式和代码显示不正常,博主正在努力修改,如发现公式显示错误,请及时在文章下留言,感谢您的帮助,尽请原谅!