基于自然图像的钻探岩心识别

2023-09-27 05:16吴振坤谭松成何思琪段隆臣
煤田地质与勘探 2023年9期
关键词:岩心卷积准确率

高 辉,吴振坤,柯 雨,谭松成,何思琪,段隆臣

(1.中国地质大学(武汉)工程学院,湖北 武汉 430074;2.中国地质大学(武汉)地球深部钻探与深地资源开发国际联合研究中心,湖北 武汉 430074;3.中国地质大学(武汉)自动化学院,湖北 武汉 430074;4.中国地质大学(武汉)未来技术学院,湖北 武汉 430074)

智能钻探的研究领域涵盖钻速的优化、钻进过程的智能控制、钻进故障的识别与防控、随钻测量、地层识别等。对于地质岩心钻探,采取的岩心是进行地层识别最直接的手段,一般的地层岩性编录依赖于现场技术人员的经验,准确的岩性识别[1]需要将样本带回实验室进行薄片鉴定,试验周期较长。

随着人工智能技术的发展,基于人工定义的特征提取的机器学习算法可以用于岩石薄片图像的自动识别[2]。基于深度学习的岩石薄片矿物自动识别方法,通过卷积神经网络自动提取图像特征,进一步提升了识别的准确率[3]。基于轻量级卷积神经网络结构的算法对岩石薄片图像进行分类,可减少模型参数,提升岩石分类速度,增强模型的可移植性[4]。不过,岩石薄片图像是在显微镜下成像的,并非自然图像。

自然图像是采用照相机根据感光单元拍摄出来的,使用阳光、灯光等普通光源,自然图像具有易于获得、成本较低的优势,目前多用于不同状态下露头岩石或岩块的识别[5],一种无监督特征学习方法用于岩石的自动分类,可解决大量数据集岩石标记难的问题[6]。迁移学习方法用于对野外露头岩石图像进行识别[7],多尺度的方法可对任意尺度的野外露头岩石进行有效的识别[8],孪生卷积神经网络方法同时利用岩石的全局特征和局部特征,可提高岩石图像识别的准确率[9]。深度学习算法用于岩块图像的识别[10-12],人工定义的特征和卷积神经网络自动提取的特征相融合的方法,可实现煤-岩图像的识别[13]。

不过,用于识别的岩心图像的获取目前主要采用360 度岩心扫描[14]、X 射线断层扫描[15]、高光谱成像[16]等技术实现,这类方法需要使用辅助仪器进行成像,不能直接使用普通光源,与本文的识别目标不同,其主要用于研究岩心的结构特征,而且这些成像设备体积较大、成本较高,无法在现场推广应用。因此,开展了基于自然图像的岩心识别研究,并开发了相应的手机APP[17-19],以期提高岩心自动识别的现场使用便捷程度。

1 岩心图像库的建立

本文的研究累计搜集岩心220 块,通过薄片鉴定等方法,共标记出3 大类岩中的15 种岩心,分别是泥岩、页岩、灰岩、白云岩、砂岩、硅质岩、凝灰岩、安山岩、正长岩、花岗岩、英安岩、大理岩、板岩、片麻岩、石英岩。为了提高识别的效果,岩心表面应尽量保持平整,并放置在白色的背景之上,以免因为背景颜色的不同影响识别的效果。通过手机对每个岩心拍照,尽量选择侧面或正面的角度进行拍摄,拍摄时保持一定的距离,保证图像清晰,拍摄训练图像集、测试图像集以及现场岩心图像时均保持上述相同的原则。

光照条件对图像的识别有一定的影响,拍摄时尽量保证正常的均匀光照,由于拍摄训练集时不能覆盖更多的光照环境,将对训练集的数据进行人工增强,即对训练集进行各种不同的变换,以模拟更多的拍摄环境,大幅增加训练集的数据量,提高模型的泛化性。

图1 是15 种岩心代表性的图像,其拍摄方式有所不同。拍摄距离较远时,岩心图像中包含较多的背景,而拍摄距离较近时,则图像中包含的背景很少或完全不包含背景。此外,岩心照片的拍摄部位包括顶面、底面及侧面,而岩心形状则主要为圆形或方形。

2 岩心识别模型

2.1 图像数据增强

