Skalierung (Computergrafik)

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Rastergrafik in Originalgröße
Rastergrafik nach zweifacher Vergrößerung mittels Pixelwiederholung

In der Computergrafik und digitalen Bildbearbeitung bezeichnet Skalierung die Größenänderung eines digitalen Bildes, wobei zwischen Raster- und Vektorgrafiken unterschieden wird. In der Videotechnik wird die Vergrößerung von digitalem Material auch als Hochskalierung (Upscaling) oder Resolution-Enhancement bezeichnet.

Bei der Skalierung von Rastergrafiken wird deren Bildauflösung geändert. Das heißt, dass aus einer vorgegebenen Rastergrafik ein neues Bild mit einer höheren beziehungsweise niedrigeren Anzahl von Bildpunkten (Pixeln) erzeugt wird. Bei der Skalierung einer Vektorgrafik hingegen werden vor der Rasterung die grafischen Primitiven, aus denen sich die Vektorgrafik zusammensetzt, durch geometrische Transformation gestreckt.

Im Gegensatz zur verlustfreien Skalierung von Vektorgrafiken ist die Skalierung von Rastergrafiken in der Regel mit einem sichtbaren Qualitätsverlust verbunden. Vom Standpunkt der digitalen Signalverarbeitung ist die Skalierung von Rastergrafiken ein Beispiel für die Abtastratenkonvertierung, die Umwandlung eines diskreten Signals von einer Abtastrate (hier der örtlichen Abtastrate) in eine andere.

Anwendungen[Bearbeiten]

Die Skalierung von Bildern findet unter anderem Anwendung in Webbrowsern, Bildbearbeitungsprogrammen, Bild- und Dateibetrachtern, Softwarelupen, beim Digitalzoom, der Ausschnittvergrößerung und Erzeugung von Vorschaubildern sowie bei der Ausgabe von Bildern durch Bildschirme oder Drucker.

Die Vergrößerung von Bildern ist auch für den Heimkinobereich von Bedeutung, bei dem HDTV-fähige Ausgabegeräte mit Material in PAL-Auflösung, das z. B. von einem DVD-Player kommt, betrieben werden. Das Hochskalieren wird dabei von speziellen Chips (Video scaler) in Echtzeit durchgeführt, wobei das Ausgangssignal nicht gespeichert wird. Die Hochskalierung steht also im Gegensatz zum Hochkonvertieren eines Materials, bei dem das Ausgangssignal nicht zwingend in Echtzeit erstellt werden muss, aber dafür gespeichert wird.

Skalierungsmethoden bei Rastergrafiken[Bearbeiten]

Skalierung mit Rekonstruktionsfilter[Bearbeiten]

Bildbearbeitungsprogramme bieten üblicherweise mehrere Skalierungsmethoden an. Die am häufigsten unterstützten Verfahren – Pixelwiederholung, bilineare und bikubische Interpolation – skalieren das Bild mittels eines Rekonstruktionsfilters.

Bei der Skalierung muss das vorgegebene Bildraster auf ein unterschiedlich großes Ausgaberaster übertragen werden. Die Skalierung lässt sich daher anschaulich darstellen, indem über das Pixelraster des Eingabebildes das Pixelraster des zu berechnenden Ausgabebildes gelegt wird. Jedem Pixel des Ausgabebildes wird ein Farbwert zugewiesen, der aus den in der Nähe liegenden Pixeln des Eingabebildes berechnet wird. Der verwendete Rekonstruktionsfilter bestimmt, welche Pixel des Eingabebildes zur Berechnung herangezogen werden, und wie ihre Farbwerte gewichtet werden.

Vergrößerung einer 6×6 Pixel großen Rastergrafik auf 11×11 Pixel (die geringen Bildauflösungen in diesem Beispiel wurden zur besseren Verdeutlichung gewählt; das Prinzip ist bei höheren Auflösungen das gleiche).

1) Eingabebild; die Pixel sind hier als Kreise dargestellt.
2) Das Pixelraster des Ausgabebildes, hier als gelbe Kreuze dargestellt, wird über das Eingabebild gelegt.
3) Die Farbwerte des Ausgabebildes werden aus den nahegelegenen Pixeln des Eingabebildes berechnet.
4) Ausgabebild.


Skalierung mittels radial symmetrischem Rekonstruktionsfilter (Träger grün dargestellt). Ein Farbwert des Ausgabebildes wird als durch den Rekonstruktionsfilter gewichtete Summe von Farbwerten des Eingabebildes berechnet.

