Skip to main content

This library provides support for computing 1D, 2D and 3D dual-tree complex wavelet transforms and their inverse in Python. Full documentation is available online.

https://travis-ci.org/rjw57/dtcwt.png?branch=master Coverage License Latest Version Downloads DOI: 10.5281/zenodo.9862 Documentation Status

Installation

Ubuntu 15.10 (wily) and later

Installation can be perfomed via apt-get:

$ sudo apt-get install python-dtcwt python-dtcwt-doc

The package is also currently in Debian sid (unstable).

Other operating systems

The easiest way to install dtcwt is via easy_install or pip:

$ pip install dtcwt

If you want to check out the latest in-development version, look at the project’s GitHub page. Once checked out, installation is based on setuptools and follows the usual conventions for a Python project:

$ python setup.py install

(Although the develop command may be more useful if you intend to perform any significant modification to the library.) A test suite is provided so that you may verify the code works on your system:

$ pip install -r tests/requirements.txt
$ py.test

This will also write test-coverage information to the cover/ directory.

Further documentation

There is more documentation available online and you can build your own copy via the Sphinx documentation system:

$ python setup.py build_sphinx

Compiled documentation may be found in build/docs/html/.

Provenance

Developed by Rich Wareham, Cambridge University, 2013-2018.

Based on the Dual-Tree Complex Wavelet Transform Pack for MATLAB by Nick Kingsbury, Cambridge University. The original README can be found in ORIGINAL_README.txt. This file outlines the conditions of use of the original MATLAB toolbox.

Adapted for NumPy 1.20+ in 2024 by Vincent Lostanlen and Xiran Zhang, CNRS, with permission from Rich Wareham.

Changes

0.14.0

  • Add support for NumPy 2.0.

0.13.0

  • Add support for NumPy 1.20+ (and thus Python 3.7+).

0.12.0

  • TensorFlow backend by Fergal Cotter (@fbcotter).

0.11.0

  • Use fixed random number generator seed when generating documentation.

  • Replace use of Lena image with mandrill.

  • Refactor test suite to use tox + py.test.

  • Documentation formatting fixes.

  • Fix unsafe use of inplace casting (3D transform).

  • Use explicit integer division to close #123.

0.10.1

  • Fix regression in dtcwt-based image registration.

  • Allow levels used for dtcwt-based image registration to be customised.

0.10.0

  • Add queue parameter to low-level OpenCL colifilt and coldfilt functions.

  • Significantly increase speed of dtcwt.registration.estimatereg function.

  • Fix bug whereby dtcwt.backend_name was not restored when using preserve_backend_stack.

0.9.1

  • The OpenCL 2D transform was not always using the correct queue when one was passed explicitly.

0.9.0

  • MATLAB-style functions such as dtwavexfm2 have been moved into a separate dtcwt.compat module.

  • Backends moved to dtcwt.numpy and dtcwt.opencl modules.

  • Removed dtcwt.base.ReconstructedSignal which was a needless wrapper around NumPy arrays.

  • Rename TransformDomainSignal to Pyramid.

  • Allow runtime configuration of default backend via dtcwt.push_backend function.

  • Verified, thanks to @timseries, the NumPy 3D transform implementation against the MATLAB reference implementation.

0.8.0

  • Verified the highpass re-sampling routines in dtcwt.sampling against the existing MATLAB implementation.

  • Added experimental image registration routines.

  • Re-organised documentation.

0.7.2

  • Fixed regression from 0.7 where backend_opencl.dtwavexfm2 would return None, None, None.

0.7.1

  • Fix a memory leak in OpenCL implementation where transform results were never de-allocated.

Metadata

Release files for dtcwt 0.14.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dtcwt 0.14.0
File Size Uploaded
dtcwt-0.14.0.tar.gz 85.3 kB Details

Release files / dtcwt-0.14.0.tar.gz

Download URL dtcwt-0.14.0.tar.gz
Size 85.3 kB
Tags Source
SHA-256 checksum
How to use checksums
4d8c4f11794a4127bfd2c7b109ca7c52d321dc9d028e19e4a881384283c43ef9
BLAKE2b-256 checksum
How to use checksums
a80b566d4e1ae2da9c71e677a886e8fab2d7caac16703699d1a52f298811899f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.7.16

Release history Release notifications | RSS feed

This release

0.14.0 This release

1 release file

0.13.0

1 release file

0.12.0

1 release file

0.11.0

1 release file

0.10.1

1 release file

0.10.0

1 release file

0.9.1

1 release file

0.9.0

1 release file

0.8.0

1 release file

0.7.2

1 release file

0.7.1

1 release file

0.7

1 release file

0.6

1 release file

0.5

1 release file

0.4.2

1 release file

0.4.1

1 release file

0.4

1 release file

0.3

1 release file

0.2.1

1 release file

0.2

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page