pilot sterowany mową
TRANSCRIPT
![Page 1: Pilot Sterowany Mową](https://reader034.vdocuments.site/reader034/viewer/2022042817/55a9d2051a28ab601b8b467b/html5/thumbnails/1.jpg)
Pilot sterowany mową.
Algorytm rozpoznawania mowy.
![Page 2: Pilot Sterowany Mową](https://reader034.vdocuments.site/reader034/viewer/2022042817/55a9d2051a28ab601b8b467b/html5/thumbnails/2.jpg)
Plan prezentacji• Schemat ideowy projektu• Powstawanie mowy• Model generacji sygnału mowy:
– Pobudzenie– Trakt głosowy– Układ decyzyjny „mowa dźwięczna/bezdźwięczna”
• Metoda funkcji autokorelacji• Metoda funkcji AMDF• Metoda filtra odwrotnego• Metoda cepstralna
• Algorytm kodera mowy standardu LPC-10• Rozpoznawanie mowy• Program testowy w Matlabie• Wnioski i plany dotyczące realizacji projektu
![Page 3: Pilot Sterowany Mową](https://reader034.vdocuments.site/reader034/viewer/2022042817/55a9d2051a28ab601b8b467b/html5/thumbnails/3.jpg)
Schemat ideowy projektu
![Page 4: Pilot Sterowany Mową](https://reader034.vdocuments.site/reader034/viewer/2022042817/55a9d2051a28ab601b8b467b/html5/thumbnails/4.jpg)
Powstawanie mowy• Powietrze płynie z płuc do tchawicy• Napięcie strun głosowych jest
regulowane za pomocą mięśni• Powietrze wprowadza struny w
drgania (częstotliwość zależy od napięcia mięśni)
• Powietrze jest dzielone na dyskretne okresowe impulsy
• Impulsy przechodzą przez gardło i jamę ustną ewentualnie nosową
• Impulsy są modulowane w aparacie mowy
• Aparat mowy może być kształtowany przez usta, szczęki, podniebienie, język
![Page 5: Pilot Sterowany Mową](https://reader034.vdocuments.site/reader034/viewer/2022042817/55a9d2051a28ab601b8b467b/html5/thumbnails/5.jpg)
Model generacji sygnału mowy
![Page 6: Pilot Sterowany Mową](https://reader034.vdocuments.site/reader034/viewer/2022042817/55a9d2051a28ab601b8b467b/html5/thumbnails/6.jpg)
Model generacji sygnału mowyPobudzenie:
b) dźwięczne: rytmiczne, energiczne rozchylanie się strun głosowych pobudzające trakt głosowy silnymi impulsami powietrza z płuc (sygnał okresowy złożony z szeregu delt Diraca)
c) Bezdźwięczne: struny cały czas otwarte, wpuszczają do traktu głosowego równomierny strumień powietrza (szum wszystkich częstotliwości)
![Page 7: Pilot Sterowany Mową](https://reader034.vdocuments.site/reader034/viewer/2022042817/55a9d2051a28ab601b8b467b/html5/thumbnails/7.jpg)
Układ decyzyjny „mowa dźwięczna/bezdźwięczna”(metoda funkcji autokorelacji)
1
0
)()()(N
n
knsnskr ,2,1,0k
s(n) – fragment sygnału składający się z N próbek, powstały z sygnału oryginalnegopo filtracji dolnoprzepustowej filtrem o górnej częstotliwości granicznej 900Hz i wymnożeniu oknem Hamminga.
![Page 8: Pilot Sterowany Mową](https://reader034.vdocuments.site/reader034/viewer/2022042817/55a9d2051a28ab601b8b467b/html5/thumbnails/8.jpg)
Układ decyzyjny „mowa dźwięczna/bezdźwięczna”(metoda funkcji autokorelacji)
c.d.
Wyznaczamy pierwsze globalne maksimum funkcji r(k) dla k>K0
)0(]35,03,0[ rrprog
fragment dźwięczny fragment bezdźwięczny
progrr max progrr max
T
pr
ff
K 0
fpr – częstotliwość próbkowaniafT – maksymalna dopuszczalna częstotliwość tonu podstawowego
![Page 9: Pilot Sterowany Mową](https://reader034.vdocuments.site/reader034/viewer/2022042817/55a9d2051a28ab601b8b467b/html5/thumbnails/9.jpg)
Układ decyzyjny „mowa dźwięczna/bezdźwięczna”(metoda funkcji autokorelacji)
Progowanie
reszty dla ,0
)( dla ,)(
)( dla ,)(
PnsPns
PnsPns
))(max(3,0 nsP Gdzie za próg P przyjmuje się:
lub: 8,06,0 ),,min(3
33
1 KAAKP
A – wartości maksymalne w poszczególnych częściach sygnału s(n)
![Page 10: Pilot Sterowany Mową](https://reader034.vdocuments.site/reader034/viewer/2022042817/55a9d2051a28ab601b8b467b/html5/thumbnails/10.jpg)
Układ decyzyjny „mowa dźwięczna/bezdźwięczna”(metoda funkcji AMDF)
(ang. Average Magnitude Difference Function)
2,1,0 ,)()()(1
0
kknsnskDN
n
fragment dźwięczny fragment bezdźwięczny
maxmin 3,0 DD maxmin 3,0 DD
![Page 11: Pilot Sterowany Mową](https://reader034.vdocuments.site/reader034/viewer/2022042817/55a9d2051a28ab601b8b467b/html5/thumbnails/11.jpg)
Układ decyzyjny „mowa dźwięczna/bezdźwięczna”(metoda filtra odwrotnego)
• Sygnał kodowany przepuszczony przez filtr odwrotny do filtra traktu głosowego
)()(/1)( )(/)( zAzHzGzAGzH
Mniejsza dynamika niż sygnał oryginalny poza chwilami impulsowego pobudzenia traktu głosowego- umożliwienie stwierdzenia „dźwięczna/bezdźwięczna”- możliwość lepszej kompresji sygnału
![Page 12: Pilot Sterowany Mową](https://reader034.vdocuments.site/reader034/viewer/2022042817/55a9d2051a28ab601b8b467b/html5/thumbnails/12.jpg)
Układ decyzyjny „mowa dźwięczna/bezdźwięczna”(metoda cepstralna)
)( Tt
)( 00 kT
20
Widmo Fouriera fragmentu mowy dźwięcznej jest iloczynem sumy impulsów Diracai widma transmitacji traktu głosowego.
Pobudzenie w dziedzinie czasowej:
Pobudzenie w dziedzinie częstotliwościowej:
Wyznaczamy odwrotnątransformatę Fourieraz modułu transformaty obliczonego widma –Otrzymujemy okres powtarzania się widma i związany z nim okres pobudzenia
))((ln))((ln))()((ln)()(ln1
)( 11)121
0
1
0
/2
jjjjknjN
k
N
m
Nkmj ePFeHFePeHFeemxmwN
nc
![Page 13: Pilot Sterowany Mową](https://reader034.vdocuments.site/reader034/viewer/2022042817/55a9d2051a28ab601b8b467b/html5/thumbnails/13.jpg)
Model generacji sygnału mowy
Trakt głosowy:Model traktu głosowego typu IIR
Minimum 5 biegunów parami sprzężonych
Równanie czasowe filtra syntezy:
)1)(1()1)(1(
1)()(
15
15
11
11
1010
22
11
zpzpzpzp
G
zazaza
G
zA
GzH
10
1
)()()(k
k knsaneGns
![Page 14: Pilot Sterowany Mową](https://reader034.vdocuments.site/reader034/viewer/2022042817/55a9d2051a28ab601b8b467b/html5/thumbnails/14.jpg)
Koder LPC-10
![Page 15: Pilot Sterowany Mową](https://reader034.vdocuments.site/reader034/viewer/2022042817/55a9d2051a28ab601b8b467b/html5/thumbnails/15.jpg)
Algorytm kodera LPC-10
1. Preemfaza: (filtracja nierekursywna)
2. Okno:
3. Filtr traktu głosowego. Obliczenie współczynników filtra {ak,k=1,2,…,p} i wzmocnienia G
4. Filtracja dolnoprzepustowa:
5. Progowanie
6. Funkcja autokorelacji
7. Decyzja „dźwięczna/bezdźwięczna”
8. Okres tonu podstawowego:
9. Wyjściowy strumień bitowy:
)1(9375,0)()(1 nsnsns
)/2cos(46,054,0)( )()()( 12 Nnnwnwnsns
pkknsnskrkN
n
,...,2,1,0 ),()()(1
022
)(
)2(
)1(
)0()2()1(
)2()0()1(
)1()1()0(1
2
1
pr
r
r
rprpr
prrr
prrr
a
a
a
p
rRa 1
)()0(1
krarGp
kk
),()()(0
23 knskhnsM
k
maxkT
},,,,,{ 21 paaaGT
![Page 16: Pilot Sterowany Mową](https://reader034.vdocuments.site/reader034/viewer/2022042817/55a9d2051a28ab601b8b467b/html5/thumbnails/16.jpg)
Rozpoznawanie mowy• Współczynniki cepstralne – powstają w wyniku zlogarytmowania modułu widma i
ponownego wyznaczenia prostej lub odwrotnej dyskretnej transformaty Fouriera. Pierwsze 10-15 to współczynniki rozwinięcia logarytmu z modułu obwiedni widma w szereg Fouriera, które charakteryzują kształt obwiedni.
• Wyznaczenie współczynników cepstralnych:
a) podwójna szybka transformacja Fouriera FFT
b) na podstawie p współczynników filtra predykcji:
11 ac
pkack
mac mk
k
mmkk
2
1
1
qkwccw kkk 1 ,
qkq
kqwk 1 ),sin(
21
![Page 17: Pilot Sterowany Mową](https://reader034.vdocuments.site/reader034/viewer/2022042817/55a9d2051a28ab601b8b467b/html5/thumbnails/17.jpg)
Rozpoznawanie mowy (c.d.)Nieliniowa transformacja czasowa DTW (Dynamic Time Warping):
Porównanie sekwencji wektorów współczynników cepstralnych wzoru i badanego sygnału
ns - numer wektora cepstrum
k – numer współczynnika cepstralnego tego wektora
Macierz odległości euklidesowych pomiędzy cepstrami:
qkNncknC ssn
ksss 1 ,1 ,),( )(
qkNncknC wwn
kwm
ww 1 ,1 ,),( )()(
wwssww
p
kssws NnNnknCknCnnd 1 ,1 ,)),(),((),( 2
1
![Page 18: Pilot Sterowany Mową](https://reader034.vdocuments.site/reader034/viewer/2022042817/55a9d2051a28ab601b8b467b/html5/thumbnails/18.jpg)
Rozpoznawanie mowy (c.d.)
Obliczamy najmniejszy zakumulowany koszt przejścia między lewym dolnym a prawym górnym rogiem macierzy tzw. odległość zakumulowana globalna
Uniezależnienie od wielkości macierzy (unormowanie wartości zakumulowanej)
wierszu)pierwszym wa(akumulacj ,,,2,1 ),1,()1,(1
s
n
kss Nnkdng
s
kolumnie) pierwszej wa(akumulacj ,,,2,1 ),1,(),1(1
w
n
kww Nnkdng
w
)( ),(),1(
)( ),(2)1,1(
)( ),()1,(
min),(
prawonndnng
skosnndnng
góranndnng
nng
wsws
wsws
wsws
ws
22
),(),(
ws
ws
NN
NNgwsa
![Page 19: Pilot Sterowany Mową](https://reader034.vdocuments.site/reader034/viewer/2022042817/55a9d2051a28ab601b8b467b/html5/thumbnails/19.jpg)
Program testowy w Matlabie
![Page 20: Pilot Sterowany Mową](https://reader034.vdocuments.site/reader034/viewer/2022042817/55a9d2051a28ab601b8b467b/html5/thumbnails/20.jpg)
Algorytm programu testowego
1. Nagranie wzorców (usunięcie cichych fragmentów na krańcach nagrania)
2. Wyznaczenie dla wzorców macierzy współczynników cepstralnych:
-wykorzystanie współczynników filtra LPC
3. Nagranie rozpoznawanego słowa
4. Obcięcie cichych fragmentów
5. Wyznaczenie macierzy współczynników cepstralnych dla słowa
6. Rozpoznanie słowa poprzez porównanie macierzy jego współczynników cepstralnych ze wzorcami metodą DTW
7. Wyświetlenie wyniku i wysłanie odpowiedniej komendy przez port COM
![Page 21: Pilot Sterowany Mową](https://reader034.vdocuments.site/reader034/viewer/2022042817/55a9d2051a28ab601b8b467b/html5/thumbnails/21.jpg)
Wnioski i dalsze etapy
• Skuteczność (co należy zmienić aby polepszyć), interfejs (czy rozwijać?), rozbudowa układu nadajnika, problem przeniesienia kodu z Matlaba do C
• Co ma robić pierwszy gotowy projekt i jakie są planowane modyfikacje