torchaudio.functional¶
用于执行常见音频操作的函数。
效用¶
amplitude_to_DB¶
DB_to_amplitude¶
-
torchaudio.functional.
DB_to_amplitude
(x:Torch。Tensor, ref: float, power: float) → torch 的 Tensor 中。张量[来源]¶ 将张量从分贝刻度转换为功率/振幅刻度。
melscale_fbanks¶
-
torchaudio.functional.
melscale_fbanks
(n_freqs:int、f_min:float、f_max:float、n_mels:int、sample_rate: int, norm: 可选[str] = None, mel_scale: str = 'htk') → torch。张量[来源]¶ 创建频次 bin 转换矩阵。
注意
为了与 librosa 的数值兼容性,并非所有系数 在结果滤波器组中,其幅值为 1。
- 参数
- 返回
大小为 (, ) 的三角滤波器组 (fb 矩阵) 表示要高亮/应用于 x 的 Frequencys 数量 FilterBank 的数量。 每列都是一个 filterbank,因此假设有一个矩阵 A size (..., ) 时,应用的结果将为 。
n_freqs
n_mels
n_freqs
A * melscale_fbanks(A.size(-1), ...)
- 返回类型
张肌
- 教程使用:
melscale_fbanks
linear_fbanks¶
-
torchaudio.functional.
linear_fbanks
(n_freqs:int、f_min:float、f_max:float、n_filter:int、sample_rate: int) → torch 的 intent 中。张量[来源]¶ 创建线性三角形过滤器组。
注意
为了与 librosa 的数值兼容性,并非所有系数 在结果滤波器组中,其幅值为 1。
- 参数
- 返回
大小为 (, ) 的三角滤波器组 (fb 矩阵) 表示要高亮/应用于 x 的 Frequencys 数量 FilterBank 的数量。 每列都是一个 filterbank,因此假设有一个矩阵 A size (..., ) 时,应用的结果将为 。
n_freqs
n_filter
n_freqs
A * linear_fbanks(A.size(-1), ...)
- 返回类型
张肌
create_dct¶
mask_along_axis¶
-
torchaudio.functional.
mask_along_axis
(specgram:Torch。张量,mask_param:int,mask_value:浮点,轴:int,p:浮点 = 1,0) → 割torch。张量[来源]¶ 沿 应用蒙版。
axis
掩码将从 indices 中应用, where 采样自 和 from ,使用 when 和其他方式。 所有示例将具有相同的掩码间隔。
[v_0, v_0 + v)
v
uniform(0, max_v)
v_0
uniform(0, specgrams.size(axis) - v)
max_v = mask_param
p = 1.0
max_v = min(mask_param, floor(specgrams.size(axis) * p))
mask_along_axis_iid¶
-
torchaudio.functional.
mask_along_axis_iid
(specgrams:Torch。张量,mask_param:int,mask_value:浮点,轴:int,p:浮点 = 1,0) → 割torch。张量[来源]¶ 沿 应用蒙版。
axis
掩码将从 indices 中应用, 其中采样自 和 采样自 , 与 when 和 otherwise 一起。
[v_0, v_0 + v)
v
uniform(0, max_v)
v_0
uniform(0, specgrams.size(axis) - v)
max_v = mask_param
p = 1.0
max_v = min(mask_param, floor(specgrams.size(axis) * p))
mu_law_encoding¶
mu_law_decoding¶
apply_codec¶
-
torchaudio.functional.
apply_codec
(波形:手电筒。张量,sample_rate:int,格式:str,channels_first:bool = True,压缩: 可选[float] = 无,编码:可选[str] = 无,bits_per_sample: 可选[int] = None) → torch。张量[来源]¶ 将编解码器作为增强的一种形式。
- 参数
- 返回
结果 Tensor。 如果 ,则它有 (channel, time) else (time, channel)。
channels_first=True
- 返回类型
张肌
- 教程使用:
apply_codec
重新采样¶
-
torchaudio.functional.
resample
(波形:手电筒。张量,orig_freq:int,new_freq:int,lowpass_filter_width:int = 6,滚降: 浮点数 = 0.99,resampling_method:str = 'sinc_interpolation',测试版:可选[浮点数] = 没有) → 割torch。张量[来源]¶ 使用带限插值在新频率处对波形进行重采样。[1]。
注意
transforms.Resample
precalculates 并重用 resampling 内核,因此使用它将导致 如果使用相同的 resampling 参数对多个波形进行重采样,则计算效率更高。- 参数
waveform (Tensor) - 维度 (..., time) 的输入信号
orig_freq (int) – 信号的原始频率
new_freq (int) – 所需的频率
lowpass_filter_width (int, optional) – 控制滤镜的锐度,更多 == 更锐利 但效率较低。(默认:
6
)roll off (float, optional) (滚动频率,浮点数,可选) – 滤波器的滚降频率,以奈奎斯特频率的分数表示。 较低的值会减少抗锯齿,但也会降低一些最高频率。(默认:
0.99
)resampling_method (str, optional) – 要使用的重采样方法。 选项:[、](默认值:
sinc_interpolation
kaiser_window
'sinc_interpolation'
)
- 返回
新维度频率 (..., time) 的波形。
- 返回类型
张肌
- 教程使用:
resample
滤波¶
allpass_biquad¶
-
torchaudio.functional.
allpass_biquad
(波形:手电筒。Tensor, sample_rate: int, central_freq: float, Q: float = 0.707) → torch。张量[来源]¶ 设计双极点全通滤波器。类似于 SoX 实现。
- 参数
波形(割torch。Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
central_freq(float 或 torch.Tensor) – 中心频率(以 Hz 为单位)
Q(浮子或Torch。Tensor,可选)– https://en.wikipedia.org/wiki/Q_factor (默认:
0.707
)
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
band_biquad¶
-
torchaudio.functional.
band_biquad
(波形:手电筒。张量,sample_rate:int,central_freq:浮点,Q:浮点 = 0.707,噪声: 布尔 = False) → 割torch。张量[来源]¶ 设计双极带滤波器。类似于 SoX 实现。
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
central_freq(float 或 torch.Tensor) – 中心频率(以 Hz 为单位)
Q(浮子或Torch。Tensor,可选) – https://en.wikipedia.org/wiki/Q_factor (默认值: )。
0.707
noise (bool, optional) – 如果 ,则对未音调的音频(例如打击乐)使用备用模式。 如果 ,则使用面向音高音频的模式,即语音、歌唱、 或器乐 (默认值: )。
True
False
False
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
bandpass_biquad¶
-
torchaudio.functional.
bandpass_biquad
(波形:手电筒。张量,sample_rate:int,central_freq:浮点数,Q:浮点数 = 0.707,const_skirt_gain: bool = False) → torch 的 Shell。张量[来源]¶ 设计 2 极点带通滤波器。类似于 SoX 实现。
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
central_freq(float 或 torch.Tensor) – 中心频率(以 Hz 为单位)
Q(浮子或Torch。Tensor,可选)– https://en.wikipedia.org/wiki/Q_factor (默认:
0.707
)const_skirt_gain (bool, optional) – 如果 ,则使用恒定的裙边增益 (峰值增益 = Q)。 如果 ,则使用恒定的 0dB 峰值增益。(默认:
True
False
False
)
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
bandreject_biquad¶
-
torchaudio.functional.
bandreject_biquad
(波形:手电筒。Tensor, sample_rate: int, central_freq: float, Q: float = 0.707) → torch。张量[来源]¶ 设计 2 极点带阻滤波器。类似于 SoX 实现。
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
central_freq(float 或 torch.Tensor) – 中心频率(以 Hz 为单位)
Q(浮子或Torch。Tensor,可选)– https://en.wikipedia.org/wiki/Q_factor (默认:
0.707
)
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
bass_biquad¶
-
torchaudio.functional.
bass_biquad
(波形:手电筒。张量,sample_rate:int,增益:浮点数,central_freq:浮点数 = 100,Q: 浮 = 0.707) → 个火把。张量[来源]¶ 设计低音音调控制效果。类似于 SoX 实现。
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
增益(float 或 torch.Tensor) – 提升(或衰减)时所需的增益,以 dB 为单位。
central_freq(float 或 torch.Tensor, optional) – 中心频率 (以 Hz 为单位)。(默认:
100
)Q(浮子或Torch。Tensor,可选) – https://en.wikipedia.org/wiki/Q_factor (默认值: )。
0.707
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
双二阶¶
-
torchaudio.functional.
biquad
(波形:手电筒。张量,b0:浮点数,b1:浮点数,b2:浮点数,a0:浮点数,a1: 浮点型,A2: 浮点型)→手电筒。张量[来源]¶ 执行输入张量的双二阶滤波器。初始条件设置为 0。
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
b0(浮点或Torch。Tensor) – 电流输入的分子系数,x[n]
B1(浮点或Torch。Tensor) – 一步前输入的分子系数 x[n-1]
B2(浮点或Torch。Tensor) – 两个时间步前输入的分子系数 x[n-2]
A0(浮点或Torch。Tensor) – 电流输出 y[n] 的分母系数,通常为 1
A1(浮点或Torch。Tensor) – 电流输出的分母系数 y[n-1]
A2(浮子或Torch。Tensor) – 电流输出的分母系数 y[n-2]
- 返回
维度为 (..., time) 的波形
- 返回类型
张肌
反差¶
-
torchaudio.functional.
contrast
(波形:手电筒。Tensor,enhancement_amount:float = 75.0)→ torch。张量[来源]¶ 应用对比效果。类似于 SoX 实现。
与压缩类似,此效果会修改音频信号以使其听起来更响亮
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
enhancement_amount (float, optional) – 控制增强的数量 enhancement_amount 允许的值范围:0-100 请注意,enhancement_amount = 0 仍会显著增强对比度
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
直流移位¶
-
torchaudio.functional.
dcshift
(波形:手电筒。Tensor, shift: float, limiter_gain: 可选[float] = None) → torch。张量[来源]¶ 对音频应用 DC Shift 键。类似于 SoX 实现。
这对于消除 DC 偏移很有用 (可能是由录音链中的硬件问题引起的)从 Audio
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
Shift (float) – 指示音频的偏移量 允许的 shift 值范围 : -2.0 到 +2.0
limiter_gain (float 为 None,可选) – 仅用于峰值以防止削波 它的值应远小于 1(例如 0.05 或 0.02)
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
deemph_biquad¶
抖动¶
equalizer_biquad¶
-
torchaudio.functional.
equalizer_biquad
(波形:手电筒。张量,sample_rate:int,center_freq:浮点,增益:浮点,Q:浮点 = 0.707) → torch。张量[来源]¶ 设计双二阶峰值均衡器滤波器并执行滤波。类似于 SoX 实现。
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
center_freq (float) – 滤波器的中心频率
增益(float 或 torch.Tensor) – 提升(或衰减)处的所需增益,以 dB 为单位
Q(浮子或Torch。Tensor,可选)– https://en.wikipedia.org/wiki/Q_factor (默认:
0.707
)
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
filtfilt¶
-
torchaudio.functional.
filtfilt
(波形:手电筒。Tensor,a_coeffs:torch。Tensor,b_coeffs:torch。Tensor,clamp: bool = True) → torch 的 Tensor 中。张量[来源]¶ 将 IIR 滤波器向前和向后应用于波形。
灵感来自 https://docs.scipy.org/doc/scipy/reference/generated/scipy.signal.filtfilt.html
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形。必须规范化为 -1 到 1。
a_coeffs (Tensor) – 任一维度的差分方程的分母系数 具有形状 (num_order + 1) 的 1D 或具有形状 (num_filters, num_order + 1) 的 2D。 较低的延迟系数在前,例如 . 必须与 b_coeffs 相同(必要时填充 0)。
[a0, a1, a2, ...]
b_coeffs (Tensor) – 任一维数的分子差分方程 具有形状 (num_order + 1) 的 1D 或具有形状 (num_filters, num_order + 1) 的 2D。 较低的延迟系数在前,例如 . 必须与 a_coeffs 相同(必要时用 0 填充)。
[b0, b1, b2, ...]
clamp (bool, optional) – 如果 ,则将输出信号限制在 [-1, 1] 范围内(默认:
True
True
)
- 返回
维度为 (..., num_filters, time) 的波形,如果 和 是 2D 张量,否则为 (..., time)。
a_coeffs
b_coeffs
- 返回类型
张肌
镶边¶
-
torchaudio.functional.
flanger
(波形:手电筒。张量,sample_rate:int,延迟:float = 0.0,深度:float = 2.0, 再生:浮点 = 0.0,宽度:浮点 = 71.0,速度:浮点 = 0.5,相位: float = 25.0, 调制: str = 'sinusoidal', 插值: str = 'linear') → 手电筒。张量[来源]¶ 将镶边效果应用于音频。类似于 SoX 实现。
- 参数
waveform (Tensor) – 维度为 (..., channel, time) 的音频波形。 最多允许 4 个通道
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
delay (float, optional) – 期望的延迟,以毫秒 (ms) 为单位 允许的值范围为 0 到 30
depth (float, optional) – 所需的延迟深度,以毫秒 (ms) 为单位 允许的值范围为 0 到 10
再生 (float, optional) – 所需的再生 (反馈增益) (以 dB 为单位) 允许的值范围为 -95 到 95
width (float, optional) – 所需的宽度 (延迟增益) (dB 允许的值范围为 0 到 100
speed (float, optional) – 调制速度,单位为 Hz 允许的值范围为 0.1 到 10
phase (float, optional) – 多通道的相移百分比 允许的值范围为 0 到 100
modulation (str, optional) – 使用 “sinusoidal” 或 “triangular” 调制。(默认:
sinusoidal
)interpolation (str, optional) – 使用 “linear” 或 “quadratic” 进行延迟线插值。 (默认:
linear
)
- 返回
维度波形 (..., channel, time)
- 返回类型
张肌
- 参考:
Scott Lehman,Effects Explained,
获得¶
highpass_biquad¶
-
torchaudio.functional.
highpass_biquad
(波形:手电筒。张量,sample_rate:int,cutoff_freq:浮点数,Q:浮点数 = 0.707)→ torch。张量[来源]¶ 设计双二阶高通滤波器并执行滤波。类似于 SoX 实现。
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
cutoff_freq(float 或 torch。Tensor) – 滤波器截止频率
Q(浮子或Torch。Tensor,可选)– https://en.wikipedia.org/wiki/Q_factor (默认:
0.707
)
- 返回
波形维度 (..., time)
- 返回类型
张肌
过滤器¶
-
torchaudio.functional.
lfilter
(波形:手电筒。Tensor,a_coeffs:torch。Tensor,b_coeffs:torch。Tensor,clamp: bool = True,批处理: bool = True) → torch。张量[来源]¶ 通过评估差分方程来执行 IIR 滤波器。
注意
为避免数值问题,最好使用较小的滤波器阶数。 使用双精度还可以最大限度地减少数值精度误差。
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形。必须规范化为 -1 到 1。
a_coeffs (Tensor) – 任一维度的差分方程的分母系数 具有形状 (num_order + 1) 的 1D 或具有形状 (num_filters, num_order + 1) 的 2D。 较低的延迟系数在前,例如 . 必须与 b_coeffs 相同(必要时填充 0)。
[a0, a1, a2, ...]
b_coeffs (Tensor) – 任一维数的分子差分方程 具有形状 (num_order + 1) 的 1D 或具有形状 (num_filters, num_order + 1) 的 2D。 较低的延迟系数在前,例如 . 必须与 a_coeffs 相同(必要时用 0 填充)。
[b0, b1, b2, ...]
clamp (bool, optional) – 如果 ,则将输出信号限制在 [-1, 1] 范围内(默认:
True
True
)batching (bool, optional) – 仅当系数为 2D 时有效。如果 ,则 waveform 应为 最小为 2D,并且从最后一个轴开始的第二个轴的大小应等于 。 输出可以表示为 。(默认:
True
num_filters
output[..., i, :] = lfilter(waveform[..., i, :], a_coeffs[i], b_coeffs[i], clamp=clamp, batching=False)
True
)
- 返回
维度为 (..., num_filters, time) 的波形,如果 和 是 2D 张量,否则为 (..., time)。
a_coeffs
b_coeffs
- 返回类型
张肌
lowpass_biquad¶
-
torchaudio.functional.
lowpass_biquad
(波形:手电筒。张量,sample_rate:int,cutoff_freq:浮点数,Q:浮点数 = 0.707)→ torch。张量[来源]¶ 设计双二阶低通滤波器并执行滤波。类似于 SoX 实现。
- 参数
波形(割torch。Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
cutoff_freq(float 或 torch。Tensor) – 滤波器截止频率
Q(浮子或Torch。Tensor,可选)– https://en.wikipedia.org/wiki/Q_factor (默认:
0.707
)
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
超速¶
相位¶
-
torchaudio.functional.
phaser
(波形:手电筒。张量,sample_rate:int,gain_in:float = 0.4,gain_out:float = 0.74, delay_ms: 浮点数 = 3.0, 衰减: 浮点数 = 0.4, mod_speed: 浮点数 = 0.5, 正弦曲线: bool = True) → torch。张量[来源]¶ 对音频应用阶段划分效果。类似于 SoX 实现。
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
gain_in (float, optional) – 提升(或衰减)时所需的输入增益,单位为 dB 允许的值范围为 0 到 1
gain_out (float, optional) – 提升(或衰减)时所需的输出增益,单位为 dB 允许的值范围为 0 到 1e9
delay_ms (float, optional) – 期望的延迟(以毫秒为单位) 允许的值范围为 0 到 5.0
decay (float, optional) - 相对于增益的期望衰减 允许的值范围为 0 到 0.99
mod_speed (float, optional) – 调制速度,单位为 Hz 允许的值范围为 0.1 到 2
sinusoidal (bool, optional) – 如果 ,则使用正弦调制 (首选于多个乐器) 如果 ,则使用三角调制(为单个乐器提供更清晰的移相效果) (默认:
True
False
True
)
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
- 参考:
Scott Lehman,Effects Explained。
riaa_biquad¶
treble_biquad¶
-
torchaudio.functional.
treble_biquad
(波形:手电筒。张量,sample_rate:int,增益:浮点,central_freq:浮点 = 3000,Q: 浮 = 0.707) → 个火把。张量[来源]¶ 设计高音调控制效果。类似于 SoX 实现。
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
增益(float 或 torch.Tensor) – 提升(或衰减)时所需的增益,以 dB 为单位。
central_freq(float 或 torch.Tensor, optional) – 中心频率 (以 Hz 为单位)。(默认:
3000
)Q(浮子或Torch。Tensor,可选) – https://en.wikipedia.org/wiki/Q_factor (默认值: )。
0.707
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
特征提取¶
瓦德¶
-
torchaudio.functional.
vad
(波形:手电筒。张量,sample_rate:int,trigger_level:浮点数 = 7.0,trigger_time:浮点数 = 0.25,search_time:浮点数 = 1.0,allowed_gap:浮点数 = 0.25,pre_trigger_time:浮点数 = 0.0、boot_time:浮点数 = 0.35、noise_up_time:浮点数 = 0.1、noise_down_time:浮点数 = 0.01, noise_reduction_amount: float = 1.35, measure_freq: float = 20.0, measure_duration: 可选[float] = 无,measure_smooth_time:float = 0.4,hp_filter_freq:float = 50.0、lp_filter_freq:浮点数 = 6000.0、hp_lifter_freq:浮点数 = 150.0、lp_lifter_freq:浮点数 = 2000.0) → torch。张量[来源]¶ 语音活动检测器。类似于 SoX 实现。
尝试从语音录音的结尾修剪静音和安静的背景声音。 该算法目前使用简单的倒谱功率测量来检测语音, 所以可能会被其他事物所愚弄,尤其是音乐。
该效果只能从音频的前面进行修剪, 所以为了从后面修剪,还必须使用反向效果。
- 参数
waveform (Tensor) – 维度 (channels, time) 或 (time) 的音频张量形状 (channels, time) 的张量被视为多通道录音 的 Alpha S 的 Alpha S Package,并且生成的输出将被修剪到最早的 任何频道中的语音活动。
sample_rate (int) – 音频信号的采样率。
trigger_level (float, optional) (浮点数,可选) – 用于触发活动检测的测量级别。 这可能需要根据噪音水平、信号水平、 以及输入音频的其他特性。(默认值:7.0)
trigger_time (float, optional) – 时间常数 (以秒为单位) 用于帮助忽略短促的声音。(默认值:0.25)
search_time (float, optional) – 音频量 (以秒为单位) 搜索更安静/更短的音频突发以包含之前的音频 拖动到检测到的触发点。(默认值:1.0)
allowed_gap (float, optional) – 两者之间允许的间隔 (以秒为单位) 更安静/更短的音频爆发,包括 Prior 拖动到检测到的触发点。(默认值:0.25)
pre_trigger_time (float, optional) – 要保留的音频量 (以秒为单位) 在触发点之前以及找到的任何更安静/更短的突发。(默认值:0.0)
boot_time (float, optional) 算法 (内部) – 估计/减少以检测所需音频的开始。 此选项设置初始噪声估计的时间。(默认值:0.35)
noise_up_time (float, optional) – 当噪音水平增加时。(默认值:0.1)
noise_down_time (float, optional) – 当噪音水平降低时。(默认值:0.01)
noise_reduction_amount (float, optional) – 检测算法 (例如 0, 0.5, ...)。(默认:1.35)
measure_freq (float, optional) – 处理/测量。(默认值:20.0)
measure_duration – (浮点,可选)测量持续时间。 (默认值:测量周期的两倍;即重叠。
measure_smooth_time (float, optional) – 光谱测量。(默认值:0.4)
hp_filter_freq (float, optional) – 在检测器算法的输入处。(默认值:50.0)
lp_filter_freq (float, optional) – 在检测器算法的输入处。(默认值:6000.0)
hp_lifter_freq (float, optional) – 在检测器算法中。(默认值:150.0)
lp_lifter_freq (float, optional) – 在检测器算法中。(默认值:2000.0)
- 返回
维度 (..., time) 的音频张量。
- 返回类型
张肌
光谱图¶
-
torchaudio.functional.
spectrogram
(波形:手电筒。张量、pad:int、window:torch 的 intent 和。张量、n_fft:int、hop_length:int、win_length:int、power:可选[float],归一化:bool,居中:bool = True,pad_mode:str = 'reflect', onesided: bool = True, return_complex: 可选[bool] = None) → torch.张量[来源]¶ 从原始音频信号创建频谱图或一批频谱图。 频谱图可以是仅幅度的,也可以是复数的。
- 参数
waveform (Tensor) - 维度 (..., time) 的音频张量
pad (int) - 信号的两侧填充
window (Tensor) – 应用于/乘以每个帧/窗口的窗口张量
n_fft (int) – FFT 的大小
hop_length (int) – STFT 窗口之间的跃点长度
win_length (int) – 窗口大小
power (float 或 None) – 幅度频谱图的指数, (必须> 0) 例如,1 表示能量,2 表示功率,等等。 如果为 None,则返回复数谱。
normalized (bool) - 是否在 stft 之后按幅度进行归一化
center (bool, optional) – 是否在两侧填充,以便 第 \(t\) 帧以时间 \(t \times \text{hop\_length}\) 为中心。 违约:
waveform
True
pad_mode (string, optional) – 控制 is 时使用的填充方法。违约:
center
True
"reflect"
onesided (bool, optional) – 控制是否将一半的结果返回给 避免冗余。违约:
True
return_complex (bool, optional) – 已弃用且未使用。
- 返回
维度 (..., freq, time),freq 是 和 的编号 傅里叶分箱,时间是窗口跃点数 (n_frame)。
n_fft // 2 + 1
n_fft
- 返回类型
张肌
inverse_spectrogram¶
-
torchaudio.functional.
inverse_spectrogram
(频谱图:TORCH。张量,长度:Optional[int],pad:int,窗口:torch。张量,n_fft:int,hop_length:int,win_length:int,归一化:bool, 中心: bool = True, pad_mode: str = 'reflect', 单面: bool = True) → torch。张量[来源]¶ 从提供的 复值频谱图。
- 参数
spectrogram (Tensor) - 维度为 (..., freq, time) 的音频的复张量。
pad (int) - 信号的两侧填充。只有在提供时才有效。
length
window (Tensor) – 应用于/乘以每个帧/窗口的窗口张量
n_fft (int) – FFT 的大小
hop_length (int) – STFT 窗口之间的跃点长度
win_length (int) – 窗口大小
normalized (bool) - stft 输出是否按幅度进行标准化
center (bool, optional) – 波形是否在两侧填充,因此 第 \(t\) 帧以时间 \(t \times \text{hop\_length}\) 为中心。 违约:
True
pad_mode (string, optional) – 控制 is 时使用的填充方法。提供此参数是为了与 spectrogram 函数,并且未使用。违约:
center
True
"reflect"
onesided (bool, optional) – 控制是否在 onesided 模式下完成频谱图。 违约:
True
- 返回
维度 (..., 时间)。原始信号的最小二乘估计。
- 返回类型
张肌
格里芬林¶
-
torchaudio.functional.
griffinlim
(specgram:Torch。Tensor,窗口:torch。张量、n_fft:int、hop_length:int、win_length:int、幂:float、 n_iter: int, momentum: float, length: Optional[int], rand_init: bool) → 割torch。张量[来源]¶ 使用 Griffin-Lim 变换从线性尺度幅度频谱图计算波形。
从 librosa 移植的实现 [2],一种快速的 Griffin-Lim 算法 [3] 以及来自改进的短时傅里叶变换的信号估计 [4]。
- 参数
specgram (Tensor) - 维度为 (..., freq, frames) 的仅幅度的 STFT 频谱图,其中 freq 为 。
n_fft // 2 + 1
window (Tensor) – 应用于/乘以每个帧/窗口的窗口张量
n_fft (int) – FFT 的大小,创建 bin
n_fft // 2 + 1
hop_length (int) – STFT 窗口之间的跃点长度。( 违约:
win_length // 2
)win_length (int) – 窗口大小。(默认:
n_fft
)power (float) - 幅度频谱图的指数, (必须> 0) 例如,1 表示能量,2 表示功率,等等。
n_iter (int) – 阶段恢复过程的迭代次数。
momentum (float) - 快速 Griffin-Lim 的动量参数。 将此设置为 0 将恢复原始的 Griffin-Lim 方法。 接近 1 的值可以加快收敛速度,但高于 1 的值可能不会收敛。
rand_init (bool) – 如果为 True,则随机初始化阶段,否则为零。
- 返回
waveform of (..., time) ,其中 time 等于参数(如果给定)。
length
- 返回类型
张肌
phase_vocoder¶
-
torchaudio.functional.
phase_vocoder
(complex_specgrams:Torch。张量、速率:浮点数、phase_advance:torch。Tensor) → torch 的 Tensor 中。张量[来源]¶ 给定一个 STFT 张量,在不修改音高系数 的情况下及时加速。
rate
- 参数
complex_specgrams (Tensor) - 具有复杂 dtype 的维度 (..., freq, num_frame) 的张量。
rate (float) - 加速因子
phase_advance (Tensor) – 每个 bin 中的预期相位提前。的维度 (freq, 1)
- 返回
拉伸频谱图。生成的张量与输入具有相同的 dtype 频谱图,但帧数更改为 。
ceil(num_frame / rate)
- 返回类型
张肌
- 例
>>> freq, hop_length = 1025, 512 >>> # (channel, freq, time) >>> complex_specgrams = torch.randn(2, freq, 300, dtype=torch.cfloat) >>> rate = 1.3 # Speed up by 30% >>> phase_advance = torch.linspace( >>> 0, math.pi * hop_length, freq)[..., None] >>> x = phase_vocoder(complex_specgrams, rate, phase_advance) >>> x.shape # with 231 == ceil(300 / 1.3) torch.Size([2, 1025, 231])
pitch_shift¶
-
torchaudio.functional.
pitch_shift
(波形:手电筒。张量,sample_rate:int,n_steps:int,bins_per_octave:int = 12,n_fft: int = 512, win_length: 可选[int] = 无, hop_length: 可选[int] = 无,窗口:可选[torch.Tensor] = None) → torch 的 Torch 中。张量[来源]¶ 逐步移动波形的音高。
n_steps
- 参数
waveform (Tensor) - 形状为 (..., time) 的输入波形。
sample_rate (int) - 波形的采样率。
n_steps (int) - 移动波形的 (小数) 步长。
bins_per_octave (int, optional) – 每个八度音程的步数 (默认值: )。
12
n_fft (int, optional) – FFT 的大小,创建 bin (默认值: )。
n_fft // 2 + 1
512
win_length (int 或 None,可选) – 窗口大小。如果为 None,则使用 then 。(默认值:)。
n_fft
None
hop_length (int 或 None,可选) – STFT 窗口之间的跃点长度。如果为 None,则使用 (Default: )。
win_length // 4
None
window (Tensor 或 None,可选) – 应用于/乘以每个帧/窗口的窗口张量。 如果为 None,则使用 (Default: )。
torch.hann_window(win_length)
None
- 返回
形状为 (..., time) 的音高偏移音频波形。
- 返回类型
张肌
compute_deltas¶
-
torchaudio.functional.
compute_deltas
(specgram:Torch。Tensor,win_length:int = 5,模式:str = 'replicate') → torch。张量[来源]¶ 计算张量的 delta 系数,通常是频谱图:
\[d_t = \frac{\sum_{n=1}^{\text{N}} n (c_{t+n} - c_{t-n})}{2 \sum_{n=1}^{\text{N}} n^2} \]其中 \(d_t\) 是时间 \(t\) 的增量,\(c_t\) 是时间 \(t\) 的频谱图系数,\(N\) 是 。
(win_length-1)//2
- 参数
- 返回
维度增量的张量 (..., freq, time)
- 返回类型
张肌
- 例
>>> specgram = torch.randn(1, 40, 1000) >>> delta = compute_deltas(specgram) >>> delta2 = compute_deltas(delta)
detect_pitch_frequency¶
-
torchaudio.functional.
detect_pitch_frequency
(波形:手电筒。张量,sample_rate:int,frame_time:float = 0.01,win_length:int = 30, freq_low: int = 85, freq_high: int = 3400) → torch.张量[来源]¶ 检测俯仰频率。
它是使用归一化互相关函数和中位数平滑实现的。
- 参数
waveform (Tensor) - 维度为 (..., freq, time) 的音频张量
sample_rate (int) – 波形的采样率 (Hz)
frame_time (float, optional) – 帧的持续时间 (Default: )。
10 ** (-2)
win_length (int, optional) – 中值平滑的窗口长度 (以帧数为单位) (默认值: )。
30
freq_low (int, optional) – 可检测到的最低频率 (Hz) (默认值: )。
85
freq_high (int, optional) – 可检测到的最高频率 (Hz) (默认值: )。
3400
- 返回
维度 (..., frame) 的 freq 张量
- 返回类型
张肌
- 教程使用:
detect_pitch_frequency
sliding_window_cmn¶
-
torchaudio.functional.
sliding_window_cmn
(specgram:Torch。张量,cmn_window:int = 600,min_cmn_window:int = 100,中心:bool = False,norm_vars:bool = False)→ torch。张量[来源]¶ 对每个话语应用滑动窗口倒谱均值(和可选的方差)归一化。
- 参数
specgram (Tensor) - 维度的频谱图的张量 (..., time, freq)
cmn_window ( int , 可选 ) – 用于运行平均 CMN 计算的帧中的窗口 ( int , 默认值 = 600)
min_cmn_window (int,可选) – 解码开始时使用的最小 CMN 窗口 (仅在开始时添加延迟)。 仅在 center == false 时适用,如果 center==true (int, default = 100) 则忽略
center (bool,可选) – 如果为 true,则使用以当前帧为中心的窗口 (在可能的情况下,模数末端效应)。如果为 false,则 window 位于左侧。(布尔值,默认值 = false)
norm_vars (bool, optional) – 如果为 true,则将方差标准化为 1。(布尔值,默认值 = false)
- 返回
张量匹配输入形状 (..., freq, time)
- 返回类型
张肌
compute_kaldi_pitch¶
-
torchaudio.functional.
compute_kaldi_pitch
(波形:手电筒。张量,sample_rate:浮点数,frame_length:浮点数 = 25.0,frame_shift:浮点数 = 10.0,min_f0:浮点数 = 50,max_f0:浮点数 = 400,soft_min_f0:浮点数 = 10.0、penalty_factor:浮点数 = 0.1、lowpass_cutoff:浮点数 = 1000、resample_frequency:浮点数 = 4000,delta_pitch:浮点数 = 0.005,nccf_ballast:浮点数 = 7000,lowpass_filter_width:整数 = 1, upsample_filter_width: int = 5, max_frames_latency: int = 0, frames_per_chunk: int = 0,simulate_first_pass_online:bool = False,recompute_frame:int = 500,snip_edges: bool = True) → torch 的 edges.张量[来源]¶ 根据 调整的音高提取算法中描述的方法提取音高 用于自动语音识别 [5]。
此函数计算来自 Kaldi 的 compute-kaldi-pitch-feats 的等效值。
- 参数
waveform (Tensor) - 形状为 (..., time) 的输入波形。
sample_rate (float) (浮点) ) – 波形的采样率。
frame_length (float, optional) ( (float, optional) (以毫秒为单位)) – 帧长度(以毫秒为单位)。(默认值:25.0)
frame_shift (float, optional) – 以毫秒为单位的移帧。(默认值:10.0)
min_f0 (float, optional) – 要搜索的最小 F0 (Hz) (默认值:50.0)
max_f0 (float, optional) – 要搜索的最大 F0 (Hz) (默认值:400.0)
soft_min_f0 (float (float, optional) – 以软方式应用的最小 f0 不得超过 min-f0 (默认值:10.0)
penalty_factor (float, optional) ( (float, optional) (浮点数,可选) – FO 更改的成本因子。(默认值:0.1)
lowpass_cutoff (float, optional) – LowPass filter 的截止频率 (Hz) (默认值:1000)
resample_frequency (float, optional) – 我们将信号下采样到的频率。必须大于 low-pass-cutoff 的两倍。 (默认值:4000)
delta_pitch (float, optional) – 我们的算法测量的音高的最小相对变化。(默认值:0.005)
nccf_ballast (float, optional) – 增加此系数可降低静默帧的 NCCF (默认值:7000)
lowpass_filter_width (int, optional) - 确定低通滤波器宽度的整数,more提供更清晰的滤波器。 (默认值:1)
upsample_filter_width (int, optional) – 确定上采样 NCCF 时过滤器宽度的整数。(默认值:5)
max_frames_latency (int, optional) – 我们允许音高跟踪引入的最大延迟帧数 特征处理 (仅在 和 时影响输出) (默认值: 0)
frames_per_chunk > 0
simulate_first_pass_online=True
frames_per_chunk (int, optional) – 用于能量标准化的帧数。(默认值:0)
simulate_first_pass_online (bool,可选) – 如果为 true,则该函数将输出与在线解码器相对应的特征 将在解码的第一轮中看到 - 而不是功能的最终版本, 这是默认设置。(默认值:False) 如果 .
frames_per_chunk > 0
recompute_frame (int, optional) – 仅与在线音高提取的兼容性相关。 非关键参数;我们重新计算一些正向指针的帧, 在修正了我们对信号能量的估计之后。 如果 .(默认值:500)
frames_per_chunk > 0
snip_edges (bool,可选) – 如果此项设置为 false,则不会截取结束边缘附近的不完整帧。 因此,帧数是文件大小除以 Frame-Shift。 这使得不同类型的特征提供相同的帧数。(默认值:True)
- 返回
Pitch 功能。形状:(batch,帧 2),其中最后一个维度 对应于 pitch 和 NCCF。
- 返回类型
张肌
- 教程使用:
compute_kaldi_pitch
多通道¶
PSD¶
-
torchaudio.functional.
psd
(specgram:Torch。Tensor,掩码:可选[torch.Tensor] = None,归一化:bool = True,eps:float = 1e-10)→torch。张量[来源]¶ 计算跨通道功率谱密度 (PSD) 矩阵。
- 参数
Specgram (torch.Tensor) - 多通道复值谱。 维度为 (..., channel, freq, time) 的 Tensor。
遮罩(Torch。Tensor 或 None,可选)– 用于归一化的时频掩码。 具有维度 (..., freq, time) 的 Tensor。(默认:
None
)normalize (bool, optional) – 如果 ,则沿时间维度对掩码进行标准化。(默认:
True
True
)eps (float, optional) (eps (float, optional) (英语) - 在掩码标准化中添加到分母的值。(默认:
1e-15
)
- 返回
输入频谱的复值 PSD 矩阵。 具有维度的张量 (..., freq, channel, channel)
- 返回类型
mvdr_weights_souden¶
-
torchaudio.functional.
mvdr_weights_souden
(psd_s:Torch。Tensor,psd_n:torch。张量,reference_channel:Union[int, torch.张量],diagonal_loading:bool = True,diag_eps:float = 1e-07,eps:浮点 = 1e-08) → torch。张量[来源]¶ 计算最小方差无失真响应 (MVDR [6]) 波束成形权重 通过 Souden 等人 [7] 提出的方法。
给定目标语音 \(\bf{\Phi}_{\textbf{SS}}\) 的功率谱密度 (PSD) 矩阵, 噪声 \(\bf{\Phi}_{\textbf{NN}}\) 的 PSD 矩阵,以及一个表示 参考通道 \(\bf{u}\) ,该方法计算 MVDR 波束成形权重 martrix \(\textbf{w}_{\text{MVDR}}\)。公式定义为:
\[\textbf{w}_{\text{MVDR}}(f) = \frac{{{\bf{\Phi}_{\textbf{NN}}^{-1}}(f){\bf{\Phi}_{\textbf{SS}}}}(f)} {\text{Trace}({{{\bf{\Phi}_{\textbf{NN}}^{-1}}(f) \bf{\Phi}_{\textbf{SS}}}(f))}}\bm{u} \]- 参数
psd_s(Torch。Tensor) – 目标语音的复值功率谱密度 (PSD) 矩阵。 维度为 (..., freq, channel, channel) 的 Tensor。
psd_n(Torch。Tensor) - 噪声的复值功率谱密度 (PSD) 矩阵。 维度为 (..., freq, channel, channel) 的 Tensor。
reference_channel (int 或 torch.Tensor) – 指定参考通道。 如果 dtype 为 ,则表示引用通道索引。 如果 dtype 为 ,则其形状为 (..., channel),其中维度 是 one-hot。
int
torch.Tensor
channel
diagonal_loading (bool, optional) – 如果 ,则允许对 应用对角线载荷。 (默认:
True
psd_n
True
)diag_eps (float, optional) - 对角线载荷的系数乘以单位矩阵。 仅当设置为 时,它才有效。(默认:
diagonal_loading
True
1e-7
)eps (float, optional) ((eps (float, optional) (浮点数,可选)) – 要添加到波束成形权重公式中的分母的值。 (默认:
1e-8
)
- 返回
具有维度 (..., freq, channel) 的复值 MVDR 波束成形权重矩阵。
- 返回类型
mvdr_weights_rtf¶
-
torchaudio.functional.
mvdr_weights_rtf
(RTF:手电筒。Tensor,psd_n:torch。Tensor,reference_channel:可选[Union[int, torch.张量]] = 无,diagonal_loading:bool = True,diag_eps:浮点 = 1e-07, 每股收益: float = 1e-08) → 割torch。张量[来源]¶ 计算最小方差无失真响应 (MVDR [6]) 波束成形权重 基于噪声的相对传递函数 (RTF) 和功率谱密度 (PSD) 矩阵。
给定相对传递函数 (RTF) 矩阵或目标语音的转向向量 \(\bm{v}\),则 噪声 \(\bf{\Phi}_{\textbf{NN}}\) 的 PSD 矩阵,以及一个表示 参考通道 \(\bf{u}\) ,该方法计算 MVDR 波束成形权重 martrix \(\textbf{w}_{\text{MVDR}}\)。公式定义为:
\[\textbf{w}_{\text{MVDR}}(f) = \frac{{{\bf{\Phi}_{\textbf{NN}}^{-1}}(f){\bm{v}}(f)}} {{\bm{v}^{\mathsf{H}}}(f){\bf{\Phi}_{\textbf{NN}}^{-1}}(f){\bm{v}}(f)} \]其中 \((.)^{\mathsf{H}}\) 表示厄米特共轭操作。
- 参数
RTF(Torch。Tensor) - 目标语音的复值 RTF 向量。 维度为 (..., freq, channel) 的 Tensor。
psd_n(Torch。Tensor) - 噪声的复值功率谱密度 (PSD) 矩阵。 维度为 (..., freq, channel, channel) 的 Tensor。
reference_channel (int 或 torch.Tensor) – 指定参考通道。 如果 dtype 为 ,则表示引用通道索引。 如果 dtype 为 ,则其形状为 (..., channel),其中维度 是 one-hot。
int
torch.Tensor
channel
diagonal_loading (bool, optional) – 如果 ,则允许对 应用对角线载荷。 (默认:
True
psd_n
True
)diag_eps (float, optional) - 对角线载荷的系数乘以单位矩阵。 仅当设置为 时,它才有效。(默认:
diagonal_loading
True
1e-7
)eps (float, optional) ((eps (float, optional) (浮点数,可选)) – 要添加到波束成形权重公式中的分母的值。 (默认:
1e-8
)
- 返回
具有维度 (..., freq, channel) 的复值 MVDR 波束成形权重矩阵。
- 返回类型
rtf_evd¶
-
torchaudio.functional.
rtf_evd
(psd_s:Torch。Tensor) → torch 的 Tensor 中。张量[来源]¶ 通过特征值分解估计相对传递函数 (RTF) 或转向向量。
- 参数
psd_s (Tensor) – 目标语音的复值功率谱密度 (PSD) 矩阵。 维度的张量 (..., freq, channel, channel)
- 返回
目标语音的估计复值 RTF。 维度的张量 (..., freq, channel)
- 返回类型
张肌
- 教程使用:
rtf_evd
rtf_power¶
-
torchaudio.functional.
rtf_power
(psd_s:Torch。Tensor,psd_n:torch。张量,reference_channel:Union[int, torch.Tensor],n_iter:int = 3,diagonal_loading:bool = True,diag_eps:浮点数 = 1e-07) → torch。张量[来源]¶ 通过幂法估计相对传递函数 (RTF) 或转向矢量。
- 参数
psd_s(Torch。Tensor) – 目标语音的复值功率谱密度 (PSD) 矩阵。 维度为 (..., freq, channel, channel) 的 Tensor。
psd_n(Torch。Tensor) - 噪声的复值功率谱密度 (PSD) 矩阵。 维度为 (..., freq, channel, channel) 的 Tensor。
reference_channel (int 或 torch.Tensor) – 指定参考通道。 如果 dtype 为 ,则表示引用通道索引。 如果 dtype 为 ,则其形状为 (..., channel),其中维度 是 one-hot。
int
torch.Tensor
channel
diagonal_loading (bool, optional) – 如果 ,则允许对 应用对角线载荷。 (默认:
True
psd_n
True
)diag_eps (float, optional) - 对角线载荷的系数乘以单位矩阵。 仅当设置为 时,它才有效。(默认:
diagonal_loading
True
1e-7
)
- 返回
目标语音的估计复值 RTF。 维度 (..., freq, channel) 的张量。
- 返回类型
- 教程使用:
rtf_power
apply_beamforming¶
-
torchaudio.functional.
apply_beamforming
(beamform_weights:Torch。张量,specgram:torch。Tensor) → torch 的 Tensor 中。张量[来源]¶ 将波束成形权重应用于多通道噪声频谱,以获得单通道增强频谱。
\[\hat{\textbf{S}}(f) = \textbf{w}_{\text{bf}}(f)^{\mathsf{H}} \textbf{Y}(f) \]其中\(\textbf{w}_{\text{bf}}(f)\)是第\(f\)个频率区间的波束成形权重,\(\textbf{Y}\)是第\(f\)个频率区间的多通道频谱。
- 参数
beamform_weights (Tensor) – 复值波束成形权重矩阵。 维度的张量 (..., freq, channel)
specgram (Tensor) - 多通道复值噪声频谱。 维度的张量 (..., channel, freq, time)
- 返回
- 单通道复值增强频谱。
维度的张量 (..., freq, time)
- 返回类型
张肌
损失¶
rnnt_loss¶
-
torchaudio.functional.
rnnt_loss
(Logits:Torch。Tensor,目标:torch。Tensor,logit_lengths:torch。Tensor,target_lengths:torch。张量,空白:int = - 1,clamp:float = - 1,减少:str = 'mean')[来源]¶ 使用循环神经网络计算序列转导的 RNN 传感器损失 [8]。
RNN 传感器损耗通过定义输出上的分布来扩展 CTC 损耗 所有长度的序列,并通过联合建模输入-输出和输出-输出 依赖。
- 参数
logits (Tensor) – 维度 (batch, max seq length, max target length + 1, class) 的张量,包含连接符的输出
targets (Tensor) – 维度 (batch, max target length) 的张量,包含填充为零的目标
logit_lengths (Tensor) – 维度 (batch) 的张量,包含编码器中每个序列的长度
target_lengths (Tensor) – 维度 (batch) 的张量,包含每个序列的目标长度
blank (int, optional) – 空白标签 (默认值:
-1
)clamp (float, optional) – 渐变的 clamp (默认:
-1
)reduction (string, optional) – 指定要应用于输出的 reduction : | | .(默认:
'none'
'mean'
'sum'
'mean'
)
- 返回
应用了 reduction 选项的 loss。如果是 ,则大小 (批次), 否则为 scalar。
reduction
'none'
- 返回类型
张肌
度量¶
edit_distance¶
-
torchaudio.functional.
edit_distance
(seq1: collections.abc.Sequence, seq2: collections.abc.Sequence) → int [来源]¶ 计算两个序列之间的字级编辑 (Levenshtein) 距离。
该函数计算允许删除、插入和 替代。结果是一个整数。
对于大多数应用程序,两个 input 序列应为同一类型。如果 给出两个字符串,输出是两个字符串之间的编辑距离 字符串 (字符编辑距离)。如果给出了两个字符串列表,则 output 是句子之间的编辑距离 (word edit distance)。用户 可能希望通过引用序列的长度对输出进行归一化。
- 参数
seq1 (Sequence) – 要比较的第一个序列。
seq2 (Sequence) – 要比较的第二个序列。
- 返回
第一个序列和第二个序列之间的距离。
- 返回类型
- 教程使用:
edit_distance
引用¶
- 1
朱利叶斯·史密斯。数字音频重采样主页“理想带宽插值理论”部分。2020 年 9 月。网址:https://ccrma.stanford.edu/~jos/resample/Theory_Ideal_Bandlimited_Interpolation.html。
- 2
布莱恩·麦克菲、科林·拉菲尔、达文·梁、丹尼尔·埃利斯、马特·麦克维卡、埃里克·巴滕贝格和奥里奥尔·涅托。Librosa:Python 中的音频和音乐信号分析。Kathryn Huff 和 James Bergstra 主编,第 14 届 Python 科学会议论文集,第 18 – 24 页。2015. doi:10.25080/Majora-7b98e3ed-003.
- 3
Nathanaël Perraudin、Peter Balazs 和 Peter L. Søndergaard。一种快速的 griffin-lim 算法。2013 年 IEEE 信号处理在音频和声学中的应用研讨会,第 1-4 卷。2013. doi:10.1109/WASPAA.2013.6701851.
- 4
D. Griffin 和 Jae Lim. 来自改进的短时傅里叶变换的信号估计。在 ICASSP '83 中。IEEE 声学、语音和信号处理国际会议,第 8 卷,804-807。1983. doi:10.1109/ICASSP.1983.1172092.
- 5
Pegah Ghahremani、Bagher BabaAli、Daniel Povey、Korbinian Riedhammer、Jan Trmal 和 Sanjeev Khudanpur。针对自动语音识别进行了优化的音高提取算法。2014 年 IEEE 声学、语音和信号处理国际会议 (ICASSP),卷,2494–2498。2014. doi:10.1109/ICASSP.2014.6854049.
- 6(1,2)
杰克·卡彭。高分辨率频率波数频谱分析。IEEE 会议记录,57(8):1408–1418,1969 年。
- 7
Mehrez Souden、Jacob Benesty 和 Sofiene Affes。在最佳频域多通道线性滤波上,用于降噪。在 IEEE 音频、语音和语言处理汇刊中,第 18 卷,260-276。IEEE,2009 年。
- 8
亚历克斯·格雷夫斯。使用递归神经网络进行序列转导。2012. arXiv:1211.3711.