završni_rad_džemil koca
TRANSCRIPT
Univerzitet u Sarajevu
Elektrotehnički fakultet u Sarajevu
Odsjek za telekomunikacije
Identifikacija govornika korišćenjem
MFCC Metode
Završni rad
I ciklusa studija
Mentor: Kandidat:
Red.prof.dr Melita Ahić-Đokić Dţemil Koca
Sarajevo, septembar 2012
2
Univerzitet u Sarajevu
Elektrotehnički fakultet
Odsjek za telekomunikacije
Red. prof. dr. Melita Ahić-Đokić, dipl.ing.el.
Viši asistent mr. Emir Sokić, dipl.ing.el.
Tema za završni rad
studenta I ciklusa studija koji studiraju na ETF-u u skladu sa principima Bolonjskog procesa na Odsjeku
za telekomunikacije (ak.god.2011/12)
Tema : ''Identifikacija govornika korištenjem MFCC metode''
Student: Koca Džemil
Zadatak:
Identifikacija i prepoznavanje govora i/ili govornika je jedna od najrelevantnijih primjena procesiranja
govornih signala. Kao takva, ona obuhvata prilično sloţenu analizu govora odreĎene osobe kao i
identifikaciju iste na bazi karakteristika glasa i same izgovorene fraze. Cilj ovog rada je objašnjenje
tehnike identifikacije govora na osnovu Mel-frekventnih Kepstralnih Koeficijenata (MFCC). Potrebno je:
obraditi pojam Mel-frekventnih kepstralnih koeficijenata,
analizirati predstavljanje govornog signala kepstralnim koeficijentima,
analizirati identifikaciju govornika pomenutom tehnikom,
u praktičnom dijelu rada obradi metodu identifikacije govornika pomoću gore navedene tehnike
implementirane u MATLAB-u.
Koncept i metode rešavanja:
Za izradu softverskog dijela završnog rada i računarsku analizu preporučuje se upotreba
MATLAB softverskog paketa, mada je dozvoljeno korištenje i drugih okruţenja (Mathcad, GNU Octave,
Scilab, LabView, C/C++, Java itd.).
Literatura
1. Alan V. Oppenheim, Ronald W.Schafer: „Discrete-time Signal Processing―, Prentice
Hall, Englewood Cliffs, Upper Saddle River, New Jersey 07458, 1999.
2. Md. Rashidul Hasan, Mustafa Jamil, Md. Golam Rabbani Md. Saifur Rahman:
„Speaker Identification Using Mel Frequency Cepstral Coeficients―, ICECE 2004,
Bangladesh.
3. L.R. Rabiner and B.H. Juang, ''Fundamentals of Speech Recognition'', Prentice Hall,
1993.
4. Furui, S. & Rosenberg, A.E. ―Speaker Verification‖, Boca Raton: CRC Press LLC,
1999.
5. Branko Kovačević; Milan Milosavljević; Mladen Veinović; Milan Marković: ''Robusna
digitalna obrada govornog signala'', Akademska Misao, Beograd, 2000.
6. Vibha Tiwari, ―MFCC and its applications in speaker recognition―, International
Journal on Emerging Technologies, Gyan Ganga Institute of Technology and
Management, Bhopal, (MP) INDIA, 2010
7. Melita Ahić-Đokić,“Signali i sistemi”, Elektrotehnički fakultet u Sarajevu, 2010.
________________________________ Red. prof. dr. Melita Ahić-Đokić, dipl.ing.el.
3
Sažetak
Identifikacija i prepoznavanje govora i/ili govornika je jedna od najrelevantnijih
primjena procesiranja govornih signala. Kao takva, ona obuhvata prilično sloţenu
analizu govora odreĎene osobe kao i identifikaciju iste na bazi karakteristika glasa i
same izgovorene fraze. Cilj ovog rada je objašnjenje tehnike identifikacije govora na
osnovu Mel-frekventnih Kepstralnih Koeficijenata (MFCC) koji su danas najpopularniji
metod za karakterizaciju (izvlačenje svojstva) ljudskog glasa, odnosno izgovorene fraze.
Abstract
Identification and recognition of speech and / or speakers is one of the most relevant
application in speech signals processing. As such, it involves sufficiently complex
analysis of person speech and identification of the same, based on features of voice and
spoken phrases. The main goal of this paper is the explanation of speech identification
techniques and algorithms based on Mel-Frequency Cepstral Coefficients (MFCC),
which are the most popular and effective method for characterization (feature
extraction) of the human voice and spoken phrases, in modern comunications.
4
Sadržaj
Sažetak ............................................................................................................................. 3
Abstract ........................................................................................................................... 3
Uvod ................................................................................................................................. 5
1 Procesiranje govornog signala .................................................................................... 7
1.1 Kratka istorija razvoja procesiranja i prepoznavanja govora .................................. 7
1.2 Govor i njegove osobine ....................................................................................... 10
1.3 Sistemi prepoznavanja........................................................................................... 16
1.3.1 Prepoznavanje govora ..................................................................................... 16
1.3.2 Prepoznavanje govornika ................................................................................ 17
1.3.3 Ekstrakcija obiljeţja ........................................................................................ 21
2 Mel-Frekventni Kepstralni Koeficijenti (MFCC) ............................................... 26
2.1 Kepstrum ............................................................................................................... 26
2.2 MFCC pristup ........................................................................................................ 32
2.2.1 Blokovi MFCC procesora ............................................................................... 33
2.2.2 Pred-filtriranje ................................................................................................ 35
2.2.3 Prozoriranje .................................................................................................... 36
2.2.4 FFT (Fast Fourier Transform) ........................................................................ 37
2.2.5 Mel-frekventno pakovanje i kepstralni koeficijenti ....................................... 38
2.2.6 Diskretna kosinusna transformacija (DCT) ................................................... 39
2.3 Modeliranje govornika ......................................................................................... 40
2.3.1 Vektorska kvantizacija .................................................................................... 40
3 Eksperimentalni pristup.......................................................................................... 43
Zaključak ....................................................................................................................... 46
Popis slika ...................................................................................................................... 47
Literatura ...................................................................................................................... 48
5
Uvod Govor je osnovni način uzajamne komunikacije meĎu ljudima pa je tako procesiranje
govornog signala jedan od osnovnih zadataka još od začetka telekomunikacija. Kao
vaţan dio ove oblasti, prepoznavanje glasa, samim tim i identifikacija govornika, ubrzo
je našla svoju primjenu u modernim komunikacijama na različite načine, do te mjere da
su danas čak i neophodne u funkcionisanju ljudskog društva. Čovjekov glas je jedna od
njegovih fizioloških karakteristika koje mu daju jedinstvenost na osnovu koje se
razlikuje od ostalih ljudi, tako da identifikacija govornika ima jako vaţno mjesto u
oblasti biometrije. Kako razvijanje tehnologije danas teţi ka tome da joj se mogućnosti
pribliţe čovjekovim i na taj način uspješno olakša funkcionisanje čovjeka, tako i samo
prepoznavanje glasa i razvoj tehnika na ovom polju ne predstavlja ništa osim
usavršavanja imitacije funkcionisanja ljudskog uha. MeĎutim, glavna problematika i
leţi u tome što je čovjekov glas jedinstven signal, slučajan i samim tim prilično
komplikovan za obradu. Naravno, to je samo ostavilo prostora za nove ideje i
usavršavanje različitih tehnika procesiranja govornog signala kao i njegove
identifikacije.
Kada se govori o prepoznavanju govornog signala, mora se istaći razlika izmeĎu
prepoznavanja govora i prepoznavanja govornika kao i razlika izmeĎu identifikacije i
verifikacije govornika. U ovom radu će biti objašnjeni navedeni pojmovi kao i njihove
razlike. MeĎutim, glavni cilj razmatranja je proces prepoznavanja govornika, odnosno
njegova verifikacija, koristeći različite algoritme meĎu kojima je kao najznačajniji
istaknut algoritam za ekstrakciju obiljeţja glasa, (eng. feature extraction), Mel-
Frekventnih Kepstral Koeficijenata (MFCC). Odgovor na pitanje ,,Zašto baš taj
algoritam?“ proizilazi iz same kompleksnosti govornog signala. Naime, sirov signal
govora je jako varijabilan i za njegovu obradu potrebno ga je predstaviti na što
jednostavniji način, a da pritom ne izgubi svoju suštinu, gdje se izvlačenje MFCC-a
pokazao kao najbolji i najpopularniji algoritam ekstrakcije obiljeţja. TakoĎe, u radu će
biti razmatrana i tri osnovna procesa u identifikaciji govornika: ekstrakcija obiljeţja,
modeliranje govornika i odlučivanje.
Ovaj završni rad se sastoji iz tri veća poglavlja.
Prvo poglavlje se bavi objašnjenjem nekih osnovnih principa procesiranja govornog
signala u cilju prepoznavanja govornika. Predstavljene su osnovne osobine signala
govora kako u vremenskom tako i u frekventnom domenu, kao i njegova ograničenja pri
digitalizaciji. Osnove prepoznavanja govora općenito, prepoznavanje govornika, podjele
i različiti algoritmi. Objašnjen je i sam proces izvlačenja svojstva i neki njegovi
primjeri, različiti načini za modeliranje govornika kao i modeli govora u procesu
njegovog prepoznavanja.
6
Drugo poglavlje, uglavnom se bavi identifikacijom govornika, tj. algoritmima za
izvlačenje svojstva i njegovim modeliranjem. Objašnjen je pojam kepstruma, njegova
analiza i značaj. Posebno je istaknut i definisan i obraĎen pojam MFCC-a. Predstavljeni
su segmenti u procesu izračunavanja koeficijenata. Dalje, dati su primjeri identifikacije
govornika korištenjem Mel-frekventnih Kepstral Koeficijenata u kombinaciji sa
različitim algoritmima za modeliranje govornika. Pomenuti su još neki primeri MFCC-
a, poreĎenje različitih implementacija kao i još neke primjene ovih koeficijenata.
Treće poglavlje je rezervisano za implementaciju u Matlab-u. Dakle, obraĎen je
primjer identifikacije govora kroz dobijanje mel-frekventnih kepstral koeficijenata u
programskom jeziku (kod ili/i Simulink) kao jedna vrsta softverskog eksperimenta.
Kraći prikaz rezultata i zaključak priloţenog rada je dat na kraju.
7
1 Procesiranje govornog signala
1.1 Kratka istorija razvoja procesiranja i prepoznavanja
govora
Ideja o prepoznavanju govora se javila i počela razvijati još prije pet decenija. Kako
je govor osnovni način komunikacije ljudi, razvijanjem tehnologije novi izazov je
postala i komunikacija ljudi sa mašinama i računarima. Prepoznavanje govornika imalo
je svoj začetak upravo u načinu predstavljanja govora mašini ili računaru, kako bi on sa
druge strane uspio razumjeti izgovorene riječi (ako ne potpuno, onda bar pribliţno).
Sam pojam snimanja glasa, naime, vuče svoje korijene još iz početka dvadesetog
vijeka, kada je Thomas Edison konstruisao fonograf, spravu koja je pomoću limenog
valjka sa voskom uspijevala da zapiše (snimi) ljudski glas i nakon toga ga ponovo
reprodukuje. Svrha ovog izuma je bila pomoć sekretaricama kako bi mogle da snime
diktiran glas i nakon toga prave zapise. Sličan način automatizacije, i naravno puno
napredniji, je zauzeo svoje mesto 1990-ih godina, nakon što su izgraĎeni takozvani
''pozivni centri '' (call centers) koji su na osnovu automatskog prepoznavanja govora
uspjeli da prihvataju pozive ljudi koji su htjeli izvršiti uplate i transakcije sa bankovnog
računa. Na taj način je jedna od prvih firmi koja se bavila pomenutom tehnologijom,
AT&T uspela smanjiti troškove velikog broja ljudi koji su tada radili kao operateri u
pozivnim centrima. Jedan od projekata koji je napravio veliki korak dalje u proučavanju
karakteristika ljudskog govora je bio je govorni sintisajzer VODER (Voice Operating
Demonstrator), govorna mašina koju je konstruisao i 1939. godine u New York-u na
World Fair-u predstavio tadašnji inţenjer elektronike Homer Dudley. VODER je
izgledao slično kao obični muzički sintisajzer s tim da je mogao proizvoditi zvukove
frekvencija pribliţnih ljudskom glasu i imao je mehanizam koji je bio u stanju da
proizvodi zvučnost svih slova iz engleskog jezika kao i da agenture fraze na način koji
to ljudi rade. I ako ovaj izum nije vršio nikakvo prepoznavanje govora, svojom
strukturom i načinom rada je bio jedan od jako ozbiljnih uvoda u procesiranje i
poznavanje ljudskog govora na bazi frekventnih karakteristika, kao i upoznavanje sa
fonetičkom prirodom ljudskog govora.
Slika 1.1. Blok šema VODER-a
8
Podstaknuti projektima sa početka dvadesetog vijeka šezdesetih i sedamdesetih godina,
naučno-fantastični filmovi tog doba su već počeli izraţavati ţelju i ideju čovječanstva za
mašinama koje bi mogle da slušaju ljude i pričaju sa njima.
Najraniji pokušaji dizajniranja sistema za automatsko prepoznavanje govora bili su
bazirani na proučavanju akustične fonetike, tj. proizvodnje glasova pri govoru i njihovih
osobina. Ideja je polazila od analize frekvencije formanta, neodreĎenog glasa usne
šupljine koji sluţi kao pratilac običnog glasa pri govoru, koji se javljao kao glavni
nosilac energije pri analizi spektra snage govora. Koristeći se ovim saznanjima, 1952.
godine, Davis, Biddulph i Balashek, inţenjeri koji su radili za Bell Laboratories
(AT&T), dizajnirali su sistem za prepoznavanje izgovorenih cifara od 0 do 9. Princip
rada ovog izuma je bio baziran na praćenju traektorije formanta tokom izgovaranja ovih
cifara, ali kada je bio u pitanju samo jedan govornik. Na sličan način, tih godina
napravljen je i sistem koji je uspijevao da prepozna karakteristike izgovora deset
različitih vokala. MeĎutim, tih godina vrhunac u prepoznavanju govora svodio se samo
na prepoznavanje izgovora glasova pojedinačno, ali ne i kontinualnog govora.
Tek 60-ih godina, Itakura, Rabiner i Levinson su predloţili koncepte Linearno
Prediktivnog Kodiranja (LPC, koji će biti detaljnije obraĎen u poglavlju 1.3.3). Ovaj
sistem je na sasvim drugačiji način mogao da predstavi cio valni oblik govornog
signala, tj. cijele izgovorene fraze i na taj način kreira šablon (eng. pattern) za
prepoznavanje govora koji se i danas koriste. Napredovanjem LPC modela, kasnije su
se počeli razvijati sistemi na principu velikih baza riječi koje su prethodno bile
snimljene i samim usporeĎivanjem šablona izgovorene riječi, ovakvi sistemi su mogli
prepoznati fraze koje su posjedovali u svojim bazama. Vaţno je pomenuti da su u
periodu 70-ih godina, počele da se razdvajaju dvije škole, okarakterisane načinom
prepoznavanja govora u to vrijeme. Tada najpopularnije telekomunikacione kompanije
IBM i AT&T Bell Laboratories, predstavljale su dva pravca u načinu pristupa
automatskom prepoznavanju govora, posebno kad je bilo u pitanju polje komercijalnih
aplikacija.
IBM-ova ideja bila pisaća mašina koja je radila na principu prepoznavanja govora
(VAT). Funkcija ovog sistema je bila da konvertuje snimljenu rečenicu u riječi i slova i
na taj način je zatim ispiše na displej ili papir. Prepoznavanje je meĎutim, bilo zavisno
od govornika, tako da je za svaku različitu osobu, sistem opet morao biti 'istreniran'. S
druge strane AT&T Bell Laboratories, koji je pruţao usluge glasovnih poziva i glasovni
preusmjerenja poziva, bio je posvećen višekorisničkom pristupu tako da se dizajn
njihovih sistem svodio na prepoznavanje govora koje nije bilo zavisno od govornika.
Ovo je zahtjevalo potpuno drugačiji pristup problemu, te su oni bacili akcenat svog rada
na statističko prepoznavanje i spektralno analiziranje govora. U tom pristupu
problematici, primjenu su našli Skriveni Markovljevi modeli kao i tehnika ''ključna reč''
koja se bazirala na logici da se paţnja ne posveti gramatici i značenju cijele rečenice već
samo ključne reči koju je izgovorio korisnik i koja je bitna za njegov zahtjev [1].
Kako je tehnologija napredovala na način da su zahtjevi bili veći, tako je u ovoj
oblasti cilj postao prepoznavanje kontinualnog govora. Iako je sama teorija definisana
puno ranije, Skriveni Markovljevi modeli su tek 1980-ih pronašli svoju pravu ulogu u
oblasti prepoznavanja govora. Glavna prednost ove tehnike bila je ta što je ona
predstavljala prelazak na statističke metode prepoznavanja govora i ujedno se koristila
za predstavljanje jako promjenljivoga signala govora, kao i za modeliranje vezano za
jezik izgovora na principu vjerovatnoća pojavljivanja odreĎenih glasova. Tehnika
HMM-a (eng. Hidden Markov Models) je predstavljala jedno od najvećih dostignuća u
ovom domenu te je i do danas zadrţala svoju primjenu.
9
MeĎutim, ako se govori samo o prepoznavanju govornika ili samo reprezentaciji
ljudskog glasa u svrhu njegovog prepoznavanja, Kepstralna analiza signala govora je
imala svoje posebno mjesto iz razloga što je čak i u prisustvu šuma, varijabilnu prirodu
izgovorene riječi predstavljala krajnje jednostavno, pritom zadrţavajući osnovnu
karakteristiku po kojoj se prepoznaje govornik. Iako je kepstrum snage kao pojam,
definisao Bogert, još 1963. godine, izvlačenje svojstva govora Mel-frekventnim kepstral
koeficijentima (MFCC) je predstavljeno dvije decenije kasnije. Naime, inţenjer Paul
Mermelstein zajedno sa S.B. Davis-om u radu [29] za IEEE (Institute of Electrical and
Electronics Engineers) definirao je dobijanje MFCC-a koji su na svojstven način
najbolje reprezentovali govornika. Kao jedna od najpopularnijih tehnika danas su našli
svoju primjenu u biometriji, glasovnom biranju kod mobilnih telefona, prepoznavanju
muzičkih signala (prepoznavanje kompozicije) i drugim potrebama ljudskog društva.
Na slici 1.2. moţemo vidjeti skraćeni grafički pregled prekretnica u oblasti
prepoznavanja govora [1].
Mali rijecnik,Bazirano naFonetickojAkustici
Osrednjirijecnik,Bazirano naŠablonima
Velikirijecnik,Bazirano naStatistici
Velikirijecnik,Sintaksa,Semantika,
Veoma velikrjecnik,Semantika,MultimodalniDijalog
Prekretnice u istraživanju govora
Izolovanerijeci
Kepstrum(Cepstrum),Analizafilter banaka,Dinamickoprogramiranje
Izolovanerijeci,
Kontinualangovor
Prepoznavanješablona,LPC Analiza
Povezanerijeci,
Kontinualangovor
MFCC,SkriveniMarkovljevimodeli,Stohastickomodeliranjejezika
Kontinualangovor
Stohastickorazumijevanje,Statistickoucenje
Vršenjedijaloga
Mašinskoucenje,Interaktivnidijalog
1962 1967 1972 1977 1982 1987 1992 1997 2002
Slika 1.2. Prekretnice Prepoznavanja Govora i Tehnologije Razumjevanja
u zadnjih 50 godina
10
1.2 Govor i njegove osobine
Da bi se moglo pristupiti bilo kakvom procesiranju govornog signala, jasno je da
moramo poznavati osnovne karakteristike govora. Ako govor posmatramo kao zvučni
signal, on se u perspektivi posebno ne razlikuje od bilo kakvog drugog zvučnog signala,
bilo da je to muzički signal, buka na ulici ili neki drugi šum koji ima frekvenciju zvuka.
Razlika počinje u ljudskom mozgu i načinu na koji on nakon svoje obrade, percepira i
prihvati te zvukove koje tek onda moţemo da nazovemo govorom[2].
Gotovo svi organi koji se nalaze od pluća pa sve do usana i nosa, predstavljaju
kompletan sklop koji je odgovoran za produkciju glasa. Tri su osnovne grupe organa
bitne za nastanak glasa: zračna struja, glasnice i rezonatori. Iz pluća nastaje zrak koji u
sebi nosi frekvencije sloţene prema Gausovoj raspodjeli. Prolazeći dalje kroz glasnice a
kasnije i ostale organe ovaj zrak se obraĎuje i modulira na različite načine da bi pri
svom izlasku iz čovjekovih usta predstavljao zvuk koji nosi neko značenje i na taj način
postao razumljiv govor. Za procesiranje govornog signala potrebno je pomenuti, a i
razumjeti pojam foneme. Naime, fonema je najmanja i osnovna jedinica govora koja je
bitna za njegovo značenje u ljudskom jeziku i njenom izmjenom dolazi do promjene
sadrţaja jezičnog znaka ili slova. Dakle, kad je u pitanju procesiranje govora i njegovo
prepoznavanje, foneme su informacije koje se u toku obrade signala govora ne smiju
izgubiti. Kako zvučanje odreĎenih fonema varira u odnosu na mjesto u samoj riječi
(npr. riječ kačket – slovo 'k' zvuči različito na početku i na kraju reči), foneme i riječi
zajedno predstavljaju najveći problem u prepoznavanju govora [3].
Osim udjela respiracije i fonacije, konačni akustički oblik govornoga signala
značajno ovisi i o konfiguraciji cjelokupnog vokalnog trakta. Pri prolasku zvuka kroz
ostale organe dolazi do pojave rezonancije i fenomena formanata.
Rezonancija je osobina krutih tijela i šupljina ispunjenih zrakom koje pod utjecajem
zvuka (čistog tona) iz okoline počinju same titrati. Kao rezultat rezonancije u takvom
tijelu koje titra (rezonatoru), javit će se frekvencije koje su harmonici izvornoga tona
koji je izazvao rezonanciju. Broj i intenzitet pojedinih harmonika ovisit će o frekvenciji
izvornoga tona, veličini (volumenu) i obliku rezonatora, kao i o fizikalnim svojstvima
materijala od kojega je rezonator sačinjen. Pojava rezonancije koristi se kod većine
instrumenata, pa se pomoću odreĎenih karakteristika rezonatora dobiva i ţeljena boja
zvuka nekog instrumenta. Glas proizveden u grkljanu širi se kroz rezonantne šupljine.
Zbog efekta rezonancije govorni zvuk u vokalnom traktu poprima svoju konačnu boju i
akustički oblik. Rezonantne karakteristike vokalnog trakta ovise o mnogim faktorima a
najviše o njegovoj duţini, presjeku i obliku. Zbog efekta rezonancije zvuk se filtrira u
vokalnom traktu te će se zbog toga odreĎeni dijelovi spektra pojačavati (formanti), dok
će drugi biti prigušeni.
Formanti su intenzitetski naglašeni dijelovi spektra koji su rezultat rezonancije u
rezonantnim šupljinama i ne ovise o promjenama visine osnovnog tona ili harmonika.
Kraće, formanti su neodreĎeni glas usne šupljine koji sluţi kao pratilac običnog glasa.
Kod zvučnih glasova formante ne moţemo direktno uočiti zbog prisutnosti harmonika
(eksperimentalno to bismo mogli vidjeti u spektru šapata (kada glasnice ne titraju). Kod
bezvučnih konsonanata formante moţemo uočiti direktno u spektru iako oni i ne
predstavljaju u pravom smislu formante jer ne nastaju uvijek kao rezultat rezonancije.
Npr. prednji glasovi /S/ ili /C/ ne stvaraju rezonanciju jer se proizvode na samom izlazu
iz usne šupljine. Stoga se formanti u govoru uglavnom promatraju u izgovoru
samoglasnika.
11
Vokalni trakt moţemo zamisliti kao cijev koja je otvorena na jednom (usta), a
zatvorena na drugom kraju (godiš). U vokalnom traktu nalazi se stupac zraka na kojem
se stvaraju longitudinalni valovi. Pojačana rezonancija formira govorne formante.
Rezonancija vokalnog trakta definirana je neparnim brojem četvrtina duţine vokalnog
trakta. Kod ovakve otvorene tube najjaču rezonanciju će imati sinusoidni zvučni val
kojemu je valna duţina jednaka četverostrukoj duţini vokalnog trakta. Struktura
formanata je za pojedine glasove uvijek je pribliţno ista ali se razlikuje izmeĎu
muškaraca i ţena jer su i njihove rezonantne šupljine različite veličine. Kod muškaraca
je vokalni trakt duţi (veći volumen) pa su formanti frekvencijski niţi nego kod ţena.
Kod zvučnih glasova formante ne moţemo direktno u spektru uočiti zbog prisutnosti
harmonika (eksperimentalno to bismo mogli vidjeti u spektru šapata, kada glasnice ne
titraju). Formante najčešće uočavamo tako da iz FFT (Fast Fourier Transform) spektra
napravimo LPC (Linear Predictive Coding) spektar koji vrši ''peglanje'' FFT spektra
tako da se eliminiraju harmonici a postaju vidljivi formanti. Drugi je način da se u
trodimenzionalnoj analizi (spektrogramu ili sonogramu) primjenjuje tzv. široko
filtriranje (bolje se uočavaju formanti) ili usko filtriranje (bolje se vide harmonici).
Vrijednost formanata se izračunava prema formuli:
L
xcF
4 (1.1)
gdje je:
F - rezonantna frekvencija formanta (Hz)
c - brzina zvuka (izraţena u metrima/sekundi)
L - duţina vokalnog trakta (izraţena u metrima); kod muškarca je
oko 17 cm
x - broj četvrtina zvučnog vala s najjačom rezonancijom(odnos
duţine vokalnog trakta i valne duţine).
U cilju procesiranje govornog signala, u suštini mnogo je efikasnije predstaviti ga u
frekventnom domenu nego u vremenskom, jer se su skoro sve njegove karakteristike
prikazane preko raspodjele frekvencija. Spektar govora je dvodimenzionalan i prikazuje
zvučni signal u dvije dimenzije: frekvencija (x os) i amplituda (y os). Spektralna analiza
zvuka je postupak kojim se sloţeni zvučni val razlaţe na njegove sastavne frekvencije.
Frekvencija razumljivog govora kreće se u opsegu od 300 Hz do 4 kHz. Ulazni
parametri spektralne analize su amplitude zvuka u vremenu, a izlazni – raspodjela
frekvencija u odreĎenom frekvencijskom pojasu u vremenu. Spektralnu analizu
moţemo najjednostavnije shvatiti tako da se svaki sloţeni zvuk sastoji od pojedinačnih
zvukova različitih frekvencija i amplituda. Danas je spektralna analiza zvuka dostupna
kroz niz softverskih alata i od velike je koristi u akustičnoj analizi glasa i govora. PC
računari mogu izvesti stotine miliona računskih operacija u sekundi pa je moguće
izvesti tako sloţenu operaciju, kao što je računanje spektralne analize u realnom
vremenu. Razvojem softverskih tehnologija za računanje spektralne analize koristi se
algoritam koji se naziva brza Fourierova transformacija (Fast Fourier Transform - FFT).
Rezultat brze Fourierove transformacije je skup kompleksnih brojeva. Da bi se iz
takvog prikaza prešlo u prikaz pogodan za prikaz spektralne analizu, upotrebljava se
tzv. power spectrum algoritam (slika 1.3). Pri konverziji u oblik u kojemu je domena
frekvencija, power spectrum algoritam predstavlja frekvenciju kao redni broj
kompleksnog broja u skupu, a elongaciju kao zbroj kvadrata realnog i imaginarnog
12
dijela kompleksnog broja. Maksimalan frekvencijski opseg spektralne analize osnovane
na FFT metodi je jednak polovini frekvencije uzorkovanja (eng. sampling rate). Prije
bilo kakve digitalne obrade govora, potrebno je izvršiti njegovo kodiranje
(digitalizaciju). Prilikom digitaliziranja govora tj. pretvaranja akustičkog govornog
signala iz analognog u digitalni oblik, bitna su dva parametra: uzorkovanje (sampling) i
kvantiziranje (quantization). Uzorkovanje vrši pretvorbu kontinuiranog vremenskog
signala u niz diskretnih vremenskih elemenata, a što je uzorkovanje brţe to će digitalni
signal biti kvalitetniji i sličniji analognome. Teoretski (prema Nyquist-ovoj teoremi),
frekvencija uzorkovanja mora biti dvostruko viša od najviše frekvencije u spektru
analognog signala (npr. ako naši najviši glasovi S, Z i C doseţu 12 kHz, moramo ih
uzorkovati s minimalno 24 kHz). Kvantizacijom se konvertiraju kontinuirane promjene
amplituda analognog signala u diskretne vrijednosti. Ovakvom konverzijom su vrlo
dobro sačuvane sve komponente analognog signala. Posmatranjem govornog signala u
vremenskom domenu uočeno je da je on jako varijabilan. MeĎutim, utvrĎeno je da
postoji lokalna stacionarnost (pseudo-stacionarnost) u intervalu od oko 20-30 ms. Iz
ovoga sledi da se pri obradi ovog signala segmentacija mora izvoditi u 20 ms dugim
prozorima (eng. frame).
Slika 1.3 FFT spektar ljudskog glasa Slika 1.4 LPC spektar ljudskog glasa
(fonacija vokala /A/). (fonacija vokala /A/).
Slika 1.5 LPC spektar dobijen 'peglanjem' FFT spektra prikazan koristeći dvije različite vrijednosti
predikcionih koeficijenata (p=6 i p=15), koji će biti objašnjeni u narednim poglavljima.
Kada se govori o spektralnoj analizi govora mora se pomenuti i Linearno prediktivno
kodiranje (LPC - Linear Predictive Coding). Spektar LPC-a dobija se iz FFT- a
13
izračunavanjem prosječnih vrijednosti (slika 1.4 i 1.5). Takvim usrednjavanjem FFT
spektar postaje ''izglačan'', eliminiraju se harmonici (više nisu istaknuti) a veće skupine
pojačanih harmonika formiraju formante koji postaju vidljivi [6].
Kada je prepoznavanje govornika u pitanju, jako su bitne i karakteristike samog glasa
i način izgovora pojedinih glasova, jer te osobine su ključna razlika dva ili više različita
govornika. Počevši od nastajanja govora, potrebno je definisati laringealni ton, zvuk
dobiven relaksacijskim titranjem glasnica u čijem se ritmu modulira zračna struja. Taj je
zvuk suviše slab i nije čujan. Konačnu snagu, čujnost, volumen i boju dobiva tek
prolaskom (filtriranjem) kroz vokalni trakt kojeg čine rezonantne šupljine. Tada nastaje
čujan ljudski zvuk - glas. Glas je sloţen zvuk što znači da se sastoji od osnovnog tona i
nadtonova ili harmonika. Njegovo titranje je periodično, tj. u svakom je dijelu spektra
jednako pa zbog toga ako uklonimo osnovni ton, i dalje će se čuti ista visina glasa. Taj
osnovni ton koji se čuje iako ga objektivno nema, zove se rezidualni ton ili reziduum.
Svakodnevni primjer ove pojave je upotreba telefona koji ne prenosi područje
frekvencija niţih od 300 Hz unutar kojeg su smješteni upravo osnovni tonovi ljudskih
glasova, a mi, ipak prepoznajemo sagovornika preko telefona. Jedne od osnovnih
osobina koje karakterišu ljudski glas su njegov:
intenzitet
visina
boja
Intenzitet glasa kojeg percipiramo kao glasnoću ovisi o amplitudi titranja glasnica te
o pritisku zraka koji dolazi iz pluća, pa što su njihove vrijednosti veće, intenzitet glasa
je veći i obratno. Izraţava se u decibelima (dB). Intenzitetski raspon od tek čujnog glasa
do najglasnijeg koji pojedinac moţe izvesti iznosi i do 70 dB. Ovu razliku izmeĎu
pianissima i fortissima, tj. najmanjeg i najvećeg nivoa zvuka nekog izvora, nazivamo
dinamikom. U situacijama u kojima se govori glasno i glas postaje viši. Takav glas
nazivamo povišenim glasom [24].
Visina glasa je perceptivni fenomen, a ovisi o fundamentalnoj frekvenciji koja je
fizikalni parametar. Fundamentalna frekvencija (Fo) je broj vibracija koje glasnice
učine u jednoj sekundi, a izraţava se u hercima (Hz). Što je veći broj vibracija glasnica,
viša je vrijednost fundamentalne frekvencije pa i glas doţivljavamo kao viši. Na
vrijednost Fo utječu dob, spol, tjelesna konstitucija, socijalno okruţenje, emocije,
intelektualni status i mnogobrojni drugi faktori. TakoĎe, glas iste osobe nije isti svaki
dan. Varijacije glasa kod iste osobe, od dana do dana mogu se kretati u rasponu do 18%.
Prosječna Fo muškog glasa iznosi oko 120 Hz, a ţenskog 225 Hz. Istraţivanja Fo djece
još su sloţenija pa su podaci nekompletni, no zna se da je Fo prvog plača vrlo visoka i
kreće se izmeĎu 400 i 600 Hz. Porastom kronološke dobi djeteta Fo pada. Optimalna
visina glasa obično je smještena na četvrtom tonu iznad najdubljeg (ugodnog) tona.
Glas koji koristimo u normalnom govoru nazivamo habitualnim. Ukoliko su optimalna i
habitualna visina glasa identične, tada nema zlouporabe glasa. Ton (visina) glasa ovisi o
brzini titranja glasnica. Brţe titranje stvara viši ton (frekvenciju) glasa. Prosječna visina
osnovnog laringealnog glasa iznosi:
14
kod muškarca 100 - 120 Hz
kod ţena 200 - 220 Hz
kod djece 300 Hz.
Visina glasa varira u govoru (rečenična intonacija i naglasak). Govorni raspon glasa
varira uglavnom unutar jedne do dvije terce (trećine oktave), ali u fiziološkom rasponu
glas moţe varirati u rasponu od 2 do 4,5 oktave. Pjevački raspon (dijapazon) glasa uţi je
od fiziološkog jer u njemu treba tačno kontrolirati tonske visine. Pjevački raspon iznosi
2 do 2,5 oktave. Kod boljih pjevača raspon ide i do 3 oktave, pa čak do 4 i 5 oktava.
Maksimalni fiziološki raspon visine glasa (a često i pjevački) ne moţe se proizvesti, a
da ne doĎe i do promjene boje glasa (visina tona i boja glasa različite su kategorije).
Boju glasa (tona) odreĎuju viši harmonici, a visinu glasa odreĎuje osnovni harmonik.
Po boji tona razlikujemo i prepoznajemo muzičke instrumente i pojedine osobe. Boja
glasa je takoĎer perceptivni fenomen, tj. karakteristika koja svaki glas čini
neponovljivim i "svojim" zbog čega vrlo brzo i uspješno prepoznajemo različite
govornike (sl. 1.6), ali i različite instrumente i druge zvukove. U objektivnoj akustici
odgovara joj spektar sloţenog tona. Nastaje kao rezultat rezonancije, tj. obrade, ili
moţda bolje, dorade zvuka na putu od glasnica do izlaska iz tijela. Većina autora ipak
ističe isključivo ţdrijelnu, usnu i nosnu šupljinu kad govore o rezonanciji. Neka šupljina
moţe reagirati na neki ton kao rezonator samo onda ako njena vlastita ili karakteristična
frekvencija odgovara frekvenciji izvora tog tona, tj. ako je ugoĎena na visinu tog tona.
Prema Malmbergu (1974), boja glasa nastaje kao rezultat čujnosti harmoničnih tonova
čiji broj i intenzitet ovise o frekvenciji izvornog tona, veličini (volumenu) i obliku
rezonatora, napetosti stijenki rezonatora te materijalu od kojeg je graĎen. Harmonici se
javljaju u svakom sloţenom harmoničnom zvuku kao cjelobrojni umnošci osnovnog
harmonika (fundamentalnog tona) i jasno su vidljivi u svim vokalima kao i u spektru
zvuka kojeg proizvodi neki muzički instrument. U ljudskom glasu vidljivo je i do 15
harmonika. Njihova frekvencija je uvijek odreĎena fundamentalnom frekvencijom (npr.
ako je osnovni laringealni ton imao 100 Hz, tada će prvi harmonik (H1) imati 200 Hz,
drugi H2 - 300 Hz, treći H3 - 400 Hz itd. Pojačane intenzitetske vrijednosti grupiranih
harmonika predstavljaju formante, a njih moţemo najsigurnije očitati pomoću LPC
analize.
Slika 1.6 Dva muška govornika izgovaraju vokale (spektrogram – gore i signal u vremenskom domenu –
dole).
15
Za potpuno razumevanje principa prepoznavanja govora, potrebno je znati i neke
osnovne karakteristike čovekovog sluha jer je u biti, elektronsko prepoznavanje glasa
na neki način imitiranje slušnog aparata.
Mlada osoba (20 godišnjak) moţe čuti frekvencije u rasponu od 16 Hz do 20 kHz, ali
osjet sluha nije jednak u cijelom čujnom području, slušanje nije jednako za sve
frekvencije. Najveća osjetljivost nalazi se u području oko 3 kHz. Na ovom
frekvencijama prag čujnosti moţe biti čak ispod 0 dB SPL ( oko -5 dB). Ova osjetljivost
moţe se postići samo u posebnom tihom ambijentu gdje se ispituje sluh kao npr. u
audiometrijskoj kabini ili gluhoj komori. MeĎutim, u ''normalnom'' prostoru kao npr. u
tihoj sobi prag sluha je viši i on će imati vrijednost od 5 do 10 dB SPL (Sound Pressure
Level). Na slici 1.7 prikazana je lokacija glasova u normalnom govoru s obzirom na
njihovu frekvenciju i intenzitet. Vokali su glasovi s najvećim intenzitetom (izmeĎu 40 i
60 dB) a frekvencijski izmeĎu 300 i 1000 Hz. U istom pojasu se nalaze i sonanti ali s
nešto manjim intenzitetom te zvučne komponente zvučnih konsonanta. Bezvučni
konsonanti uglavnom su smješteni na višim frekvencijama (izmeĎu 2 i 8 kHz) a njihova
je energija za oko 30 dB slabija od vokala. Srednje vrijednosti govornih formanta su:
𝐹1 = 400 Hz, 𝐹2 = 1,2 kHz, 𝐹3 = 2 kHz i 𝐹4 = 3,9 kHz. IzmeĎu 𝐹3 i 𝐹4 nalazi se područje
najveće osjetljivosti sluha (oko 3,3 kHz) [24].
Slika 1.7 Raspored akustičke energije glasova u slušnom polju.
16
1.3 Sistemi Prepoznavanja
Jedan od najpopularnijih primjena digitalne obrade govornog signala, danas je njegovo
prepoznavanje. Analiza samo nekih osnovnih karakteristika govornog signala u
prethodnom poglavlju dovoljno govori o njegovoj kompleksnosti iz čega se moţe
zaključiti da su tehnike za njegovo prepoznavanje ustvari mnogobrojne. U osnovi,
sisteme za prepoznavanje moţemo podijeliti u tri različite oblasti: prepoznavanje
govora, prepoznavanje jezika i prepoznavanje govornika.
Slika 1.8 Podjela sistema za prepoznavanje.
Cilj ovog rada su tehnike prepoznavanja govornika, ali će se dati kratko objašnjenje
prepoznavanja govora, kao i osnovne razlike izmeĎu ove dvije tehnologije [5].
1.3.1 Prepoznavanje govora
Pojam prepoznavanja govora se bitno razlikuje od prepoznavanja govornika i
predstavlja mogućnost mašine (računara) da razumije šta čovjek govori. Dakle, ova
tehnologija daje akcenat prepoznavanju slova, riječi ili pak čitavih izgovorenih rečenica
kao kontinualnom govoru, u cilju ispunjavanja ljudskih zahtjeva. Praktično, ona nam
omogućava da tastaturu, miš ili bilo koji drugi hardverski dodatak za kontrolu unošenja
podataka u računar zamjenimo samo mikrofonom, kako bi računarski sistem na osnovu
naših govornih komandi eventualno ispunio naše zahtjeve. Savremeni princip je da se
snimljena rečenica ili fraza izdjeli na riječi, a zatim i slova, i onda se različitim
tehnikama izvrši prepoznavanje. Pored digitalne obrade signala govora, koja je u
nekoliko prvih koraka slična kao pri procesu prepoznavanja govornika, osnovna
problematika računarskog razumijevanja govora se od samih početaka pa i danas svodi
na učenje sistema (računara) da zapamti što više riječi. Na taj način, uspešno su
napravljene elektronske audio biblioteke sa jako velikim brojem izraza koji se koriste u
17
prepoznavanju govora. MeĎutim, na ovom polju i dalje preovladava problem jezika, što
moţemo primjetiti i na kućnim računarima koji poseduju aplikacije za govorne naredbe,
kao i na novijim tipovima mobilnih telefona. Naime, uočljivo je da ako ţelimo da nas
računar razumije, moramo mu se obraćati uglavnom na engleskom jeziku, a ako
naiĎemo na operativne sisteme koji nude mogućnosti i drugih jezika, obično su to
prilično male baze riječi i izraza što čini nedostatke da u potpunosti, ovaj tip
prepoznavanja koristimo onako kako bi trebalo. Naravno, to je samo jedna od
mnogobrojnih primjena ove tehnologije, te ovo svakako ne umanjuje njenu vrijednost.
1.3.2 Prepoznavanje govornika
MeĎutim, u cilju ovog rada i prema modernijim načinima obrade signala govora,
prepoznavanja govornika je nešto interesantnija tehnologija. Kao što vidimo na slici 1.9,
ova tehnologija uključuje dvije aplikacije: verifikaciju govornika i identifikaciju
govornika i predstavlja put do mogućnosti da se uz pomoć karakteristika signala otkrije
ko ustvari govori.
Verifikacija govornika (end. SV - Speaker verification) je proces koji ima za cilj da
ustanovi da li je govornik osoba koja tvrdi da jeste (sl. 1.9). Pošto se izvrši ekstrakcija
obiljeţja glasa, modeliranje govornika i njegovo pakovanje u bazu podataka, snima se
novi izgovor i uporeĎivanja šablona modela koji postoji u bazi i novo-snimljenog
govornika, verifikuje se njegov identitet, tj. utvrĎuje se da li je govornik isti kao onaj iz
baze ili ne. Naravno, algoritmom se postavlja odreĎeni prag (detaljnije u poglavlju 2)
čije prelaţenje znači da je govornik onaj koji tvrdi da jeste dok u suprotnom, ako su
odreĎene vrijednosti ispod praga, znači da govornikov identitet ne odgovara onom koji
se nalazi u bazi.
Slika 1.9 Blokovi u procesu verifikacije govornika
Identifikacija govornika (SI - Speaker identification) predstavlja pristup u
prepoznavanju na osnovu koga se eventualno saznaje identitet odreĎene osobe
(govornika) (sl 1.10). Ovo znači da u bazi podataka, koja je pomenuta prilikom
definisanja verifikacije, postoji više modela govornika, tj. više osoba koje su ranije
snimljene i čiji je govor obraĎen sačuvan u bazi. Cilj je dakle izvršiti poreĎenje šablona
govora osobe čiji se identitet traţi sa svakim od onih u bazi i na osnovu jednog od
algoritama naći onaj koji mu najviše odgovara. Ovaj pristup takoĎe zahtjeva predhodno
postavljanje praga vrijednosti, ispod kojeg znači da model dotičnog govornika nije
18
pohranjen u bazu.Vaţno je istaći da pomenute aplikacije mogu biti bazirane na tekst-
zavisnom i tekst-nezavisnom prepoznavanju kao i njihovu povezanost sa sistemima
otvorenog i zatvorenog tipa.
Slika 1.10 Blokovi u procesu identifikacija govornika
TakoĎe je bitno naglasiti da postoje tri osnovna tipa razlika izmeĎu dva različita
govornika
razlike izmeĎu glasnih ţica i oblika vokalnog trakta,
razlike izmeĎu stila govora (uključujući i akcenat govornika),
razlike u načinu na koji se govornici izraţavaju (riječi i fraze koje koriste), dok
prenose odreĎenu poruku.
Uglavnom, tehnologija prepoznavanja govornika koristi prva dva tipa razlika i svi su
procesi bazirani na njima, jer je treći prilično kompleksan s obzirom da traţi informacije
o rečima i frazama što uključuje dodatni problem kad su različiti jezici u pitanju.
Iz ovoga slijedi nova podela tehnologije na tekst-nezavisno (prva dva tipa) i tekst-
zavisno (treći tip razlika) prepoznavanje. Tekst-nezavisno prepoznavanje je bazirano
uglavnom na karakteristikama glasa i statističkim osobinama govornog signala
govornika i dozvoljava svakoj osobi da svojim prirodnim tonom i bojom glasa izgovori
bilo kakvu riječ ili frazu u cilju identifikacije. Tekst-zavisno prepoznavanje znači da
sistem mora imati unaprijed definirane izraze koje govornik mora izgovoriti kako bi
eventualno bio identifikovan. Ovaj način je puno precizniji i bezbjedniji s obzirom na to
da postoji još jedan parametar (treći od gore nabrojanih) prema kojem se vrši
identifikacija. Bezbjednost proizilazi iz toga da u slučaju uljeza, sistem ima puno
jednostavniji posao, jer se pretpostavlja da uljez ne zna koju frazu treba da izgovori i
samim tim znači da ne moţe biti identifikovan jer model njegovog govora ne postoji u
bazi podataka [5],[6].
19
Slika 1.11 Klasifikacija obrade govornog signala.
Ovakav pristup vodi razmatranju otvorenog tipa i zatvorenog tipa prepoznavanja
govornika. U slučaju da pri identifikaciji ili verifikaciji, u bazi podataka ne postoji
model govornika čiji identitet traţimo, onda je to prepoznavanje otvorenog tipa. Ovaj
tip prepoznavanja je nešto komplikovaniji jer zahtijeva da definiranje odreĎenog
kriterija prema kojem će se odlučiti da li u bazi podataka uopšte postoji model tvrĎenog
govornika. Kod zatvorenog tipa, prepoznavanje se vrši pod predpostavkom da u bazi
sigurno postoji model govornika kog identifikujemo i problematika se svodi samo na
traţenje najmanje razlike izmeĎu tog modela i ostalih iz baze, gdje onaj koji se namanje
razlikuje predstavlja govornika čiji se identitet traţi [5].
Prilikom prepoznavanja glasa govornika moţe doći do brojnih problema u procesu. Prvi
tip razlike ne moţe uvijek biti toliko precizan i puno faktora moţe uticati na konačan
rezultat prepoznavanja. Često, mentalno i fizičko stanje čovjeka moţe donijeti razlike u
načinu na koji on govori. TakoĎe, uticaj različitih fizičkih i psihičkih stimulansa poput
cigareta, alkohola i narkotika u različitim trenutcima prepoznavanja govornika, moţe
biti veoma vaţan na boju glasa i načinu izgovora. Ako govornik pokušava da imitira
drugog govornika ili se sa namjerom trudi da promjeni svoju boju ili visinu glasa, u
procesu prepoznavanja moţe doći do dodatnih problema. Šum prilikom izgovaranja i
snimanja, sama digitalizacija kao i greške u kalkulacijama odreĎenog algoritma, takoĎe
20
mogu dovesti do pogrešnih zaključaka. Navedeni problemi i njihova priroda nalaţu da
se prilikom dizajniranja algoritama za prepoznavanje, isti obavezno moraju uzeti u obzir
i učiniti sve da se njihov uticaj smanji.
Ispravno sprovedena, ova tehnologija omogućava potvrĎivanje identiteta govornika u
oblastima biometrije kao i kontrolu pristupa uslugama kao što su telefonsko glasovno
biranje, bankarske usluge putem telefona, informacioni servisi, govorna pošta, daljinski
pristup računarima i dr. Sve ove pomenute primjene čine je tako interesantnom i jako
bitnom u modernim sistemima komunikacija.
Prepoznavanje govornika se bazira na fazi treniranja govornika (eng. training,
enrollment) i fazi prepoznavanja (slika 1.12). U fazi treniranja, snimljeni govor se
modelira i pravi se njegov šablon kako bi se upisao u bazu podataka. Faza
prepoznavanja obuhvata procese uporeĎivanja šablona iz prethodne faze i donošenje
odluke. Ove dvije faze su navedene respektivno kako se i izvršavaju u identifikaciji
govornika jer da bi ono uopšte i imalo smisla potrebno je prvo oformiti bazu podataka
koja sadrţi modele jednog ili više govornika (verifikacija ili identifikacija). Iz
navedenog slijedi da se nakon treninga i modeliranja govornika oni upisuju u bazu,
zatim se snima govornik čiji identitet traţimo, koji takoĎe prolazi kroz fazu treninga i
tek onda na red dolazi prepoznavanje, tj. poreĎenje kreiranih šablona i donošenje
odluke. MeĎutim, faza treniranja govornika je puno bitnija i predstavlja osnov u procesu
prepoznavanja govornika tako da će dalje u radu ona biti više razmatrana. Treniranje se
sastoji iz dva koraka:
Ekstrakcija obiljeţja (eng. Feature extraction, Front-end Processing ) i
Modeliranje govornika (eng. Speaker modeling ).
Slika 1.12 Komponente automatskog prepoznavanja govornika.
U narednim poglavljima će biti obraĎena oba koraka pri čemu će posebna paţnja biti
posvećenja ekstrakcija obiljeţja, jer se u sklopu ovog procesa vrši izvlačenje Mel-
frekventnih kepstral koeficijenata, što je ustvari jedan od ciljeva ovog rada [6].
21
1.3.3 Ekstrakcija obilježja
U suštini, ekstrakcija obiljeţja predstavlja svoĎenje višedimenzionalnih vektora, koji
opisuju valni oblik govora, na niţedimenzionalne vektore koji sadrţe najosnovnije
karakteristike govornika koje ga čine jedinstvenim. Dakle:
dN RRf : , gdje je Nd (1.2)
Na osnovu ovih svojstava govornika moţemo izvršiti prepoznavanje jer ona sadrţe
dovoljno informacija o govorniku i različita su za svakog, što je bilo objašnjeno u dijelu
1.2. Ako je za prepoznavanje potrebno izgovoriti više od jedne riječi, čak cijelu
rečenicu, kompleksnost obrade signla raste stoga i njegova dimenzionalnost u
modeliranju. Prema navedenoj definiciji izvlačenje svojstva, vidi se da je ono, posebno
u takvim slučajevima, neophodno. TakoĎe, kada je u pitanju bilo kakva obrada signala u
prepoznavanju, ovim se znatno reducira kompleksnost proračunavanja. Neke osnovne
osobine koje čine ovu tehniku nezaobilaznom su:
visoka varijacija svojstava izmeĎu različitih govornika,
niska varijacija svjostava u okviru jednog govornika,
jednostavna je za mjerenje,
otporna na prikrivanje glasa imitacijom drugih govornika,
otporna je na distorziju i šum u signalu govora,
maksimalno nezavisna od ostalih svojstava govora.
Prve dvije osobine su pokazane primjerom na slici 1.13. Vidi se da se na drugom setu,
svojstva različitih govornika puno više razlikuju, što predstavlja jednostavniju varijantu
prilikom prepoznavanja. U prvom setu (lijevo), razlike izmeĎu vektora govornika 1 i
govornika 2 skoro da i nema, meĎutim govornik 3 je jasno odvojen od njih, gledajući
svojstvo 2 (vertikalna osa). Generalno gledano, ni jedan ni drugi set zasebno, ne odvaja
govornike u funkciji oba svojstva savršeno, tako da, bez obzira što je prvi set nešto
lošiji, oba su potrebna za razmatranje.
Svojstva, takoĎe moraju biti jednostavna za mjerenje i to uključuje dva faktora. Prvo,
u procesu digitalizacije, poţeljno je da se odreĎena svojstva govornika u njegovom
govoru pojavljuju dovoljno (normalno) učestano, tako da se mogu izvlačiti iz kratkih
uzoraka govornog signala (kao što je već pomenuto, govorni signal se smatra
stacionarnim u intervalima dugim oko 20 ms). Drugi faktor zahtjeva da sama ekstrakcija
obiljeţja bude jednostavno izvodljiva, sa malo utrošenog vremena, po već odreĎenim
algoritmima.
Otpornost na prikrivanje glasa imitacijom drugih govornika i na šum, odnosno
distorziju je podjednako neophodna u algoritmima za prepoznavanje govornika.
Konačno, različita svojstva trebaju biti što je više moguće nezavisna meĎusobno, to
22
znači da slučaj u kom su dva različita svojstva (akcenat i visina glasa, na primjer)
meĎusobno korelirana, moţe biti fatalan po rezultate prepoznavanja [6].
a) b)
Slika 1.13 Primjeri dvodimenzionalnih setova svojstava sa lošom a) i dobrom b), sposobnošču
razlikovanja govornika.
Naravno, praktično je jako teško postići perfekciju u navedenim osobinama tako da se
neke od njih, bar u ovom radu mogu zanemariti (otpornost na prikrivanje glasa
imitacijom drugih govornika i mimikrija).
Postoji više tehnika izvlačenja svojstva, ali je u ovom radu bačen akcenat na tehniku
Linearnog Prediktivnog Kodiranja (LPC, o kojem je već nešto rečeno u poglavlju 1.2) i
nešto detaljnije na tehniku koja počiva na bazi kepstralne analize i Mel-frekventnih
kepstralnih koeficijenata (poglavlje 2), koja je danas najpopularnija u prepoznavanju
govornika i govora uopšte.
Smisao LPC-a u spektralnoj analizi već je pomenut ranije. Dakle, nakon FFT-a,
transformacije govornog signala iz vremenskog u frekventni domen, vrši se
usrednjavanje dobijenih vrijednosti FFT-a i na taj način se dobije ''izglačan'' FFT
spektar, eliminiraju se harmonici (više nisu istaknuti) a veće skupine pojačanih
harmonika formiraju formante koji postaju vidljivi. Ovim se dobijaju formanti koji
predstavljaju jedno od svojstava govornika.
Što se tiče vremenskog domena, linearna predikcija polazi od pretpostavke da su
susjedni uzorci vremenskog oblika signala povezani tako da se ponašanje dolazećih
uzoraka moţe predvidjeti na osnovu prethodnih. To ustvari znači da se svaki uzorak
moţe predstaviti linearnom kombinacijom prethodnih. Dakle ako traţimo vrijednost
uzorka s[n], prema linearnoj predikciji bi bilo:
23
1
,p
k
s n a k s n k
(1.3)
gdje p predstavlja red predikcije. Cilj LP analize u vremenskom domenu je da se
odrede koeficijenti predikcije, | 1,...,a k k p tako da prosječna greška predikcije
bude što manja. Greška predikcije za n-ti uzorak je data kao razlika stvarne vrijednosti
uzorka i njegove predviĎene vrijednosti:
1
.p
k
e n s n a k s n k
(1.4)
Kada je izračunata greška e[n] mala, znači da aproksimacija uzorka s[n] iz (1.3) dobra.
Totalna kvadratna greška predikcije data je izrazom:
2
2
1
.p
n n k
E e n s n a k s n k
(1.5)
Minimalna vrijednost ove kvadratne greške se dobija traţenjem parcijalnih izvoda po
a[k], njihovim izjednačavanjem sa nulom i raspisivanjem izraza od 1 do p:
.,...,1,0 pkka
E
(1.6)
U slučaju kad je p veliko, raspisivanje ovih vrijednosti i proračun za svaku od njih moţe
biti jako zahtjevno, tako da sama estimacija greške, u cilju nalaţenja predikcionih
koeficijenata, postaje prilično komplikovan korak. Ovaj problem se izbjegava
rješavanjem takozvanih AR jednačina (Yule-Walker) [30]. Postoje dvije različite metode
za rješavanje ovih jednačina: metod kovarijanse i metod autokorelacije. Kako se metod
autokorelacije pokazao kao efikasniji i garantovao uvijek stabilni filter (veza sa filterom
biće objašnjena kasnije), on se uzeo kao podrazumijevani i polazi od oblika:
Ra r (1.7)
R ovdje predstavlja poseban tip matrice (tzv. Toplicova matrica) [30], a je vektor LPC
koeficijenata i r predstavlja autokorelaciju. Naravno, i matrica R i vektor r su potpuno
odreĎeni sa p autokorelacionih uzoraka. Matrični oblik ove jednačine je dat kao:
24
2 11 2 11
3 212 1 2
1 2 3 4 1 1
11 2 3
1
1
1
1
p p
p p
p p p p p
p p p p p
r aR
r rr r ar
r rrr r a
r r r r r a
rr r r r a
(1.8)
Sekvenca autokorelacije s[n] uzoraka p-tog reda je definisana izrazom:
1
0
N k
k
R k s k s n k
. (1.9)
Da bi se iz rješenja ove autokorelacione metode, tj. iz matrične jednačine (1.8) dobili
koeficijenti predikcije a[k] (sl. 1.14), koristi se algoritam koji se zove Levinson-Durbin
rekurzija (ovaj algoritam neće biti detaljnije obraĎivan) [30]. Vaţno je spomenuti da se
ovim algoritmom, uz predikcione koeficijente a[k], kao produkt dobijaju i reflekcioni
koeficijenti k[i], i = 1,...,p, koji su ograničeni izrazom | | 1k i . Oni predstavljaju
gubitke uslijed refleksije nastale prolaskom signala govora od pluća do izlaska vani.
Slika 1.14 Izračunavanje LPC koeficienata korišćenjem autokorelacione metode i Levinson-Durbin
rekurzije.
Pokazano je da izračunavanje predikcionih koeficijenata postaje prilično komplikovano
ako je dinamički opseg spektra signala govora velik. To jest, amplituda tokom vremena
se mijenja sa velikom učestanošću pa je numerički prilično komplikovano doći do
spomenutih koeficijenata. Zbog toga, u prethodnim fazama, tačnije u metodi
autokorelacije se koriste filtri (koji su pri definisanju ove metode pomenuti) koji sluţe
da reduciraju ovaj dinamički opseg i do jednog od tih filtera se dolazi formulom:
0
1
R
R , (1.10)
gdje je R[k] autokorelaciona sekvenca definisana izrazom (1.9), a predstavlja
vrijednosti amplitude filtera. Ovim se postiţe efekat naglašavanja dijelova izgovora koji
su bitniji, to jest koji imaju veću vrijednost amplitude u vremenskom domenu. Na slici
1.9 prikazan je govorni signal u vremenskom domenu nakon što je uzorkovan (prva
25
slika) i moţe se vidjeti koliko je ustvari varijabilan u odnosu na izlaznu funkciju iz filtra
datog relacijom (1.8). TakoĎe, moţe se primetiti da prilikom filtriranja, obrada je vršena
u okvirima Hamming-ovom prozorskom funkcijom što je dodatno uticalo na dobijanje
manje varijabilnog signala. Nakon ovakvog filtriranja, prilično je jednostavnije računati
LPC koeficijente [8].
LPC analiza u vremenskom i spektralnom domenu se prvobitno koristila samo za
kodiranje govornog signala. MeĎutim, kombiniranjem kepstralne analize sa ovom
tehnikom, došlo se načina za izračunavanje linearnih prediktivnih kepstral koeficijenata
(LPCC). Ovi koeficijenti pokazali su se kao veoma efikasni u procesu izvlačenja
svojstva govornika.
Sama kepstralna analiza govornog signala je u mnogome donijela napredak na polju
prepoznavanja govornika. Pored LPCC-a, iz kepstruma govora dobijaju se i MFCC kao
najefikasniji na polju izvlačenja svojstva. Dodatnim modeliranjem govornika, a nakon
toga, uporedjivanjem šablona i mjerenjem, vrši se krajnje efikasno prepoznavanje
govornika. Kepstralna analiza kao i mel-frekventni kepstral koeficijenti će biti detaljnije
obraĎene u sljedećem poglavlju.
Slika 1.15 Primjer korišćenja filtera datog relacijom (1.9) sa Hamingovim prozorom na intervalu od 30
ms.
26
2 Mel-Frekventni Kepstralni Koeficijenti
(MFCC)
U prethodnim poglavljima su pomenuti i ukratko objašnjeni koraci u procesu
prepoznavanja govornika. MeĎutim, jedan od ciljeva ovog rada je nešto detaljnija
analiza koraka ekstrakcije obiljeţja govornika i to upravo na principu Mel-frekventnih
kepstralnih koeficijenata, tako da će u ovom poglavlju biti obraĎeno njihovo
izračunavanje i neke od osnovnih karakteristika.
2.1 Kepstrum
Da bi se moglo govoriti o Mel-frekventnim kepstral koeficijentima (MFCC), neophodno
je prvo definisati i shvatiti pojam kepstruma.
Naime, glas, a samim tim i govor, posmatran kao rezultat uticaja vokalnog trakta na
vazdušnu struju koja kroz njega prolazi, matematički se moţe modelovati u vidu
konvolucije brzo promjenljive pobudne sekvence e n i sporo promjenljivog
impulsnog odziva govornog trakta h n :
*s n e n h n . (2.1)
Dakle, titranje glasnica predstavlja pobudu koja brzo oscilira, a odziv prolaska kroz
govorni trakt sporo oscilirajuću spektralnu obvojnicu, što se moţe vidjeti na slici 2.1.
Na slici je označena obvojnica koja predstavlja posljedicu prolaska kroz vokalni trakt.
Pošto spektri govora različitih govornika imaju različite oblike, odnosno, razlikuju se u
oblicima spektralnih obvojnica, sljedi da je radi identifikovanja govornika iz
posmatranog spektralnog oblika potrebno izdvojiti oblik njemu pripadajuće spektralne
obvojnice. Prva primjena kepstruma ustvari je bila dekonvolucija, to jest, kao i u ovom
slučaju, nalaţenje linearne zavisnosti izmeĎu pobude govora i uticaja vokalnog sistema,
odnosno obvojnice. Vokalni trakt govornika je karakterisan niţim spektralnim
komponentama i koristi se za prepoznavanje govora. Dakle, kepstrum predstavlja
algoritam koji na neki način vrši funkciju:
ˆˆ ˆ*s n e n h n s n e n h n . (2.2)
Sama ideja počiva na osobinama Fourierove transformacije u odnosu na konvoluciju, to
jest:
* ( ) ( ) ( )s n e n h n S E H . (2.3)
27
Ovdje ( )S , ( )E i ( )H
predstavljaju Fourierove transformacije signala s n ,
e n i h n , respektivno.
Slika 2.1 Spektar signala sa prikazanom obvojnicom.
Moţe se primijetiti da prebacivanjem signala u frekventni domen, konvolucija
prestavlja mnoţenje. MeĎutim, ako se produkt dvije funkcije logaritmira, poznato je da
se on moţe napisati kao zbir logaritama svake pojedinačno:
ˆlog ( ) log ( ) log ( ) ( )S E H S . (2.4)
Ako se nad ˆ( )S , izvrši inverzna Fourierova transformacija, dobija se funkcija s n ,
koja je u izrazu (2.2) predstavljena kao suma e n i h n . Dakle, sada se moţe pisati
da je:
1 1 1 1 1ˆ ˆ ˆ( ) log ( ) log ( ) ( ) ( )F S F E F H F E F H , (2.5)
gdje je: 1 ˆˆ ( )s n F S , (2.6)
1 ˆˆ ( )e n F E i (2.7)
1ˆ ˆ ( )h n F H . (2.8)
28
Ovim se, multiplikativna kombinacija amplitudnih spektralnih komponenata, iz koje je
praktično teško izdvojiti informacije vezane za spektralnu obvojnicu, pretvara u
aditivnu kombinaciju kepstralnih komponenata: e n i h n , koje respektivno
odgovaraju pobudnoj sekvenci i spektralnoj obvojnici govornog signala. Na slikama 2.2
i 2.3 su data 'gruba' grafička objašnjenja izraza (2.1)-(2.8):
Slika 2.2 Spektar govornog signala prikazan kao produkt pobude glasnica i uticaja vokalnog trakta
(obvojnica)
.
Slika 2.3 Kepstar govornog signala prikazan kao suma pobude glasnica i uticaja vokalnog trakta
(obvojnica).
Kepstrum (kepstar) je ranije korišćen pri rješavanju problema eha, to jest u otklanjanju
istog, jer se na njemu jasno mogao vidjeti u obliku pikova koji dolaze kao visoke
kvefrencije [10]. Kvefrencija predtsavlja nezavisnu varijablu na grafiku kepstruma. Ona
je mera vremena, ali ne predstavlja vremenski domen signala. Na primer, ako je
frekvencija audio signala 44100 Hz i u njegovom kepstrumu postoji veliki pik čija je
kvefrencija 100 uzoraka, to znači da on ima odreĎene harmonike na 44100 Hz/100 =
441Hz. Sama riječ Kepstaum (eng. Cepstrum), je dobijena 'izvrtanjem' prva četiri slova
od riječi Spektar, najvjervatnije iz razloga što se koristi inverzna Fourierova
transformacija logaritma, kao što je prije objašnjeno. Na ovaj način, nastao je potpuno
novi domen, domen kvefrencija , koji ustvari leţi na vremenskoj osi, ali sam signal više
nije onaj originalni govor. Na slikama 2.4, 2.5 i 2.6 , dati su oblici signala izgovorene
engleske riječi ''Go'', i to u vremenskom domenu (valni oblik signala), spektar i
kepstrum, respektivno.
29
Slika 2.4 Valni oblik izgovorene fraze ''Go'' u vremenskom domenu.
Slika 2.5 Spektar signala izgovorene fraze ''Go'' u frekventnom domenu.
30
Slika 2.6 Kepstrum signala izgovorene fraze ''Go'' u kvefrentnom domenu.
Vaţno je istaći da dijelovi kepstruma koji su (slika 2.6) bliţi nuli, predstavljaju niske
kvefrencije ([0,0.05]), i to su posljedice prolaska struje vazduha kroz vokalni trakt, dok
su dijelovi koji se nalaze lijevo, ustvari visoke kvefrencije i one predstavljaju titranje
glasnica.
Moţe se primjetiti da se u dosadašnjem izlaganju radilo o realnim vrijednostima
funkcija, na osnovu čega se moţe zaključiti da se u ovom slučaju radi o realnom
kepstru. Pored realnog, postoji i kompleksni kepstar i pored toga što se kao pojam
razlikuje od realnog, njegova analiza se posebno ne razlikuje od analize realnog kepstra.
Naime, na osnovu prethodno datih izraza i slika, moţe se doći do relacije za dobijanje
kepstralnih koeficijenata i to kad je u pitanju realni kepstar:
1ˆ( ) ( ) log ( )
2
j ns n c n S e d
. (2.9)
U ovom slučaju moţe se koristiti aproksimacija stvarnog kepstra korištenjem DFT-a
(Diskretna Fourierova Transformacija) umjesto Fourierove transformacije. To znači da
se kepstar cp(n) nalazi kao inverzni DFT, logaritma modula DFT-a ulaznog niza, tj.
prema izrazu:
21
0
1( ) log ( ) ,0 1
N j nkN
p p
k
c n S k e n NN
(2.10)
31
U ovom slučaju zbog pojave aliasinga, odnosno, preklapanja spektra, uslijed
otipkavanja Fourier-ove transformacije aproksimacija kepstra ( )pc n i stvarni kepstar su
vezani slijedećim izrazom:
( )p
r
c n c n rN
. (2.11)
Diskretizacija spektra uzrokuje periodičnost kepstra, tj. kepstar izračunat pomoću DFT-
a moţemo dobiti periodičkim ponavljanjem kepstra izračunatog korištenjem prave
Fourierove transformacije svakih N uzoraka prema izrazu (2.11).
Pored definisanog, realnog kepstra, postoji i kompleksni kepstar. Kompleksni kepstar,
za razliku od realnog sadrţi informaciju o magnitudi i fazi odgovarajućeg spektra. Izraz
''kompleksni'' dolazi od činjenice da se u njegovom izračunavanju koristi kompleksni
logaritam, dakle:
1 1
ˆ( ) log ( ) log ( ) arg( ( ))2 2
j n j nx n S e d S j S e d
, (2.12)
gdje arg( ( ))S , predstavlja fazu. Veza izmeĎu realnog i kompleksnog kepstra data je
izrazom:
*ˆ ˆ
( )2
x n x nc n
. (2.13)
Pošto se u procesiranju govornog signala koristi uglavnom realni kepstar, naročito u
procesiranju kojim se bavi ovaj rad, kompleksni spektar neće biti detaljnije razmatran
[7].
32
2.2 MFCC pristup
U osnovi, Mel-frekventni kepstralni koeficijenti, predstavljaju diskretnu kosinusnu
transformaciju logaritma spektra signala analiziranog na skali koja imitira frekvencijsku
karakteristiku ljudskog uha, tzv. mel skalu (melodičnu, eng. melodic) (sl. 2.7). Naime,
frekvencije ispod 20 ili iznad 20 kHz, ljudsko uho nije u mogućnosti da registruje, dok
frekvencije koje se nalaze u ovom opsegu, ne čuje podjednako. Sluh je daleko
osjetljiviji u području niţim i srednjih frekvencija nego u području visokih. Ova
karakteristika ljudskog uha naziva se "frekventna selektivnost" i na najniţim
frekvencijama je oko 100 Hz, ali na onim višim iznosi i više od 4 kHz. Zanimljivo je,
dakle, da razliku izmeĎu 20Hz i 150Hz moţe osjetiti gotovo svaki čovjek, dok razliku
izmedju 15kHz i 17kHz moţe osjetiti jako mali broj ljudi. Ovo se temelji na činjenici da
ljudsko uho prepoznaje pojedine frekvencijske pojaseve kao grupe zvukova, otprilike
rasporeĎene kao niske frekvencije, srednje frekvencije i visoke frekvencije. Niske
frekvencije (bas) se pribliţno nalaze u pojasu od 20Hz do 400Hz, srednje frekvencije od
400Hz do 7,000-8,000Hz, a visoke frekvencije od 8,000Hz do 20,000Hz. TakoĎe, bitna
stvar je znati da percepcija govora ne funkcioniše uvek linearno, to jest, neki od ovih
pojaseva frekvencija su na frekvencijskoj karakteristici ljudskog uha rasporeĎeni
linearno, a neki ne. U suštini, to je jedan od glavnih razloga definisanja mel skale kao i
primjene MFCC algoritma. Veza mel skale s frekvencijskom se definira kao [7]:
( ) 2595*log(1 )700
fMel f . (2.14)
gdje f predstavlja frekvenciju, a Mel (f) funkciju koja pretvara frekvenciju u vrijednosti
skale, koje su definisane jedinicom mel. Normirana je tako da joj je 1000 Hz = 1000
mel i ovo je učinjeno iz razloga što su frekvencije ispod 1kHz linearno rasporeĎene, a
iznad 1kHz logaritamski [11].
Slika 2.7 Mel skala
33
2.2.1 Blokovi MFCC procesora
Proces koji trasnformiše govorni signal u mel-frekventne kepstral koeficijente, sastoji se
iz šest osnovnih blokova, to jest operacija (koraka), koje moraju biti izvršene nad
signalom da bi se realizovala što kvalitetnija ekstrakcija njegovih obiljeţja (sl. 2.8) [14].
Predfiltriranje
Formiranje
okvira
(Hamming)
FFT
(Fast Fourier
Transform)
DCT
(Discrete cosine
transform)
Kepstralni
koeficijenti
(log)
Mel-frkventno
pakovanje
(filter banke)
Govor
MFC
koeficijenti
Slika 2.8 Blokovi u procesu za izračunavanje MFCC-a prema ETSI Aurora standardu.
Pored blokova koji su prikazani na slici, potrebno je pomenuti još neke faze u obradi
signala, koje se tiču njegove digitalizacije i podrazumjevane su u njegovoj obradi ali
zvanično nisu deo konkretne ideje algoritma za računanje MFCC-a.
Dakle, kao što je poznato i pominjano u ranijim poglavljima, izvorni govorni signal je
analogan i pre bilo kakvog procesiranja zahtjeva digitalizaciju. To znači da prije ulaska
u ovaj MFCC procesor, govorni signal treba proći kroz Analogno-Digitalni (A/D)
konverter. Pri snimanju, mikrofon hvata kontinualne promjene pritiska u vazduhu
(zvuk) i pretvara ih u kontinualne promjene napona. Takav analogni signal, ( )as t se u
A/D koverteru pretvara u svoj digitalni oblik s n , uniformnim uzorkovanjem sa
periodom T:
( )as n s nT . (2.15)
Frekvencija uzorkovanja data je kao: 1/sf T . Ova frekvencija je odreĎena
Nyquistovom teoremom o uzorkovanju i mora biti bar dva puta veća od najveće
frekvencije u govornom signalu, kao što je već ranije objašnjeno u poglavlju 1. Pored
uzorkovanja, u A/D konverteru se vrši i kvantizacija po amplitudi, odnosno
dodjeljivanje amplitudnih nivoa vremesnki uzorkovanom signalu.
Kako govorni signal ima osobinu da je jako promjenljiv, potrebno ga je obraĎivati u što
kraćim segmentima, u okviru kojih njegovi parametri ostaju kvazistacionarni. Ovo znači
da bi se pri spektralnoj analizi signala, odnosno vršenjem Fourierove transformacije,
odjednom, nad cijelim signalom govora, mogle izgubiti pojedine spektralne osobine
samog signala koje su posljedice realizacije različitih fonema. Na ovaj način bi se mogle
izgubiti jako vaţne informacije koje govor nosi, a u tekst-nezavisnom prepoznavanju
govora, kakvim se bavi ovaj rad, bile bi oštećene lokalne frekvencijske karakteristike
glasa odreĎene osobe koje je čine jedinstvenom. Zbog navedenih razloga, postala je
34
praksa da se pri procesiranju govornog signala pristupa njegovoj kratkotrajnoj analizi
(eng. short-term analysis). Kratkotrajna analiza predstavlja postupak pri kom se govorni
signal odreĎenim prozorskim funkcijama dijeli u okvire (eng. frame, window), dovoljno
vremenski dugačke da se signal u tim intervalima moţe smatrati stacionarnim.
Konkretno za signal govora, kao što je ranije objašnjeno, ovi okviri mogu biti od 20 do
30ms. Kratkoročna analiza je posebno bitna pri Fourierovoj transformaciji, tako da se
ona u ovakvom procesiranju signala ne vrši nad cijelim signalom, već nad okvirima
kojima je signal izdjeljen. Izračunavanje Fourierove transformacije (u ovom slučaju
DFT) se ponavlja tokom cijelog signala nad svakim od prozora, koji se pomjeraju tako
da svaki sljedeći obuhvata od 30 do 50% prošlog. Na ovaj način se sa sigurnošću
izbjegava slučaj da neki zvuk neće biti obuhvaćen odreĎenim okvirom ili da se naĎe
tačno na dodiru dva susjedna okvira [7][18][20].
Slika 2.9 Kratkoročna (spektralna) analiza.
Nakon A/D koverzije i uzimanja u obzir da se mora vršiti kratkotrajna analiza, govorni
signal ulazi u MFCC procesor i izračunavanje ovih koeficijenata se vrši u koracima koji
su prikazani slikom 2.8 :
1. Predfiltriranje,
2. Formiranje okvira,
3. FFT (Brza Fourierova transformacija),
4. Mel-frekventno pakovanje (filter banke),
5. Kepstralni koeficijenti (log),
6. DCT (Diskretna Fourierova transformacija) nad vektorima kepstralnih
koeficijenata dobijenih u prošlom koraku.
35
2.2.2 Pred-filtriranje
Prvi korak u procesu izračunavanja mel-frekventnih kepstral koeficijenata je pred-
filtriranje (eng. Pre-Emphasis). Ovaj korak predstavlja filtriranje ulaznog govornog
signala na način da mu se naglašavaju više frekvencije. Prolazeći kroz vokalni trakt i pri
izlasku iz usta, signal govora dobija pojačanje na niskim frekvencijama, koje se nakon
snimanja mikrofonom naročito naglašava, što moţe dovesti do neţeljenog izobličenja
signala koje moţe praviti problem kod prepoznavanja govora. Pred-filtriranje ima
zadatak da 'ispegla' spektar na način da propusti visoke frekvencije, a niske umanji
onoliko koliko je to potrebno da bi se signal vratio što bliţe prvobitnom stanju. Ovo
vaţi i izvodi se samo za glasovni zvuk, jer zvuk bez glasa, u pauzama govora i na kraju,
nema ove frekvencije i već je po svojoj prirodi gladak [6].
Slika 2.10 Primjer jednog okviira govornog signala i njegovog spektra sa pred-filtriranjem i bez pred-
filtriranja (40ms Hamming-ov prozor).
Na slici 2.10 se moţe primjetiti da pred-filtriranje čini fundamentalnu frekvenciju 0F
više naglašenom nego što je to slučaj bez ovog filtra, a u ranijim poglavljima objašnjeno
je značenje ove frekvencije za karakterizaciju i prepoznavanje govora. Najčešće
korišten pred-filter ima prenosnu funkciju:
11H z z , (2.16)
36
gdje 0 kontrolira nagib filtera. Jednačina kojom se ovaj filter izvodi u
vremenskom domenu u procesu izračunavanja MFCC-a ( 0.97 ) je:
0.97 1x n s n s n . (2.17)
Ovdje s[n] predstavlja govorni signal koji ulazi u blok za pred-filtriranje, a x[n] izlazni
signal iz istog bloka.
2.2.3 Prozoriranje
Kao što je opisano u dijelu za kratkoročnu analizu, formiranje okvira (prozora) vrši se
takozvanim Prozorskim funkcijama (eng. Window function). Ove funkcije su
okarakterisane osobinom da su samo u odreĎenom definisanom intervalu različite od
nule i mnoţenjem sa signalom koji ulazi u ovaj blok izdvajaju se okviri nad kojima se
vrši Fourierova transformacija (DTFT). Za kvalitetnu obradu signala govora i što
preciznije prepoznavanje istog, jako je bitno da se odabere prava prozorska funkcija.
Dobra prozorska funkcija u svom spektru treba da ima uzak glavni lob i potisnute
sporedne lobove, tako da je ovo jedan od glavnih parametara koji se razmatra pri
njenom izboru. Prozorske funkcije često mogu da izazovu takozvano curenje spektra,
što se moţe desiti i računanjem FFT aperiodičkog signala. Bočni lukovi dovode do
curenja spektra. Prethodna pojava uzrokuje razlijevanje energije signala u širokom
opsegu frekvencija. Umjesto pojedinačnih spektralnih komponenti u spektru se
pojavljuju glavni luk (eng. main lobe) i bočni lukovi (eng. side lobe). Iz ovoga slijedi da
se za odabir prave prozorske funkcije mora teţiti ka tome da galvni luk bude što uţi i da
bočni lukovi imaju što manji uticaj, tj. što veće slabljenje. Najjednostavnija prozorska
funkcija je pravougaoni prozor, koja je konstantna na datom intervalu, a izvan njega
jednaka nuli:
1, 0 1
0,
n Nw n
inače
. (2.18)
MeĎutim, ovaj prozor se slabije koristi iz razloga što ima loše performanse u pogledu
curanja spektra, i ako ulazni signal ostavlja potpuno nepromijenjen u valnom obliku. Iz
tog razloga, za procesiranje govornog signala uzeta je što pribliţnija, a opet u pogledu
curenja spektra, bolja, Hammingova prozorska funkcija ili (eng. raised cosine). U
vremenskom domenu, ona je data kao:
2
0.54 0.46cos , 0 11
nh n n N
N
.
(2.19)
Ovdje je N označava duţina okvira. Trajanje pojedinačnog okvira za govorni signal je
od 20 do 30ms i oni se preklapaju u vremenu, kao što je to objašnjeno na početku ovog
podpoglavlja. Pri ulaznom signalu x n u blok za formiranje okvira, na izlazu ćemo
imati signal pomnoţen ovim Hammingovim prozorom [15]:
37
y n x n h n . (2.20)
Za razliku od pravougaonog prozora, kod koga fundamentalna frekvencija 0F 'curi' u
susjedne harmonike i na taj način se izjednačava sa njima, Hamming-ov prozor jasno
odvaja 0F od ostalih harmonika.
Slika 2.11 Valni oblik Hammingovog prozora u vremenskom domenu i njegov spektar u (normaliziranom)
frekventnom domenu.
Nakon izračunavanja ovih okvira putem izraza (2.19), vrši se izračunavanje Fourierove
transformacije (FFT) nad svakim dobijenim okvirom.
2.2.4 FFT (Brza Fourierova transformacija)
Kako je ranije pomenuto, mel-frekventni kepstralni koeficijenti se dobijaju iz domena
kvefrencije, tj. kepstruma, jasno je da se prethodno signal mora prebaciti u frekventni
domen. Dakle, biće potrebno izvršiti Fourierovu transformaciju. Kako je signal, tj.
okviri dobijeni prethodnom operacijom prozoriranja, u diskretnom obliku, pri
procesiranju signala govora, neophodno je računati diskretnu Fourierovu transformaciju.
Imajući u vidu da obrada govornog signala pripada digitalnom procesiranju signala,
odnosno da se vrši softverski, za računanje koeficijenata diskretne Fourierove
transformacije (DFT) na računaru koristi se algoritam brze Fourierove transformacije
(engl. Fast Fourier Transform Algorithm - FFT). Po tom algoritmu potreban je manji
broj matematičkih operacija nego za DFT, tako da je kompleksnost algoritma manja
[23]. U prethodnom bloku za računanje MFCC-a, dobijen je signal je y n i odavde
10 20 30 40 50 600
0.2
0.4
0.6
0.8
1
U z o r c i
A m
p l i t u
d a
V r e m e n s k i d o m e n
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9-100
-80
-60
-40
-20
0
20
40
N o r m a l i z i r a n a f r e k v e n c i j a ( \ t i m e s \ pi r a d / u z o r a k )
M a
g n
i t u
d a
( d
B )
F r e k v e n t n i d o m e n
38
slijedi izračunavanje FFT-a nad svakim okvirom i odreĎivanje amplitutske
karakteristike: 21
0
( ) ( ) , 0 1;j fnN
N
n
Y f y n e n N
(2.21)
Ovdje je: 0 1FFTf N i FFTN duţina FFT-a.
2.2.5 Mel-frekventno pakovanje i kepstralni koeficijenti
Zbog osobina ljudksog glasa (govora), posebno onih koje zavise od duţine vokalnog
trakta, ekstrakcija obiljeţja istog, zahtijeva pristup frekventnog pakovanja (eng.
Frequency Warping). Ovo znači procesiranje signala govora na nivoima različitih
frekvencija koje imaju svoj izvor u vokalnom traktu, tj. u putu glasa od pluća, gde
nastaje, pa sve do izlaska iz usne duplje. Ovakvo frekventno pakovanje je jedan od
glavnih procesa u izračunavanju MFCC-a iz razloga što se govor dvije različite osobe
najviše razlikuje na osnovu gore pomenutih frekvencija. Sam proces veoma sliči
prozoriranju u vremenskom domenu. Iz ovoga se moţe zaključiti da se pakovanje vrši
skupom frekventnih filtera na cijelom opsegu odreĎenog signala govora. Ovaj skup
filtera se naziva i banka filtera (eng. filter-bank). Postoji više različitih banki filtera, u
zavisnosti od cilja odreĎenog procesiranja signala. MeĎutim, premda se u ovom radu
govori o mel-frekventnim koeficijentima, za dobijanje istih koriste se isključivo mel
filter banke. Naime, i sami koeficijenti su dobili naziv po istoimenim bankama filtera
koji se koriste pri ekstrakciji obiljeţja govornog signala. Ovi filteri su trougaonog oblika
i opseg koji propuštaju raste sa povećanjem frekvencije na spektru signala govora. Bitno
je pomenuti da je, pri takvoj strukturi, donja frekvencija jednog filtera jednaka
centralnoj frekvenciji prethodnog, a gornja frekvencija, jednaka centralnoj frekvenciji
sljedećeg trouganog filtera. Mel filter banka je kreirana na osnovu osobina ljudskog
sluha, na način da su karakteristike filtera linearne do 1kHz, a za frekvencije iznad 1
kHz, logaritamski rasporeĎenje [7]. Jedna od izvedbi mel filter banke data je na slici
(2.12).
Slika 2.12 Trougaona mel filter banka
39
Kod mel filter banke, duţina trougaonih filtera u frekventnom domenu, prati mel skalu,
o kojoj je ranije bilo riječi. Dakle, filteri su dati kao ( )kw f , gdje je k je redni broj
filtera za koje vaţi 1 k K i K je ukupan broj filtera. Broj filtera u banci zavisi od
frekvencije uzorkovanja govornog signala. Što je frekvencija uzorkovanja veća,
potreban je i veći broj filtera. Obično se koristi oko 20 njih, s obzirom na standardne
frekvencije uzorkovanja. Nad signalom koji je dobijen iz prošlog bloka, vrši se mel
frekventno pakovanje sa odreĎenim brojem trougaonih filtera u frekventnom domenu,
prema relaciji (2.22).
1
0
( ) ( );N
k k
f
Y Y f w f
(2.22)
Ovdje kY , predstavlja odziv k -tog filtera.
Nakon izračunavanja ovih odziva, isti idu u blok za logaritmovanje, odnosno za
računanje kepstralnih koeficijenata (2.23).
ln( ), 1k kC Y k K (2.23)
2.2.6 Diskretna kosinusna transformacija (DCT)
Završni dio izračunavanja MFCC-a predstavlja Diskretna kosinusna transformacija. Ova
transformacija predstavlja jedan od najefikasnijih načina kompresije audio signala. Radi
brţe i jednostavnije obrade signala, uklanjanje viška informacija koje on sadrţi u sebi,
prilično je neophodno. Naravno, ovakav tip kompresije govornog signala je moguć jer
se uklanjaju informacije, tačnije, harmonici koji postoje u signalu, a nisu od
fundamentalnog značaja u procesu prepoznavanja. Diskretnom kosinusnom
transformacijom dobijaju se koeficijenti koji sadrţe različite teţine u zavisnosti od
njihove vaţnosti u signalu, tj. od količine energije koju nose. Koeficijenti sa manjom
teţinom, tj. oni nebitni, se na ovaj način smanjuju ili postavljaju na nulu, a kao vaţni
izdvajaju se oni koji nose najveću energiju u signalu [18]. Za svaki kepstralni
koeficijent dobijen u prethodnom bloku, računa se DCT i na taj način se i konačno
dobijaju vektori obiljeţja govornog signala, koji sadrţe mel-frekventne kepstralne
koeficijente. Dakle, traţeni koeficijenti se dobijaju preko relacije (2.24):
1
1
2 1( ) cos , 0 , ,
2
K
y i k
k
k ic i u C i I I K
K
(2.24)
gdje I predstavlja duţinu transformacije, a iu koeficijente koji su definisani kao:
40
1, 0
.2
, 1
i
iK
u
iK
(2.24)
2.3 Modeliranje govornika
Nakon izračunavanja MFCC-a, izvršena je ekstrakcija obiljeţja govornika. Ovo znači da
su iz signala govora izvučene njegove najbitnije osobine i prepoznavanje govornika ide
u smjeru uporeĎivanja tih osobina sa drugim govornicima ili sa jednim govornikom u
slučaju verifikacije. Za ovo je potrebno obaviti fazu treninga (obučavanja) govornika, tj.
klasificirati ih i prebaciti ih u neki isti domen, kako bi bilo moguće uporediti njihove
osobine i izvršiti prepoznavanje. Prepoznavanje u tom smislu znači, donijeti odluku da
li je govornik zaista onaj koji tvrdi da jeste ili ga identifikovati u odreĎenoj grupi. Ova
faza predstavlja modeliranje govornika. Kako je tehnologija prepoznavanja
napredovala, razvijeno je više različitih tehnika modeliranja govornika. Pristupi kao što
su Najbliţi susjed (eng. Nearest neighbor – NN), Miješanje Gausovih modela (eng.
Gaussian mixture models – GMM ), Skriveni Markovljevi modeli (eng. Hidden Markov
models - HMM ), Vektorska kvantizacija (eng. Vector quantization - VQ) i mnogi drugi,
često se primjenjuju u procesu modeliranja govornika u zavisnosti od zahtijeva pri
procesu prepoznavanja [24]. MeĎutim, kako je u ovom radu akcentovan pristup preko
MFCC-a, eksperimentalno se pokazalo da modeliranje putem vektorske kvantizacije
donosi najbolje rezultatate prilikom verifikacije i identifikacije govornika. Stoga, u
daljoj obradi, biće objašnjena tehnika vektorske kvantizacije i uporeĎivanje obiljeţja
govornika na osnovu ovog načina modeliranja.
2.3.1 Vektorska kvantizacija
Ova tehnika modeliranja predstavlja i jedan vid kompresije. Naime, kada se iz procesora
dobiju MFCC, tj. vektori sa ovim koeficijentima, vektorskom kvantizacijom se nastavlja
odabir onih najbitnijih, koji čuvaju osnovne karakteristike govornog signala. Ovaj
algoritam je baziran na principu kodovanja i vrši preslikavanje jedne duţe sekvence sa
MFCC koeficijentima u kraću sekvencu fiksne duţine. Cilj je da se napravi inicijalna
kodna knjiga, koja predstavlja skup kodnih vektora. Kodni vektori su ustvari srednje
vrijednosti prethodno odreĎene sekvence prilikom ekstrakcije obiljeţja. Kodna knjiga
jednog govornika predstavljena je u dvodimenzionalnom prostoru, gdje su nakon
izračunavanja srednjih vrijednosti polaznih sekvenci, formirani kodni regioni, za svaki
od kodnih vektora. Ovakva prezentacija modela jednog govornika prikazana je na slici
(2.13).
41
Slika 2.13 Kodna knjiga u dvodimenzionalnom prostoru.
Na slici, sa x su označeni inicijalni vektori, sa tačkama (yi) kodni vektori, a kodni
regioni su odvojeni sa graničnim linijama. Nakon ovakve dodatne kompresije i vaĎenja
samo najbitnijih karakteristika govornika (kodni vektori), moţe se izvršiti uporeĎivanje
sa drugim govornicima, pod pretpostavkom da su i oni prošli kroz istu fazu modeliranja
i da su predstavljeni u istom prostoru.
Slika 2.14 Kodne knjige 4različita govornika i govornika kojeg testiramo.
Jedna od osnovnih metoda za izvoĎenje ovog algoritma je LGB metoda. (Linde–Buzo–
Gray, prema naučnicima koji su je osmislili). Ova metoda se zasniva na odreĎivanju
minimalnog vektorskog rastojanja izmeĎu kodnih vektora različitih govornika. Na ovom
42
principu i radi sama vektorska kvantizacija. Udaljenost izmeĎu kodnih vektora različitih
govornika u literaturi se označava kao kvantizacijska distorzija izmeĎu seta vektora
1,..., TX x x i 1,..., KC c c i data je kao:
, min , ,j
q i i jc C
d x C d x c
(2.25)
Ovom metodom se izračunavaju udaljenosti izmeĎu kodnih vektora govornika i na taj
način se odreĎuje koji su najbliţi kodnim vektorima govornika koji se testira. Pošto svih
meĎusobnih rastojanja ima puno, pristupa se računa prosječna kvantizacijska distorzija
prema relaciji (2.26).
1
1, , ,
T
Q q i
i
D X C d x CT
(2.26)
Dakle, da bi govornik bio uspešno verifikovan, ovo ,QD X C treba da bude što manje,
ispod neke utvrĎene granice koja je unaprijed postavljena. U idealnom slučaju, kada je
govornik onaj koji tvrdi da jeste, ovo bi bilo jednako nuli.
43
3 Eksperimentalni rezultati
Postupajući prema već navedenim teorijskim principima prepoznavanja govornika, na
osnovu softverskog alata Matlab-a, moţe se napraviti sistem koji vrši pribliţnu
identifikaciju ili verifikaciju govornika. Kao što je već objašnjeno ranije, identifikacija
predstavlja odreĎivanje identiteta govornika na osnovu osobina njegovog glasa (govora)
kada se on nalazi u skupini od više različitih govornika. Verifikacija predstavlja proces
utvrĎivanja njegovog identiteta, tj. da li je govornik onaj koji tvrdi da jeste ili nije.
Ovakav pristup se u principu vrši u nekoliko osnovnih koraka (sl. 3.1) koji ustvari
predstavljaju i same funkcije u Matlab-u.
Snimanje govornika
koji se testira
Baza podataka sa jednim
govornikom
(Verifikacija)
Izracunavanje MFCC-a za
podatke u bazi
Baza podataka sa
više govornika
(Identifikacija)
Izracunavanje MFCC-a za
govornika koji se testira
Izracunavanje distanci
Prikazivanje rezultata
Vektorska kvantizacija i podijela na
klastere
1.
2.
3.
4.
5.
6.
Slika 3.1 Koraci identifikacije (verifikacije) prilikom implementacija u Matlab-u.
44
Da bi se izvršila identifikacija, potrebno je snimiti i spremiti u bazu podataka više
različitih govornika, pri čemu bi u koraku 5 (Izračunavanje distanci) traţila najmanja
udaljenost izmeĎu govornika koji se testira i govornika kojima je pohranjena baza
podataka. Na taj način bi se u koraku 6, prikazale sve meĎusobne udaljenosti, a zatim na
osnovu najmanje izračunate i pretpostavio najvjerovatniji govornik.
Jednostavnija varijanta u pogledu eksperimentalnog pristupa je verifikacija govornika.
Ovo povlači za sobom činjenicu da u proračunu distanci ne bi bilo neophodno računati
najmanju, već samo odrediti prag (eng. treshold), odnosno graničnu udaljenost na
osnovu koje se moţe ustanoviti da li je govornik ona osoba koja tvrdi da jeste ili ne.
Ovaj prag se odreĎuje takoĎe eksperimentalno. Nakon nekoliko napravljenih poreĎenja
sa ostalim govornicima bira se najmanja distanca od govornika koji se nalazi u bazi
podataka, odnosno govornika čiji identitet treba da se potvrdi (verifikuje). Nakon toga
se u koraku 6, pri prikazivanju rezultata, logički odgovara sa ''Da'' – ako je govornik
onaj koji tvrdi da jeste (njegova distanca je manja ili jednaka definiranom pragu) ili sa
''Ne'' – ako govornik koji se testira nije identičan onom u bazi podataka (njegova
distanca je veća od definiranog praga).
Na konkretnom primjeru (za eksperiment je odabran princip verifikacije govornika),
osnovna funkcija u Matlab-u, koja poziva ostale funkcije, gore navedene kao korake
izgleda ovako:
function speakerID()
Fs = 16000;
a = wavrecord(3*Fs,Fs,'int16');
test.data = a;
name = ['Dzemi'];
fs = 16000;
C = 8;
wavplay(test.data,Fs);
disp('Loading data...')
[train.data] = Load_data(name);
disp('Izracunavanje MFCC-a za podatke u bazi...')
[train.cc] = mfcc(train.data,name,fs);
disp('Vektorska kvantizacija i podijela na klastere...')
[train.kmeans] = kmean(train.cc,C);
disp('Izracunavanje MFCC-a za govornika koji se testira...')
test.cc = melcepst(test.data,fs,'x');
disp('Izracunavanje distanci za svaku kodnu knjigu...')
[result index] = distmeasure(train.kmeans,test.cc);
disp('Prikazivanje rezultata...')
dispresult(name,result,index)
Slika 3.2 Koraci identifikacije (verifikacije) prilikom implementacija u Matlab-u prikazani u obliku koda.
Potrebno je pomenuti da svaka od ovih funkcija koristi neke već postojeće funkcije iz
Matlab-ovog Toolboxa datog u [24].
45
U našem primjeru, na osnovu eksperimentalnog provjeravanja, za graničnu vrijednost
Euklidove distance, uzeto je 43.5 10 ( 3.5 004)e . Nakon snimanja novog test-
govornika, prolaskom kroz navedene korake (funkcije) dolazi se do njegove udaljenosti
od govornika koji se nalazi u bazi podataka (u ovom slučaju govornik u bazi podataka je
'Dzemil'). Ako je ta udaljenost manja od gore navedene granične, onda se pretpostavlja
da je test-govornik ustvari Dzemil. U suprotnom, ako je udaljenost veća od ovog praga,
odgovor će biti negativan (sl. 3.3).
Slika 3.3 Prikaz izgleda komandnog prozora u Matlab-u prilikom verifikacije govornika.
Pozivom funkcije speakerID() u komandnom prozoru, počinje snimanje test-govornika
(sl. 3.2 – komanda waverecord(...) ) u trajanju od 3s i nakon toga se taj govorni signal
provlači kroz ostale funkcije. Bitno je istaći da navedene funkcije ustvari predstavljaju
procese u prepoznavanju govornika koji su navedeni i obraĎeni u ranijim poglavljima,
tako da ovdje neće biti detaljnije objašnjavani.
Naime, zbog nesavršenosti opreme za snimanje govornog signala, a samim tim i
prilično izraţenog nivoa šuma koji se pritom javlja, ovakav način verifikacije
(identifikacije) ne daje uvek precizne i tačne rezultate. Obično se eksperiment ponavlja
nekoliko puta i onda se na osnovu procenta uspješno izvršenih verifikacija, odreĎuje
tačnost algoritma i njegovog sprovoĎenja nekim od softverskih alata, u ovom slučaju
Matlab-a. Potpun Matlab kod je priloţen uz rad u elektronskoj formi.
46
Zaključak
U ovom radu navedene su neke od najkorišćenijih tehnika za prepoznavanje govora i
govornika. MeĎutim posebno je obraĎena kepstralna analiza govornog signala, njena
efikasnost u predstavljanju govornog signala i na taj način, naglašavanju njegovih
najvaţnijih karakteristika u cilju prepoznavanja. Samim tim, predstavljen je način
prepoznavanja govornika putem ekstrakcije obiljeţja na osnovu Mel-kepstralnih
frekventnih koeficijenata (MFCC). ObraĎen je princip njihovog izračunavanja.
Pokazano je da ovi koeficijenti imaju primjenu prevashodno u prepoznavanju
govornika, odnosno njegovoj identifikaciji i verifikaciji. Proračunom ovih koeficijenata
dobijaju se obiljeţja koja jako dobro opisuju ljudski glas i na osnovu njih je teorijski, a
onda i eksperimentalno objašnjena i izvršena identifikacija (verifikacija) govornika.
Mel-kepstralni koeficijenti su se pokazali kao efikasni u tekst-zavisnom i u tekst-
nezavisnom prepoznavanju. Ovaj metod ekstrakcije obiljeţja je i danas jedan od
najefikasnijih i zajedno sa različitim algoritmima modeliranja govornika (u ovom radu
je odabrana Vektorska kvantizacija), najbrţi način do njegove identifikacije. TakoĎe,
navedeni su i problemi koji se mogu javiti prilikom prepoznavanja govornika i prilikom
obrade govornog signala. Eksperimentalno je potvrĎeno i da je softverski (Matlab)
proračun brz i uz solidno poznavanje softverskog alata, kao i uz ispravno praćenje
obraĎenje teorijske osnove, prilično jednostavan i efikasan.
47
Popis slika Slika 1.1. Blok šema VODER-a 7
Slika 1.2. Prekretnice Prepoznavanja Govora i Tehnologije Razumjevanja u zadnjih 50 godina 9
Slika 1.3 FFT spektar ljudskog glasa 12
Slika 1.4 LPC spektar ljudskog glasa (fonacija vokala /A/) 12
Slika 1.5 LPC spektar dobijen 'peglanjem' FFT spektra prikazan koristeći dvije različite vrijednosti
predikcionih koeficijenata (p=6 i p=15), koji će biti objašnjeni u narednim poglavljima 13
Slika 1.6 Dva muška govornika izgovaraju vokale 15
Slika 1.7 Raspored akustičke energije glasova u slušnom polju 16
Slika 1.8 Podjela sistema za prepoznavanje.
Slika 1.9 Blokovi u procesu verifikacije govornika 18
Slika 1.10 Blokovi u procesu identifikacija govornika 19
Slika 1.11 Klasifikacija obrade govornog signala. 20
Slika 1.12 Komponente automatskog prepoznavanja govornika 21
Slika 1.13 Primjeri dvodimenzionalnih setova svojstava sa lošom a) i dobrom b), sposobnošču
razlikovanja govornika 23
Slika 1.14 Izračunavanje LPC koeficienata korišćenjem autokorelacione metode i Levinson-Durbin
rekurzije 25
Slika 1.15 Primjer korišćenja filtera datog relacijom (1.9) sa Hamingovim prozorom na intervalu 26
Slika 2.1 Spektar signala sa prikazanom obvojnicom 28
Slika 2.2 Spektar govornog signala prikazan kao produkt pobude glasnica i uticaja vokalnog trakta
(obvojnica) 29
Slika 2.3 Kepstar govornog signala prikazan kao suma pobude glasnica i uticaja vokalnog trakta
(obvojnica) 29
Slika 2.4 Valni oblik izgovorene fraze ''Go'' u vremenskom domenu 30
Slika 2.5 Spektar signala izgovorene fraze ''Go'' u frekventnom domenu 30
Slika 2.6 Kepstrum signala izgovorene fraze ''Go'' u kvefrentnom domenu 31
Slika 2.7 Mel skala 33
Slika 2.8 Blokovi u procesu za izračunavanje MFCC-a prema ETSI Aurora standardu 32
Slika 2.9 Kratkoročna (spektralna) analiza 33
Slika 2.10 Primjer jednog okviira govornog signala i njegovog spektra sa pred-filtriranjem i bez pred-
filtriranja (40ms Hamming-ov prozor) 36
Slika 2.11 Valni oblik Hammingovog prozora u vremenskom domenu i njegov spektar u
(normaliziranom) frekventnom domenu 38
Slika 2.12 Trougaona mel filter banka 39
Slika 2.13 Kodna knjiga u dvodimenzionalnom prostoru 42
Slika 3.1 Koraci identifikacije (verifikacije) prilikom implementacija u Matlab-u 44
Slika 3.2 Koraci identifikacije (verifikacije) prilikom implementacija u Matlab-u prikazani... 45
Slika 3.3 Prikaz izgleda komandnog prozora u Matlab-u prilikom verifikacije govornika. 46
48
Literatura
[1] B.H. Juang & Lawrence R. Rabiner, ''Automatic Speech Recognition – A Brief
History of the Technology Development'', Georgia Institute of Technology, Atlanta,
Rutgers University and the University of California, Santa Barbara, 2001.
[2] Ian McLoughlin, ''Applied Speech and Audio Processing: With MATLAB_
Examples'', Cambridge University Press, 2009.
[3] MLADEN HEĐEVER, ''OSNOVE FIZIOLOŠKE I GOVORNE AKUSTIKE'',
SVEUČILIŠTE U ZAGREBU, 2010.
[4] Lajos Hanzo, ''Voice and Audio Compression_for_Wireless_Communications'',
IEEE Press, 2007.
[5] Ling Feng, ''Speaker Recognition'', Kgs. Lyngby IMM-THESIS, 2004.
[6] Tomi Kinnunen, ''Spectral Features for Automatic Text-Independent Speaker
Recognition'', LICENTIATE’S THESIS,University of Joensuu Department of
Computer Science, Finland,December 21, 2003.
[7] Thomas F. Quatieri, ''Discrete- Time Speech Signal Processing, Principles and
Practice'', Massachusetts Institute of Technology ,Lincoln Laboratory, 2002.
[8] Rabiner_Juang, ''Fundamentals_of_speech_recognition'', 1993.
[9] prof.dr. Ţeljko Đurović, ’’Predavanja iz predmeta Obrada i prepoznavanje
govora’’, ETF Beograd,odsek Automatika, katedra za Signale i sisteme, 2006.
[10] Donald G. Childers, ’’The Cepstrum: A Guide To Processing’’, PROCEEDINGS
OF IEEE, OCTOBER, 1977.
[11] S.B. Davis, and P. Mermelstein, ''Comparison of Parametric Representations for
Monosyllabic Word Recognition in Continuously Spoken Sentences'', IEEE, 1980.
[13] Md. Rashidul Hasan, Mustafa Jamil, Md. Golam Rabbani Md. Saifur Rahman
’’SPEAKER IDENTIFICATION USING MEL FREQUENCY CEPSTRAL
COEFFICIENTS’’ , 3rd International Conference on Electrical & Computer
Engineering ICECE 2004, 28-30 December 2004
[14] Gintaras Barisevičius, ’’TEXT-INDEPENDENT SPEAKER VERIFICATION’’,
Department of Software Engineering, Kaunas University of Technology, Kaunas,
Lithuania,2002.
49
[15] Eleanor Chu: ―Transforms, Analysis, Applications and Fast Algorithms‖ ,
Univesity of Guelph, Guelph, Ontario, Canada, 1998.
[16] John G. Proakis & Dimitris G. Manolakis, ’’Digital Signal Processing’’, USA,
1996.
[17] Roberto Cristi, ’’Modern Digital Signal Processing’’, 2005.
[18] К.R. Aida–Zade, C. Ardil and S.S. Rustamov ’’Investigation of Combined use of
MFCC and LPC Features in Speech Recognition Systems’’, World Academy of
Science, Engine, 2000.
[19] ’’Speaker Recognition Using MFCC and Vector Quantization Model’’, NIRMA
UNIVERSITY, AHMEDABAD May 2011.
[20] Ravi P. Ramachandrana, Kevin R. Farrellb, Roopashri Ramachandrana,Richard J.
Mammoneca, ''Speaker recognition—general classifer approaches and data fusion
methods'', Department of Electrical Engineering, Rowan University, 201 Mullica Hill
Road, Glassboro, NJ 08028, USA,T-Netix Inc., Englewood, CO 80012, USA CAIP
Center, Rutgers University, Piscataway, NJ 08855, USA,2001
[21] Melita Ahić – Đokić: “Signali i sistem‖, Elektrotehnički fakultet u Sarajevu, 2010.
godina
[22] Kevin R. Farrellb, Roopashri Ramachandrana, Richard J. Mammonec, '' Speaker
recognition—general classi er approaches and data fusion methods'', Department of
Electrical Engineering, Rowan University, USA, October 2001.
[23] '' VOICEBOX: Speech Processing Toolbox for MATLAB'' -
http://www.ee.ic.ac.uk/hp/staff/dmb/voicebox/voicebox.html
[24] www.mathworks.com
50