快捷方式

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')[source]

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

This feature supports the following devices: CPU, CUDA

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

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

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

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

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

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

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

  • mel_scale (str, 可选) – 使用的尺度: htkslaney。(默认值: htk)

  • driver (str, 可选) – 用于 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[source]
参数:

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

返回值:

大小为 (…, freq, time) 的线性尺度频谱图

返回类型:

Tensor

文档

访问 PyTorch 的完整开发者文档

查看文档

教程

获取面向初学者和高级开发者的深度教程

查看教程

资源

查找开发资源并获得问题解答

查看资源