OpenFWI代码

news2024/11/16 13:55:49

重点关注文章第4部分

一、代码模块概览

这一部分了解代码主要实现的功能有哪些。

二、运行

这一部分关注如何跑通。

三、数据集

12个数据集(11个2D+1个3D)
在这里插入图片描述
对计算机而言,上述输入、输出维度大小是按次数定义的。
在这里插入图片描述
以“Vel,Fault和Style”系列为例,观测系统设置是:
网格间距10m(Q:网格的作用是什么 A:一是建立数据和实际地球空间位置上的对应;二是方便数据处理。在实际勘探中,观测点分布可能不均匀,对没观测到的地方通过插值填充,此外网格化有助于标准化地震数据处理流程,确保不同数据集之间的一致性和可比性。)
每条炮线的长度是700m,炮间距是140m——共5次放炮
每条接收线的长度是700m,由于检波器间距是10m——共70个检波点
总共的记录时长是1s,每0.001s采样一次,一共采样1000次。

3.0数据加载

对于 Vel、Fault、Style 系列中的任何数据集,地震数据都保存为 .npy 文件,每个文件包含一批 500 个样本。
datai.npy 指地震数据的 i-th 样本,包含500个样本。
注意:并不是i取值从1-500,而是每份第i个.npy文件都包含500个样本。

import numpy as np
# load seismic data
seismic_data = np.load('data1.npy')
print(seismic_data.shape) #(500,5,1000,70)
# load velocity map
velocity_map = np.load('model1.npy')
print(velocity_map.shape) #(500,1,70,70)

Q:为什么加载的是data1.npy,地震数据的第1个样本,注释里print出来的却是500个样本?
A:歧义出现“地震数据的第1个样本”,实际上是地震数据的第1个.npy文件,每个.npy文件都包含500个样本。

the data is saved as .npy files, each file contains a batch of 500 samples. datai.npy refers to the i-th sample of seismic data

方式一:加载.npy文件的方法之一是可以通过.txt文件找位置。

3.1 与现有数据集特征的对比——文章第3部分

  • Wenlong Wang and Jianwei Ma. Velocity model building in a crosswell acquisition geometry with image-trained artificial neural networks. Geophysics, 85(2):U31–U46, 2020.
  • Bin Liu, Senlin Yang, Yuxiao Ren, Xinji Xu, Peng Jiang, and Yangkang Chen. Deep-learning seismic full-waveform inversion for realistic structural modelsdl seismic fwi. Geophysics, 86(1):R31–R44, 2021.
  • Mauricio Araya-Polo, Joseph Jennings, Amir Adler, and Taylor Dahlke. Deep-learning tomography. The Leading Edge, 37(1):58–66, 2018.
  • Fangshu Yang and Jianwei Ma. Deep-learning inversion: A next-generation seismic velocity model building method. Geophysics, 84(4):R583–R599, 2019.
  • Yuxiao Ren, Lichao Nie, Senlin Yang, Peng Jiang, and Yangkang Chen. Building complex seismic velocity models for deep learning inversion. IEEE Access, 9:63767–63778, 2021.
  • Zhicheng Geng, Zeyu Zhao, Yunzhi Shi, Xinming Wu, Sergey Fomel, and Mrinal Sen. Deep learning for velocity model building with common-image gather volumes. Geophysical Journal International, 228(2):1054–1070, 2022.
    在这里插入图片描述

地质结构

  • 界面 Mrinal K Sen. Seismic inversion. Society of Petroleum Engineers Richardson, TX, 2006.
  • 断层 Mauricio Araya-Polo, Taylor Dahlke, Charlie Frogner, Chiyuan Zhang, Tomaso Poggio, and Detlef Hohl. Automated fault detection without seismic processing. The Leading Edge, 36(3):208–214, 2017.
  • 多样性 Hui Li, Jing Lin, Baohai Wu, Jinghuai Gao, and Naihao Liu. Elastic properties estimation from prestack seismic data using ggcnns and application on tight sandstone reservoir characterization. IEEE Transactions on Geoscience and Remote Sensing, 60:1–21, 2021.

速度图是从三个来源生成的:数学函数、自然图像和地质储层。
这一特性显著增强了速度图的多样性和通用性。
数据生成流程在这里插入图片描述

  • 生成速度图的数学公式:
    在这里插入图片描述
    (f是用于模拟断层的随机线性函数)

  • 风格迁移的数学公式:
    在这里插入图片描述

