APP下载

基于条件生成对抗网络的成像测井图像裂缝计算机识别

2020-03-30魏伯阳潘保芝殷秋丽田超国郭晓雅

石油物探 2020年2期
关键词:卷积标签噪声

魏伯阳,潘保芝,殷秋丽,田超国,郭晓雅

(1.吉林大学地球探测科学与技术学院,吉林长春130026;2.冀东油田公司勘探开发研究院,河北唐山063000;3.郑州中核岩土工程有限公司,河南郑州450008)

裂缝由构造变形作用或物理成岩作用形成,是在岩石中天然存在的宏观面状不连续[1]。裂缝既是油气的储集空间,又是油气的流动通道。裂缝与油气的储量和产能息息相关,裂缝识别是油气储量评价和产能预测的关键。由于地下情况复杂,尽管目前对于地层微电阻率扫描成像(formation microscanner image,FMI)图像中的裂缝已有成熟的识别技术,但大多是基于人机交互的方法,人力资源消耗大(耗功耗时)且易受主观因素影响,因而对裂缝判断不够精确。国内外多位专家和学者进行了裂缝自动识别技术研究。秦巍等[2]、李雪英等[3]引入图像处理手段,利用裂缝灰度特性识别裂缝,实现了对地层中简单裂缝信息的自动识别。张程恩[4]使用蚁群聚类算法提取成像图裂缝形态。唐佳伟[5]使用二维Otsu算法,消除成像图的噪声干扰,并且对提取的裂缝图像进行细化。张群会等[6]提出了基于元胞自动机模型的裂缝自动识别算法,确定FMI图像中裂缝的灰度范围,利用免疫规则识别裂缝。张晓峰等[7]对FMI图像进行垂直和横向的小波变换,剔除噪声的同时重构小波变换图,最终得到裂缝图像。潘保芝等[8]提出综合常规测井数据裂缝信息与FMI图像中裂缝响应识别裂缝区域。低角度斜交裂缝的形态在FMI图像中表现为一个单周期的正弦曲线,但因为地下结构复杂(多条裂缝交叉、井壁坍塌等)及仪器自身原因(提升速度变化、坏极板等),造成裂缝面表现为一个不是完全成正弦曲线的形态,因此给计算机自动识别FMI图像中的裂缝带来严重干扰。利用成像测井资料识别裂缝的方法虽然识别效果较好,但都存在共同的缺点,即裂缝识别费时费力,且识别的裂缝中包括无效缝[9]。

2006年,HINTON等[10]提出了有效提取数据(包括图像、音频、文本等)的抽象特征的深度学习方法,并对数据进行分类与回归。卷积神经网络是深度学习中的一种重要方法。卷积神经网络对图像与图像间的非线性关系有良好的表征能力,可以对图像抽象出人工难以理解的特征进而对图像进行识别分类。目前该方法已经在基于常规测井曲线的测井数据分类领域取得很高的成功率,如安鹏等[11]应用深度学习方法划分9种岩性的准确率达90.02%,吴正阳等[12]应用卷积神经网络划分裂缝性储层类别与人工解释结果也有相当高的符合率。由于FMI图像受井眼、地层等条件的影响,包含的噪声较多,因此,普通的卷积神经网络模型难以识别FMI图像中的裂缝信息。

2014年,GOODFELLOW等[13]在卷积神经网络的基础上提出生成对抗网络(generative adversarial nets,GAN),通过对实际图片进行无监督学习,然后利用噪声生成与实际图片特征相似的图片。MIRZA等[14]在GAN的基础上提出条件生成对抗网络(conditional generative adversarial nets,CGAN)。CGAN将条件变量加入到GAN模型的输入中,将无监督的GAN变为有监督模型[14]。本文借助CGAN思想识别计算机模拟的裂缝,介绍了CGAN方法的抗干扰能力,并采用CGAN进行了实际测井图像的裂缝识别。

1 方法技术

