如何根据fft结果确定噪声频率?

时间:2018-04-04 06:26:34

标签: matlab signal-processing fft frequency dft

(1)我收到了一个符合以下标准的信号:

样品:349 频率:3490 频率步骤:1 最后追踪:4007

信号的数据包含349个样本,并且收集的总数据是4007.采样频率被描述为通过谷歌搜索描述的每秒样本数。但对于此信号,采样频率是否等于3490Hz或(349x3490)Hz?

(2)我被要求对此信号进行傅里叶变换以确定来自该信号的噪声。这是我从下面的代码中获得的结果:

clf;
a = importdata('A-scan.txt');
A = fft(a);
Aa = abs(A);
plot(Aa);
xlabel('frequency (bins)');
ylabel('magnitude');

以下是信号fft的结果:

fft of signal

我在youtube上观看过视频中的视频。但是,我不完全确定它是什么。为了让我设计一个滤波器,我们如何确定信号的频率以及最终的信号噪声?

1 个答案:

答案 0 :(得分:2)

这不是一个编程问题,这是一个数学问题。

也就是说,要将垃圾箱转换为频率:

f(k)〜=(k /(n / 2))*(fsam / 2)对于0 <= k <1。 N / 2

它只是近似的,因为精确的公式取决于n是偶数还是奇数。

在你的情况下,n = 349,fsam = 3490Hz。第一个峰似乎在k = 10左右,所以你的主要成分大约是频率〜= 200 Hz。

建议:如果您需要Google查找&#34;采样频率&#34;你在错误的班级。您需要学习系统和信号而不是Matlab。