How to takeout the frequancy from FFT
3 次查看(过去 30 天)
显示 更早的评论
HI, i making the DTMF sound decoder
Actually the task is to find the DTMF coded numbers from DTMF sound, so i have somthing like phone number and i only need to separate this for each number or somthing like. And after somehow detect the frequancy. As i understand i need to use the FFT for this, but i don`t understand how to take the frequancy out from this graph
[sig1,Fs]=audioread('9234567.wav');
NFFT=512
WINDOW=NFFT;
NOVERLAP=NFFT/2
t1=0:Fs/NFFT:Fs/2-Fs/NFFT;
subplot(2,1,1)
X1 = fft(sig1,NFFT);
stem(t1,1/(NFFT/2)*abs(X1(1:NFFT/2)),'.');
subplot(2,1,2)
spectrogram (sig1,'yaxis', hamming(WINDOW), NOVERLAP, NFFT, Fs);
Please help me with this
5 个评论
回答(1 个)
Kavya Vuriti
2019-11-11
编辑:Kavya Vuriti
2019-11-11
Hi,
To find frequencies corresponding to peaks after computing fft, you can try using findpeaks function. Specify second input argument to the findpeaks function as frequency to obtain the frequencies corresponding to peaks. Also, you can include other name-value pairs to get the desired result. You can refer this for more detailed information.
For more information on findpeaks function, refer: https://www.mathworks.com/help/signal/ref/findpeaks.html
Hope this helps.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 DTMF 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!