CGAN是在GAN的基础上添加条件标签图像,利用该标签图像约束生成器从实际图像中提取信息,将GAN无监督的训练过程变为有监督的训练过程。

1.1 生成对抗网络(GAN)

GAN由生成器(Generator)和判别器(Discriminator)两部分组成。GAN损失函数V(D,G)由生成器最小化损失函数(minG)和判别器最大化损失函数(maxD)构成:

minGmaxDV(D,G)=Ex~Pdata(x)[log(D(x))]+
Ez~Pz(z)[log(1-D(G(z)))]

(1)

式中:x表示实际图像;z表示噪声图像;D(x)表示判别器对实际图像的判别值;D(G(z))表示判别器对生成图像G(z)的判别值;Pdata(x)表示实际图像的分布;Pz(z)表示噪声图像分布;Ex~Pdata(x)表示x服从实际图像分布取样的期望;Ez~Pz(z)表示z服从噪声图像分布取样的期望。

生成器是以z作为输入,对x通过卷积提取图像特征信息,将z生成为服从实际图像分布的图像G(z)。生成器的损失函数V(G)越小,G(z)与x越相似。判别器将G(z)与x同时作为输入,判断G(z)与x是否一致。判别器的损失函数V(D)在[0,1]之间,当V(D)为1时,生成的图像G(z)与实际图像x一致;当V(D)为0时,G(z)与x完全不一致。V(D)越大,G(z)与x越相似。判别器使G(z)尽可能相似于x,最终得到D(x)。生成器和判别器不断博弈,最终使生成器生成的G(z)无限接近于x。

1.2 条件生成对抗网络

条件生成对抗网络CGAN的损失函数为:

minGmaxDV(D,G)=Ex~Pdata(x)[log(D(x|y))]+
Ez~Pz(z)[log(1-D(G(z|y)))]

(2)

式中:y表示条件即标签图像;D(x|y)表示判别器对实际图像x与标签图像y拼接后的判别值;G(z|y)表示噪声图像z与标签图像y拼接后生成器生成的图像;D(G(z|y))表示判别器对于G(z|y)与y拼接后的判别值。从损失函数((2)式)可以看出,y不仅参与了判别器的输入,同时也参与了生成器的输入。

CGAN也由生成器和判别器两部分组成(图1)。生成器以随机噪声图像z以及裂缝标签图像y为输入,生成服从实际图像数据分布的图像G(z|y),判别器将G(z|y)与x、y作为输入,判断G(z|y)分别与x和y拼接后的判别值是否一致,最终提取出只包含标签特征信息的图像。

图2为CGAN单次迭代(单张图片训练一次)识别裂缝流程。生成过程首先输入y和z,将二者数据拼接之后变成像素为256*256、层数为3的图像(用256*256@3表示)。输入到生成器,生成器中包含8个卷积层和8个反卷积层,输出通过激发函数tanh生成G(z|y)。判别过程将x和y与G(z|y)分别拼接,改变图像尺寸为256*256@3后输入到判别器。判别器中包含4个卷积层,将256*256@3的输入图像卷积为32*32@1的特征图像。通过激发函数sigmoid得到D(x|y)。其中输入x和y到判别器,得到判别器对实际图像的判别结果,输入x与G(z|y)到判别器,得到判别器对生成图像的判别结果。

图1 CGAN识别裂缝模型

图2 CGAN单次迭代(单张图片训练一次)识别裂缝流程

2 模拟图像裂缝识别

天然裂缝按角度分为水平缝(倾角<5°)、低角度缝(5°~30°)、中角度缝(30°~75°)、高角度缝(倾角>75°)和竖直缝(倾角=90°)[15]。其中低角度缝、中角度缝及高角度缝在FMI图像中响应为黑色正弦形态,水平缝表现为水平方向黑色直线,竖直缝响应为垂向黑色贯穿直线(本文暂不考虑竖直缝)。

2.1 CGAN训练

