<< Inapoi

Cuprins

Inainte >>

3.2 Reprezentarea digitala a semnalului vocal

Pentru procesarea semnalului vocal, fie ca vorbim despre stocare, sau despre prelucrare este necesara captarea si transformarea semnalului sonor într-o reprezentare într-un alt domeniu, în domeniul electric. Reprezentarea electrica a unui semnal vocal se poate face fie în modalitate pur electrica, în care semnalul elextric este analogul semnalului vocal, fie o reprezentare codata sau digitala în care informatia digitala stocheaza semnalul vocal într-o maniera independenta.

Din aceste doua metode cea mai utilizata în ultima vreme este reprezentarea digitala, la baza acestei alegeri stau o multime de avantaje pe care aceasta le ofera: multitudinea de operatii care se pot efectua si usurinta mare cu care acestea se aplica fata de cazul reprezentarii electrice.

Prin urmare în continuare ma voi ocupa doar de reprezentarea digitala a semnalului vocal. În cadrul acestei reprezentari semnalul vocal este caracterizat de niste parametrii care sunt extrasi din acest semnal. Modelul simplificat al extragerii acestor parametrii este reprezentat în figura urmatoare [Deller 1993]:


Fig 3.4 Modelul extragerii parametrilor numerici

Dupa cum se poate vedea din figura precedenta semnalul analogic este preluat de blocul de prepocesare. Semnalul analogic este apoi pregatit pentru a fi supus procesului de extragere a parametrilor. Aceste blocuri pot fi analogice, de exemplu filtre, amplificatoare, sau numerice. Majoritatea operatiilor de acest gen se fac în numeric, în analogic ramânând doar amplificatoarele si convertorul analogic-numeric. Iesirea din acest bloc este un semnal digital. [Deller 1993]

Dupa ce are loc transformarea semnalului analogic în digital, si aplicarea catorva operatii asupra semnalului, acesta este preluat de blocul de extragere a parametrilor. În cadrul acestui bloc se extrag tipurile de parametrii necesare în continuare. Putem avea parametrii temporali, spectrali etc.

Activitatea acestor doua blocuri este supervizata de catre blocul de Modelare a vorbirii care realizeaza o analogie între componente fiziologice si componente matematice. Asadar se realizeaza o emulare a componentelor reale prin elemente matematice ce tin de domeniul digital. Parametrii elementelor matematice sunt determinati în blocul de extragere a parametrilor.

Iata în continuare o detaliere a acestor blocuri.

3.2.1 Blocul de preprocesare

Blocul de preprocesare realizeaza legatura între semnalul audio real si blocul de extragere a parametrilor, în cadrul acestui bloc având loc pregatirea semnalului pentru intrarea blocului de extragere a parametrilor. În lumea reala din momentul emiterii sunetului pana cand acesta este captat de blocul de preprocesare, asupra undei sonore intervin o serie de factori datorati canalului/mediului de transmisie, factori ce induc o deformare care poate perturba partial sau total o prelucrare corecta a undei sonore.

Exista o serie de operatii tipice ce se efectueaza aspura undei sonore în cadrul blocului de preprocesare. Aceste operatii sunt urmatoarele [Deller 1993]:

a.Digitizarea semnalului vocal.

Cea mai mare parte a energiei semnalului vocal este continuta în banda de

frecvente 50-60Hz si 4-5kHz, ceea ce impune folosirea unor filtre trece jos sau a unor filtre trece banda care vor selecta din unda sonora exact acest interval. Prin aplicarea acestor filtre se vor elimina componenetele de frecventa joasa reprezentând componenta continua, preturbatii induse de sistemele de alimentare, prin urmare componenete fara informatie utila, iar prin eliminarea componenetelor de frecventa înalta se doreste eliminarea spectrului inutil precum si a efectului de alyasing, efect ce apare la esantionare si despre care vom vorbi mai incolo. Dupa filtrare urmeaza pasul prin care se efectueaza transformarea din analogic în digital. Teorema esantionarii a lui Shanon impune o frecventa de esantionare de cel putin dublul frecventei celei mai înalte din semnalul analizat. Dupa cum am aratat mai sus frecventa utila cea mai înalta este în jurul 4-5kHz ceea ce impune necesitatea unei frecvente de esantionare mai mare de 8kHz. Convertorul analog-numeric poate avea o rezolutie de 8-16 biti. Codarea cea mai utilizata în domeniul digital este PCM offset binar sau complement fata de 2. [Deller 1993]

Fig 3.5 Procesul de digitizare.

b. Preaccentuarea semnalului vocal.

Dupa cum aminteam la punctul anterior este necesara o anumita filtrare aplicata asupra semnalului audio. Aceste filtre se pot aplica atât asupra semnalului analog, despre acestea discutând anterior, cât si asupra semnalului digital, în acest caz având de-a face cu filtre numerice. Un astfel de filtru este si urmatorul , rolul sau fiind acela de a anula efectul atenuarii exercitate de canalul de transmisie asupra undei sonore.[Smith 1997]

