一种海面溢油图像分割方法转让专利

申请号 : CN201510057812.4

文献号 : CN104574427B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 任鹏邸萌萌宋华军

申请人 : 中国石油大学(华东)

摘要 :

本发明涉及海洋污染处理领域,特别涉及一种海面溢油图像分割方法。具体为构建高阶布尔能量函数,其包含一阶判定项与高阶耦合项。一阶判定项由单像素能量函数项与保边滤波器函数卷积求得,具有较好的保护溢油区域边缘的效果;高阶耦合项能够计算像素子集中的同类成对近邻像素的耦合性,有益于精确地分割出长条状溢油带。构造出的布尔能量函数由最大流/最小割方法求取最小值,能量最小时各布尔变量的取值对应海面溢油图像中溢油区域最优的分割方式。本发明可以在一定程度上克服分割长条状溢油区域过程中边缘扩散现象的影响,提高分割准确性。

权利要求 :

1.一种海面溢油图像分割方法,包括以下步骤:

步骤1:首先设定初始一阶判定项

其中,p为像素的标号,Ip为像素p的灰度值,xp是与像素p对应的布尔变量,η为阈值;

式(2)中,wk为中心在元素k处邻域大小为(2r+1)×(2r+1)的区域中原始一阶判定项元素集合,|w|为集合wk内原始一阶判定项元素数目,λ为防止ak(xp)过大的标准化参数,ak(xp)和bk(xp)分别如以下两式所示:其中,μk(xp)和 为集合wk内原始一阶判定项元素值的均值和方差,步骤2:其次设定高阶耦合项

首先为海面溢油图像中每一近邻像素对{p,q}设置权重如下:2

其中,τ为所有|Ip-Iq|的均值;

对于同一类近邻像素对集合对应的像素子集g,高阶耦合项为深度随机场模型中的分段平滑线性耦合函数的形式,如下所示:其中,Xg是像素子集g对应的布尔变量集,α,β和γ是人工设定的参数,α用以均衡一阶判定项和高阶耦合项的比重,β和γ用以确定ep,q(xp-xpxq)的分段截断点位置与后段斜率;

步骤3:构建高阶布尔能量函数

式(7)中Ep(xp)是一阶判定项,Eg(Xg)是高阶耦合项;P={1,2,....,N}为海面溢油图像像素标号集,N为图像中像素个数;X={x1,x2,…,xN}是与图像整体像素集对应的布尔变量集,其中的元素xp为海面溢油图像中像素p的类别标签值,只能取值0或1;

g代表P中一类像素子集,像素子集中的各近邻像素对彼此相似,而与子集外的近邻像素对差异较大; Xg是g对应的布尔变量子集;

E(X)取最小值时,X={x1,x2,…,xN}中各元素的取值代表海面溢油图像中溢油区域最优的分割方式;若xp取0,表示像素p分割到溢油区域;若xp取1,表示像素p分割到非溢油区域。

2.根据权利要求1所述的海面溢油图像分割方法,其特征在于,步骤3中E(X)最小值的计算方法如下:首先构造s/t图,海面溢油图像中的每一个像素点均对应s/t图中的一个节点;顶点S和T与普通节点之间的连边称为T-link,权重为布尔能量函数(7)中对应一阶项系数;普通节点之间的连边称为N-link,权重为降阶后的布尔能量函数(7)中二阶项系数;

其次用最大流/最小割算法切割s/t图,在切割后的s/t图中,与S相连的节点对应的像素标为0,与T相连的节点对应的像素标为1;而非溢油区域的像素xp对应取值为1的布尔变量,溢油区域的像素xp对应取值为0的布尔变量。

说明书 :

一种海面溢油图像分割方法

技术领域

[0001] 本发明涉及海洋污染处理领域,特别涉及一种海面溢油图像分割方法。

背景技术

