Welche Eigenschaften machen bestimmte Wavelets bei der Bildkomprimierung „besser“ als andere?


39

Ich versuche, mir mehr über die Bildkomprimierung mit der Wavelet-Transformationsmethode beizubringen. Meine Frage ist: Was ist mit bestimmten Wavelets, die beim Komprimieren von Bildern bevorzugt werden? Sind sie einfacher zu berechnen? Produzieren sie glattere Bilder? Usw...

Beispiel: JPEG 2000 verwendet das Cohen-Daubechies-Feauveau 9/7 Wavelet ... warum dieses?


Soweit ich weiß, liefern die Daubechies Wavelets eine glatte Basis, daher sind die stark komprimierten Bilder "unscharf". Haar-Wavelet würde zum Beispiel blockartige Artefakte erzeugen. Da Sie JPEG 2000 erwähnt haben, möchte ich darauf hinweisen, dass sich auch das Kodierungsschema von Nicht-Null-Wavelet-Koeffizienten auf die dekodierten Bilder (EZW, SPIHT, ...) auswirkt.
Libor

Ihre Frage wurde beantwortet. Zögern Sie nicht, für die nützlichen zu stimmen und die am besten geeigneten zu akzeptieren
Laurent Duval

Antworten:


26

Überblick

Die kurze Antwort ist, dass sie die maximale Anzahl vanishing momentsfür eine gegebene support(dh Anzahl von Filterkoeffizienten) haben. Das ist die "extreme" Eigenschaft, die Daubechies Wavelets im Allgemeinen auszeichnet . Vereinfacht gesagt, bedeuten mehr Momente des Verschwindens eine bessere Komprimierung und eine geringere Unterstützung weniger Rechenaufwand. Tatsächlich ist der Kompromiss zwischen verschwindenden Momenten und Filtergröße so wichtig, dass er die Art und Weise dominiert, wie Wavelets benannt werden. Beispielsweise wird das D4Wavelet häufig als D4oder bezeichnet db2. Das 4bezieht sich auf die Anzahl der Koeffizienten und das2bezieht sich auf die Anzahl der Momente des Verschwindens. Beide beziehen sich auf dasselbe mathematische Objekt. Im Folgenden erkläre ich mehr darüber, was Momente sind (und warum wir sie verschwinden lassen wollen), aber jetzt verstehe ich nur, dass es darum geht, wie gut wir die meisten Informationen im Signal in einen kleineren "zusammenfalten" können Anzahl der Werte. Verlustbehaftete Komprimierung wird erreicht, indem diese Werte beibehalten und die anderen weggeworfen werden.

Jetzt haben Sie vielleicht bemerkt, dass der Name, CDF 9/7der in verwendet wird JPEG 2000, zwei statt einer Zahl enthält. Tatsächlich wird es auch als bezeichnet bior 4.4. Das liegt daran, dass es überhaupt kein "standardmäßiges" diskretes Wavelet ist. Tatsächlich bewahrt es nicht einmal technisch die Energie im Signal, und diese Eigenschaft ist der Grund, warum die Leute von Anfang an so begeistert von der DWT waren! Die Zahlen 9/7und 4.4beziehen sich immer noch auf die Unterstützungs- bzw. Verschwindungsmomente, aber jetzt gibt es zwei Sätze von Koeffizienten, die das Wavelet definieren. Der Fachbegriff ist, dass sie es nicht sind orthogonal, sondern sind biorthogonal. Anstatt zu tief in das einzudringen, was das mathematisch bedeutet,

JPEG 2000

Eine viel detailliertere Diskussion der Entwurfsentscheidungen im Zusammenhang mit dem CDF 9/7 Wavelet findet sich in der folgenden Veröffentlichung:

Usevitch, Bryan E. Ein Tutorial zur modernen verlustbehafteten Wavelet- Bildkomprimierung : Grundlagen von JPEG 2000 .

Ich werde hier nur die wichtigsten Punkte besprechen.

  1. Sehr oft können die orthogonalen Daubechies-Wavelets tatsächlich zu einer Erhöhung der Anzahl der Werte führen, die zur Darstellung des Signals erforderlich sind. Der Effekt wird aufgerufen coefficient expansion. Wenn wir eine verlustbehaftete Komprimierung durchführen, kann dies von Bedeutung sein oder auch nicht (da wir am Ende ohnehin Werte wegwerfen), aber im Kontext der Komprimierung scheint dies definitiv kontraproduktiv zu sein. Eine Möglichkeit, das Problem zu lösen, besteht darin, das Eingangssignal als periodisch zu behandeln.

  2. [0,1,2,3][...0,1,2,3,0,1,2,3,...][0,1,2,3][...,0,1,2,3,3,2,1,0,0,1...]

  3. Leider ist das einzige orthogonale Wavelet, das die erforderlichen Eigenschaften aufweist, das Haar-Wavelet (oder D2, db1), das nur als ein Moment verschwindet. Pfui. Das führt uns zu biorthogonalen Wavelets, die eigentlich redundante Darstellungen sind und daher keine Energie sparen. Der Grund, warum CDF 9/7-Wavelets in der Praxis verwendet werden, liegt darin, dass sie so konzipiert wurden, dass sie der Energieeinsparung sehr nahe kommen . Sie haben sich auch in der Praxis bewährt.

