Rozdział Propagacja samopodobieństwa w torze transmisji obrazu Zbigniew OMIOTEK Wyższa Szkoła Zarządzania i Administracji w Zamościu, Katedra Informatyki i Inżynierii Wiedzy zomiotek@wszia.edu.pl Franciszek GRABOWSKI Politechnika Rzeszowska, Zakład Systemów Rozproszonych fgrab@prz.rzeszow.pl Streszczenie Samopodobieństwo obserwowane w strumieniach obrazu przesyłanego przez Internet ma duży wpływ na jakość usługi. W rozdziale przeanalizowano wybrane stopnie toru strumieniowej transmisji obrazu pod kątem generowania i propagacji samopodobieństwa. Zaprezentowano wyniki badań kodera dla różnych algorytmów kompresji (stratnych i bezstratnych) oraz dwóch rodzajów nieskompresowanego obrazu źródłowego sekwencji wideo i sekwencji losowej. Przedstawiono również wyniki badań modułów podziału na pakiety i formowania strumienia dla różnych protokołów transportowych. 1. Wprowadzenie Samopodobieństwo jest naturalną cechą większości obrazów występujących w otoczeniu człowieka. Wyraża się ono w tym, iż obraz składa się z kopii (odpowiednio przekształconych) części samego siebie. Obecność wspomnianej cechy w obrazach potwierdzają wyniki badań dostępne w literaturze oraz wyniki badań własnych autorów [1, 2], w których metodą analizy fraktalnej zbadano szereg obrazów występujących w naturze, obrazów stanowiących wynik działalności człowieka oraz przykładowych tekstur [3, 4]. Samopodobieństwo obserwowane w strumieniach obrazu przesyłanego przez Internet ma duży wpływ na jakość usługi.
2 Z. Omiotek, F. Grabowski Dlatego istotna jest wiedza o wpływie poszczególnych stopni toru transmisji na przesyłany sygnał. W dalszej części rozdziału dokonano analizy pracy źródła emitującego sygnał do sieci, pod kątem generowania i propagacji samopodobieństwa. Zaprezentowano wyniki badań kodera dla różnych algorytmów kompresji (stratnych i bezstratnych) oraz dwóch rodzajów nieskompresowanego obrazu źródłowego sekwencji wideo i sekwencji losowej. Przedstawiono również wyniki badań modułów podziału na pakiety i formowania strumienia dla różnych protokołów transportowych. 2. Kompresja obrazu Strumień nieskompresowanych obrazów źródłowych, posiadających cechę samopodobieństwa przestrzennego, jest w koderze poddawany kompresji w celu ograniczenia ilości zawartej w nim informacji. Wynikiem kompresji jest zakodowana sekwencja wizyjna, będąca w istocie strukturą hierarchiczną (rys. 1). Poszczególne warstwy tej struktury (na przykładzie standardu MPEG) są następujące: sekwencja składa się z ciągu grup obrazów, grupa obrazów (GOP) zawiera pewną liczbę obrazów zaczynających się obrazem typu I. Grupa obrazów jest najmniejszym fragmentem sekwencji, który może być jednoznacznie zdekodowany, obraz zawiera pojedynczy obraz (ramkę) składający się z pewnej liczby plastrów, plaster zawiera grupę makrobloków odpowiadających pojedynczemu wierszowi obrazu. Makrobloki rozmieszczone są w plastrze w porządku wybierania obrazu od lewej do prawej strony oraz od góry do dołu ekranu, makroblok składa się z tablicy luminancji (Y) o wymiarach 16 16 pikseli oraz dwóch tablic chrominancji C b i C r o wymiarach 8 8 pikseli każda. Tablica luminancji składa się z 4 bloków o wymiarach 8 8 pikseli, blok najmniejszy fragment zakodowanej sekwencji o rozmiarach 8 8 pikseli (element makrobloku); występują bloki typu Y, C b lub C r, piksel elementarna jednostka obrazu. Sekwencja grup obrazów tworzy strumień elementarny składający się z ramek o różnej wielkości. W powyższej strukturze, samopodobieństwo przestrzenne jest przenoszone od poziomu pojedynczych pikseli do poziomu strumienia ramek, gdzie przyjmuje postać samopodobieństwa w czasie. Towarzyszy temu zmienna wielkość ramek w strumieniu. 3. Badanie kodera W pierwszym etapie eksperymentu zbadano sygnał na wyjściu kodera (rys. 2). Podczas badań zastosowano różne algorytmy kompresji (stratne i bezstratne) oraz dwa rodzaje nieskompresowanego obrazu źródłowego sekwencję wideo i sekwencję losową.
Propagacja samopodobieństwa w torze transmisji obrazu 3 Sekwencja Grupa obrazów Obraz Plaster Y C b C r Makroblok Blok Piksel Rys. 1. Budowa hierarchiczna zakodowanej sekwencji wizyjnej W przypadku sekwencji wideo (fragment filmu), kolejne klatki zawierały cechę samopodobieństwa przestrzennego. Obecność tej cechy dla większości obrazów naturalnych potwierdziły wyniki badań zaprezentowane w [1, 2]. Z kolei, w przypadku obrazu generowanego losowo cecha samopodobieństwa nie występuje. Zmierzone na wyjściu kodera wielkości kolejnych ramek tworzyły szereg czasowy, który następnie został poddany analizie statystycznej. Wyniki badań, zaprezentowane w tab. 1 i 2 oraz na rys. 3 i 4, dowodzą, iż w przypadku, gdy obraz wejściowy zawiera cechę samopodobieństwa (sekwencja wideo), skompresowany strumień ramek obserwowany na wyjściu kodera również zawiera tę cechę. Taka sytuacja występuje niezależnie od rodzaju algorytmu zarówno dla algorytmów stratnych i bezstratnych. Natomiast w przypadku sekwencji losowej cecha samopodobieństwa w skompresowanym strumieniu ramek nie została
4 Z. Omiotek, F. Grabowski zaobserwowana. Wskazuje to na fakt, iż koder, bez względu na rodzaj algorytmu kompresji, nie jest źródłem samopodobieństwa obserwowanego w ruchu pakietów, a jedynie propaguje tę cechę, wnoszoną razem z sygnałem wejściowym. Nieskompresowany strumień ramek Skompresowany strumień ramek Skompresowany strumień pakietów Źródło sygnału Algorytm kompresji Podział na pakiety i formowanie strumienia Informacja zawarta w obrazie moduluje wielkość kolejnych ramek Wielkość ramek moduluje częstotliwość pakietów w strumieniu Lp. Rys. 2. Model poglądowy źródła sygnału Tabela 1. Poziom samopodobieństwa strumienia ramek sekwencji wideo i sekwencji losowej dla algorytmów bezstratnych Algorytm kompresji Kodek Wideo Losowa 1 MSU MSU Lossless 0,560 0,171 2 Lempel-Ziv-Welch Gabest GLZW 0,546 0,166 3 PNG CorePNG Lossless 0,521 0,277 4 CamStudio CamStudio Lossless 0,503 0,479 1 0,9 0,8 0,7 0,6 0,5 0,4 0,3 0,2 0,1 0 Sekwencja wideo Sekwencja losowa MSU LZW Kodek PNG CamStudio Rys. 3. Porównanie samopodobieństwa strumienia ramek sekwencji wideo i sekwencji losowej dla algorytmów bezstratnych
Propagacja samopodobieństwa w torze transmisji obrazu 5 Tabela 2. Poziom samopodobieństwa strumienia ramek sekwencji wideo i sekwencji losowej dla algorytmów stratnych Lp. Algorytm kompresji Kodek Wideo Losowa 1 MPEG-4 Koepi s XviD Video 0,908 0,154 2 MPEG-4 DivX 6.0 0,867 0,395 3 MPEG-4 Microsoft MPEG-4 Video v3 0,634 0,051 4 WMV 9 Microsoft Windows Media Video 0,544 0,143 5 MPEG-4 DivX Pro v5.2 0,543 0,138 6 VP6 On2 Technologies VP6 0,542 0,051 7 Wavelet Rududu 0,541 0,140 8 MPEG-4 3ivx D4 0,539 0,154 9 Wavelet Pegasus PICVideo Wavelet2000 0,525 0,137 10 Indeo Indeo Video 5.10 0,502 0,150 11 MPEG-2 Etymonix MPEG-2 I-Frame Video 0,493 0,134 12 Motion JPEG Pegasus PICVideo MJPEG Video 0,492 0,141 1 0,9 0,8 Sekwencja wideo Sekwencja losowa 0,7 0,6 0,5 0,4 0,3 0,2 0,1 0 XviD DivX 6.0 MPEG-4 WMV9 DivX 5.2 VP6 Wavelet Kodek 3ivx Wavelet 2000 Indeo MPEG-2 MJPEG Rys. 4. Porównanie samopodobieństwa strumienia ramek sekwencji wideo i sekwencji losowej dla algorytmów stratnych
6 Z. Omiotek, F. Grabowski 4. Podział na pakiety i formowanie strumienia W celu transmisji obrazu przez sieci IP, obraz musi zostać najpierw podzielony na pakiety danych. Zgodnie z zasadami formowania pakietów RTP/UDP/IP jedna ramka obrazu może być przetransportowana przez jeden lub większą liczbę pakietów RTP oraz jeden pakiet RTP może przenieść określoną liczbę ramek (zależnie od ich wielkości). Zatem duża ramka jest dzielona na kilka pakietów RTP, a kilka małych ramek może być połączonych w jeden pakiet. Parametr MTU (ang. Maximum Transfer Unit) określa maksymalną wielkość pakietu danych, którą dana sieć może zaakceptować bez dokonywania fragmentacji pakietu. Maksymalna wielkość jednostki transmisji danych dla pakietów protokołu IP wynosi 64 kb, natomiast dla sieci Ethernet domyślna wartość MTU to 1500 bajtów. Wielkości ramek obrazu są przeważnie większe, niż wartość parametru MTU typowych sieci. W takim przypadku w warstwie transportowej następuje podział ramek na strumień pakietów. Na rys. 5 przedstawiono ideę formowania strumienia pakietów z nadchodzących ramek obrazu na przykładzie strumienia MPEG. Rozmiar ramki [kb] 8 6 4 2 Ramka 1 Ramka 2 Ramka 3 MTU = 1,5 kb 40 40 Czas [ms] Rozmiar pakietu [kb] 2 1 MTU = 1,5 kb 20 20 20 20 20 Czas [ms] Pakiety ramki 1 Pakiety ramki 2 Pakiety ramki 3 Rys. 5. Formowanie strumienia pakietów z nadchodzących ramek obrazu Załóżmy, że parametr MTU wynosi 1500 bajtów. Każda ramka w takim strumieniu jest dzielona na pewną liczbę pakietów o wielkości równej MTU dla danej sieci. Na przykład, jeżeli wielkość ramki wynosi 4,7 kb (4813 bajtów), zostaną utworzone 3 pakiety (4813 : 1500 = 3,2). Gdy ramka ma rozmiar 5,65 kb (5786 bajtów), zostaną utworzone 4 pakiety (5786 : 1500 = 3,86). Natomiast ramka o wielkości 2,88 kb (2949 bajtów) zostanie podzielona na 2 pakiety (2949 : 1500 = 1,97). Powyższy przykład został zilustrowany na rys. 5. Czas transmisji pakietów należących do danej ramki jest równomiernie rozłożony w pierwszej połowie okresu powtarzania tej ramki. Okres powtarzania każdej ramki
Propagacja samopodobieństwa w torze transmisji obrazu 7 wynosi 40 ms, ponieważ w analizowanym przykładzie częstotliwość wyświetlania ramek obrazu wynosi 25 ramek na sekundę (standard PAL). Równomierny rozkład w czasie transmisji pakietów pozwala uniknąć przeciążenia buforów węzłów sieci (ruterów) z powodu dużej wielkości ramek MPEG. Wybór do transmisji pierwszej połowy okresu powtarzania ramki obrazu jest podyktowany względami sprzętowymi. Jeżeli rozkład czasu transmisji pakietów byłby zbyt długi, wówczas wystąpiłoby zbyt duże opóźnienie. W przypadku zbyt krótkiego rozkład czasu transmisji pojawiłby się problem przeciążenia buforów w ruterach. Dlatego wybór pierwszej połowy okresu powtarzania ramki jest kompromisem między opóźnieniem, a przeciążeniem. Należy w tym miejscu podkreślić, że metoda formowania pakietów wpływa na strumień transmitowanych danych oraz jego własności statystyczne. Opisana metoda formowania pakietów została zastosowana po raz pierwszy przez L. Breslau [5], a podobne metody zastosowali Garrett i Willinger [6] oraz Krunz i inni [7]. 5. Wpływ samopodobieństwa obrazu na natężenie transmisji danych Przeanalizujmy teraz wpływ źródła sygnału na postać strumienia danych emitowanego do sieci. Na rys. 6 zaprezentowano zależność między natężeniem transmisji obserwowanym w węźle sieci, a intensywnością strumienia pakietów. Jeżeli zmiana akcji w sekwencji wideo jest umiarkowana (początkowy obszar na rysunku oznaczony jako akcja ), odpowiada temu określone natężenie strumienia pakietów i związane z tym natężenie transmisji danych. Zmiana sceny, wynikająca, np. z pojawienia się na planie ruchomego obiektu, powoduje, że zwiększają się różnice pomiędzy kolejnymi ramkami obrazu. Maleje wówczas współczynnik kompresji obrazu i rosną wielkości generowanych ramek wideo. Moduł formowania pakietów generuje pakiety o większej częstotliwości i w efekcie rośnie natężenie transmisji strumienia danych, obserwowane w węźle. Jeżeli obraz staje się statyczny, co może odpowiadać, np. dialogowi między aktorami, różnice między kolejnymi ramkami stają się nieznaczne. Współczynnik kompresji obrazu w takiej sytuacji rośnie, a wielkości ramek obrazu maleją. Maleje również częstotliwość pakietów oraz natężenie transmisji danych. Jeżeli rośnie stopień samopodobieństwa obrazu, wówczas kolejne klatki różnią się nieznacznie, a zapis matematyczny takiej sekwencji, realizowany przez zastosowany algorytm, zapewnia wysoki stopień kompresji. Mamy wówczas do czynienia z sytuacją podobną do dialogu na rys. 6. Jeżeli samopodobieństwo obrazu maleje, mamy do czynienia z sytuacją odwrotną do opisanej wyżej i możemy ją porównać do zmiany sceny na rys. 6. Rośnie wówczas wielkość generowanych ramek oraz częstotliwość generowania pakietów. Gwałtowny wzrost natężenia transmisji danych sprawia, że w węźle sieci obserwowane są wybuchowości. Zatem własność obrazu (cecha samopodobieństwa) zostaje przeniesiona na strumień danych transmitowany w sieci i wpływa na własności statystyczne tego strumienia.
8 Z. Omiotek, F. Grabowski Rozmiar pakietu MTU Czas Natężenie transmisji akcja zmiana sceny dialog Rys. 6. Zależność między obserwowanym natężeniem transmisji, a intensywnością strumienia pakietów Czas 6. Badanie modułów podziału na pakiety i formowania strumienia W celu zbadania wpływu modułów podziału na pakiety i formowania strumienia na własności strumienia obserwowanego w węźle sieci przeprowadzono prosty eksperyment, zgodnie ze schematem przedstawionym na rys. 7. Rys. 7. Schemat sieci do badania modułów podziału na pakiety i formowania strumienia W skład sieci pomiarowej wchodził serwer strumieniowy Windows Media Services, przełącznik sieciowy i klient zainstalowany na stacji roboczej PC1. Podczas pomiarów wykorzystano usługę wideo na żądanie w trybie unicast. Transmisja strumienia odbywała się zgodnie z protokołem mms, a w warstwie transportowej wykorzystane były protokoły UDP i TCP. Podczas pomiarów nie występowały straty pakietów, zatem serwer dla protokołu UDP nie stosował rozrzedzania strumienia, a dla TCP
Propagacja samopodobieństwa w torze transmisji obrazu 9 retransmisji. Pomiar realizowany był na interfejsie serwera strumieniowego za pomocą programowego analizatora pakietów CommView z dokładnością do 1 ms. Mierzonym parametrem była fluktuacja opóźnienia pakietów, czyli różnica czasów emisji do sieci kolejnych pakietów. Większym wartościom mierzonego parametru odpowiadało mniejsze natężenie emisji pakietów i odwrotnie. Odtwarzana sekwencja skompresowana była kodekiem Microsoft Windows Media Video 9 za pomocą oprogramowania Windows Media Encoder Seria 9. Podczas kompresji zastosowano zmienną szybkość transmisji bitów z trybem kodowania w oparciu o jakość. Wykorzystano dwa rodzaje nieskompresowanego obrazu źródłowego sekwencję wideo (fragment filmu) i sekwencję losową. Wyniki pomiarów zostały zaprezentowane w tab. 3 i na rys. 8. Tabela 3. Poziom samopodobieństwa ramek obrazu oraz pakietów UDP i TCP dla kodeka Microsoft Windows Media Video 9 Rodzaj obrazu Ramki obrazu Pakiety UDP Pakiety TCP Obraz wideo 0,544 0,596 0,586 Obraz losowy 0,143 0,446 0,601 1 0,9 0,8 0,7 0,6 0,5 0,4 0,3 0,2 0,1 0 Obraz wideo Obraz losowy Ramki obrazu Pakiety UDP Pakiety TCP Rodzaj danych Rys. 8. Porównanie samopodobieństwa ramek obrazu oraz pakietów UDP i TCP dla kodeka Microsoft Windows Media Video 9 Na wykresach porównano wyniki dla protokołów UDP i TCP oraz dla sekwencji wideo i sekwencji losowej. W przypadku sekwencji wideo (fragment filmu), cecha samopodobieństwa została przeniesiona z poziomu strumienia ramek obrazu do strumienia pakietów transportowych, które obserwujemy w węźle sieci. Pomiary wykazały również, iż poziom samopodobieństwa obserwowanego sygnału nieco wzrósł po przejściu przez moduły podziału na pakiety i formowania strumienia (tab. 3), niezależnie od rodzaju protokołu. Ciekawe wyniki uzyskano w przypadku sekwencji losowej. Okazuje się, iż podział na pakiety i formowanie strumienia ma znaczący wpływ na wartość parametru Hursta dla strumienia emitowanego do sieci. W przypadku protokołu UDP parametr Hursta wzrasta z poziomu 0,143 (dla strumienia ramek) do poziomu 0,446. Dla protokołu TCP parametr Hursta osiąga
10 Z. Omiotek, F. Grabowski poziom 0,601, co wskazuje na pojawienie się cechy samopodobieństwa, której wcześniej w strumieniu nie było. Ten etap badań wykazał, iż moduły podziału na pakiety i formowania strumienia przenoszą obecną w strumieniu cechę samopodobieństwa na wyjście źródła sygnału. Mają też istotny wpływ na własności statystyczne strumienia pakietów emitowanego w sieci. 7. Podsumowanie Przeprowadzone badania wykazały, że koder propaguje samopodobieństwo wnoszone przez obraz źródłowy do dalszych stopni toru transmisji i bez względu na rodzaj zastosowanego algorytmu kompresji, nie jest on źródłem powyższej cechy. Obrazowo można powiedzieć, że samopodobieństwo przestrzenne jest przenoszone od poziomu pojedynczych pikseli obrazu źródłowego do poziomu strumienia ramek na wyjściu kodera. Przyjmuje ono tam postać samopodobieństwa w czasie, czemu towarzyszy zmienna wielkość ramek w strumieniu. Dalsze stopnie toru transmisji, tj. moduły podziału na pakiety i formowania strumienia, przenoszą samopodobieństwo obecne w strumieniu ramek na wyjście źródła sygnału i emitują do sieci strumień pakietów o zmiennej częstotliwości. Wspomniane wyżej stopnie mają pewien wpływ na własności statystyczne strumienia pakietów emitowanego w sieci, ponieważ przy zastosowaniu, np. protokołu TCP, mogą generować samopodobieństwo w strumieniu pakietów. LITERATURA 1. Z. Omiotek, F. Grabowski: Metody badania źródeł informacji. (Referat zgłoszony na XIII konferencję Sieci komputerowe 2006). 2. Wyniki fraktalnej analizy obrazów. http://zo.wszia.edu.pl/badania/analiza_fraktalna.htm 3. The USC-SIPI Image Database. http://sipi.usc.edu/database/ 4. Fractal analysis system. http://cse.naro.affrc.go.jp/sasaki/fractal/fractal-e.html 5. Breslau L.: Example traffic trace for ns. http://www.research.att.com/~breslau/vint/trace.html 6. Garrett M. W., Willinger W.: Analysis, modeling and generation of self-similar VBR video traffic. Proc. Sigcomm '94, Sept. 1994, pp. 269-280. 7. Krunz M., Sass R., Hughes H.: Statistical characteristics and multiplexing of MPEG streams. Proc. of IEEE INFOCOM, 1995, pp. 455-462.