美文网首页
深度学习断层实战(五)——预测结果定性分析(附程序)

深度学习断层实战(五)——预测结果定性分析(附程序)

作者: 科技州与数据州 | 来源:发表于2022-01-15 09:34 被阅读0次

    地震断层显示了地下地层的运行情况,对地震勘探,油气藏预测起着重要的参考的作用。断层可以显示地震带的走向,也可以在油气运移中起到通道的作用,对油气形成起到圈闭的作用。因此通过图形化界面,清晰显示出剖面的断层,成为了地震勘探研究中不可或缺的部分。

    01 断层数据准备

    我们使用程序自动生成了三维地震数据体和对应的断层标识,包括了20对地震数据体和对应的断层标识。每个数据体的尺寸是128*128*128。数据如图所示:

    对应的断层标识数据是这样的:

    其中1标识了在剖面中断层的位置。所有的剖面集成就形成了体数据。

    我们使用Python程序来实现了断层的显示。

    我们编写了load_data_synth函数来加载所有的数据体和对应的断层体。

    这段程序主要是使用np.fromfile函数来读取二进制地震数据。

    这样就加载了地震数据和断层数据:

    02 在二维剖面显示断层

    首先,我们编写了show_image_synth函数来显示断层。

    这段函数的要点是通过plt.imshow来叠加显示图片。alpha控制这透明度。

    在断层处理方面,我们又编写了create_img_alpha函数。

    这里对断层的数值进行了条件约束,让阈值小于0.5的断层值为0,大于0.5的断层值为1。这段程序是针对预测的断层结果进行处理,预测断层结果是一个0-1的概率,因此需要条件约束。

    接下来是对断层线的颜色进行赋值,通过三个通道进行赋值,可以让断层线成为红色、黄色、蓝色等不同颜色。

    显示出来的断层效果就是这样的。通过断层在地震剖面上叠加显示,可以清楚地看出剖面上断层的位置和走向。

    03 在三维地震体中显示断层

    在二维剖面显示断层比较简单,就是inshow函数显示。但是要显示三维数据难度就比较大了。

    我们选择了专业显示三维图像的mayavi来显示三维地震体断层。

    首先要对数据体进行归一化处理。

    然后要加载数据体,并进行位置标定。

    最后就是叠加显示三维地震体和断层体。

    这里有几个需要注意的地方:

    1.为了显示透明的叠加效果,需要配置transparent和opacity参数。

    2.如果想调整显示界面,可以调整colormap中的参数。不过有些显示没有透明效果,就不能叠加显示图形。

    3. mayavi显示对计算机性能要求较高,有时候运行速度较慢。

    上图是运行的效果,可以让大家直观观察三维数据体的不同方向断层分布情况,显示的内容比二维数据更加的丰富。

    其实三维数据显示不仅仅可以在Python环境可以做,也可以在其它环境来做。

    这是在Jython环境中显示的效果:

    这是在Petrel软件中显示的效果:

    以上就是这次课程的内容。我们给大家讲解了可视化显示二维和三维地震体断层的方法,相信能够帮助大家深入研究地震勘探和地质构造。如果对程序感兴趣可以联系我交流。再见。

    扩展阅读:

    怎样轻松入门地震勘探研究:先从地震数据处理开始

    教你如何从0开启地震深度学习科研之路

    相关文章

      网友评论

          本文标题:深度学习断层实战(五)——预测结果定性分析(附程序)

          本文链接:https://www.haomeiwen.com/subject/qurthrtx.html