Eesti keele tekst-kõne süntees



·       Tutvustus

·       Kompilatiiv- ehk ahelsüntees (Mbrola)

·       Formantsüntees (eSpeak)

·       Korpuspõhine kõnesüntees

·       Demod

·       Installeerimis- ja kasutusjuhendid


Tutvustus


Tekst-kõne süntees on inimlugemise analoogiks. Vaadeldes lugemist füsioloogia tasandil, näeme, et tegu on väga keeruka protsessiga. Joonisel on esitatud teksti häälega ettelugemise lihtsustatud skeem ja kujutatud inimese füsioloogilised organid, mis on kaasatud lugemisprotsessi.

Arvutil imiteeritav tekst-kõne süsteem on lihtsustatud mudel füsioloogilisest lugemisprotsessist. Tekst-kõne süsteem eeldab oma sisendis teksti, mis on eelnevalt juba arvutisse viidud. Tähemärkide optiline tuvastussüsteem või ekraanilugeja jääb tavaliselt tekst-kõne süsteemi käsitlusest välja. Süsteem ei sisalda ka tagasisideahelat, mis väljundi analüüsi põhjal võimaldaks automaatselt kõne valjust ja häälekõrgust kohandada vastavalt keskkonna tingimustele.

Nii nagu inimlugemine, sisaldab tekst-kõne süntesaator loomuliku keele töötlusmoodulit, mis teisendab sisendteksti hääldustekstiks koos soovitud intonatsiooni ja kõnerütmiga. Digitaalne signaalitöötlusmoodul teisendab sisendis oleva sümbolinformatsiooni loomuliku kõlaga kõneks.

Kompilatiiv- ehk ahelsüntees (Mbrola)

Eesti keele tekst-kõne sünteesil teisendatakse eestikeelne kirjalik tekst suuliseks kõneks. Joonisel on toodud eestikeelse tekst-kõne süntesaatori plokkskeem, mis põhineb kompilatiiv- e ahelsünteesi filosoofial. Süsteem sisaldab teksti linvistilist töötlust, prosoodia generaatorit ning kõneüksuste ja kõneprosoodia andmebaase.

Kompilatiiv- ehk ahelsünteesil kasutame kõneüksustena difoone, millede akustilistes signaalides sisalduvad loomulikud üleminekud häälikult häälikule. Difoonid on kahest järjestikusest häälikust koosnevad segmendid (vokaal-konsonant, vokaaal-vokaal, konsonant-vokaal, vokaal-paus jne).

Difoonide kõnelainete

. . .

ja prosoodilise informatsiooni põhjal

moodustatakse väljundkõnesignaal.

Eesti keele tekst-kõne süntees on Eesti Keele Instituudi, Küberneetika Instituudi ja OÜ Filosoft ühisprojekt. Oleme liitunud ka rahvusvahelise sünteesiprojektiga MBROLA.

Formantsüntees (eSpeak)

Formantsüntesaator on kõne tekitamise allikas-filter mudel. Allikas modelleerib häälekurdude tööd, genereerides perioodilisi kõriimpulsse või kõri ahtusest (friktsioonist) tingitud müra. Filtriga modelleeritakse kõnetrakti resonantssagedusi ehk formante. Formantsünteesil kirjeldatakse häälikutevahelisi foneetilisi siirdeid reeglite jadana, mis formaalselt kirjeldavad häälikute mõju üksteisele. Allikat ja filtreid kirjeldatakse kuni 60 parameetri dünaamilise muutumisena, mis on esmajoones seotud formantide (ja antiformantide) sageduste ja ribalaiustega ning kõri lainekuju kirjeldusega. Formantsünteesi eeliseks on tema kompaktsus, tagasihoidlikud nõuded mälumahule ja arvutusvõimsustele. Seetõttu saab neid kasutada väiksemates mobiilsetes seadmetes ning formantsüntesaatoritele on loodud liideseid tööks eri platvormide ja süsteemide all.

Eestikeelne formantsüntees on realiseeritud avatud koodiga kõnesünteesi arendussüsteemis eSpeak. eSpeaki omadused-võimalused: sisaldab 43 keeles sünteeshääli, tekitab väljundina wav-faili, SSML märgenduskeele (osaline) tugi ja samuti HTML, kompaktsus (programm koos erinevate keelte andmetega 1.4 Mbaiti) ja saab kasutada eessüsteemina Mbrola difoonhäältele.

