Compare WaveletTransform (SciPy) and WaveletTransformTorch (PyTorch)
masterThe library provides two implementations for completeness:
WaveletTransform: The original SciPy-based version.WaveletTransformTorch: The PyTorch-based version optimized for GPU parallelization.
While WaveletTransform is suitable for individual signals, WaveletTransformTorch is significantly faster for large numbers of 1D signals when processed as a batch.
from wavelets_pytorch.transform import WaveletTransform # SciPy version
from wavelets_pytorch.transform import WaveletTransformTorch # PyTorch version
dt = 0.1
dj = 0.125
batch = np.random.randn(32, 1000)
# SciPy version
wa_scipy = WaveletTransform(dt, dj)
cwt_scipy = wa_scipy.cwt(batch)
# PyTorch version
wa_torch = WaveletTransformTorch(dt, dj, cuda=True)
cwt_torch = wa_torch.cwt(batch)