Normalize vowel formant frequencies {phonR} | R Documentation |
Normalize formant frequency values using a variety of algorithms
Description
Functions for transforming vowel formant frequency data measured in
Hertz, using one of several normalization schemes commonly used in
phonetic and sociolinguistic research. normVowels
is a
convenience function wrapping to the individual norm[Method]
functions.
Usage
normBark(f)
normErb(f)
normLog(f)
normMel(f)
normLobanov(f, group=NULL)
normLogmean(f, group=NULL, exp=FALSE, ...)
normNearey1(f, group=NULL, exp=FALSE, ...)
normNearey2(f, group=NULL, exp=FALSE, ...)
normSharedLogmean(f, group=NULL, exp=FALSE, ...)
normWattFabricius(f, vowel, group=NULL)
normVowels(method, f0=NULL, f1=NULL, f2=NULL, f3=NULL,
vowel=NULL, group=NULL, ...)
Arguments
f |
Vector or matrix of formant frequencies. For |
vowel |
Vector or factor of vowel symbols, with
|
group |
Vector or factor indicating rows of |
exp |
Logical; should the result of the logmeans calculation be passed
through the |
f0 , f1 , f2 , f3 |
Separate vectors of formant or
fundamental frequency values used in the convenience method
|
method |
Specification of the normalization method to use when calling
the convenience method |
... |
Additional arguments passed to |
Details
normLogmean
is a synonym for normNearey1
, which is also sometimes
confusingly called “single logmean”. normSharedLogmean
is a
synonym for normNearey2
. The argument exp=TRUE
for these functions
will yield values that are consistent with the norm.nearey
implementation, which takes the result of Nearey's original formulae and uses
it as the exponent of the base of the natural logarithm (presumably so that
the function always yields positive values).
Note that normErb
returns the “ERB-rate scale” value (i.e.,
the number of ERBs below the given frequency), not the ERB of the auditory
filter centered at the given frequency.
The implementation of the Watt-Fabricius method varies slightly from the
formula in Watt & Fabricius (2002), since normWattFabricius
simply
calculates which vowel has the highest mean F1 value and designates it as
the low corner of the triangle, rather than asking the user to expressly
specify the “TRAP” or “START” vowel. Similarly,
normWattFabricius
simply calculates which vowel has the highest mean
F2 value and uses that to calculate the upper left corner, rather than
expressly looking for the mean of the “point-vowel” /i/. The upper
right corner is, as in the original method, derived from the other two. If
the vowels with the highest mean F1 and highest mean F2 are not the same
pair of vowels for all members of group
, normWattFabricius
returns an error.
Value
Most of the functions return a vector or matrix of the same dimensions as
were passed in. The exceptions are normVowels
, which returns an
n-by-m matrix of n data points by m formants with formants in ascending
order with fundamental frequency first (if present), and
normWattFabricius
(or normVowels
with
method=wattfabricius
), which only and always returns F1 and F2,
regardless of whether f0 and F3 were supplied.
Author(s)
McCloy, Daniel drmccloy@uw.edu
References
Glasberg, B. R., & Moore, B. C. J. 1990 “Derivation of auditory filter shapes from notched-noise data.” Hearing Research, 47(1-2), 103-138. http://dx.doi.org/10.1016/0378-5955(90)90170-T
Lobanov, B. M. 1971 “Classification of Russian vowels spoken by different speakers.” The Journal of the Acoustical Society of America, 49(2), 606-608. http://dx.doi.org/10.1121/1.1912396
McCloy, D. R. 2012 “Normalizing and plotting vowels with the phonR package.” Technical Reports of the UW Linguistic Phonetics Laboratory. http://dan.mccloy.info/pubs/McCloy2012_phonR.pdf
Nearey, T. M. 1978 “Phonetic feature systems for vowels” (Doctoral dissertation, University of Alberta). Reprinted by the Indiana University Linguistics Club. http://www.ualberta.ca/~tnearey/Nearey1978_compressed.pdf
Stevens, S. S., & Volkmann, J. 1940 “The relation of pitch to frequency: A revised scale.” The American Journal of Psychology, 53(3), pp. 329-353.
Traunmuller, H. 1990 “Analytical expressions for the tonotopic sensory scale.” The Journal of the Acoustical Society of America, 88(1), 97-100. http://dx.doi.org/10.1121/1.399849
Watt, D., & Fabricius, A. H. 2002 “Evaluation of a technique for improving the mapping of multiple speakers' vowel spaces in the F1 ~ F2 plane.” Leeds Working Papers in Linguistics and Phonetics, 9, 159-173.
Examples
data(indoVowels)
bark <- with(indo, normBark(cbind(f1, f2)))
erbn <- with(indo, normErb(cbind(f1, f2)))
mel <- with(indo, normMel(cbind(f1, f2)))
lobanov <- with(indo, normLobanov(cbind(f1, f2), group=subj))
lognormed <- with(indo, normLog(cbind(f1, f2)))
# using the convenience wrapper:
bark <- with(indo, normVowels('bark', f1=f1, f2=f2))
wattfab <- with(indo, normVowels('wattfabricius', f1=f1, f2=f2,
vowel=vowel, group=subj))