Plotting My Vowel Space

 

This webpage reports the results of an exercise in speech data collection and the annotation of speech data, as part of SLP801 in the Master of Science in Speech and Language Processing course. I have recorded a small collection of isolated words and digit strings spoken by myself, a 26 year old male speaker of Australian English.

 

This collected data was then analysed using the Emu Speech Database System to view the acoustic signal and spectrogram for each speech sample, and then annotate the data with the start and end times of each phoneme. Targets were also marked for each vowel.

 

Details of the speech data collected is available, including the words recorded, the F1 and F2 values measured, and the Emu templates used for the data analysis. The raw speech data is also available for download.

 

Results

 

Below is a vowel space plot for me (AL), a 26 year old, male speaker of Australian English. The plot is made using established graphical procedures to illustrate the vowel space. This includes having a set of axes representing F1 and F2, placing the origin of the axes at the top right corner, and making the frequency scale of the vertical (F1) axis at least double that of the horizontal (F2) axis, to ensure that the vowel space map has an aspect ratio similar to that of traditional auditory/articulatory maps of vowel space.

 

As mentioned earlier, the raw formant values, measured by hand from the spectrograms displayed in Emulabel, are available here.

 

The vowel space plot shows four individual vowel samples within each ellipse, representing each of the four recordings made of each vowel articulation (note that /u:/ appears to occur only three times, but this is due to two samples having identical F1 and F2).

Figure 1: Vowel Space for AL, a 26yo male Australian English speaker. Individual points are shown for each vowel sample.

 

 

                                           

Comparing My Vowel Space with other Australian English Speakers

Figure 3: Comparing vowel space of AL (left) with that of two male Australian English speakers of isolated monophthongs from the 'isolated' Emu database

 

The two vowel plots above contrast my vowel space with that of two male Australian English speakers of isolated monophthongs from the ‘isolated’ database available with Emu.

 

There is generally consistency in the measurements taken from 4 repetitions of my speech for each monophthong. This can be seen clearly by the small size of the ellipses in figure 3.  Interestingly though, what variation there is, seems to be almost exclusively height variation, while the back/forwardness of my vowels remains very similar. This seems to also be generally true for the larger number of samples in the ‘isolated’ database.

 

To make it very simple to see differences between my vowel space, and that of the speakers in the ‘isolated’ database, I have also constructed an overlayed vowel space plot of the same data in figure 3, shown below in figure 4. Note that I have also used vowel centroids (marking the centre of each ellipse), rather than plotting each sample point, to produce a less cluttered and more easily interpretable graph.

 

Figure 4 : Overlayed vowel space plot of AL and two male Australian English speakers from 'isolated' Emu database

 

The most obvious difference is that my /A/ is significantly lower in height. My /E/ is also slightly further forward. Otherwise, there is a very close correlation between my vowel space plot, and that of the other speakers. With the exception of /A/ and possibly /E/, as noted, my other vowel ellipses (which are mostly smaller due to the smaller number of samples, and therefore lower amount of variation), are contained within the ellipses of the larger sample set. This indicates very close correlation between the vowel spaces.

                                                                                                                                   

R Commands used

 

To input the formant values measured by hand from the spectograms:

 

# F1 Values

> formant1 = c(740,660,720,740,700,740,700,700,460,440,460,480,440,480,500,480,

+ 300,280,260,280,340,320,340,260,540,560,600,580,340,320,340,340,660,700,720,680,

+ 300,320,320,320)

 

# F2 Values

> formant2 = c(1780,1680,1740,1640,1240,1240,1300,1240,2100,2060,2000,1940,

+ 1520,1500,1500,1460,2180,2200,2200,2180,2200,2120,2100,2080,980,760,1040,1040,

+ 840,880,880,920,1300,1300,1280,1300,1480,1580,1480,1480)

 

# Bind F1 and F2 values together as columns of the same matrix

> formants = cbind(formant1,formant2);

 

# Label array, aligned with formant values

> labels=c("A","A","A","A","a:","a:","a:","a:","E","E","E","E","@:","@:","@:","@:",

+ "i:","i:","i:","i:","I","I","I","I","O","O","O","O","U","U","U","U",

+ "V","V","V","V","u:","u:","u:","u:")

 

 

To plot the formant values in a conventional vowel space plot:

 

# To plot my vowel space with points for each vowel sample

> eplot(formants, labels, formant=T, dopoints=T, xlim=c(-2300,-500), ylim=c(-800,-200))

 

# To plot my vowel space using centroids (a single vowel character at the centre of

# each ellipse)

> eplot(formants, labels, formant=T, centroid=T, xlim=c(-2300,-500), ylim=c(-800,-200))

 

 

To compare my vowel space plot, with that of speakers in the ‘isolated’ emu database:

 

# Retrieve data from ‘isolated’ Emu database. All speakers in the database are

# male, so no filtering of results needs to be done (beyond specifying monophthong

# vowels)

> refMale.seg  <- emu.query("isolated", "*", "Phonetic=A|a:|E|@:|i:|I|O|U|V|u:" )

Read 265 items

Read 261 records

 

# Retrieve the formant values (F1,F2,F3,F4), taking formants measured at

# vowel midpoint 

> refMale.fm <- emu.track(refMale.seg, "fm", 0.5);

 

# Plot the 2 vowel spaces side-by-side, with the same axis scale

> par(mfrow=c(1,2))    # get two plots side by side

> eplot(formants, labels, formant=T, dopoints=T, xlim=c(-2500,-300), ylim=c(-1000,-100))

> eplot(refMale.fm[,1:2], label(refMale.seg), formant=T, dopoints=T, xlim=c(-2500,-300), ylim=c(-1000,-100))

 

# Plot the 2 vowel spaces, overlayed on each other

> par(mfrow=c(1,1))   

> eplot(refMale.fm[,1:2], label(refMale.seg), formant=T, centroid=T, xlim=c(-2500,-300), ylim=c(-1000,-100), new=F)

> eplot(formants, labels, formant=T, centroid=T, xlim=c(-2500,-300), ylim=c(-1000,-100), new=T)