# Kompression in verschiedenen Farbräumen - Bildkompression mittels Wavelet-Transformation
Keywords: Wavelet-Kompression, Wavelet-Transformation, Applet

## Klassenstruktur

Die Klassenstruktur des Applets

Die Starter-Klasse WaveletCompression kann als Applet oder Applikation gestartet werden. Per Parameter werden ihr die URLs bzw. Dateinamen der Bilder übergeben.

GUI: Das MainPanel enthält die GUI-Komponenten und legt Exemplare der verfügbaren ColorSpaces an. Der MainPanelListener stößt die einzelnen Schritte des Kompressionsvorgangs an: Farbraum wandeln, Transformieren, Komprimieren, Rekonstruieren, Farbraum zurückwandeln, Anzeigen.

Core: Über das ColorSpace-Interface kann auf einzelne Farbraum-Implementierungen zugegriffen werden. In der Klasse Compressor ist die Wavelet-Kompression und -Dekompression implementiert. ImageUtil dient zum Umwandeln von Bildern in Arrays und zurück, außerdem kann über getCompressedFileSize() die Größe eines Bildes nach der Kompression bestimmt werden.

Nicht in dieser Übersicht: Die Klasse MainPanel greift auf Objekte vom Typ TextResource zu, um lokalisierte Strings zur Beschriftung zu erhalten. Es liegen Implementierungen für Deutsch und Englisch vor.