Es gibt andere Wege, um die verschiedenen Probleme zu lösen (die in der Veröffentlichung kurz erwähnt werden), aber dies sind die Hauptaspekte der beteiligten Faktoren.

Verschwindende Momente

Also, was sind Momente und warum kümmern wir uns um sie? Glatte Signale können durch Polynome, dh Funktionen der Form, gut angenähert werden:

a+bx+cx2+dx3+...

Die Momente einer Funktion (dh eines Signals) sind ein Maß dafür, wie ähnlich es einer gegebenen Potenz von x ist. Mathematisch ausgedrückt ist dies ein inneres Produkt zwischen der Funktion und der Potenz von x. Ein Moment des Verschwindens bedeutet, dass das innere Produkt Null ist und daher die Funktion dieser Potenz von x nicht "ähnelt", wie folgt (für den kontinuierlichen Fall):

xnf(x)dx=0

ϕψ. Diese Terminologie scheint etwas zu variieren, aber ich werde sie hier verwenden. In jeder Stufe der DWT wird das Hochpassfilter verwendet, um eine Detailschicht "abzuziehen", und das Tiefpassfilter liefert eine geglättete Version des Signals ohne dieses Detail. Wenn das Hochpassfilter verschwindende Momente aufweist, werden diese Momente (dh Polynommerkmale niedriger Ordnung) eher in das komplementäre geglättete Signal als in das Detailsignal gestopft. Im Falle einer verlustbehafteten Komprimierung enthält das Detailsignal hoffentlich nicht viele Informationen, weshalb wir das meiste davon wegwerfen können.

1/2

ϕ=[1,1]ψ=[1,1]

x0=1[2,2,2,2]

