Teza doctorat (pdf) - Universitatea Tehnică

Teza doctorat (pdf) - Universitatea Tehnică Teza doctorat (pdf) - Universitatea Tehnică

users.utcluj.ro
from users.utcluj.ro More from this publisher
15.06.2013 Views

1) Crearea listei de silabe Cap. 7. Proiectarea sistemului de sinteză de voce în limba română Structura bazei de date acustice a fost deja prezentată în secţiunea 6.4.6. Astfel, s-a stabilit ca baza de date să cuprindă silabe alcătuite din două, trei sau patru litere (notate cu S2, S3, S4), dar şi foneme singulare (S1). S -a urmărit includerea în fiecare categorie S2, S3 şi S4 a unui număr cât mai mare de silabe în ordinea frecvenţei de apariţie în limba română, realizându-se în acest scop o statistică a silabelor (vezi paragraful 6.4.6.1). Pentru a alcătui lista iniţială de silabe, s-a pornit de la mulţimea fonemelor limbii române. S-au luat în considerare în total 27 de foneme : F = [aăbcdef gh i îjklmnoprs ştţuvxz ] Mulţimea F nu cuprinde fonemele /q/, /w/, /y/, acestea fiind înlocuite prin fonemele /c/, /v/, /i/. F este alcătuită din reuniunea a două submulţimi C şi V : C = [ bcdf ghjklmnprs ş t ţ vxz] - submulţimea consoanelor (card C = 20) V = [aăeiîo u] - submulţimea vocalelor (card V = 7) Pentru silabele din categoria S2, avem următoarele configuraţii posibile: a) [CV] b) [VV] c) [VC] unde C reprezintă o consoană, iar V – o vocală. a) Pentru silabele de tipul [CV] s-au generat toate combinaţiile de două elemente care rezultă din compunerea mulţimilor C şi V : L1 = { [ba] [ca] [da] ..... [za] , [bă] [că] [dă] ..... [ză] , ……. [bu] [cu] [du] ..... [zu] } Din această listă s-au eliminat combinaţiile care nu există în limba română, precum: [kă], [kî], etc. b) Pentru silabele de tipul [VV] şi [VC] s-a parcurs tabelul silabelor S2 (generat pe baza statisticii de la 6.4.6.1 şi prezentat în anexa 2), preluându-se toate configuraţiile de această formă. S-au obţinut listele: L2 = { [ai] [au] ..... [ua] [ui] } L3 = { [ab] [ac] ..... [uz] } Lista completă pentru categoria S2 este: LS2 = L1 U L2 U L3 . Pentru categoriile silabice S3 şi S4, listele LS3 şi LS4 s-au obţinut pe baza tabelelor din anexele 3 şi 4. 246

Cap. 7. Proiectarea sistemului de sinteză de voce în limba română Din considerente ce au ţinut de condiţiile existente pentru înregistrarea audio, listele LS3 şi LS4 au fost reduse la câteva zeci de elemente (a se vedea tabelul 7.2, ce prezintă numărul unităţilor acustice stocate în baza de date). În lista LS1 (adică fonemele singulare) au fost incluse toate fonemele din mulţimea F . 2) Crearea corpusului de cuvinte Odată obţinute listele cu silabe ( LS1 … LS4), s-a trecut la construirea corpusului de cuvinte, în vederea înregistrării şi apoi a separării unităţilor acustice. Pentru a se genera o vorbire sintetică de calitate, s-a avut în vedere ca silabele înregistrate să includă şi anumite elemente de prozodie. În primul rând, silabele trebuiau să respecte accentuaţia din interiorul cuvintelor. Ca urmare, au fost luate în considerare atât silabele accentuate (ACC), cât şi cele neaccentuate (NA), pentru fiecare categorie S2, S3 şi S4. De asemeni, ţinând cont că o silabă se rosteşte distinct în funcţie de locul pe care aceasta îl ocupă în cadrul cuvântului, dacă este situată la începutul, mijlocul sau sfârşitul unui cuvânt, s-a urmărit introducerea în listă a silabelor în aceste contexte diferite în care ele pot să apară. Astfel, s-a făcut diferenţierea între silabe finale (FIN), pe de o parte, şi silabe iniţiale şi mediane (MED), pe de altă parte. Corpusul de cuvinte folosit pentru extragerea unităţilor acustice a fost alcătuit atât din propoziţii şi cuvinte normale care conţineau silabele dorite, precum şi din cuvinte artificiale folosite pentru a evidenţia mai bine un anumit grup de foneme. Generarea seturilor de cuvinte a ţinut cont de tipul silabelor: accentuate (ACC), respectiv neaccentuate (NA), cât şi de contextul acestora: silabe mediane (MED) sau finale (FIN). Cuvintele artificiale includ silabele în contextele necesare, folosindu-se silabe auxiliare predefinite (de exemplu silaba /ta/). De exemplu pentru categoria S2 a fost generat următorul set de cuvinte : MED FIN NA ACC NA ACC ... ta - ba - tá ta - ca - tá … ta - za - tá tá - ta - ba tá - ta - ca … tá - ta - za ta - bá - ta ta - cá - ta … ta - zá - ta ta - ta - bá ta - ta - cá … ta - ta - zá 247 ta - be - tá ta - ce - tá … ta - ze - tá tá - ta - be tá - ta - ce … tá - ta - ze ta - bé - ta ta - cé - ta … ta - zé - ta ta - ta - bé ta - ta - cé … ta - ta - zé Din acest set au fost excluse combinaţiile care generează contexte improbabile pentru limba română (în majoritate silabe accentuate în context final). Alte silabe de acest gen au rămas în set chiar dacă în dicţionar nu există cuvinte care să le conţină în contextul respectiv. … …

