波の歌の信号があり、振幅に問題があります。
%graph 1 time domain
song2 = song(1:size(song));
fs = 44100;
dt = 1/fs;
t = 0:dt:(length(song2)*dt)-dt;
figure();
plot(t,abs(song2)); xlabel('Seconds'); ylabel('Amplitude');
次に、信号を FFT に入れます。これは、検出されたピーク (たとえば、164Hz) の振幅を取得するためです。
%graph 2 fft
L = length(song2);
NFFT = 2^nextpow2(L);
f = fs/2*linspace(0,1,NFFT/2+1);
X = fft(song2,NFFT)/L;
X = 2*abs(X(1:NFFT/2+1));
figure();
plot(f,X);
信号の振幅 (たとえば、0.0103) を取得すると問題が発生しますが、(時間領域) の振幅と比較すると同じではありません。
私の質問は、時間領域 (グラフ 1) で周波数の振幅を検出する方法です (たとえば、振幅 0.0103 の 164)。
編集:
うーん、むしろこう聞いてみます。グラフリンクとして周波数領域スペクトルの周波数を検出します たとえば、最初の信号(82hz)(振幅:0.0075)を取りましょう。リンクのグラフとして、時間領域でこの最初の信号の位置を検出できるかどうか私の質問
どんな助けでも役に立ちます。