在java中查找2D矩阵中的峰值

时间:2012-06-20 08:27:58

标签: java fft analysis scientific-computing spectrum

我花了几天时间寻找解决问题的方法。我在一个大矩阵(大约1400 x 2700)中找到峰值时遇到问题。我需要找到主峰和两个较小的峰 - 换句话说,就是图中三个最大的峰。矩阵是一个拟合图像的两个FFT的结果。主要问题是找到主峰的大小。我设法找到了中心峰值的最大值,但由于噪音,我找不到它的终点。有没有人有任何想法或代码样本我可以看看找到解决方案?

更新:还有一个相关的问题:如何有效地确定矩阵中的阈值(噪音)?如果我能成功地做到这一点,找到高峰将是一件容易的事吗?

1 个答案:

答案 0 :(得分:0)

如果您不关心峰的大小,可以先尝试在矩阵上应用移动平均滤波器。这样,一方面可以降低峰值高度,另一方面可以消除噪音。

应用移动平均滤镜后,您可能会查看矩阵的渐变,以便识别峰值。