AGNIESZKA LISOWSKA Efektywne kodowanie obrazów z
Transkrypt
AGNIESZKA LISOWSKA Efektywne kodowanie obrazów z
Systemy wspomagania decyzji Materiały Konferencji Naukowej, Zakopane 8-10 XII 2003 AGNIESZKA LISOWSKA Instytut Matematyki, Uniwersytet Śląski, [email protected] Efektywne kodowanie obrazów z wykorzystaniem falek geometrycznych 1. Wstęp We współczesnym świecie problem kompresji obrazów cyfrowych stanowi jeden z istotniejszych problemów związanych z teorią sygnałów. Mniejsza objętość danych uzyskana w wyniku ich kompresji pozwala nie tylko na zmniejszenie kosztów ich przechowywania, lecz równieŜ skraca czas potrzebny na przesłanie tych danych przez sieć, na przykład Internet czy Intranet. Istnieje wiele metod aproksymacji sygnałów wykorzystywanych w kodowaniu obrazów. Jedna z najstarszych – teoria szeregów Fouriera wprowadzona w 1807 roku przez J. Fouriera [12] pozwala na efektywne przybliŜanie sygnałów za pomocą funkcji sinusoidalnych. Teoria ta pozwala na wykrywanie zmian sygnału w czasie – cechuje się dobrą lokalizacją. Została juŜ dogłębnie dotychczas zbadana i ewentualnie moŜna juŜ tylko szukać nowych dziedzin jej zastosowań. Kolejną teorią, która osiągnęła duŜy sukces z powodu swej duŜej uŜyteczności jest teoria falek, którą zapoczątkował A. Haar w 1910 roku wprowadzając funkcję zwaną później falką Haara [8]. Od tego czasu teoria ta została dobrze poznana i rozwinięta – ewoluowała w wielu róŜnych kierunkach. W wielu zastosowaniach przewyŜsza ona moŜliwości teorii Fouriera gdyŜ pozwala na wychwytywanie zmian w sygnałach nie tylko w czasie, lecz równieŜ w skali [12]. Pozwala to na dokładniejszą analizę sygnału, a co za tym idzie prowadzi do lepszych współczynników kompresji. Teoria falek w przypadku analizy sygnałów jednowymiarowych nie ma sobie równych. Jednak w przypadku obrazów radzi sobie nieco gorzej. PoniewaŜ, o ile charakteryzuje się ona duŜą skutecznością w wychwytywaniu nieciągłości punktowych, to w przypadku nieciągłości liniowych występujących często w obrazach w postaci krawędzi nie spełnia juŜ postawionych wymagań. Wynika to z faktu, Ŝe najczęściej stosowane metody dwuwymiarowe są separowalne – zatem nie potrafią wychwycić geometrycznych cech obrazu. Jako remedium na przedstawiony problem powstała obszerna teoria falek geometrycznych, w szczególności wedgeletów i beamletów. Została ona zapoczątkowana przez D. Donoho w 1999 roku [4]. Okazuje się, Ŝe pozwala ona na dokładniejszą analizę obrazów niŜ w przypadku klasycznych metod falkowych. Wynika to z faktu, iŜ teoria ta umoŜliwia wychwytywanie zmian w obrazie nie tylko w czasie i skali, lecz równieŜ jeszcze w kierunku. Pozwala to na wychwycenie cech geometrycznych obrazu, jakimi są krawędzie. Jest to fakt nie bez znaczenia, poniewaŜ to właśnie krawędzie niosą najwięcej informacji o obrazie [6]. Dotychczasowe uŜycie falek geometrycznych – wedgeletów i beamletów polegało na aproksymowaniu obrazów z uŜyciem prostych krawędzi. W niniejszym artykule zaproponowano wykorzystanie równieŜ innych krzywych, które moŜna opisać za pomocą dodatkowego parametru, co poprawia jakość rekonstruowanego obrazu. Fakt ten został potwierdzony poprzez przeprowadzone badania. 2. Wedgelet, beamlet – falki geometryczne Na teorię falek geometrycznych moŜna popatrzeć jako na pewnego rodzaju uogólnienie klasycznej teorii falek. Związanych z nią jest wiele pojęć, które prowadzą w róŜnych kierunkach. Do najczęściej uŜywanych zalicza się dwie grupy – wedgelets i beamlets [4, 5] oraz curvelets i 186 A. LISOWSKA, Efektywne kodowanie obrazów z wykorzystaniem falek geometrycznych 187 ridgelets [1-3]. Wszystkie te falki prowadzą do nieco innego stylu kodowania obrazów i cechują się róŜnymi zastosowaniami. Jednak, jak pokazują liczne badania [3, 11], wszystkie one pozwalają na bardziej efektywne kodowanie obrazów z punktu widzenia kompresji, niŜ standardowe metody falkowe. Posiadają teŜ większe moŜliwości róŜnych zastosowań [3, 7, 9, 10]. W dalszej części artykułu przedstawione zostaną jedynie falki z pierwszej z wymienionych grup. Ustalmy dowolny binarny obraz o wymiarach N × N , gdzie N=2k, k∈N. Rozpatrzmy dowolny podział czwórkowy (ang. quadtree partition) takiego obrazu. Podziałowi temu odpowiada drzewo czwórkowe, w którego węzłach przedstawiać moŜna poszczególne elementy podziału czwórkowego obrazu. Elementami takiego podziału są kwadraty Si , j o rozmiarach 2 N −i × 2 N −i gdzie i = 0,..., lg N (indeksowanie poziomów drzewa) j = 0,..., 4i − 1 (indeksowanie kwadratów w obrębie poziomu). Ustalmy dowolny kwadrat Si , j z podziału czwórkowego. Beamletem nazywamy niezdegenerowany (tzn. nie leŜący całkowicie na brzegu kwadratu) odcinek b łączący dowolne dwa punkty na brzegu tego kwadratu (patrz Rys.1). Jego połoŜenie określają współrzędne (v1 , v2 ) . Natomiast wedgeletem nazywamy funkcję charakterystyczną obszaru wyznaczonego przez beamlet b daną wzorem 1, dla y ≤ b( x) , w( x, y ) = 0, dla y > b( x) x, y ∈ S . (1) Na Rys. 1 przedstawiono w powiększeniu przykładowy element podziału czwórkowego dowolnego obrazu binarnego prezentujący powyŜsze pojęcia. V1 Beamlet b Wedgelet w V2 Rysunek 1. Graficzna reprezentacja falek beamlet i wedgelet. W praktycznych zastosowaniach stosuje się często nieco inną formę parametryzacji – opartą na biegunowym układzie współrzędnych (patrz Rys. 2). Wtedy zarówno beamlet jak i wedgelet jest jednoznacznie wyznaczony przez kąt θ zawarty między normalną do beamleta a kierunkiem poziomym; oraz odległość r beamleta od środka rozpatrywanego kwadratu. Dodatkowo do parametryzacji wedgeleta uŜywa się wartości h1 i h2 pozwalających na kodowanie obrazów równieŜ w skali szarości, a nie tylko binarnych, jak dotychczas zaprezentowano. Rysunek 2. Parametryzacja falek beamlet i wedgelet. 188 Systemy wspomagania decyzji Sparametryzowane w powyŜszy sposób falki pozwalają na zdefiniowanie odpowiednich słowników, które wykorzystywane są w kodowaniu obrazów. Definicja 1. Słownikiem beamletów nazywamy zbiór B = {bn = bij (r ,θ ) : i = 0,..., lg N , j = 0,..., 4i − 1} ; (2) słownikiem wedgeletów nazywamy zbiór W = {wn = wij (r ,θ , h1 , h2 ) : i = 0,..., lg N , j = 0,..., 4i − 1} , (3) gdzie r ∈ [0, 2lg N −i −1/ 2 ), θ ∈ [0, π ), h1 , h2 ∈ {0,..., 255} . ZauwaŜmy, Ŝe zdefiniowany powyŜej słownik beamletów zawiera odcinki o róŜnej lokalizacji, skali i orientacji. Podobną własnością cechuje się słownik wedgeletów. Taka róŜnorodność pozwala na dokładną aproksymację dowolnego obrazu. Słownik ten moŜe zostać uŜyty do przeprowadzenia analizy i syntezy obrazu w następujący sposób. Definicja 2. Analiza wedgeletowa obrazu f wyraŜa się wzorem α n = f , wn (4) dla wszystkich wn ∈ W , 0 < n ≤ W . Definicja 3. Synteza wedgeletowa wyraŜa się wzorem W f ( x1 , x2 ) = ∑ α n wn ( x1 , x2 ) . (5) n =1 W przypadku teorii beamletów stosowane są analogiczne definicje analizy i syntezy beamletowej. Jedyna róŜnica w kodowaniu obrazów między beamletami i wedgeletami polega na tym, Ŝe w przypadku tych pierwszych kodujemy jedynie same krawędzie obrazu, podczas gdy te drugie pozwalają na kodowanie dowolnych obrazów. Obie rodziny falek cechują się teŜ róŜnymi zastosowaniami w przetwarzaniu obrazów. 3. Uogólnienie wedgeletów i beamletów Teoria dotycząca falek geometrycznych prezentowana dotychczas w literaturze dotyczy jedynie przypadków, w których zakłada się, Ŝe beamlety i wedgelety bazują jedynie na prostych odcinkach. Z praktycznego punktu widzenia takie uproszczenie powoduje, Ŝe w przypadku krawędzi obecnych w obrazach, które nie są prostymi, zbyt wiele falek jest potrzebnych do ich aproksymacji (najbardziej sugestywny przykład stanowi okrąg). W związku z tym naturalne wydało się uogólnienie tej teorii do przypadków z krawędziami, które są fragmentami dowolnych łuków (okręgów, parabol bądź innych). NaleŜy pamiętać jednak, Ŝe powinny to być krzywe, które moŜna opisać za pomocą tylko jednego dodatkowego parametru. Wprowadzenie ich większej liczby pociąga za sobą znaczne zwiększenie słownika, co powoduje wydłuŜenie czasu działania algorytmu i zwiększa ilość informacji potrzebnych do zakodowania obrazu. Rozpatrzmy zatem parametryzację falek przedstawioną w poprzednim rozdziale (Rys. 2). Dodajemy do niej kolejny parametr – d (patrz Rys. 3), który oznacza odległość pomiędzy punktami przecięcia normalnej do prostego beamletu z prostym i zakrzywionym beamletem A. LISOWSKA, Efektywne kodowanie obrazów z wykorzystaniem falek geometrycznych 189 odpowiednio. ZauwaŜmy, Ŝe parametr d określa nam stopień zakrzywienia łuku i w praktyce jest on dość mały. MoŜna go zatem zakodować za pomocą stosunkowo niewielkiej liczby bitów. Rysunek 3. Parametryzacja uogólnionych falek beamlet i wedgelet. Mając tak sparametryzowane uogólnione beamlety i wedgelety moŜemy zdefiniować odpowiadające im uogólnione słowniki podobnie jak w Definicji 1. Definicja 4. Uogólnionym słownikiem beamletów nazywamy zbiór ) ) ) B = {bn = bij (r ,θ , d ) : i = 0,..., lg N , j = 0,..., 4i − 1} ; (6) uogólnionym słownikiem wedgeletów nazywamy zbiór ) ) ) W = {wn = wij (r ,θ , d , h1 , h2 ) : i = 0,..., lg N , j = 0,..., 4i − 1} , gdzie r , d ∈ [0, 2lg N −i −1/ 2 ), θ ∈ [0, π ), h1 , h2 ∈ (7) . W przypadku uogólnionych słowników falek definicje analizy i syntezy obrazów są analogiczne jak w przypadku klasycznych beamletów i wedgeletów. W praktycznych zastosowaniach bardzo często parametry wedgeletów wyznaczane są za pomocą aproksymacji liniowej metodą najmniejszych kwadratów. Pozwala to na uzyskanie moŜliwie najlepszej aproksymacji obrazu na zadanym poziomie dekompozycji. W przypadku uogólnionych wedgeletów moŜna zastosować metodę aproksymacji kwadratowej, a ta jak wiadomo daje mniejsze błędy przybliŜenia. Zatem przytoczone fakty pozwalają na sformułowanie następującej uwagi. Uwaga. Przyjmijmy następujące oznaczenia: f – kodowany obraz, f m – aproksymacja obrazu za pomocą ) m wedgeletów, f m – aproksymacja obrazu za pomocą m uogólnionych wedgeletów, wtedy MSE f) ≤ MSE fm , (8) m gdzie MSE f) oznacza średniokwadratowy błąd aproksymacji uogólnionymi wedgeletami, m MSE fm oznacza błąd aproksymacji wedgeletami. Prawdziwe jest równieŜ stwierdzenie następujące. Do rekonstrukcji obrazu o tej samej jakości, potrzebna jest mniejsza liczba uogólnionych wedgeletów w stosunku do liczby klasycznych wedgeletów. Pozwala nam to zauwaŜyć, Ŝe w przypadku kodowania obrazów zawierających duŜo zakrzywionych krawędzi moŜliwe jest uzyskanie większego stopnia kompresji obrazu. Istotnie, narzuty związane z zakodowaniem dodatkowego parametru (określającego stopień zakrzywienia 190 Systemy wspomagania decyzji łuku) zostaną zniwelowane z dodatkową korzyścią – ogólna liczba bitów potrzebnych do zakodowania obrazu będzie mniejsza w przypadku uŜycia uogólnionych wedgeletów. Z przeprowadzonych badań wynika, Ŝe korzyści te mogą sięgać nawet 15%. 4. Zastosowanie wedgeletów do kodowania obrazów W niniejszym rozdziale przedstawiona zostanie idea kodowania obrazów z wykorzystaniem nowej rodziny falek. Dla uproszczenia rozwaŜań przyjmijmy, Ŝe rozpatrujemy obrazy binarne, uogólnienia do skali szarości oraz do modeli barwnych moŜna uzyskać w dość naturalny sposób. Na Rys. 4(a) zaprezentowany został przykład binarnego obrazu. Na kolejnych, od (b) do (f), znajdują się coraz dokładniejsze – na kolejnych poziomach dekompozycji (od pierwszego do piątego) – aproksymacje przykładowego obrazu. Widzimy, Ŝe za kaŜdym razem uzyskujemy coraz drobniejszy podział czwórkowy obrazu, a co za tym idzie, coraz lepszą jego jakość. To, czy kolejny kwadrat zostanie podzielony na kolejne cztery, zaleŜy od tego, czy błąd aproksymacji między oryginalnym obrazem w obrębie zadanego kwadratu a przybliŜającym go wedgeletem jest odpowiednio mały (poniŜej pewnej zadanej wartości progowej w przypadku kompresji stratnej, bądź równy 0 w przypadku dokładnej rekonstrukcji). (a) (b) (c) (d) (e) (f) Rysunek 4. Oryginalny obraz (a), oraz jego kolejne przybliŜenia wedgeletami (b)-(f). Dla porównania na Rys. 5 przedstawiono przykładowe kolejne przybliŜenia (od drugiego do czwartego poziomu dekompozycji) tego samego obrazu z wykorzystaniem uogólnionych wedgeletów. Porównując oba rodzaje aproksymacji widzimy, Ŝe ta druga daje nam bardziej zwartą reprezentację obrazu (do zakodowania została uŜyta mniejsza liczba wedgeletów) oraz lepszą jakość przybliŜenia (potwierdzoną wartościami PSNR). A. LISOWSKA, Efektywne kodowanie obrazów z wykorzystaniem falek geometrycznych (a) (b) 191 (c) Rysunek 5. Kolejne przybliŜenia uogólnionymi wedgeletami. Jak juŜ wspomniano wcześniej, parametry wedgeletów kodowanego obrazu przechowuje się w drzewach czwórkowych. Podobnie jak w przypadku tradycyjnych falek wartości te zapisuje się jako róŜnice pomiędzy parametrami z kolejnych poziomów dekompozycji. Takie wielorozdzielcze podejście pozwala na uzyskanie progresywnego standardu kompresji, co jest nie bez znaczenia, na przykład w przypadku przesyłania danych przez sieć. 5. Podsumowanie Przedstawione w artykule beamlety i wedgelety oraz ich przykładowe zastosowanie w kodowaniu obrazów stanowią tylko niewielką część teorii dotyczącej nowej rodziny falek geometrycznych. Jednak juŜ zaprezentowane przykłady pokazują jak skutecznym narzędziem w kodowaniu, w szczególności kompresji, obrazów są falki geometryczne. Zaprezentowane w tym artykule uogólnienie rozszerza dodatkowo ich moŜliwości i poprawia skuteczność kodowania. Poza, przedstawionym w artykule, przykładem kodowania obrazów dla beamletów i wedgeletów moŜna wskazać całą gamę innych zastosowań. Wedgelety są z powodzeniem stosowane w takich dziedzinach przetwarzania obrazów jak segmentacja, bądź teŜ są wykorzystywane do usuwania szumów z obrazów. Natomiast beamlety są uŜywane równieŜ w połączeniu z innymi strukturami, niŜ przedstawione w artykule drzewa czwórkowe, mianowicie grafami najbliŜszych sąsiadów. W oparciu o programowanie dynamiczne grafy beamletowe wykorzystywane są, na przykład, do ekstrakcji informacji z obrazów o bardzo duŜym stopniu zaszumienia. 6. Literatura [1] [2] [3] [4] [5] [6] Candès E., What is a Curvelet?, Notices of the American Mathematical Society, Vol. 50, No. 11, November, pp. 1402-1403, 2003. Candès E., Donoho D., Curvelets – A Surprisingly Effective Nonadaptive Representation For Objects with Edges, Curves and Surfaces Fitting, A. Cohen, C. Rabut, and L. L. Schumaker, Eds. Saint-Malo: Vanderbilt University Press, 1999. Do M. N., Directional Multiresolution Image Representations, Ph.D. Thesis, Department of Communication Systems, Swiss Federal Institute of Technology Lausanne, November, 2001. Donoho D. L., Wedgelets: Nearly-minimax estimation of edges, Annals of Stat., Vol. 27, pp. 859–897, 1999. Donoho D. L. Huo X., Beamlets and Multiscale Image Analysis, Lecture Notes in Computational Science and Engineering, Multiscale and Multiresolution Methods, Springer, 2001. Kaiser P. K., The Joy of Visual Perception, http://www.yorku.ca/eye/thejoy.htm . 192 [7] Systemy wspomagania decyzji Ndili U., Nowak R., Figueiredo M., Coding Theoretic Approach to Image Segmentation, IEEE International Conference on Image Processing, October, 2001. [8] Resnikoff H., Wells R. O. Jr, Wavelet Analysis, Springer-Verlag, New York, 2002. [9] Romberg J., Wakin M., Baraniuk R., Approximation and Compression of Piecewise Smooth Images Using a Wavelet/Wedgelet Geometric Model, IEEE International Conference on Image Processing, September, 2003. [10] Todorovic S., Nechyba M. C., Multi-resolution Linear Discriminant Analysis: Efficient Extraction Of Geometrical Structures In Images, to appear in Proc. IEEE Int. Conf. on Image Processing, Barcelona, September, 2003. [11] Wakin M., Romberg J., Choi H., Baraniuk R., Geometric Tools for Image Compression, Asilomar Conference on Signals, Systems, and Computers, Pacific Grove, CA, November, 2002. [12] Walker J. S., Fourier Analysis and Wavelet Analysis, Notices of the American Mathematical Society, Vol. 44, No 6, pp. 658-670, June/July, 1997.