Teza doctorat (pdf) - Universitatea Tehnică
Teza doctorat (pdf) - Universitatea Tehnică Teza doctorat (pdf) - Universitatea Tehnică
102 Cap. 4. Analiza semnalului vocal Compactarea unei secvenţe de regiuni într-o singură regiune de tip consoană nesonoră este ilustrată în figurile 4.33 şi 4.34. Marginea din stânga (regiunea 23) este o regiune de tip linişte, iar marginea din dreapta (regiunea 38) este o regiune vocalică: Figura 4.33. Secvenţa de regiuni după prima aplicare a algoritmului Figura 4.34. Compactarea regiunilor într-un segment de tip consoană nesonoră Cazul 2. Dacă ponderea regiunilor de tip consoană nesonoră REG_CONS şi a regiunilor de tip linişte-nesonoră REG_LIN_CONS este mai mare decât un prag K2, atunci secvenţa S se compactează într-o singură regiune de tip linişte-nesonoră REG_LIN_CONS. Algoritmul pentru acest caz este următorul : for (i = ireg1+1; i < ireg2; i++) { durata = Reg[i].stop - Reg[i].start; SumTotal += durata; if ((Reg[i].tip == REG_CONS) or (Reg[i].tip == REG_LIN_CONS) SumLinCons+=durata; } p = SumLinCons / SumTotal; if (p>0.3) return true; else return false.
103 Cap. 4. Analiza semnalului vocal Un exemplu de segmentare pentru o regiune de tip linişte nesonoră este arătat în figurile 4.35, respectiv 4.36. Aici regiunile numerotate sunt nesonore, regiunile figurate cu o singură linie, nenumerotate, sunt regiuni de linişte, iar regiunile figurate cu linie dublă sunt regiuni tranzitorii : Figura 4.35. Regiunile dintr-un segment nesonor după prima aplicare a algoritmului Toate aceste regiuni vor fi compactate în cea de-a doua trecere a algoritmului, astfel că rezultatul va fi o singură regiune de tip linişte-nesonoră, aşa cum se poate vedea în figura 4.36 : Figura 4.36. Compactarea regiunilor într-un segment de tip linişte-nesonoră Cazul 3. Dacă cele două condiţii anterioare de la punctele 1 şi 2 nu sunt îndeplinite, atunci secvenţa de regiuni se compactează în felul următor : Regiunile neregulate scurte (REG_NEREG) şi regiunile de tip linişte nesonoră (REG_LIN_CONS) de durată mai mare de 5 ms vor fi lăsate pe loc, iar celelalte regiuni vor fi compactate într-o singură regiune tranzitorie. Regiunile ce se compactează pot fi de tipul : consoană nesonoră, linişte-nesonoră de durată mică, de tip salt, tranzitorie sau tranzitorie densă, ţinând cont că la capetele secvenţei de compactare avem întotdeauna regiuni vocale sau linişte. R0 1 2 3 4 5 6 7 8 C1 LIN NRG Figura 4.37. Compactarea regiunilor tranzitorii În figura 4.37, regiunile 1, 2 şi 3 se vor compacta în regiunea tranzitorie C1, iar regiunile 5 şi 6 în regiunea tranzitorie C2. C2 Rn
- Page 70 and 71: 52 Cap. 3. Procesarea digitală a s
- Page 72 and 73: 4. Analiza semnalului vocal După p
- Page 74 and 75: Figura 4.2. Structura spectrală a
- Page 76 and 77: Amplitudinea medie pentru N eşanti
- Page 78 and 79: 4.2.2. Analiza în domeniul frecven
- Page 80 and 81: F0 Excitaţie Figura 4.5. Modelul p
- Page 82 and 83: 64 Cap. 4. Analiza semnalului vocal
- Page 84 and 85: 4.3. Segmentarea semnalului vocal 6
- Page 86 and 87: 68 Cap. 4. Analiza semnalului vocal
- Page 88 and 89: 70 Cap. 4. Analiza semnalului vocal
- Page 90 and 91: 1 BNP mean p( n) (4.23) 20 20 n1
- Page 92 and 93: 74 Cap. 4. Analiza semnalului vocal
- Page 94 and 95: 0, RN( i) T upper EN(i) 1, RN( i)
- Page 96 and 97: 78 Cap. 4. Analiza semnalului vocal
- Page 98 and 99: D(x,y) 255 m0 || H ( e x m j 256 2
- Page 100 and 101: 82 Cap. 4. Analiza semnalului vocal
- Page 102 and 103: 84 Cap. 4. Analiza semnalului vocal
- Page 104 and 105: 86 Cap. 4. Analiza semnalului vocal
- Page 106 and 107: 3. Regiune de tip vocală sonoră (
- Page 108 and 109: 90 Cap. 4. Analiza semnalului vocal
- Page 110 and 111: 92 Cap. 4. Analiza semnalului vocal
- Page 112 and 113: 4.4.2.3.1. Detectarea subregiunilor
- Page 114 and 115: 96 Cap. 4. Analiza semnalului vocal
- Page 116 and 117: 4.4.2.5. Detectarea categoriei Tran
- Page 118 and 119: Detectorul regiunii tranzitorii den
- Page 122 and 123: Algoritmul de compactare în acest
- Page 124 and 125: 106 Cap. 4. Analiza semnalului voca
- Page 126 and 127: 108 Cap. 4. Analiza semnalului voca
- Page 128 and 129: 110 Cap. 4. Analiza semnalului voca
- Page 130 and 131: Punctul pivot se determină conform
- Page 132 and 133: 4.6.1.3. Detectarea maximelor de pe
- Page 134 and 135: 116 Cap. 4. Analiza semnalului voca
- Page 136 and 137: 118 Cap. 4. Analiza semnalului voca
- Page 138 and 139: 120 Cap. 4. Analiza semnalului voca
- Page 140 and 141: 4.7.3. Segmentarea bazată pe proba
- Page 142 and 143: 124 Cap. 4. Analiza semnalului voca
- Page 144 and 145: 126 Cap. 4. Analiza semnalului voca
- Page 146 and 147: 128 Cap. 4. Analiza semnalului voca
- Page 148 and 149: 130 Cap. 4. Analiza semnalului voca
- Page 150 and 151: 132 Cap. 4. Analiza semnalului voca
- Page 152 and 153: 134 Cap. 4. Analiza semnalului voca
- Page 154 and 155: 136 Cap. 4. Analiza semnalului voca
- Page 156 and 157: 4.8.4.1. Calculul distanţei dintre
- Page 158 and 159: F(C1) C1 C2 Np E(a,b) 140 Dp Cap. 4
- Page 160 and 161: Tabelul 4.10. Stabilirea frontierel
- Page 162 and 163: 144 Cap. 4. Analiza semnalului voca
- Page 164 and 165: Tabelul 4.13. Stabilirea frontierel
- Page 166 and 167: 2) Compararea vectorilor din regiun
- Page 168 and 169: 150 Cap. 4. Analiza semnalului voca
102<br />
Cap. 4. Analiza semnalului vocal<br />
Compactarea unei secvenţe de regiuni într-o singură regiune de tip consoană nesonoră<br />
este ilustrată în figurile 4.33 şi 4.34. Marginea din stânga (regiunea 23) este o regiune de tip<br />
linişte, iar marginea din dreapta (regiunea 38) este o regiune vocalică:<br />
Figura 4.33. Secvenţa de regiuni după prima aplicare a algoritmului<br />
Figura 4.34. Compactarea regiunilor într-un segment de tip consoană nesonoră<br />
Cazul 2. Dacă ponderea regiunilor de tip consoană nesonoră REG_CONS şi a regiunilor<br />
de tip linişte-nesonoră REG_LIN_CONS este mai mare decât un prag K2, atunci secvenţa S se<br />
compactează într-o singură regiune de tip linişte-nesonoră REG_LIN_CONS. Algoritmul pentru<br />
acest caz este următorul :<br />
for (i = ireg1+1; i < ireg2; i++)<br />
{<br />
durata = Reg[i].stop - Reg[i].start;<br />
SumTotal += durata;<br />
if ((Reg[i].tip == REG_CONS) or (Reg[i].tip == REG_LIN_CONS)<br />
SumLinCons+=durata;<br />
}<br />
p = SumLinCons / SumTotal;<br />
if (p>0.3)<br />
return true;<br />
else<br />
return false.