Przegląd
Krótka odpowiedź jest taka, że mają maksymalną liczbę vanishing moments
dla danego support
(tj. Liczbę współczynników filtra). Jest to „ekstremalna” właściwość, która ogólnie wyróżnia falki Daubechies . Mówiąc luźniej, więcej zanikających momentów oznacza lepszą kompresję, a mniejsze wsparcie oznacza mniej obliczeń. W rzeczywistości kompromis między znikającymi momentami a rozmiarem filtra jest tak ważny, że dominuje sposób, w jaki nazywane są falki. Na przykład często widzisz D4
falkę określaną jako D4
lub db2
. 4
Oznacza liczbę współczynników, a2
odnosi się do liczby zanikających momentów. Oba odnoszą się do tego samego obiektu matematycznego. Poniżej wyjaśnię więcej o tym, jakie są chwile (i dlaczego chcemy, aby zniknęły), ale na razie po prostu zrozum, że ma to związek z tym, jak dobrze możemy „złożyć” większość informacji w sygnale na mniejszy liczba wartości. Utratę kompresji uzyskuje się poprzez zachowanie tych wartości i odrzucenie pozostałych.
Być może zauważyłeś, że w nazwie CDF 9/7
użyto JPEG 2000
dwóch nazw zamiast jednej. W rzeczywistości jest również nazywany bior 4.4
. To dlatego, że wcale nie jest to „standardowa” dyskretna falka. W rzeczywistości nie zachowuje nawet energii w sygnale, a ta właściwość jest powodem, dla którego ludzie byli tak podekscytowani DWT! Liczby 9/7
i 4.4
nadal odnoszą się odpowiednio do podparć i momentów zanikania, ale teraz istnieją dwa zestawy współczynników, które definiują falkę. Technicznym terminem jest to orthogonal
, że są biorthogonal
. Zamiast zagłębiać się w matematyczne rozumowanie, ja ”
JPEG 2000
Bardziej szczegółowe omówienie decyzji projektowych dotyczących falki CDF 9/7 można znaleźć w następującym artykule:
Usevitch, Bryan E. Samouczek na temat nowoczesnej kompresji stratnego obrazu falkowego : podstawy JPEG 2000 .
Po prostu przejrzę tutaj główne punkty.
Dość często ortogonalne falki Daubechies mogą w rzeczywistości powodować zwiększenie liczby wartości wymaganych do przedstawienia sygnału. Efekt jest nazywany coefficient expansion
. Jeśli wykonujemy kompresję stratną, która może, ale nie musi mieć znaczenia (ponieważ i tak wyrzucamy wartości na końcu), ale zdecydowanie wydaje się, że w kontekście kompresji jest to bezproduktywne. Jednym ze sposobów rozwiązania tego problemu jest traktowanie sygnału wejściowego jako okresowego.
Traktowanie danych wejściowych jako okresowych powoduje nieciągłości na krawędziach, które są trudniejsze do skompresowania i są tylko artefaktami transformacji. Rozważmy na przykład skoki z 3 do 0 w następującym okresowym przedłużeniu: . Aby rozwiązać ten problem, możemy zastosować symetryczne okresowe przedłużenie sygnału w następujący sposób: . Eliminowanie przeskoków na krawędziach jest jednym z powodów, dla których zamiast DFT w JPEG używana jest dyskretna transformacja kosinusowa (DCT). Reprezentacja sygnału za pomocą cosinusów domyślnie zakłada „zapętlenie od przodu do tyłu” sygnału wejściowego, dlatego chcemy falek, które mają tę samą właściwość symetrii.[ 0 , 1 , 2 , 3 ] → [ . . 0,0 , 1 , 2 , 3 , 0 , 1 , 2 , 3 , . . . ][0,1,2,3]→[...,0,1,2,3,3,2,1,0,0,1...]
Niestety jedyną ortogonalną falą, która ma wymagane cechy, jest falka Haar (lub D2, db1), która jest tylko jednym znikającym momentem. Ugh. To prowadzi nas do biortogonalnych falek, które w rzeczywistości są zbędnymi reprezentacjami, a zatem nie zachowują energii. Powodem, dla którego falki CDF 9/7 są stosowane w praktyce, jest to, że zostały zaprojektowane tak, aby były bardzo bliskie oszczędzania energii. Sprawdzili się również w praktyce.
Istnieją inne sposoby rozwiązania różnych problemów (wspomniane pokrótce w artykule), ale są to ogólne uderzenia czynników.
Znikające chwile
Więc jakie są chwile i dlaczego się nimi przejmujemy? Gładkie sygnały mogą być dobrze aproksymowane przez wielomiany, tj. Funkcje postaci:
a+bx+cx2+dx3+...
Momenty funkcji (tj. Sygnału) są miarą jej podobieństwa do danej potęgi x. Matematycznie wyraża się to jako iloczyn wewnętrzny funkcji i potęgi x. Znikający moment oznacza, że iloczyn wewnętrzny jest równy zero, a zatem funkcja nie „przypomina” mocy x w następujący sposób (w przypadku ciągłym):
∫xnf(x)dx=0
Teraz każda dyskretna, ortogonalna falka ma dwa powiązane z nią filtry FIR , które są używane w DWT . Jeden to filtr dolnoprzepustowy (lub skalowany) , a drugi to filtr górnoprzepustowy (lub falkowy)ϕψ. Ta terminologia wydaje się nieco różna, ale tego tu użyję. Na każdym etapie DWT filtr górnoprzepustowy służy do „odrywania” warstwy szczegółów, a filtr dolnoprzepustowy zapewnia wygładzoną wersję sygnału bez tych szczegółów. Jeśli filtr górnoprzepustowy ma momenty zanikania, momenty te (tj. Cechy wielomianowe niskiego rzędu) zostaną wypchnięte w uzupełniającym wygładzonym sygnale, a nie w sygnale szczegółowym. Mam nadzieję, że w przypadku kompresji stratnej sygnał szczegółów nie będzie zawierał zbyt wielu informacji, dlatego też możemy go wyrzucić.
Oto prosty przykład użycia falki Haar (D2). Zazwyczaj występuje współczynnik skalowania , ale pomijam go tutaj, aby zilustrować tę koncepcję. Dwa filtry są następujące:
1/2–√
ϕ=[1,1]ψ=[1,−1]
Filtr górnoprzepustowy znika dla momentu zerowego, tj. , dlatego ma jeden moment zanikania. Aby to zobaczyć, rozważ ten stały sygnał: . Teraz intuicyjnie powinno być oczywiste, że nie ma tam dużo informacji (ani żadnego stałego sygnału). Możemy to samo opisać, mówiąc „cztery dwójki”. DWT umożliwia nam wyraźne opisanie tej intuicji. Oto, co dzieje się podczas jednego przejścia DWT za pomocą falki Haar:x0=1[2,2,2,2]
[2,2,2,2]→ϕψ{[2+2,2+2]=[4,4][2−2,2−2]=[0,0]
A co dzieje się przy drugim przejściu, które działa tylko na wygładzonym sygnale:
[4,4]→ϕψ{[4+4]=[8][4−4]=[0]
Zauważ, że stały sygnał jest całkowicie niewidoczny dla przebiegów detali (które wszystkie mają wartość 0). Zauważ też, jak cztery wartości zostały zredukowane do pojedynczej wartości . Gdybyśmy chcieli przesłać oryginalny sygnał, moglibyśmy po prostu wysłać , a odwrotny DWT może zrekonstruować oryginalny sygnał, zakładając, że wszystkie współczynniki detalu są zerowe. Falki z momentami zanikania wyższego rzędu pozwalają na uzyskanie podobnych wyników z sygnałami, które są dobrze aproksymowane liniami, parabolami, sześciennymi itp.8 8288
Dalsza lektura
Przeglądam DUŻO szczegółów, aby powyższe leczenie było dostępne. Poniższy artykuł zawiera znacznie głębszą analizę:
M. Unser i T. Blu, Matematyczne właściwości filtrów falkowych JPEG2000 , IEEE Trans. Image Proc., Vol. 12, nr 9 września 2003 r., Str. 1080-1090.
Notatka
Powyższy artykuł zdaje się sugerować, że falka JPEG2000 nosi nazwę Daubechies 9/7 i różni się od falki CDF 9/7.
Wyprowadziliśmy dokładną formę filtrów skalowania JPEG2000 Daubechies 9/7 ... Filtry te wynikają z faktoryzacji tego samego wielomianu co [10]. Główną różnicą jest to, że filtry 9/7 są symetryczne. Co więcej, w przeciwieństwie do biortogonalnych splajnów Cohena-Daubechies-Feauveau [11], nieregularna część wielomianu została podzielona między obie strony i możliwie równomiernie.Daubechies8
[11] A. Cohen, I. Daubechies i JC Feauveau, „Biortogonalne zasady falo wspieranych fal”, Comm. Pure Appl. Math., Vol. 45, nr 5, str. 485–560, 1992.
Projekt standardu JPEG2000 ( link pdf ), który przeglądałem, również nazywa oficjalny filtr Daubechies 9/7. Odwołuje się do tego dokumentu:
M. Antonini, M. Barlaud, P. Mathieu i I. Daubechies, „Kodowanie obrazu przy użyciu transformaty falkowej”, IEEE Trans. Image Proc. 1, s. 205–220, kwiecień 1992 r.
Nie przeczytałem żadnego z tych źródeł, więc nie mogę powiedzieć na pewno, dlaczego Wikipedia nazywa falę JPEG2000 CDF 9/7. Wydaje się, że może istnieć różnica między nimi, ale ludzie i tak nazywają oficjalną falkę JPEG2000 CDF 9/7 (ponieważ jest oparta na tej samej podstawie?). Niezależnie od nazwy, artykuł Usevitch opisuje ten, który jest używany w standardzie.