Exemplo n.º 1
0
def goThin():
    s1, s2, g = getImage()
    g = slog(g)
    # plot2(s1,s2,g,title="log input")
    fse = FaultSemblance()
    g = fse.taper(10, g)
    for iter in range(1):
        p = fse.slopes(g)
        # p = zerofloat(len(p[0]),len(p))
        sn, sd = fse.semblanceNumDen(p, g)
        fsc = FaultScanner2(sigmaTheta, [sn, sd], smoother)
        f, t = fsc.scan(-15, 15)
        # plot2(s1,s2,g,f,gmin=0,gmax=1,title="fault likelihood")
        # plot2(s1,s2,g,t,title="fault dip (degrees)")
        fs = copy(f)
        RecursiveGaussianFilter(1.0).apply00(fs, fs)
        # plot2(s1,s2,g,fs,gmin=0,gmax=1,title="fault likelihood smoothed")
        plot2(s1, s2, g, fs, gmin=0.5, gmax=1, gmap=jetr, label="Fault likelihood")
        ft, tt = fsc.thin([f, t])
        # plot2(s1,s2,g,ft,gmin=0,gmax=1,title="fault likelihood thinned")
        # plot2(s1,s2,g,tt,title="fault dip (degrees) thinned")
        plot2(s1, s2, g, ft, gmin=0.5, gmax=1, gmap=jetr, label="Fault likelihood", png="flt")
        plot2(s1, s2, g, tt, gmap=bwrn, label="Fault dip (degrees)", png="ftt")
        g = fsc.smooth(8, p, ft, g)
        # plot2(s1,s2,g,title="input smoothed")
        plot2(s1, s2, g, label="Log amplitude", png="gs")
Exemplo n.º 2
0
def goThin():
  s1,s2,g = getImage()
  g = slog(g)
  #plot2(s1,s2,g,title="log input")
  fse = FaultSemblance()
  g = fse.taper(10,g)
  for iter in range(1):
    p = fse.slopes(g)
    #p = zerofloat(len(p[0]),len(p))
    sn,sd = fse.semblanceNumDen(p,g)
    fsc = FaultScanner2(sigmaTheta,[sn,sd],smoother)
    f,t = fsc.scan(-15,15)
    #plot2(s1,s2,g,f,gmin=0,gmax=1,title="fault likelihood")
    #plot2(s1,s2,g,t,title="fault dip (degrees)")
    fs = copy(f); RecursiveGaussianFilter(1.0).apply00(fs,fs)
    #plot2(s1,s2,g,fs,gmin=0,gmax=1,title="fault likelihood smoothed")
    plot2(s1,s2,g,fs,gmin=0.5,gmax=1,gmap=jetr,label="Fault likelihood")
    ft,tt = fsc.thin([f,t])
    #plot2(s1,s2,g,ft,gmin=0,gmax=1,title="fault likelihood thinned")
    #plot2(s1,s2,g,tt,title="fault dip (degrees) thinned")
    plot2(s1,s2,g,ft,gmin=0.5,gmax=1,gmap=jetr,
          label="Fault likelihood",png="flt")
    plot2(s1,s2,g,tt,gmap=bwrn,label="Fault dip (degrees)",png="ftt")
    g = fsc.smooth(8,p,ft,g)
    #plot2(s1,s2,g,title="input smoothed")
    plot2(s1,s2,g,label="Log amplitude",png="gs")
