Formant-Analysen von Vokalen

Slides:



Advertisements
Ähnliche Präsentationen
Spektrale Analysen in EMU-R: eine Einführung
Advertisements

Die akustische Analyse von Sprachlauten.
Quellen-Filter Theorie der Sprachproduktion
Die phonetischen Merkmale von Vokalen
Die akustische Analyse von Sprachlauten
Spektra von periodischen Signalen. Resonanz.
Spektrogramm Das Spektrogramm stellt 3 Dimensionen dar:
Spektrogramm Das Spektrogramm stellt 3 Dimensionen dar:
Spektrogramm und Spektrum
Einführung in die Phonetik und Phonologie
Spektrogramm und Spektrum Sitzung 8 Welche Konsonanten sind für sich alleine identifizierbar? -Alle Konsonanten ausser [pt] in tippt, weil das [p] nicht.
Sommersemester 2004 Bistra Andreeva FR 4.7 Phonetik Universität des Saarlandes Einf. in die Instrumentalphonetik.
Übung Akustische Phonetik
Versuch zur Vokalnormalisierung
Adaptive Dispersion in der Wahrnehmung von Vokale
Mikro und Makroprosodie
Logische Vektoren in R Jonathan Harrington.
Spektrale Analysen in EMU-R: eine Einführung Jonathan Harrington.
Aufbau, Abfrage, Analyse von Sprachdatenbanken ErstellungAnalyse Abfrage Digitale Zeitsignale akustisch, artikulatorisch Etikettieren Verknüpfung mit Symbolen.
Die Varianzanalyse Jonathan Harrington.
Formant-Analysen von Vokalen
Spektrale Analysen in EMU-R: eine Einführung
Die t-Verteilung Jonathan Harrington.
Hauptseminar: Speaker Characteristics Venice International University
Grundlagen der R Programmiersprache
Formant-Analysen von Vokalen (2) Jonathan Harrington 1, 2 Struktur und Abbildung einer Trackdatei 3, 4. Anwendung von vorhandenen und eigenen Funktionen.
Berechnung von digitalen Signalen
Berechnung von digitalen Signalen Jonathan Harrington.
Logistische Regression und die Analyse von Proportionen
Spektrale Analysen in EMU-R: eine Einführung
Vokale und die Quantaltheorie
1. Satzbetonung, Töne, und Grundfrequenz
Abfragen aus einer Sprachdatenbank Jonathan Harrington.
Die Prosodie Jonathan Harrington Felicitas Kleber.
Frequenz- und Zeitauflösung
Die extrinsische und intrinsische Vokalnormalisierung Welche Beweise gibt es, dass Vokal-Normalisierung extrinsisch ist? Hauptseminar: Phonetische Modelle.
Die Anatomie der Grundfrequenz Jonathan Harrington.
Parametrisierung von Spektra
Die Normalisierung und Wahrnehmung eines fremden Akzents Datum: Referentin: Carolin Funk Dozent: Prof. Dr. Jonathan Harrington Hauptseminar:
Abfragen aus einer Sprachdatenbank Jonathan Harrington.
Grundlagen der Analyse von Sprachdatenbanken
Artikulationsstelle, F2-Locus, Locusgleichungen Jonathan Harrington.
Methode 1. Konvertierung der Hz-Werte in log-Hz Die Sprecherunterschiede werden reduziert Die Wahrnehmung der Frequenzunterschiede ist eher logarithmisch.
Etikettierungsebenen Jonathan Harrington. Das Ziel Etikettierungen verschiedener Ebenen aufzubauen, und miteinander zu verlinken.
Kovarianz, Korrelation, (lineare) Regression
Jonathan Harrington Downstep ist eine phonetische Regel, in der H-Töne in derselben Phrase wegen eines davor kommenden H-Tons gesenkt werden. Die Wirkung.
Jonathan Harrington Downstep ist eine phonetische Regel, in der H-Töne in derselben Phrase wegen eines davor kommenden H-Tons gesenkt werden. Die Wirkung.
Aufbau, Abfrage, Analyse von Sprachdatenbanken ErstellungAnalyse Abfrage Digitale Zeitsignale akustisch, artikulatorisch Etikettieren Verknüpfung mit Symbolen.
Was ist die artikulatorische Grundlage von Locus-Gleichungen? Hauptseminar: Modelle der Sprachproduktion & - perzeption Dozent: Prof. Dr. Jonathan Harrington.
Kovarianz, Korrelation, (lineare) Regression Jonathan Harrington BITTE NOCH EINMAL dframes.zip (Webseite 4.1) herunterladen und in pfad auspacken.
Die Nulldurchgangsrate
Was sind die unterschiedlichen Vorhersagen der Quantal Theory (QT) und der Theory of Adaptive Dispersion (TAD) bezüglich der Verteilung der Vokale in den.
Lautwandel, Perzeption, Kompensierung für Koartikulation.
Logistische Regression und die Analyse von Proportionen Jonathan Harrington.
HLSyn – eine Kurzeinführung
Die t-Verteilung und die Prüfstatistik
Varianzanalyse mit Messwiederholungen
Die t-Verteilung und die Prüfstatistik
Einige Kriterien für die Durchführung einer Varianzanalyse Jonathan Harrington.
Powerpoints bestellen-Mail an Speisen brauchen sieben Sekunden für den Weg vom Mund in den Magen.
Die Darstellung der Daten
Einsatzmöglichkeiten der Sprachsignalverarbeitung
Analyse von Spektra 2 Jonathan Harrington 1. Wiederholung: Spektra in R einlesen 2. Einige grundlegende Funktionen 3. Zugriff auf Spektralwerte 4. Spektrale-Abbildungen.
Zusammenfassung von Hombert et al (1979) und Löfqvist (1989)
Plosive [a d a] [a t a] [a th a]
Jonathan Harrington: "Die phonetischen Grundlagen des Lautwandels“
ST X : What You Hear Is What You See Acoustics Research Institute of the Austrian Academy of Sciences: A-1010 Wien; Liebiggasse 5. Tel /
Die Varianzanalyse Jonathan Harrington library(ggplot2) library(ez)
Spektrogramm und Spektrum Sitzung 8 Spektrogramm und Spektrum Date ip003rb.wav laden Formantwerte (F1 und F2) vom /a:/ im ‘mal’ ablesen Formantwerte.
Die Varianzanalyse Jonathan Harrington library(ggplot2) library(dplyr)
 Präsentation transkript:

