background image

 

 

Cyfrowe przetwarzanie sygnałów

Transformaty ortogonalne (05)

Sławomir Kulesza

Wykład fakultatywny dla studentów

III r. spec. Informatyka ogólna

Rok akademicki 2012/2013

background image

 

 

Transformaty skończone

Każde przekształcenie skończonego w sensie 

czasu trwania sygnału z dyskretnym czasem na 

sygnał o tej samej długości zależny od innej 

wielkości nazywamy transformatą.

Transformata mapuje sygnał z dziedziny czasu 

na przeciwdziedzinę (np. częstości).

Transformata odwrotna mapuje sygnał z 

przeciwdziedziny z powrotem na dziedzinę 

czasu.

background image

 

 

Para transformat

Niech x[n] będzie sygnałem z dyskretnym 
czasem (o długości N), zaś X[k] niech będzie 
N-punktowym ciągiem współczynników jego 
transformaty, wówczas prostą transformatę:

nazywamy równaniem analizy sygnału

[]=

n=0

−1

[n] Ψ

[

k , n]

background image

 

 

Para transformat

Analogicznie, transformatę odwrotną:

określa się mianem równania syntezy 
sygnału.

Występujący w obu transformatach sygnał 
Ψ[k,n] nazywany jest bazą transformaty.

[n]=

1

N

n=0

−1

] Ψ [k , n]

background image

 

 

Transformaty ortogonalne

Spośród licznych transformat skończonych, 
wyróżnioną grupę stanowią transformaty 
ortogonalne
 spełniające warunek:

Transformaty ortogonalne zbudowane są 
zatem w oparciu o ortogonalne sygnały 
bazowe

1

N

n=0

−1

Ψ [

k , n] Ψ

[

l , n]=