[0002] 随着海洋石油工业和海上石油运输业的迅速发展,海上石油勘探、开发、海底管线铺设规模的不断扩大,石油设施已成为海洋环境污染的重大危险源。海上溢油给海洋环境和海洋生态带来了严重的污染。保护海洋环境,防止海洋表面污染已成为目前迫切需要解决的问题。为防止海面溢油污染,多种卫星被部署用来执行跟踪监测海上溢油的日常任务。卫星传回的海面实时图像用于检测海面溢油情况。为有效的检测海面图像中的溢油区域,各式各样的溢油分割方法相继涌现。目前海面溢油分割方法大多是传统的图像分割方法,如阈值分割,区域分割,边缘检测等。尤其是阈值分割作为一种传统的图像分割方法,因其实现简单、计算量小、性能稳定而成为海面溢油图像分割常用的方法。
[0003] 阈值分割利用图像中要提取的目标区域与其背景区域的差异,把图像看作具有不同灰度级的两类区域(目标区域和背景区域)的组合,选取一个比较合理的阈值,以确定图像中每个像素点所属的类别区域。为了得到海面溢油图像中溢油区域与背景区域的阈值,首先得到图像的灰度直方图。对于含有溢油现象的海面溢油图像,其灰度直方图都表现为存在两个峰值,一般选取两峰之间的极小值作为阈值来区分油膜和背景海水区域。基于阈值分割的海面溢油图像分割虽然能分割出溢油区域,但它只考虑了图像单个像素的灰度值,没有考虑像素之间的相关性,包含的信息少,分割准确性太差。假如图像包含溢油区域的大小不合适,灰度直方图只能出现一个峰值,阈值法不再适用,并且噪声的存在也使得检测出的溢油区域不尽如意。
[0004] 为克服传统图像分割方法应用于海面溢油图像分割中的问题,Graph Cuts被用于海面溢油图像分割中。将海面溢油图像中的每个像素看作一个布尔变量,按照一定的规则构建二次布尔能量函数,然后根据能量函数构建相应的s/t图,二次布尔能量函数中每一布尔变量对应s/t图的一个节点,再利用最小割/最大流算法切割s/t图得到s/t图的最小割,此时s/t图各节点对应变量的取值使得二次布尔能量最小化。将二次布尔能量最小化时取值为1的布尔变量相对应的像素标为溢油区域,取值为0的布尔能量对应的像素标为非溢油区域,便得到了最优的溢油区域。
[0005] 以上基于Graph Cuts的溢油分割算法能有效的分割出大片完整的油膜区域,对细长条的油膜带分割效果不佳。为有效分割细长条的溢油区域,高阶能量函数被用于海面溢油图像分割中,在一定程度上可以较为精确的分割长条状溢油带。但基于高阶能量函数的溢油分割方法会导致边缘扩散现象,分割出的溢油区域的边缘有向非溢油区域扩散的趋势,产生带有毛刺的溢油分割结果,影响溢油分割精度。

发明内容

