.. |pypi-shield| image:: https://img.shields.io/pypi/v/pyrtools.svg
:target: https://pypi.org/project/pyrtools/
.. |conda-shield| image:: https://anaconda.org/conda-forge/pyrtools/badges/version.svg
:target: https://anaconda.org/conda-forge/pyrtools
.. |license-shield| image:: https://img.shields.io/badge/license-MIT-yellow.svg
:target: https://github.com/LabForComputationalVision/pyrtools/blob/main/LICENSE
.. |python-version-shield| image:: https://img.shields.io/badge/python-3.8%7C3.9%7C3.10%7C3.11%7C3.12-blue.svg
.. |build| image:: https://github.com/LabForComputationalVision/pyrtools/workflows/build/badge.svg
:target: https://github.com/LabForComputationalVision/pyrtools/actions?query=workflow%3Abuild
.. |binder| image:: https://mybinder.org/badge_logo.svg
:target: https://mybinder.org/v2/gh/LabForComputationalVision/pyrtools/v1.0.7?filepath=TUTORIALS%2F
.. |doi| image:: https://zenodo.org/badge/137527035.svg
:target: https://zenodo.org/doi/10.5281/zenodo.10161031
.. pyrtools documentation master file, created by
sphinx-quickstart on Mon Mar 25 17:57:12 2019.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
pyrtools
====================================
|pypi-shield| |conda-shield| |license-shield| |python-version-shield| |build| |binder| |doi|
Pyrtools is a python package for multi-scale image processing, adapted
from Eero Simoncelli's `matlabPyrTools
`_.
The tools include:
- Recursive multi-scale image decompositions (pyramids), including
Laplacian pyramids, QMFs, Wavelets, and steerable pyramids. These
operate on 1D or 2D signals of arbitrary dimension.
- Fast 2D convolution routines, with subsampling and boundary-handling.
- Fast point-operations, histograms, histogram-matching.
- Fast synthetic image generation: sine gratings, zone plates, fractals, etc.
- Display routines for images and pyramids. These include several
auto-scaling options, rounding to integer zoom factors to avoid
resampling artifacts, and useful labeling (dimensions and gray-range).
**NOTE**: If you are only interested in the complex steerable pyramid, we have a pytorch implementation in the `plenoptic `_ package; the implementation in plenoptic is differentiable.
Citing us
---------
If you use ``pyrtools`` in a published academic article or presentation, please
cite us! You can find the link to the most recent release on Zenodo `here
`_ (though please specify the
version you used not the most recent one!). You can also get a formatted
citation at the top right of our `GitHub repo
`_
.. include:: quickstart.rst
Pyramid resources
------------------
If you would like to learn more about pyramids and why they're helpful
for image processing, here are some resources to get you started:
- Brian Wandell's `Foundations of Vision
`_,
chapter 8 (the rest of the book is helpful if you want to
understand the basics of the visual system).
- `Adelson et al, 1984, "Pyramid methods in image
processing". `_
- Notes from David Heeger on `steerable filters
`_
- Notes from Eero Simoncelli on `the Steerable Pyramid
`_
.. toctree::
:maxdepth: 2
installation
developerguide
.. toctree::
:maxdepth: 2
:caption: Tutorials
:glob:
:numbered:
tutorials/*
.. toctree::
:caption: API Documentation
api/modules