Formant-Analysen von Vokalen Ellipse-Darstellung ungespannter Vokale Ausreißer identifizieren Sprecher-Normalisierung Im Original von Jonathan Harrington

Die Sprechdaten Ungespante ["E" "a" "I" "O"] deutsche Vokale Sprecher 67 (M) und Sprecherin 68 (W) Standard-Norddeutsche Sprecher, Vokale aus 100 gelesenen Sätzen. vowlax Segmentliste vowlax.fdat Trackdatei F1-F4 vowlax.l Etikettierungen "E" "a" "I" "O" … vowlax.spkr Sprecher-Etikettierungen "67" "68" data(package="emu") bzw. über R-Menü „Pakete“ das emu Paket laden (emu-Paket muss vorher installiert worden sein)

Formanten (F1-F4) zum zeitlichen Mittelpunkt vowlax Segmentliste vowlax.fdat Trackdatei F1-F4 vowlax.l Etikettierungen "E" "a" "I" "O" … vowlax.spkr Sprecher-Etikettierungen "67" "68" Formanten (F1-F4) zum zeitlichen Mittelpunkt mid = dcut(vowlax.fdat, .5, prop=T) Nur F1 und F2 mid = mid[,1:2]

1. Ellipse-Abbildungen vowlax Segmentliste vowlax.fdat Trackdatei F1-F4 vowlax.l Etikettierungen "E" "a" "I" "O" vowlax.spkr Sprecher-Etikettierungen "67" "68" mid = dcut(vowlax.fdat, .5, prop=T) mid = mid[,1:2] Logischer Vektor um Sprecher “67” zu identifizieren vowlax.spkr==“67” temp = Ellipsen Sprecher 67 Sprecherin 68 eplot(mid[temp,], vowlax.l[temp], dopoints=T, form=T) Mit !temp statt temp E a I O 300 400 500 O O F1 O O O O O O 600 O 700 800 2000 1500 1000 F2

Mehrere Abbildungen gleichzeitig Eine Reihe, zwei Spalten par(mfrow=c(1,2)) eplot(mid[temp,], vowlax.l[temp], dopoints=T, form=T) eplot(mid[!temp,], vowlax.l[!temp], dopoints=T, form=T) wieder auf eine Reihe x eine Spalte setzen par(mfrow=c(1,1))

Info zu eplot() args(eplot) help(eplot) Eine Ellipse für alle Daten Eine Ellipse pro Kategorie eplot(mid[temp,]) eplot(mid[temp,], vowlax.l[temp]) Mit Mittelpunkt-Beschriftung eplot(mid[temp,], vowlax.l[temp], centroid=T) dopoints: eine entsprechende Etikettierung pro Wert eplot(mid[temp,], vowlax.l[temp], dopoints=T) Achsen drehen (nur für F1 x F2 Abbildungen) eplot(mid[temp,], vowlax.l[temp], centroid=T, form=T)