[0006] 本发明针对现有技术中的不足,本发明针对以上缺点,将保边滤波与高阶能量函数的图像分割算法相结合,发明了一种新的海面溢油图像分割方法,有效分割细长条的溢油区域,可以一定程度上抑制分割过程中的边缘扩散现象,从而提高了分割准确性。
[0007] 本发明的技术方案是:
[0008] 具体为构建高阶布尔能量函数,其包含一阶判定项与高阶耦合项。一阶判定项由单像素能量函数项与保边滤波器函数卷积求得,具有较好的保护溢油区域边缘的效果;高阶耦合项能够计算像素子集中的同类成对近邻像素的耦合性,有益于精确地分割出长条状溢油带。构造出的布尔能量函数由最大流/最小割方法求取最小值,能量最小时各布尔变量的取值对应海面溢油图像中溢油区域最优的分割方式。
[0009] 一种海面溢油图像分割方法,包括以下步骤:
[0010] 步骤1:首先设定初始一阶判定项
[0011]
[0012] 其中,p为像素的标号,Ip为像素p的灰度值,xp是与像素p对应的布尔变量,η为阈值;
[0013]
[0014] 式(2)中,wk为中心在元素k处邻域大小为(2r+1)×(2r+1)的区域中原始一阶判定项元素集合,|w|为集合wk内原始一阶判定项元素数目,λ为防止ak(xp)过大的标准化参数,ak(xp)和bk(xp)分别如以下两式所示:
[0015]
[0016]
[0017] 其中,μk(xp)和 为集合wk内原始一阶判定项元素值的均值和方差,[0018] 步骤2:其次设定高阶耦合项
[0019] 首先为海面溢油图像中每一近邻像素对{p,q}设置权重如下:
[0020]
[0021] 其中,τ为所有 的均值;
[0022] 对于同一类近邻像素对集合对应的像素子集g,高阶耦合项为深度随机场模型中的分段平滑线性耦合函数的形式,如下所示:
[0023]
[0024] 其中,α,β和γ是人工设定的参数;α用以均衡一阶判定项和高阶耦合项的比重,β和γ用以确定ep,q(xp-xpxq)的分段截断点位置与后段斜率;
[0025] 步骤3:构建高阶布尔能量函数
[0026]
[0027] 式(7)中Ep(xp)是一阶判定项,Eg(Xg)是高阶耦合项;P={1,2,....,N}为SAR图像像素标号集,N为图像中像素个数;X={x1,x2,…,xN}是与图像整体像素集对应的布尔变量集,其中的元素xp为海面溢油图像中像素p的类别标签值,只能取值0或1; ,g代表P中一类像素子集,像素子集中的各近邻像素对彼此相似,而与子集外的近邻像素对差异较大; ,Xg是g对应的布尔变量子集;
[0028] E(X)取最小值时,X={x1,x2,…,xN}中各元素的取值代表海面溢油图像中溢油区域最优的分割方式;若xp取0,表示像素p分割到溢油区域;若xp取1,表示像素p分割到非溢油区域。
[0029] 优选的,步骤3中E(X)最小值的计算方法如下:
[0030] 首先构造s/t图,海面溢油图像中的每一个像素点均对应s/t图中的一个节点;顶点S和T与普通节点之间的连边称为T-link,权重为布尔能量函数(7)中对应一阶项系数;普通节点之间的连边称为N-link,权重为降阶后的布尔能量函数(7)中二阶项系数;
[0031] 其次用最大流/最小割算法切割s/t图,在切割后的s/t图中,与S相连的节点对应的像素标为0,与T相连的节点对应的像素标为1;而非溢油区域的像素xp对应取值为1的布尔变量,溢油区域的像素xp对应取值为0的布尔变量。
[0032] 本发明的有益效果是:
[0033] 1、与基于阈值分割的海面溢油图像分割相比,本发明能够有效的抵抗噪声干扰,有效的分割大片溢油区域及细长条溢油区域;
[0034] 2、与基于Graph Cuts的海面溢油图像分割相比,本发明增加了布尔能量函数高阶项,包含的信息更加丰富,能够有效的分割细长条溢油区域;
[0035] 3、与基于高阶能量函数的海面溢油图像分割相比,本发明增加了保边滤波函数与布尔能量函数一阶判定项卷积部分,能够有效的抑制分割过程中的边缘扩散现象,增加了分割准确性。

附图说明

[0036] 附图1为本发明具体实施例的原始SAR海面溢油图像;
[0037] 附图2为本发明具体实施例的溢油区域提示信息;
[0038] 附图3为本发明具体实施例的最小割/最大流的s/t图;
[0039] 附图4为本发明具体实施例的海面溢油图像分割后的结果;
[0040] 附图5为海面溢油图像阈值分割方法所得结果;
[0041] 附图6为基于Graph Cuts的海面溢油图像分割所得结果;
[0042] 附图7为基于高阶能量函数的海面溢油图像分割所得结果;
[0043] 附图8本发明具体实施例分割方法的流程图。

具体实施方式

