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

178 Cap. 6. Metode de sinteză de voce - VT reprezintă vectorul de trăsături al unităţii fonetice, - L[i], C[i] reprezintă parametrii lingvistici ai unităţii, - F0, A(n), D, X(n) reprezintă parametrii de semnal, - ΔF(n), ΔA(n), ΔD reprezintă parametrii prozodici ai segmentului considerat, toţi parametrii având semnificaţia indicată mai sus. 6.3.2.3. Potrivirea unităţilor candidat cu unităţile ţintă Paragraful curent se bazează pe lucrările [Hun96] şi [Mob00]. Potrivirea unităţilor candidat cu unităţile ţintă se face în timpul rulării (run-time), după cum urmează: Pentru distorsiunea unităţilor (Target Cost) se compară trăsăturile ce derivă din textul de sintetizat cu trăsăturile unităţilor din baza de date vocală. Nu se iau în calcul toate trăsăturile care apar în vectorul de trăsături ( 6.16), ci doar cele care se pot determina în timpul rulării. De exemplu, pentru unităţile ţintă, ce derivă din textul de intrare, nu se pot determina parametrii de semnal. Text [VT-ţintă] [VT-candidat] Figura 6.7. Potrivirea unităţii fonetice cu unităţile candidate Pentru distorsiunea de concatenare ( Concatenation Cost) se iau în considerare toate trăsăturile unităţilor candidate. Acestea sunt integrate în baza de date, fiind calculate în cadrul unui proces off-line. ma ma ma ma ma [VT (`ma`)] [VT (`şi`)] [VT (`na`)] ma ma ma ma Figura 6.8. Potrivirea unităţilor de concatenat şi şi şi şi na na na na Baza de date vocală

179 Cap. 6. Metode de sinteză de voce În vederea calculării costurilor, fiecare unitate din baza de date va fi asociată cu o stare într-un graf. Fiecare stare are asociat un Target Cost, iar fiecare tranziţie în graf are asociat un Concatenation Cost. În figura 6.9, Tij reprezintă costul unităţii ( Target Cost), iar reprezintă costul concatenării (Concatenation Cost). Figura 6.9. Calculul costurilor pentru selecţia unităţilor i k C ij ) 1 ( De exemplu, în cazul folosirii silabelor ca unităţi fonetice de bază, nodurile grafului conţin toate variantele de silabe din baza de date care sunt asociate cuvântului căutat. Astfel, pentru cuvântul maşină, prima coloană a grafului conţine toate variantele din baza de date pentru silaba ma, a doua coloană conţine variantele silabice pentru şi, iar a treia coloană – silabele nă . Fiecare silabă sau nod în graf are asociat un cost de unitate care exprimă calitatea şi proprietăţile prozodice ale unităţii (silabei), iar tr anziţiile în graf au asociate un cost de tranziţie sau concatenare, care exprimă calitatea îmbinării dintre două silabe. Selecţia optimă a unităţilor pentru sinteza textului dorit va fi echivalentă cu găsirea căii care minimizează costul total al parcurgerii grafului. Costul total are expresia : COST N i1 ( T C ) , j 1 , ni; k 1 , ni1 (6.17) ij ( i1 ) k ij unde : - COST este costul total al parcurgerii grafului, - i este indicele de nivel al grafului, - N este numărul total de nivele, - j exprimă indicele unităţii curente alese de pe nivelul i, - k exprimă indicele unităţii alese de pe nivelul următor (i+1), - ni este numărul de noduri de pe nivelul i, - Tij este costul unităţii curente de pe nivelul i, - S T11 T12 21 C13 T13 22 C12 22 C11 22 C13 21 C11 23 C13 21 C12 23 C12 i k C ij ) 1 ( este costul de tranziţie dintre unitatea curentă şi unitatea următoare. Aşadar algoritmul de găsire a căii din graf care minimizează acest cost va duce la selecţia optimă a unităţilor (numită în literatură unit selection). 23 C11 T21 T22 T23 F

178<br />

Cap. 6. Metode de sinteză de voce<br />

- VT reprezintă vectorul de trăsături al unităţii fonetice,<br />

- L[i], C[i] reprezintă parametrii lingvistici ai unităţii,<br />

- F0, A(n), D, X(n) reprezintă parametrii de semnal,<br />

- ΔF(n), ΔA(n), ΔD reprezintă parametrii prozodici ai segmentului considerat, toţi<br />

parametrii având semnificaţia indicată mai sus.<br />

6.3.2.3. Potrivirea unităţilor candidat cu unităţile ţintă<br />

Paragraful curent se bazează pe lucrările [Hun96] şi [Mob00].<br />

Potrivirea unităţilor candidat cu unităţile ţintă se face în timpul rulării (run-time), după<br />

cum urmează:<br />

Pentru distorsiunea unităţilor (Target Cost) se compară trăsăturile ce derivă din textul de<br />

sintetizat cu trăsăturile unităţilor din baza de date vocală. Nu se iau în calcul toate trăsăturile care<br />

apar în vectorul de trăsături ( 6.16), ci doar cele care se pot determina în timpul rulării. De<br />

exemplu, pentru unităţile ţintă, ce derivă din textul de intrare, nu se pot determina parametrii de<br />

semnal.<br />

Text<br />

[VT-ţintă] [VT-candidat]<br />

Figura 6.7. Potrivirea unităţii fonetice cu unităţile candidate<br />

Pentru distorsiunea de concatenare ( Concatenation Cost) se iau în considerare toate<br />

trăsăturile unităţilor candidate. Acestea sunt integrate în baza de date, fiind calculate în cadrul<br />

unui proces off-line.<br />

ma<br />

ma<br />

ma<br />

ma<br />

ma<br />

[VT (`ma`)] [VT (`şi`)] [VT (`na`)]<br />

ma<br />

ma<br />

ma<br />

ma<br />

Figura 6.8. Potrivirea unităţilor de concatenat<br />

şi<br />

şi<br />

şi<br />

şi<br />

na<br />

na<br />

na<br />

na<br />

Baza de date<br />

vocală

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

Saved successfully!

Ooh no, something went wrong!