Keine Ellipsen eplot(mid[temp,], vowlax.l[temp], centroid=T, doellipse=F) Farben variieren Keine Farben eplot(mid[temp,], vowlax.l[temp], centroid=T, col=F) eplot(mid[temp,1:2], vowlax.l[temp], centroid=T, col=c("pink", "red", "blue", "green")) Linientyp eplot(mid[temp,], vowlax.l[temp], centroid=T, linetype=T)

Achsen Beschriftung eplot(mid[temp,], vowlax.l[temp], form=T, main="Vokale", xlab="F2 (Hz)", ylab="F1 (Hz)") Bereiche setzen x = c(500, 3000) y= c(0, 1000) eplot(mid[temp,], vowlax.l[temp],form=T, xlim=x, ylim=y)

2. Ausreißer identifizieren Vokale des weiblichen Sprechers Ein Spektrogramm dieses Vokales in Emulabel darstellen. Formanten zum zeitlichen Mittelpunkt mid = dcut(vowlax.fdat, .5, prop=T) vowlax Segmentliste vowlax.fdat Trackdatei F1-F4 vowlax.l Etikettierungen "E" "a" "I" "O" vowlax.spkr Sprecher-Etikettierungen "67" "68" Logischer Vektor: F1 ist mehr als 800 und der Vokal ist “E” und die Sprecherin ist “68” temp = mid[,1] > 800 & vowlax.l == "E" & vowlax.spkr == "68" Äußerung identifizieren: vowlax[temp,] oder utt(vowlax[temp,])

3. Sprechernormalisierung Frauen haben kürzere Vokaltrakte, daher eine Erhöhung der Formanten für den selben phonetischen Vokal. Bei Kindern ist der Vokaltrakt noch kürzer und daher sind die Formanten noch höher. Dies führt zu Vokalüberlappung. zB die Formanten eines männlichen [a] haben oft denselben Wert wie diejenigen eines [o] Vokals von einem Kind. Peterson & Barney (1952): Vokale von 76 Männern, Frauen, und Kindern.

Sprecher 67 Sprecher 68

Vokalnormalisierung wie wird derselbe phonetische Vokal trotz dieser sprecherbedingten Unterschiede wahrgenommen? Wie können sprecherbedingte Merkmale im akustischen Signal entfernt werden?

Normalisierung Die Trennung phonetischer und sprecherbedingter Eigenschaften intrinsisch extrinsisch Die Normalisierung eines Vokals braucht eine Stichprobe von Vokalen desselben Sprechers (zB [i a u]) Wird auf einzelne Vokale durchgeführt, ohne die anderen Vokale desselben Sprechers zu berücksichtigen

Die extrinsische Normalisierung Joos (1948) Die Vokale eines Sprechers werden im Bezug zu seinem/ihrem [i u a] wahrgenommen. Daher ist die Entfernung von z.B. [E] zu den Eckvokalen ca. dieselbe für verschiedene Sprecher. Synthese von ‘Please say the word bVt’, in dem F1 variiert wurde. Je höher F1, umso mehr verschiebt sich die Wahrnehmung von ‘bet’ nach ‘bit’ Ladefoged & Broadbent (1957) Dagegen Verbrugge et al (1976, JASA). Hörer identifizieren Vokale genau, auch wenn sie den Sprecher zum ersten Mal hören.

Extrinsische Normalisierung (Lobanov, 1971) (Standard-Normalisierung) Normalisierte Formantwerte = (Formantwerte – m)/s m und s sind der Durchschnitt und die Standardabweichung eines Formanten (zB F1) eines Sprechers F1 F1-m (F1-m)/s 220 -214 -1.11 550 116 0.60 300 -134 -0.69 700 266 1.38 400 -34 -0.18 m= 434 Hz, s = 193.1 Hz

f = c(220, 550, 300, 700, 400) R Befehl für (f-m)/s (f - mean(f))/sd(f) In eine Funktion packen – damit sie auf beliebiege Formant-Daten angewendet werden kann…

Funktionen schreiben Mit default probe <- function(x, y) { } x + y # summiert x und y Mit default probe() probe <- function(x, y) { # summiert x und y x + y } probe(20, 30)

Funktionen schreiben Das Ergebnis einer Funktion ist die letzte Zeile ohne = probe <- function(x=20, y=30) { } etwas = x + y # summiert x und y probe() etwas

f = c(220, 550, 300, 700, 400) R Befehl für (f-m)/s (f - mean(f))/sd(f) In eine Funktion snorm(f) packen – damit sie auf beliebiege Formant-Daten angewendet werden kann… snorm <- function(f) { (f - mean(f))/sd(f) }

