应用A加权


11

我想计算给定信号的响度,并且遇到了这个问题。我对它的A加权方面有些困惑。我无法发布图片,但我认为该网站具有我需要的公式。(Wa = 10log ...)

我不了解的是如何在程序中实际使用它。如果f代表频率,那么大概我可以对值进行硬编码,因为它们将保持不变。在这种情况下,如何将其应用于Wa样本值以及使用哪些值?我是否要计算功率谱以获取WINDOW_SIZE/2值并将频带中的每个值与相关的预先计算的Wa值相乘,或者这样做是错误的方式?先感谢您。

Answers:


8

是的,您可以对值进行硬编码,对信号进行FFT,然后将其与硬编码的值相乘,然后从Parseval定理示例获得频域中的幅度

您还可以实现一个数字滤波器,并在时域中进行。这是Matlab代码以及我对Python的翻译

请注意,双线性变换使数字滤波器的滚降速度比模拟滤波器的滚降速度更快,从而在常见采样率下引入了测量误差。一个简单的解决方法是先对数据进行上采样,以使差异最小化。此处的其他过滤器设计方法:http : //dsp.stackexchange.com/q/36077/29


谢谢,我了解得更好。在您的Parseval示例中,rms_flat是RMS方程(SQRT(x1^2 + x2^2...xn^2/n))吗?信号的rms_flat与FFT的rms_flat有什么区别?
TryNCode 2011年

@ExpAns:是的,rms_flat()只是sqrt(mean(absolute(a)**2))。该/n是在外面。信号的RMS值和FFT的比例因子相同。
endlith 2011年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.