Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
Obrada signala 2
Varijabilni filtri
Adaptivni filtri
1
Varijabilni filtri
• Pod varijabilnim (podesivim) filtrima, u opštem
slučaju, podrazumevaju se filtri kojima se
kontrolisano menjaju neki od karakterističnih
parametara (granična frekvencija propusnog
opsega, slabljenje u nepropusnom opsegu).
• U anglosaksonskoj literaturi se za ove filtre
koriste pojmovi variable filter ili tunable filter.
Varijabilni filtri
• Jedna klasa varijabilnih filtara podrazumeva da
se kontrolisano menja granična frekvencija dok
se zadržavaju ostale osobine polaznog filtra,
odnosno slabljenje u nepropusnom opsegu i
dozvoljena varijacija karakteristike u propusnom
opsegu.
• Jednostavan algoritam promene granične (3 dB)
frekvencije.
Struktrura
A0(z)
A1(z)
IN
GLP
GHP
1/2
2)()()( 10 zAzAzGLP
2)()()( 10 zAzAzGHP
21
,4,221
21
011
1N
l ll
ll
zz
zzzA
21
,5,321
21
1
1
1
1
111
1
1
N
l ll
ll
zz
zz
z
zzA
Batervortovi ili
EMQF (eliptički
filtri minimalnih
Q faktora) –
jednako β za sve
sekcije drugog
reda
dB3cos
Struktrura
21
,4,221
21
011
1N
l ll
ll
zz
zzzA
21
,5,321
21
1
1
1
1
111
1
1
N
l ll
ll
zz
zz
z
zzA
dB3cos
a)
b)
c)
z-1
x[n] y[n]
-1
z-1
z-1
-1
x[n] y[n]
z-1
-1
x[n] y[n]Ansari – Liu sekcije
prvog reda (pogodne
za all-pass sekcije)
Struktrura
21
,4,221
21
011
1N
l ll
ll
zz
zzzA
21
,5,321
21
1
1
1
1
111
1
1
N
l ll
ll
zz
zz
z
zzA
dB3cos
Ansari – Liu sekcije
drugog reda (pogodne
za all-pass sekcije)
z-1
-1
x[n] y[n]
z-1
-
Princip promene granične/presečne
frekvencije1
• Polazeći od half-band filtra, promenom granične
frekvencije, omogućava se da se dobije nov filtar/filtarski
par, sa drugom graničnom frekvencijom, koji je sačuvao
sve osobine polaznog half-band filtarskog para.
• Polazni filtarski par jer half-band filtarski par. Filtarski par
se preslikava u nov filtarski par transformacijom [Con-
1970],
1
1
1
gz
gzzQ
z-2
-lHB
x[n] y[n]
Princip promene granične/presečne
frekvencije1
0 0.5 1 1.5 2-2
-1.8
-1.6
-1.4
-1.2
-1
-0.8
-0.6
-0.4
-0.2
0
/
arg
(Q(e
j ))
/
g=-0.9
g=-0.6
g=-0.3
g=0
g=0.3
g=0.6
g=0.9
1
1
1
gz
gzzQ
Svaki element za
kašnjenje zameni
se sekcijom prvog
reda Q(z)
Princip promene granične/presečne
frekvencije2
-1 -0.5 0 0.5 10
0.2
0.4
0.6
0.8
1
g
arg
(Q(e
j 3
dB))
/
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1-1
-0.99
-0.98
-0.97
-0.96
-0.95
-0.94
-0.93
-0.92
-0.91
-0.9
/
arg(Q
(ej
))/
Nelinearna promena
širine prelazne zone
3dB u funkciji parametra g
Algoritam za promenu granične
frekvencije
• Na osnovu zadate frekvencije ω3dB odredi se vrednost parametra α:
• Na osnovu dobijene vrednosti parametra αodređuje se parametar α1:
• Za svaku sekciju drugog reda određuje se nova vrednost parametra β:
dB3cos
2
1 111
.2/)1(,,3,2 ,12
1
2
1 NlHB
l
HB
ll
Algoritam za promenu granične
frekvencije
0 0.2 0.4 0.6 0.8 1-10
0
10
20
30
40
50
60
70
80
/
Sla
blj
en
je [
dB
]Klasa III
0=/10
tacnoLP
tacnoHP
procenaLP
procenaHP
Adaptivni filtri
• Adaptivni filtri i njihova primena
• Algoritmi adaptacije
• Primeri
Preporučena literatura
• Simon Haykin, Adaptive Filter Theory, Prentice Hall, 2002
• John Proakis, Digital Communications, 4th edition, McGraw Hill, 2001
• Alexander D. Poularikas and Zayed M. Ramadan, Adaptive Filtering Primer with MATLAB, CRC Press, 2006
• Proakis et al., Algorithms for Statistical Signal Processing, Prentice Hall, 2002
Filtriranje
• U “klasičnoj” obradi signala, važnu grupu
čine LTI sistemi (linearni, vremenski
invarijantni)
– L
– TI
.
,
22
11
nxny
nxny
nbynaynbxnax 2121
.
,
00 nnynnx
nynx
Filtriranje
• Adaptivni filtri nisu TI a, s obzirom da
koeficijenti filtra na neki način zavise od
ulaznog signala, nisu ni linearni
• Kod adaptivnih filtara se pod linearnim
podrazumevaju ona rešenja gde se izlaz
dobija kao linearna kombinacija odbiraka
dostupnih na ulazu
Filtriranje
• Iako se izlaz dobija kao linearna
kombinacija dostupnih odbiraka, filtriranje
se, u odnosu na operaciju koja se sprovodi
može posmatrati kao:
– filtriranje
– usrednjavanje
– predikcija
Cilj
• Podrazumeva se da su poznate statističke osobine “korisnog” signala i šuma
• Najčešće se zahteva da se minimizira uticaj šuma prema nekom kriterijumu
• Jedan mogući pristup je da se minimizira greška koja se računa kao razlika odziva filtra i nekog željenog signala (Wiener-ov filtar, Kalmanov filtar)
• Rešenje može da se realizuije i kao analogno i kao digitalno
Adaptivni filtri
• Podrazumeva se da su poznate statističke
osobine “korisnog” signala i šuma i samo u
tom slučaju se (recimo Wiener-ovim filtrom)
može dobiti optimalno rešenje
• U praktičnim situacijama statistički parametri
signala ili nisu potpuno poznati ili se menjaju
u vremenu
• Tada se koriste filtri čiji se koeficijenti menjaju
pod kontrolom nekog adaptivnog algoritma
Adaptivni filtar
• Filtar čiji koeficijenti se menjaju tokom obradesignala tako da se adaptivnim filtrom ostvari željeni rezultat obrade
• Adaptivni filtri mogu biti FIR (Finite ImpulseResponse) filtri i IIR (Infinite Impulse Response) filtri
• FIR filtri su jednostavniji za ovu namenu, zbog problema stabilnosti kod IIR filtara
• Podešavanje vrednosti koeficijenata vrši se ili posle svakog odbirka ili posle bloka odbiraka
• Postoje različiti algoritmi za podešavanje koeficijenata adaptivnog filtra
Identifikacija sistema
• Adaptivnim filtrom se modeluje nepoznati sistem
• Isti signal se dovodi na ulaz nepoznatog sistema i adaptivnog filtra
• Adaptivnim algoritmom se koeficijenti filtra podešavaju tako da se minimizira razlika između odziva nepoznatog sistema i odziva adaptivnog filtra
• Signal greške:
• Cilj:
nyndne
Nepoznati
sistem
Model
sistema
Adaptivni
algoritam
x(n)
d(n)
y(n)
e(n)
ndny
Identifikacija inverzne
karakteristike sistema• Izlaz nepoznatog sistema se veže kaskadno sa
adaptivnim filtrom
• Cilj je da kaskadna veza nepoznatog sistema i adaptivnog filtra ima približno ravan frekvencijski odziv (ekvalizacija kanala)
Nepoznati
sistem
Adaptivni
filtar
Adaptivni
algoritam
s(n)
x(n)
e(n)
y(n)
Kašnjenje
Poništavanje šuma
• s(k) – signal
• n(k) - šum koji treba potisnuti (nekorelisan sa signalom)
• x(k) – referentni signal, korelisan sa šumom
Adaptivni
filtar
Adaptivni
algoritam
x(k)
d(k)
e(k)
y(k)
s(k)+n(k)
Line Enhancer (potiskivanje
širokopojasne smetnje)• s(k) – uskopojasni signal
• n(k) - šum koji treba potisnuti
• y(k) – procena signala s(k)
Adaptivni
filtar
Adaptivni
algoritam
d(k)
e(k)
y(k)
s(k)+n(k)
Kašnjenje
z - M
Potiskivanje tonske smetnje
• s(k) –signal
• n(k) – tonska smetnja koju treba potisnuti
• e(k) – procena signala s(k)
Adaptivni
filtar
Adaptivni
algoritam
d(k)
e(k)
y(k)
s(k)+n(k)
Kašnjenje
z - M
Ista šema na
dva izlaza
daje različite
signale
Poništavanje akustičkog eha
• koristan signal (signal sa kraja B)
• druga dva člana su eho signal od bližeg i daljeg kraja koji treba potisnuti i
• w(t) je adativan beli šum
Adaptivni
FIR filtar
Ulaz
rA(t)
Filtar
(predajnik)
Filtar
(prijemnik)
Hibrid
OdabiranjeOdluka
Algoritam
adaptacije
a(n)
b(n)
eha procena - ˆ1
0
M
k
AA knakhs
twdtsAdtsAtsAtr AABA 23121
Aktivna kontrola buke
Adaptivan
sistemx(t) y(t)
e(t)
Dodatno kašnjenje od
referentnog do kontrolnog
mikrofona
Adaptivni algoritmi – opšte osobine
• Brzina konvergencije
• Rezidualna greška
• Praćenje
• Robustnost
• Složenost
• Struktura
• Otpornost na numeričke greške
Algoritmi za adaptivne filtre
• LMS (Least Mean Squares )
• RMS (Recursive Least Squares)
• i mnogi drugi
LMS
• Najjednostavniji adaptivni algoritam
• Relativno sporo konvergira
• Bazira se na teoriji Wiener-vog filtra
Wiener-ov filtar
• Minimizira se srednja kvadratna greška
estimacije signala
kT
N
i
kdikxihkdkykdke XH
1
0
Winer-ov
filtarx(n)
y(n)
e(n)
d(n)
1
1
Nkx
kx
kx
k
X
1
1
0
Nh
h
h
k
H
Wiener-ov filtar
• Kriterijumska funkcija J je srednja
kvadratna greška estimacije (MSE)
• Cilj je da se odredi vektor H za koje je J
ima minimalnu vrednost
RHHHP
HXXHHX
TT
T
kk
TT
k
keEJ
kdkdke
2
2
22
22
Wiener-ov filtar
• R autokorelaciona matrica signala na
ulazu filtra dimenzija NxN
• P korelacija (vektor) željenog signala i
signala na ulazu u filtar
Wiener-ov filtar
• J ima jedinstveni minimum, koji može da
se odredi tako što se gradijent izjednači s
nulomJ(H)
J(H(0))
J( (1))
J(H(2))
H
0h
1hopth1
opth0
PRH
RHPH
1
22
opt
d
dJ
Wiener-
Hopf ova
relacija
Wiener-ov filtar
• Izraz za Hopt iako jednostavan po formi,
zahteva:
– Poznavanje autokorelacione i korelacione
matrice
– Inverziju matrice
Gradijentni algoritam
• Polazi se od bilo koje tačke na paraboli
• Računa se gradijent u toj tački
• Pomeraj po paraboli za mali priraštaj u
pravcu gradijenta (a suprotnog smera)
• Određuje se nova vrednost gradijenta
• Postupak se ponavalja sve dok se
vrednost sračunatog gradijenta ne približi
nuli sa zadatom tačnošću
kkk 2
11 HH
Gradijentni algoritam
• Iterativnim postupkom se određuju
koeficijenti, pa nije potrebno računati
inverziju matrice R
Tkkk
kkk
kkk
0000,1
22
2
11
HRHPHH
HRP
HH
Gradijentni algoritam
• I dalje je potrebno poznavanje matrica R i
P
• FIR filtri su uvek stabilni, ali sam
gradijentni algoritam može postati
nestabilan, tj. može da divergira
• Uslov stabilnosti:
02
NPsr
LMS algoritam
• Ako se matrice R i P zamene
odgovarajućim procenjenim vrednostima
dobija se LMS algoritam
• Procene
nnnnE
ndnndnE
TTxxRxxR
xPxP
ˆ
,ˆ
LMS algoritam
kekkkkdk
kkkkdkkk
T
T
xHxx
HxxxHRP
22
22ˆ2ˆ2ˆ
kekkkkk xHHH ˆ2
11
1,0,1 Nlkelkxkhkh ll
LMS algoritam
• Veoma jednostavan za implementaciju
• Problem spora konvergencija
• Problem izbora parametra μ
• Iz analize gradijentnog algoritma sledi
• A praktične vrednosti su bar za red
veličine manje od toga
optsrNP
1
RLS algoritam
• Recursive Least Squares
• Brže konvergira od LMS algoritma po cenu
veće složenosti
• Minimizira se funkcija greške
• Težinski faktor n-i 0<1, zaboravljanje u
algoritmu
J n e in i
i
n
2
1
RLS algoritam
• 1/(1-) naziva se memorija algoritma, i ona
se bira tako da bude jednaka vremenu u
kome je ulazni signal približno stacionaran
RLS algoritam
• gde je:
• H(n) – vektor-vrsta koeficijenata filtra
• X(n) – vektor-kolona segmenta ulaznog signala
• d(n) – željeni signal u trenutku n
nnenn
nnndne
nnnnn
nnn
nnn
T
T
T
kHХ
XH
PXkPP
XPX
XPk
1
1
11
11
1
11
1
1
n i in i T
i
n
x x1
nn 1P
Primer 1 - adaptivna ekvalizacija
kanala pomoću „trening“ sekvence
• „Trening“ sekvenca je slučajan niz {xn}, takav da je xn=+/-
1, pri čemu slučajna promenljiva xn ima srednju vrednost
0 i varijansu 1 (Bernoulli-jeva sekvenca). U sistemu
postoji aditivni beli šum v(n) srednje vrednosti 0 i
varijanse
• Impulsni odziv kanala može da se aproksimira kao (W je
parametar kojim se kontroliše distorzija koju unosi
kanal):
001.02 v
3,2,10
3,2,1,22
cos12
1
n
nnWhn
Primer 1 - adaptivna ekvalizacija
kanala pomoću „trening“ sekvence
LMS
e(br_za_h)=xn(br_za_h-D)-h(br_za_h-1,1:M)*u(br_za_h:-1:br_za_h-M+1);
h(br_za_h,1:M)=h(br_za_h-1,1:M)+mi*e(br_za_h)*u(br_za_h:-1:br_za_h-M+1)';
RLS
e(br_za_h)=xn(br_za_h-D)-h(br_za_h-1,1:M)*u(br_za_h:-1:br_za_h-M+1);
k=(1/lambda)*P*u(br_za_h:-1:br_za_h-M+1)/(1+1/lambda*u(br_za_h:-...
1:br_za_h-M+1)'*P*u(br_za_h:-1:br_za_h-M+1));
h(br_za_h,1:M)=h(br_za_h-1,1:M)+k'*e(br_za_h);
P=1/lambda*P-1/lambda*k*u(br_za_h:-1:br_za_h-M+1)'*P;
Primer 1 - adaptivna ekvalizacija
kanala pomoću „trening“ sekvence
0 100 200 300 400 500 600 700 800 900 100010
-3
10-2
10-1
100
101
Mean-s
quare
err
or
LMS
RLS
Primer 1 - adaptivna ekvalizacija
kanala pomoću „trening“ sekvence
0 100 200 300 400 500 600 700 800 900 100010
-3
10-2
10-1
100
Mean-s
quare
err
or
LMS
RLS
Primer 1 - adaptivna ekvalizacija
kanala pomoću „trening“ sekvence
0 100 200 300 400 500 600 700 800 900 1000-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
1.2h(n
)
LMS - plavo, RLS - zeleno
Primer 1 - adaptivna ekvalizacija
kanala pomoću „trening“ sekvence
0 0.5 1 1.5 2 2.5 3 3.5-6
-4
-2
0
2
4
6
|H(e
j )|
LMS
RLS
kanal
Primer 2 – adaptivno
potiskivanje eha• Poništavanje refleksije s bližeg i daljeg
kraja
Adaptivni
FIR filtar
Ulaz
rA(t)
Filtar
(predajnik)
Filtar
(prijemnik)
Hibrid
OdabiranjeOdluka
Algoritam
adaptacije
a(n)
b(n)
eha procena - ˆ1
0
M
k
AA knakhs
Primer 2 – adaptivno
potiskivanje eha
Adaptivni
FIR filtar
Ulaz
rA(t)
Filtar
(predajnik)
Filtar
(prijemnik)
Hibrid
OdabiranjeOdluka
Algoritam
adaptacije
a(n)
b(n)
eha procena - ˆ1
0
M
k
AA knakhs
Bez
ekvalizacije
Primer 2 – adaptivno
potiskivanje eha
Adaptivni
FIR filtar
Ulaz
rA(t)
Filtar
(predajnik)
Filtar
(prijemnik)
Hibrid
OdabiranjeOdluka
Algoritam
adaptacije
a(n)
b(n)
eha procena - ˆ1
0
M
k
AA knakhs
Uključena
ekvalizacija,
malo μ
Primer 2 – adaptivno
potiskivanje eha
Adaptivni
FIR filtar
Ulaz
rA(t)
Filtar
(predajnik)
Filtar
(prijemnik)
Hibrid
OdabiranjeOdluka
Algoritam
adaptacije
a(n)
b(n)
eha procena - ˆ1
0
M
k
AA knakhs
Uključena
ekvalizacija,
veliko μ
Primer 2 – adaptivno
potiskivanje eha
0 0.5 1 1.5 2 2.5 3 3.5 4
x 104
-0.2
-0.1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
h(n
)
veliko μ
0 0.5 1 1.5 2 2.5 3 3.5 4
x 104
-0.1
0
0.1
0.2
0.3
0.4
0.5
0.6
h(n
)
malo μ
Primer 2 – adaptivno
potiskivanje eha
0 10 20 30 40 50 60 70 80-0.1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0 10 20 30 40 50 60 70 80-0.05
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
malo μ
veliko μ
Primer 3 – Line Enhancement
Adaptivni
filtar
Adaptivni
algoritam
d(k)
e(k)
y(k)
s(k)+n(k)
Kašnjenje
z - M
Primer 3 – Line Enhancement
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
x 104
-200
0
200
400
600
800
1000
1200autokorelacija suma
Primer 3 – Line Enhancement
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1-0.08
-0.06
-0.04
-0.02
0
0.02
0.04
0.06
0.08
Primer 3 – Line Enhancement
0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000-40
-35
-30
-25
-20
-15
-10
-5
0
f [Hz]
|H(e
jw)|
Primer 3 – Line Enhancement
0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000-40
-20
0
20
40
60
80
f [Hz]
X(f
)
ulaz
izlaz
Primer 4 – Potiskivanje
tonske smetnje
Adaptivni
filtar
Adaptivni
algoritam
d(k)
e(k)
y(k)
s(k)+n(k)
Kašnjenje
z - M
Primer 4 – Potiskivanje
tonske smetnje
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
x 104
-200
0
200
400
600
800
1000
1200autokorelacija suma
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-0.1
-0.08
-0.06
-0.04
-0.02
0
0.02
0.04
0.06
0.08
Primer 4 – Potiskivanje
tonske smetnje
0 500 1000 1500 2000 2500 3000 3500 4000-60
-50
-40
-30
-20
-10
0
10
f [Hz]
|H(e
jw)|
Primer 4 – Potiskivanje
tonske smetnje
0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000-40
-35
-30
-25
-20
-15
-10
-5
0
f [Hz]
|H(e
jw)|
0 1000 2000 3000 4000 5000 6000 7000 8000-60
-40
-20
0
20
40
60
80
100
f [Hz]
X(f
)
ulaz
izlaz
greska
Primer 5 - Aktivna kontrola
buke
Adaptivan
sistemx(t) y(t)
e(t)
Dodatno kašnjenje od
referentnog do kontrolnog
mikrofona
Greška
Ulaz
Izlaz Kašnjenje 128
odbiraka
0.0160 s
FILTAR
Greška
Ulaz
Izlaz
Problem!!!
Preveliko μ