Bei der Skalierung wird über jedes Pixel des Ausgabebildes ein zweidimensionaler Rekonstruktionsfilter gelegt. Der Farbwert berechnet sich als Summe der Farbwerte der vom Träger des Rekonstruktionsfilters überlappten Pixel des Eingabebildes, gewichtet durch den Wert des Rekonstruktionsfilters an diesen Pixeln.

Üblicherweise nehmen Rekonstruktionsfilter mit zunehmender Entfernung vom Mittelpunkt ab. Dadurch werden nahe am Ausgabepixel gelegene Farbwerte stärker, und weiter entfernter liegende schwächer gewichtet. Die Größe eines Rekonstruktionsfilters bemisst sich am Raster des Eingabebildes und bei der Verkleinerung am Raster des Ausgabebildes.

Manche Rekonstruktionsfilter weisen negative Teilbereiche auf; solche Filter führen zu einer Schärfung des Bildes ähnlich der Unscharfmaskierung. Dabei können Farbwerte außerhalb des erlaubten Wertebereichs entstehen, die dann üblicherweise auf den minimalen bzw. maximalen Wert gesetzt werden. Außerdem muss berücksichtigt werden, dass an den Bildrändern weniger Pixel vom Rekonstruktionsfilter überlappt werden als im restlichen Bild. Um dunkle Pixel an den Bildrändern zu verhindern, muss der Filter hier renormalisiert werden. Dabei wird der ermittelte Farbwert des Ausgabebildes durch die Summe der Werte des Rekonstruktionsfilters an den überlappten Pixeln des Eingabewertes geteilt. Eine weitere Möglichkeit besteht darin, für außerhalb des Bildes fallende Punkte den nächstgelegenen Farbwert am Rand des Bildes zu verwenden.

Konstruktion zweidimensionaler Filter[Bearbeiten]

Beim Vergleich unterschiedlicher Rekonstruktionsfilter können zunächst die eindimensionalen Filter betrachtet werden. Rekonstruktionsfilter, die als Polynome definiert sind, werden auch Splines genannt. Weitere bekannte Filter sind der Lanczos-Filter und der Gauß-Filter.

Es gibt zwei Möglichkeiten, wie aus einem eindimensionalen Rekonstruktionsfilter ein zweidimensionaler erzeugt werden kann, nämlich durch radiale Symmetrie und durch Separation.

Konstruktion durch radiale Symmetrie
Ein zweidimensionaler, radial symmetrischer Rekonstruktionsfilter kann als Rotationsfläche eines eindimensionalen Filters erzeugt werden. Dabei hängt der Filterwert alleine von der Entfernung vom Mittelpunkt ab. Um radial symmetrische Rekonstruktionsfilter anzuwenden, muss daher der euklidische Abstand zu den Pixeln des Eingabebildes berechnet werden. Radial symmetrische Filter führen zu Abtastfrequenz-Welligkeit: bei der Vergrößerung einer einfarbigen Fläche können die Farbwerte von Pixel zu Pixel variieren, es sei denn, bei jedem Pixel wird der Filter renormalisiert.
Konstruktion durch Separation
Bei den meisten Skalierungsmethoden werden separable Filter mit quadratischem Träger verwendet. Bei separablen Filtern kann die Berechnung mittels zweidimensionalem Filter durch eine Reihe von Interpolationen mit einem eindimensionalen Rekonstruktionsfilter ersetzt werden. Hierbei wird zunächst in einem Zwischenschritt für jede der vom Filter überlappten Bildzeilen der interpolierte Punkt an der x-Koordinate des Ausgabepixels berechnet. Anschließend wird aus den so erzeugten vertikalen Punkten der interpolierte Farbwert am Ausgabepixel berechnet.
Separable Filter führen zu Anisotropie: Bildartefakte, die durch separable Filter entstehen, sind nicht isotropisch (in alle Richtungen gleichmäßig) verteilt, sondern bevorzugt horizontal und vertikal ausgerichtet. Da bei separablen Filtern nur eine Folge von eindimensionalen Interpolationen durchgeführt werden muss und keine euklidischen Abstände berechnet werden, sind sie schneller zu berechnen als radial symmetrische Filter.

Der Gauß-Filter ist der einzige radial symmetrische Rekonstruktionsfilter, der zugleich separabel ist. Bei allen anderen Filtern führt die separable und die radial symmetrische Erzeugung zu unterschiedlichen Ergebnissen.

Pixelwiederholung[Bearbeiten]