3.2 基准方法对比——文章第4部分

  • InversionNet:
    Yue Wu and Youzuo Lin. InversionNet: An efficient and accurate data-driven full waveform inversion. IEEE Transactions on Computational Imaging, 6:419–433, 2019.
  • VelocityGAN:
    Zhongping Zhang and Youzuo Lin. Data-driven seismic waveform inversion: A study on the robustness and generalization. IEEE Transactions on Geoscience and Remote sensing,
    58(10):6900–6913, 2020.
  • UPFWI:
    Peng Jin, Xitong Zhang, Yinpeng Chen, Sharon Huang, Zicheng Liu, and Youzuo Lin. Unsurpervised learning of full-waveform inversion: Connecting CNN and partial differential equation in a loop. In Proc. Tenth International Conference on Learning Representations (ICLR), 2022.
  • InversionNet3D:
    Qili Zeng, Shihang Feng, Brendt Wohlberg, and Youzuo Lin. InversionNet3D: Efficient and scalable learning for 3-D full-waveform inversion. IEEE Transactions on Geoscience and Remote Sensing, 60:1–16, 2022.

3.3 OpenFWI数据集(对于Vel和Fault系列)的复杂性度量——文章第5部分

  • 复杂度指标1:熵
  • 复杂度指标2:空间信息度
  • 复杂度指标3:梯度稀疏指数

以上3个指标都是指标越大,越复杂。

四、效果展现

图5:复杂度指标(横轴——实际的速度图模型复杂度)和SSIM(纵轴——反演预测出来的速度图图像质量)之间的关系(映射)
(为什么要把模型复杂度评价指标和图像质量评价指标SSIM进行比较?)
观察随着目标反演的数据集变化,即速度图复杂度的变化,反演输出图像(速度图)质量的变化。
左图:以复杂度指标2为横轴,把Vel和Fault系列的8个数据集定量刻画在横轴上,经网络反演后的结果分别用SSIM度量。发现随着标签的复杂度增大,反演预测的图像质量也在下降。

M思考:3张图分别从不同的方面定量刻画标签复杂度:发现数据集的反演效果随熵(整体复杂度)增加变化不大,若是局部指标(像空间信息或梯度稀疏指数)变化,则对反演效果影响较大。说明描述数据集的重要属性是梯度稀疏指数。

不论哪个指标描述标签复杂度的变化,3张图像都反映了SSIM下降的趋势
因此得出结论:复杂的速度图更难从地震数据中反演。

下一步工作:
结合代码,加深对网络参数的理解,完善一、二的学习内容

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1911929.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Celery,一个实时处理的 Python 分布式系统

大家好!我是爱摸鱼的小鸿,关注我,收看每期的编程干货。 一个简单的库,也许能够开启我们的智慧之门, 一个普通的方法,也许能在危急时刻挽救我们于水深火热, 一个新颖的思维方式,也许能…

Spring-AOP(二)

作者:月下山川 公众号:月下山川 1、什么是AOP AOP(Aspect Oriented Programming)是一种设计思想,是软件设计领域中的面向切面编程,它是面向对象编程的一种补充和完善,它以通过预编译方式和运行期…

MySQL:TABLE_SCHEMA及其应用

MySQL TABLE_SCHEMA及其应用 - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite:http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress of this article:https://blog.csdn.net/qq_28550263/ar…

持久化存储与设备环境查询的最佳实践

ArkUI框架中的PersistentStorage和Environment 在ArkUI框架中,持久化存储和设备环境查询是应用开发中不可或缺的两个重要功能。在本文中,我们将深入了解框架提供的PersistentStorage和Environment,它们的用途、限制条件以及在应用开发中的使…

SDIO CMD 数据部分 CRC 计算规则

使用的在线 crc 计算工具网址:http://www.ip33.com/crc.html CMD CRC7 计算 如下图为使用逻辑分析仪获取的SDIO读写SD卡时,CMD16指令发送的格式,通过逻辑分析仪总线分析,可以看到,该部分的CRC7校验值得0x05,大多数情况…

二战架构师,拿下

前言 已经许久更新文章了,并不是因为我懒了,而是在备考系统架构师考试。个人感觉还是比较幸运的,低分飘过。现阶段任务也算完成了,记录一下感受。 什么是软考 软考,全称“计算机技术与软件专业技术资格&#xff08…

Agent如何帮助大模型“增强记忆”?

Agent如何帮助大模型“增强记忆”? 原创 格林 神州问学 2024年07月08日 17:50 日本 记忆反馈 >规划? 来源|神州问学 引言 去年6月份,Lilian发布了关于LLM驱动的Agent的结构和组件,其中包括规划、行动、工具还有记忆&#xff…

去除Win32 Tab Control控件每个选项卡上的深色对话框背景

