曹金凤,郭继鸿,李建伟,苏天赟
(1.青岛理工大学 a.机械与汽车工程学院;b.土木工程学院,山东 青岛 266520;2.中海油能源发展股份有限公司安全环保分公司,天津 300450;3.自然资源部第一海洋研究所,山东 青岛 266061)
海洋溢油事故是导致海洋环境污染的重要因素之一,也会对海洋生态系统造成严重且不可逆的影响。溢油从井口喷射进入海水后将以射流的形式运动,油滴粒径的分布特征决定了油滴的总体运动状态,从而影响溢油是否会上浮到海水表面或是在水体中分散[1]。海底条件复杂多样,亟须考察多种工况下(诸如不同温度、喷射口直径等)油滴粒径分布。
许多学者通过室内水槽实验,实现对油滴流速、温度、喷射口直径等多种状态的准确控制,从而模拟多工况下的油滴运动[2-6]。在水槽实验中,需要人工标定和筛选实验图片中的油滴区域,较为繁琐和不便,适用于试验规模较小且试验条件有限的情况,对大量试验图片进行快速准确的识别和筛选,难度较大且效率较低。
机器学习由于能够从大量数据中学习,从而获得数据的关键特征,因此,被广泛应用于图像识别领域。有学者开展了相关研究[7-11]。
为了实现对大量油滴图片快速准确识别,本文提出了一种基于支持向量机(SVM)的油滴识别和粒径分布特征提取算法。为了验证该算法处理实际图片的可行性,选用图片均来自通过工业相机拍摄的室内水槽溢油喷射实验图片,并将识别结果与经典粒径分布模型Rosin-Rammler模型对比。实验结果表明,该算法能够快速识别油滴图片,并统计油滴的粒径分布,为海底溢油应急抢险提供了理论基础。
研究选取的水下溢油模拟实验水槽装置见图1、2,由水槽槽体、注油系统和控制柜构成;注油系统管路见图3。水槽高2 m、底面尺度1 m×1 m,工作水深1.8 m。整个实验过程采用工业计算机控制,输油齿轮泵由变频器控制,可人工调节管路中油样的流量。
图1 实验室水下溢油模拟实验水槽
图2 实验水槽
研究过程中使用的原油油样和天然海水的物理性质分别见表1、2。
表1 原油油样物理性质
注:ρ-密度,kg/m3;μ-运动黏度,mm2/s;t-温度,℃。
表2 天然海水的性质
用2台工业相机分别拍摄含较大油滴和较小油滴的溢油图片。测定较大油滴粒径的相机帧速率50帧/s,分辨率为200万像素(2 048像素×1 088像素),感光芯片名称CMV2000,镜头分辨率200 μm。该相机挂于水槽外,相机镜头中心离喷嘴竖直距离为1.5 m。实验前,应用有机玻璃直尺(最小刻度1 mm)对测试区进行了尺度标定。测定较小油滴粒径的相机帧速率17帧/s,分辨率500万像素(2 456像素×2 058像素),感光芯片名称ICX625,镜头分辨率5.8 μm。该相机挂于水槽内,相机镜头中心离喷嘴竖直距离为1.5 m。实验前,应用显微镜C4测微尺(最小刻度50 μm)对测试区进行了尺度标定。
对实验图片处理包括滤波和分割2个部分,处理流程见图4。
图4 对油滴图片进行处理和分割的工作流程
获取的原始图片背景中含有大量噪声,背景噪声的存在将直接影响最终的分割效果,因此,需要对图片进行滤波处理,减少噪声对于分割图片的干扰。
滤波图像的灰度均值和标准差越接近原始图像,图像平滑指数越大,则滤波图片对于原始图片保留的信息越多,去噪声效果越好[12]。表3给出了对于同一幅灰度图片,选取35×35窗口,分别采用均值滤波、高斯滤波和中值滤波时,滤波图片各指标对比原始图片的结果。
表3 滤波图片各指标对比原始图片结果
除此之外,滤波器窗口的大小也会影响到滤波图片效果。滤波窗口越大,图片原始信息丢失越多,噪声抑制效果越好。图5分别给出了同一幅图片分别选取5×5,7×7,35×35滤波窗口时的高斯滤波效果。
图5 不同滤波窗口效果比较
比较表3和图5可见,高斯滤波在充分抑制背景噪声的同时,对于原始图片的信息保留最多。因此,选用窗口尺寸为35×35的高斯滤波器对原始图片进行滤波处理。
图像阈值分割方法主要包括:固定阈值分割、自适应均值阈值分割和最大类间方差法(Otsu)。图6b),c),d)分别给出了固定阈值、Otsu算法以及自适应均值阈值分割的分割效果。
图6 不同阈值算法的分割效果比较
比较图6b)、c)、d)3种阈值算法,可以看出,自适应均值阈值算法和Ostu算法都可以很好地将油滴区域和背景区分开来,但前者还可以将油滴区域的边界显示出来,并排除掉重叠的油滴区域,因此,本文选取均值自适应均值阈值分割法对油滴区域进行图像分割。
在诸多机器学习算法中,SVM算法由于对数据样本的需求量少,且可以处理复杂的非线性方程,被广泛应用于图像识别和故障诊断。
支持向量机理论来自于数据分类问题的处理,试图寻找一个满足分类要求的最优分类超平面,使得该超平面在保证分类精度的同时,能够使超平面两侧的空白区域最大化。理论上,支持向量机能够实现对线性可分数据的最优分类。随后,文献[13]通过引入核映射方法将非线性问题转化为高维空间的线性可分问题来解决。
图7给出了支持向量机的分类原理:空心点和实心点分别表示特征空间中2种不同类别的数据;H为能够将两类数据正确区分的线;H1和H2为能够将2种数据分开且平行于分类线的最外侧直线,二者之间的距离即为2类数据的分类间隔(margin)。支持向量机的训练目标就是使分类间隔达到最大,此时H1和H2上的点即为支持向量,H1和H2之间的距离即为两类数据的最大分类间隔,H则为最优分类线。将其推广到高维特征空间中,最优分类线则成为最优分类超平面。
图7 最优分类面
上述讨论仅适用于数据线性可分的情况,在许多问题中,样本集通常是线性不可分的,此时可以通过适当引入核函数K(x(i),x(j))来实现非线性变换后的线性分类,并不再增加计算的复杂度,核函数的可选种类较多,本文在研究过程中选用学习能力较强,适用范围广的Gauss函数。
为了避免数据中某一特征值的权重过大,在进行训练之前还应该对数据的特征值进行归一化处理:对于数据点的每一个特征值,依次经过式(1)所示的变换,使其特征值落在[0,1]之间。
在油滴识别问题中,每张样本图片都可以被标记为背景或油滴,因此,该问题是一个二元分类问题,仅需训练一个分类模型就可满足要求。使用支持向量机进行油滴识别,学习算法的实施过程如下。
1)对于每一张样本图片,提取图片中每个像元的灰度值作为其特征值,建立样本的特征向量xi。
2)对每个样本的特征值进行归一化处理。
3)标记每个样本图片的所属类别,建立标签向量yi。
4)输人特征向量和对应的标签向量对SVM进行训练建模。
从拍摄得到的原始图片中选取70张画面纯净的图片,经图像分割后得到343张油滴图片和514张背景图片,从857张图片中随机抽取770张建立样本数据集,实验样本的组成见表4。
表4 实验样本组成
本文SVM算法各项训练参数设置如下:选取核函数为径向基函数;设置训练最优参数值为0.041 4;正则化参数值为8。训练过程中,共获取支持向量24个。训练模型识别测试样本情况见表5,测试样本识别正确率为100%,因为:①选用图像灰度值作为特征值时,油滴与背景的明暗对比度大,油滴与背景灰度值的差值较大,且油滴形状简单,易于区分;②SVM算法引入了正则化参数,保证预测误差尽可能小、回归函数尽可能平滑,从而提高识别模型的泛化能力。
表5 识别结果
使用该模型对其余204张完整实验图片进行识别检测,累计识别192处油滴,识别正确率超过95%,预测结果可靠。
使用Ostu算法对相同的204张图片进行识别,表6给出了Ostu算法与SVM算法的用时比较。图8给出了2种算法在识别过程中的累计用时。
表6 传统分割算法与SVM时间复杂度比较
图8 累计用时对比
由表6和图8可见,SVM算法识别204张图片的平均用时为0.03 s,比Ostu算法的0.13 s快了76.9%;SVM算法识别204张图片的总共用时为6.67 s,比Ostu算法的26.14 s快了74.5%;SVM算法的识别效率明显优于Ostu算法,在识别海量图片时,本文提出的基于SVM算法建立的识别模型,效率更高。
实验的圆形喷嘴孔径为2 mm,实验过程中通过调节齿轮油泵变频器的频率以控制油样流量。油样流量由注油系统中的精密流量计实时记录,根据喷嘴口径换算出油样初始流速为4.2 m/s。
对识别的油滴粒径进行统计,得到其粒径分布在[113.62 μm,7 692.08 μm]范围内,绘制油滴粒径出现概率的分布图(见图9)。粒径概率分布属于左偏态分布,粒径低于300 μm的油滴占总油滴的73.08%;粒径低于500 μm的油滴占总油滴的86.81%;粒径大于2 000 μm的油滴占总油滴的2.20%,该范围的油滴占比较少,可以忽略。
图9 油滴粒径出现概率的分布
为了进一步描述识别油滴的粒径分布情况,引入Rosin-Rammler粒径分布式(2)。
式中:R(d)为筛下累积率,%;d为识别油滴粒径,μm;de为临界粒径,μm,当R(d)=63.2%时所对应的粒径;m为均匀性指数,表示油滴粒径分布范围的宽窄程度,m值越大,油滴粒径的分布范围越窄。
对式(2)取对数得到式(3)。
ln{-ln[1-R(d)]}=mlnd-mlnde
(3)
由式(3)可以看出:当lnd与ln{-ln[1-R(d)]}的回归线为直线时,油滴的粒径分布符合Rosin-Rammler,回归线的斜率为该分布的均匀性指数m,回归线在横轴上的截距为临界粒径的自然对数lnde。
由式(2)和式(3),可以计算油滴的中值粒径d50。
式中:d50为中值粒径,μm;de为临界粒径,μm;m为均匀性指数。
将油滴粒径d与筛下累积率R(d)代入式(2)和(3),得到均匀性指数m与临界粒径de值分别为1.252 0、251.36μm。
由式(4)得到中值粒径d50=158.85μm。油滴粒径d在自然对数坐标系下的分布见图10,其中的圆点表示识别油滴粒径的自然对数分布,当lnd>7.7时,在此粒径范围中的油滴在整体中占2%,可以忽略。由图10可见:lnd与ln{-ln[1-R(d)]}大致呈线性回归关系,协方差R2=0.842 7,表明识别油滴粒径分布模型符合Rosin-Rammler分布。
图10 识别的油滴粒径分布与Rosin-Rammler模型的比较
1)将SVM算法应用于油滴识别,用图片灰度值作为特征值来识别油滴和背景,所训练模型在测试集样本识别中正确率达到100%,在油滴图片识别中正确率在95%以上,识别快速、结果可靠,可应用于海底溢油快速识别、及时采取应急措施。
2)处理204张油滴图片,SVM算法的平均识别用时比Ostu算法快76.9%,累计识别用时比Ostu算法快74.5%。
3)识别出来的油滴粒径在自然对数坐标系下呈线性分布,线性回归的协方差R2=0.842 7,与经典的Rosin-Rammler粒径分布吻合。
4)SVM算法对油滴进行识别及粒径分布预测可行,为海底溢油快速识别及应急抢险提供了一种新的思路,具有较好的工程应用价值。