kompresja


Metoda kompresji na bazie predykcji  model LP
1. Dla ramki wejściowej s(n) o długości tworzymy ramkę LP. Proszę podać odpowiedzi dotyczące poniższych
zagadnień:
A. Narysować model LP dla sygnału mowy. Opisać krótko sposób wyznaczania parametrów modelu predykcyjnego
(filtru modelującego) oraz pobudzenia idealnego dla ramki wejściowej.
Na poczÄ…tku sprawdzamy czy pobudzenie jest okresowe czy losowe:
·ð pobudzenie losowe  szum: ma mniejszÄ… energiÄ™, częściej przechodzi przez zero;
·ð pobudzenie okresowe  dzwiÄ™czna mowa: autokorelacja Rxx(k) okreÅ›la max. gdy k jest okresem funkcji.
Trakt (kanał) głosowy modelujemy filtrem FIR:

( ) ( )
= " -

Do optymalizacji współczynników stosujemy kryterium średniokwadratowe

( ) ( ) )
= - " ( - , zatem =  R  macierz Toeplitza
"

B. W jaki sposób wyznaczamy idealny sygnał pobudzenia filtru modelującego u(n), mając do dyspozycji współczynnik
filtru {ai}, i=1,2,& p oraz sygnał ramki s(n).
??????????
C. W jaki sposób wykorzystujemy sygnał idealnego pobudzenia u(n) do określenia typu dzwięczności ramki U/V oraz
wartości okresu T.
??????????
D. Opisać budowę ramki wyjściowej dla kodera wykorzystującego model LP.
{ a1 , a2 , & , ap , typ ramki UV/V , G , T }
współczynniki dzwięczna czy okres
wzmocnienie
filtru bezdzwięczna (tylko dla pobudzenia dzwięcznego)
2. Przy następujących założeniach dla kodeka LP:
- próbkowanie: częstotliwość  fp = 12kHz, rozdzielczość 9 bitów;
- długość ramki wejściowej  lR = 500 próbek;
- budowa ramki wyjściowej:
3 współczynniki kodowane na 9 bitach każdy,
3 kolejne kodowane na 4 bitach każdy ,
4 ostatnie kodowane na 5 bitach każdy,
wzmocnienie na 6 bitach,
dzwięczność na 1 bicie,
okres pobudzenia na 4 bitach,
należy wyznaczyć:
- prędkość ramkową vR
- szybkość transmisji v
- stopieÅ„ kompresji ·
Liczba bitów przypadająca na 1 ramkę: 3 " 9 + 3 " 4 + 4 " 5 + 6 + 1 + 4 = 70 ó

Czas przejścia ramki: = = = 41,7


Prędkość ramkowa: = = 24

ó
Szybkość transmisji: = 24 " 70 = 1680
Ä™
ść . ś ł "
Stopień kompresji: = = = 85,71
ść . ś ł
3. Przy następujących założeniach dla kodeka LP:
- próbkowanie: częstotliwość  fp = 12kHz, rozdzielczość 12 bitów;
- długość ramki wejściowej  lR = 200 próbek;
- budowa ramki wyjściowej:
3 współczynniki kodowane na 8 bitach każdy,
3 kolejne kodowane na 5 bitach każdy,
4 ostatnie kodowane na 10 bitach każdy,
wzmocnienie na 4 bitach,
dzwięczność na 1 bicie,
okres pobudzenia na 6 bitach,
należy wyznaczyć:
- prędkość ramkową vR
- szybkość transmisji v
- stopieÅ„ kompresji ·
Liczba bitów przypadająca na 1 ramkę: 3 " 8 + 3 " 5 + 4 " 10 + 4 + 1 + 6 = 90 ó

Czas przejścia ramki: = = = 16,7


Prędkość ramkowa: = = 60

