基于改进Lazy Snapping算法的红外图像分割方法研究

2021-04-29 06:27李梦天余松林杨洪杰
红外技术 2021年4期
关键词:像素点灰度均值

张 莲,李梦天,余松林,宫 宇,杨洪杰

(重庆理工大学 电气与电子工程学院,重庆 400054)

0 引言

图像分割指将图像分成各具特性的区域并提取出感兴趣目标的技术和过程,它是由图像处理到图像分析的关键步骤,是一种基本的计算机视觉技术,也是进行特征提取和图像识别的基础[1]。常用的图像分割方式主要基于阈值、边缘、区域、聚类等进行分割。

自然界中一切物体都会向外辐射能量,通过红外技术可以完成辐射能量的收集形成图像,与可见光图像相比,红外图像具有信噪比低、图像模糊且边缘不清晰等特点,因此对红外图像的分割方法一直有着较高的要求[2]。

为了更好地完成红外图像的分割,文献[3]提出了一种基于PCNN(pulse coupled neural network)算法和类内绝对差法结合的分割方法,优化了分割参数和阈值的选择。文献[4]提出了一种改进的蝙蝠算法,通过空间信息熵快速搜索最优阈值进行分割,提升了分割效果和效率。文献[5]提出了一种基于粒子群优化Niblack的分割方法,能够快速搜索Niblack 矩阵中最优分割阈值,完成目标区域的提取。但是上述研究在红外图像分割中没能改善过分割以及欠分割现象,使图像的边缘细节特征模糊甚至遗失,导致分割结果不够理想。相比之下,Lazy Snapping算法能实现红外图像的交互式半自动分割,用户通过交互手段设置图像的前景和背景就能完成图像的分割,近年来受到国内外研究人员的高度关注[6]。

Lazy Snapping算法是一种基于图论的分割算法,对于存在噪声以及边界模糊不清的红外图像也能保证分割质量,完成特征的提取。但分割算法需要通过交互手段手动设置前景背景点,对种子点的选择敏感,若种子点选择的数目位置不恰当会导致分割效果明显下降,算法的特性决定了对用户的经验有一定要求,且难以在实时性要求较高的场合使用。模糊C均值聚类算法(fuzzy c-means,FCM)虽然分割效果不如Lazy Snapping算法,但能较好地将红外图像目标大致分割出来,针对Lazy Snapping算法存在的问题,本文采用快速模糊C均值聚类算法对红外图像进行预分割,然后采用形态学运算为图割算法提供种子点,实现了红外图像的自动分割[7]。

1 图割算法及其改进

1.1 图割理论

图论是数学领域的分析方法,将图像分为顶点和边进行研究。图割算法是基于图论的图像分割方法,通过图中节点替换图像的像素,有关系的节点用边联系起来,完成图像到图的转换过程,待分割的图像用一个无向图G=(V,E)表示,V和E分别表示顶点和边的集合[8]。先将待分割的图像转化为图,图像的像素转化为图中的顶点,有关系的顶点用边连接起来,每条边定义一个非负的权重,权重越大,表示两个节点之间联系越紧密,相似度就越高[9]。图的顶点分为由像素转化的普通顶点和终端顶点,边分为普通顶点之间的连线n-links和普通顶点与终端顶点之间的连线t-links[10]。

在图割理论中,算法的目标是让能量函数取值最小,对应的分割情况是在目标与背景的边界进行分割,图像分割消耗的能量可以表示为:

式中:E(f)表示的是权值,即分割消耗的能量;R(f)和B(f)分别表示区域项和边界项;λ表示区域项和边界项的重要因子,决定它们在E(f)所占权重的大小,当λ等于0时,说明E(f)只与区域项有关[11]。区域项R(f)代表区域的属性,将区域特征转换成数据表示出来,因此也被称为数据项,用来评价所有像素标记的情况,表示为:

式中:Dp(fp)表示将像素p标记为fp需要加上的惩罚值,通过像素p的灰度和给定目标的前景灰度直方图可以得出Dp(fp)能量项的权值,计算中将初始定义的种子点作为目标和背景的采样,计算公式如下:

式中:Ip表示像素的亮度,通过区域项能量的计算公式可以看出,当像素p属于目标像素时,将p标记为目标的惩罚值小,同理当像素p属于背景像素时,将p标记为背景的惩罚值小[12]。

边界项B(f)又称边界平滑项,代表边界的属性,用来评价f的非分段光滑程度,表示为:

式中:N表示4 邻域或者8 邻域系统。其对应Potts模型的边界项可以表示为:

T(fp≠fq)的计算方式为:

ωpq通常由以下公式得到:

