快捷方式

MFCC

class torchaudio.transforms.MFCC(sample_rate: int = 16000, n_mfcc: int = 40, dct_type: int = 2, norm: str = 'ortho', log_mels: bool = False, melkwargs: Optional[dict] = None)[source]

從音訊訊號建立梅爾頻率倒譜係數 (Mel-frequency cepstrum coefficients)。

This feature supports the following devices: CPU, CUDA This API supports the following properties: Autograd, TorchScript

預設情況下,此函式會在 DB 尺度的梅爾頻譜圖上計算 MFCC。 這不是教科書上的實作,但此處的實作是為了與 librosa 保持一致。

此輸出取決於輸入頻譜圖中的最大值,因此對於分割成片段的音訊剪輯與完整的音訊剪輯,可能會傳回不同的值。

參數:
  • sample_rate (int, optional) – 音訊訊號的取樣率。(預設: 16000)

  • n_mfcc (int, optional) – 要保留的 mfc 係數數量。(預設: 40)

  • dct_type (int, optional) – 要使用的 DCT (離散餘弦轉換) 類型。(預設: 2)

  • norm (str, optional) – 要使用的範數。(預設: "ortho")

  • log_mels (bool, optional) – 是否使用 log-mel 頻譜圖而不是 db 尺度的頻譜圖。(預設: False)

  • melkwargs (dict or None, optional) – MelSpectrogram 的引數。(預設: None)

範例
>>> waveform, sample_rate = torchaudio.load("test.wav", normalize=True)
>>> transform = transforms.MFCC(
>>>     sample_rate=sample_rate,
>>>     n_mfcc=13,
>>>     melkwargs={"n_fft": 400, "hop_length": 160, "n_mels": 23, "center": False},
>>> )
>>> mfcc = transform(waveform)

另請參閱

torchaudio.functional.melscale_fbanks() - 用於產生濾波器組的函式。

使用 MFCC 的教學課程
Audio Feature Extractions

音訊特徵提取

音訊特徵提取
forward(waveform: Tensor) Tensor[source]
參數:

waveform (Tensor) – 音訊張量,維度為 (…, 時間)。

傳回:

大小為 (…, n_mfcc, 時間) 的 specgram_mel_db。

傳回類型:

Tensor

文件

存取 PyTorch 的完整開發人員文件

檢視文件

教學

取得針對初學者和進階開發人員的深入教學課程

檢視教學課程

資源

尋找開發資源並取得問題解答

檢視資源