CMOS
Matrix Error
Man ist gerade auf
Tour und mitten in der Arbeit fällt die Kamera aus. Die CMOS-Sensorik
oder die Periferieelektronik streikt. Meist werden die Folgen erst später
bei der Besichtigung bemerkt, denn im kleinen Preview-Display sind detailierte
Bildfehler oftmals nicht erkennbar. Was kann man machen ? Ist das Material noch
brauchbar ?
So eine Situation beschreibt
Mischa Purcell in seinem Artikel "Missing
lines in images" im photo.net
Forum. Am Ausschnitt-Areal kann man zeigen, wie regelmäßige
Störungen mit relativ wenig Aufwand zu korrigieren sind und welches Ergebnis
zu erwarten ist. Wie Image-Processing bei lokalisierbarem Informationsverlust im
Grundprinzip genutzt werden kann, soll kurz motiviert werden.
Zunächst
ermitteln man die Beschaffenheit der Störungsstruktur. Auffällig
sichtbar ist das Störungsmuster, das sich parallel zur Y-Richtung
ausbreitet und eine Regelmäßigkeit aufweist. Bei regelmäßigen
und konstanten Strukturen reicht als Korrekturansatz schon ein geeignetes
Testareal.
Also sehen wir uns
die Störung genauer an: Nicht nur schwarze Balken laufen durch das
Bild, es sind parallel dazu auch regelmäßige Helligkeitsunterschiede
erkennbar. Im Intensitätsprifil kann man die hellen Störungs-Zonen
deutlich unterscheiden. Sie sind fast durchgängig konstant und haben einen
ausreichenden Abstand zueinander. Aus diesem Störungsmuster kann die erste
Korrekturmatrix entstehen ...
Eine
Korrekturmatrix ist nichts anderes als die ortsabhängige
Differenz zum Erwartungswert, also zur idealisierten Ergänzung,
die den Unterschied zwischen Störung und gemitteltem
Original darstellt. Die fehlenden Differenzen werden
der originalen Imagematrix hinzu addiert als positiver oder
negativer Wert zur Rekonstruktion der (unbeschädigten) Originalmatrix.
Das Grundprinzip sieht etwa so aus:
( Korrekturmatrix ) = ( Imagematrix ) - SUM ( lokale Erwartungswerte ) / N
( Originalmatrix ) = ( Imagematrix ) + alpha(x,y) * ( Korrekturmatrix )
Die
Imagematrix ist das beschädigte Abbild, Korrekturmatrix (Differenz)
enthält Störung mit einem ortsabhängigen
Korrekturfaktor (Limiter) und die Originalmatrix ist das ideale Zielergebnis. Das
Störungssignal läßt sich separieren in Farben und in Intensitäten.
Es
sind vier verschiedene Störungssignale, die man
entweder direkt durch einen summativen Mittelwert (schneller,
aber weingiger kontrollierbar) oder durch jeweils eine Korrekturmatrix
pro separiertem Störungssignal (zeitaufwändiger, aber besser
justierbar) abarbeiten kann.
Der
rot markierte Bereich zeigt den geringsten Unterschied
zum Mittelwert, er kommt einem unbeschädigtem
Orignalabbild am nächsten. Der gelbe Bereich
ist die Folge des internen Schärfefilters,
somit entsteht das zweite Fehlermuster im Processing
hinter dem CMOS-Sensor (das primäre Fehlersignal
wird von der Processing-Baugruppe als Bildinhalt erkannt
und daher nachgeschärft). Der schwarz markierte
Bereich hat die stärkste Abweichung vom Mittelwert
und ist im Original besonders störend auffällig.
Die schwarzen Linien markieren den Zeilenausfall, also den
Sensor-Defekt (CMOS/Periferal-Circuit) und er ist die eigentliche
Ursache für die Störung. Da der CMOS-Defekt
sich auf alle Farbkanäle etwa gleich auswirkt,
ist daraus zu erkennen, daß die Farbseparierung
funktioniert.
Die
Arbeitsweise der Korrektur orientiert sich an der stärksten
Abweichung vom idealen Erwartungswert hin zum geringsten Störungssignal
mit der kleinsten Abweichung. Der Erwartungswert wird generiert
aus Probemessungen von ungestörten Arealen und abgleichend
berechnet aus jeweils der halben Störungslänge.
Die Qualität der Freistellung ist wieder abhängig vom
Differenz-Abbildung z.B.
( Differenz ) = ( Imagematrix ) - beta * ( Gauss,Lorentz )
und sie liefert
mit dem Vorfaktor (Limiter, IF-Operator, Schwellenwert usw) eine
bereinigte Korrektur. Normalerweise enthält die (1:1) Differenzmatrix
je nach Spektrum naturgemäß nur kleinere Intensitäten
mit schwachen Farbanteilen auf schwarzem Hintergrund und man kann kaum
etwas erkennen. Die starke Störungslinie hebt sich
jedoch deutlich genug ab, wenn am das Korrekturabbild (nur zur Ansicht)
invertiert und kointrastiert. Das sieht dann etwa so aus:
Die Ansicht der
ersten Differenzmatrix (aufgehellt und invertiert) zeigt die stärkste
im Abbild enthaltene Störungsstruktur. Man könnte zwar die Differenzen
durch Iteration präzisieren, je nach Aufwandsbereitschaft, was aber für
dieses Beispiel nicht erforderlich ist. Der primäre Zeilenfehler
läßt sich sauber erkennbar isolieren mittels extremer
Kontrastierung, sodaß zusätzlich eine schützende
Maske entsteht.
Nach
Anwendung der ersten Differenzmatrix sind zwar die
Balken eliminiert, aber es verbleiben die Helligkeitsunterschiede
der zweiten Störungsfreuenz. Die Helligkeitsstörung
beeinträchtigt die Objektinformation weniger,
wärend schwarze oder weiße Linien einen
Totalverlust darstellen.
Das nächste
Processing muß die noch verbliebene zweit stärkste Störung
separieren, die man zur Herstellung der nachfolgenden Diffenzmatrix anwenden
kann. Dieses Störungsmuster besteht ebenfalls aus nahezu konstanten
Werten mit gleichem Abstand.
Also
die ganze Prozedur nochmal und man sieht jetzt, daß
die zweite Korrektur die Linienmuster auf hellem Hintergrund
schon recht brauchbar eliminiert.
Sie
hinterläßt aber noch ein sichtbares Störungsprofil
auf einem Hintergrund, dessen Farbwert zwischen 225
und 110 liegt. Das noch verbliebene Störungsmuster
muß an den entsprechenden Zonen eliminiert werden,
wo es sich auf dem Hintergrund durchsetzt.
[ weiter
... ]
|