LPC-Resynthese Stimulierzeugung in praat Synthese durch Anwendung akustischer Theorie Quelle (als...
Preview:
Citation preview
- Folie 1
- Folie 2
- LPC-Resynthese Stimulierzeugung in praat
- Folie 3
- Synthese durch Anwendung akustischer Theorie Quelle (als
Spektrum) Filter-bertragungsfunktion (hier: Schwa-typisch)
Endgltiges Signal durch Multiplikation des Quellspektrums mit der
bertragungsfunktion des Filters (Abbildung aus Pompino-Marschall,
2003) bzw. der Faltung der Zeitsignale
- Folie 4
- Bislang haben wir uns mit relativ komplizierten Aufbauten, die
die Sprechvorgnge so gut wie mglich zu simulieren versuchen,
beschftigt -Quellsignal, gefiltert durch eine Reihenschaltung
digitaler Filter (Vokale) -Quellsignal(e), gefiltert durch
Parallelschaltung digitaler Filter (z.B. fr Frikative) Dies ist in
der Klatt-Formantsynthese so gelst, und abgeleitet davon in HLSyn
Prinzipiell kann man aber ganz trivial z.B. in praat ein beliebiges
Quellsignal erzeugen und mit einem beliebigen Filter
modifizieren
- Folie 5
- Beispiel aus dem praat-Tutorial Quelle: pitchTier = Create
PitchTier... source 0 0.5 Add point... 0.0 150 Add point... 0.5 100
pulses = To PointProcess Remove points between... 0 0.02 Remove
points between... 0.24 0.31 Remove points between... 0.48 0.5
source = To Sound (phonation)... 44100 0.6 0.05 0.7 0.03 3.0
4.0
- Folie 6
- Create FormantGrid... filter 0 0.5 10 550 1100 60 50 #erzeugt
10 Formanten, beginnend mit 550 Hz, jeder weitere Formant ist 1100
Hz #vom nchstniederen entfernt #(1650, 2750, 3850, 4950, 6050,
7150, 8250, 9350, und 10450 Hz) #Bandbreite beginnt fr F1 bei 50,
mit Steigerung um jeweils 60 Hz (=Amplitude sinkt) #nderungen, um
eine Art /ba/ zu erzeugen: Remove formant points between... 1 0 0.5
Add formant point... 1 0.00 100 Add formant point... 1 0.05 700
Remove formant points between... 2 0 0.5 Add formant point... 2
0.00 500 Add formant point... 2 0.05 1100 Wenn wir nun Quelle und
Filter gleichzeitig markieren, erhalten wir die Option Filter.
Wegen der Eigenschaften der Quelle erhalten wir eine Art /baa/
- Folie 7
- Filterfunktion als Schlssel zur Resynthese Die in praat
implementierte Filterfunktion erlaubt also die Filterung jedes
beliebigen Quellsignals durch jeden beliebigen Filter Um ein echtes
Sprachsignal zu resynthetisieren, mssen wir also lediglich -Quell-
und Filteranteil trennen -das entstandene Quellsignal mit den dann
bekannten Filtereigenschaften modifizieren (filtern) -sowohl Quell-
als auch Filteranteil knnten gezielt manipuliert werden -hierfr ist
jedoch eine verlssliche Analyse sowohl der Quelle als auch des
Filteranteils notwendig (z.B. Formantenanalyse)
- Folie 8
- Linear Predictive Coding Jedes digitale Signal ist gesamplet
Das Analysefenster hat eine gewisse Breite und enthlt n samples LPC
versucht, den n-ten Abtastwert vorherzusagen aus den Abtastwerten 1
bis n-1 x n weicht ab von x n (dem tatschlichen x-Wert an Stelle n)
Verschiedene Algorithmen (die wir nicht kennen mssen) minimieren
diesen Unterschied, in dem sie die Koeffizienten (a k ) anpassen;
Nur diese Koeffizienten werden gespeichert (Datenreduktion) Wichtig
fr uns: diese (opaken) Koeffizienten beschreiben den Filter und man
kann aus diesen die Mittenfrequenz und die Bandbreite der Formanten
berechnen
- Folie 9
- Linear Predictive Coding In anderen Worten (nach Boersma): das
LPC approximiert ein gegebenes Frequenzspektrum durch eine
spektrale bertragungsfunktion mit einer mglichst minimalen Anzahl
von spektralen Gipfeln (deren Frequenz und Bandbreite man aus den
opaken Koeffizienten ableiten kann) Filtern Invers Filtern: mit
umgedrehter bertragungsfunktion filtern Ergibt eine Approximation
des Quellsignals (da die Filterfunktion ja nur geschtzt ist)
- Folie 10
- Die Quelle-Filter-Trennung funktioniert also umso besser, je
realistischer die eingeschtzte Filterfunktion ist Diese ist umso
realistischer, je mehr bereinstimmung zwischen der tatschlichen
Anzahl der Formanten und der erwarteten Anzahl herrscht. Parameter
der LPC-Analyse: -Prdiktionsordnung (siehe unten) -Breite des
Analysefensters (default 25 ms) -Verschiebung der Analysefenster
(default 5 ms) -Premphasefrequenz (normalerweise 50 Hz; oberhalb
dieser Frequenz wird das Spektrum um +6dB/Oktave angehoben, um es
flach zu machen, da Spektren natrlicher Sprache gewhnlich mit
-6dB/Oktave abnehmende Amplituden mit zunehmender Frequenz
aufweisen) Zur Wahl der richtigen Prdiktionsordnung: Merke: Anzahl
der eingeschtzen Formanten Prdiktionsordnung/2 (number of poles)
Warum? Prdiktionsordnung Abtastrate[Hz]/1000 Also z.B.
Abtastrate=48 kHz Prdiktionsordnung mindestens 48 (bis zu 50)
- Folie 11
- Filter bei unterschiedlichen Prdiktionsordnungen Da uns aber
maximal die ersten 5 (und nicht 24) Formanten interessieren, und
die Wahrscheinlichkeit, dass die Algorithmen Fehler machen, steigt,
je hher die Anzahl der zu suchenden Formanten ist, reicht es aus,
nur den Bereich bis 5000 Hz (bei Mnnern) bzw. 5500 Hz (bei Frauen)
zu analysieren Warum? In diesen Frequenzbereichen ist mit fnf
Formanten zu rechnen, wie man ber die quidistanten Formanten des
neutralen Rohrs ableiten kann, die auch als eine Art Durchschnitt
der geschlechts-typischen Formantwerte angesehen werden knnen:
Formanten Mnner [Hz]: 500, 1500, 2500, 3500, 4500, 5500,...
Formanten Frauen [Hz]: 550, 1650, 2750, 3850, 4950, 6050,...
Resampling: wegen Nyquist-Shannon-Abtasttheorem (f abtast 2 f max )
bei Mnnern 10000 Hz, bei Frauen 11000 Hz
- Folie 12
- To LPC (burg...) (Prediction order 10, 11, oder 12)
- Folie 13
- Filter (inverse), um Quasi-Quelle zu extrahieren
- Folie 14
- Glottale Quelle /pUp/ Rausch-Quelle
- Folie 15
- Quelle und LPC-Filter markieren, Filter Original Synthese
- Folie 16
- LPC-Objekt markieren To Formant Formant-Objekt markieren Down
to FormantGrid Modifikationen Sind, da die LPC-Koeffizienten opak
sind, nur ber einen Umweg mglich:
- Folie 17
- Folie 18
- z.B. F2 ndern
- Folie 19
- Original (/pUp/) Synthese (/pYp/) Premphase- -nderung als
Artefakt
- Folie 20
- http://bartus.org/akustyk/ Add-on zu praat, das u.a. die
LPC-Resynthese wesentlich vereinfacht Ist aber nur eine
Scriptsammlung, automatisiert also nur das, was in praat ohnehin
mglich ist
- Folie 21
- Erste Mglichkeit: Globale nderung
- Folie 22
- Der Vokal in /pUp/ wird markiert:
- Folie 23
- Folie 24
- Zu Dokumentationszwecken bleibt jeder Zwischenschritt im
praat-Objektfenster und kann ggf. gespeichert werden:
- Folie 25
- weitergehende Transitionen in der Resynthese erzeugen: Den
Auswahlbereich in 10 gleiche Intervalle unterteilen
- Folie 26
- Die erzeugten Werte werden auch dokumentiert:
F1_changeF2_changeF1oldF2_oldF1_newF2_new selfself+100421803421903
selfself+2504108084101158 selfself+4004138134131463
selfself+4004198144191614 selfself+4004248104241610
selfself+4004268044261604 selfself+4004237964231596
selfself+4004147894141589 selfself+4003977833971583
selfself+4003767823761582 Zwischen diesen Zielwerten pro
Unterabschnitt wird Interpoliert, so dass keine Brche
entstehen
- Folie 27
- /pUp/ /pYp/ Wre auch mit einer globalen nderung mglich gewesen,
da die Rnder (Transitionsphasen) ohnehin interpoliert werden
- Folie 28
- Sinnvollerer Einsatz /pUp/ /pjUp/
- Folie 29
- AKUSTYK erlaubt auch die Interpolation zwischen den F1- und
F2-Werten zweier gegebener Sounds Semiautomatische Stimulierzeugung
(durch Create speech continuum...) datedebt