Skip to main content

Temporal Scale-Space Toolbox for Python.

Project description

pytempscsp : Temporal Scale Space Toolbox for Python

For performing temporal smoothing with the time-causal limit kernel and for computing discrete temporal derivative approximations by applying temporal difference operators to the smoothed data.

This code is the result of porting a subset of the routines in the Matlab package tempscsp to Python, however, with different interfaces for the functions.

For examples of how to apply these functions for smoothing temporal signals to different temporal scales in a fully time-causal manner, please see the enclosed Jupyter notebook tempscspdemo.ipynb.

For more technical descriptions about the respective functions, please see the documentation strings for the respective functions in the source code in tempscsp.py.

The actual computations of the smoothed signals and the temporal derivatives is performed with computationally very efficient first-order recursive filters and small support temporal difference operators. For more explicit visualizations of the equivalent smoothing filters and temporal derivative computation filters, please see the enclosed Jupyter notebook kernelgraphs.ipynb.

Time-causal temporal derivatives and bandpass wavelets

For examples of how to use extensions of this code for computing time-causal temporal derivatives, please see the enclosed Jupyter notebooks sineexpwave.ipynb, vibration.ipynb and cymbal44.ipynb.

For examples of how to use extensions of this code for computing bandpass wavelets based on either (i) differences-of-time-causal-limit-kernels (DoT), (ii) differences-of-Gaussians (DoG) or (iii) differences-of-exponentials (DoE), please see the enclosed Jupyter notebooks bandpass-blocks.ipynb and bandpass-riemann.ipynb.

For more technical descriptions about the respective functions, please see the documentation strings for the respective functions in the source code in tempscsel.py and bandpass.py.

Dependencies

Some parts of the code depend on the pyscsp library available at https://github.com/tonylindeberg/pyscsp.

The Jupyter notebooks for computing visualizations of bandpass wavelets depend on a function in the PyWavelets library for generating the input data.

Installation

This package is available through pip and can installed by

pip install pytempscsp

This package can also be downloaded directly from GitHub:

git clone git@github.com:tonylindeberg/pytempscsp.git

References

Lindeberg (2023) "A time-causal and time-recursive temporal scale-space representation of temporal signals and past time", Biological Cybernetics 117 (1-2): 21-59. (Open Access)

Lindeberg (2026) "Time-causal and time-recursive wavelets", Frontiers in Signal Processing, to appear, preprint at arXiv:2510.05834. (Open Access)

Lindeberg (2016) "Time-causal and time-recursive spatio-temporal receptive fields", Journal of Mathematical Imaging and Vision 55(1): 50-88. (Open Access)

The time-causal limit kernel was first defined in Lindeberg (2016), however, then also in combination with a spatial domain, and experimentally tested on video data. The later overview paper (Lindeberg 2023) gives a dedicated treatment for a purely temporal domain, and also with relations to Koenderink's scale-time kernels and the ex-Gaussian kernel.

The extension to time-causal temporal derivatives was first performed in Lindeberg (2016), additionally considered in Lindeberg (2023) and then extended to bandpass wavelets and more general time-causal wavelets in Lindeberg (2026).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pytempscsp-1.0.3.tar.gz (12.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pytempscsp-1.0.3-py3-none-any.whl (13.3 kB view details)

Uploaded Python 3

File details

Details for the file pytempscsp-1.0.3.tar.gz.

File metadata

  • Download URL: pytempscsp-1.0.3.tar.gz
  • Upload date:
  • Size: 12.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.11.5 Darwin/24.6.0

File hashes

Hashes for pytempscsp-1.0.3.tar.gz
Algorithm Hash digest
SHA256 b2eea3d16e26c036f58db77701a2bcdbdff1343b76892cfb6a1720ba49470b1b
MD5 c391a749dc16fa38798a9ab5c2e72022
BLAKE2b-256 cac947ebff75e9d9c5b43dfcc7c9a4acd55bcc660af71b96e8c925513ba9a56e

See more details on using hashes here.

File details

Details for the file pytempscsp-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: pytempscsp-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 13.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.11.5 Darwin/24.6.0

File hashes

Hashes for pytempscsp-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 b7b0ca32ae786a8cb775a6b457493fc6939d921facd1634416dc124c1d4e10e6
MD5 7fbc893d7e68deee2f2f0b9c35cf5144
BLAKE2b-256 26ac84530b6dc4f0c315ea80d2f138c96ca7036b3721d36c9e1442f6530a4ce5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page