(3.2.1)

Dupa cum demonstreaza practica, aplicarea unui asemenea filtru este benefica doar în cazul sunetelor vocalice, nefiind utila în cazul sunetelor nesonore, consoane. O valoare de compromis pentru care aplicarea filtrului este utila în ambele cazuri este valoarea de 0.95 pentru .

c. Segmentarea semnalului vocal.

Una din problemele prelucrarii unui semnal vocal este modificarea tractului vocal în timp, element ce influenteaza negativ orice operatiune. Aceasta implica necesitatea analizarii semnalului vocal pe perioade scurte de timp, perioade în care unda sonora este cvasistationara dat fiind faptul ca forma tractului vocal nu se modifica semnificativ. O astfel de perioada este estimata la 10-40 ms. Aceasta segmentare a semnalului vocal digitizat se realizaeaza prin operatiunea de ferestruire. Aceasta operatie înseamna aplicarea unei ferestre cu anume proprietati de-a lungul semnalului, iar prelucrarea efectuându-se asupra fiecarui segment astfel obtinut prin ferestruire.. Fie semnalul sursa s unde s(k) reprezinta al k-lea esantion din cadrul semnalului. Se observa ca semnalul nu este analizat functie de timp ci functie de numarul esantionului. Aplicarea asupra acestui semnal a unei ferestre w va duce la obtinerea unui semnal s' având forma

(3.2.2)

k reprezinta în aceasta formula numarul de ordine al segmentului în timp ce n reprezinta numarul de ordine al esantionului în cadrul segmentului, unde fiecare segment contine N esantioane. În literatura de specialitate termenul de esantion este întâlnit si ca sample .

Fereastra ce se aplica asupra semnalului poate fi de mai multe tipuri. Cel mai utilizat tip de fereastra este cea dreptughiulara având forma:

(3.2.3)

Desi foarte frecvent utilizata aceasta fereastra are o mare problema determinata de limitarea brusca la capatul segmentului a esantioanelor. Aceasta problema se rezolva printr-o atenuare treptata a esantioanelor la capetele segmentului, prin aplicarea ferestrei Hamming. [Smith 1997] Aceasta fereastra este de forma:

(3.2.4)

Fereastra Hamming se aplica de obicei aspura unui numar de esantioane putere a lui 2: 128, 256, 512. Pentru obtinerea unor rezultate si mai relevante, printr-o urmarire mai fina a variatiei parametrilor semnalului vocal, în cadrul prelucrarii de multe ori se alege o ferestruire prin acoperire, overlapping în literatura de specialitate. Aceasta acoperire înseamna o suprapunere a doua segmente, suprapunere ce poate varia între 40% si 80%.

Folosirea acestei ferestre duce la cresterea importantei esantioanelor din centrul ferestrei, iar aplicarea si a unei suprapuneri a ferestrelor asigura calcurearea netezita a parametrilor semnalului vocal. Parametrii se vor calcula cadru cu cadru în întreg semnalul vocal de analizat.

Fig. 3.6 Fereastra Hamming

Alte ferestre folosite adesea în domeniul prelucrarii semnalelor vocale sunt [Smith 1997]:

Fereastra Hanning:

(3.2.5)

Fereastra Barlett:

(3.2.6)

Fereastra Blackman:

(3.2.7)

Durata unui cadru, adica lungimea în sample-uri a acestuia este direct proportionala cu viteza de articulare a sistemului de producere a vorbirii. Astfel lungimea cadrelor trebuie sa îndeplineasca urmatoarele doua cerinte: sa nu aiba o lungime mai mica decât cea necesara cuprinderii unei perioade de semnal dar nici una prea mare încât sa compromita caracteristica de cvasistationaritate a semnalului. De aici dimensiunea de care vobeam anterior, anume de 10ms-40ms pentru fiecare cadru în parte.

d.Eliminarea componentei de curent continuu

Numarul de treceri prin zero este afectat de componenta continua a semnalului, adica de media aritmetica a celor N esantioane ale cadrului de analiza. Datorita acestui fapt, eliminarea componentei de curent continuu este unul din primii pasi efectuati la procesarea unui semnal vocal. [Balázs 1998] Se defineste:

(3.2.8)

Primul pas este calcularea începutului cadrului curent dupa care din valoarea fiecarui esantion se scade valoarea lui DC. Operatia se repeta pentru fiecare cadru în parte.

O alta metoda este prin calcularea mediei aritmetice în tot semnalul si apoi aceasta valoare sa se scada din fiecare esantion în parte. În acest caz valoare lui DC este exprimata sub forma:

(3.2.9)

unde L reprezinta lungimea întregului semnal.

O optimizare a celor doua metode, în vederea reducerii timpului de executie, este aceea prin care DC se calculeaza doar la al n-lea cadru si aceasta valoare se mentine valabila pe o perioada de n cadre pana la calcularea unei noi valori.

O alta alternativa mai usor de aplicat este folosirea unui filtru trece sus, util prin faptul ca pe lânga eliminarea componentei continue, va elimina si variatiile lente datorate tot lantului de prelucrare si mai ales canalului de transmisie. Un astfel de filtru poate fi urmatorul [Balázs 1998]:

