XML » SVG Presenter - Carto:net
XML » SVG Presenter - Carto:net
XML » SVG Presenter - Carto:net
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
<strong>XML</strong> <strong>»</strong> <strong>SVG</strong> PRESENTER | STRUKTURIERTE MULTIMEDIA-PRÄSENTATION IM WEB 55<br />
reiche eines Bildes, die „Ranges“, durch jeweils eine kontrahierende Abbildung die auf einen anderen Teilbereich,<br />
der sogenannten „Domain“, des Bildes ausgeführt wird, möglichst gut anzunähern. [vgl. Fick99]<br />
Eine interaktive Java-Anwendung des französischen Eurécom-Instituts [Duge99] visualisiert diesen Sachverhalt<br />
auf anschauliche Weise:<br />
Abb. 3.3.3.1: Eine Range wird an eine Domain angenährt.<br />
1<br />
Wie in [Duge99] deutlich wird, ist die „Domain“<br />
in der Regel größer als die „Range“, auf die sie abgebildet<br />
wird, 2 da die Überführung des ersten in<br />
den zweiten Bildbereich stets durch eine geometrische<br />
(Rotation, Spiegelung etc.) sowie eine Helligkeitstransformation<br />
durchgeführt wird. 3 Hauptproblem<br />
der fraktalen Bildkompression ist nun die<br />
Bestimmung eines IFS für eine Vielzahl möglicher „Ranges“, das die jeweilige Bildvorlage möglichst gut beschreibt.<br />
Es gibt [jedoch] unendlich viele solcher affinen Transformationen… [Daher] ist die Frage, wie viele man<br />
davon braucht, bzw. wie „optimal“ eine gewählte Transformation ist.<br />
[Kres95:44]<br />
Die Mathematik kommt uns hier allerdings einen Schritt entgegen: So müssen die jeweiligen Bildbereiche<br />
nicht „optimal identisch“ sein, sondern sich lediglich „hinreichend“ ähneln. Der hierdurch entstehende Informationsverlust<br />
(„Artefakte“) bildet somit das Abbruchskriterium des ansonsten „NP-harten“ 4 Algorithmus<br />
[vgl. Ruhl:5,43,63], sodass die Qualität bei fraktaler Bildkompression nicht allein durch den Speicherbedarf,<br />
sondern einen ebenso wichtigen Zeitfaktor determiniert wird. Bei Bilddaten mit großer Selbstähnlichkeit<br />
5 lassen sich jedoch bereits mithilfe dieses Ähnlichkeits-Annäherungsverfahrens durchaus ansehnliche<br />
Resultate erzielen, die überdies (schließlich werden mittels IFS-Verfahren Pixel-Daten in mathematische<br />
Gleichungen „übersetzt“) im Gegensatz zu den Raster-Originalen frei skalierbar sind.<br />
Entsprechend dieses in [Fish98] auch praktisch dargelegten Verfahrens existieren daher bereits mehrere<br />
„schlüsselfertige“ Anwendungen, die eine direkte Verwendung fraktaler Bildkompression erlauben. Neben<br />
des im Rahmen einer Diplomarbeit an der Universität Ulm entstandenen, C-basierten 6 FraComp von Andreas<br />
Kassler [vgl. Kass95] sind dies vor allem Java-Klassenbibliotheken [Fick99, 7 DeLo02], obgleich die Java-Programmiersprache<br />
aufgrund ihrer „unerträglichen Langsamkeit“ 8 für den Rechenzeit-intensiven, asymmetrischen<br />
IFS-Algorithmus nur wenig geeig<strong>net</strong> erscheint.<br />
Neben verschiedenen, wenn auch „nicht sehr zahlreichen“ 9 Fraktal-Encodern konnte sich darüber hinaus<br />
das sogenannte Fractal Image Format (kurz: FIF), dem der IFS-Algorithmus der Firma Iterated Systems [vgl.<br />
1<br />
Nach [Duge99]<br />
2<br />
s. Abb. 3.3.3.1. In der Regel ist die „Range“ in der praktischen Anwendung somit 8x8 Pixel und die entsprechende „Domain“ jeweils<br />
16x16 Pixel breit.<br />
3 Quelle: [Fish98] Kap. 6 (pp.119ff)<br />
4 Das heißt, dass es keinen polynomiellen Algorithmus für dieses Problem gibt, falls P != NP gilt, also auf deutsch, dass es keine ‘schnellen’<br />
Verfahren für optimale Kompression gibt.<br />
5 “Fractal encoders are effective for images composed of isolated straight lines and constant regions since these features are self-similar”<br />
[EfSt98] p.35<br />
6 Anm: Leider ausschließlich für Windows-Systeme verfügbar [vgl. Kass95]<br />
7 Der Autor stellt neben seinen theoretischen Ausführungen überdies eine konkrete Fraktal-Implementierung zum Download bereit:<br />
http://www.stud.uni-siegen.de/markus.fick/ZIPS/ZFC10.ZIP [31.1.03]<br />
8 vgl. die Code-Kommentare in [Fick99]<br />
9 vgl. [Ruhl97] pp.4,17