torchaudio.compliance.kaldi¶
可以使用 torchaudio 执行 kaldi 的有用处理操作。 给出了具有相同参数的各种函数,以便 torchaudio 可以 产生类似的输出。
功能¶
光谱图¶
-
torchaudio.compliance.kaldi.
spectrogram
(波形:手电筒。张量,blackman_coeff:浮点数 = 0.42,通道:int = -1,抖动:浮点数 = 0.0,energy_floor:浮点数 = 1.0,frame_length:浮点数 = 25.0,frame_shift:浮点数 = 10.0,min_duration:浮点数 = 0.0,preemphasis_coefficient:浮点数 = 0.97,raw_energy:bool = True,remove_dc_offset:bool = True,round_to_power_of_two:bool = True,sample_frequency:浮点数 = 16000.0,snip_edges: bool = True, subtract_mean: bool = False, window_type: str = 'povey') → torch.张量[来源]¶ 从原始音频信号创建频谱图。这与 Kaldi 的 compute-spectrogram-feats.
- 参数
waveform (Tensor) - 大小为 (c, n) 的音频张量,其中 c 在 [0,2] 范围内
blackman_coeff (float, optional) - 广义 Blackman 窗口的常数系数。(默认:
0.42
)channel (int, optional) - 要提取的通道 (-1 -> expect mono, 0 -> left, 1 -> right) (默认值:
-1
)dither (float, optional) – 抖动常数 (0.0 表示没有抖动)。如果关闭此选项,则应将 energy_floor选项,例如 1.0 或 0.1(默认值:
0.0
)energy_floor (float, optional) – 频谱图计算中的能量下限 (绝对,非相对)。谨慎: 此 floor 应用于第 0 个分量,表示总信号能量。地板 各个频谱图元素固定在 std::numeric_limits<float>::epsilon() 中。(默认:
1.0
)frame_length (float, optional) – 帧长度(以毫秒为单位)(默认值:
25.0
)frame_shift (float, optional) – 以毫秒为单位的移码 (Default:
10.0
)min_duration (float, optional) – 要处理的分段的最短持续时间 (以秒为单位)。(默认:
0.0
)preemphasis_coefficient (float, optional) – 用于信号预加重的系数 (Default:
0.97
)raw_energy (bool, optional) – 如果为 True,则在预加重和加窗之前计算能量(默认值:
True
)remove_dc_offset (bool, optional) – 从每帧的波形中减去平均值(默认值:
True
)round_to_power_of_two (bool,可选) – 如果为 True,则将窗口大小四舍五入到零填充输入的 2 的幂 到 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
)window_type (str, optional) – 窗口类型 ('hamming'|'汉宁'|'povey'|'矩形'|'布莱克曼') (默认:
'povey'
)
- 返回
与 Kaldi 输出的频谱图相同。形状为 (m, ) 其中 m 以 _get_strided 为单位计算
padded_window_size // 2 + 1
- 返回类型
张肌
fbank¶
-
torchaudio.compliance.kaldi.
fbank
(波形:手电筒。张量,blackman_coeff:float = 0.42,通道:int = -1,抖动: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') → 割torch。张量[来源]¶ 从原始音频信号创建 fbank。这与 Kaldi 的 compute-fbank-feats 的
- 参数
waveform (Tensor) - 大小为 (c, n) 的音频张量,其中 c 在 [0,2] 范围内
blackman_coeff (float, optional) - 广义 Blackman 窗口的常数系数。(默认:
0.42
)channel (int, optional) - 要提取的通道 (-1 -> expect mono, 0 -> left, 1 -> right) (默认值:
-1
)dither (float, optional) – 抖动常数 (0.0 表示没有抖动)。如果关闭此选项,则应将 energy_floor选项,例如 1.0 或 0.1(默认值:
0.0
)energy_floor (float, optional) – 频谱图计算中的能量下限 (绝对,非相对)。谨慎: 此 floor 应用于第 0 个分量,表示总信号能量。地板 各个频谱图元素固定在 std::numeric_limits<float>::epsilon() 中。(默认:
1.0
)frame_length (float, optional) – 帧长度(以毫秒为单位)(默认值:
25.0
)frame_shift (float, optional) – 以毫秒为单位的移码 (Default:
10.0
)high_freq (float (float, optional) – 梅尔箱的高截止频率(如果 <= 0,与 Nyquist 的偏移量) (默认:
0.0
)htk_compat (bool, optional) – 如果为 true,则最后输入 energy。警告:不足以获得 HTK 兼容功能 (需要更改其他参数)。(默认:
False
)low_freq (float, optional) – mel bins 的低截止频率 (Default:
20.0
)min_duration (float, optional) – 要处理的分段的最短持续时间 (以秒为单位)。(默认:
0.0
)num_mel_bins (int, optional) – 三角形 mel-frequency bin 的数量 (默认值:
23
)preemphasis_coefficient (float, optional) – 用于信号预加重的系数 (Default:
0.97
)raw_energy (bool, optional) – 如果为 True,则在预加重和加窗之前计算能量(默认值:
True
)remove_dc_offset (bool, optional) – 从每帧的波形中减去平均值(默认值:
True
)round_to_power_of_two (bool,可选) – 如果为 True,则将窗口大小四舍五入到零填充输入的 2 的幂 到 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,则生成 log-filterbank,否则生成 linear。(默认:
True
)use_power (bool, optional) – 如果为 true,则使用 power,否则使用 magnitude。(默认:
True
)vtln_high (float (float , optional) – 分段线性 VTLN 翘曲函数中的高拐点 (如果 负数,与 high-mel-freq 的偏移量(默认值:
-500.0
)vtln_low (float, optional) – 分段线性 VTLN warping 函数中的低拐点 (Default:
100.0
)vtln_warp (float, optional) – Vtln 翘曲因子 (仅在未指定 vtln_map 时适用) (默认值:
1.0
)window_type (str, optional) – 窗口类型 ('hamming'|'汉宁'|'povey'|'矩形'|'布莱克曼') (默认:
'povey'
)
- 返回
与 Kaldi 输出的 fbank 相同。形状为 (m, ) 其中 m 以 _get_strided 为单位计算
num_mel_bins + use_energy
- 返回类型
张肌
MFCC¶
-
torchaudio.compliance.kaldi.
mfcc
(波形:手电筒。张量,blackman_coeff:浮点数 = 0.42,cepstral_lifter:浮点数 = 22.0,通道:int = -1,抖动:浮点数 = 0.0,energy_floor:浮点数 = 1.0,frame_length:浮点数 = 25.0,frame_shift:浮点数 = 10.0,high_freq:浮点数 = 0.0,htk_compat:bool = False,low_freq:浮点数 = 20.0,num_ceps:int = 13,min_duration:浮点数 = 0.0,num_mel_bins:int = 23, preemphasis_coefficient:浮点数 = 0.97,raw_energy:bool = True,remove_dc_offset:bool = 真,round_to_power_of_two:bool = 真,sample_frequency:浮点数 = 16000.0,snip_edges:bool = 真,subtract_mean:bool = 假,use_energy:bool = 假,vtln_high:浮点数 = -500.0,vtln_low:浮点数 = 100.0,vtln_warp:浮点数 = 1.0,window_type:str = 'povey') → 割torch。张量[来源]¶ 从原始音频信号创建 mfcc。这与 Kaldi 的 compute-mfcc-feats 的 Calculate MfcC-feats 中。
- 参数
waveform (Tensor) - 大小为 (c, n) 的音频张量,其中 c 在 [0,2] 范围内
blackman_coeff (float, optional) - 广义 Blackman 窗口的常数系数。(默认:
0.42
)cepstral_lifter (float, optional) – 控制 MFCC 缩放的常量 (默认值:
22.0
)channel (int, optional) - 要提取的通道 (-1 -> expect mono, 0 -> left, 1 -> right) (默认值:
-1
)dither (float, optional) – 抖动常数 (0.0 表示没有抖动)。如果关闭此选项,则应将 energy_floor选项,例如 1.0 或 0.1(默认值:
0.0
)energy_floor (float, optional) – 频谱图计算中的能量下限 (绝对,非相对)。谨慎: 此 floor 应用于第 0 个分量,表示总信号能量。地板 各个频谱图元素固定在 std::numeric_limits<float>::epsilon() 中。(默认:
1.0
)frame_length (float, optional) – 帧长度(以毫秒为单位)(默认值:
25.0
)frame_shift (float, optional) – 以毫秒为单位的移码 (Default:
10.0
)high_freq (float (float, optional) – 梅尔箱的高截止频率(如果 <= 0,与 Nyquist 的偏移量) (默认:
0.0
)htk_compat (bool, optional) – 如果为 true,则最后输入 energy。警告:不足以兼容 HTK features(需要更改其他参数)。(默认:
False
)low_freq (float, optional) – mel bins 的低截止频率 (Default:
20.0
)num_ceps (int, optional) – MFCC 计算中的 cepstra 数量 (包括 C0) (默认值:
13
)min_duration (float, optional) – 要处理的分段的最短持续时间 (以秒为单位)。(默认:
0.0
)num_mel_bins (int, optional) – 三角形 mel-frequency bin 的数量 (默认值:
23
)preemphasis_coefficient (float, optional) – 用于信号预加重的系数 (Default:
0.97
)raw_energy (bool, optional) – 如果为 True,则在预加重和加窗之前计算能量(默认值:
True
)remove_dc_offset (bool, optional) – 从每帧的波形中减去平均值(默认值:
True
)round_to_power_of_two (bool,可选) – 如果为 True,则将窗口大小四舍五入到零填充输入的 2 的幂 到 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
)vtln_high (float (float , optional) – 分段线性 VTLN 翘曲函数中的高拐点 (如果 负数,与 high-mel-freq 的偏移量(默认值:
-500.0
)vtln_low (float, optional) – 分段线性 VTLN warping 函数中的低拐点 (Default:
100.0
)vtln_warp (float, optional) – Vtln 翘曲因子 (仅在未指定 vtln_map 时适用) (默认值:
1.0
)window_type (str, optional) – 窗口类型 ('hamming'|'汉宁'|'povey'|'矩形'|'布莱克曼') (默认:
"povey"
)
- 返回
与 Kaldi 输出的 mfcc 相同。形状为 (m, ) 其中 m 以 _get_strided 为单位计算
num_ceps
- 返回类型
张肌
resample_waveform¶
-
torchaudio.compliance.kaldi.
resample_waveform
(波形:手电筒。Tensor,orig_freq:浮点数,new_freq:浮点数,lowpass_filter_width:int = 6)→ torch。张量[来源]¶ 以新频率对波形进行重采样。这与 Kaldi 的 OfflineFeatureTpl ResampleWaveform 匹配 它使用 LinearResample(以线性间隔对信号进行重采样,以提升采样/降低采样 一个信号)。LinearResample (LR) 表示输出信号处于线性间隔(即 输出信号的频率为 )。它使用 sinc/bandlimited 插值来 对信号进行上采样/下采样。
new_freq
https://ccrma.stanford.edu/~jos/resample/Theory_Ideal_Bandlimited_Interpolation.html https://github.com/kaldi-asr/kaldi/blob/master/src/feat/resample.h#L56