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

7. Realizarea sistemului de sinteză de voce în limba română LIGHTVOX Ca şi contribuţie în domeniul proiectării şi realizării unui sistem interactiv vocal, autorul a urmărit proiectarea şi implementarea unui sistem de sinteză vocală adaptat special limbii române, ce foloseşte ca şi unităţi fonetice silabele, numit LIGHTVOX. Sistemul a fost conceput ca un sistem text-to-speech, în care sinteza vorbirii se realizează pornind de la un text în limba română, utilizând metoda de sinteză bazată pe silabe prezentată în capitolul precedent. 7.1. Organizarea pe module a sistemului Sistemul LIGHTVOX este organizat pe cinci module componente, aşa cum se indică în figura 7.1. Sistemul cuprinde următoarele module: - modulul de analiză lingvistică; - modulul de analiză prozodică; - modulul de gestiune a bazei de date vocale; - modulul de potrivire a unităţilor fonetice; - modulul de sinteză propriu-zisă a rostirii. ANALIZĂ LINGVISTICĂ GESTIUNEA BAZEI DE DATE VOCALE ANALIZĂ PROZODICĂ Figura 7.1. Sistemul de sinteză în limba română LIGHTVOX. Modulele componente Modulul de analiză lingvistică realizează analiza textului de la intrare urmărind extragerea unităţilor lingvistice de bază, şi anume silabele. Ideea folosirii silabelor în sinteză se bazează pe faptul că limba română are un specific articulator în care o mare pondere o au vocalele deschise, ceea ce conferă vorbirii un ritm în care sunt uşor de evidenţiat silabele. Rezultă astfel posibilitatea generării unei sinteze de vorbire de mare naturaleţe. Folosirea silabelor pentru sinteză mai aduce însă şi alte avantaje, precum: - întreţinerea facilă a bazei de date vocale datorită numărului relativ restrâns de silabe din limba română; - erori mici de concatenare datorită numărului redus de puncte de îmbinare în interiorul unui cuvânt. 242 POTRIVIRE UNITĂŢI SINTEZA ROSTIRII

Cap. 7. Proiectarea sistemului de sinteză de voce în limba română Modulul de analiză prozodică urmăreşte detectarea elementelor de prozodie segmentală pe baza textului de la intrare. Într-o primă fază s-au determinat locurile de accentuare a vorbirii în cadrul cuvintelor, pe baza unui set de reguli de accentuare proiectat specific pentru limba română. Modulul de gestiune a bazei de date vocale efectuează toate operaţiunile legate de baza de unităţi acustice. Baza de date vocală cuprinde un subset al silabelor limbii române obţinut din înregistrări ale rostirii unui vorbitor uman. Baza de date este organizată în funcţie de tipul silabelor (accentuate/neaccentuate), poziţia lor în cadrul cuvântului, precum şi după numărul de foneme componente (două, trei sau patru). Modulul de potrivire a unităţilor fonetice cu unităţile acustice asigură potrivirea dintre silabele extrase din textul de sintetizat şi silabele existente în baza de date vocală în format acustic, ca forme de undă. Potrivirea va trebui realizată într-un mod optim, ţinând cont de faptul că nu toate silabele se regăsesc în baza de date. Modulul de sinteză a rostirii realizează mai întâi concatenarea formelor de undă furnizate de modulul anterior. Vorbirea propriu-zisă se obţine prin apelul unor funcţii API ce asigură comanda plăcii audio a calculatorului. 7.2. Structura funcţională a sistemului Sistemul este prezentat în detaliu în figura 7.2, pe blocuri funcţionale. Se observă structura completă de tip text-to-speech în care se porneşte de la un text şi se realizează sinteza completă a vorbirii, LIGHTVOX fiind astfel un sistem de sinteză de nivel înalt. Din punct de vedere al tipului de abordare, este un sistem de sinteză în domeniul timp, folosind concatenarea directă a unităţilor acustice neparametrizate. Metoda de sinteză (prezentată în secţiunea 6.4) este mixtă, din punct de vedere al clasificării sistemelor text-to-speech, îmbinând caracteristici ale abordării bazate pe concatenarea formelor de undă şi ale abordării bazate pe reguli. Aşa cum se observă din figura 7.2, sistemul efectuează mai întâi o preprocesare şi o analiză sintactică a textului iniţial pentru a-l aduce la o formă ortografică corectă. Apoi are loc determinarea unităţilor lingvistice de bază (în cazul de faţă silabele) şi a informaţiilor prozodice segmentale (accentul cuvintelor). Pe baza acestor elemente sunt regăsite unităţile acustice din baza de date vocală care corespund cel mai bine unităţilor lingvistice detectate. Segmentele acustice sunt concatenate şi apoi are loc sinteza propriu-zisă a vorbirii. Tot în figura 7.2 se prezintă şi etapele fazei de construcţie a bazei de date vocale. Astfel, semnalul vocal este mai întâi normalizat şi descompus în secvenţe de regiuni cu proprietăţi distincte. Secvenţele de regiuni sunt puse în corespondenţă cu fonemele limbii române, urmând apoi extragerea din semnalul vocal a grupurilor de foneme care alcătuiesc unităţile acustice, în cadrul unui proces semiautomat. Unităţile acustice se memorează în final în structura ierarhică a bazei de date. 243

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

