取前 3 帧的平均值/平均值是啥意思

Posted

技术标签:

【中文标题】取前 3 帧的平均值/平均值是啥意思【英文标题】:What does it mean to say to take mean/average of those first 3 frame取前 3 帧的平均值/平均值是什么意思 【发布时间】:2017-07-20 13:06:41 【问题描述】:

我是语音处理方面的新手。我实际上正在尝试降噪。我正在使用光谱减法。在这样做时,在许多理论论文和算法中,它说要获取音频信号的帧。

为此,我为每帧花费了 20 毫秒,即对于采样频率 = 16KHz,我将以 16KHz * 20ms = 320 个样本/帧结束每一帧。

windowed_frame = frame .* hamming(length(frame));
complex_spec = fft(windowed_frame,512);        
mag_spec = abs(complex_spec);
phase_spec = angle(complex_spec);

现在,对于噪声信号,它说:

假设最初的几个非语音帧是噪音。

因此,为了获得噪声估计,它声明

取前 3 帧左右的平均值。

如果每帧有 320 个样本长度。 现在,取前 3 帧的平均值是什么意思?

这 3 帧总共包含 3*320 = 960 个样本。它是否表明,取这 960 个值的平均值?但这只会产生单一的价值。但我需要一个窗口大小,即 20ms 大小的 noise_estimate。

有什么帮助吗?

【问题讨论】:

有一个姊妹网站专注于数字信号处理...如果这里没有帮助,您可能想提出您的问题...请参阅dsp.stackexchange.com/… 我怀疑这意味着从前三帧中的每一帧中获取频谱的元素平均值,从而为您提供前 960 个样本的平均功率谱。 【参考方案1】:

您需要估计噪声频谱,因此您在前 3 帧中平均 mag_spec,而不是信号值。

 noise_spec = (mag_spec_1 + mag_spec_2 + mag_spec_3) / 3

结果将是 512 个数字,基本上是每个频段的噪声能量。

【讨论】:

以上是关于取前 3 帧的平均值/平均值是啥意思的主要内容,如果未能解决你的问题,请参考以下文章

均值是啥意思?

逐行计算数据帧的平均值

取 A(B) 的平均值是啥意思?

matlab中的mean函数是啥意思啊,如何使用

函数Average是啥意思

数据中的均值为零是啥意思?