Exemplo n.º 3
0
def goShifts():
    s1, s2, g = getImage()
    g = slog(g)
    plot2(s1, s2, g, title="log input")
    fse = FaultSemblance()
    g = fse.taper(10, g)
    p = fse.slopes(g)
    sn, sd = fse.semblanceNumDen(p, g)
    fsc = FaultScanner2(sigmaTheta, [sn, sd], smoother)
    f, t = fsc.scan(-15, 15)
    # plot2(s1,s2,g,f,gmin=0,gmax=1,title="fault likelihood")
    # ff,tt = fsc.thin([f,t])
    # plot2(s1,s2,g,ff,gmin=0,gmax=1,title="fault likelihood")
    shiftMin, shiftMax = -20, 20
    faults = fsc.findFaults([f, t], shiftMax - shiftMin)
    ff = faults.getLikelihoods()
    # plot2(s1,s2,g,ff,gmin=0,gmax=1,title="fault likelihood")
    # plot2(s1,s2,g,ff,gmin=0,gmax=1,label="Fault likelihood",png="flg")
    g = fsc.smooth(4, p, ff, g)
    # plot2(s1,s2,g,ff,gmin=0,gmax=1,title="input smoothed")
    # plot2(s1,s2,g,ff,gmin=0,gmax=1,label="Fault likelihood",png="flgs")
    plot2(s1, s2, g, label="Log amplitude", png="gs")
    p = fse.slopes(g)
    faults.findShifts(g, p, shiftMin, shiftMax)
    faults.clean()
    s = faults.getShifts()
    s = mul(s1.delta * 1000.0, s)
    print "s min =", min(s), " max =", max(s)
Exemplo n.º 4
0
def goScan():
    s1, s2, g = getImage()
    g = slog(g)
    fse = FaultSemblance()
    g = fse.taper(10, g)
    #p = fse.slopes(g)
    p = getSlopes(g)
    sn, sd = fse.semblanceNumDen(p, g)
    fsc = FaultScanner2(sigmaTheta, [sn, sd], FaultScanner2.Smoother.FFT)
    st = Sampling(25, 2.0, -25.0)
    for theta in st.values:
        f = fsc.likelihood(theta)
        plot2(s1,
              s2,
              g,
              f,
              gmin=0.2,
              gmax=0.7,
              gmap=jetr,
              title="theta = " + str(int(theta)))
    tmin, tmax = st.first, st.last
    f, t = fsc.scan(tmin, tmax)
    plot2(s1,
          s2,
          g,
          f,
          gmin=0.2,
          gmax=0.7,
          gmap=jetr,
          title="fault likelihood")
Exemplo n.º 5
0
def goShifts():
  s1,s2,g = getImage()
  g = slog(g)
  plot2(s1,s2,g,title="log input")
  fse = FaultSemblance()
  g = fse.taper(10,g)
  p = fse.slopes(g)
  sn,sd = fse.semblanceNumDen(p,g)
  fsc = FaultScanner2(sigmaTheta,[sn,sd],smoother)
  f,t = fsc.scan(-15,15)
  plot2(s1,s2,g,f,gmin=0,gmax=1,title="fault likelihood")
  #ff,tt = fsc.thin([f,t])
  #plot2(s1,s2,g,ff,gmin=0,gmax=1,title="fault likelihood")
  shiftMin,shiftMax = -20,20
  faults = fsc.findFaults([f,t],shiftMax-shiftMin);
  ff = faults.getLikelihoods()
  plot2(s1,s2,g,ff,gmin=0,gmax=1,title="fault likelihood")
  g = fsc.smooth(4,p,ff,g)
  plot2(s1,s2,g,ff,gmin=0,gmax=1,title="input smoothed")
  p = fse.slopes(g)
  faults.findShifts(g,p,shiftMin,shiftMax)
  faults.clean()
  s = faults.getShifts()
  print "s min =",min(s)," max =",max(s)
  plot2(s1,s2,g,s,gmin=-8,gmax=8,title="fault throws")
Exemplo n.º 6
0
def goSlopes():
  s1,s2,g = getImage()
  plot2(s1,s2,g,title="input")
  g = slog(g)
  plot2(s1,s2,g,title="log input")
  fse = FaultSemblance()
  p = fse.slopes(g)
  plot2(s1,s2,g,p,gmin=-0.9,gmax=0.9,title="slopes")
Exemplo n.º 7
0
def goSlopes():
  s1,s2,g = getImage()
  plot2(s1,s2,g,title="input")
  g = slog(g)
  plot2(s1,s2,g,title="log input")
  fse = FaultSemblance()
  p = fse.slopes(g)
  plot2(s1,s2,g,p,gmin=-0.9,gmax=0.9,title="slopes")