[2,2,2,2]ψϕ{[2+2,2+2]=[4,4][22,22]=[0,0]

Und was passiert im zweiten Durchgang, der nur mit dem geglätteten Signal arbeitet:

[4,4]ψϕ{[4+4]=[8][44]=[0]

288

Weitere Lektüre

Ich beschönige eine Menge Details, um die obige Behandlung zugänglich zu halten. Das folgende Papier hat eine viel tiefere Analyse:

M. Unser und T. Blu, Mathematische Eigenschaften der JPEG2000-Wavelet-Filter , IEEE Trans. Image Proc., Vol. 12, nein. 9, Sept. 2003, S. 1080-1090.

Fußnote

Das obige Papier scheint darauf hinzudeuten, dass das JPEG2000-Wavelet Daubechies 9/7 heißt und sich vom CDF 9/7-Wavelet unterscheidet.

Daubechies8

[11] A. Cohen, I. Daubechies und JC Feauveau, "Biorthogonale Basen kompakt getragener Wavelets", Comm. Pure Appl. Math., Vol. 45, nein. 5, S. 485–560, 1992.

Der Entwurf des JPEG2000-Standards ( pdf-Link ), den ich durchsucht habe, nennt sich auch den offiziellen Filter Daubechies 9/7. Es verweist auf dieses Papier:

M. Antonini, M. Barlaud, P. Mathieu und I. Daubechies, „Bildcodierung mit der Wavelet-Transformation“, IEEE Trans. Image Proc. 1, S. 205-220, April 1992.

Ich habe keine dieser Quellen gelesen, daher kann ich nicht genau sagen, warum Wikipedia das JPEG2000 Wavelet CDF 9/7 nennt. Es scheint, als gäbe es einen Unterschied zwischen den beiden, aber die Leute nennen das offizielle JPEG2000 Wavelet CDF 9/7 trotzdem (weil es auf derselben Grundlage basiert?). Unabhängig vom Namen beschreibt das Papier von Usevitch dasjenige, das in der Norm verwendet wird.


@datageist Fantastische Antwort! Ein weiterer Grund für die Entstehung von 9/7 war, dass es eine alternative Methode zur Faktorisierung des Rekonstruktionspolynoms mit der Einschränkung gab, dass die Filter symmetrisch sind . Auf diese Weise bleibt die Phasenantwort linear. (Im Gegensatz dazu ist ein daub4-Wavelet, während ein FIR asymmetrisch ist, und induziert nichtlineare Phasen in einem verarbeiteten Signal). 9/7 wurde in JPEG verwendet, weil wir die subjektive Neigung hatten, lineare Verzerrungen gegenüber nichtlinearen Verzerrungen in Bildern zu bevorzugen.
Spacey

1
Schöner Artikel. Die Informationen in dem Wikipedia-Artikel entsprechen den zitierten Quellen, im Wesentlichen Daubechies "10 Lectures", so dass es in Bezug auf JPEG2000 veraltet sein kann. Eine Korrektur: Biorthogonal ist nicht redundant. Die Biorthogonalitätsbedingungen legen genau inverse Filterbänke fest. Redundante Transformationen beginnen mit Framelets.
Dr. Lutz Lehmann

10

Die Güte von Signaltransformationen wird anhand zweier verschiedener Metriken bewertet: Komprimierung und bei verlustbehafteter Komprimierung Qualität. Die Komprimierung wird durch Energieverdichtung definiert, die Qualität ist jedoch schwieriger.

Traditionell wurde die Qualität durch den mittleren quadratischen Fehler oder das durchschnittliche SNR pro Pixel gemessen. Menschen neigen jedoch nicht dazu, Signale mit MSE oder SNR auszuwerten. Menschen reagieren sehr empfindlich auf strukturierten Lärm, wo MSE eher nicht auftritt. Die Entwicklung von Algorithmen, die menschenähnliche Qualitätsmetriken liefern, ist ein aktives Forschungsgebiet. Boviks Structural SIMilarity (SSIM) -Index ist ein guter Ausgangspunkt.


6

Als sehr kurze Antwort: Jede Transformation ist besser als jede andere Transformation, was als "Energieverdichtungseigenschaft" bezeichnet wird und wie folgt erklärt wird:

"Wenn nur ein kleiner Bruchteil der Transformationskoeffizienten eine große Größe hat, so dass die Wiederherstellung nahezu perfekt ist, wenn nur einige wenige Koeffizienten beibehalten und andere verworfen oder quantifiziert werden." Diese Eigenschaft hängt mit der Dekorrelationsfähigkeit einheitlicher Transformationen zusammen. "

Die Transformation mit geringerer Energieverdichtungseigenschaft ist diejenige, die die geringste Anzahl von Symbolen und daher weniger Bits benötigt.

Die Transformation mit der höchsten Energieverdichtungseigenschaft ist DCT.

Dipan.


1
DCT hat nur für unbekannte Signalklassen die höchste Energieverdichtung. Wenn Sie Ihre Signaldomäne charakterisieren können, können Sie es besser machen.
bis zum

Ich stimme @totowtwo zu. Mein Punkt ist, dass "Energiekompaktheitseigenschaft" das ist, was eine bestimmte Transformation ausmacht, was sie für Codec-Engines vorzuziehen macht.
Dipan Mehta

5

Natürliche Bilder bestehen aus verschiedenen Bildmerkmalen. Wir können sie grob in glatte oder langsam variierende Merkmale, Texturen und Kanten einteilen. Eine gute Komprimierungsmethode wandelt ein Bild in einen Bereich um, in dem die gesamte Energie eines Signals in nur wenigen Koeffizienten gespeichert ist.

Die Fourier-Transformation versucht, ein Bild mit Sinus und Cosinus zu approximieren. Jetzt können Sinus und Cosinus glatte Signale ziemlich genau approximieren, sind aber notorisch schlecht, um Diskontinuitäten zu approximieren. Wenn Sie mit dem Gibbs-Phänomen vertraut sind, wissen Sie, dass Sie eine große Anzahl von Fourier-Koeffizienten benötigen, um die Artefakte der Approximation einer zeitlichen Diskontinuität zu vermeiden. Je kleiner die Anzahl der Koeffizienten ist, desto besser ist jedoch die Komprimierung. Daher besteht ein inhärenter Kompromiss zwischen der Anzahl der Koeffizienten und dem Verlust des Komprimierungsverfahrens, das wir normalerweise als Kompromiss zwischen Ratenverzerrung bezeichnen.

k2/3k1, beziehungsweise. Bei der gleichen Anzahl von Termen fällt der Fehler bei Wavelets schneller ab. Dies bedeutet, dass Wavelets eine bessere Energieverdichtung haben, wenn die Bilder nicht perfekt glatt sind (sich langsam ändern) und Singularitäten enthalten.

Wir haben jedoch noch keine einzige Basis oder Transformation, die sich glatten Merkmalen, Punktsingularitäten, Kanten und Texturen annähern kann.


4

Die DCT hat eine sehr gute Energieverdichtung für viele gängige Signale und passt auch ziemlich gut dazu, wie die Beugung (der zugrunde liegende physikalische Prozess bei der Bildgebung) funktioniert, da die Beugung als Fourier-Kern dargestellt werden kann. Diese bieten viele Vorteile.

Das Problem ist, dass die DCT-Koeffizienten notwendigerweise über den gesamten Transformationsbereich delokalisiert sind. Dies erfordert, dass viele kleine Transformationsbereiche (Blöcke) erstellt werden, damit beim Transformieren keine Energie in einen anderen Bereich übergeht. Dies schränkt sowohl die Fähigkeit der Transformation ein, Energie zu verdichten, als auch Artefakte an den vielen Blockgrenzen ein.

Ich habe nicht viel mit Wavelets gemacht, daher könnte ich mich irren, aber sie sind delokalisierter, mit unterschiedlichen Koeffizienten, die unterschiedliche Kompromisse zwischen Fläche und Frequenz darstellen. Dies ermöglicht größere Blöcke mit weniger Artefakten. In der Praxis ist nicht sicher, welchen Unterschied das wirklich macht.


0

Wenn es um bessere Wavelets geht, sollten wir berücksichtigen, dass sie im Hintergrund denselben Encoder haben: Die Leistung einer Transformation ist stark mit der Quantisierung und der Codierung verknüpft. Die Leistung ist normalerweise: bessere Komprimierung bei gleicher Qualität oder bessere Qualität bei gleicher Komprimierung. Komprimierung ist eine einfache Maßnahme, Qualität nicht. Aber nehmen wir an, wir haben eine.

×124×4

Letztendlich hängt dies von der Klasse der Bilder ab, die Sie komprimieren möchten: universell oder fokussiert, wie bei medizinischen Bildern, oder seismische Datenkomprimierung, mit eingeschränkten, spezifischen Datentypen? Auch hier können Wavelets unterschiedlich sein.

Was sind nun die wichtigsten morphologischen Komponenten von Bildern und wie gehen Wavelets damit um:

  • langsame Trends, sich entwickelnde Hintergründe: die Momente, in denen Polynome in Wavelet-Subbändern verschwinden,
  • Unebenheiten: ok mit Skalierungsfunktionen,
  • Kanten: eingefangen durch den abgeleiteten Aspekt von Wavelets,
  • Texturen: Oszillationen, die durch das Wackeln von Wavelets erfasst werden,
  • der Rest, was laut ist, unmodeliert: verwaltet durch Orthogonalität (oder auch nah).

Auf der Analyseseite sind die besten Wavelets also gut, um die oben genannten Merkmale global zu kompaktieren. Auf der Syntheseseite verringern die besten Wavelets die Komprimierungseffekte, beispielsweise die Quantisierung, um einen angenehmen Aspekt zu erzielen. Die Eigenschaften, die bei der Analyse / Synthese benötigt werden, sind etwas anders. Aus diesem Grund sind biorthogonale Wavelets gut: Sie können Analyseeigenschaften (Momente des Verschwindens) / Syntheseeigenschaften (Glätte), die Sie nicht mit orthogonalen Eigenschaften tun können, trennen und die Filterlänge erhöhen , ziemlich nachteilig für die Rechenleistung. Zusätzliche, biorthogonale Wavelets können symmetrisch sein und sind gut für Kanten.

Wollen Sie schließlich eine verlustfreie Komprimierung? Dann brauchen Sie "ganzzahlige" Wavelets (oder Binlets).

Und das alles in Kombination mit Rechenproblemen: trennbare Wavelets, nicht zu lang. Und der Standardisierungsprozess im JPEG-Komitee.

Schließlich ist der 5/3 ziemlich verlustfrei, kurz genug. Einige der 9/7 sind auch gut. Viel besser als ein 13/7 Wavelet ? Nicht wirklich, und selbst wenn das in PSNR ist, nicht das Beste für die Bildqualität.

Die besten Wavelets sind also nur einen Katzensprung entfernt, für traditionelle Bilder und persönliche Kommunikation mit Autoren von

M. Unser und T. Blu, Mathematische Eigenschaften der JPEG2000-Wavelet-Filter , IEEE Trans. Image Proc., Vol. 12, nein. 9, Sept. 2003, S. 1080-1090.

Lassen Sie mich glauben, dass der "beste" Aspekt des 9/7 weder vollständig erklärt noch zugesichert ist.

M

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.