swectral.denoiser.WaveletFilter#

class swectral.denoiser.WaveletFilter(wavelet='haar', cutoff=0.5, threshold_mode='soft', extension_mode='symmetric', axis=0)[source]#

Wavelet filter for 2D array-like of 1D series data.

This class provides wavelet denoising functionality using PyWavelets as the underlying implementation.

Attributes:
waveletstr, optional

Wavelet form. The default is “haar”.

See PyWavelets documentation for available options.

cutofffloat

Percentage frequency cutoffs, must be a number between 0 and 1.

The default is 0.1.

threshold_modestr

Thresholding modes for wavelet coefficient processing.

The default is “soft”.

See PyWavelets documentation for available options.

extension_modestr

Signal extension mode. The default is “symmetric”.

See PyWavelets documentation for available options.

axisint, optional

Axis of 1D signal. If 0, each row of 2D array represents an 1D signal.

The default is 0.

Methods

apply(data_array)

Apply Fourier filter to 2D array-like of 1D series data.

See also

PyWavelets
__init__(wavelet='haar', cutoff=0.5, threshold_mode='soft', extension_mode='symmetric', axis=0)[source]#

Methods

__init__([wavelet, cutoff, threshold_mode, ...])

apply(data_array)

Apply Fourier filter to 2D array-like of 1D series data.

apply(data_array)[source]#

Apply Fourier filter to 2D array-like of 1D series data.

Parameters:
data_array1D array_like or 2D array_like

1D data array or 2D data array of 1D series data.

Returns:
numpy.ndarray

Array of filtered signals.

Return type:

ndarray

Examples

>>> wf = WaveletFilter()
>>> wf.apply([1, 2, 3, 4, 5, 6, 77, 88, 9, 10])
>>> wf.apply([[1, 2, 3, 4, 5, 6, 77, 88, 9, 10], [1, 22, 33, 4, 5, 6, 7, 8, 9, 10]])

Add to prepared SpecPipe instance pipe for ROI pixel spectrum processing:

>>> pipe.add_process(6, 6, 0, WaveletFilter().apply)

Add to prepared SpecPipe instance pipe for the processing of 1D sample data:

>>> pipe.add_process(7, 7, 0, WaveletFilter().apply)