Exemplo n.º 8
0
def goSlopes():
    s1, s2, g = getImage()
    # plot2(s1,s2,g,title="input")
    plot2(s1, s2, g, label="Amplitude", png="ga")
    g = slog(g)
    # plot2(s1,s2,g,title="log input")
    plot2(s1, s2, g, label="Log amplitude", png="g")
    fse = FaultSemblance()
    p = fse.slopes(g)
    p = mul(s1.delta / s2.delta, p)
    # plot2(s1,s2,g,p,gmin=-0.9,gmax=0.9,title="slopes")
    plot2(s1, s2, g, p, gmin=-0.15, gmax=0.15, gmap=bwrf, label="Slope (s/km)", png="p")
Exemplo n.º 9
0
def goSlopes():
  s1,s2,g = getImage()
  #plot2(s1,s2,g,title="input")
  plot2(s1,s2,g,label="Amplitude",png="ga")
  g = slog(g)
  #plot2(s1,s2,g,title="log input")
  plot2(s1,s2,g,label="Log amplitude",png="g")
  fse = FaultSemblance()
  p = fse.slopes(g)
  p = mul(s1.delta/s2.delta,p)
  #plot2(s1,s2,g,p,gmin=-0.9,gmax=0.9,title="slopes")
  plot2(s1,s2,g,p,gmin=-0.07,gmax=0.07,gmap=bwrf,label="Slope (s/km)",png="p")
Exemplo n.º 10
0
def goScan():
  s1,s2,g = getImage()
  g = slog(g)
  fse = FaultSemblance()
  g = fse.taper(10,g)
  p = fse.slopes(g)
  sn,sd = fse.semblanceNumDen(p,g)
  fsc = FaultScanner2(sigmaTheta,[sn,sd])
  st = Sampling(31,1.0,-15.0)
  for theta in st.values:
    f = fsc.likelihood(theta)
    png = "fl"+str(int(theta))
    plot2(s1,s2,g,f,gmin=0,gmax=1,gmap=jetr,label="Fault likelihood",png=png)
  tmin,tmax = st.first,st.last
  f,t = fsc.scan(tmin,tmax)
  plot2(s1,s2,g,f,gmin=0,gmax=1,gmap=jetr,label="Fault likelihood",png="fl")
Exemplo n.º 11
0
def goScan():
  s1,s2,g = getImage()
  g = slog(g)
  fse = FaultSemblance()
  g = fse.taper(10,g)
  p = fse.slopes(g)
  sn,sd = fse.semblanceNumDen(p,g)
  fsc = FaultScanner2(sigmaTheta,[sn,sd])
  st = Sampling(31,1.0,-15.0)
  for theta in st.values:
    f = fsc.likelihood(theta)
    plot2(s1,s2,g,f,gmin=0,gmax=1,title="theta = "+str(int(theta)))
  tmin,tmax = st.first,st.last
  f,t = fsc.scan(tmin,tmax)
  plot2(s1,s2,g,f,gmin=0,gmax=1,title="fault likelihood")
  plot2(s1,s2,g,t,gmin=tmin,gmax=tmax,title="fault dip (degrees)")
Exemplo n.º 12
0
def goScan():
  s1,s2,g = getImage()
  g = slog(g)
  fse = FaultSemblance()
  g = fse.taper(10,g)
  p = fse.slopes(g)
  sn,sd = fse.semblanceNumDen(p,g)
  fsc = FaultScanner2(sigmaTheta,[sn,sd])
  st = Sampling(31,1.0,-15.0)
  for theta in st.values:
    f = fsc.likelihood(theta)
    png = "fl"+str(int(theta))
    plot2(s1,s2,g,f,gmin=0.5,gmax=1,gmap=jetr,label="Fault likelihood",png=png)
  tmin,tmax = st.first,st.last
  f,t = fsc.scan(tmin,tmax)
  plot2(s1,s2,g,f,gmin=0.5,gmax=1,gmap=jetr,label="Fault likelihood",png="fl")
