快捷方式

torchaudio.compliance.kaldi.fbank

torchaudio.compliance.kaldi.fbank(waveform: Tensor, blackman_coeff: float = 0.42, channel: int = -1, dither: float = 0.0, energy_floor: float = 1.0, frame_length: float = 25.0, frame_shift: float = 10.0, high_freq: float = 0.0, htk_compat: bool = False, low_freq: float = 20.0, min_duration: float =0.0, num_mel_bins: int = 23, preemphasis_coefficient: float = 0.97, raw_energy: bool = True, remove_dc_offset: bool = True, round_to_power_of_two: bool = True, sample_frequency: float = 16000.0, snip_edges: bool = True, subtract_mean: bool = False, use_energy: bool = False, use_log_fbank: bool = True, use_power: bool = True, vtln_high: float = -500.0, vtln_low: float = 100.0, vtln_warp: float = 1.0, window_type: str = 'povey') Tensor[source]

从原始音频信号创建 fbank。这与 Kaldi 的 compute-fbank-feats 的输入/输出匹配。

参数:
  • waveform (Tensor) – 大小为 (c, n) 的音频 Tensor,其中 c 在 [0, 2) 范围内

  • blackman_coeff (float, optional) – 广义 Blackman 窗口的常数系数。(默认值: 0.42)

  • channel (int, optional) – 要提取的通道(-1 -> 期望单声道,0 -> 左声道,1 -> 右声道)。(默认值: -1)

  • dither (float, optional) – 抖动常数(0.0 表示无抖动)。如果关闭此选项,应设置 energy_floor 选项,例如设为 1.0 或 0.1。(默认值: 0.0)

  • energy_floor (float, optional) – 计算声谱图时能量的下限(绝对值,非相对值)。注意:此下限应用于代表总信号能量的第零个分量。单个声谱图元素的下限固定为 std::numeric_limits<float>::epsilon()。(默认值: 1.0)

  • frame_length (float, optional) – 帧长(毫秒)。(默认值: 25.0)

  • frame_shift (float, optional) – 帧移(毫秒)。(默认值: 10.0)

  • high_freq (float, optional) – Mel bins 的高截止频率(如果 <= 0,则为奈奎斯特频率的偏移量)。(默认值: 0.0)

  • htk_compat (bool, optional) – 如果为 True,将能量放在最后。警告:不足以获得 HTK 兼容的特征(需要更改其他参数)。(默认值: False)

  • low_freq (float, optional) – Mel bins 的低截止频率。(默认值: 20.0)

  • min_duration (float, optional) – 要处理的段的最小持续时间(秒)。(默认值: 0.0)

  • num_mel_bins (int, optional) – 三角形 mel 频率 bins 的数量。(默认值: 23)

  • preemphasis_coefficient (float, optional) – 用于信号预加重的系数。(默认值: 0.97)

  • raw_energy (bool, optional) – 如果为 True,在预加重和加窗之前计算能量。(默认值: True)

  • remove_dc_offset (bool, optional) – 在每一帧中从波形中减去均值。(默认值: True)

  • round_to_power_of_two (bool, optional) – 如果为 True,通过对 FFT 输入进行零填充,将窗口大小四舍五入到二的幂。(默认值: True)

  • sample_frequency (float, optional) – 波形数据采样频率(必须与波形文件中的指定频率匹配)。(默认值: 16000.0)

  • snip_edges (bool, optional) – 如果为 True,通过仅输出完全适合文件中的帧来处理边缘效应,且帧数取决于 frame_length。如果为 False,帧数仅取决于 frame_shift,并且我们在末端反射数据。(默认值: True)

  • subtract_mean (bool, optional) – 减去每个特征文件的均值 [CMS];不推荐使用这种方法。(默认值: False)

  • use_energy (bool, optional) – 在 FBANK 输出中添加一个包含能量的额外维度。(默认值: False)

  • use_log_fbank (bool, optional) – 如果为 True,生成对数滤波器组;否则生成线性滤波器组。(默认值: True)

  • use_power (bool, optional) – 如果为 True,使用功率;否则使用幅度。(默认值: True)

  • vtln_high (float, optional) – 分段线性 VTLN 扭曲函数中的高拐点(如果为负,则为高 mel 频率的偏移量)。(默认值: -500.0)

  • vtln_low (float, optional) – 分段线性 VTLN 扭曲函数中的低拐点。(默认值: 100.0)

  • vtln_warp (float, optional) – VTLN 扭曲因子(仅在未指定 vtln_map 时适用)。(默认值: 1.0)

  • window_type (str, optional) – 窗口类型(‘hamming’|’hanning’|’povey’|’rectangular’|’blackman’)。(默认值: 'povey')

返回:

一个与 Kaldi 输出完全相同的 fbank。形状为 (m, num_mel_bins + use_energy),其中 m 在 _get_strided 中计算得到。

返回类型:

Tensor

使用 fbank 的教程
ASR Inference with CUDA CTC Decoder

使用 CUDA CTC 解码器进行 ASR 推理

使用 CUDA CTC 解码器进行 ASR 推理

文档

访问 PyTorch 的综合开发者文档

查看文档

教程

获取针对初学者和高级开发者的深度教程

查看教程

资源

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

查看资源