ó
Szybkość transmisji: = 60 " 90 = 5400 = 5,4
Ä™
ść . ś ł "
Stopień kompresji: = = = 26,67
ść . ś ł
4. Wyznaczyć szybkość transmisji dla kodeka LPC przy następujących założeniach:
- częstotliwość próbkowania  10kHz;
- długość ramki  250 próbek;
- budowa ramki LPC:
5 współczynników filtru modelującego (każdy kodowany przez 5 bitów),
5 kolejnych współczynników (każdy kodowany przez 10 bitów),
informacja o wzmocnieniu kodowania przez 4 bity,
informacja o dzwięczności kodowana przez 1 bit,
informacja o okresie pobudzenia kodowania na 5 bitach.
Liczba bitów przypadająca na 1 ramkę: 5 " 5 + 5 " 10 + 4 + 1 + 5 = 85 ó

Czas przejścia ramki: = = = 25


Prędkość ramkowa: = = = 40

ó
Szybkość transmisji: 40 " 85 = 3400 = 3,4
Ä™
Kompresja algebraiczna
1. Narysować schemat systemu transmisji danych i opisać (przy pomocy formuł matematycznych) wszystkie
operacje wykonywane na wektorze danych wejściowych dla kodera i dekodera.
ri
ri
ki ui
vi
Zp
ui , vi  n-wymiarowe
QT
Qp
wektory
macierz wektorów
macierz
własnych
decyzyjna
KODER:
1) dla ciągu wektorów ni wyznaczamy macierz korelacji :

1
= "


2) dla macierzy R rozkład RQ = QA 1 > 2 > & > n
3) wyznaczamy nowy ciąg wektorów vi = QT ni
4) zapamiętujmy p pierwszych współrzędnych wektorów vi i p kolumn macierzy R
= "

= " = " "

1 0 & 0

ę ó 1
Z = 0 1 & 0
î" î" Å„" î"

" ę ó !
0 0 & 0
Macierz Zp kompresuje sygnał na p-wymiarowe wektory < )
(
DEKODER:
Wyznaczamy ciąg wektorów
= = [ , , & , ]
= 1  minor component analizer
> 1  principal component analizer
W dekoderze mamy:
??????????
2. Wyjaśnić pojęcie faktoryzacji Karhunena-Loewe dla macierzy korelacji R.

1
= "


Para własna macierzy: ( , )

 wektor własny

 wartość własna
Para ta speÅ‚nia zależność, że jeÅ›li × ma postać = [ î" î" ï" î" ] to:

1 0 & 0
" = " = ™ = 0 1 & 0 ,
î" î" Å„" î"
0 0 & 1
czyli złożona z wektorów własnych jest ortogonalna i wektory są ortogonalne

" = 1


" = 0 ( `" )

Dla takiej pary własnej zachodzi zatem zależność: = = " = 1,2, & ,

0 & 0
0 & 0
czyli: " = " ›, gdzie: › = jest macierzÄ… diagonalnÄ….
î" î" Å„" î"
0 0 &
" = " › /"
" " = "
› = " "
" = " › /"
" " = " › "
= " " - faktoryzacja Karhunena-Loewe
faktoryzacja  transformata ortogonalnego podobieństwa
Dowolną macierz można rozbić na iloczyn specyficznych macierzy, tak jak liczbę na iloczyn liczb pierwszych.
3. W efekcie faktoryzacji Karhunena-Loewe macierzy korelacji R otrzymano nastÄ™pujÄ…ce macierz Q i ›:
5 0 0 0
= [ ]; › = 0 1 0 0 ;

