2

我正在尝试从声音文件(.wav)中获取功能;</p>

  1. 我尝试 stft 来获得 2D 特征(x 是时间,y 是频率)
  2. 我试过 pywt,但得到了一个一维数组。如果我输入一个一维 (1000,) wav 数组,我得到一个 (500,) 数组
  3. 如何使用 pywt 获得像 stft 一样的 2D 功能?

这是 stft 特征结果:

在此处输入图像描述

4

1 回答 1

3

您可以通过以下方式使用 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')
于 2019-07-17T09:32:45.073 回答