【发布时间】:2011-12-16 00:30:58
【问题描述】:
假设您有一些音调加噪声的数据。
t=0:0.01:10;
y=sin(t) + rand(1,length(t));
我正在尝试降低 fft 中的音调峰值,以便只使用噪声数据进行 ifft。我的算法将是一个循环遍历 abs(fft) 的每个索引以查找峰值的 for 循环。如果有一个峰值,我会用嘈杂的数据点代替那个峰值。
问题是,在 fft 完成后,为了可视化数据,通常我会使用 plot(abs(fft))。但是,要进行 ifft,还需要虚构数据。因此,我不确定我将如何准确地“降低峰值”或摆脱它,以便我可以使用 ifft 函数。我想我必须使用虚数。
有什么建议吗? :X
感谢您的帮助。
【问题讨论】:
-
@Pearsonartphoto - 这是一个聪明的答案!但是,我想稍后扩展这个问题,以便可以消除随机音调,所以我不知道截止频率是多少。
-
这里不适合使用高通滤波器,因为噪声(理论上)是宽带的 - 他会降低噪声和信号。