使用计算机模拟裂缝图像,模拟不同方位、倾角和宽度的单条裂缝图片共216张,其中水平缝、低角度缝、中角度缝、高角度缝的图片分别为36,36,72,72张,如图3左图所示。图3右图为相应的标签图像。将所有训练图像训练一次的过程称为1个循环(epoch),本次训练过程经过100个epoch,每个epoch迭代216次(训练一张图片视为迭代一次),共迭代21600次,耗时30min。图4为CGAN计算机模拟裂缝图像训练结果,可以看出,训练得到的结果与标签一致。

2.2 模拟裂缝图像的CGAN识别

利用训练好的CGAN识别未参与训练的图像,并观察CGAN模型的裂缝识别效果及对图像噪声的抗干扰能力。构造的4张裂缝图像分别为:沿正弦曲线添加了随机噪声、正弦曲线中间断开、对整个图像添加了随机噪声和2条正弦曲线叠加图像,如图5 所示。测试发现:CGAN对有噪声的不规则正弦曲线(图5a)和包含脉冲噪声的图像(图5c)有较强的抗干扰能力,识别结果和裂缝标签形态一致;对叠加裂缝也有良好的识别结果(图5d);在识别中间断开的正弦曲线形态时,得到中间断开的正弦曲线(图5b)。分析其原因,认为:CGAN强烈依赖训练样本和标签,而上述训练样本只包含单条连续正弦曲线样本,故不能将中间断开的正弦曲线识别为连续正弦曲线,需要在训练过程中加入断开的正弦曲线样本进行训练。最后设置100张各种干扰(沿曲线添加随机噪声、曲线断开、多条曲线交叉等)下计算机模拟裂缝图像,结果显示,CGAN识别这些图像中裂缝的准确率达93.4%。

图3 计算机模拟裂缝图像(左)及标签(右)a 水平缝; b 低角度缝; c 中角度缝; d 高角度缝

图4 CGAN计算机模拟裂缝图像训练结果a 水平缝; b 低角度缝; c 中角度缝; d 高角度缝

图5 CGAN计算机模拟裂缝识别结果a 正弦曲线添加随机噪声; b 正弦曲线中间断开; c 图像添加随机噪声; d 多条曲线叠加

3 FMI图像裂缝识别

3.1 CGAN训练

将CGAN应用于实际FMI图像识别裂缝训练中,并将实际FMI图像和相应的裂缝标签作为输入直接进行训练。首先利用人机交互方法提取裂缝标签,共得到162个训练样本,其中,单条裂缝图像124张(水平缝49张,低角度缝62张,中角度缝13张),含两条及两条以上裂缝的图片38张。图6a、图6b和图6c分别代表其水平缝、低角度缝、中角度缝的FMI图像及标签图像。

训练过程经过500个epoch,每个epoch迭代162次,共迭代81000次,耗时2.5h。图7展示了其中4张具有代表性的裂缝图像及其训练结果,可以看出,CGAN对水平缝(图7a)和低角度缝(图7b)有较好的训练结果。训练过程中发现有3处异常,如图8所示。分析图8a和图8c发现,由于裂缝形状的不规则或者周围有微小裂缝与主裂缝连通造成生成的裂缝图像与标签设定的裂缝有差异;图8b中FMI图像上部分可能存在裂缝但标签中没有标注出该条裂缝。

图6 FMI裂缝图像(左)及标签(右)a 水平缝; b 低角度缝; c 中角度缝

图7 CGAN FMI图像裂缝训练结果a 水平缝; b 低角度缝; c 中角度缝; d 多条曲线叠加

图8 CGAN训练过程判别器异常点a 异常1; b 异常2; c 异常3

可见,设置标签的准确性会影响CGAN的训练结果和识别效果。为避免此类异常出现,设置裂缝标签时应尽可能准确地包含图像中所有裂缝信息。

3.2 FMI图像裂缝CGAN识别