0 0 2 0
0 0 0 3
Proszę podać postać macierzy wyboru Zp dla p=3 zapewniającą optymalną energetycznie rekonstrukcję sygnału w
dekoderze. Odpowiedz należy krótko uzasadnić.
??????????
4. Dany jest obraz o wymiarach NxN, który dzielimy na L podobrazów o wymiarze MxM.
A. Wyznaczyć ogólnÄ… zależność na stopieÅ„ kompresji · dla parametru k ( k d" M2) przy zastosowaniu kompresji
algebraicznej.
M
" =
N
M
N

ść . .
stopień kompresji: : = =
ść . .
= × =
( )
= " + × " = + "

=
( )
+ "
Uzasadnienie:
Dzielimy duży obraz o wymiarach NxN na małe o wymiarach MxM. Taki mały obraz składa się z M2 próbek. My
przesyłamy takie kwłasnych, aby móc odtworzyć skompresowany obraz.
B. Podać liczbowÄ… wartość · przy nastÄ™pujÄ…cych danych liczbowych: N=64, L=64, M=8 oraz k=18.
64 16
= = =
( ) ( )
+ " 64 + 64 " 18 9
5. Para postaci (v , ) jest parą własną macierzy A, jeżeli spełnione jest równanie Av = v. Sprawdz który z wektorów
(2,0), (0,4) i (2,4) jest wektorem własnym macierzy A postaci: A = 2 0 .
0 4
| |
Wyliczenie wartoÅ›ci wÅ‚asnych: A -  ™ = 0
2 0 - 1 0 = 0
0 4 0 1
2 - 0 = 0
0 4 -
( - (4 - ) = 0
)
2
= 2

= 4  wartości własne

Wyliczenie wektorów wÅ‚asnych: ( - ™) " = 0


1) 2 0 - 2 0 " = 0
0 4 0 2

`" 0
0 0 " = 0 Ô!
= 0, czyli: = 2
0 2 0


2 2 0 - 4 0 " = 0
0 4 0 4

= 0
-2 0 " = 0 Ô!
`" 0, czyli: = 0
0 0 4

