Mittwoch, 2. Januar 2013

Grundlagen des visuellen Systems beim Menschen

Die Stäbchen in der Netzhaut des Menschen sind für das achromatische Sehen, die Zäpfchen für das chromatische Sehen zuständig. Es gibt drei Arten von Zäpfchen, gemäß ihrer maximalem Empfindlichkeit für Wellenlängen im Roten, Grünen und Blauen. As Luminanz Y wird dabei die achomatisch wahrgenommene Komponente eines Bildes bezeichnet. Sie ist definiert als Faltung der spektralen  Empfindlichkeit der Sinneszellen mit der spektralen Intensität des wahrgenommenen Lichtes, und ist daher physikalischen Größen wie dem Lichtstrom Phie_v ( Einheit = lumen) oder der Lichtstärke I_v (Einheit = lumen / sr = candela) vergleichbar. Untenstehende Grafik zeigt die spektrale Empfindlichkeit des Auges beim Tagsehen (rote Kurve) und beim Nachtsehen (blaue Kurve). Das Auge ist im grünen Wellenlängenbereich demnach ca. 15-20 mal empfindlicher als im roten oder blauen.


 Die Änderung der Luminanz Y reativ zur Hintergrundluminanz YB wird als Kontrast C bezeichnet. Es gilt: C=∆Y / YB. Die empfundene Helligkeit (Lightness) L ist in ihrer einfachsten Form ganz ähnlich definiert. Es gilt dL = dY/Y. Integration liefert das sogenannte Webersche Gesetz L = log (Y). Diese Funktion überschätzt die Empfindlichkeit des menschlichen Auges jedoch vorallem im Dunkeln. Man setzt daher dL = dY / Y1-p mit p = 1 / γ an, und erhält nach Integration L = Y 1/γ . γ wird als Gamma(korrektur)wert bezeichnet. Standard PC-Displays sind z.B. auf γ = 2.2 angepaßt. In der Praxis empfiehlt sich ein Gammawert von 2-3.
Durch Tristimuluswerte X,Y und Z, die von der Commission Internationale de l’Eclairage (CIE) festgelegt sind, können Helligkeitsempfinden Y, sowie Farton (Hue, z.B. Rot oder Orange, Blau oder Violett) und Sättigung (Saturation, z.B. Pink oder Rot, Himmelblau oder Tiefblau) für alle wahrnehmbaren Farben dargestellt werden. Farkoordinaten (chromaticity coordinates) x,y,z sind auf X+Y+Z normierte Tristimuluswerte und enthalten keine Information über die empfundene Helligkeit mehr. Es gilt x + y + z = 1, z ist somit redundant und der Farbraum reduziert sich auf 2 Dimensionen. Es gilt X = (x/y) · Y und Z = (1-x-y)/y · Y. Plottet man die Farbkoordinaten x und y in Abhängigkeit einer Wellenlänge, so ergibt sich untenstehende Kurve in Hufeisenform. Alle Punkte innerhalb des Hufeisens sind wahrnehmbar, und durch lineare Überlagerung zweier monochromatischer Strahlungsquellen darstellbar. Zum Beispiel lassen sich alle Farben auf der Linie zwischen 380nm und 770nm durch Linearkombination dieser beiden Wellenlängen darstellen.



Stehen drei Strahlungsquellen z.B. eine rote, eine grüne und eine blaue LED zur Verfügung lassen sich durch Linearkombination alle Farben innerhalb des unten aufgespannten Dreiecks darstellen. Die Farbpunkte dieser 3 LEDs stellen die Hauptfarben (primaries) des Systems dar. Für das System aus 3LEDs gilt: (xr, yr) = (0.7,0.3), (xg,yg) = (0.15,0.73) und  (xb,yb) = (0.12,0.1).
Die primaries des NTSC Videostandards hingegen lauten z.B.   (xr, yr) = (0.67,0.33), (xg,yg) = (0.21,0.71) und (xb,yb) = (0.14,0.08).



