图像分割技术
1 图像分割定义和方法分类
图像分割就是指把图像分成各具特性的区域并提取出感兴趣目标的技术和过程。这里特性可以是灰度、颜色、纹理等,目标可以对应单个区域,也可以对应多个区域。图像分割多年来一直得到人们的高度重视,至今已提出了上千种各种类型的分割算法,而且近年来每年都有上百篇有关研究报道发表。
首先,对灰度图像的分割常可基于像素灰度值的2个性质:不连续性和相似性。区域内部的像素一般具有灰度相似性,而在区域之问的边界上般具有灰度不连续性。所以分割算法可据此分为利用区域间灰度不连续性的基于边界的算法和利用区域内灰度相似性的基于区域的算法。其次,根据分割过程中处理策略的不同,分割算法又可分为并行算法和串行算法。在并行算法中,所有判断和决定都可独立地和同时地做出,而在串行算法中,早期处理的结果可被其后的处理过橾所利用。一般串行算法所需计算时间常比并行算法要长,但抗噪声能力也常较强。分割算法可分成4类:①并行边界类;②串行边界类;③并行区域类;④串行区域类。
2 边缘检测
边缘检测是所有基于边界的分割方法的第一步。两个具有不同灰度值的相邻区域之总存在边缘。边缘是灰度值不连续的结果,这种不连续常可利用求导数方便地检测到般常用一阶和二阶导数来检测边缘。
对图像中边缘的检测可借助空域微分算子通过卷积完成。实际上数字图像中求导数是利用差分近似微分来进行的。下面介绍几种简单的空域微分算子。
(1)梯度算子,梯度对应一阶导数,梯度算子是一阶导数算子,比如Roberts算子,Prewitt算子,Sobel算子。
(2)拉普拉斯算子,
拉普拉斯( Laplacian)算子是1种二阶导数算子, 在数字图像中,对拉普拉斯值的计算也可借助各种模板实现。这里对模板的基本要求是对应中心像素的系数应是正的,而对应中心像素邻近像素的系数应是负的,且它们的和应该是零。拉普拉斯算子是1种二阶导数算子,所以对图像中的噪声相当敏感。另外它常产生双像素宽的边缘,精度较低,且也不能提供边缘方向的信息。由于以上原因,拉普拉斯算子主要用于已知边缘像素后确定该像素是在图像的暗区或明区一边。
3 轮廓跟踪和图搜索
实际图像分割中,在检测出边缘后还需将它们连接起来构成闭合的轮廓。由于用差分算子并行地检测边缘对噪声比较敏感,所以实际中常采用先检测可能的边缘点再串行跟连接成闭合轮廓的方法。由于串行方法可以在跟踪过程中充分利用先前获取的信息,常可取得较好的效果。另外,也可采用将边缘检测和轮廓跟踪互相结合顺序进行的方法。
轮廓跟踪( boundary tracking)也称边缘点链接( edge point linking),是由(梯度图)一个边缘点出发,依次搜索并连接相邻边缘点从而逐步检测出轮廓的方法。为了消除噪声的影响,保持轮廓的光滑性(也可称刚性, rigidness),在搜索时每确定一个新的轮廊点都要考虑先前已得到的轮廓点。而为了克服噪声造成的边缘点之间的不连通,对梯度廊点都要考虑先前已得到的轮廓点。而为了克服噪声造成的边缘点之间的不连通,对梯度图要充分保持其已有的信息(常不能再取阈值去除低梯度像素)。一般来说轮廓跟踪包括三个步骤:
(1)确定作为搜索起点的边缘点(根据算法不同,可以是一个点或多个点),起点的选择很重要,整个算法对此的依赖很大;
(2)确定和采取一种合适的数据结构和搜索机理,在已发现的轮廓点基础上确定新的轮廓点,这里要注意研究先前的结果对选择下一个检测像素和下个结果的影响;
(3)确定搜索终结的准则或终止条件(如封闭轮廓则回到起点),并在满足条件时停止进程,结束搜索。
另一种比较复杂,计算量也较大,但在图像受噪声影响较大讨效果仍可比较好的方法是图搜索法。它借助状态空间搜索来寻求全局最优的轮廓。具体是将轮廓点和轮廓段用图( graph)结构表示,通过在图中进行搜索对应最小代价的通道来寻找闭合轮廓。
4 阈值分割
取阈值是最常见的并行的直接检测区域的分割方法,其他同类方法如像素特征空间分类可看做是取阈值技术的推广。假设图像由具有单峰灰度分布的目标和背景组成,在目标或背景内部的相邻像素间的灰度值是高度相关的,但在目标和背景交界处两边的像素在灰度值上有很大的差别。如果1幅图像满足这些条件,它的灰度直方图基本上可看做是由分别对应目标和背景的2个单峰直方图混合而成。此时如果这2个分布大小(数量)接近且均值相距足够远,而且均方差也足够小,则直方图应是双峰的。对这类图像常可用取阈值方法来较好地分割。
5 基于变换直方图选取阈值
在实际应用图像常受到噪声等的影响而使直方图中原本分离的峰之间的谷被填充,使得谷的检测很困难。为解决这类问题可以利用一些像素邻域的局部性质。比如直方图变换,灰度-梯度散射图。
6 空间聚类
利用特征空间聚类的方法进行图像分割可看做是对阈值分割概念的推广。它将图像空间中的元素按照从它们测得的特征值用对应的特征空间点表示,通过将特征空间的点聚集成对应不同区域的类团,然后再将它们划分开,并映射回原图像空间以得到分割的结果。
在利用直方图的阈值分割中,取像素灰度为特征,用灰度直方图作为特征空间,对特征空间的划分利用灰度阙值进行。在利用灰度-梯度散射图分割的方法中,取像灰度和梯度为特征,用散射图作为特征空间,对特征空间的划分利用灰度阈值和梯度阈值进行。与取阈值分割类似,聚类方法也是一种全局的方法,比仅基于边缘检测的方法更抗噪声。但特征空间的聚类有时也常会导致产生图像空间不连通的分割区域,这也是因为没有利用图像像素空间分布的信息。
聚类的方法很多,下面介绍几种常用的聚类方法。
(1)k均值聚类
将一个特征空间分成K个聚类的一种常用方法是K-均值法。K均值聚类具体算法不再详述。运用 K-均值法时理论上并未设类的数目已知,实际中常使用试探法来确定 K。为此需要测定聚类品质(quality),常用的判别准则多基于分割后类内和类间特征值的散布图,要求类内接近而类间区别大。可以先采用不同的 K 值进行聚类,根据聚类品质确定最后的类别数。
(2)ISODATA聚类
ISODATA聚类方法是在K-均值算法上发展起来的。它是一种非分层的聚类方法,其主要步骤如下:
(1)设定N个聚类中心位置的初始值
(2)对每个特征点求取离其最近的聚类中心位置,通过赋值把特征空间分成N个区域;
(3)分别计算属于各聚类模式的平均值;
(4)将最初的聚类中心位置与新的平均值比较,如果相问则停止;如果不同,则返回
步骤(2)继续进行。
理论上讲 ISODATA算法也需要预先知道聚类的数目,但实际中常根据经验先取稍大点的值,然后通过合并距离较近的聚类以得到最后的聚类数目。
7 区域生长分割算法
串行区域分割技术指采用串行处理的策略通过对目标区域的直接检测来实现图像分割的技术。串行分割方法的特点是将整个处理过程分解为顺序的多个步骤逐次进行,其中对后续步骤的处理要根据对前面已完成步骤的处理结果进行判断而确定。这里判断是要据一定的准则来进行的。一般说来如果准则是基于图像灰度特性的,则该方法可用于灰度图像的分割,如果准则是基于图像的其他特性(如纹理)的,则该方法也可用于相应图像的分割。
串行区域分割中常利用图像多分辨率的表达结构,如金字塔结构。基于区域的串行分割技术有两种基本形式,一种是从单个像素出发,逐渐合并以形成所需的分割区域,称为区域生长。另一种是从全图出发,逐渐分裂切割至所需的分割区域,这两种方法可以结合使用。
区域生长的基本思想是将具有相似性质的像素结合起来构成区域。具体先对每个需要分割的区域找一个种子像素作为生长的起点,然后将种子像素周围邻域中与种子像素有相同或相似性质的像素(根据某种事先确定的生长或相似准则来判定)合并到种子像素所在的区域中。将这些新像素当做新的种子像素继续进行上面的过程,直到再没有满足条件的像素可被包括进来。这样一个区域就长成了。由此可知,在实际应用区域生长法时需要解决3个问题:
(1)选择或确定一组能正确代表所需区域的种子像素;
(2)确定在生长过程中能将相邻像素包括进来的准则;
(3)制定让生长过程停止的条件或规则。
种子像素的选取常可借助具体问题的特点进行。如在军用红外图像中检测目标时由于一般情况下目标辐射较大,所以可选用图中最亮的像素作为种子像素。要是对具体问题没有先验知识,则常可借助生长所用准则对每个像素进行相应计算。如果计算结果呈现聚类的情况则接近聚类重心的像素可取为种子像素。
区域生长的一个关键是选择合适的生长或相似准则,生长准则的选取不仅依赖于具体问题本身,也和所用图像数据的种类有关。生长准则可根据不同原则制定,而使用不同的生长准则会影响区域生长的过程。基于区域灰度差的方法主要有如下步骤:
(1)对图像进行逐行扫描,找出尚没有归属的像素;
(2)以该像素为中心检査它的邻域像素,即将邻域中的像素逐个与它比较,如果灰度差小于预先确定的阈值,将它们合并;
(3)以新合并的像素为中心,返回到步骤(2),检査新像素的邻域,直到区域不能进步扩张;
(4)返回到步骤(1),继续扫描直到不能发现没有归属的像素,则结束整个生长过程。
8 彩色图像分割
对颜色的感受是人类对电磁辐射中可见部分里不同频率知觉的体现。随着技术的进步,彩色图像使用得越来越多,彩色图像的分割在最近几年也越来越引起人们的重视。
在许多实际应用中,可对彩色图像的各个分量进行适当的组合转化为灰度图像,然后可用对灰度图像的分割算法进行分割。下面仅考虑专门用于彩色图像分割的方法。要分割一幅彩色图像,首先要选好合适的彩色空间;其次要采用适合于此空间的分割策略和方法。
(1)分割所用的彩色空间
表达颜色的彩色空间有许多种,它们常是根据不同的应用目的提出的。下面围绕图像分割,介绍几种常用的彩色空间和它们的特点。
最常见的彩色空间是红绿蓝( red green blue,RGB)空间,它是一种矩形直角空间结构的模型,是通过对颜色进行加运算完成颜色综合的彩色系统的基础。它用R、G、B个基本分量的值来表示颜色(三分量之间常有很高的相关性),它是面向硬件设备的(如CRT),物理意义明确但缺乏直感。
通过对不同类型图像的分析,有人经过大量试验提出可用由R、G、B经过线性变换得到的3个正交彩色特征。
另一种常用的彩色空间是HSI( hue saturation intensity)空问。HSI彩色空间的表示比较接近人眼的视觉生理特性,人眼对H、S、I变化的区分能力要比对R、G、B变化的区分能力强。另外在HSI空间中彩色图像的每一个均匀性彩色区域都对应一个相对一致的色调(H),这说明色调能够被用来进行独立于阴影的彩色区域的分割。
(2)分割策略
测量空间聚类法是分割彩色图像常用的方法。彩色图像在各个空间均可看做由3个分量构成,所以分割彩色图像的1种方法是建立一个“3-D直方图”,它可用一个3-D数组表示。这个3-D数组中的每个元素代表图像中具有给定3个分量值的像素的个数。阈值分割的概念可以扩展为在3-D空间搜索像素的聚类,并根据聚类来分割图像。
彩色图像可以分步分割。有一种分两步的彩色图像分割算法,第一步借助取阈值方法进行粗略分割将图像转化为若干个区域,第一步利用(模糊)均值聚类法将第一步剩下的像素进一步分类。这种方法可看做是由粗到细进行的,先用取阈值方法是为了减少运用模糊均值聚类所需的计算量。