PyWavelets-1.1.1/ 0000755 0001750 0001750 00000000000 13552543071 014262 5 ustar lee8rx lee8rx 0000000 0000000 PyWavelets-1.1.1/LICENSE 0000644 0001750 0001750 00000002223 13552333332 015263 0 ustar lee8rx lee8rx 0000000 0000000 Copyright (c) 2006-2012 Filip Wasilewski
Copyright (c) 2012-2019 The PyWavelets Developers
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
of the Software, and to permit persons to whom the Software is furnished to do
so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
PyWavelets-1.1.1/LICENSES_bundled.txt 0000644 0001750 0001750 00000000410 13552333332 017715 0 ustar lee8rx lee8rx 0000000 0000000 The PyWavelets repository and source distributions bundle some code that is
adapted from compatibly licensed projects. We list these here.
Name: NumPy
Files: pywt/_pytesttester.py
License: 3-clause BSD
Name: SciPy
Files: setup.py, util/*
License: 3-clause BSD
PyWavelets-1.1.1/MANIFEST.in 0000644 0001750 0001750 00000001006 13552333332 016012 0 ustar lee8rx lee8rx 0000000 0000000 include setup.py
include pyproject.toml
include README.rst
include LICENSE
include *.txt
include MANIFEST.in
# All source files
recursive-include pywt *
# All documentation
recursive-include doc *
recursive-include demo *
# Cached Cython signatures
include cythonize.dat
# Add build and testing tools
include tox.ini pytest.ini
recursive-include util *
# Exclude what we don't want to include
prune build
prune doc/build
prune */__pycache__
global-exclude *.py[cod] *.egg *.egg-info
global-exclude *~ *.bak *.swp
PyWavelets-1.1.1/PKG-INFO 0000644 0001750 0001750 00000004011 13552543071 015353 0 ustar lee8rx lee8rx 0000000 0000000 Metadata-Version: 1.2
Name: PyWavelets
Version: 1.1.1
Summary: PyWavelets, wavelet transform module
Home-page: https://github.com/PyWavelets/pywt
Maintainer: The PyWavelets Developers
Maintainer-email: pywavelets@googlegroups.com
License: MIT
Download-URL: https://github.com/PyWavelets/pywt/releases
Description: PyWavelets is a Python wavelet transforms module that includes:
* nD Forward and Inverse Discrete Wavelet Transform (DWT and IDWT)
* 1D and 2D Forward and Inverse Stationary Wavelet Transform (Undecimated Wavelet Transform)
* 1D and 2D Wavelet Packet decomposition and reconstruction
* 1D Continuous Wavelet Tranfsorm
* Computing Approximations of wavelet and scaling functions
* Over 100 built-in wavelet filters and support for custom wavelets
* Single and double precision calculations
* Real and complex calculations
* Results compatible with Matlab Wavelet Toolbox (TM)
Keywords: wavelets,wavelet transform,DWT,SWT,CWT,scientific
Platform: Windows
Platform: Linux
Platform: Solaris
Platform: Mac OS-X
Platform: Unix
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: C
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.5
PyWavelets-1.1.1/PyWavelets.egg-info/ 0000755 0001750 0001750 00000000000 13552543071 020057 5 ustar lee8rx lee8rx 0000000 0000000 PyWavelets-1.1.1/PyWavelets.egg-info/PKG-INFO 0000644 0001750 0001750 00000004011 13552543071 021150 0 ustar lee8rx lee8rx 0000000 0000000 Metadata-Version: 1.2
Name: PyWavelets
Version: 1.1.1
Summary: PyWavelets, wavelet transform module
Home-page: https://github.com/PyWavelets/pywt
Maintainer: The PyWavelets Developers
Maintainer-email: pywavelets@googlegroups.com
License: MIT
Download-URL: https://github.com/PyWavelets/pywt/releases
Description: PyWavelets is a Python wavelet transforms module that includes:
* nD Forward and Inverse Discrete Wavelet Transform (DWT and IDWT)
* 1D and 2D Forward and Inverse Stationary Wavelet Transform (Undecimated Wavelet Transform)
* 1D and 2D Wavelet Packet decomposition and reconstruction
* 1D Continuous Wavelet Tranfsorm
* Computing Approximations of wavelet and scaling functions
* Over 100 built-in wavelet filters and support for custom wavelets
* Single and double precision calculations
* Real and complex calculations
* Results compatible with Matlab Wavelet Toolbox (TM)
Keywords: wavelets,wavelet transform,DWT,SWT,CWT,scientific
Platform: Windows
Platform: Linux
Platform: Solaris
Platform: Mac OS-X
Platform: Unix
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: C
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.5
PyWavelets-1.1.1/PyWavelets.egg-info/SOURCES.txt 0000644 0001750 0001750 00000013001 13552543071 021736 0 ustar lee8rx lee8rx 0000000 0000000 LICENSE
LICENSES_bundled.txt
MANIFEST.in
README.rst
pytest.ini
setup.py
tox.ini
PyWavelets.egg-info/PKG-INFO
PyWavelets.egg-info/SOURCES.txt
PyWavelets.egg-info/dependency_links.txt
PyWavelets.egg-info/requires.txt
PyWavelets.egg-info/top_level.txt
demo/_dwt_decompose.c
demo/batch_processing.py
demo/benchmark.py
demo/cwt_analysis.py
demo/dwt2_dwtn_image.py
demo/dwt_signal_decomposition.py
demo/dwt_swt_show_coeffs.py
demo/fswavedecn.py
demo/fswavedecn_mondrian.py
demo/image_blender.py
demo/plot_demo_signals.py
demo/plot_wavelets.py
demo/plot_wavelets_pyqtgraph.py
demo/swt2.py
demo/swt_variance.py
demo/waveinfo.py
demo/wp_2d.py
demo/wp_scalogram.py
demo/wp_visualize_coeffs_distribution.py
doc/Makefile
doc/doc2html.bat
doc/make.bat
doc/paper/paper.bib
doc/paper/paper.md
doc/release/0.3.0-notes.rst
doc/release/0.4.0-notes.rst
doc/release/0.5.0-notes.rst
doc/release/1.0.0-notes.rst
doc/release/1.1.0-notes.rst
doc/release/1.1.1-notes.rst
doc/source/common_refs.rst
doc/source/conf.py
doc/source/contributing.rst
doc/source/index.rst
doc/source/install.rst
doc/source/release.0.3.0.rst
doc/source/release.0.4.0.rst
doc/source/release.0.5.0.rst
doc/source/release.1.0.0.rst
doc/source/release.1.1.0.rst
doc/source/release.1.1.1.rst
doc/source/releasenotes.rst
doc/source/substitutions.rst
doc/source/_static/comments.png
doc/source/_static/favicon.ico
doc/source/_static/github.png
doc/source/_static/page_edit.png
doc/source/_static/twitter.png
doc/source/_static/wave.png
doc/source/_templates/editdocument.html
doc/source/_templates/page.html
doc/source/_templates/quicklinks.html
doc/source/dev/building_extension.rst
doc/source/dev/how_to_release.rst
doc/source/dev/index.rst
doc/source/dev/installing_build_dependencies.rst
doc/source/dev/preparing_linux_build_environment.rst
doc/source/dev/preparing_windows_build_environment.rst
doc/source/dev/testing.rst
doc/source/dev/conduct/code_of_conduct.rst
doc/source/dev/conduct/report_handling_manual.rst
doc/source/pyplots/camera_approx_detail.py
doc/source/pyplots/cwt_scaling_demo.py
doc/source/pyplots/plot_2d_bases.py
doc/source/pyplots/plot_boundary_modes.py
doc/source/pyplots/plot_mallat_2d.py
doc/source/pyplots/plot_thresholds.py
doc/source/ref/2d-decompositions-overview.rst
doc/source/ref/2d-dwt-and-idwt.rst
doc/source/ref/cwt.rst
doc/source/ref/dwt-coefficient-handling.rst
doc/source/ref/dwt-discrete-wavelet-transform.rst
doc/source/ref/idwt-inverse-discrete-wavelet-transform.rst
doc/source/ref/index.rst
doc/source/ref/iswt-inverse-stationary-wavelet-transform.rst
doc/source/ref/nd-dwt-and-idwt.rst
doc/source/ref/other-functions.rst
doc/source/ref/signal-extension-modes.rst
doc/source/ref/swt-stationary-wavelet-transform.rst
doc/source/ref/thresholding-functions.rst
doc/source/ref/wavelet-packets.rst
doc/source/ref/wavelets.rst
doc/source/regression/dwt-idwt.rst
doc/source/regression/gotchas.rst
doc/source/regression/index.rst
doc/source/regression/modes.rst
doc/source/regression/multilevel.rst
doc/source/regression/wavelet.rst
doc/source/regression/wp.rst
doc/source/regression/wp2d.rst
pywt/__init__.py
pywt/_c99_config.py
pywt/_cwt.py
pywt/_doc_utils.py
pywt/_dwt.py
pywt/_functions.py
pywt/_multidim.py
pywt/_multilevel.py
pywt/_pytest.py
pywt/_pytesttester.py
pywt/_swt.py
pywt/_thresholding.py
pywt/_utils.py
pywt/_wavelet_packets.py
pywt/conftest.py
pywt/version.py
pywt/_extensions/__init__.py
pywt/_extensions/_cwt.c
pywt/_extensions/_cwt.pxd
pywt/_extensions/_cwt.pyx
pywt/_extensions/_dwt.c
pywt/_extensions/_dwt.pxd
pywt/_extensions/_dwt.pyx
pywt/_extensions/_pywt.c
pywt/_extensions/_pywt.h
pywt/_extensions/_pywt.pxd
pywt/_extensions/_pywt.pyx
pywt/_extensions/_swt.c
pywt/_extensions/_swt.pyx
pywt/_extensions/c_wt.pxd
pywt/_extensions/common.pxd
pywt/_extensions/config.pxi
pywt/_extensions/wavelet.pxd
pywt/_extensions/wavelets_list.pxi
pywt/_extensions/c/common.c
pywt/_extensions/c/common.h
pywt/_extensions/c/convolution.c
pywt/_extensions/c/convolution.h
pywt/_extensions/c/convolution.template.c
pywt/_extensions/c/convolution.template.h
pywt/_extensions/c/cwt.c
pywt/_extensions/c/cwt.h
pywt/_extensions/c/cwt.template.c
pywt/_extensions/c/cwt.template.h
pywt/_extensions/c/templating.h
pywt/_extensions/c/wavelets.c
pywt/_extensions/c/wavelets.h
pywt/_extensions/c/wavelets_coeffs.h
pywt/_extensions/c/wavelets_coeffs.template.h
pywt/_extensions/c/wt.c
pywt/_extensions/c/wt.h
pywt/_extensions/c/wt.template.c
pywt/_extensions/c/wt.template.h
pywt/data/__init__.py
pywt/data/_readers.py
pywt/data/_wavelab_signals.py
pywt/data/aero.npz
pywt/data/ascent.npz
pywt/data/camera.npz
pywt/data/create_dat.py
pywt/data/ecg.npy
pywt/data/sst_nino3.npz
pywt/tests/test__pywt.py
pywt/tests/test_concurrent.py
pywt/tests/test_cwt_wavelets.py
pywt/tests/test_data.py
pywt/tests/test_deprecations.py
pywt/tests/test_doc.py
pywt/tests/test_dwt_idwt.py
pywt/tests/test_functions.py
pywt/tests/test_matlab_compatibility.py
pywt/tests/test_matlab_compatibility_cwt.py
pywt/tests/test_modes.py
pywt/tests/test_multidim.py
pywt/tests/test_multilevel.py
pywt/tests/test_perfect_reconstruction.py
pywt/tests/test_swt.py
pywt/tests/test_thresholding.py
pywt/tests/test_wavelet.py
pywt/tests/test_wp.py
pywt/tests/test_wp2d.py
pywt/tests/data/cwt_matlabR2015b_result.npz
pywt/tests/data/dwt_matlabR2012a_result.npz
pywt/tests/data/generate_matlab_data.py
pywt/tests/data/generate_matlab_data_cwt.py
pywt/tests/data/wavelab_test_signals.npz
util/__init__.py
util/authors.py
util/gh_lists.py
util/refguide_check.py
util/setenv_build32.bat
util/setenv_build64.bat
util/travis_osx_install.sh
util/appveyor/build.cmd
util/readthedocs/requirements.txt PyWavelets-1.1.1/PyWavelets.egg-info/dependency_links.txt 0000644 0001750 0001750 00000000001 13552543071 024125 0 ustar lee8rx lee8rx 0000000 0000000
PyWavelets-1.1.1/PyWavelets.egg-info/requires.txt 0000644 0001750 0001750 00000000016 13552543071 022454 0 ustar lee8rx lee8rx 0000000 0000000 numpy>=1.13.3
PyWavelets-1.1.1/PyWavelets.egg-info/top_level.txt 0000644 0001750 0001750 00000000005 13552543071 022604 0 ustar lee8rx lee8rx 0000000 0000000 pywt
PyWavelets-1.1.1/README.rst 0000644 0001750 0001750 00000014374 13552333332 015757 0 ustar lee8rx lee8rx 0000000 0000000 +---------------+-----------------+
| Service | Master branch |
+===============+=================+
| Travis | |travis_ci| |
+---------------+-----------------+
| Appveyor | |appveyor_ci| |
+---------------+-----------------+
| Read the Docs | |read_the_docs| |
+---------------+-----------------+
.. |travis_ci| image:: https://api.travis-ci.org/PyWavelets/pywt.svg?branch=master
:align: middle
:target: https://travis-ci.org/PyWavelets/pywt
:alt: TravisCI Status
.. |appveyor_ci| image:: https://ci.appveyor.com/api/projects/status/github/PyWavelets/pywt
:align: middle
:target: https://ci.appveyor.com/project/PyWavelets/pywt
:alt: Appveyor Status
.. |read_the_docs| image:: https://readthedocs.org/projects/pywavelets/badge/?version=latest
:align: middle
:target: https://pywavelets.readthedocs.io/en/latest/?badge=latest
:alt: Documentation Status
PyWavelets
==========
.. contents::
What is PyWavelets
------------------
PyWavelets is a free Open Source library for wavelet transforms in Python.
Wavelets are mathematical basis functions that are localized in both time and
frequency. Wavelet transforms are time-frequency transforms employing
wavelets. They are similar to Fourier transforms, the difference being that
Fourier transforms are localized only in frequency instead of in time and
frequency.
The main features of PyWavelets are:
* 1D, 2D and nD Forward and Inverse Discrete Wavelet Transform (DWT and IDWT)
* 1D, 2D and nD Multilevel DWT and IDWT
* 1D and 2D Stationary Wavelet Transform (Undecimated Wavelet Transform)
* 1D and 2D Wavelet Packet decomposition and reconstruction
* 1D Continuous Wavelet Tranfsorm
* Computing Approximations of wavelet and scaling functions
* Over 100 `built-in wavelet filters`_ and support for custom wavelets
* Single and double precision calculations
* Real and complex calculations
* Results compatible with Matlab Wavelet Toolbox (TM)
Documentation
-------------
Documentation with detailed examples and links to more resources is available
online at http://pywavelets.readthedocs.org.
For more usage examples see the `demo`_ directory in the source package.
Installation
------------
PyWavelets supports `Python`_ >=3.5, and is only dependent on `NumPy`_
(supported versions are currently ``>= 1.13.3``). To pass all of the tests,
`Matplotlib`_ is also required. `SciPy`_ is also an optional dependency. When
present, FFT-based continuous wavelet transforms will use FFTs from SciPy
rather than NumPy.
There are binary wheels for Intel Linux, Windows and macOS / OSX on PyPi. If
you are on one of these platforms, you should get a binary (precompiled)
installation with::
pip install PyWavelets
Users of the Anaconda_ Python distribution may wish to obtain pre-built
Windows, Intel Linux or macOS / OSX binaries from the conda-forge channel.
This can be done via::
conda install -c conda-forge pywavelets
Several Linux distributions have their own packages for PyWavelets, but these
tend to be moderately out of date. Query your Linux package manager tool for
``python-pywavelets``, ``python-wavelets``, ``python-pywt`` or a similar
package name.
If you want or need to install from source, you will need a working C compiler
(any common one will work) and a recent version of `Cython`_. Navigate to the
PyWavelets source code directory (containing ``setup.py``) and type::
pip install .
The most recent *development* version can be found on GitHub at
https://github.com/PyWavelets/pywt.
The latest release, including source and binary packages for Intel Linux,
macOS and Windows, is available for download from the `Python Package Index`_.
You can find source releases at the `Releases Page`_.
State of development & Contributing
-----------------------------------
PyWavelets started in 2006 as an academic project for a master thesis
on `Analysis and Classification of Medical Signals using Wavelet Transforms`
and was maintained until 2012 by its `original developer`_. In 2013
maintenance was taken over in a `new repo `_)
by a larger development team - a move supported by the original developer.
The repo move doesn't mean that this is a fork - the package continues to be
developed under the name "PyWavelets", and released on PyPi and Github (see
`this issue `_ for the discussion
where that was decided).
All contributions including bug reports, bug fixes, new feature implementations
and documentation improvements are welcome. Moreover, developers with an
interest in PyWavelets are very welcome to join the development team!
As of 2019, PyWavelets development is supported in part by Tidelift.
`Help support PyWavelets with the Tidelift Subscription `_
Contact
-------
Use `GitHub Issues`_ or the `mailing list`_ to post your comments or questions.
**Report a security vulnerability:** https://tidelift.com/security
License
-------
PyWavelets is a free Open Source software released under the MIT license.
If you wish to cite PyWavelets in a publication, please use the following
JOSS publication.
.. image:: http://joss.theoj.org/papers/10.21105/joss.01237/status.svg
:target: https://doi.org/10.21105/joss.01237
Specific releases can also be cited via Zenodo. The DOI below will correspond
to the most recent release. DOIs for past versions can be found by following
the link in the badge below to Zenodo:
.. image:: https://zenodo.org/badge/DOI/10.5281/zenodo.1407171.svg
:target: https://doi.org/10.5281/zenodo.1407171
.. _built-in wavelet filters: http://wavelets.pybytes.com/
.. _Cython: http://cython.org/
.. _demo: https://github.com/PyWavelets/pywt/tree/master/demo
.. _Anaconda: https://www.continuum.io
.. _GitHub: https://github.com/PyWavelets/pywt
.. _GitHub Issues: https://github.com/PyWavelets/pywt/issues
.. _NumPy: https://www.numpy.org
.. _SciPy: https://www.scipy.org
.. _original developer: http://en.ig.ma
.. _Python: http://python.org/
.. _Python Package Index: http://pypi.python.org/pypi/PyWavelets/
.. _mailing list: http://groups.google.com/group/pywavelets
.. _Releases Page: https://github.com/PyWavelets/pywt/releases
.. _Matplotlib: http://matplotlib.org
PyWavelets-1.1.1/demo/ 0000755 0001750 0001750 00000000000 13552543071 015206 5 ustar lee8rx lee8rx 0000000 0000000 PyWavelets-1.1.1/demo/_dwt_decompose.c 0000664 0001750 0001750 00000002342 13270003221 020331 0 ustar lee8rx lee8rx 0000000 0000000 /*
* Note: this currently doesn't get installed. There's also no way to query
* the location of wt.h. Conclusion: there is no C API.
*/
#include
#include "wt.h"
int main(){
// Using C API to decompose 1D signal.
// Results equivalent to pywt.dwt([1,2,3,4,5,6,7,8], 'db2', 'zpd').
// Compile: gcc -I../src dwt_decompose.c ../src/wt.c ../src/wavelets.c ../src/common.c ../src/convolution.c
Wavelet *w = wavelet('d', 2);
MODE mode = MODE_ZEROPAD;
int i;
float input[] = {1,2,3,4,5,6,7,8,9};
float *cA, *cD;
pywt_index_t input_len, output_len;
input_len = sizeof input / sizeof input[0];
output_len = dwt_buffer_length(input_len, w->dec_len, mode);
cA = wtcalloc(output_len, sizeof(float));
cD = wtcalloc(output_len, sizeof(float));
printf("Wavelet: %s %d\n\n", w->family_name, w->vanishing_moments_psi);
float_dec_a(input, input_len, w, cA, output_len, mode);
float_dec_d(input, input_len, w, cD, output_len, mode);
for(i=0; i