Durchschnitt beider Spalten gleichzeitig: apply(mat, 2, mean) [1] 20 7 mat = cbind(c(10, 20, 30), c(5, 8, 8)) mat [,1] [,2] [1,] 10 5 [2,] 20 8 [3,] 30 8 Durchschnitt Spalte 1: mean(mat[,1]) Durchschnitt Spalte 2: mean(mat[,2]) Durchschnitt beider Spalten gleichzeitig: apply(mat, 2, mean) [1] 20 7 Bedeutung von apply(mat, 1, mean) apply(mat, 2, sd) Durchschnitt der Reihenwerte Standardabweichung der Spaltenwerte Wie kann ich unsere snorm() Funktion auf beide Spalten von mat anwenden? apply(mat, 2,snorm)

Normalisierte F1 und F2 Werte zum zeitlichen Mittelpunkt, Sprecher 67? vowlax Segmentliste vowlax.fdat Trackdatei F1-F4 vowlax.l Etikettierungen "E" "a" "I" "O" vowlax.spkr Sprecher-Etikettierungen "67" "68" mid = dcut(vowlax.fdat, .5, prop=T) mid = mid[,1:2] Normalisierte F1 und F2 Werte zum zeitlichen Mittelpunkt, Sprecher 67? Logischer Vektor temp = vowlax.spkr=="67" Normalisierte Werte, Sprecher 67 fnorm.67 = apply(mid[temp,1:2], 2, snorm) Normalisierte Werte Sprecher 68 fnorm.68 = apply(mid[!temp,1:2], 2, snorm)

Sprecher 67 (links), Sprecherin 68 (rechts) normalisierte F1 x F2 xlim = ylim = c(-2.5, 2.5) par(mfrow=c(1,2)) eplot(fnorm.67, vowlax.l[temp], dopoints=T, form=T, xlim=xlim, ylim=ylim) eplot(fnorm.68, vowlax.l[!temp], dopoints=T, form=T, xlim=xlim, ylim=ylim)

Extrinsische Normalisierung (Nearey, 1978) Normalisierte Formantwerte = Log. (Formantwerte) – k k ist ein sprechabhängiger Konstant

Normalisierung laut Nearey f1 = c(220, 550, 300, 700, 400) f2 = c(2000, 1800, 1900, 1500, 600) 1. Sprecherbedingter konstant, k, berechnen (a) F1 und F2 in Logarithmen umwandeln logf1 = log(f1) logf2 = log(f2) (b) Durchschnitt von log. F1 berechnen mlogf1 = mean(logf1) (c) Durchschnitt von Log F2 berechnen mlogf2 = mean(logf2) k ist der Durchschnitt von (a) und (b) k = mean(c(mlogf1, mlogf2))

f1 = c(220, 550, 300, 700, 400) f2 = c(2000, 1800, 1900, 1500, 600) Normalisierter F1 ist der Logarithmus davon minus k normf1 = log(f1) - k Ebenfalls für den normalisierten F2 normf2 = log(f2) - k

Funktion schreiben, nearey(x) um Nearey-Normalisierung auf eine 2-spaltige Matrix, x, (von F1 und F2 Werten) anzuwenden. > form = cbind(f1, f2) > form f1 f2 [1,] 220 2000 [2,] 550 1800 [3,] 300 1900 [4,] 700 1500 [5,] 400 600 > nearey(form) f1 f2 [1,] -1.23698013 0.9702948 [2,] -0.32068940 0.8649343 [3,] -0.92682520 0.9190015 [4,] -0.07952734 0.6826127 [5,] -0.63914313 -0.2336780

nearey <- function(x) # x ist eine Matrix { # (a) Log-Werte der Matrix logmat = log(x) # Vektor der Durchschnitte deren Spaltenwerte logmat.m = apply(logmat, 2, mean) # (b) Sprecherabhängiger konstant k = mean(logmat.m) # (a) – (b) logmat – k }

Abbildung F1 x F2, Nearey-normalisierte Daten, Sprecher 67 (links), Sprecherin 68 (rechts) temp = vowlax.spkr=="67" n67= nearey(vowlax.fdat.5[temp,1:2]) n68 = nearey(vowlax.fdat.5[!temp,1:2]) eplot(n67, vowlax.l[temp], dopoints=T, form=T, xlim=xlim, ylim=ylim, main="67") eplot(n68, vowlax.l[!temp], dopoints=T, form=T, xlim=xlim, ylim=ylim, main="68") ylim = c(-1.5, 0.2) xlim = c(-.2, 1.2)