对于同一个岩心,由于拍摄时的环境、角度等不同,拍摄出来的图像有很大的差异,训练图像集不可能覆盖所有的情况,因此,常采用数据增强(包含图像增强、图像变换等)的方式来增加训练集的数量,通过对图片进行各种处理,模拟现场环境的变化,扩大识别模型的适应范围。为了不增加数据集的存储空间,一般采用运行时增强的模式,即在读入一张原始训练图像时,根据一定的概率对该图像进行某种变换或变换组合,变换之后加入当前训练批次的图像中对模型进行训练,训练结束之后并不保存该图像。

根据岩心图像的特点,须保证其变换之后依然具有岩心图像的基本特征,所以只选用部分有效的变换函数。按照80%的概率对图像进行变换,首先执行水平翻转、垂直翻转、旋转等三种几何变换中的一种或多种变换的组合,然后执行模糊变换(随机选择高斯滤波、均值滤波或中值滤波中的一种)、锐化变换、浮雕变换、边缘变换、亮度变换、色相和饱和度变换等六种色彩或纹理变换中的一种或多种变换的组合,各种变换的参数在一定的范围内随机选取。

2.2 卷积神经网络

采用卷积神经网络自动提取岩心图像特征,实现岩心的识别,卷积神经网络的基本结构如图2 所示。

图2 岩心识别卷积神经网络结构Fig.2 Convolutional neural network structure for core identification

(1)一张二维的原始岩心图像输入网络中,首先缩放到固定的大小,然后经过一系列的卷积、池化操作后(此时的权重参数为缺省值,有待根据损失函数进行更新)形成多张二维的岩心特征图像。

(2)接下来将二维图像平铺成一维数据,经过测试,将多张二维特征图像进行像素平均后平铺成一维数据,这样可以达到降维的目的,同时便于和后面的节点形成全连接网络。

(3)后面直接增加一个全连接网络,与输出的15种岩心分类值进行连接,此时产生全连接层的权重参数,是后续训练重点更新的值。

(4)在全连接层后面连接一个Softmax 激励函数,将分类值转换成概率值,在训练时与真值对比并计算损失函数值,在预测时输出岩心分类的结果。

训练时,根据预测值和真实值计算损失函数,根据损失函数降低的原则,计算全连接层各权重参数的更新梯度值,并向前传递,更新和优化卷积、池化等操作的权重参数,最终获得最优的权重参数,使得模型输出的预测值和真实值最接近。

由于卷积神经网络的深度较大,需要训练的参数较多,一般的专业训练数据集大小不够,训练时会出现严重的过拟合现象,因此,一般采用迁移学习的方法,首先在卷积、池化层网络中直接采用通用数据集的训练模型的参数,只训练全连接层网络的参数;接下来对卷积、池化层网络参数进行微调,只训练该网络中与全连接层接近的部分层,这样提高训练的效率和质量。

2.3 基于多训练模型的岩心联合识别

数据增强虽然是一种有效增加训练数据集、提高模型泛化性的方法,但是人工数据的加入也有可能改变实际训练集的特征,降低卷积神经网络表征与实际训练集接近的测试数据集图像特征的能力,从而降低对该数据集的识别准确率。测试发现,经过数据增强后,确实提高了部分数据集的识别准确率,但是也降低了其他数据集的识别准确率。

另外,由于模型的训练是一个随机过程,因此,每次训练出来的模型是不一样的,这样会导致每次训练的模型对不同测试数据的识别准确率会有变化,有的模型对部分数据集的识别准确率高,而对另一些数据集的识别准确率低。

为了解决数据增强和不同训练批次在不同测试数据集上产生的识别准确率的差异性问题,提出基于多训练模型的岩心联合识别方法,同时采用多个模型对图像进行识别,每个模型的识别结果是该图像属于各类别的概率,比如15 种岩心类别,那么每个模型会给出15 个概率值,对于常规的单模型识别,则直接取这15 个概率中最高的值所对应的类别作为岩心的识别结果;对于多模型联合识别,则将每个模型对各类别的预测概率值累加,取累加值最高的项所对应的类别作为岩心的识别结果。

3 模型测试

3.1 训练集数据增强测试

采用的训练数据集共有2 931 张图像,15 种岩心类别,迁移学习训练阶段采用的学习率为0.001,训练次数为150 次,在微调阶段采用的学习率为0.000 1,训练次数为150 次,微调的层数量占比为1/3。训练数据集中的20%用来进行模型的验证,剩下80%用作实际的训练,图3a 为训练准确率和验证准确率的变化趋势图,在训练步数达125 左右时已经收敛,同时,图3b 中的损失值也稳定在一个较低位。

