• Nie Znaleziono Wyników

OPTYMALIZACJA METOD BEZSTRATNEJ KOMPRESJI OBRAZU Z WYKORZYSTANIEM STATYCZNEJ PREDYKCJI LINIOWEJ

N/A
N/A
Protected

Academic year: 2021

Share "OPTYMALIZACJA METOD BEZSTRATNEJ KOMPRESJI OBRAZU Z WYKORZYSTANIEM STATYCZNEJ PREDYKCJI LINIOWEJ "

Copied!
6
0
0

Pełen tekst

(1)

2004

Poznańskie Warsztaty Telekomunikacyjne Poznań 9 - 10 grudnia 2004 Grzegorz Ulacha

Politechnika Szczecińska Wydział Informatyki ul. Żołnierska 49 71-210 Szczecin gulacha@wi.ps.pl

OPTYMALIZACJA METOD BEZSTRATNEJ KOMPRESJI OBRAZU Z WYKORZYSTANIEM STATYCZNEJ PREDYKCJI LINIOWEJ

Streszczenie: W referacie zaprezentowano wyniki badań dotyczące podstaw bezstratnej kompresji obrazów. Przed- stawiono analizę podstawowych zasad efektywnego mode- lowania danych pozwalających zmniejszyć średnią liczbę bitów potrzebną do zapisu pojedynczego piksela. Przedsta- wiono algorytmy doboru właściwego sąsiedztwa, rzędu predykcji oraz fazy obrotu dla statycznej predykcji linio- wej oraz nieliniowej.

1. WSTĘP

Uniwersalne metody kompresji korzystają z zestawu takich algorytmów jak kodowanie słownikowe (LZx), kodowanie Huffmana, czy też kodowanie arytmetyczne [1-4]. Dodatkowy wzrost efektywności kompresji jest możliwy dzięki wstępnemu modelowaniu danych.

W przypadku zarówno stratnej jak i bezstratnej kompre- sji wykorzystuje się fakt istnienia zależności między sąsiednimi pikselami obrazu. Bezstratna kompresja cha- rakteryzuje się niewielkim stopniem kompresji (rozu- mianym jako stosunek długości pliku przed kompresją do długości pliku po kompresji) często nie przekraczają- cym 2:1. Do głównych zastosowań kompresji bezstratnej należy kodowanie i archiwizacja obrazów medycznych, gdzie nie można sobie pozwolić na żadne zniekształce- nia obrazu. Zniekształcenia takie są charakterystyczne dla metod kompresji stratnej opartych głównie na trans- formacie DCT, transformacie falkowej, czy kodowaniu wykorzystującym kwantyzację wektorową [1, 4]. Anali- zując metody stosujące transformatę DCT możemy za- uważyć, iż zbiór elementów DC (po kwantyzacji) stano- wi pomniejszoną (przez uśrednienie) kopię obrazu. Na przykład dla obrazu MPEG2 typu I (kodowanego we- wnątrzobrazowo) o rozmiarach 1920×1152 pikseli otrzymujemy macierz elementów DC o wymiarach 240×144. Taki sam rozmiar macierzy uzyskamy dla podobrazu LL po użyciu trzystopniowej transformaty falkowej [1]. Użycie dla takich podobrazów efektywnej bezstratnej metody kompresji może prowadzić do za- uważalnego wzrostu stopnia kompresji dla metod ze stratą jakości.

2. PODSTAWY MODELOWANIA OBRAZÓW W przypadku sygnałów dwuwymiarowych, jakimi są obrazy, możemy zaobserwować podobieństwo sąsied- nich pikseli. Modelowanie danych sprowadza się w takim przypadku do próby usunięcia jak największej ilości informacji wzajemnej między sąsiadującymi ze sobą pikselami. Po etapie modelowania obrazu możemy uznać, iż przekształcony sygnał cyfrowy stanowi (w przybliżeniu) zbiór symboli wzajemnie niezależnych.

Wówczas entropia dla danych tego typu może być wy- znaczona ze wzoru:

(1)

=

= max

min

