小编Meh*_*hdi的帖子

检测 FFT 图中的峰值

我想知道如何在 Python 中检测 FFT 图中的新峰值。假设我有这个简单的情节:在此处输入图片说明 我想自动测量噪声信号中的“相似度”或峰值位置,我尝试使用余弦相似度,但我的真实信号太嘈杂了,即使我向信号添加一个新峰值,我继续获得 0.9 的余弦值,因为它只是一个峰值。这是我的真实信号的一个例子,我也有我的信号可以在测量范围内移动的问题,所以我无法获得稳定的频率阵列,它们可以在 +/- 100 Hz 的窗口内: 在此处输入图片说明 这是用于第一个 Plot 的代码:

import numpy as np
from pylab import *
import scipy.fftpack

# Number of samplepoints
N = 600
# sample spacing
T = 1.0 / 800.0
x = np.linspace(0.0, N*T, N)
y1 = np.sin(50.0 * 2.0*np.pi*x) + 0.5*np.sin(80.0 * 2.0*np.pi*x)+ 0.7*np.sin(30.0 * 2.0*np.pi*x)+ 0.5*np.sin(10.0 * 2.0*np.pi*x)
y2 = np.sin(50.0 * 2.0*np.pi*x) + 0.5*np.sin(80.0 * 2.0*np.pi*x)+ 0.2*np.sin(60.0 * 2.0*np.pi*x)+ 0.4*np.sin(40.0 * 2.0*np.pi*x)
yf1 = scipy.fftpack.fft(y1)
yf2 = …
Run Code Online (Sandbox Code Playgroud)

python plot fft similarity python-2.7

5
推荐指数
1
解决办法
7640
查看次数

标签 统计

fft ×1

plot ×1

python ×1

python-2.7 ×1

similarity ×1