【问题标题】:I did FFT(Fast Fourier Transform), but i can't understand...(python)我做了 FFT(快速傅里叶变换),但我无法理解......(python)
【发布时间】:2021-11-30 01:56:19
【问题描述】:

我从现场的旋转机器获得了加速度数据。所以,我想知道频率成分。所以,在 python (np.fft.fft) 上做了 FFT。

Q) 当我得到一个比例为 -20~20 m/s^2 的加速度数据时。但是,在fft之后,比例转换为0~1(单位:我不知道....)

我想了解为什么在 FFT 之后转换比例?以及如何设置 FFT 之后的单位?

Fs = 51200                             
T = 1/Fs  
L = len(data1)         
t = np.arange(0,L-1)*T      
Y = np.fft.fft(data1)
P2 = abs(Y/L)
P1 = P2[0:int(L/2+1)]
P1[1:-1] = 2*P1[1:-1]
f = Fs*np.arange(0,L/2+1)/L

FFT前(原始加速度数据)

FFT后(不知道横坐标单位)

【问题讨论】:

  • 任何 fft 的 x 轴单位是频率(每个时间段的波周期)。 y 轴单位是信号中该频率的幅度部分。我建议你阅读一下 [控制理论] (en.wikipedia.org/wiki/Control_theory) 和 Fourier series
  • 感谢您的回答。 Y轴是幅度,对。但是,我想知道幅度的单位。当我阅读一些论文时,表示y轴的单位。

标签: python numpy fft frequency-analysis acceleration


【解决方案1】:

傅立叶变换将您的信号分解为谐波(正弦和余弦的线性组合),如果您需要更多详细信息,请关注this

对于i in range(-(N+1)//2, N//2),FFT 会将频率的复指数系数i * N / Fs 置于索引i 处,因此您的绘图的横坐标是频率。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-14
    • 2011-07-12
    • 2011-04-09
    • 2020-03-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多