wavedec не возвращает никаких коэффициентов в python, используя библиотеку pywt

Я использовал команду вейвлет-разложения в python, используя библиотеку pywt, но она не возвращает никаких коэффициентов. мой код приведен ниже.

import numpy as np
import pywt as pywt

(e,f)=pywt.wavedec(y,'db12' ,level=2)
print("e:"+str(e))
print("f:"+str(f))

Я тоже пробовал с pywt.dwt(y,' db12', level=2) он также не возвращает никаких коэффициентов

он возвращает нулевой вывод, где у матрица содержит мой вход

1 ответ

Решение

Я попытался воспроизвести ваши результаты с помощью случайного (дискретного) сигнала следующим образом:

import numpy as np
import pyw

x = np.random.randint(0,100,500)

y = pywt.wavedec(x, 'db12', level=2)
(e,f) = pywt.dwt(x, 'db12')

Я заметил две вещи: для 1D сигнала, wavedec возвращает более двух массивов коэффициентов, как также упоминалось в документации. Точно так же dwt функция не знает ключевое слово level=, но прекрасно работает с командой, указанной выше.
надеюсь, это поможет

Другие вопросы по тегам