图3 训练过程中的准确率和损失值曲线Fig.3 Accuracy and loss curve during training

为了测试模型的泛化性,测试数据集并不是取自原始的训练数据集,而是在多种不同的条件下重新拍摄而成的新数据集。选择8 个新数据集进行测试,测试数据集的拍摄条件见表1,主要考虑拍摄设备、岩心背景、干湿状态、光照条件等影响成像效果的4 个因素。图像的状态与拍摄者的关系较大,本测试数据集中包含4 名测试员分别采用4 种不同的设备拍摄的图像。8 个测试集均覆盖所有15 类岩心,每个测试集包含300 张左右的图像。同一个岩心在部分测试集中的图像如图4 所示,不同的拍摄条件对图像的影响较大。

表1 测试数据集的拍摄条件Table 1 Shooting conditions for test datasets

图4 同一个岩心在不同测试集中的图像Fig.4 Images of the same core from different test sets

通过对比代表性的卷积神经网络[20-22],本节选用较适合现场手机APP 使用的轻量级卷积神经网络MobileNet V2_1.4[23]为例测试。由于卷积神经网络模型随机预设权重初始值,所以每次训练的结果都相近,但不完全相同,表2 列出了在无数据增强和有数据增强两种情况下,分别训练4 次的模型在8 个数据集上的测试结果。

表2 不同训练批次的模型得到的岩心识别准确率Table 2 Core identification accuracy obtained by models in different trained batches %

表3 给出了无数据增强和有数据增强时4 次训练的模型在单个数据集中识别准确率的平均值以及在所有数据集中总的平均值,无数据增强时的识别准确率总的平均值为82.43%,有数据增强时的识别准确率总的平均值为88.81%,高于无数据增强时的结果。不过,使用数据增强后,测试集5 和6 的识别准确率降低了,其他数据集的识别准确率均有所提升,这说明使用数据增强后,卷积神经网络模型降低了对数据集5 和6的图像特征的表征能力。

表3 基于多训练模型的岩心联合识别准确率对比Table 3 Comparison of joint core identification accuracy based on multiple training models %

3.2 多训练模型的联合测试

为了解决部分模型降低识别准确率的问题,采用前文提出的基于多训练模型的岩心联合识别方法,经过测试,从8 个模型中选择4 个模型,即模型①+模型⑤+模型⑥+模型⑧进行联合识别效果最佳,其中①来自无数据增强时的训练模型,⑤、⑥、⑧来自有数据增强时的训练模型。表3 显示了该多模型联合识别的准确率以及其与无数据增强和有数据增强时的对比结果,使用多模型联合识别的准确率有明显提升,比无数据增强时的准确率最大提升20.34%,平均提升9.13%;比有数据增强时的准确率最大提升4.41%,平均提升2.75%。使用多模型联合识别后,对每个测试集的识别准确率均有所提升,总的识别准确率达91.56%,有效避免了使用单模型识别时,提升部分数据集的识别准确率,而降低其他数据集的识别准确率的问题。

对比各测试集上的识别结果,总体上可以分为四个区间,第一个区间包含数据集1 和6 的识别准确率,均在98%以上,说明这两个数据集和训练数据集的拍摄条件最吻合;第二个区间包含数据集2、5 和8 的识别准确率,均在93%~98%之间,影响这3 个数据集的因素较多,包括测试员的拍摄设备、拍摄方式、岩心所处背景等均对识别结果可能产生影响;第三个区间包含数据集3 和7 的识别准确率,为91%~93%,这两个数据集是在阳光下拍摄的,由于阳光的强弱变化比灯光显著,相比室内可控的光照条件,室外的光照条件更复杂;第四个区间包含数据集4 的识别准确率,仅为72.99%,该数据集是在潮湿条件下拍摄的,潮湿表面的水对光线的反射与干燥表面的反射有较大的差异,所以该数据集的识别准确率较低。

据上述分析可知,对识别准确率影响最大的是干湿条件,由于训练数据集全部是在干燥情况下拍摄的,所以对于潮湿岩心的识别准确率不高,建议在识别的时候保持岩心处于干燥状态;由于阳光的照射条件比较复杂,建议有条件时,将岩心样本放在比较均衡的光照下识别;背景对识别的结果影响也较大,建议识别的时候将岩心放在白色背景下。