Eestikeelne formantsüntees on eSpeak süsteemis kasutatav:
- käsureaprogrammina (Linuxis ja Windowsis) teksti ettelugemiseks failist või standardsisendist (stdin);
- jagatud teekide versioonina (dll Windowsis);
- SAPI5 versioonina Windowsis, võimaldades kasutada eestikeelset kõnesünteesi ekraanilugejates ning teistes programmides, millel on SAPI 5 tugi;
- eSpeak on porditud ka teistesse platvormidesse (Solaris ja Mac OSX).


Korpuspõhine kõnesüntees

Korpuspõhisel kõnesünteesil on kõnesünteesi akustiliseks baasiks suured kõnekorpused (50-360 minutit kõnet ühe keelejuhi esituses) ja kõnelõigu sünteesimisel lähtutakse kontekstist. Kõneüksuste valikul optimeeritakse nende lingvistilisi ja füüsikalisi parameetreid erinevate sobivuskriteeriumide alusel.
Korpuspõhise sünteesi loomine eeldab järgmiste ülesannete lahendamist:
- tekstikorpuse loomine;
- kõnekorpuse salvestamine professionaalsete diktorite esituses;
- kõnekorpuse segmenteerimine ja märgendamine eri tasanditel (fraas, sõna, kõnetakt, silp, foneem);
- korpuse esitamine fonoloogiliste struktuuridena, mida on võimalik kasutada valikalgoritmi realiseerivas programmis;
- kõneüksuste füüsikaliste (kestus, põhitoon, intensiivsus) ja lingvistiliste (üksuse naabrus, asend lausungis, rõhulisus, välde jm) parameetrite väärtuste määramine;
- kõneüksuste valikalgoritmide loomine;
- kõneüksuste heuristilise valiku ja signaalide ühendamise süsteemi loomine;
- kõnesignaali füüsikalisi ja lingvistilisi omadusi arvestavate heuristikute määramine tajukatsete meetodil;
- kõnesüntesaatori realiseerimine Festivali Unisyn ja Multisyn arenduskeskkonnas;
- kõne ajalise struktuuri ja põhitooni modelleerimine statistiliste meetoditega.

Sünteeskõne loomulik rütm ja kõla modelleeritakse prosoodiageneraatoriga. Käesoleva projekti raames modelleeritakse sidusa kõne korpuste baasil erinevate statistiliste meetodite (regressioon, klassifikatsioon ja regressioonipuud, närvivõrgud) abil kõne ajalist struktuuri ja põhitooni sagedust. Statistilist prosoodiamudelit on rakendatud difoonsünteesi baasil.

Korpuspõhised kõnesüntesaatorid on veel arengufaasis. Projekti raames loodud ressurssidest ja välja töötatud sünteesimoodulitest on praegu kättesaadavad:

1. Kõnekorpuse jaoks koostatud tekstikorpus (1024 lauset)
2. Kõnekorpused (54, 66 ja 88 minutit kõnet)
3. Statistilise prosoodiamudeli rakendus difoonsünteesil (eelnevalt peab olema installitud MBROLA signaalitöötlusprogramm)
4. Eestikeelsete elektrooniliste teabetekstide ettelugemise süsteem nägemispuudega inimestele
5. Suurtel kõnekorpustel põhinevad ja erinevatel meetoditel genereeritud sünteeshäälte näited


Demod

Kui tahate kuulata, kuidas eestikeelne sünteeskõne kõlab, siis proovige sünteesidemo aknas mõnd sõna või lauset. On võimalik lasta endale ette lugeda uudiseid Eesti päevalehtedest.


Installeerimis- ja kasutusjuhendid

Kui teil on huvi kõnesüntesaatoreid oma arvutis proovida, siis järgige installeerimisjuhendeid. Nõuded arvuti riistvarale on minimaalsed, vaja on vaid helikaarti ja kõlareid või kõrvaklappe.


Difoonsüntesaator (Mbrola baasil)

Difoonsüntesaatori installimiseks Windowsi keskkonnas tuleb alla laadida ja käivitada kaks moodulit toodud järjekorras.

1. MBROLA signaalitöötlusprogramm (ver 3.5, maht 1.8 MB)
2. Eestikeelse kõnesünteesi tarkvara koos difoonide andmebaasiga ja reeglipõhise prosoodiamooduliga (ver 1.0, maht 9.6 MB) või statistilise prosoodiamooduliga (ver 2.0, maht 9.6 MB)

Õnnestunud installimise tulemusena tekib töölauale programm TKSyntees.

