PyWavelets / pywt

PyWavelets - Wavelet Transforms in Python
http://pywavelets.readthedocs.org
MIT License
1.97k stars 460 forks source link

Singularity detection and processing with wavelets (1D, real-valued) #618

Open andres-fr opened 2 years ago

andres-fr commented 2 years ago

I'm currently reading the 1992 paper by Mallat and Hwang, Singularity Detection and Processing with Wavelets, because I'm interested in quantifying how "spiky" a 1D function is at given points.

The paper proposes a method to do so through Lipschitz exponents, relatively efficiently and with many mathematical guarantees. As far as I could understand (I'm about halfway through), if the function is not rapidly oscillating, this can be done by computing a CWT, then extracting local maxima lines and computing their gradient on a log scale. A wavelet with an appropriate number of moments must be chosen.

Before getting into more details, I looked for existing implementations to play with it, but all I could find were these (rather distorted/vague) mentions to the paper here.


Questions/proposed contribution:

I'm only interested in 1D, real-valued signals for the moment. The 1992 work is focused on real-valued signals, but it has been extended to C since then. Also, the 1992 work provides a section for image processing which should allow to extend to 2D.

I'd appreciate any thoughts on the matter!