Proceduri de analiza ale semnalului vocal
1. Reprezentarea parametrica a enunturilor
pornind de la punctul de vedere adoptat in proiectare tinem seama de mecanismul vorbirii
presupuneri fundamentale (aproximatii adevarate)
efectele tractului vocal si al tractului propriu-zis pot fi separate
tractul vocal este invariant pe durate scurte de timp sisteme liniare ai carui parametrii variaza lent in timp (constanti in timp scurt ) analiza in timp scurt (10..30ms)
putem face analiza cu sisteme liniare ci paramentrii concentrati ; dezavantaj : multe calcule
cuvintele in romana dureaza in medie 0.5ms
la fe = 10kHz, durata de analiza 20ms pe durata respective se prelucreaza 200 esantioane
perioada scurta = fereastra (segment) de analiza
discretizare = impartirea pe segmente
N = nr de esantioane/fereastra
Particularitatile parametrizarii semnalului (analiza, compresie) depind de :
complexitatea prelucrarii
grad de compresie
tipul de aplicatie
in ce masura sunt parametrii semnificativi si robusti
presupuneri fundamentale :
efectele excitatiei tractului vocal si ale tractului propriu - zis pot fi separate
tractul vocal este invariant pe durate scurte de timp sisteme liniare ai carui parametrii variaza lent in timp (constanti in timp scurt ) analiza in timp scurt (10..30ms) ; cuvintele in romana dureaza ≈ 0.5ms in medie
Continuare
f = 10kHz fereastra are N = 100..300 esantioane
particularitatile parametrizarii semnalului (analiza, compresie) depind de :
complexitatea plelucrarii
grad de compresie
tipul de aplicatie
in ce masura sunt parametrii semnificatvi si robusti
caracteristici :
2 surse de semnal care modeleaza excitatiile posibile ale tractului vocal (sonor/nesonor)
frecventa/perioada fundamentala (pitch) cea mai joasa frecventa dintr-o reprezentare spectrala E0/e0 = 70 - 80 Hz..300 - 400Hz
controlul amplitudinii
FD pt modelarea tractului vocal propriu - zis
coeficientii filtrului sunt ct pe perioade scurte de timp
pot sa atac cvadripolul cu care simulez tractul cu o sursa de excitatie stabilita alternativ
se poate avea un cvadripol cu o funstie de transfer cu coeficienti ct la umitor si numarator pe intervale scurte de timp
toti parametrii se actualizeaza periodic ( la fiecare 10..30ms)
analiza in timp scurte :
segmente (ferestre) de 10..30ms
ferestre uniform distribuite (ferestrele pot fi mai lungi pe perioade sonore)
ferestre sincrone sau nu cu fundamentala
criteriile pt parametrii :
simplu si neambiguu de masurat
folosibili pt caracterizarea fonemelor
folosibili in recunoastere
parametrii :
globali : acele trasaturi acustice ale semnalului vocal ce pot fi definiti pe o perioada oricat de lunga de analiza ; nu sunt legati de un anumit model
locali : legati de un model ; rezulta dintr-o anumita modalitate de modelare a semnalului ; sunt parametrii de timp scurt
Obs. : decizia sonor/nesonor este aproximatia cea mai zgomotoasa
2. Parametrii globali ai semnalului vocal
Energia semnalului vocal
pe durata scurta :
ferestre :
dreptungiulara (preiau anumite esantioane, pe celelalte le pp = 0) : w(m) = 1
Hamming (fereastra de pondere) :
alegem sa calculam E pe durate compatibile cu analiza de timp scurt desi nu este nevoie in acest stadiu (pt a avea compatibilitate cu parametrii locali)
daca efectul lungimii ferestrei : N= 75.300 esantioane pt fe = 10kHz ta = 7,5...30ms
pseudoo-energia :
utilizare :
decizie sonor/nesonor
determinarea limitelor enunturilor
Frecventa (nr) de treceri prin 0 (NRZ)
apare o trecere prin 0 daca
unde
precautii :
precizia esantioanelor
zgomot
tensiunile reziduale
fe cat mai mare
filtrare trece-jos adecvata
utilizari :
aprecierea proprietatilor spectrale
o sunete sonore - energie la frecvente joase
o sunete nesonore - energie la frecvente inalte
decizie sonor / nesonor
carcteristica sursei de excitatie a tactului
identificarea vorbitorului
daca intervalele de analiza au lungimi diferite : ta1, ta2, .., tan, nr de treceri prin 0 e diferit : NTZ1, NTZ2, ..., NTZn
nr de treceri prin 0 normat :
fie Tk1, Tk2, ..., Tki timpul intre 2 treceri consecutive prin 0
plaja posibila a intervalelor este [T1, T2]
fie Pk(t) distributia discreta a duratei intervalelor de treceri prin 0 intr-o fereastra t0k depinzand de durata intervalului dintre 2 treceri tϵ[T1, T2] (poate lua doar valori discrete Tk)
in acest fel zk nu este influentat de durata intervalului de analiza
3. Analiza prin predictie liniara (LPC)
- este sursa unor parametrii localil ; se bazeaza pe abordari statistice
3.1. Principiul metodei
- premise :
redundanta semnalului
analiza in timp scurt
permite modelarea organului fonator uman
- fie modelul tractului vocal :
parametrii: A, bi (i = 1...q), ak (k = 1...p)
- simplificare: filtru doar cu poli:
- raspunsul la impuls al tractului :
(daca am doar poli)
pt n>0 :
unde v(n) este o combinatie liniar predictibila din p esantioane precedente
- fie raspunsul estimate cu predictorul liniar:
eroarea reziduala de predictie:
problema: obtinerea coeficientilor αk
se porneste de la minimizarea erorii patratice medii
deci
fie
rezulta (p ecuatii, p necunoscute) :
sistemul de p ecuatii cu p necunoscute :[c]·[α]=[c0]
rezolvarea depinde de fereastra (segmentul) de semnal de analiza
a) Metoda covariantei
interval finit [0,N-1]
matricea [c] este simetrica :
rezolvarea :
eliminare Gaussiana
descompunere Ckolesky
b) Metoda autocorelatiei
interval estins la infinit : n0 -∞, n1 ∞, prin completarea cu 0-uri :
se definesc coeficientii de autocorelatie :
coeficientii de autocorelatie sunt simetrici si formeaza o matrice Torplitz :
sistemul de ecuatie devine :
sistemul de ecuatii se poate scrie : [R]·[α]=[R0]
se rezolva eficient cu metodele recursive, cum ar fi Levinson - Durbin
meroda a) este mai riguroasa
rezolvarile principial corecte ale metodei b)
3.2. Consecinte ale analizei LPC
a) Estimarea spectrului
- pt p = 12 se obtin frecventele formantilor
Pt p > 16 modificarile in ET sunt nesemnificative
3.2. Consecinte ale analizei LPC
a) Estimarea spectrului
- pt p = 12 se obtin frecventele formantilor
pt p > 16 modificarile in ET sunt nesemnificative
raspunsul estimat :
eroarea de predictie :
problema : obtinerea coeficientilor αk ; se porneste de la minimizarea erorii patratice medii :
se poate rezolva cu metoda covariantei sau a autocorelatiei care este imprecisa (este mai precisa cu cat intervalul este mai lung, dar nu poate fi f. lung pt ca facem analiza pe timp scurt)
b) Estimarea frecventei fundamentale(frecventa de repetitie a impulsurilor de atac ale tractului vocal daca semnalul este sonor)
pt ak αk e(n) δ(n) : eroarea de predictie tinde sa devina impulsul de excitatie (tinde catre valoarea la care n = 0)
semnalele marin la momentul T si mici in rest
cand scade influenta excitatiei, scade eroarea
stiind periodicitatea ecuatiilor frecventamentala
c)Sinteza propriu-zisa
sintetizator ( k, p,T0, A)
1) decizia - 1bit
2) daca este sonor trebuie sa stiu T0
3)trebuie sa stiu αk
4) trebuie sa sti nr de coeficienti
5) trebuie sa stiu amlitudinea esantioanelor pe care vreau sa le generalizez
3), 4), 5) indiferent daca e sonor sau nu
toate datele de intrare se actualizeaza pt oricare segment de esantion analizat
Obs. : 1) parametrii nu sunt aceeasi pt durata intregului discurs
Obs. : 2) α dispare la semnalul estimat ( v estimat ), a apare la v
Obs. : 3) sinteza nu se face indiferent de nr de parametrii p
Obs. : 4) semnalul este f. inteligibil, dar nu f. nenatural din cauza deciziei sonor/nesonor (nu exista intervale pur sonore si pur nesonore, practic decizia este tot timpul gresita)
3.3. Comparatii intre metode de analiza
alegerea intervalului :
metoda covariantei : [0, N-1] se completeaza cu p esantioane
metoda autocorelatiei : [0, N-1] se completeaza cu esantioane 0 la -∞ si la +∞
se aplica ferestre de atenuare pt a atenua schimbarile bruste de la capetele intervalului
acuratete :
metoda covariantei este exacta
metoda autocorelatiei deformeaza secventa originala
eficienta :
metoda covariantei
o calcul cik : (N-p) (p+1) (p+2) operatii
o descompunerea Choleski : 1/3p3+2p2 operatii
metoda autocorelatiei
o calcul R(|i-k|) (p+1) (2N-p-2) operatii
o Levinson - Durbin : p2+2p operatii
concluzii :
efort mai mare pt construirea matricilor (N>>p)
algoritmul mai eficient in cazul autocorelatiei
N mai mare in cazul autocorelatiei (100 - 300 fata de 30 - 50)
Facand abstractie de conditiile de procesare cu totul speciale, cele 2 metode sunt practic echivalente din pct de vedere al efortului de calcul
stabilitate :
este asigurata, principial, pt metoda autocorelatiei (matricea Toeplitz este garantata nesingulara deci sistemul de rezolvat este stabil)
pt metoda covariantei, stabilitatea este mai probabila cu cat N este mai mare
instabilitatea din cauza trunchierii rezultatelor partiale in timpul prelucrarii
Verificarea stabilitatii :
fie pasul i al iteratiei pt determinarea coeficientilor de predictie
pt a ajunge la :
conditia necesara si suficienta pt stabilitate : Ei > 0 cu i = 1p
Concluzia :
Flosirea covariantei sau a autocorelatiei depinde esential de partticularitatile inerente metodei, adica un factor de merit precizie - stabilitate si nu de resursele hardware - software necesare plelucrarii
precautiile implementarii analizei LPC :
intervalul de analiza (15 - 20 ms pt sonore, 10 ms pt nesonore)
analiza sincrona sau nu cu fundamentala
fe (3kHz pt sonore, 8 - 10kHz pt nesonore) ; FTJ
p (8 - 14 pt sonore, 2 - 4 pt nesonore)
tipul de fereastra
filtrarea analogica
trunchierea rezultatelot partiale
la p depinde ce aplicatie vreau sa fac ; daca vreau altceva in afara de sinteza aleg un p corespunzator
3. Reprezentarea parametrica folosind LPC
metoda autocorelatiei : [R]·[α]=[R0] unde R = matricea coeficientilor de autocorelatie
R(i-k) cu i, k = 1.p
α = matricea coeficientilor de predictie
R0 = matricea coeficientilor de autocorelatie
R(i) cu i = 1..p
Procedeul recursiv Levinson - Darwin
initializarea :
pasii :
pasul p :
Ex. : pt p = 2
Coeficientii ki = 'coeficienti partiali de autocorelatie' (PARCOR) sau 'coeficienti de reflexie'
Tractul vocal poate fi simulat cu un tub acustic cu mai multe sectiuni ; se poate demonstra ca acesti ki sunt similari ca efect cu coeficientii de reflexie
daca fac iteratii succesive
reducerea timpului calcului coeficientilor de autocorelatie - algoritmul Pfeifer - Blankinship
(formula este mai complicata daca avem un nr impar de termeni)
se obtine o imbunatatire de aproape 50% (nr de inmultiri scade la jumatate)
Continuare
eroarea reziduala de predictie :
problema : obtinerea αk
rezultatul sistemului depinde de fereastra de semnal de analizat : [n0, n1]
a) Metoda covariantei : pp tractul complet definit prin rezonante
inteval definit [0, N-1], matricea [c] este simetrica
b) Metoda autocorelatiei :
intervalul extins la ∞ : n0 -∞, n1 ∞ prin completare cu 0
coeficientii de autocorelatie :
(matrice Toeplitz)
consecinte ale analizei LPC :
estimarea spectrului
estimarea frecventei fundamentale atunci cand aceasta exista
c) Sinteza propriu-zisa:
folosirea metodei covariantei sau autocorelatiei depinde de particularitatile inerente sistemului, adica un factor de merit precizie - stabilitate si nu de resursele hardware - software necesare prelucrarii
3.5. Parametrizarea folosita
sae extrag 2 parametrii: coeficienti PARCOR si eroarea totala de predictie pe interval
normalizarea erorii reziduala de predictie :
interpretarea polilor functiei de transfer care odeleaza tractul vocal :
obtin p coeficienti ai polilor de la numitor
extrag radacinile polilor in z, reale sau complet conjugate
din z s (=jω)
fie functia de transfer in s dupa descompunerea in factori:
raspunsul la treapta unitate:
esantionand cu Te obtinem secventa discreta:
in planul z:
pt radacinile reale:
pt radacini complex conjugate:
Analiza homomorfa (cepstrala)
1. Presupuneri fundamentale
efectul excitatiei:
fie semnalul vocal pp a fi convolutia unei excitatii si a functiei de transfer a tractului vocal
analiza homomorfa pp analiza unui operator neliniar 'H': (cepstrul complex)
cepstrul complex:
, ceea ce permite separarea componentelor printr-o 'filtrare temporala' aplicata cepstrelor:
2. Obtinerea parametrilor cepstrali
c(n) partea para a cepstrului complex al semnalului c(n) = secventa cauzala
reamintim ca :
transformata z a unei secvente cauzale este determinata complet prin partea reala a transformatei sale Fourier
TFI = partea para din s(n)
vom prefera calculul coeficientilor cepstrali din coeficientii α ai analizei prin predictie liniara (LPC) conform relatiei
3. Proprietatile cepstrului
s = s1 * s2 => s = s1 + s2
S(z)=
deci
Aplicatii ale cepstrului pt semnalul vocal
s(t) = e(t) * v(t)
pt semnale sonore :
unde g(n) = functia de transfer corespunzatoare glotei
h(n) = functia de transfer corespunzatoare tractului
r(n) = functia de transfer corespunzatoare inchiderii buzelor
de regula se considera ca:
g(n)
r(n)
5. Estimarea fracventei fundamentale
'pitch' - perioada fundamentala T0, frecventa fundamentala F0
decizia sonor - nesonor
prozodia
valori tipice : 80 - 250 Hz pt barbati, 150 - 500 Hz pt femei si copii
Obs. :
pt determinarea frecventei fundamentale conteaza daca este sonor
prozodia este legata de t0
variatia in timp a T0 ne da informatii despre intonatie, accent (pe durate scurte)
dificultati :
influenta glotei
interactiunea cu primul formant
limitarea inferioara a benzii pt unele canale de transmisiune
dificultatea deciziei sonor - nesonor ; masor distanta intre extreme, decide ca functia este periodica, semnal nesonor, T0 nu exista
capcane:
sunt greu de pus in evidenta extremele
eztreme care nu apartin lui T0
pot sa decid ca o portiune este sonora daca extremele nu sunt decelate
Metoda bazata pe functia de autocorelatie
Se calculeaza
Se cauta maximul intre 0 si k
Se retin esantioanele de semnal care trec peste un prag
Valorile peste prag sunt limitate la ±1
Ex. : fe = 10kHz, N = 300, k = 150
Metoda AMDF ('Average Magnitude Difference Function')
Se calculeaza
Se cauta minimul intre 0 si k pt un semnal perfect periodic:
Relatia intre R(k) si D(k)
! perioada de analiza trebuie sa contina cel putin o perioada T0
Metoda SIFT ('Simplified Inverse Filter Tracking')
Se aplica o FT digital la 900 Hz (lasa semnalul in plaja in care pot gasi frecvente fundamentale)
Se aplica o fereastra pe semnalul de analizat
Analiza LPC cu p = 4 pt definirea polilor lui A(z) ==> coeficientii αk
Se calculeaza secventa e(n)
Se aplica metoda autocorelatiei sau AMDF asuprea secventei e(n)
Se estimeaza maximul (respectiv minimul) functiei R(k) sau D(k)
Determinarea limitelor enunturilor (cuvintelor)
semnalul vocal :
energia : ENj (pseudoenergia), nr de treceri prin 0 : NRZj
pas 1 : calculam EN si NTZ
pas 2 : CL = nr mediu de cadre de liniste de la sfarsitul enuntului
energia maxima pe tot semnalul : EMAX = max (ENj)
pas 3: p1 =
p2 =
pas 4:
pas 5:
trebuie sa stim care este ultimul cadru in care s-a vorbit
pt j de la 1 la limita superioara
daca
daca
daca
daca
atunci j + 2 este ultimul cadru vorbit (sfarsit temporal de enunt)
contor = 0
pt k = 1.10 parcurgem cadrele j + 2 +k
vedem daca NTZj+2+k < PNTZ
atunci K0[contor] = k
contor ++
continua
daca contor >=3
atunci j+2+k0[contor] este ultimul
cadru vorbit
Normalizarea duratei enunturilor (cuvintelor)
X = [X1Xkf] sa-l ducem la un vector de lungime kn
S = [S1.Skn] este vector de referinta
Solutie: inmultim X cu o matrice rara
Pas 1 : a11 = min (kn, kf)
Pas 2 :
Pas 3 :
Pas 4 :
(asa determinam aij astfel incat sa respecte 2,3 si 4)
Ex. : kf = 5, kn = 7
Cum reprezentam matricea astfel incat sa nu ocupe atat spatiu ?
3. Recunoasterea cuvintelor
Cuvinte de intrare referinte cuvinte corespunzatoare
(parcurgem cadru cu cadru)
la inceput facem comprimarea/dilatarea cu fiecare cuvant din referinta
apoi comparam ENj , NTZj , ej , (cadrele)
(submultimea lui Sn , se elimina din Sn cuvintele asemanatoare daca unul din ele est comparat si nu se potriveste)
avem ; le impartim in M cadre ; vom avea cadre
Metoda autocorelatiei (algoritmul L - D)
Notam
Se pune prob. sa calculam distanta intre vectorii α si β
I. Compararea vectorilor de lungimi inegale
pp ca avem un cuvant T(T1...TI) format sin niste vectori
vector de referinta R = R [R1..RJ]
D(T,R) = ?
metoda: algoritmul alinierii dinamice in timp (DTW = Dinamic Time Warping)
trebuie sa gasesc un drum (cost) minim dintre 2 pct. ; notam drumul cu W
k = nr de pct atinse de drum
distanta pana la (2,3) este data de distanta dintre frame-urile (1,2) si (3,4)
depinde de costurile anterioare
moduri de alegere al lui g(k) pt calculul lui
modul este dat de niste constrangeri locale <==> trebuie sa exprim pe D(i,j) (distanta globala cumulata) in functie de niste D(i', j') unde i' < i, j' < j si de di'',j'' (distanta locala) (i'' ≤ i, j'' ≤ j)
pt i' < i, j' ≤ j sau i' ≤ i si j' < j
constrangeri locale:
A.
de la un pas la altul ponderea lui dij este 1(poate fi si 2 la alte tipuri de constrangeri)
initializarea :
B.
C.
ex. :
drumul optim tinde sa fie diagonala
delta[]
delta(M, T[1], R[1], delta[1,1]) ;
dtilda[1,1] <-- delta[1,1] ;
pt i de la 2 la I
dtilda <-- P ;
pt j de la 2 la J
dtilda <-- P ;
pt i de la 2 la I
pt j de la 2 la J
delta(M, T[i], R[j], & delta[i,j])
dtilda[i,j] <-- delta[i,j] + min (dtilda[i-1, j], dtilda[i-1,j-1], dtilda )
D <-- dtilda[I,J]/(I+J)
Politica de confidentialitate |
.com | Copyright ©
2024 - Toate drepturile rezervate. Toate documentele au caracter informativ cu scop educational. |
Personaje din literatura |
Baltagul – caracterizarea personajelor |
Caracterizare Alexandru Lapusneanul |
Caracterizarea lui Gavilescu |
Caracterizarea personajelor negative din basmul |
Tehnica si mecanica |
Cuplaje - definitii. notatii. exemple. repere istorice. |
Actionare macara |
Reprezentarea si cotarea filetelor |
Geografie |
Turismul pe terra |
Vulcanii Și mediul |
Padurile pe terra si industrializarea lemnului |
Termeni si conditii |
Contact |
Creeaza si tu |