Esempio n. 1
0
def goSinoTraces():
  na,ka = 41,-20 # sampling for inverse A
  nh,kh = 41,-20 # sampling for wavelet H
  nt,dt,ft = 501,0.004,0.000 # used for plotting only
  #nx,dx,fx = 721,0.015,0.000
  sa = Sampling(na,dt,ka*dt)
  sh = Sampling(nh,dt,kh*dt)
  st = Sampling(nt,dt,ft)
  f,g,u = getSinoTraces(16) # PP trace f(t), PS trace g(u), and warping u(t)
  ww = WaveletWarpingAH()
  ww.setTimeRange(100,500) # PP time window
  ww.setStabilityFactor(0.001) # stability factor
  ww.setMaxIterations(100) # max Gauss-Newton iterations
  a,h = ww.getAHGaussNewton(na,ka,nh,kh,u,f,g)
  sg = ww.warp(u,g)
  ag = ww.convolve(na,ka,a,g)
  sag = ww.warp(u,ag)
  hsag = ww.convolve(nh,kh,h,sag)
  dump(a)
  g = copy(nt,g)
  sg = copy(nt,sg)
  sag = copy(nt,sag)
  hsag = copy(nt,hsag)
  fmhsag= sub(f,hsag)
  plotWavelets(sa,[a],title="A")
  plotWavelets(sh,[h],title="H")
  plotTraces(st,[f,hsag,fmhsag],labels=["f","HSAg","f-HSAg"])
Esempio n. 2
0
def goSinoTraces():
    na, ka = 41, -20  # sampling for inverse A
    nh, kh = 41, -20  # sampling for wavelet H
    nt, dt, ft = 501, 0.004, 0.000  # used for plotting only
    #nx,dx,fx = 721,0.015,0.000
    sa = Sampling(na, dt, ka * dt)
    sh = Sampling(nh, dt, kh * dt)
    st = Sampling(nt, dt, ft)
    f, g, u = getSinoTraces(
        16)  # PP trace f(t), PS trace g(u), and warping u(t)
    ww = WaveletWarpingAH()
    ww.setTimeRange(100, 500)  # PP time window
    ww.setStabilityFactor(0.001)  # stability factor
    ww.setMaxIterations(100)  # max Gauss-Newton iterations
    a, h = ww.getAHGaussNewton(na, ka, nh, kh, u, f, g)
    sg = ww.warp(u, g)
    ag = ww.convolve(na, ka, a, g)
    sag = ww.warp(u, ag)
    hsag = ww.convolve(nh, kh, h, sag)
    dump(a)
    g = copy(nt, g)
    sg = copy(nt, sg)
    sag = copy(nt, sag)
    hsag = copy(nt, hsag)
    fmhsag = sub(f, hsag)
    plotWavelets(sa, [a], title="A")
    plotWavelets(sh, [h], title="H")
    plotTraces(st, [f, hsag, fmhsag], labels=["f", "HSAg", "f-HSAg"])
Esempio n. 3
0
def goSinoImages():
  na,ka = 21,-10 # sampling for inverse A
  nh,kh = 81,-40 # sampling for wavelet H
  nt,dt,ft = 501,0.004,0.000 # used for plotting only
  #nx,dx,fx = 721,0.015,0.000
  nx,dx,fx = 101,0.015,0.000
  sa = Sampling(na,dt,ka*dt)
  sh = Sampling(nh,dt,kh*dt)
  st = Sampling(nt,dt,ft)
  sx = Sampling(nx,dx,fx)
  tmin,tmax = 100,500 # PP time window
  f,g,u = getSinoImages() # PP image, PS image, and warping u(t,x)
  ww = WaveletWarpingAH()
  ww.setTimeRange(100,400) # PP time window
  ww.setStabilityFactor(0.0001) # stability factor
  ww.setMaxIterations(20) # max Gauss-Newton iterations
  a,h = ww.getAHGaussNewton(na,ka,nh,kh,u,f,g)
  dump(a)
  sg = ww.warp(u,g)
  ag = ww.convolve(na,ka,a,g)
  sag = ww.warp(u,ag)
  hsag = ww.convolve(nh,kh,h,sag)
  normalizeRms(f)
  normalizeRms(sg)
  normalizeRms(hsag)
  plotImage(st,sx,f,zoom=True,png="f")
  plotWavelets(sa,[a],title="A")
  plotWavelets(sh,[h],title="H")
  plotImage(st,sx,sg,zoom=True,png="Sg")
  plotImage(st,sx,hsag,zoom=True,png="HSAg")
Esempio n. 4
0
def goSinoImages():
    na, ka = 21, -10  # sampling for inverse A
    nh, kh = 81, -40  # sampling for wavelet H
    nt, dt, ft = 501, 0.004, 0.000  # used for plotting only
    #nx,dx,fx = 721,0.015,0.000
    nx, dx, fx = 101, 0.015, 0.000
    sa = Sampling(na, dt, ka * dt)
    sh = Sampling(nh, dt, kh * dt)
    st = Sampling(nt, dt, ft)
    sx = Sampling(nx, dx, fx)
    tmin, tmax = 100, 500  # PP time window
    f, g, u = getSinoImages()  # PP image, PS image, and warping u(t,x)
    ww = WaveletWarpingAH()
    ww.setTimeRange(100, 400)  # PP time window
    ww.setStabilityFactor(0.0001)  # stability factor
    ww.setMaxIterations(20)  # max Gauss-Newton iterations
    a, h = ww.getAHGaussNewton(na, ka, nh, kh, u, f, g)
    dump(a)
    sg = ww.warp(u, g)
    ag = ww.convolve(na, ka, a, g)
    sag = ww.warp(u, ag)
    hsag = ww.convolve(nh, kh, h, sag)
    normalizeRms(f)
    normalizeRms(sg)
    normalizeRms(hsag)
    plotImage(st, sx, f, zoom=True, png="f")
    plotWavelets(sa, [a], title="A")
    plotWavelets(sh, [h], title="H")
    plotImage(st, sx, sg, zoom=True, png="Sg")
    plotImage(st, sx, hsag, zoom=True, png="HSAg")