式中:Vpq(fp、fq)表示像素p和像素q不连续的惩罚值;Ip、Iq表示像素p、q的亮度;dist(p,q)表示像素p、q之间的距离;δ表示噪声干扰。通过边界项能量的计算公式可以看出,如果两邻域像素亮度相近,那么它同样属于目标或者同样属于背景的可能性就大,此时被分割的可能性就小;同理,如果邻域像素亮度相差大,此时被分割的可能性就大[13]。

1.2 Lazy Snapping算法

Lazy Snapping算法是2004年由Yin Li[14]提出的图割算法的改进,该算法保留了经典图割算法在区域项和边界项的设定,不过在分割时将区域项中需要计算的像素点用像素块来代替。Lazy Snapping算法的能量计算公式如下:

式中:E1(xi)表示区域项像素块的能量;E2(xi,xj)表示边界项相邻像素块的能量;λ表示边界项的权重,λ取较高值能使图像分割后区域更加整体,取较低值能使图像分割后保留更多的细节信息。其中区域项的计算公式如下:

式(10)表示区域项能量的计算方式,其中F代表前景(目标)点的像素,B代表背景点的像素,U代表所有不受约束点的像素。Lazy Snapping算法先把像素点转换成像素块,然后将前景像素块标记为1,背景像素块标记为0,diF表示像素块i到前景像素块的最短距离,表示像素块到背景像素点的最短距离[15]。Lazy Snapping算法区域项计算方式与图割算法的区别在于Lazy Snapping算法能量计算方式更直观,能量函数取值极端化,若像素点属性标记错误会出现极大的误差。边界项的计算公式如下:

式中:C(i)、C(j)表示相邻像素点i、j的亮度;ε为调整参数(默认为1),当像素i和像素j亮度越相近,能量函数就越大,反之能量函数就越小,即i、j亮度越相近,分割就越困难。Lazy Snapping算法边界项的计算方式与图割算法相近。

Lazy Snapping算法跟图割算法能量计算原理相似,不过Lazy Snapping算法是交互式分割算法,需要用户设置目标和背景,没能实现图像的自动分割,难以完成实时性强的分割任务。

2 基于快速模糊C均值聚类的Lazy Snapping算法

2.1 均值滤波去噪算法

在红外图像的传输过程中,由于内部和外部种种因素,图像信息必然会受到或强或弱的噪声干扰,噪声污染会损坏图像的质量,覆盖图像的主要特征,噪声的影响会直接导致图像处理后续工作的信息处理出现偏差,因此需要首先完成图像的去噪工作。

均值滤波是一种空间域去噪算法,使用时先将图像转为二维矩阵,采用线性方法,使用邻近像素的灰度值平均整个窗口范围的像素值。设待处理的图像为u(i,j),像素为N×N,则均值滤波算法的计算方式如下[16]:

式中:i,j=0,1,2,…,N-1,S表示像素点(i,j)邻域所有像素点的集合,共有M个。均值滤波去噪通过把噪声密集处灰度的突变平均到周围所有像素点,达到图像平滑的效果,即使用原图像u(i,j)周围像素点的灰度均值组成新图像v(i,j)。均值滤波去噪计算速度快,当高斯噪声分布越平滑时去噪效果越好。

2.2 快速模糊C均值聚类算法

FCM是一种经典的图像分割算法,图像中像素点的个数为N,则目标函数为:

式中:V={v1,v2ΛvC}代表聚类中心的集合;xk(1≤k≤N)表示图像第k个像素点;U={uik}表示C×V维的模糊分类矩阵;uik表示像素xk属于vi的隶属程度;m表示加权指数,直接影响像素的模糊程度和聚类结果。

由于图像的像素数量很多,使用C均值聚类处理图像时计算量大,迭代次数多,考虑到图像的灰度级数为0~255,明显低于像素数量,所以采用图像灰度级代替像素进行聚类可以明显减少迭代的计算量和次数[17]。将图像进行灰度化处理后,统计灰度值得到灰度直方图Hist,用Hist(j)表示灰度值为j的像素数目,其中

文献[18-20]提出了一种改进的快速模糊C均值聚类(fast fuzzy c-means,FFCM)算法,在图像预分割前先对灰度直方图Hist 进行高斯曲线拟合,选出其中的极大值点作为图像的初始聚类中心,从而加快FCM的计算速度。改进的快速模糊C均值聚类(FFCM)算法的目标函数:

改进的FFCM算法计算流程如下:

①设置迭代次数T,聚类中心c的数目,参数m的值以及迭代收敛的条件参数ε;

②对灰度直方图Hist 进行高斯曲线拟合,选取其中c个极大值点组成图像的初始聚类中心V;

③通过式(15)计算聚类中心的vi的;

④通过式(16)计算隶属度uij;

⑤当满足迭代收敛条件或者算法迭代次数k>T时,算法结束,否则返回步骤④。