Cap. 7. Proiectarea sistemului de sinteză de voce în limba română<br />

Din considerente ce au ţinut de condiţiile existente pentru înregistrarea audio, listele LS3<br />

şi LS4 au fost reduse la câteva zeci de elemente (a se vedea tabelul 7.2, ce prezintă numărul<br />

unităţilor acustice stocate în baza de date).<br />

În lista LS1 (adică fonemele singulare) au fost incluse toate fonemele din mulţimea F .<br />

2) Crearea corpusului de cuvinte<br />

Odată obţinute listele cu silabe ( LS1 … LS4), s-a trecut la construirea corpusului de<br />

cuvinte, în vederea înregistrării şi apoi a separării unităţilor acustice.<br />

Pentru a se genera o vorbire sintetică de calitate, s-a avut în vedere ca silabele înregistrate<br />

să includă şi anumite elemente de prozodie.<br />

În primul rând, silabele trebuiau să respecte accentuaţia din interiorul cuvintelor. Ca<br />

urmare, au fost luate în considerare atât silabele accentuate (ACC), cât şi cele neaccentuate<br />

(NA), pentru fiecare categorie S2, S3 şi S4.<br />

De asemeni, ţinând cont că o silabă se rosteşte distinct în funcţie de locul pe care aceasta<br />

îl ocupă în cadrul cuvântului, dacă este situată la începutul, mijlocul sau sfârşitul unui cuvânt, s-a<br />

urmărit introducerea în listă a silabelor în aceste contexte diferite în care ele pot să apară. Astfel,<br />

s-a făcut diferenţierea între silabe finale (FIN), pe de o parte, şi silabe iniţiale şi mediane (MED),<br />

pe de altă parte.<br />

Corpusul de cuvinte folosit pentru extragerea unităţilor acustice a fost alcătuit atât din<br />

propoziţii şi cuvinte normale care conţineau silabele dorite, precum şi din cuvinte artificiale<br />

folosite pentru a evidenţia mai bine un anumit grup de foneme.<br />

Generarea seturilor de cuvinte a ţinut cont de tipul silabelor: accentuate (ACC), respectiv<br />

neaccentuate (NA), cât şi de contextul acestora: silabe mediane (MED) sau finale (FIN).<br />

Cuvintele artificiale includ silabele în contextele necesare, folosindu-se silabe auxiliare<br />

predefinite (de exemplu silaba /ta/).<br />

De exemplu pentru categoria S2 a fost generat următorul set de cuvinte :<br />

MED<br />

FIN<br />

NA ACC NA ACC ...<br />

ta - ba - tá<br />

ta - ca - tá<br />

…<br />

ta - za - tá<br />

tá - ta - ba<br />

tá - ta - ca<br />

…<br />

tá - ta - za<br />

ta - bá - ta<br />

ta - cá - ta<br />

…<br />

ta - zá - ta<br />

ta - ta - bá<br />

ta - ta - cá<br />

…<br />

ta - ta - zá<br />

247<br />

ta - be - tá<br />

ta - ce - tá<br />

…<br />

ta - ze - tá<br />

tá - ta - be<br />

tá - ta - ce<br />

…<br />

tá - ta - ze<br />

ta - bé - ta<br />

ta - cé - ta<br />

…<br />

ta - zé - ta<br />

ta - ta - bé<br />

ta - ta - cé<br />

…<br />

ta - ta - zé<br />

Din acest set au fost excluse combinaţiile care generează contexte improbabile pentru<br />

limba română (în majoritate silabe accentuate în context final). Alte silabe de acest gen au rămas<br />

în set chiar dacă în dicţionar nu există cuvinte care să le conţină în contextul respectiv.<br />

…<br />

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!