 3rd January 2011, 14:14 #1
 Join Date
 Jan 2011
 Location
 Kharagpur/Hyderabad
 Posts
 25
 Helped
 4 / 4
 Points
 715
 Level
 5
Find the fundamental frequency of speech signal : matlab
I am new to speech processing. Actually what I did was reecorded a signal in matlab and then performed fft to get its spectrum. Could anyone please tell me how to find the fundamental frequency of the spectrum.
fs = 8000.
signal is 3 seconds in length.
done a 1024 point fft.
i would be thankful for a good explanation
 3rd January 2011, 14:14
 7th January 2011, 05:30 #2
Re: Find the fundamental frequency of speech signal : matlab
The fundamental frequency is the lowest tone in the signal. Fundamental frequency  Wikipedia, the free encyclopedia
Your procedure should look something like this:
1. Find all maxima of the fft
2. Discard maxima below a certain level
3. Choose the maxima with the lowest frequency
This is your fundamental frequency. Since you have noise, you will need to discard any maxima that lie below a certain level (2). You will have to determine this level on your own by looking at the plot of the fft. Look at the plot and determine the highest level of the noise, then discard maxima accordingly. The fundamental frequency will not be below 300Hz as this would be impossible for a human to make with vocal chords.
Alternatively you could also try simply choosing the frequency at which the fft is maximum. Usually this is the fundamental tone, but it depends on the equipment used to record the speech. For instance, most computer microphones are bandpass filtered, which could cause the maximum point to not be the fundamental tone. If you are using an accurate recording microphone, chances are the highest point is the fundamental frequency (if you are speaking normally and not making excessive sibilant or plosive sounds).
2 members found this post helpful.
 7th January 2011, 05:30
 9th January 2011, 17:22 #3
 Join Date
 Jan 2011
 Location
 Kharagpur/Hyderabad
 Posts
 25
 Helped
 4 / 4
 Points
 715
 Level
 5
Re: Find the fundamental frequency of speech signal : matlab
Thank you very much for that reply. that really worked. I got harmonics of the fundamental frequency from which I could get the fundamental frequency.
Could you please help me with identifying the speaker's gender from the spectrum of him speaking a vowel sound?
i read somewhere that the fundamental frequencies of male and female voice differ.
1 members found this post helpful.
LinkBacks (?)

audio  Discrete fourier transform  finding the fundamental quickly?  Signal Processing Beta  Stack Exchange
Refback This thread4th July 2012, 19:13 
audio  Discrete fourier transform  finding the fundamental quickly?  Signal Processing  Stack Exchange
Refback This thread21st December 2011, 15:20