Politechnika Krakowska Matematyczne podstawy rekonstrukcji
Transkrypt
Politechnika Krakowska Matematyczne podstawy rekonstrukcji
Politechnika Krakowska Matematyczne podstawy rekonstrukcji sygnałów rzadkich z niepełnych pomiarów z wykorzystaniem Compressed Sensing Mateusz Matan Kraków 2010 Compressed Sensing znany również jako Compressive Sampling lub Sparse Sampling jest techniką akwizycji i rekonstrukcji sygnałów wykorzystując wiedzę o tym, że dany typ sygnału jest rzadki lub kompresowalny. Zagadnienie to rozwija się od wielu lat, ale dopiero ostatnimi czasy widoczny jest znaczny wzrost zainteresowania i zaskakujące efekty. Głównie za przyczyną rezulatatów jakie osiągnęli David Donoho, Emmanuel Candés, Justing Romberg i Terence Tao. W 2004 Candés (matematyk z Caltech), pracujący nad optymalizacją rekonstrukcji z pomiarów rezonansu elektro-magnetycznego (CT oraz MRI) odkrył, że obraz testowy ludzkiej czaski (tzw. fantom) może być zrekonstruowany niemalże dokładnie (99,4% zgodności z oryginałem), nawet jeżeli ilość pomiarów jest znacznie mniejsza, niż zakłada kryterium Nyquista-Shannona. Z kryterium próbkowania Nyquista-Shannona-Kotelnikova, znanego również jako główne twierdzenie w teorii interpolacji wynika, że jeżeli sygnał analogowy o ograniczonym zakresie będzie próbkowany to może być bezbłędnie odtworzony z (nieskończonej) sekwencji próbek pod warunkiem, że częstotliwość próbkowania przekroczyła 2B próbek na sekundę, gdzie B jest największą częstotliwością w oryginalnym sygnale. Główną koncepcją Compressed Sensingu jest wykorzystanie faktu, o pewnej nadmiarowości informacji, które są niesione przez większość sygnałów. Możemy łatwo pokazać, że większość otaczających nas sygnałów (w tym dźwięki i obrazy) w pewnej bazie, będzie rzadka lub prawie rzadka. DEF: Sygnał K-rzadki, definiowany przez J.Romberga jest pewną cechą sygnałów. Mówimy że sygnał długości n jest K-rzadki, jeżeli n − k jego współczynników wynosi 0 , a k współczynników ma niezerowe wartości , gdzie zachodzi mocna nierówność: k << n dla pewnych ,n, k ∈ N+ . DEF: Sygnał prawie rzadki, definiowany przez J.Romberga jest pewną cechą sygnałów. Mówimy że sygnał długości n jest prawie rzadki, jeżeli znaczna część jego współczynników jest bliska lub równa zeru (n − k dla pewnych ,n, k ∈ N+ ), a k współczynników ma na moduł niezerowe wartości, gdzie zachodzi mocna nierówP PN i i i ność: k << n oraz N 1 |xk | >> 1 |xs | gdzie: xk są współczynnikami dominującymi (o dużych wartościach) oraz xis są współczynnikami recesywnymi (o małych wartościach lub zerowe). Sygnały pseudo rzadkie, można przekształcić do postaci rzadkiej, wykorzystując transformacje. Oczywiście, w przypadku konwersji sygnału do rzadkiej dziedziny musimy liczyć się z szumem, który może pochodzić z kilku źródeł: 2 • szum biały - występuje razem z sygnałem, wprowadza nieznaczne zakłócenia sygnału na stałym poziomie • błędy pomiarowe - błędy jakie powstały na etapie dokonywania pomiaru naszego sygnału, wynikające z niedoskonałości urządzeń pomiarowych • błędy konwersji - wynikające z niedoskonałości obliczeniowej maszyny (tzw. skończona dokładność obliczeniowa komputerów) lub błędów algorytmu konwersji sygnału z A ←→ B W takim przypadku należy pamiętać o uwzględnieniu szumu, korygując transformowany sygnał o mały czynnik redukujący zakłócenia (). W przypadku obrazów i dzwięków w dziedzinie częstotliwości (FFT, Transformata Cosinus’owa, Transformata Wavelet’owa), możemy powiedzeć, że posiadają jedynie kilka procent niezerowych współczynników. Znaczna część transformowanego sygnału jest równa zero lub bardzo bliska zeru. Ta cecha, jest często wykorzystywana w kompresji stratnej dzwięków i obrazów np: MP3, JPEG, JPEG2000. 1. Transformacje Cosinusowa, Fouriera, Falkowa oraz twierdzenie Kotelnikowa-Shannona 1.1. Twierdzenie Kotelnikowa-Shannona Twierdzenie Kotielnikowa-Shannona, znane również jako twierdzenie Nyquista-Shannona, mówi o tym, kiedy z danego sygnału dyskretnego f ∗ (t) można odtworzyć sygnał ciągły f (t). Sygnał ciągły może być ponownie odtworzony z sygnału dyskretnego, jeśli był próbkowany z częstotliwością co najmniej dwa razy większą od granicznej częstotliwości swego widma. Dyskretyzacja sygnału ciągłego wiąże się z utratą części informacji o nim. Aby możliwe było jak najwierniejsze odtworzenie sygnału ciągłego, spełnione powinny być przede wszystkim dwa warunki: - Składowa podstawowa i składowe wyższych rzędów widma sygnału próbkowanego nie nachodzą na siebie. W praktyce oznacza to, że widmo sygnału ciągłego musi być ograniczone do pewnego przedziału czestotliwości, a poza nim tłumione: 3 6= 0 dla |ω| < ω g |F (jω)| = 0 dla |ω| ≥ ωg Gdzie: wg - częstotliwość graniczna widma: ωg < ω2i = Tπ wi - częstotliwość z jaką próbkowano sygnał: ωi = 2π T Jest możliwość odfiltrowania składowej podstawowej widma sygnału próbkowanego bez zmiany wartości fazy i amplitudy. Aby tego dokonać potrzebny jest filtr o transmitancji: 1 dla 0 < ω < G(jω) = 0 dla ω ≥ π T π T Filtry posiadają jednak zazwyczaj transmitancję jedynie zbliżoną do powyższej, stąd pełna rekonstrukcja sygnału ciągłego jest niemożliwa. 1.2. Transformacja Falkowa Transformacja falkowa jest przekształceniem podobnym do transformacji Fouriera i transformacji Cosinusowej. Oba przekształcenia operają się na wykorzystaniu operacji iloczynu skalarnego badanego sygnału s(t) i jądra przekształcenia. Główna różnica pomiędzy transformacjami to właśnie jądro przekształcenia. Transformacja Fouriera wykorzystuje jako jądro funkcje sinusoidalne (reprezentacja częstotliwości). W przypadku transformacji cosinusowej jądrem jest funkcja cosinus, ze względu na właściwości przydatne w informatyce (przetwarzanie obrazów). W transformacji falkowej jądrem jest funkcja falkowa. Posiada ona pewne ograniczenia, które musi spełniać aby można było ją wykorzystać do analizy wielorozdzielczej (np: funkcja skalująca). Funkcji falkowych tak samo jak transformat, ze względu na dowolność współczynników, jest zatem nieskończenie wiele. Transformację definiuje jedna macierzysta funkcja falkowa, posiadająca parametry (a(skala),b(przesunięcie)) pozwalające definiować za ich pomocą rodzinę funkcji falkowych, wykorzystywaną do dekompozycji sygnału s(t). Transformacja falkowa dostarcza informacji czasowo-częstotliwościowe (analiza sygnałów niestacjonarnych). Wynikiem transformacji falkowej, jest informacja o częstotliwościach poszczególnych składników widmowych sygnału ze skończoną precyzją. Wyjaśnienie: Jądro przekształcenia nie reprezentuje nieskończenie wąskiego przedziału (jak np: w transformacji Fouriera) lecz przedział częstotliwości odwrotnie proporcjonalnej do czasu trwania falki. Stosowana jest zatem w przypadkach kiedy interesuje nas informacja o częstotliwościach składowych widmowych i ich lokalizacji 4 w czasie. Transformata opisana jest następującym wzorem: 1 s̃Ψ (a, b) = √ a Z ∞ s(t)Ψ( −∞ t−b )dt a gdzie: a-parametr skali b-parametr przesunięcia s(t)-sygnał zależny od czasu t Ψ-funkcja falkowa s̃Ψ (a, b) - współczynnik falkowy, zależny od parametrów a i b )-jądro przekształcenia Ψ( t−b a 1.3. Transformacja Fouriera Transformacja Fouriera jest transformacją z dziedziny czasu w dziedzinę częstotliwości. Transformata rozkłada funkcję na szereg funkcji okresowych tak, że uzyskana transformata podaje sposób jaki poszczególne częstotliwości składają się na funkcję pierwotną. Transformata opisana jest następującym wzorem: ∞ Z f (x)e−2πixς dx fb(ς) := −∞ gdzie: i-jednostka urojona (i2 = −1) (x) - funkcja pierwotna, klasy C 1 , całkowalna w przedziale (−∞, ∞) Do transformaty istnieje funkcja odwrotna opisana wzorem: Z ∞ f (x) = fb(ς)e−2πixς dς −∞ gdzie: i-jednostka urojona (i2 = −1) (x) - funkcja pierwotna, klasy C 1 , całkowalna w przedziale (−∞, ∞) 5 1.4. Transformacja Cosinusowa - dyskretna Dyskretna transformacja cosinusowa jest często używana w multimediach, ze względu na charakterystyczną cechę, która pozawala zredukować liczbę współczynników transformowanego sygnału, co pozwala na wykorzystanie jej w kompresji sygnałów. Najczęstszym przykładem wykorzystania transformacji cosinusowej są algorytmy kompresji dźwięków i obrazów (MP3, JPEG). Transformata opisana jest następującym wzorem: N −1 1 X g(m) G0 (m) = √ N m=0 r N −1 πk(2m + 1) 2 X G(m)cos( ) Gk (m) = N m=0 2N gdzie: k=1,2,...,N-1 Do transformaty istnieje funkcja odwrotna opisana wzorem: 1 g(m) = √ G0 (m) + N r N −1 2 X πk(2m + 1) cos N k=1 2N gdzie: m=0,1,2,...,N-1 2. Wprowadzenie Dla uproszczenia możemy założyć, że nasz sygnał jest rzadki. Jeżeli ilość naszych pomiarów jest mocno ograniczona (jest ich mniej niż wynosi długość naszych danych) zmuszeni jesteśmy rozwiązać niedookreślony układ równań w postaci: AX = Y gdzie, A ∈ Mm∗n (R), jest macierzą pomiaru o rank(A) = m, X ∈ Rn , jest mierzonym wektorem, Y ∈ Rm , jest wektorem pomiaru, 6 n ∈ N+ oraz m ∈ N+ , przy czym m << n. W takiej sytuacji otrzymujemy układ, który ma nieskończenie wiele rozwiązań zależnych od n−m parametrów. Aby możliwie jak najlepiej przybliżyć rzeczywite rozwiązanie układu, musimy wykorzystać dodatkowe założenia: • parametryzacja niewiadomych • ograniczenie obszaru poszukiwań w przestrzeni Rn Klasyczy sposób rozwiązania tego typu problemów polega na minimalizacji w normie L2 ( tzw. minimalizację całkowitej energii układu). Z punktu widzenia matematyki jest to proste rozwiązanie, które sprowadza się do mnożenia macierzowego wektora pomiaru z wykorzystaniem pseudoodwrotnej macierzy pomiaru... Gdzie wzór na uogólniony postać pseudoodwrotnej macierzy Moore–Penrose’a przybiera postać: A+ = C ∗ (CC ∗ )−1 (B ∗ B)−1 B ∗ gdzie: Mm∗n (R) 3 A = BC, rank(A) = k Mm∗k (R) 3 B Mk∗n (R) 3 C W przypadku kiedy rank(A) = m, macierz B może być obrana jako macierz jednostkowa i wzór przybiera postać: A+ = A∗ (AA∗ )−1 lub znacznie częściej używaną (mniejsza złożoność obliczeniowa), postać SVD (Singular Value Decomposition): A+ = V + U ∗ gdzie: A = U V ∗ U i V - macierze ortonormalne, długość każdego wektora w macierzy jest równa 1 U ∈ Mk∗k V ∈ Mk∗n V - długości m - macierz diagonalna, nieujemne wartości osobliwe 7 Niestety, prowadzi to do relatywnie kiepskiego rozwiązania w większości praktycznych zastosowań, ponieważ nieznane (niespróbkowane) współczynniki mają zerową energię. Znacznie ciekawszym rozwiązaniem jest minimalizacja w normie L0 , lub maksymalizacja liczby zerowych współczynników w dziedzinie L0 . Niestety, z algorytmicznego punktu widzenia jst to problem NP-zupełny, stąd jest on nierozwiązywalny dla żadnych większych zbiorów w sensownym czasie. T.Tao w swojej pracy stwierdził, że rozwiązanie wykorzystujące normę L1 , czyli sumę wartości z dokładnością do wartości bezwzględnych daje podobne rezultaty jak rozwiązanie w normie L0 , natomiast z obliczeniowego punktu widzenia jest mniej czasochłonne (rozwiązywalne w czasie wielomianowym). Szukanie rozwiązania o najmniejszej normie L1 może być łatwo wyrażone poprzez algorytmy programowania liniowego lub też ostatnimi czasy za pomocą algorytmów zachłannych. W dalszej części artykułu przybliżę nieco rozwiązania bazujące na rekonstrukcji sygnałów z użyciem normy L1 . Należy mieć jednak na uwadze fakt, że w przypadku rekonstrukcji danych z niepełnych pomiarów, żadna z metod nie jest w stanie ze 100% prawdopodobieństwem podać dokładnego rozwiązania oraz fakt, że ilość metod pozwalających na rekonstrukcję, jest ogromna. Poniżej podane dwie rodziny metod, należą do najbardziej powszechnych ze względu na jakość rekonstrukcji (Basis pursuit) oraz jej czas (Greedy Pursuit). 3. RIP - Restriced Isometry Property Mówimy że, macierz A spełnia RIP dla K niezerowych wartości jeżeli: ∃λk ∈ (0, 1) : (1 − λK ) ≤ |Ax|22 ≤ (1 + λK ) |x|22 dla każdego K-rzadkiego sygnału x. 4. Algorytmy Basis Pursuit Załóżmy że, pewne 2S kolumn z macierzy A ∈ Mm∗n (R) jest liniowo niezależne. ( m > 2S, gdzie S jest liczbą niezerowych wartości mierzonego sygnału). W takim przypadku, dowolnie S-rzadki sygnał x ∈ Rn może być jednoznacznie zrekonstruowany z pomiaru Ax. Dowód: Przeprowadźmy dowód niewprost. Żałóżmy, że istnieją dwa S-rzadkie sygnały x, x0 ∈ Rn gdzie, Ax = Ax0 . Z czego wynika że A(x − x0 ) = 0. Jednak x − x0 jest 2S-rzadkie, więc istnieje liniowa zależność pomiędzy pewnymi 2S kolumnami macierzy A. Jest to sprzeczność. 8 Prostym i efektywnym sposobem, jest użycie minimalizacji w normie L1 , tak zwanego podejścia Basis Pursuit. Przybiera ono poniższą postać: x = arg(minx:Ax=b |x|L1 ) Okazuje się, że podejście podstawowe jest efektywne nie tylko dla pomiarów Fourierowskich, ale dla szerokiej klasy macierzy pomiaru. Warunkiem koniecznym jest aby każde 2S kolumn macierzy A było liniowo niezależne. Dokładny warunek precyzuje RIP (Restricted Isometry Property). Zatem, jak wynika z powyższych założeń, takie rozwiązanie jest możliwe jeżeli liczba M pomiarów spełnia poniższą nierówność: N >> M >> Slog(N ) << N gdzie: M - liczba pomiarów 5. Algorytmy Greedy Pursuit Jako przykład dla rodziny algorytmów zachłannych do rekonstrukcji sygnałów posłużę, się algorytmem OMP (Orthogonal Matching Pursuit). W algorytmie OMP stosuje się inne podejście niż w BP. Zamiast próby aproksymacji wektora x, staramy się jak najlepiej aproksymować wektor pomiaru (y), za pomocą rzadkiej liniowej kombinacji Ai s, kolumn macierzy A. W każdej iteracji, algorytm zaznacza kolumny najbardziej przybliżające aktualne residuum (minimalizujące różnice pomiędzy y 0 i y). Ortogonalizacja jest pewnym mechanizmem, dzięki któremu mamy pewność, że żadna z kolumn nie została poprzednio zaznaczona. Po T iteracjach, istnieje duże prawdopodobieństwo, że będziemy w stanie przedstawić wektor pomiaru y jako liniową kombinację T kolumn z macierzy A, tym samym uzyskując poprawne rozwiązanie (rzadki wektor sygnału). 6. Podsumowanie Powyższy artykuł, bardzo pobieżnie opisuje możliwości jakie daje wykorzystanie Compressed Sensingu w rekonstrukcji sygnałów. W celu zapoznania się ze szczegółami mechanizmów działania jak i dziedzinami gdzie są i mogą być one wykorzystane, zapraszam na seminarium w piątek 22.01.2010r. 9