多点图MATLAB中的最大点检测

时间:2014-02-20 08:26:42

标签: matlab

我在绘图上有2个FFT谱。我想得到整个情节的前5个最高点。我为每个光谱分别获得最大分数。如何将这些光谱合并为一个并获得总体最大5个点?

2 个答案:

答案 0 :(得分:1)

您有两个单独的最大矩阵:允许Max1Max2 现在将它们组合成第三个矩阵

Max3 = [Matx1 Max2]

按降序对Max3进行排序

Max3 = sort(Max3,'descend');

提取前5个元素

peaks = Max3(1:5)

答案 1 :(得分:0)

将光谱放在一个矢量中并按降序排序。

spec1 = fft(x1); % a spectrum (column vector)
spec2 = fft(x2); % another spectrum (column vector)

dummy = abs([spec1; spec2]); % concatenate absolute values
sorted = sort(dummy, 'descending');

five_greatest = sorted(1:5);