У меня есть сигнал волновой песни и проблема с амплитудами.
%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');
Затем я помещаю сигнал в БПФ, потому что хочу получить амплитуду обнаруживаемых пиков (например, 164 Гц).
%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) я обнаруживаю амплитуду частоты (например, 164 с амплитудой 0,0103)?
РЕДАКТИРОВАТЬ:
Хм, я лучше спрошу так. Я обнаруживаю частоту в спектре частотной области как график link. Например, возьмем первую signal (82hz) (амплитуда: 0,0075) И мой вопрос, возможно ли определить положение этого первого сигнала во временной области как график в ссылка
Любая помощь будет полезна.