Odpowiedz: Wektory q1 i q2 są wektorami własnymi, a q3 nie.
6. Zmienić organizację macierzy Q w taki sposób, aby podana poniżej macierzy wyboru Zp zapewniała minimalizację
błędu średniokwadratowego:
1 1 1 5 0 0 1 0 0
A. Q = ; › = ; Z = .
1 1 -1 0 2 0 0 0 0
-1 2 0 0 0 1 0 0 1
Należy tak przeorganizować macierz Q, aby współczynniki  (wartości własne) rosły wraz ze wzrostem kolumny w
macierzy Q, czyli: 3, 2, 1, bo 1 > 2 > 3.
1 1 1
.
Przestawiamy kolumny: Q = -1 1 1
0 2 -1
1 1 1 1 0 0 1 0 0
B. Q = ; › = ; Z = .
1 1 -1 0 3 0 0 1 0
-1 2 0 0 0 2 0 0 0
Uwaga: Sposób reorganizacji macierzy Q należy krótko uzasadnić.
Należy tak przeorganizować macierz Q, aby współczynniki  (wartości własne) rosły wraz ze wzrostem kolumny w
macierzy Q, czyli: 1, 3, 2, bo 2 > 3 > 1.
1 1 1
.
Przestawiamy kolumny: Q = -1 1
1
-1 0 2
1 0 0
Macierz Z = odcina najmniejszą wartość własną. Dekorelacja tak otrzymanego sygnału jest& eee&
0 1 0
0 0 0
CoÅ› tu nie gra. ProszÄ™ o weryfikacjÄ™.
7. Dany jest obraz O wymiaru 64x64, który dzielimy na L podobrazów wymiaru 8x8. Wyznaczyć stopień kompresji
dla przypadku:
a. kompresji algebraicznej dla wartości parametru k=25,
64
= 64, = 8, = 25, = = 64,
8
" 64 " 64 64 32
= = = = = 1,28
" ( + " ) 25 " (64 + 8 " 8) 50 25
b. kompresji w oparciu o DCT (Dyskretnej Transformacji Kosinusowej) dla parametru p=5 (zostawiamy
macierz wymiaru pxp).
64 64
= = = = 2,56
" 64 " 5 25
Kwantyzacja wektorowa
1. Narysować schemat ogólny i krótko opisać kompresję (koncepcję transmisji) opartą o kwantyzację wektorową.
Przy opisie bloku decyzyjnego proszę podać kryterium optymalizacji realizowane przez ten blok.
przyporzÄ…dkowanie xi
odtwarzanie
odpowiedniego
WEKTORYZACJA wektora rozgrupowanie
S(n) xi wektora wzorcowego
decyzyjnego
indeksacja
danego wektora
zbiór wektorów zbiór wektorów
decyzyjnych decyzyjnych
muszą być
takie same
·ð Próbki wejÅ›ciowe grupowane sÄ… w wektory w zależnoÅ›ci od czasu obszarów decyzyjnych umieszczane sÄ… w
obszarze w którym:
d (xk , ri ) < d ( xk , rj )
i`"j , 1 d" k d" N , 1 d" i , j d" L
·ð WysyÅ‚a siÄ™ indeks wybranego wektora a w odbiorniku odtwarza siÄ™ wektor na podstawie repliki książki
kodowej z nadajnika. Rozgrupowanie wektora decyzyjnego na ciąg 0 i 1. Zbiory wektorów decyzyjnych po
stronie nadawczej i odbiorczej muszą być takie same.
2. Wyznaczyć zależność opisującą całkowitą liczbę wektorów w binarnym drzewie decyzyjnym, które posiada L
wektorów decyzyjnych.
·ð 1 poziom => ilość wektorów a1=21
·ð 2 poziom => a2=22= a1"2
·ð n-ty poziom => an=2N=L= a1"2N-1
Suma wszystkich wektorów w drzewie decyzyjnym wynosi:

= = 2 + 2 + ï" + 2

1 -
= " = 2, = 2
1 -
1 - 2 1 - 2
= 2 " = 2 " = 2(L - 1)
1 - 2 -1
= 2(L - 1)
Policzyć dla L=2048.
( ) ( )
= 2 L - 1 = 2 2048 - 1 = 4094
3. Przy założeniu, że wektory wejściowe kwantyzera wektorowego składają się z 6 liczb, z których 2 pierwsze są
zapisane na 4 bitach każda, dwie kolejne  na 6 bitach każda z nich a dwie ostatnie na 10 bitach każda, wyznaczyć
stopień kompresji dla L=2048. (uwaga: L jest liczbą wektorów decyzyjnych, nie należy ją mylić z całkowitą liczbą
wektorów w drzewie decyzyjnym)
2 " 4 + 2 " 6 + 2 " 10 40
= =
log 2048 11
4. Dla przypadku, w którym wektory wejściowe składają się z 5 liczb, z których każda jest zapisana na 6 bitach a
stopieÅ„ kompresji ·=3 wyznaczyć caÅ‚kowitÄ… (!!!) liczbÄ™ wektorów decyzyjnych.
5 " 6
= = 3
log
30
= 3
log
log = 10
= 1024
( ) ( )
= 2 - 1 = 2 1024 - 1 = 2046
5. Wyznaczyć stopieÅ„ kompresji · dla przypadku, w którym wektory wejÅ›ciowe skÅ‚adajÄ… siÄ™ z:
- 4 liczb zapisanych na 12 bitach a liczba wektorów wzorcowych wynosi 128.
4 " 12 48
= =
log 128 7
- 4 liczb zapisanych na 10 bitach a liczba wektorów wzorcowych wynosi 1024.
4 " 10 40
= = = 4
log 1024 10
- 6 liczb zapisanych na 12 bitach a całkowita liczba wektorów w drzewie decyzyjnym wynosi 510.
Sn = 2(L-1) = 510
255 = L-1
L=256
6 " 12 72
= = = 9
log 256 8
6. Wyznaczyć wartość środka centroidu dla następujących wektorów treningowych należących do tej samej klasy:
1 2 3 2
A. a = ; a = ; a = ; a = .
2 3 1 2
3 1 2 2
M = 4 (ilość wektorów),

2
1 1 1
[ ]
 = = 1 + 2 + 3 + 2 2 + 3 + 1 + 2 3 + 1 + 2 + 2 = [8 8 8] =
2
4 4
2
]
B. a = [ ] [-1 ; a = [ ]
1 2 3 ; a = -2 -3 3 3 3 ;
M = 3,
1

" [ ]
 = = 1 - 1 + 3 2 - 2 + 3 3 - 3 + 3 = [3 3 3] =
1


1
Kodek ADPCM
1. Narysować schemat ogólny/pełny kodera i dekodera ADPCM z wyszczególnieniem bloku filtracji adaptacyjnej.
2. Proszę podać formuły matematyczne dla układu filtracji, które zapewniają własności adaptacyjne układu
kodowania. Opisać zmienne występujące w podanych zależnościach.
3. Przy założeniu, że filtr jest złożony tylko z dwóch parametrów: a1(n) i a2(n), proszę podać formuły matematyczne
dla algorytmu Leaky-LMS, które zapewniają jego adaptacyjne własności.
( )
- 1
( + 1) ( )
= [ ]
1 + + "
( ) ( )
( + 1) ( ) - 2
4. Jakie sÄ… cele filtracji adaptacyjnej w koderze ADPCM.
Układ ADPCM nie kumuluje błędów transmisji a wręcz przeciwnie  eliminuje je. Warunek odporności na błędy:
| - < 1
|
1
0 < < 2
Adaptacyjna Modulacja Delta
1. Narysować i opisać schemat Adaptacyjnej Modulacji Delta (nie pomylić z modulacją Delta!!)
????? ?????
2. Podać formułę matematyczną, która zapewnia własności adaptacyjne takiego układu kodowania.
Krok zmienia się wraz ze wzrostem numeru próbki
( )
" = "(n - 1) " k ( ) ( ) (*)
Porównujemy próbkę s(n) ze skwantowaną poprzednią próbką %5ń(n-1) i liczymy błąd e(n) = s(n) - %5ń(n-1)
1 ( ) e" 0

( )
Według tego ustalamy wartość: e =
-1 ( ) < 0
Adaptacja polega na tym, że jeśli signum z 2 kolejnych błędów jest takie same (ewy(n) = 1 i ewy(n-1) = 1 lub ewy(n) =- 1 i
ewy(n-1) = -1) to następuje decyzja o zwiększeniu skoku według zależności (*)
3. Jaką istotną wadę posiada układ Adaptacyjnej Modulacji Delta w stosunku do układu kodowania ADPCM.
Brak odporności na błędy transmisji.
Inne
1. Znalezć formuÅ‚Ä™ opisujÄ…cÄ… stopieÅ„ kompresji · dla poniższego ukÅ‚adu kompresji:
BLOK BLOK
I II
WE (axa) D (bxb) WY(cxc)
Opis działania układu:
BLOK I: Sygnał wejściowy WE jest ciągiem ramek danych w postaci macierzy wymiaru a x a, natomiast sygnał
wyjściowy D z bloku BLOK I jest uformowany do postaci sekwencji ramek wymiaru b x b (a d" b).
BLOK II: Sygnał wejściowy D jest uformowany z ramek wymiaru b x b a sygnał wyjściowy WY z bloku BLOK II jest
sekwencjÄ… macierzy wymiaru c x c (a d" b d" c).
Przypominam, że stopieÅ„ · kompresji jest definiowany w nastÄ™pujÄ…cej postaci:
ść ś ł
=
ść ś ł

= , = , = " =

2. Znalezć formuÅ‚Ä™ opisujÄ…cÄ… stopieÅ„ kompresji · dla poniższego ukÅ‚adu kompresji:
BLOK
BLOK BLOK
III
I II
WE (bxb)
WE (axa) WE (bxa)
WY (cxb)
WY (bxa) WY (bxb)
"
= , = , = , = " " =
" " "
NMSE, SNR
1. Wyznaczyć wartość błędu rekonstrukcji E, znormalizowanego błędu średniokwadratowego NMSE oraz stosunek
sygnał/szum SNR dla obrazu O wymiaru 3x3 i następujących danych:
O  obraz oryginalny, R  obraz po rekonstrukcji
1 4 0 2 3 0
O = ; R = .
3 2 0 2 1 0
0 0 3 0 0 2
-1 1 0
Macierz błędu: E = O - R =
1 1 0
0 0 1
-1 1 0 -1 1 0 2 0 0
{ }
Energia błędu: T E " E = T = T = 2 + 2 + 1 = 5
1 1 0 1 1 0 0 2 0
0 0 1 0 0 1 0 0 1
1 4 0 1 3 0 17 11 0
{ }
Energia obrazu oryginalnego: T O " O = T = T = T { }
3 2 0 4 2 0 11 13 0
0 0 3 0 0 3 0 0 9
| |
WartoÅ›ci wÅ‚asne macierzy A: A -  ™ = O
17 11 0 1 0 0
=
11 13 0 -
0 1 0
0 0 9 0 0 1
17 - 11 0
=
11 13 - 0
0 0 9 -
( - 13 - 9 - + 0 + 0 - 0 - 0 - ( - " 11 " 11 =
)( )( ) )
17 9
( - 13 - 9 - - 121(9 - ) =
)( )( )
17
( - 17 - 13 - - 121 =
)[( )( ) ]
9
[ ]
(9 - ) 221 - 17 - 13 + - 121 =
( )
(9 - ) - 30 + 100 =
"= 900 - 4 " 9 = 900 - 36 = 864
30 Ä… 864
"
, = , = 9
2

30 864 30 864
" "
{ }
T O " O = = + + = - + + + 9 = 39
2 2 2 2

{ }
T E " E 5
NMSE = = = 0,13
{ }
T O " O 39
1 39
( )
SNR = 10 log = 10 log = 10 log 7,8 = 8,92
NMSE 5
2. Obraz oryginalny (sygnał wejściowy) do pewnego układu kompresji jest dany w postaci macierzy O natomiast
obraz po rekonstrukcji (kompresji i dekompresji) przybiera postać daną macierzą B. Wyznaczyć błąd rekonstrukcji E
oraz znormalizowany błąd średniokwadratowy NMSE dla poniższych wartości macierzy O i B:
O = 1 2 ; B = 0 1 .
2 3 3 2
Wskazówka (przypomnienie): NMSE jest definiowane jako iloraz energii błędu rekonstrukcji do sygnału oryginalnego.
1 1
Macierz błędu: E = O - B =
-1 1
1 1 1 -1 = T 2 0 = 2 + 2 = 4
{ }
Energia błędu: T E " E = T
-1 1 1 1 0 2
{ } { }
Energia obrazu oryginalnego: T O " O = T 1 2 1 2 = T 5 8 = T
2 3 2 3 8 13
2 " 2 + 3 " 3 = 4 " 9 = 13
| |
WartoÅ›ci wÅ‚asne macierzy A: A -  ™ = O
5 8 - 1 0 =
8 13 0 1
5 - 8 =
8 13 -
( - 13 - - 64 =
)( )
5
65 - 5 - 13 + - 64 =
- 18 + 1 =
"= 18 - 4 = 320 = 20 " 16
18 Ä… 4"5
, = = 9 Ä… 4"5 H" 9 Ä… 8,8 = 0,2 ; 17,8
2

{ }
T O " O = = + = 0,2 + 17,8 = 18

{ }
T E " E 4 2
NMSE = = = = 0,22
{ }
T O " O 18 9
1 9
SNR = 10 log = 10 log = 16,53
NMSE 2


Wyszukiwarka