tema: sinteza govora - etfbl · • eksterno podesivi jezi čno-nezavisni moduli: leksikoni,...

22
Elektrotehnički fakultet Banja Luka SEMINARSKI RAD iz predmeta MULTIMEDIJALNI SISTEMI TEMA: Sinteza govora Studenti: Dino Kosić, 40/02 Dijana Vuković, 96/03

Upload: others

Post on 20-Oct-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

  • Elektrotehnički fakultet Banja Luka

    SEMINARSKI RAD iz predmeta

    MULTIMEDIJALNI SISTEMI

    TEMA: Sinteza govora

    Studenti: Dino Kosić, 40/02

    Dijana Vuković, 96/03

  • 2

    Sadržaj

    1. Uvod ............................................................................................. 3 2. Teoretske osnove........................................................................ 4

    2.1. Govor ..................................................................................... 4 2.2. Sinteza govora....................................................................... 5

    2.2.1.Načini sinteze govora....................................................... 6 3. Pregled postojećih alata za sintezu govora............................... 7

    3.1.MBrola..................................................................................... 7 3.2. Festival................................................................................... 7 3.3. WinSpeech............................................................................. 8 3.4. BaBel Technologies .............................................................. 8

    3.4.1. Infovox Desktop .............................................................. 9 3.5. Gnuspeech............................................................................. 9 3.6. VoiceText ............................................................................. 10 3.7. Loquendo Text-to-Speech (TTS) ........................................ 11 3.8. TextAloud............................................................................. 12 3.9. TextToSpeech Kit ................................................................ 13 3.10. AlfaNum ............................................................................. 13 3.11. FIS ...................................................................................... 14

    4. Naš doprinos ............................................................................. 16 4.1. Program SintezaGovora...................................................... 17

    5. Literatura.................................................................................... 22

  • 3

    1. Uvod U okviru ovog rada urađeno je sljedeće:

    o Napravljen je software koji omogućava:

    1. Čitanje telefonskog broja iz baze podataka – simulacija rada Službe informacija

    - Opcija pretraživanja po imenu i prezimenu - Opcija izbora između muškog i ženskog glasa

    Ovaj dio će biti potpuno funkcionalan.

    2. Pomoć hendikepiranim osobama pri radu na tastaturi, tj. „čitanje“ pritisnutog tastera, takođe sa opcijom izbora muškog i ženskog glasa.

    3. Čitanje dužeg teksta sintezom riječi na osnovu snimljenih glasova.

    Ovaj dio će biti djelimično funkcionalan, tj. zasnivaće se na neegzaktnoj procjeni učešća pojedinih glasova u riječima. Podaci za potrebne parametre će biti uzeti na osnovu mini-statistike i slobodne procjene autora.

    o Istorijski pregled sličnih postignuća; o Definisanje teoretske podloge za dalje istraživanje (djelimična praktična

    realizacija data kao treći dio software-a). ČLANOVI GRUPE I NJIHOVI ZADACI:

    Dijana Vuković, 96/03, IV godina – Računarstvo i informatika (Informacione tehnologije)

    Zadatak: Dva funkcionalna dijela software-a (1 i 2), GUI za software, istorijski pregled, ženski glas.

    Dino Kosić, 40/02, V godina – Računarska tehnika i automatika

    Zadatak: Teoretska podloga i praktični primjer (3), snimanje i obrada (amaterska) zvuka, muški glas.

    KORIŠTENI ALATI: Razvoj software-a: Delphi 7 Snimanje i obrada zvuka: Sound Forge 7.0

  • 4

    2. Teoretske osnove

    2.1. Govor

    Govor predstavlja osnovni način komunikacije među ljudima. Govorom čovjek prenosi svoje misli i osjećanja drugim ljudima. Čovjekov vokalni aparat je složen i obuhvata mnoge organe: pluća, dušnik, grkljan, glasne žice, usnu šupljinu sa jezikom, zubima i usnama, i nosnu šupljinu. Govor, posmatrano kao zvučni signal, nosi u sebi mnoštvo informacija. Osim onoga što je rečeno, u njemu su sadržane informacije o govorniku, njegovom polu, starosti, porijeklu, a nerijetko i zdravstvenom i emocionalnom stanju. Pri razumjevanju onog što je rečeno, čovjek koristi poznavanje jezika i razumjevanje konteksta. Percepcija govora nije čisto auditorni proces, odnosno, leksička segmentacija nije urođena, već naučena sposobnost. Registrovanje dobijenih zvukova prvi je korak u percepciji govora. Mozak mora da odredi da li se zaista radi o zvukovima koji pripadaju govoru, jer se govor u mozgu obrađuje na drugačiji način, nego što je to slučaj sa muzikom ili ambijentalnim šumom. Mozak takođe mora da odredi da li je u pitanju jezik koji slušalac razumije. Potom se vrši fonetska analiza sadržaja, i to u realnom vremenu, odnosno, ne čeka se da govornik završi da bi se dobila informacija o tome koji su glasovi izgovoreni. Pri ovome treba odbaciti negovorne elemente, kao što su: uzdasi, nakašljavanje i sl. Rekonstrukcija sadržaja govorne cjeline vrši se na osnovu niza dobijenih glasova, ali vodeći računa i o semantičkom kontekstu, tako da će govorna cjelina najvjerovatnije biti ispravno rekonstruisana po značenju, čak i ako određeni glasovi u njoj nedostaju ili su manje ili više oštećeni prilikom artikulacije, što je u spontanom govoru čest slučaj.

  • 5

    2.2. Sinteza govora

    Sinteza govora predstavlja operaciju pretvaranja pisanog ulaza u govorni izlaz. Ulaz može biti u obliku grafemske, ortografske ili fonemske skripte, zavisno od izvora. Jednostavnije rečeno, sinteza govora je umjetno generisanje ljudskog govora. Sistemi koji se za to koriste nazivaju se sintetizatori govora, a mogu biti implementirani kao softver ili hardver. Sinteza govora često se kraće naziva Text-to-Speech (TTS), s obzirom na to da upravo i pretvaraju tekst u govor. Zadatak sinteze govora je da na osnovu ulazne informacije u tekstualnom obliku generiše govorni signal razumljiv čovjeku. To podrazumjeva i da bi sintetizovan govor morao da zvuči prirodno, odnosno, da bi trebalo da posjeduje intonaciju karakterističnu za prirodan ljudski govor. Primjene sintetizatora govora su mnogobrojne. Ovakvi sistemi su u aplikacijama računarske telefonije nezamjenljivo sredstvo za pružanje informacija koje se često mijenjaju i nepraktično je angažovati govornika koji bi trebalo da ih pročita (npr. e-mail). Sintetizatori govora su od izuzetne pomoći i osobama sa invaliditetom – pogotovo onima sa oštećenim govorom, koje zahvaljujući ovakvim sistemima mogu gotovo normalno da komuniciraju – čak i telefonom, kao i slijepim osobama, kojima je omogućeno da se samostalno služe računarom i na taj način se lakše uključe u svakodnevni život. Postoji nekoliko algoritama za sintezu govora. Izbor algoritma ovisi o operaciji koju želimo izvršiti. Najjednostavniji način je jednostavno snimiti glas osobe koja govori željene izraze, ali to predstavlja samo ograničen izvor fraza i rečenica. Kvaliteta zavisi o načinu snimanja. Sofisticiraniji, ali lošije kvalitete su algoritmi koji dijele govor u manje jedinice. Najčešće korištena jedinica je fonem, najmanja lingvistička jedinica. Zavisno od jeziku, postoji oko 35-50 fonema u zapadno-evropskim jezicima. Problem je u kombinovanju fonema, jer tečan govor zahtjeva tečan prelaz između elemenata (fonemskih jedinica). Razumljivost je stoga manja, no mala je i zahtjevnost memorije. Rješenje ovog problema je korištenje difona. Umjesto dijeljenja u prelazima, stanka se radi u sredini fonema, što ostavlja prelaze netaknute. To daje oko 400 elemenata i kvaliteta raste. Što su duže te jedinice, postoji više elemenata, ali uz potrebnu memoriju raste i kvaliteta. Ostale jedinice koje su u širokoj primjeni koriste su: poluslogovi, slogovi, riječi ili njihova kombinacija.

  • 6

    2.2.1.Načini sinteze govora Postoje dva glavna načina za generisnje talasnih oblika umjetnog govora:

    • lančana sinteza (engl. Concatenative synthesis) • formant sinteza (engl. Formant synthesis)

    Lančana sinteza se bazira na spajanju (ili nizanju) segmenata snimljenog govora. Uopšteno, lančana sinteza generiše umjetni glas najsličniji prirodnom ljudskom govoru. Ipak, prirodne varijacije u govoru i automatizovane tehnike za segmentaciju talasnih oblika ponekad rezultiraju zastajkivanjem izlaza umanjujući prirodnost glasa. Postoje tri glavna podtipa lančane sinteze: jedinično selektivna sinteza, difona sinteza i područno specifična domena. Formant sinteza ne koristi uzorke ljudskog glasa, već umjetni glas kreira korištenjem akustičnog modela. Parametri kao što su temeljna frekvencija, zvučnost i razina šuma su varirani tokom vremena da bi stvorili talasni oblik umjetnog govora. Mnogi sistemi temeljeni na formant sintezi generišu umjetni robotski glas i izlaz nikad ne bi mogao biti zamijenjen s glasom pravog čovjeka. Maksimalna prirodnost nije uvijek cilj tih sistema, stoga formant sinteza ima nekih prednosti u poređenju s lančanom metodom. Ostali načini sinteze (manje korišteni):

    • artikulacijska sinteza • hibridna sinteza • HMM-bazirana sinteza (Hidden Markov Model)

  • 7

    3. Pregled postojećih alata za sintezu govora

    3.1.MBrola

    MBROLA je visoko-kvalitetni, difono bazirani sintetizator govora, besplatno dostupan. Ostvaren je od TCTS laboratorija fakulteta Faculte Polytechnique de Mons (Belgija) s ciljem da osigura set govornih sintetizatora za što je moguće više jezika i svima dostupnima za nekomercijalnu primjenu. Temelj MBrola projekta je MBROLA govorni sintetizator baziran na spajanju difona. Uzima listu fonema kao ulaz zajedno s prozodičnim informacijama (trajanje fonema i po dijelovima linearan opis pitch-a) i generiše 16-bitne (linearne) uzorke govora na frekvenciji uzorkovanja korištene baze podataka difona. MBrola zapravo NIJE govorni sintetizator, jer ne može raditi sa ulazom u obliku pisanog teksta. Baza podataka difona pripojena MBrola formatu potrebna je za rad sintetizatora. Moguće je poslati vlastitu snimku govora koja će biti spremljena u Mbrola bazu podataka za sintezu. Trenutno postoji baza podataka za sljedeće jezike: američki engleski, brazilski, portugalski, bretonski, britanski engleski, francuski, njemački, grčki, rumunski, španski i švedski.

    3.2. Festival

    Festival je najkompletniji besplatan sistem za sintezu uz opsežan priručnik. U cjelini nudi kompletno pretvaranje teksta u govor uz različite API-e (Application Programming Interface), kao i okruženje za razvoj i istraživanje tehnika sinteze govora. Sistem je napisan u C++-u s komandnim interpretatorom za generalnu kontrolu baziranom na Scheme programskom jeziku. Višejezičan je, trenutno podržava engleski (američki i britanski) i španski. Na home page stranici mogu se pronaći demo snimke, kompletni priručnik i pristup download stranici. Uključuje kompletan izvor i dokumentaciju (FSF texinfo format), leksikone i govornu bazu podataka za pretvaranje (britanskog) engleskog teksta u govor. KARAKTERISTIKE:

    • engleski (britanski i američki) i španski text-to-speech • eksterno podesivi jezično-nezavisni moduli: leksikoni, pravila pretvaranja

    slova u glas, tokenizacija, intonacija i trajanje, tekst modovi, odabir tipa sinteze difon/jedinica

    • waveform sintetizatori • difono bazirani • MBrola podrška • prenosiva distribucija, on-line dokumentacija

  • 8

    3.3. WinSpeech

    WinSpeech je tekst-u-govor aplikacija koja čita tekst i proizvodi govor na audio izlazu. Ima osnovne alate za uređenje teksta, omogućen je govor iz trenutno napisanog rada, podržava DDE server koji omogućava drugim Windows aplikacijama da šalju tekst za izgovor, ima mod rada za učenje koji pruža audio instrukcije za vrijeme rada programa, te alate za uređenje rječnika za proizvoljni odabir izgovora. WinSpeech je shareware program proizveden od PCWholeWare. WSPLIB tekst-u-govor DLL je biblioteka govornih funkcija za razvoj. KARAKTERISTIKE:

    • file mod – čitanje ASCII teksta ili Windows WRITE (.WRI) datoteka • clipboard mod - rad s drugim Windows aplikacijama kao dodatna govorna

    usluga • DDE server mod – radi kao govorni alat, dozvoljava ostalim aplikacijama

    da iskažu tekst preko DDE kanala za govor • command line mod – čita nizove podataka ili datoteke specificirane u

    parametrima komandne linije za vrijeme podizanja (start up) programa • alat za uređivanje osnovnog teksta: učitaj, spremi, kopiraj, zalijepi i edituj

    tekst • audio vodič s instrukcijama za vrijeme rada programa • podesivi pitch i brzina izgovora • alat za uređivanje rječnika za prilagođenje izgovora • driver za interni govorni uređaj može se instalirati za vrijeme instalacije

    zvučne kartice PC-a

    3.4. BaBel Technologies

    BaBel Technologies nudi vrhunsku sintezu govora zahvaljujući Multi Band Resynthesis OverLap Add tehnici (MBrola). Nova tehnologija sinteze je patentirana 1996 g. i nagrađena je s European Information Technology Prize iste godine za svoj inovativni pristup tzv. spajanoj sintezi govora. Visoko kvalitetna sinteza govora uz malu zahtjevnost CPU-a: nova generacija visoko-kvalitetnih sintetizatora govora više ne ostavlja dojam slušaocu da je zvučnik uređaj. Riječi su glatko izgovarane vremenski baziranim difonim spajajućim algoritmom. Ovaj algoritam je prvi koji dozvoljava izglađivanje spektra uz zadržavanje vrlo niskih računarskih troškova. Nije potreban DSP. Standardni Pentium 100 može pokrenuti sintetizator 20 puta brže prema realnom vremenu. Višejezična sinteza govora: MBrola tehnika koristi baze podataka zavisne o jeziku i govorniku da bi proizvela bilo koju rečenicu na datom jeziku i s datim glasom. MBrola govorni sintetizator je dostupan za engleski, njemački, francuski, nizozemski, brazilski portugalski, španski, švedski i rumunski jezik. Ostali jezici su trenutno u izradi.

  • 9

    Više jezika i glasova na zahtjev: ova usluga uključuje razvoj skrojenih glasova i jezika. Difona baza podataka tipične je veličine do 5Mb i, uz korištenje prednosti MBrola formata, ovo specifično kodiranje kompresira baze podataka u omjeru 7:1.

    3.4.1. Infovox Desktop Infovox Desktop je difono bazirani BaBel Technologies TTS alat razvijen uz pomoć biblioteke unaprijed snimljenih ljudskih izgovorenih difona za što prirodniji sintetizovani glas. Nudi neograničenu primjenu aplikacijskih mogućnosti za razvojne programere softvera koji žele koristiti sintetički govor kao nositelj informacije, i za one koji žele integrisati sintetički govor u svoje proizvode ili usluge. Trenutno je dostupan za: britanski engleski, finski, islandski, španski, danski, francuski, italijanski, nizozemski, švedski, njemački i norveški jezik. KARAKTERISTIKE:

    • difono bazirani TTS softver, uz mogućnost formant sinteze • korisnički leksikon i podrška • poboljšani Voice Manager (upravljač glasom) • „Key Speaker“ funkcija slovka i čita bilo koji Windows program • grafički ekvalizator • varijabilna brzina čitanja

    3.5. Gnuspeech

    Gnuspeech je prilagodljiv TTS paket, baziran na real-time, artikularnoj, upravljivoj sintezi govora. Konvertuje tekstualne nizove podataka u foneme podržane rječnikom za izgovor, po pravilima pretvaranja slova u zvuk, ritma i intonacije. Transformiše foneme u parametre za nisku razinu pretvaranja artikulacijskog sintetizatora i zatim proizvodi artikulatorni model ljudskog glasa u obliku izlaza pogodnog za standardne audio izlaze. Gnuspeech se još uvijek razvija. KARAKTERISTIKE:

    • TRM model (Tube Resonance Model = rezonantni cijevni model) ljudskog vokalnog trakta (poznat i kao waveguide model) koji vrlo dobro imitira fizičke karakteristike trakta

    • kontrolni model za TRM baziran na analizi osjetljivosti formanta koji omogućava preciznu specifikaciju relevantne konfiguracije vokalnog trakta za govor i uključuje niskorazinski artikulatorni model uz mali broj parametara i niski bit rate

  • 10

    • baze podataka specifikuju artikulaciju i kontrolu dinamike koje su potrebne za produkciju engleskog jezika iz povećanog fonemskog ulaza; neki francuski vokali su također uključeni

    • «Monet» - GUI-bazirani sistem za kreiranje i uređivanje baze podataka omogućava upravljanje i mijenjanje fonemičkih podataka i dinamičkim pravilima

    • 70000+ riječi u rječniku engleskog izgovora s pravilima deklinacije za množinu i priloge; rječnik takođe sadrži informacije o govornim cjelinama za gramatičku analizu i uključuje 6000 osobnih imena

    • pravila pretvaranja slova u zvuk koja se bave slovkanjem i riječima koje nisu u rječniku

    • alati za upravljane rječnikom i iznošenje analize govora • «Synthesizer» - GUI-bazirana aplikacija koja dozvoljava

    eksperimentisanje sa samostalnim TRM-om; svi parametri su varijabilni, a izlaz je nadziran i analiziran

    3.6. VoiceText

    VoiceText je vodeći softver za sintetiziovanje umjetnog glasa iz teksta. Dostupan je u konfiguraciji za širok raspon ugrađenih uređaja, desktop i mrežnih/serverskih aplikacija, što ga čini vrlo fleksibilnim visoko-kvalitetnim TTS rješenjem na današnjem tržištu. Dostupan je na US engleskom, korejskom, japanskom i mandarin kineskom. KARAKTERISTIKE:

    • prirodno zvučeći glas i čist izgovor, izlaz je dobro razumljiv • konfigurabilan je za upotrebu u vrlo širokom rasponu ugrađenih, desktop i

    mrežnih/serverskih aplikacija, velika fleksibilnost primjene • višejezičnost – američki engleski, korejski, japanski i mandarin kineski,

    kroz jezike je dostupna kolekcija od 11 izvornih jezika • velik, proširiv rječnik – hiljade izgovora su uključeni u standardni rječnik

    svakog podržanog jezika, omogućeno je podešenje rječnika stoga razvojni programeri mogu prilagoditi izgovor simbol, skraćenica i novounesenih izraza

    • ekspresivna kontrola – pitch, brzina, glasnoća i pauze su podesive dinamički i kao standardne postavke

    • predobrada ulaznog teksta –VoiceText automatski obrađuje specijalne ulaze kao što su datumi, vrijeme, skraćenice u adresama, te rečenice na kombinovanim jezicima, nove grupe mogu biti dodate korištenjem podesivih pravila

    • dizajn sistema – VoiceText sintetizira govor u sub-realnom vremenu i podržava višenizne i višekanalne arhitekture; opcionalni djelitelj je dostupan za mrežne/serverske konfiguracije

  • 11

    • fleksibilan format izlaza, uključujući 8kHz/16kHz uzorkovane, linearno 8-bit/16-bit PCM, 8-bit mu-law/a-law, ADPCM, Windows .wav i dr.

    • podrška za API-e (Application Programming Interface) – podržava SAPI4, SAPI5, C/C++, COM i Java-bazirane API-e

    3.7. Loquendo Text-to-Speech (TTS)

    Loquendo TTS softvare sintetizira glas vrlo blizak prirodnom za dinamičke podatke, te za serverski bazirane, multimedijalne, PDA, ugrađene i multimodalne glasovne aplikacije. Loquendo „Unit Selection“ lančana tehnika primjenjiva je na vrlo širok raspon glasovnih uzoraka pomoću kojih se mogu stvoriti novi visoko-kvalitetni glasovi. Osigurava Loquendovo tržišno vodstvo u kvaliteti, učinkovitosti, prenosivosti, prirodnoj boji glasa i intonaciji, te točnosti izgovora. Omogućava: čitanje e-maila, real-time vijesti, pristup korporacijskim dokumentima, automotivnu telematiku (informacijska i komunikacijska tehnologija), primjenu na bilo koju ugrađenu aplikaciju Loquendo TTS baza ekspresivnih glasova i osobnosti iz cijelog svijeta je stalno rastuća. Efikasne razvojne metode garantuju brzu ponudu novih visoko-kvalitetnih glasova i jezika. Loquendo takođe podržava izgradnju specifičnih glasova koji se podudaraju sa određenim pojedincem. Loquendo glasovi su čisti, prirodni i tečni i obogaćeni su sa repertoarom tzv. ekspresivnih znakova: pozdravi i eksklamacije, interjekcije i paralingvistički događaji, koji sugerišu ekspresivnu namjeru (potvrda, oklijevanje, zahvala, itd.). Loquendo TTS algoritam je vrlo efikasan, pa su zahtjevi na procesor minimizirani i garantovan je vrlo brz odgovor. Može savremeno sintetizirati različite jezike i glasove, te po želji prelaziti s jednog jezika na drugi i za vrijeme rada (Voice switching). Loquendo TTS Director daje razvojnim programerima potpunu kontrolu nad vlastitim glasovnim aplikacijama da mogu ekstenzivno poboljšati glasovne mogućnosti. Mixed Language Capability omogućava ispravan izgovor stranih riječi bez potrebe za promjenom trenutnog glasa i jezika. Audio Mixer omogućava potpunu kontrolu audio izvora (muzika ili zvuk, različito samplani i/ili kodirani) intermiksanje, sinhronizaciju ili repeticiju sa umjetnim (sintetiziranim) govorom. Expressive cues omogućava TTS korisnicima da proizvedu glas vrlo približan vlastitom glasu. Pronunciation lexicon osigurava da bilo koji specijalni vokabularni izraz, skraćenice, akronimi, čak i razlike u izgovoru narječja, zvuči upravo onako kako je developer to zamislio. Karakteristike svakog glasa (npr. pitch, brzina izgovora, glasnoća) mogu se vrlo fino regulisati i kontrolisati. Specijalni formati kao što su telefonski brojevi, valute i e-mail zaglavlja su ispravno izgovoreni. Ima ugrađeni detektor jezika koji automatski prepoznaje jezik svakog teksta. Dostupan je za: italijanski, španski, francuski, njemački, brazilski, portugalski, mandarin kineski, nizozemski, britanski i američki engleski, grčki, meksički, čileanski, američki španski, argentinski, švedski i katalanski jezik.

  • 12

    Ukratko: s Loquendo TTS jednostavno je dobiti sintetizirani glas upravo kako ga želite! KARAKTERISTIKE:

    • leksikon izgovora – korisniku moguće definisati izgovor (akronimi, strani nazivi, itd.)

    • Mixed Language Capability • Audio Mixer • dinamička izmjena između više različitih glasova • e-mail predobrada • fleksibilna glasovna kontrola – kreiranje specijalnih efekata, mijenjanje

    brzine izgovora i pitch-a • prilagodljivi glasovi • prilagodljivi leksikon i baza podataka za Automotive • ekspresivni TTS

    3.8. TextAloud

    TextAloud je TTS softver koji koristi sintezu govora za pretvaranje ulaznog tekstualnog dokumenta u govor u audio formatu za upotrebu u različite svrhe, npr. slušanje na PC-u, pretvaranje u MP3 ili WMA datoteke koje se mogu koristiti na prenosnim uređajima kao što su iPod, PocketPC ili CD playeri. Omogućiće produktivniji rad na kompjuteru (čitanje e-maila, web stranica, izvještaja i dr.) ili jednostavno služiti za zabavu. TextAloud je praktičan i jednostavan čitač teksta. KARAKTERISTIKE:

    • čitanje e-maila, web stranica, izvještaja,... • pretvaranje teksta u govor, MP3 ili WMA datoteke • opcionalan izbor rada s AT&T Natural Voices, NeoSpeech Voices ili

    Cepstral Voices • Multi-Article mod rada – neograničen broj otvorenih dokumenata • podesivi trenutno odabrani glas, čak i za vrijeme govora, podesivi pitch • podrška za tekst dokumente (.txt), rich text dokumente (.rtf), Microsoft

    Word dokumente (.doc), lokalne HTML dokumente i lokalne PDF dokumente (.pdf)

    • Batch File Converter – omogućava pretvaranje većeg broja tekstualnih dokumenata u audio format

    • jednostavna korekcija teksta pomoću Proofread HotKey • Internet Explorer Plug-In omogućava jednostavnije čitanje teksta na webu • podesiva frekvencija uzorkovanja (sample rate) pri stvaranju wave

    dokumenata • jednostavan je za upotrebu

  • 13

    3.9. TextToSpeech Kit

    TextToSpeech Kit radi neograničeno pretvaranje engleskog teksta u sintetizovani govor u stvarnom vremenu. Dolazi u 2 paketa: Developer kit (razvojni alat) i User Kit (korisnički alat). Developer Kit omogućava stvaranje test aplikacija koje sadrže TTS. User Kit je podskup Developer Kit-a, i takođe podržava aplikacije koje sadrže TTS. KARAKTERISTIKE:

    • kontrola brzine govora, median pitcha, stereo balansa, glasnoće i intonacijskog tipa

    • može biti izgovoren tekst bilo koje dužine, opcionalno poruka može biti na čekanju kod višestrukih aplikacija

    • real-time kontrole kao npr. pauza, nastavak i brisanje • izgovor se izvodi prema glavnom rječniku koji ima otprilike 100 000 ručno

    uređenih izgovora • uključuje TTS server, TTS objekte, editore za izgovaranje, nekoliko

    primjera, fonetička slova, primjere kodova i dokumentaciju proizvođača

    3.10. AlfaNum

    Tim sa Fakulteta tehničkih nauka (FTN) u Novom Sadu, predvođen dr Vladom Delićem, sebi je za cilj zacrtao razvoj alata za sintezu govora za srpski jezik, i to bez korištenja ikakvog posebnog hardvera pošto su današnji kompjuteri dovoljno jaki da bi sve moglo da se obavi softverski. Vremenom je ovaj tim prerastao i u posebno preduzeće, AlfaNum d.o.o, koje se bavi razvojem i plasmanom govornih tehnologija. Rezultati rada tima za sada su pretočeni u dva zaokružena sistema:

    • AlfaNumASR je sistem za prepoznavanje kontinualnog govora (dakle, može da prepozna i čitave rečenice, a ne samo pojedinačne riječi). Sistem radi nezavisno od govornika, što znači da ne mora posebno da se obučava za prepoznavanje svakog novog govornika, a to ga čini idealnim za primene u, primera radi, govornim automatima za pružanje informacija pozivaocima. U rječniku od pedeset riječi sistem prepoznaje riječi prenijete preko telefonske linije sa preko 98% tačnosti (preko 99% na snimku studijskog kvaliteta). Kod rječnika sa većim brojem riječi tačnost je manja, ali je efikasan govorni automat najčešće moguće osmisliti tako da se i ne očekuje prepoznavanje više od desetak riječi. Pošto sistem vrši fonetsko prepoznavanje, vrlo lako se može naučiti da prepoznaje i nove riječi. Osmišljena je i posebna tehnika prepoznavanja niza cifara sa tačnošću većom od tačnosti prepoznavanja svake od njih pojedinačno, čime se dostiže tačnost uporediva sa ljudskom, a sistem vodi računa i o izrazima

  • 14

    kao što su „molim vas”, „hmmm” i sličnim, koje korisnici često izgovaraju, a koji nisu od značaja za tok aplikacije. Na Pentium 4 konfiguraciji na 2 GHz ovaj automat može istovremeno da opslužuje 50 linija, što ga čini neuporedivo jeftinijim od ljudskih operatera. AlfaNumASR već koriste „Telebank” sistem Poštanske štedionice, Republička uprava javnih prihoda u Novom Sadu, kao i Generalštab Vojske Srbije i Crne Gore.

    • Ne manje složen problem jeste sinteza govora za koju je zadužen sistem AlfaNumTTS. U odnosu na druge jezike, sintezu govora na srpskom jeziku donekle olakšava to što se riječi izgovaraju onako kako se i pišu, ali se, nažalost, na osnovu zapisa ne može predvidjeti kako se koja riječ akcentuje, a bez akcenata bi sintetizovan govor bio neprirodan i neprijatan za slušanje. Dodatno, većina riječi u našem jeziku je promjenljiva (imenice po padežima, pridjevi po licima, rodovima i broju...), tako da je u okviru projekta AlfaNum morao biti razvijen kompletan elektronski akcenatsko-morfološki rečnik srpskog jezika u kojem je sve to evidentirano. Sama sinteza govora se vrši povezivanjem zgodno odabranih segmenata iz već postojećeg snimljenog materijala, primenom raznih tehnika čiji je cilj da se prelazi između segmenata učine što neprimetnijim. Sistem može da čita i ćirilične i latinične tekstove, ispravno čita brojeve (ne cifru po cifru već kao riječi), čak i redne. Pored toga, snalazi se čak i sa latiničnim tekstovima u kojima nema naših slova, što je česta pojava kod e-mailova, na primer. Mada nije nepogriješiv, sistem je razvijen do te mjere da čita potpuno tečno, tako da je potpuno upotrebljiv za slijepe i slabovide osobe, dok mu je primena u telefoniji za sada ograničena na estetski manje zahtevne potrebe, kao što su pomenuti govorni automati. Naravno, ASR se može ali i ne mora spregnuti sa TTS-om tako da može raditi i sa prethodno snimljenim i sa sintetizovanim i sa obe vrste poruka. Trenutno se radi na smanjenju hardverske zahtevnosti ovih programa.

    3.11. FIS

    Fis je program koji se koristi uz program Jaws. Pošto se uz ovaj poznati čitač ekrana distribuira Eloquence sintisajzer sa engleskim, njemačkim, francuskim i još nekoliko poznatih svjetskih jezika, i za sada ne postoji ni za jedan od južnoslovenskih jezika, ukazala se potreba za programom koji bi na sasvim zadovoljavajući i relativno jeftin način nadomjestio ovu potrebu. Fis je, kako to i njegovo ime nagoveštava u osnovi Eloquence za Finski jezik. Pošto se pokazao kao najpogodniji jezik za ovu namenu, mali eksperiment je u toku višegodišnjeg rada, prerastao u program koji ima sve odlike jedne sinteze. Fis čita tekstove na srpskom jeziku, kako na latinici, tako i na ćirilici. Sa vrlo visokim, gotovo stopostotnim procentom, pokriva sve Jaws-ove funkcije za kretanje kroz Windows i pretraživanje Interneta. Jedno od najvećih dostignuća Fis-a je dinamika kojom on čita tekst. Interpunkcija je maksimalno ispoštovana, tako da kada se posle nekoliko minuta slušanja naviknemo na njegovu intonaciju,

  • 15

    izgovoreni tekst zvuči gotovo ljudski. Moguće ga je slušati dugo, bez ikakvih efekata zamaranja. Iako Fis, sada pored srpskog jezika, pokriva izgovor i dobrog dela standardnih kompjuterskih izraza koji se često javljaju, treba napomenuti da je prelazak sa srpskog ili makedonskog na engleski ili neki drugi Jaws-ov osnovni jezik, kada se za to ukaže potreba, krajnje praktičan i sveden na pokret jednog jedinog prsta. Sa ovim svojim osobinama, Fis predstavlja odličan izbor za đake, studente, i uopšte sve one koji su upućeni na pisanu riječ i upotrebu računara za brzo i jednostavno komuniciranje i rad sa informacijama, a ne mogu da se oslone na rad vizuelnim putem. KARAKTERISTIKE:

    • Fis se ponaša kao zasebna sinteza, pa tako ima svoja sopstvena podešavanja kao što su: nivo interpunkcije, brzina i drugo.

    • U Fis-ovom prozoru se nalazi klizač pomoću koga podešavamo brzinu otklizavanja teksta za vreme dok je Jaws uključen na čitanje celog teksta.

    • Fis u potpunosti poštuje ritam rečenice, tako da se rečenice koje su razlomljene u dva ili više redova čitaju potpuno kontinuirano, bez zastoja ili pada u glasu na kraju reda.

    • Uz Fis se može na sva četiri nivoa podesiti "Typing echo". Novo je i to da se za slučaj da smo odabrali kucanje bez izgovora, ili sa izgovorom samo na kraju riječi, može uključiti simulacija zvuka pisaće mašine. Ovo nam daje veću sigurnost u kucanju uz dodatnu zvučnu informaciju kada kursor preskoči u novi red.

    • Fis podržava unikod verzije zaključno sa JAWS 7.0. • U Fis-u možete koristiti još jedan novi alat. To je Fis-ov rječnik. Pomoću

    njega možete veoma jednostavnim postupkom dodati, pronaći, ili izbrisati željenu riječ i njen izgovor. Ovo je sa preko 500 već unešenih pojmova, omogućilo da se dosta čestih engleskih računarskih izraza, sada izgovaraju približno kako bi to izgovorio Eloquence na engleskom.

    • U Fis-u se sada može uključiti jedan poseban filter koji nam omogućava da čitamo stare dokumente u kojima se naša karakteristična slova čitaju nekorektno kao zagrade ili slično. Ovo je osobina koju za sada možete naći samo u Fis-u.

    • Registracija Fis-a je trajna za rad na istom računaru. To znači da ga možete deinstalirati i nakon ponovne instalacije registrovati istim brojem.

    • U novu verziju Fis-a je uneto još mnogo sitnijih izmena i poboljšanja kao što su izgovor dugih nizova istog znaka bez nepotrebnog ponavljanja, korektno izgovaranje dodatnih oznaka u menijima, ispravan izgovor objekata na html stranicama, kao što su linkovi, polja za upis, komandni grafički tasteri i drugo.

  • 16

    4. Naš doprinos

    Ono što smo mi pokušali u ovom radu je da realizujemo sintezu govora izgovaranjem glasova, a ne cijelih riječi (tj. grupa glasova) kao gore pomenuti softver. Ovdje smo se vodili mišlju da je u srpskom jeziku dovoljno imati glasove (jer se jedan glas predstavlja jednim slovom) da bi se mogle čitati cijele riječi. Naravno, kad bi se samo pročitali snimljeni zasebni glasovi, ne bismo dobili realne rezultate. Tu do izražaja dolazi naša ideja (kao što se može vidjeti pokretanjem našeg programa, u nekim slučajevima i mi imamo “isjeckane” riječi, ali neke su znatno tečnije izgovorene nego samo čistim slaganjem glasova).

    Pošli smo od činjenice da kad neke glasove kažemo same i kad ih kažemo u nekoj riječi, vremenski oblik istog glasa se razlikuje.

    Slika 1. Glas ’S’

    Slika 2. Riječ ’Sok’ i izdvojen glas ’S’

  • 17

    Iz ovih primjera vidimo da u riječ “sok” ustvari ulazi samo prvi dio glasa “s” kad bi se on izgovarao sam.

    Naša ideja je bila da snimimo određenu količinu riječi u kojima se ponavlja isti glas i da vidimo najčešći vremenski oblik tog glasa. To smo i učinili, te “isjekli” tu varijantu glasa, ponovili to za sve glasove i dobili bazu od samo 30 (+10 za cifre) glasova koji traju u prosjeku manje od 0.2 s (što je više nego značajna ušteda u prostoru odnosu na baze koje sadrže velike količine izgovorenih riječi).

    Treba istaći da nije moguće postići da se sve riječi izgovaraju pravilno jer nemaju sve isti naglasak niti trajanje glasova, ali postiže se dovoljna razumljivost i sa ovakvim stanjem. Dalji rad bi uključio proširivanje baze različitim varijantama jednog glasa, te pravljenjem manjeg rječnika (tekstualnog) koji bi davao informaciju o tome koje riječi koriste koje glasove. Ovo povećava količinu potrebnog prostora, smanjuje brzinu izvršavanja, ali i dalje je po oba pitanja značajna ušteda u odnosu na realizaciju sa bazama riječi.

    Jedan od problema je i to što nismo sva snimanja vršili odjednom, pa je došlo do značajnog odstupanja u visini i boji glasa. Takođe se može reći da nismo insistirali na preciznosti pri isjecanju pojedinih glasova, kao ni pri ujednačavanju njihovih jačina, jer primarni cilj ovog dijela rada nije niti bio profesionalan softver već pokušaj jednostavne i jeftine realizacije interesantne ideje, kao i postavljanje temelja za neki budući rad.

    4.1. Program SintezaGovora

    U ovom odjeljku ćemo pobliže opisati realizovani softver. Aplikacija ima tri razdvojena dijela :

    � Služba informacija � Čitanje unosa sa tastature � Čitanje dužeg teksta

    Kako u svakom dijelu imamo neku vrstu čitanja, tj. puštanja zvuka, realizovali smo klasu Sounds koja omogućava da se svi željeni zvukovi učitaju u memoriju, imenuju slovom koji predstavljaju, te da se puštaju na nekoliko načina. Ovo potonje ustvari znači da jedan zvuk možemo pustiti tako da se on garantovan čuje kompletan (korišteno u prvom i trećem dijelu), odnosno da se omogući prekid puštanja jednog zvuka i inicira puštanje drugog (korišteno u drugom dijelu)

    NAPOMENA : Detaljniji opis dat je u samom kodu koji je priložen uz ovaj rad.

  • 18

    Pokretanjem softvera, dobija se sljedeći prikaz :

    Slika 3. Glavni prozor aplikacije

    Funkcije svakog tastera su intuitivno jasne.

  • 19

    Što se tiče prvog dijela softvera, princip rada je jednostavan :

    � Napravili smo malu bazu podataka (jedna tabela sa poljima Ime, Prezime i Broj_telefona)

    � Koristili smo ODBC kao sistem za upravljanje i preko njega ostvarili konekciju sa bazom

    � Na osnovu korisnikovog unosa, formira se SQL upit koji se izvrši nad bazom

    � Moguć je i izbor « govornika », a svaka promjena automatski obavještava softver koju instancu klase Sounds da koristi za puštanje zvuka

    � Dobijeni rezultat se ispiše, a kroz petlju se instanci klase Sounds šalje svaki broj na puštanje.

    Slika 4. Prozor Službe informacija

  • 20

    U drugom dijelu postoji polje za unos koje je podešeno da na svaki pritisak tastera pušta zvuk (naravno ukoliko takav postoji ; naime, snimili smo samo izgovaranje cifara i slova srpskog alfabeta). Takođe je moguć izbor vrste glasa.

    Slika 4. Prozor Čitanje unosa sa tastature

  • 21

    U trećem dijelu takođe postoji polje za unos, ali u ovom slučaju čitanje počinje tek pritiskom na dugme, i čita se sve što je uneseno, sa pauzama između riječi, kao i na interpunkciji.

    Slika 6. Prozor Čitanje dužeg teksta

  • 22

    5. Literatura

    1. http:\\www.alfanum.co.yu 2. „Prepoznavanje i sinteza govora“, Svet komjutera, izdanje 02/2004 3. „Voice synthesis / Sinteza govora“, Violeta Đurđek, Karlo Ercegović,

    Barbara Šmit, Sveučilište u Zagrebu