python segy格式地震数据读写包segyio学习笔记(二)
最近大致搞明白了segyio读取叠后和叠前segy数据的方法,以及内部存储结构,以两段代码为例:
叠后数据读取。这是一个从给定时窗内提取每道的均方根振幅,然后进行拟合求取tar因子的简单代码:
import segyio
import numpy as np
import matplotlib.pyplot as plt
file = ‘/home/geou6/0922_j301_down_test.segy’
data =np.loadtxt(’/home/geou6/0922_j301_op_ampana.txt’
r = np.array([])
with segyio.open(file, iline=189, xline=21) as f:
for l in f.iline:
for t in l:
amp = np.sqrt(np.mean(t ** 2))
r = np.append(r, amp)
lnt = np.log(data[:, 2])
lnr = np.log®
f_1 = np.polyfit(lnt, lnr, 1)
p_1 = np.poly1d(f_1)
print(f_1)
print(p_1)
plt.plot(data[:, 2], r)
plt.show()
plt.plot(lnt, lnr)
plt.show()
读取叠后数据时,第一个循环l in f.iline,这时l是一条