Selle käivitamisel ilmub ekraanile aken, kuhu on võimalik teksti tippida või kopeerida (nt Ctrl+C & Ctrl+V) ja lasta endale ette lugeda. Programm võimaldab muuta kõnetempot, kõne ilmekust (lause põhitooni), kõnevaljust, häälekõrgust ja -tämbrit. Sünteeskõnet saab salvestada ka mp3-formaadis faili "MP3-väljund". Kasutaja saab häälestada süntesaatorit oma maitse järgi ja valitud seadeid salvestada "Kasutaja seadete salvestus", mis jäävad kasutaja vaikeväärtusteks konkreetses arvutis. Pärast süntesaatori seadete katselist muutmist saab taastada nii "Kasutaja vaikeväärtusi" kui ka "Süsteemi algseadeid". Lisaks on võimalik modifitseerida "Kõneprosoodiat" (kõneühikute kestusi ja põhitooni sagedust) ning salvestada prosoodiaandmeid pho-faili ja väljundkõnet ennast wav-formaadis faili.

Eestikeelne difoonsüntesaator on integreeritav teistesse Windows-põhistesse rakendustesse kas SAPI 4 liidese abil (vastavat tarkvara saab alla laadida TTÜ KI Foneetika ja kõnetehnoloogia labori leheküljelt) või SAPI 5 liidese abil eSpeaki eessüsteemina kasutades (vt Formantsüntesaator eSpeaki baasil).

Eesti keele tekst-kõne sünteesi programmid on kasutatavad priivarana mitteärilistel ja mittesõjalistel eesmärkidel.

Kui teil on programmi TKSyntees installeerimise-kasutamisega probleeme või küsimusi sünteesi kohta, siis palun võtke ühendust .

NB! Kuna Mbrola sünteesimootorit pole viimastel aastatel enam edasi arendatud, võib mitmetuumaliste protsessorite korral TKSyntees aknast sünteeskõne kuulamisel esineda kõne "hakkimist" ja kaja.
Selliste nähtuste vältimiseks ja korraliku väljundkõne saamiseks on kaks võimalust:
1. Programmi TKSyntees ühilduvuse muutmine: parem klõps programmil, valida Properties ja siis Compatibility, teha linnuke kastis Run this program in compatibility mode for: ja valida ühilduvusloetelust Windows 95;
2. sünteesitav kõnelõik tuleks esmalt salvestada faili wav- või mp3-formaadis ja seejärel kuulata.


Formantsüntesaator (eSpeaki baasil)

Formantsüntesaatori installimiseks tuleb teha alljärgnevad toimingud toodud järjekorras (punktid 0 ja 4 on vajalikud vaid Mbrola häälte kaasamiseks):

0. Juhul, kui te soovite eSpeak süsteemis kuulata ka Mbrola-põhiseid hääli (on ka üks eestikeelne Mbrola-hääl), siis Windows keskkonnas installeerige kõigepealt MBROLA signaalitöötlusprogramm (ver 3.5, maht 1.8 MB). Linuxi ja teiste platvormide vastavad programmid on saadavad Mbrola koduleheküljelt.
1. Laadige alla teie operatsioonisüsteemile vastav eSpeak installeerimisfail.
2. Käivitage vastav installiprogramm (Windowsis setup_espeak.exe).
3. Kohe installi alguses palutakse teil valida installeeritavaid hääli (Select which voices to install)1. Mõelge läbi, millise keele kõnesüntesaatorid teid huvitavad ning kirjutage sünteeshäälte nimed valikuakna ridadele. Konkreetses keeles võib sünteeshääli olla mitu, eSpeak süsteemis on kaks eestikeelset sünteeshäält et ja mb-ee12.
4. mb-ee1 hääle jaoks tuleb lisaks alla laadida difoonide andmebaas ee1 ja salvestada see eSpeaki kataloogi .../eSpeak/espeak-data/mbrola. Teiste keelte difoonide andmebaase saab Mbrola koduleheküljelt

1 Keelte valikuvõimalused on kirjas keelte failis (eestikeelsed sünteeshääled on et ja mb-ee1). eSpeaki kasutamise käigus uusi hääli lisada ei saa, see nõuab uut installi.
2 Windowsis tekib valitud häälte õnnestunud installimise tulemusena juhtpaneeli (Control Panel) kõne omaduste (Speech Properties) tekst-kõne (Text to speech) alajaotusesse uusi eSpeak-hääli (eestikeelsed sünteeshääled eSpeak-ET ja eSpeak-MB-EE1), mida saab vajadusel kasutada SAPI 5 toega rakendusprogrammides.