{

1⇔l=k
0⇔lk

background image

 

 

Zachowanie energii

Transformaty ortogonalne zachowują energię 
sygnału:

Jest to tzw. równość Parsevala

n=0

−1

[n]∣

2

=

n=0

−1

[nx

[

n]=

1

N

n=0

−1

[]∣

2

background image

 

 

Dyskretna transformata Fouriera

N-punktowa dyskretna transformata Fouriera 
(Discrete Fourier Transform – DFT) jest 
zdefiniowana jako:

Gdzie sygnał bazowy zespolonym ciągiem 
wykładniczym:

[]=

n=0

−1

[n]e

j2 π knN

, k =0,1 ,... −1

Ψ [

k , n]=e

j2 π k nN

background image

 

 

Ortogonalność sygnałów bazowych

Sprawdźmy ortogonalność sygnałów 
bazowych DFT:

Podstawmy:

1

N

n=0

−1

Ψ [

k , n] Ψ

[

l , n]=

1

N

n=0

−1

e

2 π(k)nN

S

−1

=

n=0

−1

e

2 π(k)nN

=

n=0

−1

u

n

background image

 

 

Ortogonalność sygnałów bazowych

Suma szeregu wynosi:

Po podstawieniu:

S

−1

=

1−u

N

1−u

S

−1

=

1−e

2 π(k)

1−e

2 π(k)/ N

=

{

1⇔l=+
0⇔lk

background image

 

 

Dyskretna Transformata Fouriera

Podstawiając:

DFT można zapisać jako:

Transformata odwrotna iDFT ma postać:

w

N

=

e

2 π/ N

[]=

n=0

−1

[n]w

N

kn

, k =0,1 ,... , N −1

[n]=

1

N

k=0

−1

w

N

kn

, k =0,1 ,... , N −1

background image

 

 

Szybka Transformata Fouriera

Aby ograniczyć złożoność obliczeniową DFT 
opracowano algorytmy rzędu N(log

2

N), które 

określane są mianem szybkiej transformaty 
Fouriera (Fast Fourier Transform – FFT).

FFT jest identyczna z DFT, tyle że prowadzi do 
wyniku w krótszym czasie, zwłaszcza gdy 
N=2

k

.

background image

 

 

Związki między DTFT a DFT

DTFT sygnału z dyskretnym czasem jest dana 
jako:

Próbkując widmo DTFT w równoodległych 
częstościach:

(e

ω

)=

n=0

[n]e

ω n

=

n=0

−1

[n]e

ω n

ω

k

=

2 π k

N

, k =0,1 ,... , N −1

background image

 

 

Związki między DTFT a DFT

Próbkowaną DTFT można zapisać jako:

Przez porównanie widać, że N-punktowa DFT 
X[k] jest ciągiem próbek transformaty DTFT 
X(e

) zebranych w N-równooldległych 

punktach widma ω

k

.

(e

ω

)∣

ω

k

=

n=0

−1

[n]e

2 π k nN

background image

 

 

Zero-padding

Jeśli chcemy obliczyć transformatę DTFT na 
gęstej siatce M-punktów dla sygnału N-
punktowego, możemy ten sygnał uzupełnić 
(M-N)-zerami (zero padding):

Wówczas:

[n]→ x

p

[

n]=[ ,0 ,0,0 ,0 ,0]

(e

ω

k

)=

n=0

−1

[n]e

2 π k nM

=

n=0

−1

x

p

[

n]e

2 π kn M

background image

 

 

Zero-padding

background image

 

 

Kołowe przesunięcie sygnału

Ponieważ własności DFT wykorzystują 
przesuwanie sygnału w dziedzinie i 
przeciwdziedzinie, należy zdefiniować te 
operacje.

Jeśli wyjściowy sygnał x[n] jest N-punktowy 
(0≤n≤N-1), to jego przesunięta kopia nie może 
wyjść poza ten zakres. Wykorzystuje się w tym 
celu operację modulo, definiując przesunięcie 
kołowe (circular shift)
.

background image

 

 

Kołowe przesunięcie sygnału

background image

 

 

Kołowe przesunięcie sygnału

Zauważmy przy tym, że:

Tak więc przesunięcie w prawo o n

0

-próbek 

jest tożsame przesunięciu w lewo o (N-n

0

)-

próbek.

x

s

[

n]= [(nn

0

)

N

]=

[(n+n

0

)

N

]

background image

 

 

Kołowe przesunięcie sygnału

background image

 

 

Kołowe zawinięcie sygnału

background image

 

 

Splot kołowy

Przypomnijmy, że splot dwóch N-punktowych 
sygnałów x[n] oraz h[n] ma postać:

Aby jednak zachować długość ciągu 
wynikowego, musimy operację splotu 
zdefiniować wykorzystując operację kołowego 
przesunięcia i odbicia sygnału.

y

L

[

n]=xh=

m=0

−1

[mh[nm0≤n≤2N−2

background image

 

 

Splot kołowy

Splot kołowy zdefiniowany jest jako:

Splot kołowy jest zawsze ciągiem N-
punktowym.

y

c

[

n]=

m=0

−1

[n]h[(nm)

N

]=

∘ h

background image

 

 

Obliczanie splotu kołowego

background image

 

 

Obliczanie splotu kołowego

Metoda macierzowa

background image

 

 

Obliczanie splotu liniowego przy 

pomocy splotu kołowego

background image

 

 

Filtracja sygnałów

Mając wydajne algorytmy obliczania DFT – 
Fast Fourier Transform (FFT) możemy szybko 
liczyć transformaty dowolnych sygnałów i 
transformaty odwrotne.

Mając możliwość liczenia splotu liniowego jako 
splotu kołowego sygnału uzupełnionego 
zerami możemy zbudować wydajne filtry 
cyfrowe.

background image

 

 

Podział sygnałów N-punktowych

Każdy sygnał czasu dyskretnego można 
przedstawić jako sumę składowych 
sprzężonych kołowo: symetrycznej x

cs

[n] oraz 

antysymetrycznej x

ca

[n]:

[n]= x

cs

[

n]+ x

ca

[

n]

x

cs

[

n]=

1
2

(

[n]+ x

[(−

n)

N

])

x

ca

[

n]=

1

2

(

[nax

[(−

n)

N

])

background image

 

 

Sygnały parzyste i nieparzyste

N-punktowy sygnał rzeczywisty czasu 
dyskretnego rozkłada się według powyższego 
wzoru na dwie składowe rzeczywiste: parzystą 
(zespoloną symetryczną) oraz nieparzystą 
(zespoloną antysymetryczną).

background image

 

 

Symetrie geometryczne

N-punktowy sygnał x[n] jest symetryczny, gdy:

N-punktowy sygnał x[n] jest antysymetryczny, 
gdy:

[n]= −1−n]

[n]=−−1−n]

background image

 

 

Symetrie geometryczne

background image

 

 

Związki DFT z symetriami

W ogólności, DFT jest sygnału z dyskretnym 
czasem jest sygnałem zespolonym postaci:

gdzie poszczególne składowe liczy się ze 
wzorów:

[]= X

[

]= X

[

]

X

[

]=

1

2

(

[]+ X

[

])

X

[

]=

1
2

(

[]− X

[

])

background image

 

 

Związki DFT z symetriami

W ogólności, DFT jest sygnału z dyskretnym 
czasem jest sygnałem zespolonym postaci:

gdzie poszczególne składowe liczy się ze 
wzorów:

[]= X

[

]= X

[

]

X

[

]=

1

2

(

[]+ X

[

])

X

[

]=

1
2

(

[]− X

[

])

background image

 

 

Symetrie DFT dla sygnałów 

zespolonych

background image

 

 

Symetrie DFT dla sygnałów 

rzeczywistych

background image

 

 

Własności DFT

background image

 

 

Nadmiarowość DFT

Pamiętamy, że N-punktowa DFT sygnału 
rzeczywistego jest sygnałem zespolonym 
spełniającym warunek symetrii:

Dla parzystego N, próbki X[0] oraz X[(N-2)/2] 
są rzeczywiste, zaś pozostałe (N-2)-próbki są 
zespolone, jednak tylko połowa z nich jest 
różna od reszty.

[]= X

[(−

)

N

]

background image

 

 

Nadmiarowość DFT

Dla nieparzystego N, X[0] jest próbką 
rzeczywistą, a pozostałe (N-1) – zespolone, 
jednak tylko połowa z nich jest odmienna od 
reszty dzięki symetrycznemu sprzężeniu.

Świadczy to o nadmiarowości sygnału 
(redundancy).

background image

 

 

Przedłużanie sygnału

4 możliwe schematy przedłużania sygnału:

WS – whole-sample symmetry

WA – whole-sample antisymmetry

HS – half-sample symmetry

HA – half-sample antisymmetry

Po przedłużeniu obu końców sygnału 
dostajemy 16 możliwych schematów 
przedłużania, z czego 8 symetrycznych 
stanowi bazę DCT, zaś 8 antysymetrycznych – 
bazę DST

background image

 

 

Przedłużanie sygnału

Jeśli sygnał wyjściowy ma postać: x[n] = 
[a,b,c,d], to jego okresowy, przedłużony 
odpowiednik ma postać:

x

WSWS

[n] = [a,b,c,d,c,b] – typ I

x

HSHS

[n] = [a,b,c,d,d,c,b,a] – typ II

background image

 

 

Przedłużanie sygnału

background image

 

 

DCT typ II

Standardem używanym do kodowania JPEG, 
MPEG oraz H.261 jest transformata 
kosinusowa bazująca na przedłużaniu typu II.

Ta transformata jest nazywana także parzystą, 
symetryczną DCT.

background image

 

 

DCT typu II

Niech dany jest N-punktowy sygnał x[n].

Najpierw sygnał ten jest uzupełniany zerami:

Następnie tworzy się sygnał symetryczny typu 
II y[n]:

x

zp

[

n]=

{

[n]⇔0≤n≤ −1

0⇔ n≤2N−1

[n]=x

zp

[

n]+ x

zp

[

2N−1−n]=…

{

[n]⇔0≤n−1

[2N−1−n]⇔ n≤2N−1

background image

 

 

DCT typu II

Powstały sygnał spełnia warunek symetrii:

2N-punktowa transformata DFT tego sygnału 
ma postać:

[n]= [2N−1−n]

[]=

n=0

2N−1

[n]w

2N

kn

, k =0,1 ,... 2N−1

background image

 

 

DCT typu II

Po przekształceniach:

N-punktowa transformata DCT typu II powstaje 

przez wybranie pierwszych N-próbek powyższej 

transformaty DFT i przemnożenie ich przez w

2N

k/2

[]=w

2N

/2

n=0

−1

2x [n]cos

(

π

(2n+1)

2N

)

,

0≤≤2N−1

background image

 

 

DCT typu II

DCT typu II ma ostatecznie postać:

Zauważmy, że dla rzeczywistego x[n], X

DCT

 jest 

także rzeczywiste.

X

DCT

[

]=

n=0

−1

[n]cos

(

π

(2n+1)

2N

)

0≤≤ −1

background image

 

 

iDCT

Odwrotna transformata kosinusowa N-
punktowego DCT ma postać:

Gdzie:

[n]=

1

N

k=0

−1

α[

X

DCT

[

]cos

(

π

(2n+1)

2N

)

,0≤n≤ −1

α [

]=

{

1

2

=0

1⇔1≤−1

background image

 

 

Własności DCT

Liniowość DCT:

Symetria DCT:

Zachowanie energii:

α

[n]+β h[n] ⇔

DCT

α

G

DCT

[

]+β H

DCT

[

]

g

[

n] ⇔

DCT

G

DCT

[

]

n=0

−1

[n]∣

2

=

1

2N

k=0

−1

α[

]∣G

DCT

[

]∣

2

background image

 

 

Kompaktowość DCT

background image

 

 

Transformata Haara

Transformata Haara bazuje na sygnałach 
powstałych ze spróbkowania ciągłych w 
przedziale 0 ≤ t ≤ 1 funkcji Haara.

Zbiór funkcji Haara h

k

(t) zawiera N elementów, 

k=0,1,...,N-1 (N jest potęgą 2).

Opisujący daną funkcję indeks k jest 
jednoznacznie wyznaczony przez parę liczb p 
oraz q takich, że:

=2

p

+

q−1

background image

 

 

Indeksowanie funkcji Haara

Dla N=16:

background image

 

 

Znormalizowane funkcje Haara

Znormalizowane funkcje Haara zdefiniowane 
są jako:

background image

 

 

Macierz transformaty Haara

Macierzą transformaty Haara H

N

 nazywamy 

dyskretną funkcję Haara spróbkowaną w 
punktach t=n/N, n=0,1,...,N-1.

Dla N=8:

background image

 

 

Transformata Haara

N-punktowa transformata Haara ma postać:

O ile współczynniki transformat DFT oraz DCT 
były powiązane ze specyficznymi 
częstościami, transformata Haara (i inne 
transformaty falkowe) odzwierciedla różne 
położenia i skale składowych sygnału.

X

Haar

=

H

N

[n]

background image

 

 

Własności transformaty Haara

Ortogonalność:

wynika stąd łatwość liczenia transformaty 
odwrotnej:

H

N

1

=

1

N

H

N

t

[n]=

1

N

H

N

t

X

Haar

background image

 

 

Własności transformaty Haara

Zachowanie energii sygnału:

n=0

−1

[n]∣

2

=

1

N

k=0

−1

X

Haar

[

]∣

2

background image

 

 

Kompaktowość transformat


Document Outline