Exemplo n.º 13
0
def goScan():
  s1,s2,g = getImage()
  g = slog(g)
  fse = FaultSemblance()
  g = fse.taper(10,g)
  p = fse.slopes(g)
  sn,sd = fse.semblanceNumDen(p,g)
  fsc = FaultScanner2(sigmaTheta,[sn,sd])
  st = Sampling(31,1.0,-15.0)
  for theta in st.values:
    f = fsc.likelihood(theta)
    plot2(s1,s2,g,f,gmin=0,gmax=1,title="theta = "+str(int(theta)))
  tmin,tmax = st.first,st.last
  f,t = fsc.scan(tmin,tmax)
  plot2(s1,s2,g,f,gmin=0,gmax=1,title="fault likelihood")
  plot2(s1,s2,g,t,gmin=tmin,gmax=tmax,title="fault dip (degrees)")
Exemplo n.º 14
0
def goScan():
  s1,s2,g = getImage()
  g = slog(g)
  fse = FaultSemblance()
  g = fse.taper(10,g)
  #p = fse.slopes(g)
  p = getSlopes(g)
  sn,sd = fse.semblanceNumDen(p,g)
  fsc = FaultScanner2(sigmaTheta,[sn,sd],FaultScanner2.Smoother.FFT)
  st = Sampling(25,2.0,-25.0)
  for theta in st.values:
    f = fsc.likelihood(theta)
    plot2(s1,s2,g,f,gmin=0.2,gmax=0.7,gmap=jetr,
      title="theta = "+str(int(theta)))
  tmin,tmax = st.first,st.last
  f,t = fsc.scan(tmin,tmax)
  plot2(s1,s2,g,f,gmin=0.2,gmax=0.7,gmap=jetr,title="fault likelihood")
Exemplo n.º 15
0
def goSemblance():
  s1,s2,g = getImage()
  g = slog(g)
  fse = FaultSemblance()
  g = fse.taper(10,g)
  p = fse.slopes(g)
  sn0,sd0 = fse.semblanceNumDen(p,g)
  print "semblances for different vertical smoothings:"
  for sigma in [0,2,4,8]:
    ref = RecursiveExponentialFilter(sigma)
    sn = copy(sn0)
    sd = copy(sd0)
    ref.apply1(sn,sn)
    ref.apply1(sd,sd)
    s = fse.semblanceFromNumDen(sn,sd)
    print "sigma =",sigma," s min =",min(s)," max =",max(s)
    title = "semblance: sigma = "+str(sigma)
    plot2(s1,s2,g,s,gmin=0,gmax=1,title=title)
Exemplo n.º 16
0
def goAlign():
  s1,s2,g = getImage()
  g = slog(g)
  n1,n2 = len(g[0]),len(g)
  fse = FaultSemblance()
  #p = fse.slopes(g)
  p = getSlopes(g)
  ref = RecursiveExponentialFilter(4)
  sn,sd = fse.semblanceNumDen(p,g)
  ref.apply1(sn,sn)
  ref.apply1(sd,sd)
  s = fse.semblanceFromNumDen(sn,sd)
  plot2(s1,s2,g,s,gmin=0,gmax=1,title="semblance with alignment")
  p = zerofloat(n1,n2) # semblance with zero slopes
  sn,sd = fse.semblanceNumDen(p,g)
  ref.apply1(sn,sn)
  ref.apply1(sd,sd)
  s = fse.semblanceFromNumDen(sn,sd)
  plot2(s1,s2,g,s,gmin=0,gmax=1,title="semblance without alignment")
Exemplo n.º 17
0
def goSemblance():
    s1, s2, g = getImage()
    g = slog(g)
    fse = FaultSemblance()
    g = fse.taper(10, g)
    #p = fse.slopes(g)
    p = getSlopes(g)
    sn0, sd0 = fse.semblanceNumDen(p, g)
    print "semblances for different vertical smoothings:"
    for sigma in [0, 2, 4, 8]:
        ref = RecursiveExponentialFilter(sigma)
        sn = copy(sn0)
        sd = copy(sd0)
        ref.apply1(sn, sn)
        ref.apply1(sd, sd)
        s = fse.semblanceFromNumDen(sn, sd)
        print "sigma =", sigma, " s min =", min(s), " max =", max(s)
        title = "semblance: sigma = " + str(sigma)
        plot2(s1, s2, g, s, gmin=0, gmax=1, title=title)