Modulul de analiză prozodică urmăreşte detectarea elementelor de prozodie segmentală pe<br />

baza textului de la intrare. Într-o primă fază s-au determinat locurile de accentuare a vorbirii în<br />

cadrul cuvintelor, pe baza unui set de reguli de accentuare proiectat specific pentru limba<br />

română.<br />

Modulul de gestiune a bazei de date vocale efectuează toate operaţiunile legate de baza de<br />

unităţi acustice. Baza de date vocală cuprinde un subset al silabelor limbii române obţinut din<br />

înregistrări ale rostirii unui vorbitor uman. Baza de date este organizată în funcţie de tipul<br />

silabelor (accentuate/neaccentuate), poziţia lor în cadrul cuvântului, precum şi după numărul de<br />

foneme componente (două, trei sau patru).<br />

Modulul de potrivire a unităţilor fonetice cu unităţile acustice asigură potrivirea dintre silabele<br />

extrase din textul de sintetizat şi silabele existente în baza de date vocală în format acustic, ca<br />

forme de undă. Potrivirea va trebui realizată într-un mod optim, ţinând cont de faptul că nu toate<br />

silabele se regăsesc în baza de date.<br />

Modulul de sinteză a rostirii realizează mai întâi concatenarea formelor de undă furnizate de<br />

modulul anterior. Vorbirea propriu-zisă se obţine prin apelul unor funcţii API ce asigură<br />

comanda plăcii audio a calculatorului.<br />

7.2. Structura funcţională a sistemului<br />

Sistemul este prezentat în detaliu în figura 7.2, pe blocuri funcţionale. Se observă<br />

structura completă de tip text-to-speech în care se porneşte de la un text şi se realizează sinteza<br />

completă a vorbirii, LIGHTVOX fiind astfel un sistem de sinteză de nivel înalt. Din punct de<br />

vedere al tipului de abordare, este un sistem de sinteză în domeniul timp, folosind concatenarea<br />

directă a unităţilor acustice neparametrizate. Metoda de sinteză (prezentată în secţiunea 6.4) este<br />

mixtă, din punct de vedere al clasificării sistemelor text-to-speech, îmbinând caracteristici ale<br />

abordării bazate pe concatenarea formelor de undă şi ale abordării bazate pe reguli.<br />

Aşa cum se observă din figura 7.2, sistemul efectuează mai întâi o preprocesare şi o<br />

analiză sintactică a textului iniţial pentru a-l aduce la o formă ortografică corectă. Apoi are loc<br />

determinarea unităţilor lingvistice de bază (în cazul de faţă silabele) şi a informaţiilor prozodice<br />

segmentale (accentul cuvintelor). Pe baza acestor elemente sunt regăsite unităţile acustice din<br />

baza de date vocală care corespund cel mai bine unităţilor lingvistice detectate. Segmentele<br />

acustice sunt concatenate şi apoi are loc sinteza propriu-zisă a vorbirii.<br />

Tot în figura 7.2 se prezintă şi etapele fazei de construcţie a bazei de date vocale. Astfel,<br />

semnalul vocal este mai întâi normalizat şi descompus în secvenţe de regiuni cu proprietăţi<br />

distincte. Secvenţele de regiuni sunt puse în corespondenţă cu fonemele limbii române, urmând<br />

apoi extragerea din semnalul vocal a grupurilor de foneme care alcătuiesc unităţile acustice, în<br />

cadrul unui proces semiautomat. Unităţile acustice se memorează în final în structura ierarhică a<br />

bazei de date.<br />

243

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

Saved successfully!

Ooh no, something went wrong!