Bei der Pixelwiederholung, auch Nearest neighbor („nächster Nachbar“) genannt, wird jedem Pixel des Ausgabebildes der Farbwert des nächstgelegenen Pixels des Eingabebildes zugewiesen. Die Verkleinerung von Bildern mit dieser Methode kann zu starken Alias-Effekten führen, die sich als Bildartefakte äußern. Bei der Vergrößerung mittels Pixelwiederholung kommt es zu einer klötzchenartigen, „pixeligen“ Darstellung.

Bei der Vergrößerung entspricht die Pixelwiederholung der Rekonstruktion mit einem 1×1 Pixel großen Box-Filter. Ein solcher Filter überlappt nur ein Pixel des Eingangsbildes, nämlich das nächstgelegene.

Vergrößerung durch Pixelwiederholung


Bilineare Interpolation[Bearbeiten]

Bei der Skalierung mittels bilinearer Interpolation wird ein Farbwert des Ausgabebildes aus den vier nächstgelegenen Farbwerten des Eingabebildes berechnet.

Bei der bilinearen Interpolation wird der Farbwert eines Pixels des Ausgabebildes aus den vier benachbarten Farbwerten des Eingabebildes interpoliert.

Dieser Filter ist separabel und kann als eine Reihe von Interpolationen mit einem eindimensionalen Rekonstruktionsfilter (dem Dreiecksfilter) berechnet werden. Dabei wird erst für jede der zwei beteiligten Bildzeilen ein interpolierter Farbwert berechnet, und anschließend wird zwischen diesen beiden vertikalen Punkten interpoliert. Nach dieser Methode berechnet sich der Farbwert P(x,y) des Ausgabepixels wie folgt:

Q_0 = (1-d_x)P_{00} + d_xP_{10}
Q_1 = (1-d_x)P_{01} + d_xP_{11}
P(x,y) = (1-d_y)Q_0 + d_yQ_1

Die bilineare Interpolation entspricht der Rekonstruktion mit einem Filter der Funktionsgleichung z = (1-|x|)(1-|y|) für x und y in [-1, 1].

Vergrößerung durch bilineare Interpolation


Bikubische Interpolation[Bearbeiten]

Bei der bikubischen Interpolation wird ein Farbwert des Ausgabebildes aus den benachbarten Farbwerten des Eingabebildes mittels kubischen Splines (siehe Mitchell-Netravali-Filter) interpoliert. Es gibt mehrere gebräuchliche kubische Splines mit unterschiedlichen Eigenschaften; der Begriff „bikubische Interpolation“ ist daher mehrdeutig.

Das Bildbearbeitungsprogramm GIMP (Version 2.7) verwendet Catmull-Rom-Splines. Bei diesem Spline-Typ kommt es zum Überschwingen der Farbwerte an Kanten, was sich als Schärfung des Bildes äußert. Das Bildbearbeitungsprogramm Paint.NET (Version 3.36) hingegen verwendet kubische B-Splines, welche zu einer verschwommeneren Darstellung führen. Catmull-Rom-Splines sind außerdem nur C^1-glatt, während kubische B-Splines C^2-glatt sind.[1]

Sowohl GIMP als auch Paint.NET verwenden die separable Variante des zweidimensionalen Rekonstruktionsfilters mit 4×4 Pixel großem Träger. Wie auch bei der bilinearen Interpolation kann der zweidimensionale Filter durch eine Reihe von Interpolationen mit einem eindimensionalen Filter ersetzt werden.

Vergrößerung mit einem separablen Catmull-Rom-Filter


Vergrößerung mit einem separablen kubischen B-Spline-Filter


Weitere Skalierungsmethoden[Bearbeiten]

