Oryginalny x

Transkrypt

Oryginalny x
Cyfrowe przetwarzanie i
kompresja danych
dr inż. Wojciech Zając
Wykład 5.
Dyskretna transformata falkowa
Schemat systemu transmisji danych
wizyjnych
Źródło
danych
Przetwarzanie
Przesył
Kontrolowane
Zakłócenia
straty
Przetwarzanie
Prezentacja
Obliczanie jednowymiarowej transformaty DCT
Przekształcenie
proste
X × DCT = Y
x1
x2
x3
x4
x5 *
x6
x7
x8
?
=
y1
y2
y3
y4
y5
y6
y7
y8
Obliczanie jednowymiarowej transformaty DCT
Przekształcenie
proste
X × DCT = Y
x1
x2
x3
x4
x5 *
x6
x7
x8
f1
f2
f3
f4
f5
f6
f7
f8
=
y1
y2
y3
y4
y5
y6
y7
y8
Obliczanie jednowymiarowej transformaty DCT
Przekształcenie
proste
X × DCT = Y
Przekształcenie
odwrotne
Y × DCT = X
x1
x2
x3
x4
x5 *
x6
x7
x8
y1
y2
y3
y4
y5 *
y6
y7
y8
=
y1
y2
y3
y4
y5
y6
y7
y8
=
x'1
x'2
x'3
x'4
x'5
x'6
x'7
x'8
f1
f2
f3
f4
f5
f6
f7
f8
f1
f2
f3
f4
f5
f6
f7
f8
DCT jako analiza sub-pasmowa
Podział widma sygnału
w analizie subpasmowej DCT
_π
1
8
0
f 1
f 2
_π
2
8
_π
4
8
_π
3
8
f 3
f 4
_π
5
8
f 5
_π
6
8
f 6
_π
7
8
f 7
π
f 8
Rozkład energii w obrazie
Histogram wartości współczynników DCT
obraz LENA256
300
250
200
150
100
50
0
0
5
10
15
20
25
30
35
40
Rozkład energii w obrazie
Histogram wartości współczynników DCT
obraz BABOON
300
250
200
150
100
50
0
0
5
10
15
20
25
30
Szczególna postać analizy
subpasmowej
X(z)
H0 (z)
G0 (z)
+
H1 (z)
G1 (z)
π
_
2
0
Xl
Y(z)
π
Xh
Podział widma sygnału
w analizie falkowej
H0(z)
↓2
xl
H1(z)
↓2
xh
x
π
_
2
0
Xl
π
Xh
Podział widma sygnału
w analizie falkowej
xl
H0(z)
↓2
xll
H1(z)
↓2
xlh
↓2
x
H1(z)
H0(z)
↓2
xh
π
_
4
0
X ll
π
_
2
X lh
π
Xh
Podział widma sygnału
w analizie falkowej
xll
xl
↓2
x
↓2
H1(z)
H1(z)
↓2
π
_
8
0
X lll
xlll
H1(z)
↓2
xllh
xlh
xh
π
_
4
X llh
↓2
↓2
H0(z)
H0(z)
H0(z)
π
_
2
X lh
π
Xh
Analiza falkowa
W przeciwieństwie do analizy fourierowskiej i kosinusowej, analiza falkowa
nie wyraża badanych funkcji poprzez wielomiany, ale poprzez pewne
specjalne funkcje - falki, które są tworzone ze stałej funkcji zwanej falką
macierzystą, poddanej wielokrotnym translacjom.
Uzyskane w ten sposób falki mają szereg interesujących skalowalnych
właściwości. Można je odnosić zarówno do czasu jak i do częstotliwości,
dopuszczając bliższe związki pomiędzy badaną funkcją (funkcją
reprezentowaną), a jej współczynnikami. W ten sposób uzyskano większą
numeryczna stabilność w procesie odtwarzania funkcji.
Pokazano, że każde zadanie posługujące się szybką transformatą Fouriera może
zostać sformułowane za pomocą falek, dając przy tym więcej informacji
przestrzennej (o miejscu położenia) jak i częstotliwościowej. W ten sposób
zamiast tworzyć spektrum natężenie-częstotliwość można otrzymać
spektrum falkowe (wavelet spectrum).
TRANSFORMATA FALKOWA
Cechą charakterystyczną funkcji bazowych transformaty falkowej jest to, że ich wartość
średnia jest równa zero i mają postać szybko gasnących oscylacji. Ciągła
transformata falkowa sygnału ciągłego x(t), z zastosowaniem falki bazowej g(t) jest
opisana równaniem:
Wf (a, b ) =
∞
t −b
x(t )g ∗ 
dt
∫
a −∞
 a 
