本发明涉及地质图像分割技术领域,具体的说是一种基于卷积神经网络的盐矿智能检测方法及系统。
背景技术:
利用振动波在不同介质中传播速度的差异可以对地下结构进行成像。形成的图像一般为灰度图,且不同介质的边缘会比较清晰,但同一种介质成像模糊,如附图一左图所示。工程中常使用振波成像技术分析地下矿石成分,例如探测盐矿。振动波在盐矿中的传播速度较一般岩石快,在盐矿与其它岩石地下结构的边界,其振波图像会形成尖锐的边界线。经验丰富的地质探测人员可通过振波图像判断是否为盐矿。但在实际探测中,在一片大的区域内会形成大量振波图像,每张图像描绘了不同深度和有限区域内振波图,完全依赖探测人员对所有图像进行逐一判别耗时费力,而且容易出错。
以往盐矿探测保留了大量振波图,且已经经过了专业人员进行分析,因为积累了大量标注数据。例如附图一中,图左是振波图,图右是根据专家的判别或实际开采情况生成的掩膜图,图中盐矿部分用白色表示,非盐矿部分用黑色表示。利用这些标注数据,可以训练神经网络模型对新产生的振波图进行自动分类。具体来说,该问题的核心是对振波图中每一个像素是否为盐矿进行分类,为典型的图像分割问题。
unet模型是一种专门对生物医疗图像进行分割的卷积神经网络模型。如附图2所示,该模型由不同的卷积块拼接而成,不同的块之间或通过最大池化进行下采样(模型左侧部分),或通过转置卷积进行上采样(模型右侧部分),每个块内部由卷积层连接提取图像特征。值得注意的是,处于同一水平层级的块之间也存在输入关系,如附图3所示,块b’输入的特征图由前一层输出的特征图和同一级块b输出的特征图堆叠而成。
技术实现要素:
本发明针对目前技术发展的需求和不足之处,提供一种基于卷积神经网络的盐矿智能检测方法及系统。
本发明的一种基于卷积神经网络的盐矿智能检测方法,解决上述技术问题采用的技术方案如下:
一种基于卷积神经网络的盐矿智能检测方法,该检测方法包括:
1)训练部分:
1a)收集振波图,专家对振波图中的盐矿进行判定并标记;
1b)按照设定的分辨率分割振波图,将分割后所有振波图作为训练集;
1c)在深度学习平台上搭建unet模型,在unet模型的同一层级引入卷积层,设定unet模型的训练停止参数,将训练集引入unet模型进行学习,得到可以对振波图中盐矿进行分割的新unet模型;
2)检测部分:
2a)将新unet模型部署到计算机设备;
2b)设定阈值,将待检测振波图引入新unet模型分割成多个振波图单元,得到所有振波图单元的掩膜图,并根据设定的阈值,将掩膜图转变成二值化掩膜图;
2c)拼接所有二值化掩膜图后得到高清掩膜图,设定盐矿阈值,比较高清掩膜图中盐矿面积粘总面积的比例,从而发现振波图中是否发现盐矿。
在步骤1a)中,专家对振波图进行判定后,将振波图中被判定为盐矿的部分标记为像素1,其余标记为像素0。
在步骤2b)中,掩膜图中超过设定阈值的部分输出像素值为1,否则输出像素值为0,即可实现将掩膜图转变成二值化掩膜图。
在训练部分,同一张振波图按照设定分辨率分割后标记为相同编号,编号不同的所有振波图组合为训练集;将训练集引入unet模型进行学习时,首先引入具有相同编号的振波图分别进行训练,随后引入训练集所有振波图进行训练,多次训练得到可以对振波图中盐矿进行分割的新unet模型。
在步骤2b)中,搭建unet模型的过程中,在unet模型的同一层级的两个块b和b’之间引入卷积层,该卷积层具有一个输出特征图通道,该卷积层首先对块b中最后一层的特征图进行卷积运算,其次对块b’中前一层的特征图进行堆叠,最后将堆叠后的特征图进行卷积运算,引入卷积层后的新unet模型能够得到原始高分辨率、大尺度振波图对应的高清掩膜图。
可选的,专家设定分辨率为pxq,找出收集振波图中分辨率超过pxq的振波图,并将分辨率超过pxq的振波图分割到pxq大小,同一张振波图被分割成多个振波图单元,多个振波图单元的面积之和不小于该张振波图的总面积。
基于上述检测方法,本发明还提供一种基于卷积神经网络的盐矿智能检测系统,该检测系统包括:
收集模块,用于收集振波图;
标记模块,用于标记专家判定振波图中的盐矿,专家将振波图中被判定为盐矿的部分标记为像素1,其余标记为像素0;
设定分割模块,用于设定分辨率并按照分辨率分割专家标记后的振波图;
集合模块,用于集合分割后的所有振波图;
训练构建模块,用于在深度学习平台上搭建unet模型,并在unet模型的同一层级引入卷积层,通过设定unet模型的训练停止参数,将振波图集合引入unet模型进行训练,构建可以对振波图中盐矿进行分割的新unet模型;
新unet模型,基于设定阈值将待检测振波图进行分割,得到分割后振波图的掩膜图,并根据设定阈值将掩膜图转变成二值化掩膜图,拼接所有二值化掩膜图后得到高清掩膜图,设定盐矿阈值,比较高清掩膜图中盐矿面积粘总面积的比例,从而发现振波图中是否发现盐矿。
掩膜图中超过设定阈值的部分输出像素值为1,否则输出像素值为0,即可实现将掩膜图转变成二值化掩膜图。
检测系统还包括:
编码模块,用于对振波图进行编码,所有振波图组合为训练集,且同一张振波图按照设定分辨率分割后标记为相同编号;训练构建模块首先引入具有相同编号的振波图分别进行训练,随后引入训练集所有振波图进行训练,多次训练得到可以对振波图中盐矿进行分割的新unet模型。
可选的,所涉及卷积层具有一个输出特征图通道,该卷积层首先对块b中最后一层的特征图进行卷积运算,其次对块b’中前一层的特征图进行堆叠,最后将堆叠后的特征图进行卷积运算,引入卷积层后的新unet模型能够得到原始高分辨率、大尺度振波图对应的高清掩膜图。
本发明的一种基于卷积神经网络的盐矿智能检测方法及系统,与现有技术相比具有的有益效果是:
1)本发明的检测方法用于检测盐矿,包括训练部分和检测部分;其中,训练部分需要收集振波图,专家判定振波图中的盐矿并进行标记,随后设定分辨率进行振波图的分割,所分割振波图作为训练集,在深度学习平台上搭建unet模型,在unet模型的同一层级引入卷积层,设定unet模型的训练停止参数,将训练集引入unet模型进行学习,得到可以对振波图中盐矿进行分割的新unet模型;在检测部分,将待检测振波图引入新unet模型,通过设定阈值分割待检测振波图得到掩膜图,并将掩膜图转变成二值化掩膜图,拼接所有二值化掩膜图后得到高清掩膜图,再通过设定盐矿阈值,比较高清掩膜图中盐矿面积粘总面积的比例,发现振波图中是否发现盐矿;本方法通过分割振波图,并将分割后振波图引入具有卷积层的unet模型进行学习,从而构建新unet模型,在提高了检测效率的同时,还降低了新unet模型的计算量,尤其适用于智能检测大尺度大分辨率的振波图;
2)本发明的检测系统与上述方法相结合,也包括训练部分和检测部分;在训练部分,利用收集模块完成振波图的收集,利用标记模块标记专家所判定振波图的盐矿部分,利用设定分割模块将振波图分割成小尺寸,利用集合模块集合分割后振波图,利用训练构建模块在深度学习平台上搭建unet模型,并在unet模型的同一层级引入卷积层,对分割后振波图进行深度学习后构建可以对振波图中盐矿进行分割的新unet模型;在检测部分,则利用新unet模型对振波图进行分割,随后得到分割后振波图的掩膜图,将掩膜图转变成二值化掩膜图,拼接所有二值化掩膜图后得到高清掩膜图,设定盐矿阈值,比较高清掩膜图中盐矿面积粘总面积的比例,发现振波图中是否发现盐矿;本系统在提高了检测效率的同时,还降低了新unet模型的计算量,尤其适用于智能检测大尺度大分辨率的振波图。
附图说明
附图1是本发明地下振波成像(左)与其标注后的盐矿掩膜图(右);
附图2是本发明unet模型的结构示意图;
附图3是本发明unet模型同层级的左右两个块之间的连接示意图;
附图4是本发明unet模型同层级的左右两个块之间引入卷积层的连接示意图;
附图5是本发明实施例二的结构连接框图。
附图中各标号信息表示:
10、收集模块,20、标记模块,30、设定分割模块,40、集合模块,
50、训练构建模块,60、新unet模型,70、编码模块。
具体实施方式
为使本发明的技术方案、解决的技术问题和技术效果更加清楚明白,以下结合具体实施例,对本发明的技术方案进行清查、完整的描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下获得的所有实施例,都在本发明的保护范围之内。
实施例一:
本实施例提出一种基于卷积神经网络的盐矿智能检测方法,该检测方法包括:
1)训练部分:
1a)收集振波图,专家对振波图中的盐矿进行判定并标记,参考附图1,;
1b)按照设定的分辨率分割振波图,将分割后所有振波图作为训练集;
1c)在深度学习平台上搭建unet模型,参考附图2,在unet模型的同一层级引入卷积层,设定unet模型的训练停止参数,将训练集引入unet模型进行学习,得到可以对振波图中盐矿进行分割的新unet模型;
2)检测部分:
2a)将新unet模型部署到计算机设备;
2b)设定阈值,将待检测振波图引入新unet模型分割成多个振波图单元,得到所有振波图单元的掩膜图,并根据设定的阈值,将掩膜图转变成二值化掩膜图;
2c)拼接所有二值化掩膜图后得到高清掩膜图,设定盐矿阈值,比较高清掩膜图中盐矿面积粘总面积的比例,从而发现振波图中是否发现盐矿。
在步骤1a)中,专家对振波图进行判定后,将振波图中被判定为盐矿的部分标记为像素1,即白色,其余标记为像素0,即黑色。
在步骤2b)中,掩膜图中超过设定阈值的部分输出像素值为1,否则输出像素值为0,即可实现将掩膜图转变成二值化掩膜图。
在训练部分,同一张振波图按照设定分辨率分割后标记为相同编号,编号不同的所有振波图组合为训练集;将训练集引入unet模型进行学习时,首先引入具有相同编号的振波图分别进行训练,随后引入训练集所有振波图进行训练,多次训练得到可以对振波图中盐矿进行分割的新unet模型。
在步骤2b)中,搭建unet模型的过程中,在unet模型的同一层级的两个块b和b’之间引入卷积层,该卷积层具有一个输出特征图通道,该卷积层首先对块b中最后一层的特征图进行卷积运算,其次对块b’中前一层的特征图进行堆叠,最后将堆叠后的特征图进行卷积运算,引入卷积层后的新unet模型能够得到原始高分辨率、大尺度振波图对应的高清掩膜图。
可选的,专家设定分辨率为pxq,找出收集振波图中分辨率超过pxq的振波图,并将分辨率超过pxq的振波图分割到pxq大小,同一张振波图被分割成多个振波图单元,多个振波图单元的面积之和不小于该张振波图的总面积。
参考附图3、4,同一层级的两个块b和b’,设b中最后一层的特征图为fm1大小为h×w×c1,分别表示特征图的高度、宽度和通道数。b’前一层输入的特征图为fm2,大小为h×w×c2,b’中将两个特征图堆叠,大小为h×w×(c1+c2),设b’中第一层卷积输出的特征图为fm3,大小为h×w×k,卷积核大小为r×s×(c1+c2)×k,r为卷积核高度,s为卷积核宽度,(c1+c2)为卷积核通道数,k为卷积核个数。则由特征图fm1得到特征图fm3的计算量为:
q1=r×s×(c1+c2)×h×w×k
为了增加模型对特征的学习能力,在两个块b和b’之间加入一个卷积层,为了降低运算量,令输出特征图的通道数为1。即在特征图fm1与fm2进行堆叠之前,对fm1进行卷积运算,且其卷积核大小为r1×s1×c1×1,得到特征图fm1’,将fm1’与fm2堆叠,进行后面的卷积运算,得到特征图fm3。经过改进之后,由特征图fm1得到特征图fm3的计算量为:
q2=r×s×(c2+1)×h×w×k+r1×s1×c1×1×h×w
另,根据unet的结构特点可知c1、c2与k存在相等关系。卷积核宽度、高度一般均设置为3,即r=s=r1=s1。
因此,q1=2×q2,即计算量降低了一倍。
unet模型适合小尺度的图像分割,但是振波图因为距离远而尺度一般较大,直接缩小到输入尺寸会使得图像严重失真,损失大量细节信息,导致分类失败。另一方面,直接裁剪一部分图像,等效于缩小探测区域,小区域的探测结果无法反应整体盐矿面貌。本实施例的unet模型中同层级的两个块之间引入了卷积层,对高分辨率、大尺度振波图进行有序剪切,保持图像细节,将所有剪切的图像输入到模型依次进行分类,依照输入图像在原始图像中的位置对所有分类结果进行拼接,得到原始高分辨率、大尺度振波图对应的高清掩膜图。
本实施例的检测方法用于检测盐矿,包括训练部分和检测部分;其中,训练部分需要收集振波图,专家判定振波图中的盐矿并进行标记,随后设定分辨率进行振波图的分割,所分割振波图作为训练集,在深度学习平台上搭建unet模型,在unet模型的同一层级引入卷积层,设定unet模型的训练停止参数,将训练集引入unet模型进行学习,得到可以对振波图中盐矿进行分割的新unet模型;在检测部分,将待检测振波图引入新unet模型,通过设定阈值分割待检测振波图得到掩膜图,并将掩膜图转变成二值化掩膜图,拼接所有二值化掩膜图后得到高清掩膜图,再通过设定盐矿阈值,比较高清掩膜图中盐矿面积粘总面积的比例,发现振波图中是否发现盐矿。
本实施例的检测方法通过分割振波图,并将分割后振波图引入具有卷积层的unet模型进行学习,从而构建新unet模型,在提高了检测效率的同时,还降低了新unet模型的计算量,尤其适用于智能检测大尺度大分辨率的振波图。
实施例二:
结合附图5,本实施例提出一种基于卷积神经网络的盐矿智能检测系统,该检测系统包括:
收集模块10,用于收集振波图;
标记模块20,用于标记专家判定振波图中的盐矿,专家将振波图中被判定为盐矿的部分标记为像素1,即白色,其余标记为像素0,即黑色;
设定分割模块30,用于设定分辨率并按照分辨率分割专家标记后的振波图;
集合模块40,用于集合分割后的所有振波图;
训练构建模块50,用于在深度学习平台上搭建unet模型,并在unet模型的同一层级引入卷积层,通过设定unet模型的训练停止参数,将振波图集合引入unet模型进行训练,构建可以对振波图中盐矿进行分割的新unet模型60;
新unet模型60,基于设定阈值将待检测振波图进行分割,得到分割后振波图的掩膜图,并根据设定阈值将掩膜图转变成二值化掩膜图,拼接所有二值化掩膜图后得到高清掩膜图,设定盐矿阈值,比较高清掩膜图中盐矿面积粘总面积的比例,从而发现振波图中是否发现盐矿。
掩膜图中超过设定阈值的部分输出像素值为1,否则输出像素值为0,即可实现将掩膜图转变成二值化掩膜图。
检测系统还包括:
编码模块70,用于对振波图进行编码,所有振波图组合为训练集,且同一张振波图按照设定分辨率分割后标记为相同编号;训练构建模块50首先引入具有相同编号的振波图分别进行训练,随后引入训练集所有振波图进行训练,多次训练得到可以对振波图中盐矿进行分割的新unet模型。
所涉及卷积层具有一个输出特征图通道,该卷积层首先对块b中最后一层的特征图进行卷积运算,其次对块b’中前一层的特征图进行堆叠,最后将堆叠后的特征图进行卷积运算,引入卷积层后的新unet模型能够得到原始高分辨率、大尺度振波图对应的高清掩膜图。
参考附图3、4,同一层级的两个块b和b’,设b中最后一层的特征图为fm1大小为h×w×c1,分别表示特征图的高度、宽度和通道数。b’前一层输入的特征图为fm2,大小为h×w×c2,b’中将两个特征图堆叠,大小为h×w×(c1+c2),设b’中第一层卷积输出的特征图为fm3,大小为h×w×k,卷积核大小为r×s×(c1+c2)×k,r为卷积核高度,s为卷积核宽度,(c1+c2)为卷积核通道数,k为卷积核个数。则由特征图fm1得到特征图fm3的计算量为:
q1=r×s×(c1+c2)×h×w×k
为了增加模型对特征的学习能力,在两个块b和b’之间加入一个卷积层,为了降低运算量,令输出特征图的通道数为1。即在特征图fm1与fm2进行堆叠之前,对fm1进行卷积运算,且其卷积核大小为r1×s1×c1×1,得到特征图fm1’,将fm1’与fm2堆叠,进行后面的卷积运算,得到特征图fm3。经过改进之后,由特征图fm1得到特征图fm3的计算量为:
q2=r×s×(c2+1)×h×w×k+r1×s1×c1×1×h×w
另,根据unet的结构特点可知c1、c2与k存在相等关系。卷积核宽度、高度一般均设置为3,即r=s=r1=s1。
因此,q1=2×q2,即计算量降低了一倍。
本实施例的检测系统与实施例一的检测方法相结合,也包括训练部分和检测部分;在训练部分,利用收集模块10完成振波图的收集,利用标记模块20标记专家所判定振波图的盐矿部分,利用设定分割模块30将振波图分割成小尺寸,利用集合模块40集合分割后振波图,利用训练构建模块50在深度学习平台上搭建unet模型,并在unet模型的同一层级引入卷积层,对分割后振波图进行深度学习后构建可以对振波图中盐矿进行分割的新unet模型60;在检测部分,则利用新unet模型60对振波图进行分割,随后得到分割后振波图的掩膜图,将掩膜图转变成二值化掩膜图,拼接所有二值化掩膜图后得到高清掩膜图,设定盐矿阈值,比较高清掩膜图中盐矿面积粘总面积的比例,发现振波图中是否发现盐矿。本实施例的检测系统在提高了检测效率的同时,还降低了新unet模型的计算量,尤其适用于智能检测大尺度大分辨率的振波图。
以上应用具体个例对本发明的原理及实施方式进行了详细阐述,这些实施例只是用于帮助理解本发明的核心技术内容,并不用于限制本发明的保护范围,本发明的技术方案不限制于上述具体实施方式内。基于本发明的上述具体实施例,本技术领域的技术人员在不脱离本发明原理的前提下,对本发明所作出的任何改进和修饰,皆应落入本发明的专利保护范围。