Beispiel für Vergrößerung durch ein Super-Resolution-Verfahren. Das linke Bild zeigt ein mit Pixelwiederholung zweifach vergrößertes Originalbild aus einer Reihe von neun Bildern. Das rechte Bild zeigt das Resultat einer zweifachen Vergrößerung nach Kombination der neun Ausgangsbilder durch SR.
Super-Resolution-Verfahren
Bei der Skalierung durch so genannte Super-Resolution- (SR-)Methoden werden Informationen aus den Nachbarbildern eines Einzelbildes aus einer Sequenz verwendet. Dabei wird eine höhere Qualität bei höherem Rechenaufwand erreicht. Derartige Methoden sind insbesondere für die Medizin, Astrofotografie und forensische Analyse von Aufnahmen aus Überwachungskameras relevant.[2] Diese Verfahren sind auch für die Hochskalierung im Heimkinobereich interessant; für solche Echtzeitanwendungen werden einfachere Algorithmen verwendet.
Daneben gibt es das Single-Image-Super-Resolution-Verfahren, das durch eine Analyse von Beispielbildern in verschiedenen Auflösungen statistische Informationen ermittelt, die bei der Skalierung angewandt werden. Eine andere Technik ist die Erkennung von im Bild sich wiederholenden Details in unterschiedlichen Größen, die dann basierend auf dem größten Detail skaliert werden.[3]
Inhaltsabhängige Bildverzerrung
Die inhaltsabhängige Bildverzerrung ist ein Verfahren, mit dem die Seitenverhältnisse von Bildern unter Beibehaltung relevanter Bildinhalte verändert werden.
Skalierung von Pixel-Art
Zur Vergrößerung von Pixel-Art-Bildern mit harten Kanten wurden spezielle Algorithmen entwickelt, die bei diesen Bildtypen bessere Ergebnisse als die oben beschriebenen Methoden liefern. Einige dieser Algorithmen können Bilder in Echtzeit auf ein Zwei-, Drei- oder Vierfaches der Originalgröße skalieren, während andere eine Vektorgrafik ausgeben.[4]
Skalierung eines Pixel-Art-Bildes auf 300 % durch Pixelwiederholung
Skalierung durch den Hq3x-Algorithmus[5]

Nichtlineare Skalierung von Vektorgrafiken[Bearbeiten]

Anforderungen an technische Grafiken[Bearbeiten]

Technische Zeichnungen wie Konstruktions-, Bau- und Vermessungspläne sowie Karten enthalten neben der Objektgeometrie zusätzlich Symbole, Maßangaben und erläuternde Texteinträge. Diese Zeichnungen basieren auf reiner Vektorgrafik und sind deshalb auch leicht zu beeinflussen. Die Gestaltung dieser Pläne ist durch allgemeine und branchenspezifische Zeichnungsnormen und Musterblätter soweit vereinheitlicht, dass die Nutzer diese Planinhalte interpretieren und umsetzen können. Als Mittel zur einheitlichen Plangestaltung dienen

  • Symbole für kleinräumige Objekte, Punktdarstellung und Standardbauteilen
  • Strichmuster für verschiedene Linientypen (z. B. verdeckt / sichtbar)
  • Hervorhebung wichtiger Linien durch vergrößerte Linienbreite
  • Flächendarstellung durch Umfangslinien, Schraffuren oder Farbflächen
  • Maßangaben mit Maßketten
  • Objekten zugeordnete Texte für spezielle Aussagen oder Informationen.

Bei technischen Zeichnungen ist eine gute Plangestaltung wichtig, um den Planinhalt zu interpretieren. Dazu gehört, dass die Darstellung des wesentlichen Planinhaltes und die erläuternden Zusatzangaben in einem ausgewogenen Verhältnis stehen, was nur in dem Skalierungsbereich möglich ist, der diese Anforderungen erfüllt. Zur Ausgabe müssen Vektorgrafiken in Rastergrafiken umgerechnet werden, deren Grenzen damit auch für Vektorgrafiken bei der Ausgabe gelten. Vergrößerungen sind generell unproblematischer, hier begrenzt die Plangröße die Skalierung. Bei Verkleinerungen stehen jedoch für die gleiche Informationsdichte weniger Pixel zur Verfügung; die Darstellung wirkt dann schnell überladen und ist schwer differenzierbar.

Im Zuge dieser Konvertierung ist es aber möglich, die Ausgabe zu beeinflussen, beispielsweise zu kleine und daher undeutlich erkennbare Details auszublenden. Bei Symbolausgaben, Texteinträgen und Maßangaben ist allgemein die Wichtigkeit des Eintrages durch die Größe der Darstellung zu erkennen, was für eine gute Übersicht sorgt, denn der Plannutzer gewinnt so leichter einen Gesamteindruck und kann sich besser in den Planinhalt einarbeiten. Nachrangige Details sind dagegen durch kleine, aber noch lesbare Darstellung gekennzeichnet. Diese Darstellungsweise ermöglicht es in einem gewissen Umfang die Informationsdichte automatisch zu steuern.

Probleme bei linearer Skalierung[Bearbeiten]

