ml_tang1989 发表于 2015-7-31 10:37

fft变换中0Hz成分

请教:

          fft变换中经常提到0Hz频率成分,即所谓的直流分量,而在声学仿真软件Virtual.lab中进行声学响应计算时,只能从1Hz开始计算,并不存在0Hz频率,不知道这倒底表示的是什么物理意义?是不是任何信号fft变换都存在直流分量?如果是,那么直流分量的值如何确定?

TestGuru 发表于 2015-8-2 16:42

直流分量就是采集数据的时均值

ml_tang1989 发表于 2015-8-8 18:46

TestGuru 发表于 2015-8-2 16:42
直流分量就是采集数据的时均值

什么是时均值,是指所有采集到的信号时域下的均值吗?

那我在用ifft变换时,对应于0频成分,应该如何设定这个值大小?

hhbhhy 发表于 2015-8-9 17:22

其实楼主可以去熟悉一下傅里叶分解的概念。matlab只不过是将连续的函数离散化了罢了。0Hz分量,其实就是求和后,再平均。如果信号只是几个正弦波的叠加的话,是没有直流分量的。

TestGuru 发表于 2015-8-10 22:39

ml_tang1989 发表于 2015-8-8 18:46
什么是时均值,是指所有采集到的信号时域下的均值吗?

那我在用ifft变换时,对应于0频成分,应该如何 ...

就是时域的数据算术平均。如果做iFFF不需要直流分量,置零即可。

小海豚zc 发表于 2015-8-28 21:10

TestGuru 发表于 2015-8-10 22:39
就是时域的数据算术平均。如果做iFFF不需要直流分量,置零即可。

@ml_tang1989
借楼主的宝地,问下大神

直流分量可以看做是傅里叶级数中的 常数项,即a0项(频率为0的项)。通常信号预处理也都是需要去均值的操作。

我的疑问是,零频项(或叫直流项)产生的原因有哪些?做哪些问题是必须去均值的?是不是如果只看频率成分就不需要去均值了?

TestGuru 发表于 2015-8-30 18:14

直接从离散傅里叶变换的公式就能看出,零频项就是时均值。如果不考虑计算的精度的话,或者说计算精度是无限准确的话,去不去均值都不要紧。但是,实际情况是,精度计算是有限的(8位,16位,32位,64位,整数或浮点数等等都是涉及计算精度的例子),而FFT中有很多乘法,因此要把有限的精度用在最感兴趣的频率成分上,就要去均值,否则当直流成分比较大时,交流成分的计算精度就会受到影响。类似于示波器的直流档和交流档的功能。

TestGuru 发表于 2015-8-30 18:18

直流成分通常是由传感器,前置放大器,模数转换过程中产生的。
页: [1]
查看完整版本: fft变换中0Hz成分