log2 e

e i

i

i p

p H

Gdzie pi jest prawdopodobieństwem wystąpienia symbolu o wartości i należącym do zbioru symboli o wartościach z przedziału od emin do emax. Entropia informuje nas o minimalnej średniej liczbie bitów potrzebnej do zakodowania jednego piksela obrazu przy użyciu jednej z metod kodowania entropijnego (np. kodu Huffmana, kodu Golomba, czy kodu arytmetycznego) [4-6]. Większość metod bezstratnej kompresji obrazów wyróżnia dwa podstawowe etapy. Pierwszym jest modelowanie, w którym najczęściej stosuje się różne odmiany metod predykcji zarówno liniowej jak i nieliniowej. Drugim etapem jest kodowanie statyczne lub dynamiczne błędów predykcji. Wykorzystuje się najczęściej koder arytmetyczny z podziałem na wiele kontekstów zależnych np. od zbioru sąsiednich błędów predykcji [7]. Podział kontekstowy często pozwala uzyskać średnią bitową L niższą od tej wyznaczonej ze wzoru (1). Wynika to z faktu, iż modelowanie usuwa tylko część informacji wzajemnej, natomiast koder wykorzystuje pozostałe zależności między pikselami przełączając konteksty, które dopasowane są do różnych rozkładów prawdopodobieństwa źródła.

(2)

3. PREDYKCJA LINIOWA

Typowy predyktor liniowy rzędu r jest wartością przewidywaną n-tego piksela na podstawie r sąsiednich (znanych koderowi i dekoderowi) pikseli. Ma on postać:

(2)

=

= r

i

i n i

n a x

x

1

ˆ

gdzie elementy xn-i są wartościami pikseli z najbliższego otoczenia (sąsiedztwa) aktualnie kodowanego piksela xn, natomiast elementy ai to wspóczynniki predykcji [2-4].

Użycie predyktora liniowego polega na kodowaniu tylko błędów predykcji, czyli różnic en między wartością rzeczywistą a przewidywaną (zaokrągloną do najbliższej liczby całkowitej), które najczęściej są niewielkimi wartościami oscylującymi w pobliżu zera.

n n

n x x

e = − ˆ (3) Odtwarzanie sygnału polega na dodaniu do siebie błędu predykcji oraz wartości przewidywanej:

n n

n e x

x = + ˆ (4) Do wyznaczenia współczynników predykcji wyko- rzystujemy najczęściej kryterium minimalizacji błędu średniokwadratowego (MMSE) [2, 4]. Współczynniki można wyznaczyć rozwiązując równanie macierzowe [4]

lub np. przy użyciu algorytmu SVD opisanego szerzej w pracach [8, 9]. Uzyskane wartości błędów predykcji mają znacznie mniejszą od początkowej wartość warian- cji oraz charakteryzują się rozkładem zbliżonym do rozkładu Laplace’a. Te dwie cechy sprawiają, że maleje także wartość entropii. Nie można jednak minimalizacji entropii utożsamiać wyłącznie z minimalizacją błędu średniokwadratowego [10, 11]. Co więcej, nie ma bez- pośredniego przełożenia wartości entropii H na średnią długość słowa kodowego L, gdyż ta wartość zależy też od metody użytej przez koder kompresujący ciąg błędów predykcji.

4. DOBÓR RZĘDU PREDYKCJI

W referacie tym przedstawione zostanie kilka pro- pozycji zmniejszania wyłącznie entropii kodowanych obrazów. Pierwszą z nich jest odpowiedni dobór sąsied- nich pikseli oraz rzędu predykcji. Ze względu na kieru- nek kodowania (koduje się kolejne wiersze od góry do dołu, a każdy z nich od lewej do prawej) zarówno koder jak i dekoder mają dostęp do pikseli powyżej oraz po lewej stronie aktualnie kodowanego (dekodowanego) piksela. Rząd predykcji r, to liczba pikseli z najbliższego sąsiedztwa brana pod uwagę przy wyznaczaniu wartości przewidywanej . Dla obrazów naturalnych wzrost rzędu predykcji teoretycznie oznacza spadek wariancji zakodowanego sygnału, jednak im dalsze sąsiedztwo, tym należy się spodziewać mniejszego poziomu infor- macji wzajemnej. Korzystając z tej zasady możemy dokonać numeracji sąsiadów kodowanego piksela zgod- nie z odległością euklidesową

