-
Die vorliegende Erfindung betrifft ein Verfahren zur Detektion und Korrektur von lateraler chromatischer Aberration, eine entsprechende optische Bildverarbeitungseinrichtung und ein entsprechendes Computerprogrammprodukt.
-
Stand der Technik
-
Chromatische Aberration (CA), Achromasie oder chromatische Verzerrung bezeichnet einen Fehler optischer Linsen im Zusammenhang mit dem Fokussieren aller Farben auf den gleichen Konvergenzpunkt in einem gewissen Abstand von der Linse (axiale oder longitudinale chromatische Aberration) und/oder an einem gewissen Ort in der Fokusebene (transversale oder laterale chromatische Aberration). Beide Arten von Aberration werden durch verschiedene Brechungsindexe von Linsen für unterschiedliche Wellenlängen verursacht (Dispersion).
-
Chromatische Aberration ist bei Bildern in Form von Farbsäumen entlang den Grenzen zwischen dunklen und hellen Bereichen (Kanten) ersichtlich. Die optischen Effekte der longitudinalen und lateralen chromatischen Aberration unterscheiden sich dadurch, dass longitudinale chromatische Aberration überall in dem Bild Säume verursacht, während laterale chromatische Aberration Objekte betrifft, die sich weiter von der Bildmitte entfernt erstrecken. Säume, die durch laterale chromatische Aberration verursacht werden, sind im Gegensatz zu denen, die durch longitudinale chromatische Aberration verursacht werden, in der Regel nicht in der Bildmitte (die in der Regel mit der Linsenmitte zusammenfällt) zugegen und verstärken sich zunehmend in Richtung der Bildecken.
-
Die Durchführung einer Farbtrennung, die mit der digitalen Bildverarbeitung verbunden ist, wird stark durch die laterale chromatische Aberration und die daraus folgende Fehlausrichtung der unterschiedlichen Farbebenen beeinträchtigt.
-
Chromatische Aberration kann reduziert oder eliminiert werden, indem achromatische und apochromatische Linsen, die Gläser mit unterschiedlicher Dispersion umfassen, verwendet werden. Derartige Linsen sind jedoch schwer und teuer. Eine Reduzierung der chromatischen Aberration durch Abblenden von Linsen ist besonders im Fall der lateralen chromatischen Aberration nicht immer praktisch, erwünscht oder effektiv.
-
Verfahren zur Reduzierung der lateralen chromatischen Aberration, die im Folgenden mit LCA bezeichnet wird, sind aus
US 2008/0284869 A1 ,
US 7,221,793 B2 ,
US 2008/0291447 A1 ,
US 6,747,702 B1 ,
US 7,227,574 B2 ,
US 2009/0052769 A1 ,
US 7,577,292 B2 ,
US 2007/0242897 A1 ,
US 7,346,210 B2 ,
US 7,142,238 B1 ,
JP 2002 320237 A ,
US 7,425,988 B2 ,
JP 2000 299874 A ,
US 2008/0007630 A1 ,
US 7,466,495 B2 ,
US 2008/0062409 A1 und
US 7,356,198 B2 bekannt.
-
Die Verfahren des Stands der Technik besitzen jedoch erhebliche Nachteile. In einigen Fällen werden zur Korrektur von LCA-Artefakten im Voraus berechnete LCA-Modellparameter für eine gewisse Linsenart in Form einer Nachschlagtabelle verwendet. Diese Verfahren sind somit auf die spezifische Linse, die durch die Nachschlagtabelle beschrieben ist, beschränkt. Andere Dokumente des Stands der Technik offenbaren lediglich die LCA-Korrektur, ohne die spezifischen Eigenschaften von Linsen und der bestehenden LCA zu beachten, und können Artefakte somit unter- oder überkorrigieren. In einigen Fällen wird auf spezifische Artefakte, die als „lila Farbsaum” bezeichnet werden, unabhängig von ihrem Ursprung, in Form eines Nachbearbeitungsschrittes abgezielt. In der Regel eignen sich Verfahren des Stands der Technik nicht für die Korrektur der auf LCA zurückzuführenden Auflösungsverluste.
-
Somit besteht ein Bedarf an verbesserten Arten der Detektion und Korrektur von lateraler chromatischer Aberration.
-
Offenbarung der Erfindung
-
Erfindungsgemäß sind ein Verfahren zur Detektion und Korrektur von lateraler chromatischer Aberration, eine entsprechende optische Bildverarbeitungseinrichtung und ein entsprechendes Computerprogrammprodukt gemäß den unabhängigen Ansprüchen vorgesehen. Bevorzugte Ausführungsformen sind Gegenstand der abhängigen Ansprüche und der Beschreibung.
-
Vorteile der Erfindung
-
Im Gegensatz zum Stand der Technik umfasst die vorliegende Erfindung die Bereitstellung eines LCA-Modells zur Schätzung der LCA-Vergrößerungs- oder -Verschiebungsparameter caR und caB, die einer chromatischen Aberrationsverschiebung der roten und blauen Farbebene oder -Komponente mit Subpixel-Genauigkeit entsprechen, von einem beliebigen Eingangsbild. Das Verfahren benötigt somit nicht die Verwendung eines im Voraus bekannten Bezugsbilds. Auf Basis des LCA-Modells verwendet man einen Feedback-Regelkreis unter Verwendung eines Residuenverfahrens und/oder einer Suche nach dem globalen Minimum zum Erhalten eines Parameters, um eine optimale Korrektur der LCA-Verschiebung zwischen der roten (R), grünen (G) und blauen (B) Farbebene durchzuführen. Schließlich führt man mit den bestimmten LCA-Parametern eine LCA-Korrektur durch, um LCA-Verformungen aus dem Bild zu entfernen.
-
Weitere Vorteile und Ausführungsformen der Erfindung werden aus der Beschreibung und den begleitenden Zeichnungen ersichtlich. Es sollte bemerkt werden, dass die oben erwähnten Merkmale, die im Folgenden erklärt werden, nicht auf die angegebenen Kombinationen begrenzt sind, sondern ebenso in anderen Kombinationen oder alleinstehend einsetzbar sind, ohne dabei vom Umfang der vorliegenden Erfindung abzuweichen.
-
Die Erfindung wird durch Ausführungsformen in den Zeichnungen veranschaulicht und mit Bezug auf die Zeichnungen beschrieben.
-
Figuren
-
1 zeigt einen schematischen Überblick über ein Verfahren gemäß einer bevorzugten Ausführungsform der Erfindung.
-
2 zeigt einen durch eine LCA-Modellfunktion beschriebenen Verschiebungsvektor gemäß einer bevorzugten Ausführungsform der Erfindung.
-
3 zeigt die Prinzipien der Bestimmung eines Verschiebungsvektors gemäß einer bevorzugten Ausführungsform der Erfindung.
-
4A bis 4C zeigen eine Kante in einem Bild mit hoher LCA und abgeleitete Signale zur Bestimmung eines LCA-Maßes gemäß einer bevorzugten Ausführungsform der Erfindung.
-
5A bis 5C zeigen eine Kante mit geringer LCA und abgeleitete Signale zur Bestimmung eines LCA-Maßes gemäß einer bevorzugten Ausführungsform der Erfindung.
-
6A bis 6C zeigen Akzeptanzmasken auf Basis einer Entfernung von einer Bildmitte, der Größe einer G-Kante und der Größe von R-, G- und B-Kanten gemäß einer bevorzugten Ausführungsform der Erfindung.
-
7 zeigt schematisch Schritte zum Optimieren eines Parameters zur LCA-Reduzierung gemäß einer bevorzugten Ausführungsform der Erfindung.
-
8 zeigt schematisch Schritte zum Optimieren eines Parameters zur LCA-Reduzierung gemäß einer bevorzugten Ausführungsform der Erfindung.
-
9 zeigt schematisch Schritte eines Verfahrens gemäß einer bevorzugten Ausführungsform der Erfindung.
-
1 gibt einen schematischen Überblick über ein Verfahren 100 gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung.
-
Das Verfahren 100 umfasst anfänglich die Bereitstellung von Bilddaten (Schritt 1), z. B. von einem Bildsensor oder von einer Datenspeicherungseinrichtung, und einen geeigneten Signalvorbearbeitungsschritt 2 der bereitgestellten Bilddaten.
-
In Schritt 3 findet eine anfängliche LCA-Korrektur in Form einer Interpolation (zum Beispiel einer bilinearen Interpolation) statt auf Basis einer Funktion, die aus dem LCA-Modell abgeleitet ist und mit einem geschätzten Parameter oder Parametersatz caR und caB beliefert wird. Die entsprechend behandelten Bilddaten werden einer Farbtrennung 4 unterzogen, was zu R-, G- und B-Farbdaten führt.
-
Die R-, G- und B-Farbdaten werden in einen Feedback-Regelkreis 50 gegeben, der einen LCA-Messungsschritt 5 gemäß einer bevorzugten Ausführungsform der Erfindung umfasst, was vorzugsweise zu Zwischenfarbdifferenzwerten zwischen den R-, G- und B-Farbkanälen, ΔRG, ΔBG und ΔRB, führt. Diese Zwischenfarbdifferenzwerte, die auf Zwischenfarbdifferenzen basieren, sind wie im Folgenden beschrieben zur Beschreibung lateraler chromatischer Aberration geeignet. Die erhaltenen Zwischenfarbdifferenzwerte werden in einem Berechnungsschritt 6 dazu verwendet, optimale Korrekturparameter caR und caB (zusammen als caRB bezeichnet) für das im LCA-Korrekturschritt 3 verwendete Modell zu finden.
-
Wenn mittels des Feedback-Regelkreises 50 eine ausreichende Korrektur erhalten werden konnte, optimieren entsprechend korrigierte Bilddaten die Leistung des Farbtrenners 4 und der (herkömmlichen) weiteren Bildbearbeitungskette 7.
-
Im Folgenden wird das in der Erfindung angewandte LCA-Modell beschrieben.
-
Die vorliegende Erfindung umfasst im Wesentlichen ein Resampling von R- und B-Daten (d. h. Farbkomponenten), um die laterale chromatische Aberrationsverschiebung zu korrigieren. LCA-Fehlausrichtung von Farbkomponenten kann pixelweise mit einem Polynom 3. Ordnung modelliert werden: f(r) = caRB3·r3 + caRB2·r2 + caRB1·r1 + caRB0, wobei r für eine radiale Entfernung des aktuellen Pixels von der Mitte des Sensors steht (fällt in der Regel, aber nicht immer, zusammen mit der Mitte der Linse), caRB die Parameter des LCA-Modells für die R(caR)- und B(caB)-Farbebenen sind und caRB0 eine laterale chromatische Aberration in der Mitte des Bilds beschreibt. Die caRB-Parameter können in einem ersten Schritt geschätzt werden.
-
Die obige Fehlausrichtungsfunktion kann aus Gründen der Robustheit und erleichterter Parameterschätzung zu einer Polynomform erster Ordnung vereinfacht werden, f(r) = caRB·r.
-
Die Funktion f(r) beschreibt eine Verschiebung der R-(und B-)Pixel mit Bezug auf den G-Pixel (der als Bezug genommen wird) und wird in 2 als ein Verschiebungsvektor d, dargestellt durch (dRBx, dRBy), gezeigt.
-
2 zeigt die bilineare Interpolation auf einem Pixelraster 10 mit Achsen x und y. Die obere linke Bildecke ist als die Koordinaten (x, y) = (0, 0) aufweisend definiert. x und y seien demnach Pixelkoordinaten, jeweils beginnend mit 0 in der oberen linken Bildecke und nach rechts bzw. unten hin zunehmend.
-
In 2 sind die reellen Werte von R- oder B-Pixeln an einer Position (x, y) nicht die, die an dieser Position gemessen werden, sondern sind von Position (x, y) auf einen neuen Ort 20, der durch den Verschiebungsvektor d definiert ist, verschoben. Diese neue Position 20 liegt meistens nicht auf dem bestehenden Pixelrasta 10, so dass der Intensitätswert an der Position 20 aus seinen Nachbarn geschätzt werden muss. Im Fall der bilinearen Interpolation werden z. B. vier Pixel k, l, m und n um die reelle Pixelposition 20 unter Betrachtung des Verschiebungsvektors d gewählt. Der ganzzahlige Teil des Verschiebungsvektors d in dem Pixelraster 10 bestimmt, welcher der vier Pixel k, l, m und n zu verwenden sei, und der Bruchteil des Verschiebungsvektors d bestimmt die Gewichtungen wx und wy für die Interpolation, um den Intensitätswert bei der Position 20 zu erhalten.
-
Vorteilhafterweise wird aufgrund seiner Einfachheit ein bilineares Resampling, wie es oben umrissen wurde, durchgeführt. Bikubisches oder ein anderes Resampling ist ebenfalls möglich, jedoch etwas teurer, da Berechnungen mit mehr Pixeln (zum Beispiel 16) und somit mehr Speicherzeilen (3 oder mehr statt 1) nötig sind.
-
Die Prinzipien des Bestimmens eines Gesamt-LCA-Vektors, einschließlich des Verschiebungsvektors d und eines Positionsvektors eines Pixels (x, y) werden in 3 gezeigt, wobei wie in 2 ein Pixelraster 10 gezeigt wird und die obere linke Bildecke eines Bilds als die Koordinaten (x, y) = (0, 0) aufweisend definiert ist.
-
Wie aus 3 ersichtlich setzt sich die Endposition des verschobenen Pixels zusammen aus dem Verschiebungsvektor d, der die Verschiebung eines Pixels (x, y) durch LCA beschreibt, und einer Position des aktuellen Pixels (x, y), die durch den Vektor r gegeben ist, der in Bezug auf eine Bildmitte (XC, YC) dargestellt ist. Die durch die Vektoren d und r definierten Positionen können jeweils als (dx, dy) und (rx, ry) angegeben werden.
-
Die Endposition des Pixels wird für jeden verarbeiteten R- und B-Pixel berechnet. Der Vektor d hängt von den chromatische-Aberration-Parametern caR (oder caB, zusammen als caRB bezeichnet) ab, wie bei d = caRB·r, und der Vektor r hängt von der Position, d. h. dem radialen Abstand des Pixels mit Bezug auf die optische Bildmitte (XC, YC), ab. Wie aus 3 ersichtlich kann das horizontale Verschieben durch dx = d·cosθ = d·rx/r = caRB·r·rx/r = caRB·rx = caRB·(x – XC) gegeben werden.
-
Ähnlich auch dy = d·sinθ = d·ry/r = caRB·r·ry/r = caRB·ry = caRB·(y – YC).
-
Damit kann der Verschiebungsvektor hinsichtlich der x- und y-Position des aktuellen Pixels in dem Bild dargestellt werden, ohne dass sein radialer Abstandsvektor r berechnet werden muss. Demnach erhält man, wenn das Obige für die R- und B-Farbebene getrennt geschrieben wird (man beachte, dass caR und caB umgekehrte Vorzeichen haben): dRx(x, y) = caR·(x – XC); dRy(x, y) = caR·(y – YC), und dBx(x, y) = caB·(x – XC); dBy(x, y) = caB·(y – YC).
-
Falls ein LCA-Verschiebungsmodell 3. Ordnung verwendet wird, sind caRB nun Vektoren mit 4 Elementen: caRB = [caRB3 caRB2 caRB1 caRB0], und die entsprechenden Verschiebungsvektoren für eine Position (x, y) sind: dRx(x, y) = caR3·(x – Xc)3 + caR2·(x – Xc)2 + caR1·(x – Xc)1 + caR0, dRy(x, y) = caR3·(y – Yc)3 + caR2·(y – Yc)2 + caR1·(y – Yc)1 + caR0, dBx(x, y) = caB3·(x – Xc)3 + caB2·(x – Xc)2 + caB1·(x – Xc)1 + caB0, dBy(x, y) = caB3·(y – Yc)3 + caB2·(y – Yc)2 + caB1·(y – Yc)1 + caB0.
-
Hier sind caR0 und caB0 gegenwärtig, um die Möglichkeit zu bieten, dass der Wert der LCA in der optischen Mitte des Bilds ungleich null ist. Sollte jedoch andererseits die optische Mitte der Linse (und damit ein Bezug, Nullpunkt für die LCA) nicht mit der Bildmitte zusammenfallen, muss ein Versatz eingeführt werden: Xc = Gesamtzahl von Pixeln (horizontal)/2 + Versatz (horizontal) und Yc = Gesamtzahl von Pixeln (vertikal)/2 + Versatz (vertikal).
-
Sind alle Modellparameter und alle Verschiebungsvektoren bekannt, muss man in einem letzten Schritt einen Ausgabepixelwert erhalten, der einen reellen Wert darstellt, der auf einer Position (x, y) hätte liegen sollen, wenn keine LCA vorgelegen hätte. Mit anderen Worten soll ein Wert gefunden werden, der sich zur Korrektur oder zum Entgegenwirken der LCA eignet. Hierzu können verschiedene Interpolationstechniken verwendet werden, wie zum Beispiel die bilineare Interpolation.
-
Zum Berechnen eines reellen Pixelwerts, der einer aktuellen Pixelposition entspricht, muss man die umgebenen vier Pixel k, l, m und n erhalten (siehe 2), wie durch einen Verschiebungsvektor d(dRBx, dRBy) gegeben, zum Beispiel gleich (2,2,–2,45). Weiterhin muss man eine Subpixelposition, die durch die Gewichtungen wx und wy gegeben ist, erhalten. Ist eine Position des aktuellen Pixels (x, y), sind die Koordinaten der benachbarten Pixel gegeben als:
k: x + floor(dRBx(x, y)), y + floor(dRBy(x, y))
l: x + floor(dRBx(x, y)) + 1, y + floor(dRBy(x, y))
m: x + floor(dRBx(x, y)), y + floor(dRBy(x, y)) + 1,
n: x + floor(dRBx(x, y)) + 1, y + floor(dRBy(x, y)) + 1,
und die entsprechenden Gewichtungen sind gegeben durch: wx = dRBx(x, y) – floor(dRBx(x, y)), wy = dRBy(x, y) – floor(dRBy(x, y)) wobei floor(.) eine Funktion ist, die einen ganzzahligen Teil der Verschiebung angibt. Sie ist gleich einem ersten ganzzahligen Wert, der kleiner als ihr Argument ist. In dem vorherigen Beispiel gilt: (dRBx, dRBy) = (2,2,–2,45), floor(dRBx) = 2 und floor(dRBy) = –3.
-
Schließlich gibt eine bilineare Interpolationsfunktion (wie in 2) einen Ausgabe-R- oder -B-Wert: outRB(x, y) = (1 – wx)·(1 – wy)·k + wx·(1 – wy)l + (1 – wx)·wy·m + wx·wy·n, was einen reellen R-(oder B-)Wert darstellt, der auf einer Position (x, y) hätte liegen sollen, wenn keine LCA vorgelegen hätte.
-
Liegt in einem Bild eine laterale chromatische Aberration vor, ist der R- und B-Farbkanal oder die R- und B-Komponente mit dem G-Farbkanal oder der G-Komponente fehlausgerichtet. Als Beispiel zeigt 4A eine derartige Kante, wo die R- und B-Farbkante von der G-Farbkante, die als Bezugskante verwendet wird, verschoben sind. Diese Verschiebung der Farbebenen weist hauptsächlich eine gegenüberliegende Richtung (aber eine ähnliche oder gleiche Größe) für den R- und B-Farbkanal auf.
-
Der Zweck einer LCA-Messung ist somit das Schätzen oder Quantifizieren der LCA-Größe auf Basis der Farbverschiebung zwischen Kanten in unterschiedlichen Farbkanälen. 4B zeigt die Zwischenfarbdifferenzsignale Δ(R), Δ(G) und Δ(B), die jeweils eine Hochpassversion der entsprechenden Signale aus 4A darstellen. Die entsprechenden Zwischenfarbdifferenzen |Δ(R) – Δ(G)|, |Δ(B) – Δ(G)| und |Δ(R) – Δ(B)| (4C) zeigen die LCA-Verschiebung an. Im Fall einer Linse, die hinsichtlich chromatischer Aberration korrigiert ist, sind diese Zwischenfarbdifferenzen klein (vgl. z. B. 5A bis 5C), während sie im Fall von LCA groß sind.
-
Da Farbkanten unterschiedliche Amplitude und Vorzeichen haben können, um zwischen unterschiedlichen Farben eine gute Anpassung und Unabhängigkeit von der Bildhelle zu ermöglichen, müssen Zwischenkanalfarbdifferenzen normiert werden. Eine vorteilhafte Form von Normierung gibt eine Formel für die Zwischenkanaldifferenz: ΔC = k HP(C) / LP(C), wobei k eine Skalierungskonstante ist, HP(C) eine Hochpassversion und LP(C) eine Tiefpassversion eines gewissen Farbkanals C darstellt, wobei C = R, G, B ist. Diese Berechnungen können in horizontalen, vertikalen oder diagonalen Richtungen angewendet werden. HP(C) ist wie erwähnt ein hochpassgefiltertes Farbsignal, wobei zu verwendende Filter zum Beispiel [1 –1] oder [1 0 –1] sind. LP(C) ist ein tiefpassgefiltertes Farbsignal, z. B. unter Verwendung eines [1 1]-, [1 0 1]-, [1 2 1]- oder [3 8 10 8 3]-Filters. Diese Filter werden in der Richtung der Berechnung angewendet, zum Beispiel in horizontaler, vertikaler oder diagonaler Richtung. Da Kanten in der diagonalen Richtung mit horizontalem und vertikalem Filter detektiert werden, erübrigen sich diagonale Berechnungen.
-
Eine weitere Möglichkeit für die LCA-Messung ist die Verwendung von ΔC = k kC / LP(C), wobei Variablen die gleiche Bedeutung wie in der vorhergehenden Erklärung aufweisen. Die Bedeutung dieses Ansatzes liegt in dem Bildformungsmodell, welches besagt, dass sich das Bild aus der Beleuchtungsschicht (Tiefpasssignal) multipliziert mit der Detailschicht (Hochpasssignal) zusammensetzt. Durch dividieren des Bilds mit der Tiefpassinformation bleibt ein Hochfrequenzsignal Δ(C) zurück, das auf die gleiche Weise wie in der vorhergehenden Beschreibung weiter verwendet werden kann.
-
Der zweite Schritt zur Messung chromatischer Aberration ist die Berechnung von Zwischenfarbdifferenzen ΔRG = |Δ(R) – Δ(G)|, ΔBG = |Δ(B) – Δ(G)| und ΔRB = |Δ(R) – Δ(B)|.
-
Je besser die LCA korrigiert wird (mittels eines entsprechenden Korrekturverfahrens oder einer optimierten Linse), desto kleiner sind die Werte dieser Differenzen, da sich die Farbdifferenzen Δ(R), Δ(B), und Δ(G) dann besser überlappen (siehe 5A bis 5C).
-
Die ursprüngliche ΔRG-Formel kann wie folgt umgeschrieben werden:
-
Damit wird das gleiche Ergebnis wie mit der zweiten Δ(C)-Formel erhalten, d. h., beide Formeln führen zu gleichen Ergebnissen. Eine zweite Form vereinfacht die Berechnung jedoch.
-
Im in 1 gezeigten Verfahren werden in dem LCA-Messungsschritt 5 Summen von ΔRG, ΔBG und ΔRB pro Pixel in dem Bildfeld/-rahmen berechnet und die Gesamtsummenwerte ΔRG, ΔBG und ΔRB ausgegeben, die zur Berechnung des Parameters oder der Parameter des LCA-Modells (oder genauer gesagt zur Schätzung der Eignung dieser Parameter zum Reduzieren von LCA) verwendet werden können. Die Summe gibt eine Schätzung zur Qualität einer zuvor durchgeführten Korrektur an.
-
Die ursprüngliche Annahme ist, dass ΔRG-, ΔBG- und ΔRB-Signale ausreichend diskriminierend sind, nur den Effekt von LCA in dem Bild zu messen. Sie messen jedoch nicht nur erwünschte laterale Aberrationsfarbdifferenzen, sondern können ungewollt auch verschiedene andere Effekte einschließen, wie z. B. longitudinale Farbaberration, lila Farbsaum, der durch Blooming verursacht wird, und Gesättigtes-Bild-Signale, Rauschen, nicht-perfekte Normierungsfaktoren etc. Somit wird selbst in Fällen, wo keine LCA vorliegt, die Ausgabe dieser Messungen nicht null sein. Um die Leistung dieses Algorithmus zu verbessern, werden daher einige zusätzliche Erwägungen und Modifikationen benötigt.
-
Zuerst ist eine LCA-Verschiebung gemäß einem einfachen Modell linear abhängig von der radialen Entfernung des Pixels von der Bildmitte: f(r) = caRB·r. Für kleine radiale Entfernungen ist diese Verschiebung sehr klein und lässt sich nicht gut schätzen, da hauptsächlich Rauschen gemessen wird. Um dies zu vermeiden, ist es vorteilhafter, keine Messungen nahe an der Bildmitte (wo die LCA gering ist), für r < r0, zum Beispiel r0 = 0,2·D, wobei D die Länge einer halben Diagonalen des Bilds ist, durchzuführen. Mit anderen Worten ist wie in 6A gezeigt eine Akzeptanzmaske M auf Basis einer Entfernung r0 von einer Bildmitte eines Bilds 60 definiert. Die Entfernung r0 kann auch von der maximalen erwarteten LCA-Verschiebung abhängen und einem Wert entsprechen, wo zum Beispiel der Absolutwert der LCA-Farbverschiebung gleich ein halbes Pixel ist. In einer Vereinfachung kann zur Verringerung der Komplexität der Berechnung der Akzeptanzmaske M ein Rechteck verwendet werden (wie bei der Akzeptanzmaske M in 6A). In diesem Fall ist die Akzeptanzbedingung, dass die aktuellen Pixelkoordinaten (x, y) das folgende Kriterium erfüllen: |x – Xc| > r0OR|y – Yc| > r0, wobei OR eine logische ODER-Funktion bedeutet, |.| einen Absolutwert darstellt, und (Xc, Yc) Koordinaten der Mitte des Bilds sind.
-
Ferner wird es als vorteilhafter erachtet, (nur) in der Nachbarschaft der großen Kantenübergänge zu messen, und kleine Kanten, die eine rauschartige Komponente in die Messung einbringen, zu übergehen. Beispielsweise kann man Stellen messen, wo die Ausgabe des Δ(G)-Signals groß ist, oder Δ(G) > TH, wobei TH ein Schwellwert ist, wie in 6B gezeigt ist. In diesem Fall könnten wünschenswerte Messbereiche von Δ(R) und Δ(B) auch ausgeschlossen werden, besonders wenn die Zwischenfarbverschiebung groß ist (6B, nur der schattierte Teil wird gemessen). Der interessierende Bereich kann daher verbreitert werden, indem Messvorgänge auch an den benachbarten Pixeln (zusätzliche Pixel links und rechts für einen horizontalen Filter und oben und unten für einen vertikalen Filter) durchgeführt werden. Es ist jedoch leichter und möglicherweise vorteilhaft, die Akzeptanzbedingung bei allen Pixeln zu modifizieren, die (Δ(R) > TH)OR(Δ(G) > TH)OR(Δ(B) > TH), genügen, wie in 6C gezeigt, oder sogar Δ(R) + Δ(G) + Δ(B) > TH.
-
Wegen der longitudinalen chromatischen Aberration und allgemein aufgrund eines unterschiedlichen Verhaltens von R- und B-Farbkanälen gegenüber Licht, ist es besser, verschiedene Rauschentfernungsschwellwerte für G und für R bzw. B zu verwenden. Also gilt (Δ(R) > THG)OR(Δ(G) > THRB)OR(Δ(B) > THRB).
-
Zusammenfassend können Akzeptanzmasken wie in 6B und 6C gezeigt in Abhängigkeit von der Größe einer G-Kante und von der Größe der R-, G- und B-Kanten definiert werden.
-
In gewissen Fällen kann es sich problematisch gestalten, ein Minimum der ΔRG-, ΔBG- und ΔRB-Funktionen zu finden. Zum Beispiel können diese Funktionen beim Aliasing oder in Gegenwart von Hochfrequenzmerkmalen in einem Bild unerwünschte Merkmale fälschlicherweise messen. Um dies zu vermeiden, können Bereiche mit höherfrequenten Merkmalen ausgeschlossen werden. Dieser Vorgang ist jedoch teuer, da man zuerst detektieren muss, ob es sich bei einem interessierenden Merkmal um eine isolierte Kante (mit keinen anderen Kanten in der Nachbarschaft) handelt. Zur Detektion von isolierten Kanten kann zuerst eine Kantenkarte mit Kanten in Breite eines Pixels generiert werden und danach können alle Kanten, die keine weitere Kante in ihrer Nachbarschaft haben, die mit einer durch LCA verschobenen Kante verwechselt werden könnten, ausgeschlossen werden.
-
Schließlich können lila Farbsaum, der durch Blooming verursacht wird, und Gesättigtes-Bild-Signale (Streifenbildung) für einen LCA-Effekt gehalten werden. Dieses Problem kann dadurch gelöst werden, dass alle Messungen in der Nachbarschaft sehr heller Pixel ausgeschlossen werden. Beispielsweise können alle Pixel in der (–δ, δ)-Nachbarschaft des hellen Pixels sowohl in horizontaler als auch vertikaler Richtung ausgeschlossen werden.
-
Ein wesentlicher Schritt der vorliegenden Erfindung kann liegen in der Schätzung der caRB-Parameter durch Minimieren der ΔRG-, ΔBG- und ΔRB-Funktionen in einem Feedbackkreis, umfassend eine Anzahl optimierender Iterationen, wie in
-
7 gezeigt. Das Verfahren 700 in 7 wird mit caR als Beispiel angegeben, kann aber auch mit einem caB-Wert beginnen oder parallel für caR und caB durchgeführt werden.
-
Wie zuvor erwähnt fangen Iterationen mit einem anfänglichen Wert an, z. B. mit einem geschätzten Standardwert oder einem Nullwert für den LCA-Parameter caR. Dieser Schritt entspricht dem Schritt 702 in 7, wenn er erstmalig ausgeführt wird. In Schritt 702 von 7 kann der anfängliche caR-Wert mit einem vordefinierten Wert δ geändert werden, der einen Modifikationswert darstellt, der im Wesentlichen zum Modifizieren der caR-Werte in der oder den aufeinanderfolgenden Iteration(en) verwendet wird. In dem in 7 gezeigten Verfahren wird dieser Wert in der ersten Iteration mit entweder 1 oder –1 multipliziert, je nach einer Einstellung einer Variablen, die anfänglich in einem Variableneinstellungsschritt 701 bereitgestellt wurde. Im Wesentlichen definiert diese Variable die Richtung der Optimierung entweder durch Erhöhen oder Verringern eines Werts von caR durch Bereitstellung eines Werts von δ mit entweder einem positiven oder einem negativen Vorzeichen. Zusammenfassend können die Operationen in Schritt 702 als caR + Vorzeichen·δ geschrieben werden. Alternativ dazu kann wie erwähnt in Schritt 702 in der ersten Iteration ein caR-Wert einfach vordefiniert werden.
-
Auf Basis des in Schritt 702 bereitgestellten Werts caR + Vorzeichen·δ (oder, in der ersten Iteration, eines vordefinierten Werts) wird in Schritt 703 (entsprechend dem Schritt 3 in 1) eine LCA-Korrektur durchgeführt. Daraufhin werden die Daten in Schritt 704 (Schritt 4 in 1) einer Farbtrennung unterzogen. Die Farbtrennung führt zu R-, G- und B-Werten für jedes Pixel des Bilds.
-
Durch Durchführen eines LCA-Messschritts 705 (Schritt 5 in 1), werden Δ(R)-, Δ(B)- und Δ(G)-, ΔRG-, ΔBG- und ΔRB-Werte berechnet. Die Parameter caR und caB sind voneinander unabhängig und beeinflussen unabhängig die ΔRG-, und ΔBG-Werte, während ΔRB in Abhängigkeit durch eine Änderung von caR oder caB beeinflusst wird.
-
In Schritt 706 wird ein Bezugs-ΔRG-Wert REFΔRG eingestellt, z. B. auf einen Wert von ΔRG aus dem vorherigen Feld/Rahmen (Iteration). Aus Gründen der Robustheit kann REFΔRG vorteilhaft auf einen erste-Ordnung-rekursiv gefilterten Wert von ΔRG eingestellt werden: REFΔRG(n) = REFΔRG(n – 1) + c·(ΔRG – REFΔRG(n – 1)), wobei n die Iterationszahl ist.
-
Schritte 707 und 708 können durchgeführt werden, um wie oben beschrieben eine Akzeptanzmaske einzubeziehen. In Schritt 707 wird überprüft, ob das aktuelle Pixel einen definierten Satz Bedingungen erfüllt (siehe oben), und, falls dem so ist, wird es zu einer Akzeptanzmaske M hinzugefügt. Für alle Pixel in einem Bild, die zu der Akzeptanzmaske M gehören, werden alle ΔRG- und ΔRB-Werte in Schritt 708 summiert, um ein Maß der resultierenden lateralen chromatischen Aberration zu ergeben.
-
Wie z. B. in 4 gezeigt ist, ist der anfängliche Wert von z. B. ΔRG in der Regel hoch. Der LCA-Fehler wird so durch Reiteration von Verfahren 700 korrigiert, einschließlich eines caR-Parameters, der durch einen δ-Wert modifiziert ist, und durch Resampling der R-Farbebene bei der LCA-Korrektur in Schritt 705 (Schritt 5 von 1), dem Modell eines LCA-Fehlers folgend, gegeben durch das Polynom f(r) und den aktuellen Wert des caR-Parameters.
-
Nach jeder Iteration findet ein Vergleichsschritt 709 statt. Wenn sich in Schritt 709 ergibt, dass ein neu berechneter Wert von ΔRG größer als der Bezugswert REFΔRG ist, der in Schritt 706 eingestellt wurde, wurde der Parameter caR in eine falsche Richtung geändert (d. h. durch Verwendung eines falschen Vorzeichens) und das Verfahren 700 schreitet zu Schritt 711 weiter.
-
Daraufhin wird in Schritt 711 das Vorzeichen geändert und im nächsten Durchlauf wird caR durch Multiplikation von δ mit dem geänderten Vorzeichen verringert. Ergibt sich dagegen ein neuer Wert von ΔRG, der kleiner als REFΔRG in Schritt 709 ist, wurde der Parameter caR in eine richtige Richtung geändert und es ergibt sich schließlich ein caR-Parameter, der zu einem Minimumwert von ΔRG führt, durch Weiterführung der Prozedur (Iteration) mit dem unveränderten Vorzeichen. Bei jeder Iteration (und wenn in Schritt 709 der gemessene ΔRG-Wert kleiner als der Bezugswert war) wird in Schritt 710 der aktuelle caR-Wert gespeichert, indem er als ein (aktuell) optimaler caR-Wert eingestellt wird.
-
Die obenerwähnten Verfahrensschritte werden ebenso für den Parameter caB und ein Fehlersignal ΔBG verwendet, und das Verfahren 700 wird auch an einer B-Farbebene durchgeführt, wo ein optimaler Parameter caB gefunden wird. Die Suche nach dem besten caR- und caB-Parameter kann parallel durchgeführt werden, da sie voneinander unabhängig sind. Das ΔRB-Fehlersignal liefert auch wertvolle Informationen über die Parameter des Modells der LCA. Es kann zusätzlich zu den Fehlern ΔRG und ΔBG in dem gleichen Algorithmus verwendet werden, um sicherzustellen, dass das Grundverfahren nicht von einem gewissen Punkt aus durch Konvergenzprobleme beeinflusst wird. Wenn man beispielsweise beobachtet, dass der Wert von ΔRB sich zu verringern beginnt, kann man daraus schließen, dass der caR(oder caB)-Parameter in die falsche Richtung geändert wurde.
-
Zusätzlich und/oder alternativ zum Vergleichen mit einem Bezugswert in einem Feedbackkreis-Ansatz zum Finden des optimalen Werts von caR und caB (was zu Mimimumfehlern ΔRG und ΔBG führt) kann auch wie in 8 gezeigt eine globale Suchstrategie 800 durchgeführt werden. In 8 sind Verfahrensschritte, die mit denen von dem Verfahren 700 (Figur 700) identisch oder im Wesentlichen identisch sind, mit Zahlen bezeichnet, die um 100 inkrementiert sind.
-
Schritt 820 vom Verfahren 800 umfasst das Durchsuchen des ganzen möglichen Bereichs des caR-Parameters und Finden eines caR-Parameters, der zu einem Minimumwert von ΔRG führt. Das gleiche gilt für den caB-Parameter. In gewissen Situationen ist eine globale Suche jedoch nicht direkt gestattet, da sie direkte sichtbare Effekte der LCA-Korrektur mit verschiedenen caRB-Parametern in dem Bild ermöglicht.
-
Da oft ein großer Bereich von Werten von caRB-Parametern abgesucht wird, können größere sichtbare LCA-Fehler eingeführt werden, um ΔRG und ΔBG auch für diese Werte messen zu können. Auch ändert sich bei einem Videosignal der caRB-Parameter möglicherweise mit jedem Feld/Rahmen, was zeitweise Änderungen eines LCA-Artefakts einführt. In vielen Fällen ist dies nicht erlaubt, da diese Effekte in dem Bild sichtbar sind. Eine Lösung des Problems wäre, in Modifikation zu dem in 1 gezeigten Verfahren, eine parallele Bildverarbeitungskette 910, wie in 9 gezeigt, mit Schritten 3', 4' und 5' (vgl. 1) und einem Schritt 800' (im Prinzip dem Schritt 800 von 8 entsprechend) zu bilden. Die Bildverarbeitungskette 900 wird jedoch nur zur Messung verwendet, und ihre Effekte sind in dem Bild nicht sichtbar. Der Hauptvorteil dieses Ansatz ist die Möglichkeit, die optimalsten Werte von caRB-Parametern zu finden, die zu einem reellen Minimumwert von ΔRG und ΔBG führen, ohne dass die Gefahr besteht, sich in einem lokalen Minimumwert zu verfangen, wie es mit dem Feedbackkreis-Ansatz 700 möglich sein könnte.
-
Vorteilhafterweise werden die beiden Ansätze 700 und 800 wie in 9 gezeigt kombiniert. Eine in einer parallelen Kette 900 durchgeführte Suche 800 nach dem globalen Minimum kann dazu verwendet werden, eine grobe Suche durchzuführen, die einen groben Minimumwert 910 ergibt, wahrscheinlich auch langsamer und/oder mittels eines weniger komplizierten Farbtrenners. In einem Feedbackkreis 50 wird dann ein Wert von caRB um diesen groben Arbeitspunkt herum optimiert.
-
Schließlich kann man zum Minimieren des Hardwareaufwands bei der Suche nach dem globalen Minimum im Verfahren 800 oder der parallelen Kette 900 die globale Suche mit langsamerer Geschwindigkeit (zum Beispiel einmal pro Sekunde) durchführen und ein aktuelles Feld/aktuellen Rahmen ausblenden, wo sichtbare LCA-Fehler vorkommen können, indem das/der vorherige Feld/Rahmen wiederholt wird.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
- US 2008/0284869 A1 [0006]
- US 7221793 B2 [0006]
- US 2008/0291447 A1 [0006]
- US 6747702 B1 [0006]
- US 7227574 B2 [0006]
- US 2009/0052769 A1 [0006]
- US 7577292 B2 [0006]
- US 2007/0242897 A1 [0006]
- US 7346210 B2 [0006]
- US 7142238 B1 [0006]
- JP 2002320237 A [0006]
- US 7425988 B2 [0006]
- JP 2000299874 A [0006]
- US 2008/0007630 A1 [0006]
- US 7466495 B2 [0006]
- US 2008/0062409 A1 [0006]
- US 7356198 B2 [0006]