Я хочу вычислить вейвлет сигнала с разными масштабами и временными сдвигами.
В Matlab с помощью предоставленной функции cwt()
(непрерывное одномерное вейвлет-преобразование) в Wavelet Toolbox я могу указать масштабы, которые я хочу, в качестве параметра в cwt(), и он вернет все возможные временные сдвиги:
x = [1, 2, 3, 4];
scales = [1, 2, 3];
wavelet_name = 'db1';
coefs = cwt(x,scales, wavelet_name);
>> coefs =
-0.0000 -0.0000 -0.0000 0.0000
-0.7071 -0.7071 -0.7071 -0.7071
-1.1553 -1.1553 -1.1553 1.7371
Как я могу добиться этого в Python?
Вот мои две попытки:
- В PyWavelets (дискретное вейвлет-преобразование в Python) я не вижу, как указать параметр масштаба вейвлета.
- В
scipy.signal.cwt
я могу не могу найти список встроенных вейвлет-функций, которые я могу передать в scipy.signal.cwt: я хочу иметь, по крайней мере, наиболее распространенные вейвлет-функции, такие как sym2 и db1. (например, см. список встроенных вейвлетов Matlab).