Jede zusätzliche Information in einer Grafik benötigt eine freie Fläche, denn sie soll die primäre Objektdarstellung höchstens so weit überlagern und verdrängen, dass diese Lücke in der Wahrnehmung „übersprungen“ werden kann. Die Informationsdichte eines Planes legt somit den Grundmaßstab der Darstellung fest. Einer Verkleinerung sind enge Grenzen gesetzt, weil Texte und Symbole unter einer gewissen Größe, ungefähr 1,3 mm, nicht mehr lesbar sind. Auch Vergrößerungen sind nicht beliebig machbar. Durch lineare Skalierung werden die im Grundplan bewusst zurückhaltend dargestellten Zusatzinformationen schnell sehr dominant und stören damit den Gesamteindruck erheblich. Bei einer Skalierung um den Faktor 2 wächst die durch Symbole und Texte belegte Planfläche quadratisch um den Faktor 4 und drängt sich in der Wahrnehmung mehr in den Vordergrund. Bei Flächenschraffuren dagegen verfällt der Flächeneindruck einer Schraffur, weil der Schraffurabstand zu groß wird und mehr den Eindruck paralleler Einzellinien annimmt. Die Wahrnehmung der wesentlichen Planinhalte wird durch zu große Zusatzinformationen schwieriger und ergibt insgesamt eine schlechtere Planqualität.

Maßstab 1:250

Das Beispiel zeigt einen kleinen Ausschnitt aus einem topographischen Plan als Grundlage für eine Planung; der Ausgangsmaßstab beträgt wegen der hohen Informationsdichte 1:250. Dargestellt sind ein Pumpwerk, die Bruchkanten des Geländes, Böschungen und Wegränder, Höhenlinien, sowie einige wichtige Leitungen. Zusätzlich eingeblendet wurden die aufgenommenen Punkte mit Höhenangaben, welche die Grundlage des digitalen Geländemodells bilden.

Bei der Verkleinerung auf den Maßstab 1:500 (Skalierungsfaktor 0,5) unterschreiten die zusätzlichen Höhenangabe die Lesbarkeitsgrenze und entfallen. Nur zwei wichtige, folglich hervorgehobene Punkte sind jetzt noch mit zusätzlichen Angaben verknüpft. Die Darstellung ist folglich nur noch als Übersicht brauchbar, weil genaue Höhenangaben jetzt fehlen.

Bei der Vergrößerung auf 1:100 (Skalierungsfaktor 2,5) sind die Zusatzangaben und die untergeordneten Hilfslinien im Vergleich mit den wichtigen Geländebruchkanten sehr dominant, welche dadurch etwas zurückgedrängt wirken.

Verbesserungen durch nichtlineare Skalierung[Bearbeiten]

Eine bessere Darstellung der Zusatzangaben im Rahmen der möglichen Skalierungsbreite bringt eine Skalierung mit der Wurzel aus dem Skalierungsfaktor, so dass deren Flächenanspruch mit dem Skalierungsfaktor der Grundrissgeometrie linear übereinstimmt. Gekoppelt mit einer automatischen Positionierung der Textlagen entsprechend der sich ergebenden Freiflächen kann so ein Informationsverlust vermieden werden, nicht jedoch eine verschlechterte Darstellungsqualität im Grenzbereich der Skalierung.

Die Verkleinerung auf den Maßstab 1:500 (Skalierungsfaktor 0.5 / 0.7) geht noch ohne Informationsverluste, bringt jedoch die automatische Textpositionierung an die Grenzen ihrer Möglichkeiten. Die Planqualität ist schlecht aber noch brauchbar, falls nur eine Bildschirmansicht oder ein temporärer Arbeitsplan in einem handlichen Format für Entwurfszwecke benötigt wird.

Die Vergrößerung auf den Maßstab 1:100 (Skalierungsfaktor 2.5 / 1.6) ist gut brauchbar und bedarf somit keiner Nacharbeit. Zwar treten hier die Hilfslinien auch etwas deutlicher in den Vordergrund, die Zusatzinformationen bleiben aber so zurückhaltend, dass die Darstellung der wichtigen Geländekonturen nicht verdrängt wird.

Literatur[Bearbeiten]

Einzelnachweise[Bearbeiten]

  1. James Foley u.a.: Computer Graphics: Principles and Practice, S. 515. Addison-Wesley, Reading 1996, ISBN 0-201-84840-6
  2. Siehe etwa Video-to-Video Dynamic Super-Resolution for Grayscale and Color Sequences. EURASIP Journal on Applied Signal Processing 2006 (2006), Article ID 61859, ISSN 1110-8657 (3,2 MB)
  3. Siehe etwa Daniel Glasner u.a.: Super-Resolution From a Single Image. ICCV (IEEE International Conference on Computer Vision) 2009
  4. Siehe etwa Johannes Kopf, Dani Lischinski: Depixelizing Pixel Art. ACM Transactions on Graphics 30, 4 (Juli 2011): 99:1–99:8, ISSN 0734-2071 (Online)
  5. hq3x Magnification Filter