1
gdzie a jest współczynnikiem skali (wpływa na czas trwania) falki, b współczynnikiem
przesunięcia (zmienia położenie na osi czasu). Wartość współczynników a i b
interpretuje się jako miarę podobieństwa do danego fragmentu analizowanego
sygnału. Wynikiem ciągłego przekształcenia falkowego są współczynniki Wf(a,b),
które odwzorowują sygnał oryginalny x(t) za pomocą falki bazowej g(t) w przestrzeni
czas-częstotliwość.
Przekształcenie falkowe
Przekształcenie falkowe opiera się na szablonie, który wykorzystuje
pewną funkcję podstawową (falkę podstawową). Transformatę falkową
oblicza się na podstawie wzoru , poprzez wyznaczanie iloczynu
skalarnego z przeskalowanymi i przesuniętymi wersjami falki
podstawowej.
CWT f (τ , s ) = f (t ), Ψτ , s (t ) =
∞
 t −τ
f (t )Ψ
∫
 s
s −∞
1

dt

gdzie: Ψ(t ) – falka podstawowa,
s,τ – odpowiednio argumenty skali i czasu, tworzące dziedzinę transformaty
Przekształcenie falkowe
Teoria falkowej reprezentacji sygnału nie definiuje konkretnej
postaci falki, określa jedynie własności jakie musi posiadać taka
funkcja. Wymaga się, by falka miała skończoną energię,
wartość średnią równą zero oraz by posiadała niezerowe
wartości tylko w skończonym przedziale. Spełnienie tych
warunków powoduje, że falka posiada postać krótkotrwałej
oscylacji , skąd wywodzi się jej nazwa.
Przekształcenie falkowe
W wyniku jednowymiarowego przekształcenia falkowego otrzymuje się
dwuwymiarową półpłaszczyznę , której argumentami są skala i czas.
Zmienna skali wywodzi się ze skalowania falki podczas wyznaczania
transformaty i posiada znaczenie odwrotności chwilowej częstotliwości.
Teoretyczne badania naukowe doprowadziły do opracowania różnych
odmian
przekształcenia falkowego, przeznaczonych do cyfrowego
przetwarzania sygnałów.
Największe znaczenie posiada tu dyskretne przekształcenie falkowe,
które dostarcza najbardziej zwartą reprezentację falkową sygnału
dyskretnego. W wyniku tej transformacji otrzymuje się zbiór
współczynników pogrupowanych odpowiednimi poziomami skali,
zdyskretyzowanej wykładniczo. Na każdym poziomie skali,
odpowiadającym analizowaniu sygnału z różną rozdzielczością,
otrzymuje się współczynniki, których gęstość rozmieszczenia w czasie
jest zależna od bieżącej wartości skali. Dzięki temu, uzyskuje się
własność wielorozdzielczości, pozwalającą na dopasowanie się
rozdzielczości czasowej analizy sygnału do aktualnej skali analizy.
Jednowymiarowa analiza falkowa
x ll
xl
↓2
x
↓2
H 1 (z)
↓2
H 1 (z)
x lll
↑2
↑2
^
xl
H0(z)
G
0 (z)
↑2
↑2
π
_
4
X llh
^
+
↑2
π
_
2
X lh
HG00(z)
(z)
HG1(z)
(z)
xh
X lll
x llh
x lh
+
x lh
π
_
8
↓2
x ll
HG11(z)
0
H 1 (z)
^
+
x llh
x lll
xh
(z)
HG00(z)
↑2
↓2
↓2
H 0 (z)
H 0 (z)
H 0 (z)
G11(z)
H
(z)
π
Xh
x
Dwuwymiarowa analiza falkowa
Blok A
Blok A
Blok A
xl vert
H0 hor
H0 vert
↓2hor
xll
↓2vert
H1 hor
↓2 hor
xlh
H0 hor
↓2hor
xhl
H1 hor
↓2hor
x hh
x
xh vert
H1 vert
↓2vert
xll-ll-ll
x ll-ll
xll-ll-lh
xll-lh
xll-ll-hl
xll-hl
xll-ll-hh
x ll-hh
Dwuwymiarowa analiza falkowa –
c.d.
0
π
_
2
0
x ll-ll-ll x ll-ll-lh
x ll-ll-hl
π
_
2
xll-ll-hh
x ll-hl
x ll-lh
x lh
x ll-hh
x hl
π
π
xhh
Realizacja - filtry LeGalla
(
1
H 0 ( z ) = − z − 2 + 2 z −1 + 6 + 2 z − z 2
8
(
1
H1 ( z ) = − z −1 + 2 − z
2
(
1 −1
G0 ( z ) = z + 2 + z
2
(
)
(1)
(2)
)
1
G1 ( z ) = − z − 2 − 2 z −1 + 6 − 2 z − z 2
8
)
(3)
)
(4)
Jakość przetwarzania (1)
PSNR [dB]
40
35
30
Wavelet
25
20
15
DCT
10
5
BER [%]
0
0.5
1
1.5
2
2.5
3
Jakość przetwarzania (2)
DCT, BER=0.1%
WAVELET, BER=0.1%
Jakość przetwarzania (3)
DCT, BER=1%
WAVELET, BER=1%