オーディオ信号の FFT のピークの振幅と周波数を見つけようとしています。FFT を実行した後、次のコードを使用しました。
peak_points = [];
fmin = 60;
fmax = 1000;
region_of_interest = fmax>f & f>fmin;
froi = f(region_of_interest);
[p_max,loc] = max(seg_fft2(region_of_interest))
% index into froi to find the frequency of the peaks
p_max;
f_p_max = froi(loc);
[points, locatn] = findpeaks(seg_fft2(region_of_interest));
aboveMax = points > 0.4*p_max;
if any(aboveMax)
peak_points = [peak_points ; points(aboveMax) locatn(aboveMax)];
end
正しい振幅を取得できますがlocatn(aboveMax)
、周波数がわかりません.....周波数値を取得するにはどうすればよいですか? locatn(aboveMax)
which isの代わりに次の行を試しましたfroi(locatn(aboveMax))
が、エラーが発生しました
??? ==> horzcat の使用エラー
CAT 引数の次元が一貫していません。