图像边缘的检测与提取
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3.4 基于数学形态学的图像边缘提取研究。
数学形态学是数字图像处理领域中的一门新兴学科,它在形状识别、边缘检测、纹理分析、图像恢复和增强等领域得到了广泛应用。
形态学图像处理是以几何学为基础的,它着重研究图像的集合结构。
它的基本思想是利用一个结构元素去探测一个图像,看是否能够将这个结构元素很好地填放在图像的内部,同时验证填放结构元素的方法是否有效[1]。
运用数学形态学检测图像边缘信息,取决于结构元素的选取和算法的构造。
在不同的应用场合,结构元素的选择及其相应的处理算法是不一样的,对不同的目标图像应该设计不同的结构元素和不同的处理算法。
但是对于复杂的图像,其边缘特征信息很难通过一个结构元素来提取,这也是形态学图像处理中的一个难点。
目前比较行之有效的方法就是将形态学运算与集合运算结合起来,采用多个结构元素分别对图像进行变换,然后将变换后的图像合并起来,即多结构元素形态学变换。
本文运用数学形态学的理论和方法,从多结构元素形态学变换的角度出发,提出了一种多结构元素的选取方案,并采取适当的处理算法进行图像边缘检测。
3.4.1 数学形态学的运算
数学形态的基本运算是腐蚀运算和膨胀运算。
下面首先介绍一下腐蚀运算和膨胀运算的定义。
设A 是原始图像,B 是“结构元素”。
腐蚀运算定义为:
E(A)= AΘB={(x, y) |Bxy ⊆ A} (1)
也就是说,由B 对 A 腐蚀所产生的二值图像E(A)是这样的点(x,y)的集合:
如果B的原点移到(x,y)点,那么B 将完全包含于A 中。
膨胀运算定义为:
D(A) =A⊕B={(x, y) |Bxy A≠Φ} (2)
也就是说,B 对A 膨胀产生的二值图像D(A)是由这样的点(x,y)组合的集合,
如图B 的原点位移到(x,y),那么它与A 的交集非空。
在此还要介绍一下数学形态学中的2 种基本操作:补操作和并操作,其代数表达式如下所述。
目标图像--A的补操作定义为:
-
-
A={(x, y) | (x, y)∈W ∧ (x, y)∉ A} (3)
其中,符号∧表示与逻辑,A 的补图像--A实际上描述的是图像A 的背景。
图像A 与图像B 的并操作定义为:
A U
B = {(x, y) | (x, y)∈ A∨ (x, y)∈ B} (4)
其中,符号∪表示并操作,∨表示或逻辑。
在数学形态学中,任何一种复杂的形态变换都可以用上述的基本运算和基本操作来表达。
如:腐蚀运算可以用膨胀运算的补操作形式来定义和表达。
腐蚀运算定义的另一种表达形式: E (A ) = A ΘB =B A ⊕
(5)
除此之外,还可以组成形态学中的另5 种运算:开、闭、薄化、厚化、即离。
由此产生了在图像分析中的各种应用。
3.4.2 结构元素分析
结构元素是形态学图像处理中的一个关键点,不同结构元素的选择导致运算对不同几何信息的分析和处理,同时结构元素也决定了变换所使用的数据使用量,因此对结构元素的分析是图像边缘检测的重要内容。
一般来讲,结构元素的尺寸大小和结构形状都会影响图像边缘检效果。
小尺寸的结构元素去噪声能力弱,但能检测到好的边缘细节,大尺寸的结构元素去噪声能力强,但所检测的边缘较粗[3]。
不仅如此,不同形状的结构元素对不同图像边缘的感应能力不同[4 ]。
对于复杂图像的边缘检测,如果只采用一个结构元素,通常不能产生满意的结果。
而采用多个结构元素分别对图像进行变换,然后将变换后的图像合并起来,即多结构元素形态学变换,是解决此问题的一个有效方法。
在本文中选取如图 1 所示的5 种结构元素作边缘检测。
图1 结构元素
B 1 = ⎥⎥⎥
⎦
⎤
⎢⎢⎢⎣⎡0100.10
010 B 2 = ⎥⎥⎥
⎦⎤
⎢⎢⎢⎣⎡000
1.11000
B 3 = ⎥⎥⎥⎦
⎤
⎢⎢⎢⎣⎡00
1.11010
B 4 = ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡10
0.10
001 B 5 = ⎥⎥⎥⎦
⎤⎢⎢
⎢⎣⎡00
1
0.10100
其中,带下标 “.”表示原点位置。
3.4.3 边缘检测算法
对不同的目标图像应根据图像的特点和结构元素的选取,有针对性地采取不同的处理算法。
在此首先介绍一下二值排序滤波操作。
图像A 与结构元B 的二值排序滤波操作可表示为:
A ∏
P B = {{x ,y ) ∈| A ⋂B
a
| ≥P (6)
(P 表示二值排序滤波的阈值,B a表示B被移动了a 后的集合。
)
⋂若P =| B |时, A ∏P B 表示二值腐蚀操作AΘB;
若P =1 时, A ∏P B 表示二值膨胀操作A⊕B;
若1 < P <| B |时,A ∏P B 表示通常的二值排序滤波操作。
通常也把该操作称为形态排序滤波操作。
在二值图像代数中,图像A 的边缘检测过程可表示为:
f (A) = (A⊕ B) ⋂( B
AΘ) (7)
在此采用排序边缘检测算法[,将式(7)中的膨胀操作和腐蚀操作分别用二值排序滤波代替,得到排序边缘检测算法表达式为
f (A) =( A ∏
P B ) ⋂( A ∏
q
B) (8)
其中,p 和q 分别为前景阈值和背景阈值。
3.4.4 边缘检测的方法和步骤
由于选取了5 种结构元素对目标图像作边缘检测,不同的结构元素对不同形状的边缘具有不同的适应性。
为了使边缘具有更好的细节和平滑性,可将各结构元素的边缘检测结果求并,从而得到最终边缘图像输出。
即 F (A)=
5
i f
i
( A ) i = 1,2…,5 (9)
其中,f
i
( A ) 为各结构元素图像边缘检测结果。
根据式(8)和式(9)确定图像边缘检测的方法和步骤:
(1)选取适当阈值p 和q ;
(2)执行二值排序滤波操作,根据式(8)求得各结构元素边缘检测结果f
i
( A );
(3)根据式(9)对边缘检测结果f
i
( A );求并,得到最终边缘图像输出。
3.4.5形态学用于图像边缘检测处理的结果
上述算法用于一幅灰度图像的边缘检测, 其结果如图2 所示。
其中图2 (a) 左边为原始图像, 图2(a) 右边为本文方法的边缘检测结果, 所用的结构元素为3×3 正方形。
为了进行检测效果的比较, 同时给出了用传统的L ap lace 算子和Sobel 算子对同一幅图像处理的结果如图2 (b) 和图2 (c)所示。
由图2 可以看出, 用形态学边缘检测方法所得的结果图像, 在边缘的连续性及各向同性方面都优于传统方法。
此外, 还可以看到: 形态学边缘检测方法对图像细节和边缘定位也有相当好的效果。
所检出的边缘宽度与所使用的结构元素形状和大小密切相关, 当结构元素的尺寸(刻度数n) 增大时, 检出的边缘宽度将随之增大。
因而, 合理地调节结构元素的尺寸将能有效地去除噪声并能很好地保护细节。