Teza doctorat (pdf) - Universitatea Tehnică
Teza doctorat (pdf) - Universitatea Tehnică Teza doctorat (pdf) - Universitatea Tehnică
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
- Page 210 and 211: 192 Cap. 6. Metode de sinteză de v
- Page 212 and 213: 194 Cap. 6. Metode de sinteză de v
- Page 214 and 215: {LIT}+(le|lui)/{SEP} {/*peştele*/
- Page 216 and 217: {LIT}+{CONS}e/{SEP} {/* merge */ Ca
- Page 218 and 219: 200 Cap. 6. Metode de sinteză de v
- Page 220 and 221: 202 Cap. 6. Metode de sinteză de v
- Page 222 and 223: 204 Cap. 6. Metode de sinteză de v
- Page 224 and 225: silaba: SILABA { ProcesareSilaba($1
- Page 226 and 227: 208 Cap. 6. Metode de sinteză de v
- Page 228 and 229: 210 Cap. 6. Metode de sinteză de v
- Page 230 and 231: 212 Cap. 6. Metode de sinteză de v
- Page 232 and 233: 214 Cap. 6. Metode de sinteză de v
- Page 234 and 235: 216 Cap. 6. Metode de sinteză de v
- Page 236 and 237: 218 Cap. 6. Metode de sinteză de v
- Page 238 and 239: 220 Cap. 6. Metode de sinteză de v
- Page 240 and 241: 222 Cap. 6. Metode de sinteză de v
- Page 242 and 243: -----------------------------------
- Page 244 and 245: 6.4.6. Proiectarea bazei de date vo
- Page 246 and 247: 228 Cap. 6. Metode de sinteză de v
- Page 248 and 249: 6.4.6.3. Organizarea bazei de date
- Page 250 and 251: 232 Cap. 6. Metode de sinteză de v
- Page 252 and 253: silabă conţinând litera ă silab
- Page 254 and 255: 236 Cap. 6. Metode de sinteză de v
- Page 256 and 257: 238 Cap. 6. Metode de sinteză de v
- Page 258 and 259: 240 Cap. 6. Metode de sinteză de v
- Page 262 and 263: Figura 7.2. Sistemul de sinteză a
- Page 264 and 265: 1) Crearea listei de silabe Cap. 7.
- Page 266 and 267: Cap. 7. Proiectarea sistemului de s
- Page 268 and 269: Cap. 7. Proiectarea sistemului de s
- Page 270 and 271: Cap. 7. Proiectarea sistemului de s
- Page 272 and 273: Cap. 7. Proiectarea sistemului de s
- Page 274 and 275: Baza de date vocală Cap. 7. Proiec
- Page 276 and 277: 1 Procesare Separator Procesare Cuv
- Page 278 and 279: Cap. 7. Proiectarea sistemului de s
- Page 280 and 281: Cap. 7. Proiectarea sistemului de s
- Page 282 and 283: Cap. 7. Proiectarea sistemului de s
- Page 284 and 285: 8. Concluzii finale Cercetările ef
- Page 286 and 287: 268 Cap. 8. Concluzii finale 11. A
- Page 288 and 289: 270 Cap. 8. Concluzii finale percep
- Page 290 and 291: 272 Cap. 8. Concluzii finale b) pen
- Page 292 and 293: 274 Cap. 8. Concluzii finale - nive
- Page 294 and 295: Bibliografie [And88] André-Obrecht
- Page 296 and 297: 278 Bibliografie Quality and Testin
- Page 298 and 299: 280 Bibliografie [Giu06] Giurgiu M.
- Page 300 and 301: 282 Bibliografie [Nag05] Nageshwara
- Page 302 and 303: 284 Bibliografie Research Institute
- Page 304 and 305: Anexa 2. Silabele din setul S2 dup
- Page 306 and 307: Anexa 2. Silabele din setul S2 dup
- Page 308 and 309: Anexa 3. Silabe din setul S3 după
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