用途
该技能面向地震数据的端到端解释工作流,从 SEG-Y 文件加载开始,经过信号处理、岩石物理建模,最终完成三维可视化。它把多个专业库串联成一条可执行的流水线,适合需要把地震数据从原始文件推进到解释成果的场景。
主要能力
技能链由五个阶段组成:
- SEG-Y 输入输出(segyio):加载叠后数据体,读取道头,处理三维几何,支持 inline/crossline 快速排序。
- 信号处理(obspy):带通滤波、FFT、仪器响应、频谱分析。
- 岩石物理(bruges):AVO 建模、流体替换、合成地震记录、Zoeppritz 反射系数计算。
- 频散分析(disba):面波分析,计算相速度与频散曲线,支持反演。
- 三维可视化(pyvista):体渲染、切片显示、层位拾取。
使用方式
工作流按阶段编排,每个阶段有明确的决策点:
- 数据加载:使用
segyio.open()打开 SEG-Y,指定 iline=189、xline=193 等字节位置。加载器会校验投影 CRS、测量单位(米或英尺)、时间采样一致性,并检测重复的 inline/crossline 位置和不完整网格。 - 信号处理:使用 obspy 的
Trace.filter('bandpass', ...)对每条道做零相位带通滤波,频率需低于 Nyquist 频率。 - 岩石物理:可选分支,需要井导出的 vp、vs、rho、孔隙度和双程时输入。使用
bruges.reflection.zoeppritz_rpp()计算 AVO 响应,使用avseth_fluidsub()做流体替换,再用 Ricker 子波与反射系数褶积生成合成记录。 - 面波分析:可选分支,使用 disba 的
PhaseDispersion定义速度模型,计算 Rayleigh 波基阶频散曲线。 - 可视化:使用 pyvista 的
StructuredGrid构建网格,保留旋转、非单位间距和地理原点,支持切片显示和保存为 .vts 文件。
适用场景
- 从 SEG-Y 文件处理地震数据直至解释
- 构建结合井曲线和地震的 AVO 分析流水线
- 地震质控、属性提取或体可视化
- 面波分析(MASW/SASW)工作流
- 为井震标定制作合成地震记录
限制
- 岩石物理分支需要井导出的弹性参数,无法从地震数据体本身推断。
- 深度测井需先通过标定的时深关系映射到时间域。
- 可视化网格的第三轴是时间而非深度,混合单位网格中的距离和体积不是物理空间测量值;深度转换需要速度模型。
- 大体积数据体可能遇到内存错误,建议逐 inline 加载。
- 若仅需读写 SEG-Y、仅处理波形或仅计算岩石物理方程,应单独使用对应库。