Dilation and erosion intro
膨胀与腐蚀法——数学形态学算子
Note at the beginning:
- 为什么学习这个方法:这个方法是基于2019 Summer Session的学习所需
- 资源来自何处:谷歌搜索到的资源Chapter 6 Mathematical morphology且只学习了部分内容
- 其它参考链接:
综述
Studied on 1st, July, posted on 3rd.
【数学形态学
】
数学形态学是研究形态的学科,用集合的方法来描述某种形态。
它被广泛应用在图像处理上,有两点需要注意:
注意它的算子,尤其是膨胀和腐蚀一般都不是线性的。
它研究的图像上的元素需要满足可比较的序关系,这样才能进行相关的运算。
【The Maxima And Minima Image
】
“maximum image
” 和 “minimum image
”是关于两张图片的定义,即新的图片在某像素点位置的值分别取最大和最小。
其中$x$即为对应像素点的位置。
在提及膨胀和腐蚀算子之前先要声明它们属于数学形态学算子。
【数学形态学算子
】
它描述的是一张图像与一个结构元素之间的关系。结构元素一般比图像小很多,一般是十字形,方形或者圆形的二值区域,也一般取对称的区域。
声明:这篇文章使用资源中的约定,即在提及二值图像的时候,黑色像素指的是目标像素,灰度为1;而白色像素指的是背景像素,灰度为0。
基本算子
【互补算子
】
互补沿用集合论的符号$c$,假设一张图片$X$在像素$(x,y)$位置上的函数值为$f(x,y)$,其范围$range=[L,\cdots,M]$。则$X^c$的对应位置满足$f^c(x,y) = L+M-f(x,y)$。
一个最简单的例子是二值图像黑白颠倒。
【膨胀算子
】
一张二值图像$X$与一个结构元素$S$的闵科夫斯基和$\oplus$就是一个膨胀操作:
资源里给的例子算得很清楚,是根据位置操作的。
我已经看懂了。但是很容易弄混,建议忘了复习一下。
【腐蚀算子
】
它是膨胀算子的对偶算子。一张二值图像$X$与一个结构元素$S$的闵科夫斯基差$\ominus$是一个腐蚀操作:
资源里给的也是根据位置操作的。
虽然资源里没有说,但是我觉得即使原图像不是二值图像也可以用。
通俗地说:
把图像看作食物,膨胀法相当于在边缘吐出食物,图像会扩大一点点;腐蚀法相当于在边缘吃掉食物,所以图像会缩小一点点。
【算子的对偶
】
对偶即dual
,两个算子对偶要满足以下式子:
$\{\forall f,\ subject\ to\ \varphi_1(f^c)=(\varphi_2(f))^c\}$
资源里举了两个例子,这里不写,知道这个式子成立即可。
组合算子
组合算子只介绍膨胀和腐蚀算子的组合,即开闭运算。
【开运算
】
开运算Opening
定义为$\gamma(f) = \delta(\epsilon(f))$。
先腐蚀再膨胀,就是开运算。开运算能消除小的object
即孤立点。
【闭运算
】
闭运算Closing
定义为$\varphi(f) = \epsilon(\delta(f))$
先膨胀再腐蚀,就是闭运算。同理,闭运算能填充图像中的小洞。
代码研究
将在ipynb
文件中进行研究。
代码及分水岭算法均在3rd, July晚上完成,但尚未上传,计划日后一并上传。