pytorch-wavelets
A port of the DTCWT toolbox to run on pytorch
What it is and what it does
pytorch-wavelets implements wavelet transforms optimized for PyTorch tensors, letting you compute 2D discrete wavelet transforms (DWT) and dual-tree complex wavelet transforms (DTCWT) on batches of images with full gradient support. It also includes a scattering network layer based on DTCWT. The package uses standard PyTorch NCHW format and supports both CPU and GPU execution.
The library provides forward and inverse transforms for both DWT and DTCWT, plus specialized scattering layers (ScatLayer, ScatLayerj2) for feature extraction. Version 1.3.0 added 1D wavelet support. However, the project is no longer maintained—the last commit was in August 2023—so it may not work with current versions of PyTorch or NumPy without modification.
Use it for:
- Extract multiscale wavelet features from image batches for machine learning pipelines.
- Implement learnable wavelet-based layers in neural networks with backpropagation through transforms.
- Compute scattering network representations for image classification or analysis on GPU.
- Perform 1D wavelet decomposition on time-series or signal data within PyTorch models.
- Prototype research using dual-tree complex wavelets without leaving the PyTorch ecosystem.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides 2D discrete wavelet and dual-tree complex wavelet transforms (DWT and DTCWT) with their inverses in PyTorch, supporting gradient backpropagation and batched multichannel image processing.
Yes, if you need wavelet transforms in PyTorch and can tolerate an abandoned package. Install friction is low and there are no known vulnerabilities. However, verify that the 'Free To Use' license suits your use case, test compatibility with your PyTorch and NumPy versions, and be prepared to maintain or fork the code if bugs emerge—no updates are coming from upstream.
Install
pytorch-wavelets on PyPI
pip
pip install pytorch-waveletsuv
uv add pytorch-waveletspoetry
poetry add pytorch-waveletsInstalling pytorch-wavelets
Before you install
Low install friction with a pure Python wheel. Maintenance is abandoned—last release was 1.3.0 on 2023-04-13, with no commits since 2023-08-02—so expect no bug fixes or updates.
License in practice
License is marked 'Free To Use' with unclear treatment and no SPDX identifier. Consult the repository's ORIGINAL_README.txt and license terms before use in proprietary or commercial contexts.
Quickstart
pip install pytorch-wavelets
import torch
from pytorch_wavelets import DWTForward, DWTInverse
xfm = DWTForward(J=3, wave='db3', mode='zero')
X = torch.randn(10, 5, 64, 64)
Yl, Yh = xfm(X)
print(Yl.shape) # torch.Size([10, 5, 12, 12])
ifm = DWTInverse(wave='db3', mode='zero')
Y = ifm((Yl, Yh))
Verify before relying
- Whether the 'Free To Use' license permits commercial or proprietary use without restriction.
- Current compatibility with recent PyTorch and NumPy versions given the package's abandonment.
- Whether GPU/CUDA support requires additional system dependencies beyond PyTorch.
Package facts
| License | Free To Use (unclear) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — numpy, six, torch |
| Maintenance | abandoned — 1,219 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 198,192/month — #9,738 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pytorch_wavelets-1.3.0-py3-none-any.whl
Keywords: pytorch, DWT, DTCWT, wavelet, complex wavelet
Tags
More Mathematics packages
NetworkX provides data structures and…
permissive · top 1,000 on PyPI
kiwisolverkiwisolver is a Python binding to a fast C++…
permissive · top 1,000 on PyPI
sympySymPy is a Python library for symbolic…
permissive · top 1,000 on PyPI
contourpyContourPy calculates contours of 2D…
permissive · top 1,000 on PyPI
torchPyTorch provides GPU-accelerated tensor…
permissive · top 1,000 on PyPI
onnxruntimeonnxruntime loads and executes Open Neural…
permissive · top 1,000 on PyPI
PyWaveletsPyWavelets provides discrete, continuous, and…
permissive · top 5,000 on PyPI
juliusJulius provides differentiable, GPU-accelerated…
permissive · top 5,000 on PyPI
pytorch_revgradImplements a gradient reversal layer for…
permissive · top 15,000 on PyPI
torchcodecTorchCodec decodes and encodes videos, audio,…
unclear · top 5,000 on PyPI
invisible-watermarkEmbeds and decodes invisible watermarks into…
permissive · top 15,000 on PyPI
CoLT5-attentionImplements conditionally routed efficient…
permissive · top 15,000 on PyPI
torch-audiomentationsProvides PyTorch-native audio data augmentation…
permissive · top 5,000 on PyPI
rotary-embedding-torchImplements rotary positional embeddings for…
permissive · top 15,000 on PyPI
torch-geometricPyTorch Geometric is a library for building and…
permissive · top 5,000 on PyPI