# pylops.signalprocessing.Sliding3D¶

pylops.signalprocessing.Sliding3D(Op, dims, dimsd, nwin, nover, nop, tapertype='hanning', design=False, nproc=1)[source]

3D Sliding transform operator.

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 or pylops.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 and nover, it is recommended to use design=True if unsure about the choice dims and use the number of windows printed on screen to define such input parameter.

Warning

Depending on the choice of nwin and nover as well as the size of the data, sliding windows may not cover the entire first and/or second dimensions. The start and end indeces of each window can be displayed using design=True while defining the best sliding window approach.

Parameters: Op : pylops.LinearOperator Transform operator dims : tuple Shape of 3-dimensional model. Note that dims[0] and dims[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 or None) design : bool, optional Print number sliding window (True) or not (False) Sop : pylops.LinearOperator Sliding operator ValueError Identified number of windows is not consistent with provided model shape (dims).