Przetwarzanie i transmisja danych multimedialnych Wykład 6 Metody predykcyjne Przemysław Sękalski sekalski@dmcs.pl Politechnika Łódzka Katedra Mikroelektroniki i Technik Informatycznych DMCS Wykład opracowano na podstawie materiałów udostępnionych przez dr hab. A. Przelaskowskiego Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 1
Idea metod predykcyjnych Plan wykładu Modulacja delta Dynamiczna modulacja delta Liniowa predykcja (Differential Pulse Code Modulation) Konteksty, skanowanie Omówienie współczesnych metod predykcji Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 2
Idea metod predykcyjnych Do tej pory przedstawione były metody kodowania entropijnego i słownikowego zmiana sposobu reprezentacji informacji MoŜliwe jest zwiększenie efektywności poprzez wykorzystanie lokalnych i globalnych zaleŝności (korelacji). Modelowanie umoŝliwia przekształcenie ciągu wejściowego do reprezentacji pośredniej bardziej podatnej na kodowanie słownikowe i entropijne Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 3
Paradygmat kompresji - przypomnienie Uaktualnianie modelu Modelowanie Modelowanie Wiadomość wejściowa Kodowanie Wiadomość zakodowana Dekodowanie Wiadomość wyjściowa Współczesny paradygmat kompresji Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 4
Modulacja delta Bazuje na kodowaniu róŝnicy wartości bieŝącej próbki x n oraz odtworzoną wartością poprzedniej próbki x n e = x xˆ n n n RóŜnica zostaje kwantowana zgodnie z równaniem: eˆ sign( e ) n n = n = n i przesłana do odbiorcy! Otrzymana wartość po stronie odbiorcy jest odtwarzana jako: 1 1 jesli e > 0 n n 1 n 1 jesli e 0 xˆ = xˆ + eˆ Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 5
Przykład Przykładowy ciąg wejściowy: {3, 7, 10, 17, 22, 30, 40, 50, 49, 44, 48, 50, 49, 48, 45, 40, 38, 38, 43, 44, 48, 47, 48, 47, 48, 45, 40, 30, 20, 12, 8} Stała delta równa 5 ZałoŜenie poprzedni symbol = 3 Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 6
Modulacja delta = 5 60 50 40 30 20 10 5 dane wejściowe 0 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 7
PrzeciąŜenie zbocza = 5 60 50 PrzeciąŜenie zbocza 40 30 20 10 5 dane wejściowe 0 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 8
Granulacja = 5, = 10 60 50 40 30 Granulacja 20 5 10 10 dane wejściowe 0 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31-10 Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 9
Problemy Zwiększenie delty powoduje zmniejszenie przeciąŝenia zbocza w przypadku zmiany próbek wejściowych Zmniejszenie delty powoduje zmniejszenie granulacji w przypadku zbliŝonych lub stałych próbek wejściowych Wymagania redukujące przeciąŝenie oraz granulacje są wzajemnie sprzeczne a moŝe regulować deltę w zaleŝności od poprzednich próbek Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 10
Dynamiczna modulacja delta Bazuje na kodowaniu róŝnicy wartości bieŝącej próbki x n oraz odtworzoną wartością poprzedniej próbki x n eˆ ( ) ( ˆ n = sign en = sign xn xn 1) RóŜnica zostaje kwantowana zgodnie z równaniem: min jesli 0< n-1 < min n = min jesli 0> n-1 > min 1 ˆ ˆ n 1 en + 2 en 1 w pozostaych przypadkach Otrzymana wartość po stronie odbiorcy jest odtwarzana jako: xˆ = xˆ + eˆ n n 1 n Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 11
Dynamiczna modulacja delta 70 60 50 40 30 20 10 dyn 10 dane wejściowe 0 1 3 5 7 9-10 11 13 15 17 19 21 23 25 27 29 31 Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 12
Jak porównać, która modulacja jest lepsza??? Kumulatywny błąd predykcji: n E = x ˆ i x i= 1 i E MD =5 = 211 E MD =10 = 203 E MDD 0 = 5 = 234!! chociaŝ wizualnie lepiej odpowiada Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 13
MoŜliwe jest wprowadzenie innych zaleŝności delty, MoŜliwe jest wprowadzenie szerszego kontekstu (uzaleŝnienie od większej liczby poprzedzających próbek), tzw. adaptacja wstecz MoŜliwe jest wprowadzenie zaleŝności od następnych próbek (niezbędny jest bufor kodowanie/dekodowanie opóźnione), tzw. adaptacja w przód Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 14
Metoda DPCM Metoda róźnicowej modulacji kodowo-impulsowej DPCM (differential pulse code modulation) Przewidywana wartość próbki zaleŝy od kombinacji liniowej N poprzedników: xˆ α xˆ n i n i i= 1 gdzie α i to współczynniki predykcji N = Błąd predykcji oznaczany jest jako: eˆ = Q( x xˆ ) n n n gdzie Q() jest funkcją kwantyzująca (np. zaokrąglającą wynik do liczby całkowitej) Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 15
Modelowanie - Nadawanie Wiadomość wejściowa + - e n Kwantyzator z -1 eˆn Kodowanie k e Wiadomość zakodowana α 1 α 2 z -1 z -1 ZaleŜne od N rzędu predyktora DPCM Predyktor liniowy z -1 α N Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 16
Odbieranie Wiadomość zakodowana k e Dekodowanie + Wiadomość wyjściowa + z -1 xˆn α 1 Predyktor liniowy α 2 z -1 z -1 ZaleŜne od N rzędu predyktora DPCM z -1 α N Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 17
Problem z DPCM Jak wyznaczyć optymalne wartości α 1 α N??? Na przykład korzystając z metody najmniejszych kwadratów t t t N 2 ˆ 2 2 σ = e = ( x x ) = x α x n n n n z i z i= 1 i= 1 i= 1 z= 1 ˆ 2 naleŝy minimalizować σ Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 18
Aby to zrobić naleŝy wyznaczyć pochodne cząstkowe po wszystkich współczynnikach α i i przyrównać je do zera: = 2 = 0 2 t N σ x ˆ i 1 xi α z xi z α i i= 1 z= 1 Przy czym: x α xˆ = x x t N t ( ) i 1 z i z i i 1 i= 1 z= 1 i= 1 W efekcie naleŝy rozwiązać układ N równań (zwane równaniami normalnymi, Wienera-Hopfa, Yule a-walkera) Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 19
Metoda najmniejszych kwadratów nie uwzględnia entropii Z doświadczeń wynika, Ŝe lepiej stosować kilka modeli uprzednio zdefiniowanych i umiejętnie je przełączać (najlepiej jeśli są to modele liniowe) Aby zwiększyć efektywność moŝna dzielić sygnał na bloki zbliŝone wyglądem do siebie (np. kodując sygnał dźwiękowy następujące po sobie frazy mają podobny charakter) MoŜna dynamicznie zmieniać współczynniki predykcji w zaleŝności od kontekstu (dynamiczny DPCM) Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 20
Dynamiczny DPCM MoŜliwość zmieniania współczynników DPCM MoŜliwość zmieniania poziomów kwantyzacji MoŜliwość zmieniania obu parametrów Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 21
Metoda najszybszego spadku (gradient search method) e 2 eˆ 2 = n 1 n 1 1, n 1, n 1 1, n 1 α 1 1 α α β α β α gdzie β jest współczynnikiem gradientu Funkcje gradientu moŝna określić z metody LMS e 2 n α 1 ( ) = 2 x α xˆ xˆ = 2e xˆ n 1 n 1 n 1 n n 1 = + 2 e x ˆ + 2 e ˆ x ˆ α α β α β 1, n 1, n 1 n 1 n 2 1, n 1 n 1 n 2 Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 22
Odpowiednio dobierając współczynnik β moŝliwe jest poprawienie efektywności metody DPCM Źródło: dr hab. A. Przelaskowski Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 23
Modele kontekstów obrazów Źródło: dr hab. A. Przelaskowski Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 24
RóŜne rodzaje skanowania Źródło: dr hab. A. Przelaskowski Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 25
RóŜne rodzaje predyktorów (przykłady): Standard JPEG (bezstratny) Standard PNG MED/MAP z gradientem GAP CALIC MoŜliwość stosowania interpolacji i przeplotu JBIG (obrazy cz-b) Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 26
JPEG bezstratny c b a x Numer predyktora Sposób predykcji 1 a 2 b 3 c 4 a+b-c 5 a+(b-c)/2 6 b+(a-c)/2 7 (a+b)/2 http://www.multimedia.edu.pl/invocom/multimediapl/mm_6_9.htm (wymagany IE) Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 27
Więcej informacji: Źródła elektroniczne oraz pozycje literaturowe Przemysław Sękalski, Przetwarzanie i transmisja danych multimedialnych, wykład 6, 2006 28