efikasno izračunavanje dfttnt.etf.bg.ac.rs/~oe3dos/materijali/predavanja/casovi/4... · 2018. 11....
TRANSCRIPT
Efikasno izračunavanje DFT1
Digitalna obrada signalaEfikasno izračunavanje DFT
Direktna primena za sve odmerke
Cilj ‐> smanjiti potreban broj izračunavanja
Jedno kompleksno množenje = 4 realna množenjaJedno kompleksno sabiranje = 2 realna sabiranjaJedno W = dve trigonometrijske funkcije sin i cos
Digitalna obrada signalaEfikasno izračunavanje DFT
sin i cos?
ali dodatak
Efikasno izračunavanje DFT2
Digitalna obrada signalaEfikasno izračunavanje DFT – Gercelov algoritam
Treba izračunati za mali broj odmeraka << N
Digitalna obrada signalaEfikasno izračunavanje DFT – Gercelov algoritam
Efikasno izračunavanje DFT3
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija
FFT
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija - DIT
Simetrija i periodičnost
ako treba i dodavanjem nula
)()(
2
)(
NknN
nNkN
knN
kN
NkN
knN
knN
nNkN
WWW
WW
WWW
Na primer ako uočimo bilo koji x sa parnim n i koeficijent kojim se mnozi, njegov sledbenik x sa neparnim n+1, se uvek množi sa “istim” koeficijentom“rotiranim” vrednošću
kNW
i za taj harmonik je konstantno
Efikasno izračunavanje DFT4
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija - DIT
parni neparni
Iz originalne sekvence sa parnim n
Iz originalne sekvence sa neparnim n
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija - DIT
Efikasno izračunavanje DFT5
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija - DIT
)3(10X
)3(11X
Strelice putanja. Strelice ulaze u čvor ‐> sabiranje. Koeficijent na strelici ‐> množenje.
)2(10X
)1(10X)0(10X
)0(11X
)1(11X)2(11X
Leptir operacija
0x
2x
4x
6x
1x
3x
5x
7x
0X
1X
2X
3X
4X
5X
6X
7X
08W1
8W2
8W3
8W1
1
1
1
DFT
DFT
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija - DIT
Direktno ‐ >
Podelom
Efikasno izračunavanje DFT6
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija - DIT
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija - DIT
Efikasno izračunavanje DFT7
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija - DIT
Ukupno stepena
Ukupno leptir operacija
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija - DIT
N=409649152/33554432=0.00146
Efikasno izračunavanje DFT8
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija – Bit inverzija
Preuređenje podataka ‐ Bit inverzija
Redosled koji je potreban: 0 4 2 6 1 5 3 7
Redosled sekvence: 0 1 2 3 4 5 6 7
0 4 2 6 1 5 3 7
0 1 2 3 4 5 6 7preuređenje i tu postoji simetrija
000 001 010 011 100 101 110 111
000 010 100 110 001 011 101 1111
000 100 010 110 001 101 011 1112
000 001 010 011 100 101 110 111 nove pozicije
123210012321 nnnnnn bbbbbbbbbbbb
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija – Bit inverzija
33
21
10210
23211
110
11
1
11
12321
0
0
012321
2*2*2*8*4*2*
)(
4*2*4*
0
41
)(2*
021
2
nnn
nnn
nnn
n
nnn
bbbNbNbNbjanovapozici
bbbbfunkcijanesto
nestoNbNbnestoNbjanovapozicijanovapozici
nestojanovapozicijanovapozicielse
nestoNjanovapozicijanovapozicithenbif
bbbbbfunkcijanesto
nestoNbjanovapozici
nestojanovapozicielse
nestoNjanovapozicithenbif
N
bbbbbb
Efikasno izračunavanje DFT9
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija – In place
Ulazna sekvenca kompleksnaBroj potrebnih lokacija N+NIzlazna je “sigurno” kompleksnaBroj potrebnih lokacija N+NSve zajedno 4N
Leptir operacija u m tom stepenu dekompozicije
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija – In place
Efikasno izračunavanje DFT10
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija - DIT
Modifikacije DIT algoritma
Povlačimo celu horizontalnu liniju na gore, tako da ulazni podatak zauzme svoju pravu poziciju. Ne diramo čvorove, koeficijente ....
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija - DIT
Modifikacije DIT algoritma
Ista geometrija leptira. In place
Efikasno izračunavanje DFT11
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija - DIF
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija - DIF
Pomocni nizovi
Efikasno izračunavanje DFT12
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija - DIF
Napravimo pomocne nizove pa uradimo DFT u N/2 tačaka
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija - DIF
Efikasno izračunavanje DFT13
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija - DIF
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija - DIF
Modifikacije DIF algoritma
Efikasno izračunavanje DFT14
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija - DIF
Modifikacije DIF algoritma
Digitalna obrada signalaEfikasno izračunavanje DFT – Brza Furijeova transformacija - DIT vs DIF
DIF
DIT