快捷方式

ChromaScale

class torchaudio.prototype.transforms.ChromaScale(sample_rate: int, n_freqs: int, *, n_chroma: int = 12, tuning: float = 0.0, ctroct: float = 5.0, octwidth: Optional[float] = 2.0, norm: int = 2, base_c: bool = True)[source]

将频谱图转换为色度图 (chromagram)。

This feature supports the following devices: CPU, CUDA This API supports the following properties: Autograd
参数:
  • sample_rate (int) – 音频信号的采样率。

  • n_freqs (int) – STFT 中的频率 bin 数量。请参阅 Spectrogram 中的 n_fft

  • n_chroma (int, optional) – 色度数量。(默认值: 12)

  • tuning (float, optional) – A440 音高在色度 bin 分数上的调音偏差。(默认值: 0.0)

  • ctroct (float, optional) – 用于对滤波器加权的 Gaussian 优势窗口的中心,以八度为单位。(默认值: 5.0)

  • octwidth (floatNone, optional) – 用于对滤波器加权的 Gaussian 优势窗口的宽度,以八度为单位。如果为 None,则完全禁用加权。(默认值: 2.0)

  • norm (int, optional) – 用于归一化滤波器组的范数阶数。(默认值: 2)

  • base_c (bool, optional) – 如果为 True,则滤波器组从 C 开始。否则从 A 开始。(默认值: True)

示例
>>> waveform, sample_rate = torchaudio.load("test.wav", normalize=True)
>>> spectrogram_transform = transforms.Spectrogram(n_fft=1024)
>>> spectrogram = spectrogram_transform(waveform)
>>> chroma_transform = transforms.ChromaScale(sample_rate=sample_rate, n_freqs=1024 // 2 + 1)
>>> chroma_spectrogram = chroma_transform(spectrogram)

另请参阅

torchaudio.prototype.functional.chroma_filterbank() — 用于生成滤波器组的函数。

forward(x: Tensor) Tensor[source]
参数:

specgram (torch.Tensor) – 维度为 (…, n_freqs, 时间) 的频谱图。

返回:

大小为 (…, n_chroma, 时间) 的色度频谱图。

返回类型:

torch.Tensor

文档

访问 PyTorch 完整的开发者文档

查看文档

教程

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

查看教程

资源

查找开发资源并获得解答

查看资源