Как получить 2D вейвлет по Pywt, как Stft из файла WAV? - PullRequest
0 голосов
/ 14 января 2019

Я пытаюсь получить функции из звукового файла (.wav) ;

  1. Я пытался получить stft для 2D-функции (х - время, у - частота)
  2. Я пробовал pywt, но получил 1D массив. Если я введу 1D (1000,) массив WAV, я получу массив (500,)
  3. Как использовать pywt для получения 2D-функции, такой как stft?

Вот результат функции stft:

enter image description here

1 Ответ

0 голосов
/ 17 июля 2019

Вы можете использовать PyWavelet следующим образом, чтобы получить непрерывное вейвлет-преобразование аудио WAV-файла. Тем не менее, операция немного медленная.

  import pywt
  import scipy.io.wavfile

  wavefile = 'path to the wavefile'
  # read the wavefile
  sampling_frequency, signal = scipy.io.wavfile.read(wavefile)
  #
  scales = (1, len(signal))
  coefficient, frequency = pywt.cwt(signal, scales, 'wavelet_type')
...