数字图像处理第九章 图像分割
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2) 概述
数字图像处理按其技术特征可以分为三层结构:
图像处理;
图像分析; 图像理解与识别;
无论是图像处理、分析、理解与识别,其基础工 作一般都建立在图像分割的基础上; 将图像中有意义的特征或者应用所需要的特征信 息提取出来;
图像分割的最终结果是将图像分解成一些具有某 种特征的单元,称为图像的基元;
9.2阈值
一、单阈值 图像的二值化处理,一幅灰度图像,选择一阈值T,将 图像转换为黑白二值图像,
0 g ( x, y ) = 255
f ( x, y ) T f ( x, y ) T
以上原理用MATLAB实现很简单,其实是将图像中所有 的灰阶值与T相比较,大于T的返回1,小于T的返回0, 我们得到一个只有0和1的矩阵,将其显示为图像,就是 一幅二值图像。可以用函数im2bw来实现上述操作。
L 1
pi
w(k ) (k ) = pi = 1
i =0
L 1
整幅图像的灰度平均值为
T = ipi
i =0
2 T
L 1
2
k k (k ) =
k k
从0~L-1之间改变k,求上式为最大值时的k,既是最大方差阈值, 也称为大津阈值。
最大方差阈值选取法
实现过程: 从T从0~L-1逐一改变,每变一次,对应一个
具有最大 2 K 讨论: * 此方法可操作性强; 的k即是最佳阈值. 2 K
,
* 无论图像有无双峰都可得到较满意结果;
* 局部图像二值化效果更好 * 可推广到双阈值图像分割
实现方法先用graythresh将图像的阈值求出来,得到的是一个介于 0和1之间的数,而后利用im2bw得到阈值分割后的结果。
实际边缘水平剖面图
9.7边缘和导数
f f’
x x
边缘一阶导数 边缘二阶导数
边缘的剖面线
f”
x
从左到右进入和离开
沿着剖面线 斜面的变化点
获得
(1)在灰度级变化的区域一阶导数为正 (2) 在灰度级不变的区域一阶导数为零。 (3) 在边缘与黑色一边相关的跃变点二阶导数为正 (4) 在边缘与亮色一边相关的跃变点二阶导数为负 (5) 沿着斜坡和灰度为常数的区域二阶导数为零。 在图4中导数的符号在从亮到暗的跃变中边缘处取反。
3)图像分割的基本原理
图像分割是将图像划分成若干个互不相交 的小区域的过程,小区域是某种意义下具有共 同属性的像素的连通集合。
• 如不同目标物体所占的图像区域、前景所占的 图像区域等; • 连通是指集合中任意两个点之间都存在着完全 属于该集合的连通路径; • 对于离散图像而言,连通有4连通和8连通之分, 如下图所示。
4连通指的是从区域上一点出发,可通过4个方向,即上、
下、左、右移动的组合,在不越出区域的前提下,到达区域内
的任意像素; 8连通方法指的是从区域上一点出发,可通过左、 右、上、 下、左上、右上、左下、右下这8个方向的移动组合来到达区域 内的任意像素。
(a)
(b)
图
4连通和8连通
图像分割有三种不同的途径: 其一是将各像素划归到相应物体或区域的像素 聚类方法, 即区域法; 其二是通过直接确定区域间的边界来实现分割 的边界方法; 其三是首先检测边缘像素,再将边缘像素连接 起来构成边界形成分割。 在图像分割技术中,最常用的是利用阈值化处 理进行的图像分割。本章主要介绍阈值法和边缘检 测的方法。
-1
-1
0
0
1
1
ic=imread('peppers.tif'); >> px=[-1 0 1;-1 0 1;-1 0 1]; >> icx=filter2(px,ic); >> figure,imshow(icx/255)
p=im2bw(r,0.3);
>> imshow(p)
Im2bw中的参数第一个是图像,第二个level是一个介于 0和1之间的数,此时阈值为T=M*level。 还可以用阈值法获得图像中的隐藏信息。如图9.3所示, 左图看上去是均匀的,但如果我们将阈值设为241则可 以看到,产生右图的效果,有一些本来看不到的隐藏信 息将显现出来。
•
一阶导数可以用于检测图像中的一个点是否是 边缘的点(也就是判断一个点是否在斜坡上)。 • 二阶导数的符号可以用于判断一个边缘像素是 在边缘亮的一边还是暗的一边。 • 二阶导数的附加性质: (1)对图像中的每条边缘二阶导数生成两个极值 (一个不希望得到的特点) (2)一条连接极值点的虚构直线将在边缘中点附近 穿过,该性质对于确定粗边线的中心非常有用。
• 图像分割是进行图像分析的关键步骤, 也是进一步理解图像的基础; • 不同种类的图像,不同的应用要求所需 要提取的特征不相同,特征提取方法也 就不同; • 不存在一种所谓普遍适用的最优方法。
图像分割
设R代表整个图像区域,对R的分割可看作将R分成若 干个满足以下5个条件的非空子集(子区域)R1,R2,…,Rn。 n (1)U Ri = R 。即分割成的所有子区域的并应能构成原 i =1 来的区域R。 (2)对于所有的i和j及i≠j,有 Ri I R j = f 。即分割 成的各子区域互不重叠。 (3)对于i=1,2,…,n;有P(Ri)=TRUE。即分割得到的 属于同一区域的像素应具有某些相同的特性。 (4)对于i≠j,有P(Ri∪Rj)=FALSE。即分割得到的属 于不同区域的像素应具有不同的性质。 (5)对于i=1,2,…,n;Ri是连通的区域。即同一子区 域内的像素应当是连通的。
二、双阈值 我们选择两个阈值T1和T2,
255 g ( x, y ) = 0
T2 f ( x, y ) T1 f ( x, y )其他
[x,map]=imread('spine.tif'); s=ind2gray(x,map); imshow(s),figure,imshow(s>115 & s<125)
t=graythresh(c3)
t=
0.4275
>> ct=im2bw(c3,t); p1=c3(:,1:64); >> imshow(ct) p2=c3(:,65:128);
p3=c3(:,129:192);
p4=c3(:,193:256); g1=im2bw(p1,graythresh(p1));
图象
剖面 一阶 二阶
边缘和导数
阶跃边缘、脉冲边缘、屋顶边缘的灰度 剖面线及其一阶、二阶导数。
边缘点的判定
判断一个点是否为边缘点的条件:该点的灰度变 化(一阶导数)必须比指定的门限大。 一组这样的依据事先定好的连接准则相连的边缘 点就定义为一条边缘。 如果选择使用二阶导数,则边缘点定义为它的二阶 导数的零交叉点。 分割的关键问题是如何将边缘线段组合成更长的 边缘。
t=imread('test1.tif');
imshow(tr>100)
9.4选取合适的阈值
在图像的阈值化处理过程中,选用不同的阈值其处理结果
差异很大;
阈值过大,会提取多余的部分;
阈值过小,又会丢失所需的部分;
因此,阈值的选取非常重要。
大津阈值,把直方图在某一阈值处分割成两组,当被分成
的两组间方差为最大时,决定阈值.设一幅图像的灰度值
9.5自适应阈值
当前景内容和背景内容都具有多个灰阶时,这时不适用全
局阈值,只能够进行局部阈值的操作,自适应阈值就可以
应用在这样的场合。
c=imread('circles.tif'); >> x=ones(256,1)*[1:256]; >> c2=double(c).*(x/2+50)+(1-double(c)).*x/2; >> c3=uint8(255*mat2gray(c2)); >> imshow(c3)
j 对应于x轴方向,i对应于y负轴方向,用简单卷积模板表示:
2. Prewitt梯度算子
M =
2 2 Gx G y
Gx = (a2 ca3 a4 ) (a0 ca7 a6 ) G y = (a0 ca1 a2 ) (a6 ca5 a4 )
c=1
-1 0 1 1 0 -1 1 0 -1 1 0 -1
第九章 图像分割
9.1引言
图像分割就是将一幅图像中的目标物分离出来。
1)先通过看图理解图像分割的概念
– 将图像分解成构成它的部件和对象 – 有选择地定位感兴趣对象在图像中的位置和范围
• 图像分割的基本思路
– 从简到难,逐级分割 – 控制背景环境,降低 分割难度 – 把焦点放在增强感兴 趣对象,缩小不相干 图像成分的干扰上
f
f
T
2 2 f ( x, y ) = mag (f ( x, y )) = (G x G y )1 2
梯度的方向: f ( x, y ) = arctan(G y Gx )
用差分来近似梯度:
Gx = f [i, j 1] f [i, j ] G y = f [i, j ] f [i 1, j ]
图像的边缘 • 图像的边缘对人类的视觉系统具有重要的意义, 它是人类判别物体的重要依据,是图像的最基 本特征。 • 所谓边缘(又称为边沿),是指其周围像素灰度 有阶跃变化或屋顶变化的那些像素的集合。 • 边缘广泛存在于物体与背景之间、物体与物体 之间、基元与基元之间。因此,它是图像分割 所依赖的重要特征。
一阶图象锐化算子
算子运算时是采取类似卷积的方式,将模板在图像上移 动并在每个位置计算对应中心像素的梯度值,所以对 一幅灰度图求梯度所得的结果是一幅梯度图。 1.梯度算子 梯度对应一阶导数,对于一个连续图像函数f(x,y):
梯度矢量定义: f ( x, y ) = G x G y T = x y 梯度的幅度:
imshow(im2bw(x,map,0.45)&~im2bw(x,map,0.5))
这样的方法有点慢,这是因为当处理输入图像时计算比 较复杂。
9.3阈值法的应用
1.去除不关心的细节,突出关心的内容。
2.显示出隐藏的细节
3.对随机的图像背景进行单一化的处理。
r=rand(256)*128+127;
来自百度文库
一条边缘是一组相连的像素集合 这些像素位于两个区域的边界上。 边缘与边界的区别: 边缘是一个 “局部”概念, 一 个区域的边界是一个具有整体性 的概念。 理想边缘模型: 边缘是一组相连的像素集合, 每个像素都处在灰度级跃变的 一个垂直的台阶上 。
理想边缘水平剖面图
边缘特点
(1)光学系统和其他图像采集的不完 善性使得到的边缘是模糊的,边 缘被模拟成具有“类斜面” 。斜 坡部分与边缘的模糊程度成比例. (2)边缘点是包含于斜坡中的任意点, 并且边缘成为一组彼此相连接的 点集. (3) 边缘的“宽度”取决于斜坡的长 度.该长度取决于模糊程度. 模糊的边缘使其变粗而清晰的 边缘使其变得较细.
为0~L-1级,灰度值i的像素数为ni,则像素总数
ni 各值的概率 pi = , 用k将其分成两组C0={0~k}和 N
N = ni
i =0 L 1
C1={k+1~L-1},各组产生的概率如下: C0和C1产生的概率分别为
w(k ) = pi
i =1 k
和
k =
i = k 1
相对于整幅图像来说,这种图像基元更容易被快 速处理。
图像特征 • 图像特征是指图像中可用作标志的属性,它可 以分为统计特征和视觉特征两类。 • 图像的统计特征是指一些人为定义的特征,通 过变换才能得到,如图像的直方图、矩、频谱 等; • 图像的视觉特征是指人的视觉可直接感受到的 自然特征,如区域的亮度、纹理或轮廓等。
应该注意到,这些定义并不能保证在一幅图像中成功地找
到边缘。它们只是给了一个寻找边缘的形式体系。
边缘检测基本步骤 滤波:改善与噪声有关的边缘检测器的性能;一般 滤波器降噪导致了边缘的损失;增强边缘和降低 噪声之间需要折衷. 锐化:将邻域灰度值有显著变化的点突显出来.一 般是通过计算梯度幅值来完成的. 检测:最简单的边缘检测判据是梯度幅值阈值 定位:边缘的位置和方位在子像素分辨率上估计。
fun=inline('im2bw(x,graythresh(x))');
>> c4=blkproc(c3,[256,64],fun); >> imshow(c4)
9.6边缘检测 • 图像的边缘对人的视觉具有重要意义。一般而
言,当人们看一个有边缘的物体时,首先感觉 到的便是边缘。 • 边缘是一个区域的结束,也是另一个区域的开 始.利用边缘可以分割图像。