4.4 改进的最大类间方差法
最大类间方差法(OTSU法)是一种典型的无参数、无监督的自动确定阈值的阈值分割方法。早在1979年,该算法由日本学者大津展之提出,是在最小二乘法的基础上被推导求出的。该方法无须预先知道其他先验知识,具有算法简便、运算速度快、目标和背景分离性较好以及拥有自适应阈值等优点,从而该方法被广泛地应用到图像分割中。
最大类间方差法的基本原理是依据待分割图像中像素的灰度特点,将图像分成目标和背景两种类型;若图像中的目标与背景的类间方差大,则表示目标和背景之间的差别大,因此如果当图像中的背景信息被误判为目标信息,或者图像中的目标信息被错判为背景信息时,该图像中的目标与背景的类间方差就会取很小的值。由于这一特性,该方法只要满足图像中像素的类间方差最大或类内方差最小,就意味着最小的误差,进而可以取得最优阈值,从而对图像进行精确分割。
最大类间方差法的思想如下:
1)一维最大类间方差法的基本原理:假设待分割图像为h,该图像的灰度级共L,nj代表图像中灰度值是j的像素点的个数,N代表图像像素的总个数,其表达式见式(4-20);图像中各像素点的灰度值的概率是pj,其表达式见式(4-21)。接着,该方法自动确定阈值为T,将图像中的像素按照灰度级分为以下两组像素点的集合D0和D1,其表达式分别见式(4-22)和式(4-23);像素点集合D0的概率为M0(或表示为M(T)),其表达式见式(4-24),像素点集合D1的概率为M1,其表达式见式(4-25);D0平均值为μ0,其表达式见式(4-26),D1平均值为μ1,其表达式见式(4-27);整个图像的灰度平均值为μ,其表达式见式(4-28);μ(T)代表当图像的阈值为T时,整个图像灰度值的平均值,其表达式见式(4-29);所有采样的灰度值的平均值为μ′,其表达式见式(4-30);δ2(T)代表两组像素点集合D0与D1间的方差,称其为阈值选取函数,其表达式见式(4-31),并且求解式(4-31)中δ2(T)的最大值,记作maxδ2(T),这个值就是该方法的最佳阈值。
2)二维最大类间方差法的基本原理:假设待分割图像为h(x,y),图像中像素点的坐标是(x,y),图像的灰度级共L,f(x,y)代表k×k邻域的平均灰度值,其表达式见式(4-32);该方法用图像的灰度值h(x,y)和k×k邻域的平均灰度值f(x,y)来表示图像,记作hi,j,hi,j=(h(x,y),f(x,y)),且代表像素点坐标为(i,j),该像素点的灰度值为h(x,y),其邻域的平均灰度值为f(x,y);pi,j代表点(i,j)的频率,其表达式见式(4-33)。
二维最大类间方差法的二维灰度直方图如图4-2所示。图中横、纵坐标代表二维最大类间方差法的分割阈值(s,t),直方图被分为A、B、C、D四个区域;图像中的目标和背景主要集中在B、C这两个区域,而对于A、D这两个区域几乎没有图像的目标和背景,因此在这两个区域目标和背景的分布概率几乎接近于0。像素点集合D0和D1分别代表直方图中的目标和背景,即在直方图中的B、C两个区域,且它们的概率分别为p(D0)、p(D1),其表达式分别见式(4-34)和式(4-35);像素点集合D0和D1的灰度均值矢量分别为μ0、μ1,其表达式分别见式(4-36)和式(4-37);待分割图像总的灰度均值矢量是μT,其表达式见式(4-38);该直方图的离散矩阵为SE,其表达式见式(4-39);离散矩阵SE的迹是tr(SE),且当离散矩阵SE的迹tr(SE)取最大值时,此时就可以取得该图像的最佳阈值(S,T),这个最佳阈值记作tr(SE(S,T)),tr(SE(S,T))的表达式见式(4-40)。
图4-2 二维灰度直方图
由于待分割的多源图像中的目标和背景有时差别不是很大,背景呈不均匀分布,此时采用最大类间方差法分割多源图像,不仅使多源图像的分割阈值难以把握,而且还会造成图像的边缘信息残缺,因此,针对此缺陷本章对最大类间方差法进行了改进。由于大量的实验已证明,图像经过梯度运算转为梯度图像后可以保存图像的边界信息,同时去除图像中的局部极小值及干扰噪声,从而使得图像的目标和背景更为突出,使得图像的直方图具有更加明显的双峰,因而获得最优阈值,并且结合了梯度特征的阈值分割能够使多源图像取得较好的分割效果,因此本章使用梯度算法与最大类间方差法结合的方法来对多源图像进行分割。
结合梯度特征的最大类间方差法的步骤:首先将多源图像梯度化获取梯度信息,保存图像完整的边缘信息,从而为准确寻找最优阈值奠定基础;然后再使用最大类间方差法对多源图像进行分割。图像梯度化通常使用一阶差分表示梯度,且常用的计算一阶差分的方法包含:Prewitt边缘检测算子、Roberts边缘检测算子以及Sobel边缘检测算子等;计算梯度值通常使用图像的卷积和图像小区域模板,Kirsch边缘检测算子是利用卷积和图像小区域模板计算梯度值的典型方法之一。
Prewitt边缘检测算子计算图像h(x,y)对x、y的一阶差分,其中h0,h1,…,h9是以h5为中心的各个像素点,则x、y的一阶差分分别表示为Gx、Gy,表达式如下:
Gx=(h7+h8+h9)-(h1+h2+h3)(4-41)
Gy=(h3+h6+h9)-(h1+h4+h7)(4-42)
Roberts边缘检测算子计算图像h(x,y)对x、y的一阶差分,其中h0,h1,…,h9是以h5为中心的各个像素点,则x、y的一阶差分分别表示为Gx、Gy,表达式如下:
Gx=h9-h5(4-43)
Gy=h8-h6(4-44)
Sobel边缘检测算子计算图像h(x,y)对x、y的一阶差分,其中h0,h1,…,h9是以h5为中心的各个像素点,则x、y的一阶差分分别表示为Gx、Gy,表达式如下:
Gx=(h7+2h8+h9)-(h1+2h2+h3)(4-45)
Gy=(h3+2h6+h9)-(h1+2h4+h7)(4-46)
Kirsch边缘检测算子由八个代表八个方向的模板组成算子,利用该算子进行卷积,即可得到八个方向中的最大值及其该方向所对应的方向数值,从而得到由边缘方向及强度表示的具有梯度特征的图像。
若图像为h(x,y),且该图像的灰度取值范围是G∈(0,L-1),则图像h(x,y)的梯度为Δh(x,y),其表达式见式(4-47);Δh(x,y)的幅度值为mag(h(x,y)),其表达式见式(4-48);Δh(x,y)的相位为θ(x,y),其表达式见式(4-49)。
本章采用形态学开闭运算对多源图像梯度化,是因为形态学梯度运算具有非线性,与Prewitt边缘检测算子、Roberts边缘检测算子以及Sobel边缘检测算子等常用的梯度化方法相比,更能增强图形中极值的对比度,使图像中的目标与背景的对比度增加,从而使目标和背景的区分度变得明显;其次,该方法也具有良好的保持图像中重要轮廓区域的效果,从而保存了图像完整的边缘信息,为准确寻找最佳阈值打下良好的基础。图4-3为原测试的多源图像,图4-4为最大类间方差法的分割图像,图4-5为改进的最大类间方差法即结合梯度特征的最大类间方差法的分割图像。
图4-3 测试图
图4-4 最大类间方差法分割图
图4-5 改进的最大类间方差法分割图
通过对比图4-4与图4-5,可知直接采用最大类间方差法,由于多源图像中的背景有时比较复杂,背景呈不均匀分布,使得多源图像的分割阈值难以寻找到,甚至出现图4-4中大量的与目标无关的极小值区域,分割效果远差于图4-5的结合梯度特征的最大类间方差法的分割效果。
因此,本章采用结合梯度特征的最大类间方差法对分水岭算法进行改进,形成结合梯度特征的最大类间方差法的分水岭算法,从而得到了具有一定意义的边界特征的分割图像,解决了传统分水岭算法中虚假的局部极小值过多与过分割问题,而且使分水岭算法中的分水点较准确地定位,因此改善了传统分水岭算法中易产生过分割的缺陷。选取图像去噪、平滑、滤波预处理后的图像作为输入图像,对其采用结合梯度特征的最大类间方差法进行分割,其分割结果分别如图4-6和图4-7所示,其中图4-6为可见光图像阈值分割图像,图4-7为红外图像阈值分割图像;之后再对阈值分割后的图像进行分水岭分割,其分割结果分别如图4-8和图4-9所示,其中图4-8为可见光图像结合阈值算法的分水岭分割图像,图4-9为红外图像结合阈值算法的分水岭分割图像。
图4-6 可见光图像阈值分割图像
上述实验结果可以看出,结合阈值算法的分水岭算法比只使用分水岭算法的分割效果要好,该算法消除了易造成过多区域的极小值,使分水岭算法的分水点较准确地定位,同时去除了大部分的复杂背景,并且也得到了具有一定意义的边界特征的分割图像,从而改善了传统分水岭算法中易产生过分割的缺陷。
图4-7 红外图像阈值分割图像
图4-8 可见光图像结合阈值分割算法的分水岭分割图像
图4-9 红外图像结合阈值分割算法的分水岭分割图像