pylops.signalprocessing.Sliding3D#
- pylops.signalprocessing.Sliding3D(Op, dims, dimsd, nwin, nover, nop, tapertype='hanning', nproc=1, name='P')[source]#
3D Sliding transform operator.w
Apply a transform operator
Op
repeatedly to patches of the model vector in forward mode and patches of the data vector in adjoint mode. More specifically, in forward mode the model vector is divided into patches each patch is transformed, and patches are then recombined in a sliding window fashion. Both model and data should be 3-dimensional arrays in nature as they are internally reshaped and interpreted as 3-dimensional arrays. Each patch contains in fact a portion of the array in the first and second dimensions (and the entire third dimension).This operator can be used to perform local, overlapping transforms (e.g.,
pylops.signalprocessing.FFTND
orpylops.signalprocessing.Radon3D
) of 3-dimensional arrays.Note
The shape of the model has to be consistent with the number of windows for this operator not to return an error. As the number of windows depends directly on the choice of
nwin
andnover
, it is recommended to first runsliding3d_design
to obtain the correspondingdims
and number of windows.Warning
Depending on the choice of nwin and nover as well as the size of the data, sliding windows may not cover the entire data. The start and end indices of each window will be displayed and returned with running
sliding3d_design
.- Parameters
- Op
pylops.LinearOperator
Transform operator
- dims
tuple
Shape of 3-dimensional model. Note that
dims[0]
anddims[1]
should be multiple of the model sizes of the transform in the first and second dimensions- dimsd
tuple
Shape of 3-dimensional data
- nwin
tuple
Number of samples of window
- nover
tuple
Number of samples of overlapping part of window
- nop
tuple
Number of samples in axes of transformed domain associated to spatial axes in the data
- tapertype
str
, optional Type of taper (
hanning
,cosine
,cosinesquare
orNone
)- nproc
int
, optional Number of processes used to evaluate the N operators in parallel using
multiprocessing
. Ifnproc=1
, work in serial mode.- name
str
, optional New in version 2.0.0.
Name of operator (to be used by
pylops.utils.describe.describe
)
- Op
- Returns
- Sop
pylops.LinearOperator
Sliding operator
- Sop
- Raises
- ValueError
Identified number of windows is not consistent with provided model shape (
dims
).