[0044] 本发明的具体实施方式如下:
[0045] 一种海面溢油图像分割方法,如图8所述,包括以下步骤:
[0046] 步骤1:基于溢油图像构建高阶布尔能量函数
[0047] 一幅SAR海面溢油图像如下图1所示,其中从左上角到右下角的深色长条为溢油区域,其余部分为非溢油区域。
[0048]
[0049] 式(7)中Ep(xp)是一阶判定项,Eg(Xg)是高阶耦合项;P={1,2,....,N}为海面溢油图像像素标号集,N为图像中像素个数;p表示像素集中某一个像素的标号;X={x1,x2,…,xN}是一个布尔变量集,其中的元素xp为海面溢油图像中像素p的类别标签值,只能取值0或1; ,g代表P中一类像素子集,像素子集中的各近邻像素对彼此相似,而与子集外的近邻像素对差异较大(注:近邻像素对指在图像中沿左右、上下或对角线方向相接触两个像素); ,Xg是g对应的布尔变量子集。
[0050] E(X)取最小值时,X={x1,x2,…,xN}中各元素的取值代表海面溢油图像中溢油区域最优的分割方式。若xp取0,表示像素p分割到溢油区域;若xp取1,表示像素p分割到非溢油区域。
[0051] 式(7)中的一阶判定项Ep(xp)表示将图像中像素p标为溢油区域或非溢油区域所需付出的代价。
[0052] 为了计算得到Ep(xp),首先设定初始一阶判定项E'p(xp)。当像素p位于溢油或非4
溢油的提示信息区域时,将E'p(xp)设为10数量级,从而强制将p像素分割为溢油或非溢油区域。分割图1中的海面溢油图像的提示信息如图2所示:
[0053] 当p位于提示信息区域外时,用阈值法对E'p(xp)设定。
[0054] 综上,原始一阶判定项E'p(xp)设为
[0055]
[0056] 其中,η为阈值,Ip为像素p灰度值。在此基础上,对原始一阶判定项E'p(xp)运用指导滤波器进行保边滤波,处理过程如下式所示:
[0057]
[0058] 式(2)中,wk为中心在元素k处邻域大小为(2r+1)*(2r+1)的区域中原始一阶判定项元素集合,|w|为集合wk内原始一阶判定项元素数目,λ为防止ak(xp)过大的标准化参数,ak(xp)和bk(xp)分别如以下两式所示:
[0059]
[0060]
[0061] 其中,μk(xp)和 为集合wk内原始一阶判定项元素值的均值和方差,[0062] 式(4)中对原始一阶判定项进行保边滤波的处理可以较好的保持溢油的边缘信息,避免带有毛刺的溢油分割结果,在一定程度上克服了溢油分割中边缘扩散现象的影响。
[0063] 为了计算式(7)中的Eg(Xg),首先为图像中每一近邻像素对{p,q}设置权重如下:
[0064]
[0065] 其中,τ为所有|Ip-Iq|2的均值。以ep,q为特征对图像中所有近邻像素对进行k-means聚类,产生10个近邻像素对的聚类集合。然后基于每一类近邻像素对集合中所包含的像素子集,设计该类像素子集的高阶耦合项。对于一类近邻像素对集合对应的像素子集g,高阶耦合项为深度随机场模型中的分段平滑线性耦合函数的形式,如下所示:
[0066]
[0067] 其中,α,β和γ是人工设定的参数。α用以均衡一阶判定项和高阶耦合项在E(X)中的比重,β和γ用以确定ep,q(xp-xpxq)的分段截断点位置与后段斜率。若横跨同一溢油边缘各个近邻像素对属于同类,则这些近邻像素对之间耦合性好, 趋近于较小的数值,符合能量最小的原则;反之,若横跨同一溢油边缘各个近邻像素对属于不同类,则这些近邻像素对之间耦合性差, 趋近于较大的数值,与能量最小原则违背。因此,高阶耦合项能够在一定程度上避免在同一溢油边缘上出现不同类型的近邻像素对,这种特性有益于准确分割细长条溢油区域。
[0068] 步骤2:求解布尔能量函数最小化
[0069] 为求解能量函数最小值,需构造s/t图,并用最大流/最小割算法切割s/t图,能量最小化时能量函数各变量的取值代表了海面溢油图像中最优的溢油区域分割方式。
[0070] 图3为一个s/t图及最大流/最小割的图,它是一个连边权重图。其中顶点S和T分别代表溢油区域和非溢油区域,海面溢油图像中的每一个像素点均对应s/t图中的一个节点。顶点S和T与普通节点之间的连边称为T-link,权重为布尔能量函数(7)中一阶项(单个布尔变量)系数。普通节点之间的连边称为N-link,权重为降阶后的布尔能量函数(7)中二阶项(两个布尔变量乘积)系数。
[0071] s/t图构建好以后,用最大流/最小割算法切割s/t图。最大流/最小割算法重复以下三个步骤:
[0072] 1)“生长(growth)”阶段:搜索树s和t生长直到它们接触到并且给出从S到T的路径;
[0073] 2)“扩充(augmentation)”阶段:寻找到的路径扩充,搜索树s和t变为森林s和t;
[0074] 3)“收养(adoption)”阶段:树s和树t恢复。
[0075] 在生长阶段,搜索树扩张,主动节点会搜索临近的非饱和连边并从自由节点集合中获取新的子节点,这些新获取的节点会成为相关搜索树的主动成员,只要所给的主动节点的所有邻居都被找到,这个主动节点就变为被动节点。当主动节点与属于另一棵树的邻域节点交汇时,生长阶段结束。从图3所示中可以看到一条从源节点S到槽节点T的路径。
[0076] 扩充阶段扩充在增长阶段寻找到的路径。由于完成了可能的最大流,一些在路径中的连边变为饱和,这样一些在树s和t中的一些节点可能成为“孤儿(orphan)”,也就是说,连接它们的“父(parents)”节点不再有效,因为这些父节点所在连边饱和了。事实上,扩充阶段会将树s和t分裂为森林。源节点S和槽节点T仍然是两棵树的根节点,然而孤儿节点成为了其他树的根节点。
[0077] 收养阶段的目标是恢复根在源节点S和槽节点T的集合s和t的单一树结构,在这个阶段,会试图为每一个孤儿节点寻找一个有效的父节点,这个新的父节点应该与孤儿节点属于同样的集合,集合s或集合t。一个父节点也应该与一个非饱和连边相连,如果没有符合要求的父节点,将会从集合s或t中去除此子节点并使其成为自由节点,同时也会清除所有它之前的所有孤儿节点。当没有孤儿节点剩下时此阶段结束,这样树s和t的搜索树结构就恢复了。因为在集合s和t中的一些孤儿节点将会变为自由节点,恢复阶段会导致这些集合的元素数量减少。
[0078] 收养阶段完成后,算法会回到生长阶段,循环以上过程。当搜索树s和t不再增长(即没有主动节点)并且搜索树被饱和连边完全分开时,停止循环,算法结束,同时得到了一个最大流,对应的最小割由S=s和T=t决定。
[0079] 步骤3:得到分割后海面溢油图像
[0080] 通过最大流/最小割算法求得最小能量时,在切割后的s/t图中,与S相连的节点对应的像素标为0,与T相连的节点对应的像素标为1。而非溢油区域的像素对应取值为1的布尔变量,溢油区域的像素对应取值为0的布尔变量,由此得到分割后的海面溢油图像。图4为分割后的海面溢油图像。
[0081] 为了进一步说明本发明有效的抑制边缘扩散,提高了分割准确率,采用现有技术中常用的基于阈值分割的海面溢油图像分割方法(如A.El-Zaart,等2013年在SIECPC会议上公开的方法)、基于Graph Cuts的海面溢油图像分割方法(如S.Pelizzari等2007年在IEEE Geoscience and Remote Sensing Society在杂志上公开的)、基于高阶能量函数的图像分割方法(如P.Kohli等2013年在IEEE Conference on Computer Vision and Pattern Recognition会议上公开的)分割实施例中的溢油区域。
[0082] 与基于阈值分割的海面溢油图像分割(如图5所示)相比,本发明能够有效的抵抗噪声干扰,有效的分割大片溢油区域及细长条溢油区域;
[0083] 与基于Graph Cuts的海面溢油图像分割(如图6所示)相比,本发明增加了布尔能量函数高阶项,包含的信息更加丰富,能够有效的分割细长条溢油区域;
[0084] 与基于高阶能量函数的海面溢油图像分割(如图7所示)相比,本发明增加了保边滤波函数与布尔能量函数一阶判定项卷积部分,能够有效的抑制分割过程中溢油边缘扩散现象,增加了分割准确性。