尽管采用数据增强和多模型联合识别的方法,一定程度上提高了模型的泛化性,但是在不同条件下岩心的识别准确率依然不同,为了达到更好的识别效果,建议在相对一致的拍摄条件下进行岩心识别。训练数据集虽然不能覆盖所有的拍摄条件和岩心状态,不过,不断扩充训练数据集依然是提高模型泛化性的有效手段。

4 现场应用

为了在现场便捷使用并快速进行识别,开发了岩心识别手机APP,采用TensorFlow Lite(TF Lite)框架,将原来生成的大体积模型文件转换成适用于移动终端的模型(TFLite 模型),在不影响准确率的情况下减小模型的大小并提高其性能,同时具有很好的可移植性。用TFLite 解释器所提供的接口读取转换后的模型文件,模型即可被部署到应用程序中,APP 的界面如图5所示,除了岩心类型外,还提供了岩性的基本介绍、推荐使用的钻探规程参数等。

图5 岩心识别手机APP 界面Fig.5 Mobile APP interface of core identification

选取河北省保定市博野县地热勘探井(JZ04)的岩心进行手机APP 测试。现场得到的岩心表面大多被泥浆材料覆盖,因此在试验前需要用清水将岩心上的泥浆及其他碎屑洗净,用洗净后的岩心拍照识别。

现场岩心如图6 所示,其中图6a 中的数字为该段岩心的长度(单位为m),图6b 为硅质岩,分布深度为4 013.01~4 013.11 m,图6c 中的白云岩分布深度为4 009.62~4 010.02 m。取钻进孔段4 009.62~4 017.50 m进行测试,岩心整体为青灰色或灰白色,以硅质含量较高的白云岩为主,白云岩层间分布有厚度不一的深灰色的硅质岩层,岩心多含有裂隙,部分岩心破碎程度较大。

图6 现场应用井场的钻探岩心Fig.6 Drilling cores of the field application well site

开发的手机APP 搭载轻量级网络MobileNet V2_1.4,用该APP 对完整的岩心进行拍照,测试岩心照片共40 张。采用有数据增强的单模型可正确识别32 张,准确率为80%,单张图像识别平均耗时350 ms;采用多模型联合方法(本文取4 个模型)可正确识别34 张,识别的准确率为85%,单张图像识别平均耗时1.15 s。虽然采用多模型联合方法的识别时间有所增加,但是准确率提升了5%。最终测试岩心定名结果见表4,4 张硅质岩图像全部识别成功,36 张白云岩图像中正确识别30 张,白云岩容易误判为硅质岩、灰岩、砂岩、板岩等类似的沉积岩或浅变质岩,它们之间确实具有较多相似性。

表4 岩心定名测试结果数量统计Table 4 Quantity statistics of the core naming test results 张

5 结论

a.提出的基于多训练模型的岩心联合识别方法,同时采用多个模型(本文取4 个模型)对图像进行识别,综合确定识别结果,对每个测试集的识别准确率均有明显提升,有效避免了使用单模型识别时,提升部分数据集的识别准确率,而降低其他数据集的识别准确率的问题,提高了模型的泛化性。

b.本次野外试验中,手机APP 搭载的是轻量级网络MobileNet V2_1.4,使用多模型联合识别方法后,该网络在实验室测试的平均准确率为91.56%,野外测试的准确率为85%,单张图像识别平均耗时为1.15 s,该结果仅反映单次试验的情况,不同的试验条件下,测试结果会有变化。目前手机APP 岩心识别只能给现场技术人员提供一种岩心类别判定的选项,辅助现场决策,还不能完全替代技术人员。

c.对基于图像的岩心识别进行了试验,试验结果依然还有较大的提升空间,通过选用更复杂的卷积神经网络、不断扩大岩心图像数据集、采用更有效的数据增强方法和策略、建立某个区域的专有岩心识别模型等手段,可以进一步提升岩心图像的识别准确率,为智能钻探的决策提供更有效的信息。

猜你喜欢
岩心卷积准确率
基于3D-Winograd的快速卷积算法设计及FPGA实现
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
从滤波器理解卷积
高速公路车牌识别标识站准确率验证法
基于傅里叶域卷积表示的目标跟踪算法
一种页岩岩心资料的保存方法
Acellular allogeneic nerve grafting combined with bone marrow mesenchymal stem cell transplantation for the repair of long-segment sciatic nerve defects: biomechanics and validation of mathematical models
长岩心注CO2气水交替驱试验模拟研究