用训练好的CGAN识别10张包含裂缝的图像,识别准确率达90%,识别速度为0.19s/张。图9为训练模型识别结果,可见,当水平缝与高角度缝交叉时,CGAN对水平缝也有良好的识别效果(图9b);低角度缝周围的破碎使裂缝变为不规则的正弦形态,CGAN也可以避开干扰准确识别裂缝(图9c);当中角度缝不是正弦形态的裂缝时,CGAN识别结果与标签之间出现一定的差异(图9d)。分析原因,首先,受客观条件限制,中角度缝训练样本相对较少,其次,中角度缝破碎后裂缝形态不是正弦形态且易与其它裂缝形成贯通,因此对中角度缝的识别会有较大误差。

图9 FMI图像CGAN网络识别裂缝结果a 水平缝; b 水平缝受高角度缝交叉干扰; c 不规则水平缝; d 不规则中角度缝

目前采用的FMI图像资料中截取到的中角度缝图像较少,因而参与训练的中角度缝图像较少,使得对该资料中少量的中角度缝尚不能有良好的识别效果,需要进一步深入研究。由计算机模拟裂缝识别效果可知,在样本数据充足的情况下,采用CGAN对此类裂缝有良好的识别效果。

3.3 裂缝识别效果对比

分别采用CGAN和蚁群算法对FMI图像进行裂缝识别,结果如图10所示。蚁群算法将FMI图像中黑色区域在一定范围内聚集为白点,然后连接图像中白点的位置识别裂缝形态。CGAN识别得到的裂缝更连贯,裂缝形态更直观。表1为CGAN与蚁群算法识别单张图像耗时对比结果(其中,蚁群算法识别裂缝耗时研究来自文献[16],CGAN识别裂缝耗时研究来自本文)。蚁群算法识别裂缝耗时与蚂蚁数和迭代次数成正相关。蚂蚁数和蚁群迭代次数太少时不能有效提取裂缝信息,因而限制了有效识别图像中裂缝的最短耗时。在蚂蚁数为3468,迭代次数为600时,耗时为28.74s/张。CGAN识别单张图像过程耗时短,平均速度达到0.19s/张。

图10 采用本文方法和蚁群算法的裂缝识别结果a FMI图像; b 本文方法识别裂缝结果; c 蚁群算法识别裂缝结果

表1 CGAN与蚁群算法识别单张图像耗时对比

4 结论

本文研究形成了CGAN自动识别裂缝技术,研究结果表明:

1) CGAN抗噪声干扰能力强。即使裂缝图像包含随机噪声,采用CGAN也可以准确识别裂缝信息。

2) CGAN识别FMI图像低角度缝和水平裂缝准确率高,实际成像测井图像中裂缝识别准确率为90%。识别图像速度为0.19s/张,比蚁群算法识别裂缝速度有大幅度提高,且识别得到的裂缝形态更直观。

3) CGAN的缺点是对训练样本和标签的依赖性较高。当识别复杂形态裂缝时,设置的样本标签对裂缝识别的干扰较大。各目标训练样本数量的均匀程度对识别结果也有影响。

综合计算机模拟裂缝识别结果、实际FMI图像裂缝识别结果及与蚁群算法识别裂缝结果对比可知,CGAN是一种可以自动识别FMI图像中裂缝的有效方法。目前CGAN只能识别裂缝,尚不能提取裂缝参数。下一步要完善训练过程中各形态的裂缝样本,再结合其它深度学习方法,提取裂缝各项参数,实现对裂缝的自动追踪。

猜你喜欢

卷积标签噪声
舰船通信中的噪声消除研究
基于3D-Winograd的快速卷积算法设计及FPGA实现
卷积神经网络的分析与设计
从滤波器理解卷积
汽车制造企业噪声综合治理实践
无惧标签 Alfa Romeo Giulia 200HP
不害怕撕掉标签的人,都活出了真正的漂亮
基于傅里叶域卷积表示的目标跟踪算法
让衣柜摆脱“杂乱无章”的标签
科学家的标签