n

2

) 2

,

(i j i j d = + ich

środków (czasem stosuje się też odległość typu Manhat- tan). Numeracja pikseli o tej samej odległości d jest wyznaczana zgodnie z ruchem wskazówek zegara. Tabe- la 1 przedstawia odległości d dla osiemnastu najbliż- szych pikseli sąsiedztwa, natomiast rysunek 1 obrazuje ich położenie względem xn. Zatem teoretycznie im wyż- szy numer piksela tym mniejsze jego znaczenie dla po- prawy efektywności kodowania. Możemy przyjąć, że korzystając z predyktora rzędu r używamy pikseli o numerach od 1 do r. W tej pracy do badań wykorzystano cztery standardowe obrazy (Lena, Airplane, Woman1, Bridge) o 256 odcieniach szarości (8 bitów na piksel) i rozdzielczości 512×512 pikseli. Analizując rysunek 2 przedstawiający zależność odchylenia standardowego dla obrazu Lena możemy zauważyć wyraźny jej spadek wraz ze wzrostem rzędu predykcji do r = 6 włącznie, natomiast dla kolejnych wartości r spadek jest już bardzo mały. Podobnie zachowuje się entropia (patrz rysunek 3), lecz dla r > 6 jej wartość dla niektórych rzędów na- wet wzrasta. Przykład ten uzasadnia, iż nie w każdej sytuacji spadek wariancji sprzyja zmniejszaniu się war- tości entropii.

Tab. 1 Odległość euklidesowa sąsiednich pikseli

Numer piksela d

1, 2 1

3, 4 2 =1.414

5, 6 2

7, 8, 9, 10 5=2.236 11, 12 8=2.828

13, 14 3

15, 16, 17, 18 10=3.162

16 14 17 11 8 6 9 12 15 7 3 2 4 10 18 13 5 1 xn

Rys. 1 Numeracja pikseli sąsiedztwa

Przy wyznaczaniu współczynników predykcji nale- ży zwrócić uwagę, iż w lewym górnym rogu obrazu nie znamy poprzedników. Dlatego piksel w lewym górnym rogu zapisywany jest w pliku wynikowym bez zmian.

Pozostałe piksele pierwszego wiersza kodowane są róż- nicowo odejmując od aktualnego piksela wartość swego lewego sąsiada, a w przypadku pierwszej kolumny odejmując wartość sąsiada powyżej. Dekoder potrafi zatem zdekodować pierwszy wiersz i pierwszą kolumnę, a następnie skopiować je q razy odpowiednio powyżej i po lewej stronie na zewnątrz obrazu. Wartość q zależy od rzędu predykcji. Te dodatkowe marginesy pozwalają koderowi (dekoderowi) na odczytanie wartości z są- siedztwa, które leży na początku częściowo na zewnątrz obrazu. Np. gdy używane są piksele o numerach 13 i 14 (patrz rysunek 1), to q = 2.

(3)

Rys. 2 Zależność odchylenia standardowego w funkcji rzędu predykcji dla obrazu Lena

Rys. 3 Zależność entropii w funkcji rzędu predykcji dla obrazu Lena Tab. 2 Entropia dla obrazu Lena 512×512

r Faza 0 Faza 1 Faza 2 Faza 3 Faza 4 Faza 5 Faza 6 Faza 7 1 5.04913 4.66244 5.04873 4.66421 5.04924 4.66424 5.04872 4.66242 2 4.54526 4.46593 4.54336 4.46560 4.46560 4.54336 4.46593 4.54526 3 4.51478 4.45955 4.51152 4.46417 4.46417 4.51152 4.45955 4.51478 4 4.43111 4.43845 4.42599 4.44044 4.42839 4.42230 4.42706 4.42362 5 4.42001 4.44300 4.41534 4.44556 4.41661 4.43777 4.41038 4.43708 6 4.39660 4.40032 4.39432 4.40657 4.38139 4.39421 4.37354 4.39538 7 4.40295 4.39478 4.40077 4.40057 4.38509 4.39782 4.37610 4.40091 8 4.40874 4.39279 4.40621 4.40050 4.38030 4.39781 4.37193 4.40107 9 4.38240 4.38687 4.38268 4.39402 4.37404 4.39464 4.36593 4.39771 10 4.37481 4.37446 4.37328 4.38101 4.37344 4.37639 4.36498 4.37982 11 4.37350 4.37260 4.37180 4.37965 4.37220 4.37484 4.36407 4.37802 12 4.37121 4.37032 4.37032 4.37959 4.37261 4.37471 4.36445 4.37815 13 4.37193 4.37728 4.37008 4.38389 4.37384 4.37832 4.36582 4.38199 14 4.37455 4.37795 4.37233 4.38506 4.37693 4.37841 4.36975 4.38253 15 4.37484 4.37793 4.37252 4.38501 4.37702 4.37797 4.36982 4.38211 16 4.37475 4.37801 4.37240 4.38504 4.37667 4.37822 4.36936 4.38220 17 4.37635 4.37808 4.37421 4.38511 4.37719 4.37858 4.36958 4.38258 18 4.37624 4.37612 4.37352 4.38269 4.37657 4.37707 4.36927 4.38101

(4)

Właściwe kodowanie predykcyjne rozpoczyna się od drugiego wiersza i drugiej kolumny.

5. DOBÓR FAZY OBROTU

Aspekt doboru fazy obrotu nie jest poruszany w pu- blikacjach dotyczących predykcyjnego kodowania obra- zu, choć jest on wykorzystywany np. przy stratnym ko- dowaniu obrazu z użyciem metod fraktalnych [12]. Każ- dy prostokątny obraz możemy w sposób bezstratny ob- rócić o n-krotność 90 stopni, gdzie n = {0, 1, 2, 3}, a także dokonać odbicia lustrzanego tego obrazu (zamia- na ostatniego wiersza z pierszym itd.). Połączenie tych dwóch propozycji daje łącznie 8 faz obrotu (bezstratnej transformacji obrazu), czyli odpowiednio po 4 możliwo- ści obrotu bez odbicia lustrzanego i z odbiciem lustrza- nym. Jeśli dla każdej z faz osobno wyznaczymy zestaw współczynników predykcji, to okaże się, iż otrzymamy różne wartości wariancji i entropii. Wyniki badań warto- ści entropii dla obrazu Lena zostały przedstawione w tabeli 2. Najlepszy rezultat H = 4.36407 otrzymano dla 6 fazy obrotu przy r = 11, podczas gdy entropia bez użycia predykcji wyniosła dla tego obrazu 7.44507 bita. Daje to stopień kompresji 1.833 względem obrazu nie poddane- go kodowaniu. Im niższa wartość entropii, tym mniejsze ale wciąż istotne różnice między poszczególnymi faza- mi. Na przykład dla obrazu Lena przy r = 11, różnica wartości entropii między fazą 3 a 6 wynosi 0.01558 bita, co przekłada się na ponad 510 bajtów w skali całego obrazu przy zaledwie trzybitowym koszcie zapisu w nagłówku numeru fazy obrotu. Wyznaczenie najlepszej pary (rząd predykcji, numer fazy) wymaga wykonania aż N = 8⋅(r – 4) = 112 pomiarów, gdy przyjmiemy zakres zmian wartości r z przedziału od 5 do 18. Wyniki testów dla najmniejszych wartości entropii przedstawia tabela 3.

Na uwagę zasługuje obraz Bridge, który został specjalnie spreparowany przez jego autorów do takiej postaci, aby wyższe rzędy predykcji dawały wzrost entropii w po- równaniu z predykcją pierwszego rzędu. Dlatego w tabe- li umieszczono drugi także wynik, w którym brane pod uwagę były predyktory o r ≥ 3.

Tab. 3 Wyniki testów dla najlepszej pary (r, numer fazy)

Nazwa pliku r Numer fazy H [b]

Lena 11 6 4.36407

Airplane 14 1 4.20646 Woman1 10 5 4.92033

Bridge 1 6 5.44892

Bridge (r ≥ 3) 18 4 5.73920

6. DOBÓR WŁAŚCIWEGO SĄSIEDZTWA Kolejną propozycją jest precyzyjniejszy dobór pik- seli biorących udział w wyznaczaniu wartości przewi- dywanej. Jeśli założymy np. stałą wartość r = 8, to mo- żemy zbudować predyktor w oparciu o 6 najbliższych pikseli, ale pozostałe 2 nie muszą mieć numerów 7 i 8, gdyż aż 4 piksele o numerach od 7 do 10 mają tę samą odległość euklidesową (patrz tabela 1). Możemy doko- nać pełnego poszukiwania w celu znalezienia zestawu

najlepszego sąsiedztwa. Na podstawie wyników z tabeli 3 możemy przy dalszych poszukiwaniach ograniczyć maksymalny rząd predykcji do r = 14. Jednocześnie można ustalić, że zawsze używane będą cztery pierwsze piksele. Dla z góry założonej fazy obrotu wyznaczamy wartość entropii wykorzystując zbiór pikseli złożony z numerów Z1 = {1, 2, 3, 4}, który łączymy z każdą kombinacją podzbioru m elementowego ze zbioru Z2 = {5, 6, 7, 8, 9, 10, 11, 12, 13, 14}, gdzie 0 ≤ m ≤ 10.

Oznacza to, że liczba pomiarów zależy wykładniczo od liczby elementów zbioru Z2. Jeśli chcemy wykonać po- miary dla wszystkich ośmiu faz obrotu, to łączna liczba pomiarów N wynosi:

4 1 0

4 2

8

=

=

 

⋅  −

=

r r

i i

N r (5)

Przy r = 14 zachodzi potrzeba wykonania aż 8192 po- miarów. Oznacza to długi czas doboru i ostatecznego kodowania obrazu, ale należy pamiętać o tym, że kodo- wanie odbywa się raz, a dekodowanie obrazu najczęściej wielokrotnie i charakteryzuje się krótkim czasem wyko- nania. Do testów wybrano obraz Airplane, który w tabeli 3 charakteryzował się wysokim rzędem predykcji r = 14.

Tabela 4 zawiera wyniki dla 1 fazy obrotu, dla której znaleziono najlepszy rezultat H = 4.19135 przy r = 11, co oznacza obniżenie wartości entropii (względem tabeli 3) o 0.01511 bita.

Tab. 4 Najlepsze zestawy sąsiednich pikseli w zależno- ści od rzędu predykcji dla 1 fazy obrotu obrazu Airplane

r Numery pikseli

1, 2, 3, 4 oraz H [b] Odchylenie standardowe

5 9 4.21839 6.26400

6 5, 9 4.20002 6.16753

7 5, 9, 14 4.19647 6.08504

8 5, 6, 9, 14 4.19399 6.07480 9 5, 6, 9, 13, 14 4.19157 6.00422 10 5, 6, 9, 10, 13, 14 4.19346 5.99095 11 5, 6, 9, 10, 12, 13, 14 4.19135 5.98838 12 5, 8, 9, 10, 11, 12, 13, 14 4.19732 5.94436 13 5, 6, 8, 9, 10, 11, 12, 13, 14 4.19802 5.93539 14 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 4.20646 5.90842

Można zaproponować znacznie prostszą metodę poszukiwania „dobrego” sąsiedztwa i rzędu predykcji, która wymaga zaledwie 20 testów. Opiera się ona na kilku prostych wnioskach wynikających z wcześniej- szych badań, a także na ocenie wag testowanych pikseli z sąsiedztwa. Wystarczy założyć, że najmniej potrzeb- nym pikselem z sąsiedztwa jest ten, który ma najmniej- szą wartość bezwzględną odpowiadającego mu współ- czynnika predykcji (ma on najmniejszą wagę). Poniżej przedstawiony jest algorytm wyznaczania sąsiedztwa:

1° Spośród ośmiu faz obrotu wyznacz najlepszy ze- staw r = 18 współczynników predykcji odpowiada- jących kolejnym numerom pikseli od 1 do 18.

2° Znajdź minimalną liczbę wśród wartości bez- względnych wyznaczonych współczynników pre-

(5)

dykcji. Następnie usuń z listy numer piksela skoja- rzonego ze znalezionym minimalnym współczyn- nikiem predykcji, co prowadzi do zmniejszenia rzędu predykcji.

3° Dla takiej listy wyznacz ponownie współczynniki predykcji. Zapamiętaj zawartość listy i wartość en- tropii dla każdego etapu. Jeśli rząd predykcji jest większy od 6, to wróć do punktu 2°.

4° Wybierz tę listę numerów pikseli, dla której uzy- skano najniższą entropię.

Tab. 5 Entropia wyznaczana po każdej iteracji usuwa- nia z sąsiedztwa piksela dla 5 fazy obrotu obrazu

Woman1 Usuwany

piksel

Entropia po usunięciu

Odchylenie standardowe

- 4.92448 9.40401

17 4.92444 9.40404 12 4.92438 9.40525

6 4.92359 9.41083

11 4.92271 9.42461

8 4.92258 9.42921

18 4.92276 9.44796 15 4.92376 9.46711

7 4.92386 9.46810

13 4.92359 9.49384

5 4.92028 9.51128

16 4.91790 9.54690 14 4.91537 9.56365

Dla 5 fazy obrotu obrazu Woman1 otrzymano metodą kolejnych eliminacji najmniej znaczących współczynni- ków predykcji sąsiedztwo złożone z r = 6 pikseli o nu- merach {1, 2, 3, 4, 9, 10} uzyskując wartość entropii H = 4.91537. Porównując to z wynikiem z tabeli 3 uzy- skujemy spadek entropii o około 0.005 bita. Nie dla każdego obrazu uzyskamy wynik lepszy niż ten uzyska- ny przy użyciu metody opisanej w punkcie 0, ale jest to dobry kompromis między efektywnością kompresji, a czasem potrzebnym do wyznaczenia współczynników predykcji (tylko 20 zamiast 112 testów).

7. PREDYKCJA NIELINIOWA

Globalny zestaw współczynników predykcji nie może zagwarantować dobrego dopasowania wartości przewidywanych w każdym miejscu obrazu, dotyczy to zwłaszcza elementów krawędziowych. Często propono- wanym rozwiązaniem jest wstępne użycie filtru media- nowego opartego o trzy najbliższe piksele [13]. Dla elementów krawędziowych:

) , min(

dla ) , max(

) , max(

dla ) , ˆ min(

2 1 3

2 1

2 1 3

2 1



= ≥

n n n

n n

n n n

n n

med x x x x x

x x x

x

x x (6)

oraz dla pozostałych przy-

padków. Filtr ten można przedstawić w nieco innej postaci jako:

3 2

ˆmed =xn1+xnxn x

3 3 2 1 3

2

1, , ) max( , , )