(3.2.10)

3.2.2 Extragerea parametrilor semnalului vocal

Dupa cum am spus anterior pentru o analiza corecta a semnalului vocal extragerea parametrilor se va face utilizând ferestruirea si suprapunerea ferestrelor. Parametrii obtinuti sunt fie statici si atunci caracterizeaza cadrul curent, fie dinamici si atunci caracterizeaza mai multe cadre succesive.

3.2.2.1 Energia semnalului vocal

Prin determinarea energiei unui cadru se poate stabili caracterul sonor sau nesonor al respectivului segment din semnal. Astfel energia alaturi de “numarul de treceri prin zero” este folosita pentru detectia liniste-vorbire. [Balázs 1998] Formula de calcul a energiei este urmatoarea :

(3.2.11)

unde N reprezinta numarul de esantioane din cadrul curent iar n reprezinta indicele esantionului curent.

Energia din formula anterioara este un parametru static. Dar de asemenea se defineste si o delta-energie care ne da informatii despre dinamica amplitudinii semnalului. Formula de calcul a acesteia este:

(3.2.12)

unde l reprezinta cadrul curent, si 2K-1 lungimea intervalului de regresiune, cadrul curent fiind exclus. Valorile practice folosite pentru K sunt 1 si 2.

3.2.2.2 Numarul trecerilor prin zero al semnalului vocal.

Numarul trecerilor prin zero este folosit pentru determinarea grosiera a continutului în frecventa a semnalului vocal. Astfel pentru o sinusoida de frecventa f, NTZ va fi 2f. Dupa cum am spus si anterior NTZ impreuna cu energia semnalului vocal se folosesc la detectia liniste vorbire. Caracaterul sonor al unui cadru va fi caracterizat prin NTZ mic si energie mare, iar cel nesonor prin NTZ mare, energie mica.

Formula de calcul a NTZ este:

(3.2.13)

unde n reprezinta indicele esantionului, iar N reprezinta numarul de esantioane din cadrul curent de analizat.

3.2.2.3 Determinarea frecventei fundamentale.

Acest parametru se defineste doar pentru cadrele vocalice si reprezinta frecventa de rezonanta a corzilor vocale. Determinarea ei este destul de dificila dar o aproximare mai buna se poate face prin mediere aplicata asupra mai multor cadre succesive.

În continuare voi prezenta cele mai utilizate metode de determinare a frecventei fundamentale.

3.2.2.3.1 Metoda autocorelatiei

Asupra fiecarui cadru se aplica o functie de autocorelatie definita dupa formula:

(3.2.14)

unde n este indicele curent al sample-ului, iar k indicele functiei de autocorelatie având valori cuprinse între 1 si N-1.

Daca în cadrul segmentului vocal analizat, semnalul prezinta o anumita periodicitate atunci functia de autocorelatie va prezenta maxime locale la anumita distanta exprimata în numar de sample-uri. Distanta intre doua astfel de maxime va defini frecventa fundamentala. [Balázs 1998]

3.2.2.3.2 Metoda diferentei de amplitudine medie

Aceasta metoda reprezinta o varianta a metodei autocorelatiei, varianta corespunzatoare a functiei nde autocorelatie purtând denumirea de functie de diferenta de amplitudine medie fiind definita de formula:

(3.2.15)

unde n si k au aceeasi semnificatie ca în cazul functiei de autocorelatie.

Se observa ca daca semnalul este periodic de perioada p atunci S(ip) = 0, unde i = 0, 1, 2.... În cazul în care semnalul este unul nestationar, S are valori minime în punctele ip. În acest caz frecventa fundamentala este definita de distanta de la 0 la primul minim local al functiei de diferenta de amplitudine medie. [Balázs 1998]

3.2.2.3.3 Spectrul de amplitudine si de faza al semnalului vocal

Spectrul de amplitudine reprezinta imaginea în frecventa a semnalului electric. Trecerea din domeniul timp în domeniul frecventa se face cu Transformata Fourier Directa (TFD). Trecerea din domeniul frecventa în cel temporal se face cu ajutorul Transformatei Fourier Inverse (TFI). [Rabiner 1975]

Forma discreta a TFD este:

(3.2.16)

iar forma discreta a TFI este

(3.2.17)

Mai multe despre Tranformata Fourier vor fi prezentate în continuare. Deocamdata trebuie spus ca în functie de scopul urmarit se pot folosi diferite tipuri de spectre. Astfel daca se urmareste recunoasterea vorbirii se foloseste doar spectrul de amplitudine, faza semnalului neprezentând interes datorita faptului ca aceasta nu contine informatie lingvistica. Drept explicatie pentru cele afirmate e situatia în care vorbitorul isi schimba distanta fata de ascultator, atunci faza semnalului vocal se schimba, însa ascultatorul primeste în continuare aceeasi informatie vocala.

<< Inapoi

Cuprins

Inainte >>