In [17]:
using PyPlot,Seismic

# Ray Abma and Nurul Kabir, 2006, 3D interpolation of irregular data with a POCS algorithm. 
# GEOPHYSICS, 71(6), E91-E97.

# Gao, J., Stanton, A., Naghizadeh, M., Sacchi, M.D. and Chen, X., 2013, Convergence improvement 
# and noise attenuation considerations for beyond alias projection onto convex sets reconstruction.
# Geophysical Prospecting, 61, 138-151.

In [16]:
# Create linear events

d,ext = SeisLinearEvents(p1 = [-.001, 0.0015],tau=[1., 1./3.],dx1=5); 

#Randomly decimate, perc=80 means that 80% of the bins are empty

dec = SeisDecimate(d;perc=80);

In [9]:
param = Dict(:Niter=>100,:fmax=>60,:padt=>2,:padx=>2,:dt=>0.004)
dpocs = SeisPOCS(dec;param...);

In [12]:
figure(1, figsize=(10, 5))
subplot(121)
SeisPlot(dec,cmap="seismic",fignum=1,pclip=200,fignum=1,title="Decimated data")
subplot(122)
SeisPlot(dec,plot_type="FK", cmap="seismic", dy=0.004,fignum=1,hbox=5,pclip=200,fignum=1)


Out[12]:
PyObject <matplotlib.image.AxesImage object at 0x12acc7950>

In [13]:
figure(2,figsize=(10, 5))
subplot(121)
SeisPlot(dpocs[:,:,1,1,1],cmap="seismic",fignum=2,pclip=200,title="After POCS")
subplot(122)
SeisPlot(dpocs[:,:,1,1,1],plot_type="FK",cmap="seismic",dy=0.004,fignum=2,pclip=200)


Out[13]:
PyObject <matplotlib.image.AxesImage object at 0x12b044410>