Exemplo n.º 18
0
def goThin():
    s1, s2, g = getImage()
    plot2(s1, s2, g, title="input")
    g = slog(mul(2.0, g))
    plot2(s1, s2, g, title="log input")
    fse = FaultSemblance()
    g = fse.taper(10, g)
    for iter in range(1):
        #p = fse.slopes(g)
        p = getSlopes(g)
        #p = zerofloat(len(p[0]),len(p))
        sn, sd = fse.semblanceNumDen(p, g)
        fsc = FaultScanner2(sigmaTheta, [sn, sd], smoother)
        f, t = fsc.scan(-25, 25)
        plot2(s1, s2, g, f, gmin=0, gmax=1, title="fault likelihood")
        #plot2(s1,s2,g,t,title="fault dip (degrees)")
        ft, tt = fsc.thin([f, t])
        plot2(s1, s2, g, ft, gmin=0, gmax=1, title="fault likelihood thinned")
        #plot2(s1,s2,g,tt,title="fault dip (degrees) thinned")
        g = fsc.smooth(16, p, ft, g)
        plot2(s1, s2, g, title="input smoothed")
Exemplo n.º 19
0
def goThin():
  s1,s2,g = getImage()
  plot2(s1,s2,g,title="input")
  g = slog(mul(2.0,g))
  plot2(s1,s2,g,title="log input")
  fse = FaultSemblance()
  g = fse.taper(10,g)
  for iter in range(1):
    #p = fse.slopes(g)
    p = getSlopes(g)
    #p = zerofloat(len(p[0]),len(p))
    sn,sd = fse.semblanceNumDen(p,g)
    fsc = FaultScanner2(sigmaTheta,[sn,sd],smoother)
    f,t = fsc.scan(-25,25)
    plot2(s1,s2,g,f,gmin=0,gmax=1,title="fault likelihood")
    #plot2(s1,s2,g,t,title="fault dip (degrees)")
    ft,tt = fsc.thin([f,t])
    plot2(s1,s2,g,ft,gmin=0,gmax=1,title="fault likelihood thinned")
    #plot2(s1,s2,g,tt,title="fault dip (degrees) thinned")
    g = fsc.smooth(16,p,ft,g)
    plot2(s1,s2,g,title="input smoothed")
Exemplo n.º 20
0
def goShifts():
  s1,s2,g = getImage()
  g = slog(g)
  #plot2(s1,s2,g,title="log input")
  fse = FaultSemblance()
  g = fse.taper(10,g)
  p = fse.slopes(g)
  sn,sd = fse.semblanceNumDen(p,g)
  fsc = FaultScanner2(sigmaTheta,[sn,sd],smoother)
  f,t = fsc.scan(-15,15)
  shiftMin,shiftMax = -20,20
  faults = fsc.findFaults([f,t],shiftMax-shiftMin);
  ff = faults.getLikelihoods()
  plot2(s1,s2,g,ff,gmin=0,gmax=1,gmap=jetr,label="Fault likelihood",png="flg")
  g = fsc.smooth(4,p,ff,g)
  plot2(s1,s2,g,ff,gmin=0,gmax=1,gmap=jetr,label="Fault likelihood",png="flgs")
  plot2(s1,s2,g,label="Log amplitude",png="gs")
  p = fse.slopes(g)
  faults.findShifts(g,p,shiftMin,shiftMax)
  faults.clean()
  s = faults.getShifts()
  s = mul(s1.delta*1000.0,s)
  s = neg(s)
  print "s min =",min(s)," max =",max(s)
  plot2(s1,s2,g,s,gmin=0,gmax=28,gmap=jetr,
        label="Vertical component of throw (ms)",png="fs")
  plot2(s1,s2,g,s,gmin=0,gmax=15,gmap=jetr,
        label="Vertical component of throw (ms)",png="fs15")
