SGN-4010 PUHEENKÄSITTELYN MENETELMÄT Luento 1 13.1.2010 TTY/Signaalinkäsittelyn laitos Konsta Koppinen
2 Kurssijärjestelyt Luennot (10h): Konsta Koppinen (huone TF317, etunimi.sukunimi@tut.fi) Harjoitukset (10h): Katariina Mahkonen (etunimi.sukunimi@tut.fi)
3 Kurssijärjestelyt (2) Materiaali: Pääasiallisena materiaalina luentomoniste Lisälukemista kaipaaville: kurssikirja T.F. Quatieri, Discrete-Time Speech Signal Processing: Principles and Practice, Prentice Hall PTR, 2002 Harjoitustehtävät (5 tehtävää / harjoituskerta) Tentissä pärjää osaamalla luentojen, harjoitusten, prujun ja kalvojen asiat Tentti 29.1.2009 Tenttioikeus ja bonukset voimassa kurssin kolmessa seuraavassa tentissä Tenttioikeuden saamiseksi muista ilmoittautua myös kurssille!
4 Harjoituskäytäntö Harjoituksia 5 x 2h = 10h (alkavat viikolla 50) Pisteitä jaossa kullakin kerralla 5p (eli yhteensä 25 p) Tenttioikeus: 20% pisteistä (eli 5p) Hyväksyttyyn tenttiin saa lisäpisteitä seuraavasti: 10 harjoituspistettä tai enemmän (40 %) => 1 piste 15 harjoituspistettä tai enemmän (60 %) => 2 pistettä 20 harjoituspistettä tai enemmän (80 %) => 3 pistettä l. arvosanan korotus Tehtävät ratkaistaan etukäteen (myös MATLAB), tehtävien läpikäymisen jälkeen voi jäädä ratkaisemaan seuraavan kerran tehtäviä Poikkeuksena viikon 2/2009 Praat-harjoitukset (vuoden 2009 ensimmäiset harkat), joihin ei tarvitse valmistautua
5 Harjoitusryhmät Ryhmät: To 10-12, TC303 Pe 10-12, TC303 Pe 12-14, TC303 Harjoitusryhmiin ei tarvitse ilmoittautua Tenttioikeuden (20% tehtävistä) saa melko helposti, mutta bonuspisteiden saamiseksi joutuu näkemään enemmän vaivaa.
6 Esitiedot Osaatko vastata seuraaviin kysymyksiin? Mikä on suodattimen impulssivaste/taajuusvaste? Miten signaaleiden konvoluutio lasketaan? Mitä eroa on FIR- ja IIR-suodattimilla? Miten FFT lasketaan? Entä z-muunnos? Mitä ovat suodattimen nollat ja navat? Asiat voi kerrata kurssin SGN-1200 prujusta
7 Mitä puheenkäsittely on? Tarkoittaa (loogisesti) puhesignaalin käsittelyä Sovelluksia: Koodaus (esim. matkapuhelimet) Tunnistus (puheesta tekstiksi) Synteesi (tekstistä puheeksi) Ehostus (laadun parannus) Muokkaus (muokataan äänestä toisenlainen) Puhujantunnistus (kuka puhuu) Käytetään signaalinkäsittelyn menetelmiä Fourier-muunnos, ikkunointi, autokorrelaatio,... Myös erityisesti puheelle soveltuvia menetelmiä LPC-analyysi, Markovin piilomallit, pitch-synchronous overlap-add,...
8 Puhe on monitasoinen signaali Joitain operaatioita voidaan tehdä ilman tarkempaa tietoa puheesta Kohinan poisto, yksinkertainen koodaus Lisätiedolla voidaan tehdä lisäoperaatioita Puheen muokkaus, parempi koodaus, puhujantunnistus Vielä enemmän tietoa Puhesynteesi, puheentunnistus Hurja määrä tietoa Puheen ymmärrys
9 Miltä puhe näyttää? Puhe on akustisesti ilmanpaineen vaihtelua Näytteistetään mikrofonin ja A/D-muuntimen avulla Näytteenottoteoreema pätee
10 Taajuusesitys Usein hyödyllisempi kuin aikatason signaali Korva erottelee taajuuksia Puheessa esiintyvät formantit...eli ääntöväylän resonanssitaajuudet Ilmenevät puheen spektrissä Puhe muuttuu nopeasti lyhytaikainen Fourier-muunnos...eli FFT ikkunoidusta signaalista
11 Puheen tuottaminen ja sen mallintaminen Quatieri: Discrete Time Speech Signal Processing Principles and Practice
12 Puheen tuottaminen ja sen mallintaminen Quatieri: Discrete Time Speech Signal Processing Principles and Practice
Ikkunointi Puhetta käsitellään kehyksittäin (frame) eli ikkunoittain Toimii seuraavasti:
taajuus FFT:n amplitudi Spektrogrammi Kehyksittäin lasketun FFT:n amplitudi 8kHz aika
15 Tarkempi katsaus puhesignaaliin Puhe koostuu äänteistä: Vokaalit ja konsonantit Suomen kielessä on n. 30 äännettä Ei selkeitä rajoja
Maailman kielten äänteet
17 Perustaajuus (f 0 ) Joissakin äänteissä äänihuulet värähtelevät (soinnillinen äänne) (a) Suurin piirtein jaksollinen aaltomuoto (b) Suurin piirtein harmoninen spektri (a) (b)
Sama kuvio Hanning-ikkunalla (a) (b)
Sovellus: puheen perustaajuuden muuttaminen Idea: muutetaan puhujan perustaajuutta Nk. PSOLA-algoritmi (pitch-synchronous overlap-add): Etsitään puheen perustaajuus soinnillisista kohdista (ei helppoa) Otetaan jaksoja hitaammin tai tiheämmin Summataan jaksot
PSOLA
21 Puheenkoodaus Digitaalisen puheen pakkaaminen siirtoa tai tallennusta varten (esim. matkapuhelimissa), kaupallisesti tärkein puheenkäsittelyn sovellus Tavoitteet: Hyvä laatu Pieni määrä bittejä Pieni viive Nopea laskenta Virhesietoinen Kestää useamman peräkkäisen koodauksen GSM-verkossa käytössä AMR (adaptive multirate)-puhekoodekki Bittinopeudet 4.75...12.2 kbps Käsitellään kurssilla SGN-4050 Puheenkoodaus
22 Puheentunnistus Puheesta tekstiksi Pitkät perinteet mutta vieläkin osin ratkaisematon ongelma Perustuu todennäköisyyslaskentaan Millä todennäköisyydella Myös kieli mallinnetaan tilastollisesti P( melko todennäköinen lause )? Nämä todennäköisyydet yhdistetään = a? Käsitellään kursseilla SGN-4106 Speech Recognition ja SGN-4507 Speech Recognition Laboratory
23 Puhesynteesi Tekstistä puheeksi Tarvitaan tietoa puheesta ja kielestä Useita eri lohkoja Tekstianalyysi: syntaktinen analyysi (subjekti, predikaatti yms.), numeroiden ja lyhenteiden laajennus Foneettinen analyysi: tekstistä foneemeiksi (ääntämyksen mukaiseen muotoon) Prosodia: painot, äänteiden kesto, f 0 :n generointi Synteesi: puhesignaalin generointi edellä olevan avulla Eri synteesimenetelmiä: Sääntöpohjainen synteesi (formanttisynteesi) Konkatenatiivinen synteesi (difonisynteesi, unit selection synteesi) Tilastollinen parametrinen synteesi (HMM-pohjainen) Artikulatorinen synteesi
24 Muita puhekursseja TTY:llä SGN-4050 Puheen koodaus (4. periodilla) SGN-4106 Speech Recognition (5. periodilla) SGN-4507 Speech Recognition Laboratory (5. periodilla) Lisäksi: SGN-4200 Digitaalinen audio (3. periodilla)
25 Praat: doing phonetics by computer Praat: Boersma, Paul & Weenink, David (2008). Praat: doing phonetics by computer (Version 5.0.42) [Computer program]. Retrieved November 26, 2008, from http://www.praat.org/ Käytetään 3. harkoissa Suomenkielinen Praat-opas: Mietta Lennes, Praat-opas 2004 http://www.helsinki.fi/puhetieteet/atk/praat/
26 Linkkejä MATLAB-oppaita: http://www.helsinki.fi/~mjlaine/matlab/ (suomenkielinen) http://www.helsinki.fi/~mjlaine/matlab/matlab-primer.html Praat: http://www.praat.org/ (ohjelma) http://www.helsinki.fi/puhetieteet/atk/praat/ (suomenkielinen opas) Fonetiikka: Suomenkilinen fonetiikkasanasto: http://www.opiskelijakirjasto.lib.helsinki.fi/fonterm/ IPA: http://www2.arts.gla.ac.uk/ipa/fullchart.html