Leitseite
Spielen mit 1. Applet
Zurück

Sind da nicht noch kleine Schönheitsfehler?

Wenn man genauer hinsieht, fallen bei manchen der Filmchen, insbesondere wenn die transformierten Schachbrettmuster besonders groß werden, gewisse Moiré-Muster auf. An den betreffenden Bildern sind dann die farbigen Flächen mit weißen Punkten "gesprenkelt". Hier folgt ein solches Einzelbild, das aus dem letzten der 8 Filmchen entnommen ist. Es ist dabei der Transformationsparameter b3 von ursprünglich b3 = -1.11449E-3 um den Faktor 1.44 auf b3 = -1.60486E-3 verändert worden.

Wie kommen diese auffallenden Farblücken zustande?

Der Transformationsalgorithmus verläuft ja so, dass das Originalschachbrettmuster spalten- und zeilenweise lückenlos durchgegangen wird. Das jeweilige x,y-Koordinatenpaar wird dann der Transformation unterworfen und es resultieren die Zielkoordinaten X und Y. An diesen Zielpunkt mit seinen Koordinaten X,Y wird nun der Farbwert des Originals von der Stelle x,y übertragen.

Nun kann man an den weißen Stellen erkennen, dass die lückenlose Folge von Punkten einer Zeile im Original bei der Transformation im Zielbild offenbar Lücken entstehen lässt, die also "als Zielkoordinaten nie vorkommen". Vielleicht entsteht dieser Effekt beim Runden der reellwertigen Zielkoordinaten auf die notwendigerweise ganzzahligen Pixelkoordinaten des transformierten Bildes und dies naturgemäß besonders bei stärkerer Vergrößerung. Wenn also die Fläche des Schachbrettmusters im Bild größer ist als im Original, wird der Effekt deutlicher in Erscheinung treten.

Will man nun die Fehlstellen vermeiden, dann muss man die Frage stellen, welche Koordinaten im Original (x und y) einer Leerstelle im Bild mit den Bildkoordinaten X,Y "am ehesten entsprechen". Man wird dann im Bild an der "weißen" Stelle den Farbwert des Punktes x,y aus dem Original eintragen. Bei einem solchen Vorgehen wird dann ein Farbwert aus dem Original von der Stelle x,y im entstehenden Bild möglicherweise nicht nur an einer sondern an zwei oder mehr Stellen auftauchen

Dass das Verfahren funktioniert, möchte ich Ihnen gleich hier zeigen:

Ein Rezept zur Beseitigung der oben gezeigten weißen Lücken im Bild kann also folgendermaßen funktionieren: Es werden systematisch alle Stellen (X,Y-Koordinatenwerte) des "zukünftigen" Bildes durchgegangen und mit Hilfe einer rückwärtigen Projektivtransformation die entsprechende Stelle im Original berechnet, der Farbwert von dort "abgeholt" und an der Bildstelle eingetragen. So wird nun wirklich jede Stelle im Bild mit einem Farbwert ausgestattet. Naturgemäß wird dabei ein einziger Bildpunkt des Originals an mehreren, nahe benachbarten Stellen im Bild auftauchen, also bisweilen über mehrere Bildpixel "verschmiert" wieder erscheinen und damit ein gewisser Verlust an "Bildschärfe" einhergehen.

Am obigen Beispiel möchte ich das Verfahren etwas genauer darstellen. Wie im Grundsatz hier schon beschrieben, lauten die 8 Parameter für die Transformation des Schachbrettmusters, im obigen speziellen Fall:

a1 = 0.57385
b1 = 0.05802
c1 = 76
a2 = -0.10785
b2 = 0.23868
c2 = 132
a3 = 6.75088E-4
b3 = -1.60486E-3

Für die Rückwärtstransformation nach den beiden Formeln

und

lauten jetzt aber die neu berechneten Parameter:

d1 = 3.12489
e1 = - 1.26949
f1 = - 69.91947
d2 = 1.36251
e2 = 3.61483
f2 = -580.70791
d3 = - 1.0247E-4
e3 = 6.57329E-3

Wie man leider feststellen muss, ist der Zusammenhang der je 8 Parameter für die obige Transformation in hinwärtiger und in rückwärtiger Richtung - wenigstens für mich - nicht zu erkennen. Man muss die Parameter für die inverse Projektionsrichtung also ziemlich mühsam berechnen, was dann doch "mit aller Schicksalhaftigkeit" die Frage nach dem Verhältnis von Aufwand und Nutzen aufkommen lässt. So habe ich also bei meinen acht Filmchen darauf verzichtet!

Zurück

weiter zu einem Applet, das zum Spielen mit den 8 Parametern einlädt

Diese Seite wurde erstellt am: 19.01.2005

Letzte Aktualisierung: 4.02.2005