Exemplo n.º 21
0
def goShifts():
    s1, s2, g = getImage()
    g = slog(g)
    plot2(s1, s2, g, title="log input")
    fse = FaultSemblance()
    g = fse.taper(10, g)
    p = fse.slopes(g)
    sn, sd = fse.semblanceNumDen(p, g)
    fsc = FaultScanner2(sigmaTheta, [sn, sd], smoother)
    f, t = fsc.scan(-15, 15)
    #plot2(s1,s2,g,f,gmin=0,gmax=1,title="fault likelihood")
    #ff,tt = fsc.thin([f,t])
    #plot2(s1,s2,g,ff,gmin=0,gmax=1,title="fault likelihood")
    shiftMin, shiftMax = -20, 20
    faults = fsc.findFaults([f, t], shiftMax - shiftMin)
    ff = faults.getLikelihoods()
    #plot2(s1,s2,g,ff,gmin=0,gmax=1,title="fault likelihood")
    #plot2(s1,s2,g,ff,gmin=0,gmax=1,label="Fault likelihood",png="flg")
    g = fsc.smooth(4, p, ff, g)
    #plot2(s1,s2,g,ff,gmin=0,gmax=1,title="input smoothed")
    #plot2(s1,s2,g,ff,gmin=0,gmax=1,label="Fault likelihood",png="flgs")
    plot2(s1, s2, g, label="Log amplitude", png="gs")
    p = fse.slopes(g)
    faults.findShifts(g, p, shiftMin, shiftMax)
    faults.clean()
    s = faults.getShifts()
    s = mul(s1.delta * 1000.0, s)
    print "s min =", min(s), " max =", max(s)
Exemplo n.º 22
0
def goShifts():
  s1,s2,g = getImage()
  g = slog(g)
  plot2(s1,s2,g,title="log input")
  fse = FaultSemblance()
  g = fse.taper(10,g)
  p = fse.slopes(g)
  sn,sd = fse.semblanceNumDen(p,g)
  fsc = FaultScanner2(sigmaTheta,[sn,sd],smoother)
  f,t = fsc.scan(-15,15)
  plot2(s1,s2,g,f,gmin=0,gmax=1,title="fault likelihood")
  #ff,tt = fsc.thin([f,t])
  #plot2(s1,s2,g,ff,gmin=0,gmax=1,title="fault likelihood")
  shiftMin,shiftMax = -20,20
  faults = fsc.findFaults([f,t],shiftMax-shiftMin);
  ff = faults.getLikelihoods()
  plot2(s1,s2,g,ff,gmin=0,gmax=1,title="fault likelihood")
  g = fsc.smooth(4,p,ff,g)
  plot2(s1,s2,g,ff,gmin=0,gmax=1,title="input smoothed")
  p = fse.slopes(g)
  faults.findShifts(g,p,shiftMin,shiftMax)
  faults.clean()
  s = faults.getShifts()
  print "s min =",min(s)," max =",max(s)
  plot2(s1,s2,g,s,gmin=-8,gmax=8,title="fault throws")
Exemplo n.º 23
0
def goAlign():
  s1,s2,g = getImage()
  g = slog(g)
  n1,n2 = len(g[0]),len(g)
  fse = FaultSemblance()
  p = fse.slopes(g)
  ref = RecursiveExponentialFilter(4)
  sn,sd = fse.semblanceNumDen(p,g)
  ref.apply1(sn,sn)
  ref.apply1(sd,sd)
  s = fse.semblanceFromNumDen(sn,sd)
  plot2(s1,s2,g,s,gmin=0,gmax=1,title="semblance with alignment")
  p = zerofloat(n1,n2) # semblance with zero slopes
  sn,sd = fse.semblanceNumDen(p,g)
  ref.apply1(sn,sn)
  ref.apply1(sd,sd)
  s = fse.semblanceFromNumDen(sn,sd)
  plot2(s1,s2,g,s,gmin=0,gmax=1,title="semblance without alignment")