Gesucht ist nun eine Transformation aus dem rgb-Farbraum (r,g,b) der Form (X,Y,Z) = M · (r,g,b) die die Einheitsvektoren im rgb-Raum (z.B. den roten Einheitsvektor (1,0,0)) auf Vielfache der primaries  Koordinaten im XYZ-Raum abbildet ( im NTSC-System z.B. den roten Einheitsvektor auf α1 · (0.67,0.33,0)). M muss z.B. im NTSC-System auf Grund dieser Linearitätsbedingung allgemein von der Form:







sein. Der EE-Weißpunkt (equal energy point) im Bild oben ist definiert durch X = Y = Z = 1. Auch im rgb-Raum soll der Weißpunkt durch x = y = z = 1 beschrieben werden können. Es gilt also die zusätzliche Bedingung (1,1,1) = M · (1,1,1).












Die Lösung dieser Gleichung liefert (α1.2.3) = (0.9867, 0.8148, 1.1985). Eingesetzt in obige Linearitätsbedingung führt dies zu:










Um nun aus x.y Koordinaten bzw nach der Transformation X = (x/y) · Y und Z = (1-x-y)/y · Y  aus X,Y,Z Koordinaten rgb-Werte generieren zu können, muss M invertiert werden. Es gilt: (r,g,b) = Minv · (X,Y,Z). Maple erledigt diese Transformation. Für den Farbraum der von 3 LEDs  aufgespannt  wird gilt:








Gerade die Auswahl bestimmter Farbsequenzen gestaltet sich im XYZ-Modell schwierig. Intuitiver ist für diese Auswahl das sogennte HSV (Hue Saturation Value) Modell. 
Die Helligkeitsbins der roten, grünen und blauen Chips in RGB-LEDs sind in der Regel aufeinander abgestimmt, da 'reines' Weiß bei gleichzeitiger Ansteuerung der roten, grünen und blauen LED mit der gleichen Stromstärke erzeugt wird. Der untenstehende Zusammenhang zwischen der Lichtstärke Iv und dem Vorwärtsstrom If gilt daher nicht nur relativ.


 Iv ist proportional zu If3/2, wobei die rote, die grüne und die blaue LED die gleiche Proportionalitätskonstante aufweisen. Die empfundene Helligkeit L ist damit bei einem Gammawert von 2, proportional zu If3/2 · 1/2 = If0.75, und der auf den Vorwärtsstrom korrigierte Gammawert beträgt 1/0.75 = 1.3. Jede berechnete (lineare) rgb-Komponente muss mit dem gleichen (korrigierten) Gammawert gemäß rgb1/γ in rgb-Werte umgerechnet werden, die dem Helligkeitsempfinden entsprechen.

Möchte man LEDs in der Praxis ansteuern, dann sollen die Helligkeitsschritte von einer Helligkeitsstufe zur nächsten ungefähr gleich groß sein. Deshalb werden die errechneten (linearen) rgb Komponenten mit einem korrigierten Gammawert gemäß rgbγ 'überhöht' um die sättigende Helligkeitskurve auszugleichen. In der Praxis sind die LEDs für unterschiedlich kurze Zeit immer mit z.B. 20mA ausgesteuert. Die minimale Länge des Pulsbreitensignals einer einfachen Steuerschaltung liegt typischerweise bei 8 MHz interner osc.freq. / prescale 1 / 256 = 31 kHz also 32µs, und die typische rise time einer LED bei 100ns. Eine auf den Vorwärtsstrom korrigierte Helligkeitskurve erscheint daher wenig sinnvoll. Gute Ergebnisse liefern dennoch Helligkeitstabellen die mit einem Gammawert um 1 errechnet wurden (z.B. rgb-Wert · (Helligkeitsstufe/Stufenzahl)1.3), oder Tabellen in denen sich der PWM Wert von Helligsstufe zu Helligkeitsstufe um um einen festen kleinen Prozentsatz ändert (z.B. für Änderungen um jeweils 1.5%, rgb-Wert · (1-0.985Helligkeitsstufe))

Keine Kommentare:

Kommentar veröffentlichen