一般情况下,我们是用不带边框的对话框来充当Tab Control的每个选项卡的内容的。 例如,主对话框IDD_TABBOX上有一个Tab Control,上面有两个选项卡,第一个选项卡用的是IDD_DIALOG1充当内容,第二个用的则是IDD_DIALOG2。I…

C++相关概念和易错语法(17)(适配器模式、仿函数)

1.stack和queue stack和queue的相关接口如下: stack queue 我们发现不管是stack还是queue,它们都有push和pop,不区分push_back和push_front,这是由它们的入栈特定顺序特性决定的,并且它们都没有迭代器,st…

【系统架构设计】计算机组成与体系结构(一)

计算机组成与体系结构 计算机系统组成计算机硬件组成控制器运算器主存储器辅助存储器输入设备输出设备 计算机系统结构的分类存储程序的概念Flynn分类 复杂指令集系统与精简指令集系统总线 存储器系统流水线 兜兜转转,最后还是回到了4大件,补基础&#x…

【力扣】数组中的第K个最大元素

一、题目描述 给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。 请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 你必须设计并实现时间复杂度为 O(n) 的算法解决此问题。 示例 1: 输入: [3,2,1,5,…

图片像素坐标转实际坐标的一种转换方案

原图 红色的点是我们标注的像素点,这些红色的点我们知道它的像素坐标,以及以右下角相机位置为原点的x y 实际坐标数值 通过转换,可以得到整个图片内部其余像素点的实际坐标, 这些红色的点是通过转换关系生成的,每隔一米…

python破解密码·筛查和选择

破解密码时可能遇到的几种情况 ① 已知密码字符,破排序 ② 已知密码位数,破字符 ③ 已知密码类型,破字位 ④ 已知部分密码,破未知 ⑤ 啥都不知道,盲破,玩完 ⑥ 已知位数、字符、类型、部分密码中的几个&am…

2024全网最全面及最新且最为详细的网络安全技巧五 之 SSRF 漏洞EXP技巧,典例分析以及 如何修复 (下册)———— 作者:LJS

五.SSRF 漏洞EXP技巧,典例分析以及 如何修复 (下册) 目录 五.SSRF 漏洞EXP技巧,典例分析以及 如何修复 (下册) 5.4gopher 协议初探 0x01 Gopher协议 0x02 协议访问学习 复现环境 centos7 kali 2018 发送http get请求 发送http post请求 5.5 SSRF…

☺初识c++(语法篇)☺

目录 一命名空间(namespace): 二cout与cin简述: 三缺省参数: 四函数重载: 五引用: 六内联函数: 七c中的nullptr简述: 一命名空间(namespace)&#xff1…

Chromium编译指南2024 Linux篇-同步Chromium第三方库(四)

1.引言 在成功拉取Chromium源码并创建新分支后,我们需要进一步配置开发环境。这包括拉取必要的第三方库以及设置hooks,以确保我们能够顺利进行编译和开发工作。以下步骤将详细介绍如何进行这些配置。 2.拉取第三方库以及hooks Chromium 使用了大量的第…

2024第六届上海国际新材料展览会-12月精彩呈现

2024第六届上海国际新材料展览会 The 6th shanghai International New Materials Exhibition in 2024 时 间:2024年12月18-20日 地 点:上海新国际博览中心 CIME 2024专业、权威,涵盖整个新材料行业的国际盛会。 期待与您在CIME 2024现场相…

24-7-9-读书笔记(九)-《爱与生的苦恼》[德]叔本华 [译]金玲

文章目录 《爱与生的苦恼》阅读笔记记录总结 《爱与生的苦恼》 《爱与生的苦恼》叔本华大佬的名书,里面有其“臭名昭著”的《论女人》,抛开这篇其他的还是挺不错的,哲学我也是一知半解,这里看得也凭喜好,这里记录一些自…

大模型/NLP/算法面试题总结2——transformer流程//多头//clip//对比学习//对比学习损失函数

用语言介绍一下Transformer的整体流程 1. 输入嵌入(Input Embedding) 输入序列(如句子中的单词)首先通过嵌入层转化为高维度的向量表示。嵌入层的输出是一个矩阵,每一行对应一个输入单词的嵌入向量。 2. 位置编码&…

Qt 创建的窗口一闪而过【已解决】

Qt 创建的窗口一闪而过 引言一、详细的解决方案 - 附代码二、参考博文 引言 创建的窗口一闪而过,就是创建完立马被销毁了,常见情况是在一个函数中创建窗口并show() - 即创建在了栈上,函数结束局部变量(窗口)自动被释放。主流的解决方法有两种…