ˆmed =min(xn xn xn + xn xn xnxn x

Korzystając z filtru medianowego poszerzamy wzór (3) do postaci:

n med n

n x x x

e = − ˆ − ˆ (7) W tabeli 6 znajdują się wyniki testów dla najmniejszych wartości entropii uzyskanych dla metody opisanej w punkcie 0 z aktywnym filtrem medianowym. Dla obrazu Lena wynik entropii znacznie wzrósł, natomiast średni spadek dla pozostałych trzech obrazów (przy r ≥ 3) wy- niósł 0.01531. Wyznaczając zestaw współczynników predykcji należy filtr medianowy traktować jako opcjo- nalny i w nagłówku pliku dołączać jednobitową infor- mację o ewentualnej aktywacji filtru.

Tab. 6 Wyniki testów dla najlepszej pary (r, numer fazy) z aktywnym filtrem medianowym Nazwa pliku r Numer fazy H [b]

Lena 11 6 4.41205

Airplane 6 1 4.18210 Woman1 18 5 4.90821 Bridge (r ≥ 3) 16 4 5.72975 Inną propozycję predykcji nieliniowej możemy znaleźć w pracy [14]. Do członu liniowego (2) dołącza się sumę iloczynów tworzonych jako podzbiory k ele- mentowe ze zbioru g elementowego (2 ≤ k ≤ g ≤ r). Dla ustalonych parametrów z tabeli 3 nie uzyskano spadku entropii, dlatego autor niniejszego referatu zaproponował zastąpienie iloczynów średnią geometryczną sąsiadów.

Dla przykładowych wartości r = 4, g = 3 predyktor li- niowo-geometryczny przyjmuje postać:

3 1 2 3

123 3 2 23

3 1 13 2 1 12 4

1

ˆ

=

⋅ +

⋅ +

+

⋅ +

⋅ +

=

n n n n

n

n n n

n i

i n i n

x x x a x x a

x x a x x a x a x

Wyznaczenie współczynników predykcji wymaga wprowadzenia tylko niewielkich zmian w układzie rów- nań. Ze wzrostem liczby g zwiększa się wykładniczo liczba współczynników predykcji i wynosi:

1 2

2

− +

=

+

 

=

g r k r

g g

g k

(8)

Na przykład dla r = 14, g = 5 otrzymujemy 40 współ- czynników. Wówczas stosując zapis współczynnika przy użyciu 24 bitów należy do entropii dodać zaledwie 0.000458 bita (dla obrazów o rozmiarze 512×512 pikse- li). Dla parametrów ustalonych w tabeli 3, czyli rzędu predykcji i numeru fazy wyznaczamy entropię po dołą- czeniu dodatkowych nieliniowych składowych predykto- ra przy g = {2, 3, 4} (patrz tabela 7). Największą popra- wę stopnia kompresji uzyskujemy dla obrazu Airplane.

Dla g = 4 średni spadek entropii względem tabeli 3 wy- nosi 0.03081 bita.

(6)

Tab. 7 Wartość entropii dla najlepszej pary (r, numer fazy) z predyktorem liniowo-geometrycznym

Nazwa pliku g = 2 g = 3 g = 4 Lena 4.36302 4.35668 4.34457 Airplane 4.19680 4.14357 4.13870 Woman1 4.91980 4.89298 4.89205 Bridge (r ≥ 3) 5.73962 5.73641 5.73151

8. WNIOSKI

Przedstawione wyniki badań pozwalają wyciągnąć kilka istotnych wniosków niezbędnych dla dalszego projektowania efektywnych metod bezstratnej kompresji obrazu. Nie można utożsamiać minimalizacji błędu średniokwadratowego z minimalizacją entropii ani śred- niej liczby bitów L potrzebnej do zakodowania poje- dynczego piksela. Dążenie do minimalizacji entropii nie jest sprawą prostą i nie można wyznaczyć zasad szyb- kiego doboru np. rzędu predykcji liniowej, gdyż opty- malna wartość r zależy od indywidualnych cech kodo- wanego obrazu. W referacie przedstawiono kilka propo- zycji wzrostu efektywności kompresji, która jest możli- wy kosztem zwiększenia złożoności implementacyjnej kodera. Do propozycji tych należą: połączenie odpo- wiedniego doboru fazy obrotu, rzędu predykcji i właści- wego sąsiedztwa, a także możliwość dodatkowego uży- cia predykcji nieliniowej. Bez zwiększania złożoności implementacyjnej dekodera możliwe jest uzyskanie spadku wartości entropii o ponad 0.02 (np. dla obrazu Airplane). Przy niewielkim wzroście złożoności dekode- ra można zmniejszyć wartość entropii o prawie 0.07 bita dla obrazu Airplane. Przedstawione wyniki stanowią początkową fazę badań autora nad metodami bezstratnej kompresji obrazów. Dlatego też w pracy tej pominięto aspekt efektywnego kodowania ciągu błędów predykcji, który pozwoliłby na uzyskanie większego stopnia kom- presji, niż wynika to z wyznaczonych wartości entropii.

SPIS LITERATURY

1. W. Skarbek i inni Multimedia i standardy kom- presji danych, Akademicka Oficyna Wydawnicza PLJ, Warszawa 1998

2. K. Heim Metody kompresji danych, Wydawnictwo MIKOM, Warszawa 2000

3. A. Drozdek Wprowadzenie do kompresji danych, Wydawnictwa Naukowo-Techniczne, Warszawa 1999

4. K. Sayood Kompresja danych – wprowadzenie, Wydawnictwo RM, Warszawa 2002

5. S. W. Golomb „Run-length encoding”, IEEE Trans. on Information Theory, vol 12, s. 399-401, lipiec 1966

6. N. Merhav, G. Seroussi, M. J. Weinberger „Op- timal prefix codes for sources with two-sided geo- metric distributions”, International Symposium on Information Theory, Ulm, Germany 1997

7. B. Aiazzi, S. Baronti, L. Alparone: „Near lossless image compression by relaxation labeled predic- tion”, Proceedings International Conference on Image Processing, Vancouver 2000

8. W. H. Press, S. A. Teukolsky, W. T. Vellering, B. P. Flannery Numerical Recipes in C, Cam- bridge University Press, Cambridge 2001

9. V. P. Baligar, L. M. Patnaik, G. R. Nagab- hushana: „High compression and low order linear predictor for lossless coding of grayscale images”, Image and Video Computing, no. 21, s. 543-550, 2003

10. M. Kanefsky, C.-B. Fong „Predictive source cod- ing techniques using maximum likelihood predic- tion for compression of digitized images”, IEEE Transactions on Information Theory, vol. 30, no. 5, s. 722-727, wrzesień 1984

11. M. Domański Zaawansowane techniki kompresji obrazów i sekwencji wizyjnych, Wydawnictwo Po- litechniki Poznańskiej, Poznań 2000

12. H.-O. Peitgen, H. Jürgens, D. Saupe Fraktale – granice chaosu, Tom I, Wydawnictwo Naukowe PWN, Warszawa 1995

13. M. Weinberger, G. Seroussi, G. Sapiro „The LOCO-I Lossless Image Compression Algorithm:

Principles and Standardization into JPEG-LS”, Computer Systems Laboratory, HPL-98-193, listo- pad 1998

14. R. Cierniak, L. Rutkowski Nowe metody kompre- sji obrazu – zastosowanie sieci neuronowych, Wy- dawnictwo Gnome, Katowice 2000

Cytaty

Powiązane dokumenty

Omawiana książka składa się z dwóch, mniej w ięcej rów nych objętościowo części. 9— 119) zawiera analizę stosunków społeczno-politycznych okresu archaicznego

Sokołowa, do ży­ cia ludzkiego (także własnego) stał się „przestępczo-lekkomyślny” (określenie ze s. Zdobyte pieniądze zużywano nieraz n a cele pryw atne,

Owe daty uogólnione (częstotliwość w danym roku inicjacji lub wystąpień) sygnalizują zmiany nastrojów oraz postaw światopoglądowych czy poli­ tycznych. Niekiedy

[r]

W skałach towarzyszących węglom kamiennym z KWK Pniówek badanie to pozwoliło oszacować proporcję zawartości spękań w części próbki zbudowanej z substancji mineralnej,

Cele lekcji: Nauczysz się konstruować obrazy w soczewkach i określać ich cechy.. p=

Należy zaimplementować sieć neuronową opisaną powyżej, nauczyć ją na podstawie obrazu, a następnie sprawdzić jak działa jako narzędzie kompresujące i dekompresu- jące..

body-exact calculations for submerged bodies, and linear motion computations were performed for a wall-sided body (a TLP) at zero forward speed on a VAX 8700a..