快捷方式

InverseMelScale

class torchaudio.transforms.InverseMelScale(n_stft: int, n_mels: int = 128, sample_rate: int = 16000, f_min: float = 0.0, f_max: Optional[float] = None, norm: Optional[str] = None, mel_scale: str = 'htk', driver: str = 'gels')[源代码]

从梅尔频率域估计正常频率域的STFT。

This feature supports the following devices: CPU, CUDA

它使用 torch.linalg.lstsq 来最小化输入梅尔频谱与估计频谱和滤波器组乘积之间的欧几里得范数。

参数
  • n_stft (int) – STFT 中的 bin 数量。参见 Spectrogram 中的 n_fft

  • n_mels (int, optional) – 梅尔滤波器组的数量。(默认: 128)

  • sample_rate (int, optional) – 音频信号的采样率。(默认: 16000)

  • f_min (float, optional) – 最小频率。(默认: 0.)

  • f_max (floatNone, optional) – 最大频率。(默认: sample_rate // 2)

  • norm (strNone, optional) – 如果为“slaney”,则将三角形梅尔权重除以梅尔频带的宽度(面积归一化)。(默认: None)

  • mel_scale (str, optional) – 要使用的尺度:“htk”或“slaney”。(默认: htk)

  • driver (str, optional) – 用于 torch.lstsq 的 LAPACK/MAGMA 方法的名称。对于 CPU 输入,有效值为“gels”、“gelsy”、“gelsd”、“gelss”。对于 CUDA 输入,唯一有效的驱动程序是“gels”,它假定 A 是满秩的。(默认: "gels)

示例
>>> waveform, sample_rate = torchaudio.load("test.wav", normalize=True)
>>> mel_spectrogram_transform = transforms.MelSpectrogram(sample_rate, n_fft=1024)
>>> mel_spectrogram = mel_spectrogram_transform(waveform)
>>> inverse_melscale_transform = transforms.InverseMelScale(n_stft=1024 // 2 + 1)
>>> spectrogram = inverse_melscale_transform(mel_spectrogram)
forward(melspec: Tensor) Tensor[源代码]
参数

melspec (Tensor) – 维度为 (…, n_mels, time) 的梅尔频率频谱图

返回

线性尺度频谱图,尺寸为 (…, freq, time)

返回类型

张量

文档

访问全面的 PyTorch 开发者文档

查看文档

教程

为初学者和高级开发者提供深入的教程

查看教程

资源

查找开发资源并让您的问题得到解答

查看资源