Defining measurement point heuristics
A heuristic file is a yaml file with the following format:
yaml
heuristic: default
default:
prop_time: "1/3"
specifics: []- The
heuristicfield gives a name to the heuristic. - The
defaultfield defines the default measurement point method. - The
specificsfield defines specific rules for specific vowels.
The yaml file above, in fact, is the same as the default heuristic if none are provided.
Specifics
Let’s say you wanted to define a special measurement point rule for just the vowel /ay/, to measure it at maximum F1. This can be done by adding the following rule to the specifics list.
yaml
heuristic: ay-rule
default:
prop_time: "1/3"
specifics:
- label: ay
prop_time: f1.max.prop_timeWhat this says is:
- Apply a special measurement point rule when the interval label is “ay”.
- Get the measurement point where the vowel’s
prop_timeis equal to theprop_timeof F1 maximum.
Valid point expressions
The expression f1.max.prop_time defines the proportional time of F1 maximum. An entire point expression will always be of the format:
formant.anchor.time
Valid values for each slot are:
- Formants
f1,f2,f3, …- Any formant that’s available
- Anchor
minmax
- Time
timerel_timeprop_time
Additionally, any other mathematical expression can be included. For example, the original FAVE suite had a measurement point heuristic for /aw/ and /ow/ defined in the docs as:
# - OW, AW measured halfway between beginning of segment and F1 maximum ##
The heuristic file for this would look like:
yaml
heuristic: aw-ow-rule
default:
prop_time: "1/3"
specifics:
- label: aw
prop_time: f1.max.prop_time / 2
- label: ow
prop_time: f1.max.prop_time / 2