2.3 非交互式Lazy Snapping算法

针对标准Lazy Snapping算法存在的过分割现象以及需要人工设置目标点和背景点的问题,首先对需要分割的图像进行均值滤波去噪处理,完成去噪的图像采用FFCM算法进行预分割,即先用FFCM算法对图像进行聚类,将图像分为几个不同的聚类中心,再通过形态学骨架提取获得合适的种子点。经过图像预分割实现Lazy Snapping算法的非交互式分割。本文的算法步骤如图1所示。

3 实验过程与结果

本文实验的硬件环境为i5 8400 六核六线程处理器,16 GB 内存;软件环境为Matlab 2019a 版。选择了3种不同类型的红外图像作为研究对象,基于全局的阈值分割算法对红外图像分割效果精度高,在图像分割中应用较为广泛,为了更好地体现出算法的特征,对相同的图像分别采用基于全局的阈值分割算法、标准的Lazy Snapping算法和本文算法进行对比实验。对于图像分割效果的优劣仅凭肉眼无法准确区分,常用的图像分割评价指标有像素准确性(pixel accurancy,PA)、均像素精度(mean pixel accuracy,MPA)、并交比(intersection over union,IOU)和假阳性率(false positive rate,FPR)。像素准确性是用正确分类的像素除以总的像素,均像素精度是先将整个图片分为多个区域,计算每个区域正确分类像素的比例,再计算所有区域的平均值。相比PA和MPA,IOU和FPR 对图像分割效果的评价更为客观准确,因此图像分割的性能指标采用IOU和FPR,IOU和FPR计算方式如下:

图1 本文算法流程图Fig.1 Algorithm flow chart in this paper

式中:A为完成分割后的图像;B为标准的参考图像;A和B相似度越高,即IOU越大,表示分割效果越理想;同理,若A和B相似度越低,即FPR越大,表示分割效果越差,各类红外图像的分割效果如图2~图4所示。

图2 隔离开关红外图像Fig.2 Infrared image of isolation switch

从图2~图4中可以看出,本文算法的分割效果与全局阈值分割算法以及标准Lazy Snapping算法相比,分割结果轮廓清晰没有阴影,图像完整,没有出现丢失关键信息的现象,对于图像的边缘特征也保留了更多细节,而且目标区域边界光滑,满足图像分割的要求。为了更直观、公平地比较各算法的性能,表1为使用不同算法分割红外图像的IOU和FPR,表2为Lazy Snapping算法实现非交互式工作后与标准Lazy Snapping算法的运行时间对比,其中没有包含标准Lazy Snapping算法交互式设置目标点和背景点的时间。

从表1可以看出,本文算法完成图像分割后的IOU 高于对比算法,且FPR 低于对比算法,说明本文算法的分割准确率更高,对于标准Lazy Snapping算法存在的过分割现象也有一定的改善,在分割效果以及精度方面有明显改进。从表2可以看出,本文算法增加的预分割环节并没有影响算法整体的运行速度,保证了算法能使用在实时性要求较高的场合。

图3 出线端红外图像Fig.3 Infrared images at the outlet

图4 断路器红外图像Fig.4 Circuit breaker infrared image

表1 各类红外图像分割效果Table1 Various infrared image segmentation effects

表2 算法运行时间比较Table2 Comparison of algorithm running time s

4 结束语

提出了一种基于图割理论的改进Lazy Snapping算法,引入快速模糊C均值聚类算法对红外图像进行预分割,并通过形态学骨架提取的方法在预分割的图像中提取种子点用于Lazy Snapping算法,提升了分割效率和分割精度。通过分割效果、分割准确率和分割时间三方面评价该算法。实验结果从两方面反映出算法的性能,从分割效果和准确度方面分析,本文算法在实现Lazy Snapping算法非交互性工作的前提下,保证了算法本身的优点,能够将目标区域完整地从背景提取出来,完成分割的图像信息完善,较好地保留了边缘特征细节,对于原算法存在的过分割问题也有一定的改善;从分割时间方面分析,本文算法新增的预分割环节并没有使算法计算时间增加太多,因此可以应用于实时性要求较高的红外图像分割场合。

猜你喜欢
像素点灰度均值
采用改进导重法的拓扑结构灰度单元过滤技术
图像二值化处理硬件加速引擎的设计
Bp-MRI灰度直方图在鉴别移行带前列腺癌与良性前列腺增生中的应用价值
基于局部相似性的特征匹配筛选算法
Arduino小车巡线程序的灰度阈值优化方案
均值—方差分析及CAPM模型的运用
均值—方差分析及CAPM模型的运用
基于像素点筛选的舰船湍流尾迹检测算法
基于canvas的前端数据加密
浅谈均值不等式的应用