Re: Robust method of fundamental frequency estimation. (Arturo Camacho )


Subject: Re: Robust method of fundamental frequency estimation.
From:    Arturo Camacho  <acamacho@xxxxxxxx>
Date:    Wed, 7 Feb 2007 10:17:56 -0500
List-Archive:<http://lists.mcgill.ca/scripts/wa.exe?LIST=AUDITORY>

Members of the list, Several people have asked me for a copy of the poster John and I presented at the ASA meeting. You can find it at http://scitation.aip.org/confst/ASA/data/6/3pSP28.pdf. If you have any problems with the fonts you can also try http://www.cise.ufl.edu/~acamacho/publications/ASA2006PitchPoster.pdf. Arturo > Members of the list, > > > I forgot to mention a seemingly insignificant detail in the description > of CEP and AC, but it causes a huge problem to these algorithms. I should > have described CEP as "Same as SHR but ADDS AN EXTRA PULSE AT ZERO and > instead of pulses uses a cosine to transition from 1 to -1". This extra > lobe at DC is what makes CEP and AC to have always a maximum at infinity > (i.e. at a pitch period of zero). > > > Arturo > > >> Dear members, >> >> >> >> I just want to add two points to what Yi-Wen said: >> >> >> >>> Dear list, >>> >>> >>> >>> >>> Just want to draw your attention to a good summary on various >>> auto-correlation based pitch determination methods, >>> >>> Arturo Camacho and John G. Harris, "A biological inspired pitch >>> determination algorithm", Fourth Joint Meeting of ASA and ASJ, >>> Honolulu, >>> Nov. 2006. >>> >>> >>> >>> Contact arturo@xxxxxxxx if interested. >>> >>> >>> >>> Best regards, >>> Yi-Wen >>> >>> >> >> First, in that presentation we not only did a summary of pitch >> estimation algorithms (PEA) but also pointed out some pitfalls they >> have. Second, we did it not only for autocorrelation based algorithms, >> but also for many other algorithms we considered to be “classical”. >> Although some of these >> algorithms were initially proposed using a time-domain approach, all of >> them can also be formulated using the spectrum of the signal, and that >> is the approach we took. We expressed those algorithms as the selection >> of the pitch candidate (PC) that maximizes an integral transform of a >> function of the spectrum. >> >> Below is a summary of our findings. For each algorithm, we give a >> short DESCRIPTION, then the FUNCTION applied to the spectrum, the KERNEL >> of the integral transform, and finally a PROBLEM of the algorithm. >> Sometimes you >> will find that the algorithm also have problems presented before or >> problems that will be presented later. Notice that the order we present >> the algorithms is such that each subsequent algorithm does not exhibit >> the problem mentioned for the previous algorithm. A final note about >> semantics, to make the writing short in the descriptions, when we say >> spectrum we mean MAGNITUDE of the spectrum. >> >> HARMONIC PRODUCT SPECTRUM (HPS) >> ------------------------------- >> DESCRIPTION: multiplies the spectrum at multiples of the PC, or >> equivalently, adds the log of the spectrum at multiples of the PC. >> FUNCTION: log >> KERNEL: periodic sum of pulses >> PROBLEM: If any harmonic of the pitch is missing, the log is minus >> infinity and therefore the integral is also minus infinity. >> >> SUB-HARMONIC SUMMATION (SHS) >> ---------------------------- >> DESCRIPTION: adds the spectrum at multiples of the PC. >> FUNCTION: none >> KERNEL: periodic sum of pulses >> PROBLEM: Any subharmonic of the pitch has the same score as the pitch. >> >> >> >> SUB-HARMONIC SUMMATION with decay >> --------------------------------- >> DESCRIPTION: Same as SHS but uses a decaying factor to give less weight >> to high order harmonics. FUNCTION: none KERNEL: decaying periodic sum of >> pulses PROBLEM: The same score it produces for a pulse train at the >> pitch is produced for white noise at each PC. Therefore, not only it >> produces an infinite number of pitch estimates for white noise but also >> they have the same strength as a pulse train. >> >> SUBHARMONIC-TO-HARMONIC RATIO (SHR) >> ----------------------------------- >> DESCRIPTION: Same as SHS but subtracts the spectrum at the middle points >> between harmonics. Uses log spectrum, though. FUNCTION: log KERNEL: >> periodic sum of positive pulses plus half-period-shifted sum of negative >> pulses PROBLEM: Like all the algorithms presented above, it does not >> work for inharmonic signals >> >> HARMONIC SIEVE (HS) >> ------------------- >> DESCRIPTION: Same as SHS but instead of pulses it uses rectangles >> FUNCTION: none >> KERNEL: sum of rectangles >> PROBLEM: weighting applied to spectrum is too sharp. A slight shift in a >> component may take it in or out of the rectangle, possibly changing >> the estimated pitch drastically. >> >> CEPSTRUM (CEP) >> ------------- >> DESCRIPTION: Same as SHR but instead of pulses uses a cosine to >> transition from 1 to -1. FUNCTION: log KERNEL: cosine >> PROBLEM: uses the log (see HPS) >> >> >> >> UNBIASED AUTOCORRELATION (UAC) >> ------------------------------ >> DESCRIPTION: Same as CEP but squares the spectrum >> FUNCTION: square >> KERNEL: cosine >> PROBLEM: If signal is periodic then UAC is also periodic. Therefore >> there are infinite number of maximums. Taking the first local maximum >> (excluding >> maximum at zero) does not work either. Try a signal with first four >> harmonics with magnitudes 1,6,1,1. At high enough levels its pitch >> corresponds to the fundamental frequency, however, the first maximum in >> the UAC corresponds to the second harmonic. >> >> BIASED AUTOCORRELATION (BAC) >> ------------------------------ >> DESCRIPTION: Same as UAC but a bias is applied such that a weight of one >> is applied to a period of 0 and decays linearly to zero for a period >> T, >> where T is the size of the window. FUNCTION: square KERNEL: cosine >> PROBLEM: Like UAC, the squaring of the spectrum gives to much emphasis >> to salient harmonics. This feature combined with the bias may cause >> problems. For example, for the 1,6,1,1 signal, the bias can make the >> score of the second harmonic higher than the score of the fundamental >> (take for example >> the fundamental period as T/4) >> >> END OF LIST >> =========In ISCAS 2007 we will be presenting an algorithm that avoids >> the problems presented here. It will be published in the proceedings of >> the conference. From the order we presented here the algorithms it is >> easy to infer what the algorithm looks like. >> >> Arturo >> >> >> >> -- >> __________________________________________________ >> >> >> >> Arturo Camacho >> PhD Student >> Computer and Information Science and Engineering >> University of Florida >> >> >> >> E-mail: acamacho@xxxxxxxx >> Web page: www.cise.ufl.edu/~acamacho >> __________________________________________________ >> >> >> >> > > > -- > __________________________________________________ > > > Arturo Camacho > PhD Student > Computer and Information Science and Engineering > University of Florida > > > E-mail: acamacho@xxxxxxxx > Web page: www.cise.ufl.edu/~acamacho > __________________________________________________ > > > -- __________________________________________________ Arturo Camacho PhD Student Computer and Information Science and Engineering University of Florida E-mail: acamacho@xxxxxxxx Web page: www.cise.ufl.edu/~acamacho __________________________________________________


This message came from the mail archive
http://www.auditory.org/postings/2007/
maintained by:
DAn Ellis <dpwe@ee.columbia.edu>
Electrical Engineering Dept., Columbia University