Ergänzung LCH Farbraum

Antworten
awehring
Mitglied
Beiträge: 49
Registriert: Di 13 Aug 2013 22:17

Ergänzung LCH Farbraum

Beitrag von awehring »

Photoline bietet derzeit die Farbräume RGB, HSV, HIS, Lab, CMYK.

Die Ergänzung des LCH Farbraumes würde Farb- und Helligkeitskorrekturen gewaltig erleichtern, da der LCH Farbraum sich an der Farbempfindung ausrichtet (perzeptiver Farbraum). Er ist mit dem Lab Farbraum eng verwandt, seine Regelgrössen sind jedoch wesentlich eingängiger als beim Lab.
Nämlich
L (lightness) für Helligkeit,
C (chroma) für Sättigung und
H (hue) für die Farbe.

Das Problem mit den nicht-perzeptiven Farbräumen (HSV, HIS etc.) ist, dass der Helligkeits- und Sättigungswert sich nicht mit der menschlichen Farbwahrnehmung deckt.

Im folgenden Bild ist jeweils ist jeweils ein Farbfeld in purem Grün und purem Blau gezeigt. Darüber stehen die Parameter in den einzelnen Farbräumen. Angeblich (gemäss HSL und HSV-Werten) sind diese gleich hell und gleich gesättigt. Ein Betrachter würde das Grün aber sicherlich als deutlich heller als das Blau beurteilen.
Vergleich_4.PNG
Vergleich_4.PNG (43.06 KiB) 4231 mal betrachtet
Die Balken und Zahlen über den Farbflächen zeigen die Werte in den verschiedenen Farbräumen (LCH, RGB, HSV, HSL).
Im HSL und HSV Farbraum sind V für beide 1 bzw. L für beide 0.5. Damit ist das Grün und Blau eben angeblich gleich hell (und gleich gesättigt mit S = 1).

Bei den LCH-Werten ist das Grün viel heller als das Blau (L = 88 bzw. 32). So wie man es empfindet.


Im folgenden Bild ist das Blau in der Helligkeit an das Grün angepasst. Beide haben gemäss LCH die gleiche Helligkeit (L = 88) - und so wirken sie auch. Das Grün wirkt nur etwas intensiver, also stärker gesättigt, und das kommt im Sättigungsparameter auch zum Ausdruck (C = 120 bzw. 49).
Vergleich_5.PNG
Vergleich_5.PNG (45.53 KiB) 4231 mal betrachtet
Mit anderen Worten: die Parameter des LCH-Farbraum decken sich mit dem Eindruck.


Für die Bildbearbeitung hätte der LCH-Farbraum also gewaltige Vorteile:

  • Wenn man zum Aufhellen nur am L-Parameter zieht, ändert sich wirklich nur die (empfundene) Helligkeit aller Farben.
  • Bei Änderung an der Sättigung (C, chroma) bleibt die Helligkeit und der Farbton unverändert.
  • Eine Änderung des Farbtons (H, hue) lässt die wahrgenommene Helligkeit und Sättigung gleich.
Wünschen wir uns das nicht alle?[/color]


Da der LCH Farbraum relativ einfach aus dem Lab-Farbraum errechnet werden kann, sollte er sich mit überschaubarem Aufwand implementieren lassen (https://de.wikipedia.org/wiki/LCh-Farbraum).

Wer mehr Hintergrundwissen möchte, kann sich hier vertiefen, bzw. mit den Farbräumen spielen:

Erläuterung perzeptive Farbräume, Farbpaletten: http://mkweb.bcgsc.ca/brewer/
Präsentation und Umrechnungsmodell: http://mkweb.bcgsc.ca/brewer/talks/colo ... brewer.pdf
zum Spielen: http://davidjohnstone.net/pages/lch-lab ... ent-picker
Unterschiede HSV, HSL, HSI: http://stackoverflow.com/questions/2085 ... olor-space
Javascript Library: http://www.virtuosoft.eu/code/jquery-co ... ersliders/
Zuletzt geändert von awehring am Fr 18 Sep 2015 05:59, insgesamt 1-mal geändert.
bkh
Betatester
Beiträge: 3674
Registriert: Do 26 Nov 2009 22:59

Re: Ergänzung LCH Farbraum

Beitrag von bkh »

Fände ich grundsätzlich auch gut (ich hatte mir das vor langer Zeit auch schon mal hier im Form gewünscht). Allerdings funktioniert der C-Kanal von LCh visuell auch nicht so, wie man sich das wünscht – C ist eher "Buntheit" als Sättigung (ähnlich wie beim HIS-Farbraum in PL). Wenn du den L-Wert erhöhst und C und h (oder äquivalent a und b) konstant lässt, wirken die Farben weniger gesättigt, umgekehrt gesättigter. Sieht man am besten, wenn man ein Foto mit der Lab-Gradation über den L-Kanal aufhellt.

Insgesamt bin ich nicht sicher, ob sich der Aufwand tatsächlich lohnt. Die Umrechnung Lab <-> LCh an sich ist ja trivial, aber sie taucht vermutlich an endlos vielen Stellen im Programm auf (und nicht mal überall wird HIS und HSV unterstützt).

L.G.

Burkhard.
awehring
Mitglied
Beiträge: 49
Registriert: Di 13 Aug 2013 22:17

Re: Ergänzung LCH Farbraum

Beitrag von awehring »

Ich habe vor allem mit einzelnen Farben in dem oben verlinkten Tool gespielt. Da empfinde ich die die Parameter L, C und H schon als sehr unabhängig voneinander. Aber mit einem Photo kann man das sicher besser beurteilen.

Kennst Du eine Bildbearbeitung, die LCH beherrscht?

Wenn ich mit Photoline bei der Gradation mit den verschiedenen Farbräumen spiel, habe ich schon den Eindruck dass das L im Lab Modus die Farben weniger verfälscht, als die Helligkeit mit HIS und deutlich weniger als mit HSV.

Der grosse Vorteil von LCH gegenüber Lab ist aber, dass Farbkorrekturen (Sättigung, Farbton) mit Lab und seinen rot/grün bzw. gelb/blau Kanälen mehr oder weniger unmöglich, zumindest äusserst gewöhnungsbedürftig ist. Nur zur Helligkeitskorrektur kann man mit Lab leben.

Wegen des Aufwandes: Ich denke, dass der überschaubar ist, zumindest an den Stellen, an denen Lab bereits umgesetzt ist. Man muss im Programm ja nur die Eingabewerte von LCH in Lab umrechnen. Dann kann man im Programm mit dem Lab-Werten weiterfahren wie bisher. Das sollte auch keine Performance kosten.
awehring
Mitglied
Beiträge: 49
Registriert: Di 13 Aug 2013 22:17

Re: Ergänzung LCH Farbraum

Beitrag von awehring »

Man kann es auch anders formulieren:

LCH vereint das Beste aus zwei Welten.

Einerseits sind die Parameter vertraute Größen: Farbe, Helligkeit, Sättigung. Das hat er gemein mit HIS, HSV, HSB, HSL, etc.
Damit lassen sich Farbanpassungen einfach durchführen, anders als mit RGB oder Lab.

Andererseits ist er (wie Lab) wahrnehmungsorientiert. Wenn man bei zwei Farben (z. B. Gelb und Blau) die gleiche Helligkeit einstellt, erscheinen auch beide Farben gleich hell. Das gleiche gilt für die Sättigung. Damit vermeidet er die Nachteile von HIS, HSV und deren Verwandten
Darüber hinaus sind die Parameter absolute Werte (wie Lab). Sie sind also nicht von der Grösse des Farbraums (sRGB, AdobeRGB, Rec.2020, etc.) abhängig. Wenn man zwei Bilder hat, eines in sRGB und eines in Adobe RGB, und bei beiden die gleichen Farbwerte einstellt, erhält man auch die gleiche Farbe (anders als bei RGB, HIS, HSV, HSB, HSL, etc.).
bkh
Betatester
Beiträge: 3674
Registriert: Do 26 Nov 2009 22:59

Re: Ergänzung LCH Farbraum

Beitrag von bkh »

awehring hat geschrieben:Ich habe vor allem mit einzelnen Farben in dem oben verlinkten Tool gespielt. Da empfinde ich die die Parameter L, C und H schon als sehr unabhängig voneinander. Aber mit einem Photo kann man das sicher besser beurteilen.

Kennst Du eine Bildbearbeitung, die LCH beherrscht?
Was meinst du mit "beherrscht" genau? PL kann ja verschiedenste Funktionen z. B. in Lab ausführen, obwohl der Arbeitsfarbraum gar kein Lab ist. Geht es dir in erster Linie um Gradation in LCh oder noch was ganz anderes (Ch-Farbeingabe/Farbausgabe, Verläufe überblenden in LCh, Schärfen/Weichzeichnen, Maloperationen, …)?

Wenn's nur um die LCh-Gradation geht, lassen vielleicht die Entwickler mit sich reden, zumal die meisten Funktionen schon für den Lab-Mode in "Farbänderung" implementiert sein dürften.

Nikon Capture NX-D hat eine LCh-Gradation, aber das, was eigentlich die C -> C-Kurve sein müsste, ist h -> C. Die Funktion gibt es übrigens auch bei PL als Filter/Arbeitsebene "Farbänderung" (dort steht zwar Lab als Farbraum, aber im Endeffekt ist das LCh oder, wie es scheint, eher LCH).
awehring hat geschrieben:Wenn ich mit Photoline bei der Gradation mit den verschiedenen Farbräumen spiel, habe ich schon den Eindruck dass das L im Lab Modus die Farben weniger verfälscht, als die Helligkeit mit HIS und deutlich weniger als mit HSV.
Kann ich so nicht bestätigen. In der Praxis (bei normalen Fotos) finde ich I und L von der Wirkung her sehr ähnlich, man muss nur wegen der normalerweise unterschiedlichen zugrunde liegenden Gammakurven die Kurve etwas anders einstellen, um eine ähnliche Wirkung zu erzielen. Beim "Farbe verfälschen" kann man natürlch streiten: beide reduzieren die Sättigung beim Aufhellen und erhöhen sie beim Abdunkeln (einfach mal zwei Fotos machen, eins um 2 Stufen unterbelichten und anschl. mit I oder L aufhellen – da sehen HSV und RGB viel besser aus). Um Lichter sanft clippen zu lassen, sind oft L und I viel besser geeignet als HSV. "Den" Regler für alles habe ich noch nicht gefunden, oft kombiniere ich HIS und HSV oder regle die Sättigung von Hand nach.
awehring hat geschrieben: Der grosse Vorteil von LCH gegenüber Lab ist aber, dass Farbkorrekturen (Sättigung, Farbton) mit Lab und seinen rot/grün bzw. gelb/blau Kanälen mehr oder weniger unmöglich, zumindest äusserst gewöhnungsbedürftig ist. Nur zur Helligkeitskorrektur kann man mit Lab leben.
Naja, halt andere Farbkorrekturen. Genau wie man im RGB die Sättigung nicht erhöhen kann. Ob C und h in der Praxis andere Ergebnisse bringen als H und S, da habe ich allerdings so meine Zweifel. Globale Sättigungsänderungen in C gehen in PL schon mit "Farbänderung".
awehring hat geschrieben:Wegen des Aufwandes: Ich denke, dass der überschaubar ist, zumindest an den Stellen, an denen Lab bereits umgesetzt ist. Man muss im Programm ja nur die Eingabewerte von LCH in Lab umrechnen. Dann kann man im Programm mit dem Lab-Werten weiterfahren wie bisher. Das sollte auch keine Performance kosten.
Ich glaube, du unterschätzt den Aufwand, das GUI entsprechend anzupassen. Eine LCh-Gradation wäre m.E. machbar, aber LCh über das gesamte Programm ziemlich aufwändig. Aber letztlich wissen das nur die Entwickler.

L.G.

Burkhard.
awehring
Mitglied
Beiträge: 49
Registriert: Di 13 Aug 2013 22:17

Re: Ergänzung LCH Farbraum

Beitrag von awehring »

bkh hat geschrieben:
awehring hat geschrieben: Kennst Du eine Bildbearbeitung, die LCH beherrscht?
Was meinst du mit "beherrscht" genau? PL kann ja verschiedenste Funktionen z. B. in Lab ausführen, obwohl der Arbeitsfarbraum gar kein Lab ist. Geht es dir in erster Linie um Gradation in LCh oder noch was ganz anderes (Ch-Farbeingabe/Farbausgabe, Verläufe überblenden in LCh, Schärfen/Weichzeichnen, Maloperationen, …)?
Ich würde gerne mit einem Foto in einem Bildbearbeitungsprogramm spielen und dabei an den L, C- und H-Reglern ziehen. Insbesondere bei Farbanpassungen, Gradation.
Am besten abwechselnd mit den Reglern für HSV, HIS, etc.

Dann könnte man direkt vergleichen was LCH besser macht.
Ich vermute: viel :mrgreen:
bkh hat geschrieben: Die Funktion gibt es übrigens auch bei PL als Filter/Arbeitsebene "Farbänderung" (dort steht zwar Lab als Farbraum, aber im Endeffekt ist das LCh oder, wie es scheint, eher LCH).
Unter "Arbeitsebene" - "Farbänderung" finde ich nur RGB, HIS und HSV. Kein Lab.
Und bei "Arbeitsebene" -"Farbton/Sättigung" (das wäre der spannendste Ort) gibt es zwar passende Regler, aber leider keine Auswahl / Angabe über den Farbraum. Was da genau passiert ist leider Entwickler-Geheimnis.
bkh hat geschrieben: "Den" Regler für alles habe ich noch nicht gefunden, oft kombiniere ich HIS und HSV oder regle die Sättigung von Hand nach.
Genau das zeigt das Problem von HIS und HSV. Vom Konzept her sollte LCH der Regler für alles sein.
bkh
Betatester
Beiträge: 3674
Registriert: Do 26 Nov 2009 22:59

Re: Ergänzung LCH Farbraum

Beitrag von bkh »

awehring hat geschrieben:Unter "Arbeitsebene" - "Farbänderung" finde ich nur RGB, HIS und HSV. Kein Lab.
Komisch. Bei mir (in PL 19.01, Mac-Version) gibt's auch Lab.
awehring hat geschrieben:Und bei "Arbeitsebene" -"Farbton/Sättigung" (das wäre der spannendste Ort) gibt es zwar passende Regler, aber leider keine Auswahl / Angabe über den Farbraum. Was da genau passiert ist leider Entwickler-Geheimnis.
Kann man leicht testen. Wenn nicht "Kolorieren" an ist, dann arbeiten die Regler in HIS.
awehring hat geschrieben:
bkh hat geschrieben: "Den" Regler für alles habe ich noch nicht gefunden, oft kombiniere ich HIS und HSV oder regle die Sättigung von Hand nach.
Genau das zeigt das Problem von HIS und HSV. Vom Konzept her sollte LCH der Regler für alles sein.
Nein, wie ich schon geschrieben habe, funktioniert L (egal ob mit Lab oder LCh) meist auch nicht besser als I. Probier' mal das mit dem stark unterbelichteten Foto, dann weißt du, was ich meine.

L.G.

Burkhard.
bkh
Betatester
Beiträge: 3674
Registriert: Do 26 Nov 2009 22:59

Re: Ergänzung LCH Farbraum

Beitrag von bkh »

So, für alle, die mal mit einer Gradation mit L- und C-Regler experimentieren wollen, ist hier eine Aktion, die die entsprechende Gradation simuliert. Funktioniert nur im Bildmodus mit einer Ebene. Der a-Kanal der Arbeitsebene "LC adjustment" ist der C-Kanal, der L-Kanal bleibt. Einen h-Regler habe ich nicht eingebaut.

Die Aktion schaltet in einen Lab-Arbeitsraum mit 32 bit Tiefe, daher reagiert der Aufbau bei großen Bildern evtl. ein bisschen langsam. Ggf. halt vor Aufruf der Aktion herunterskalieren.

L.G.

Burkhard.
Dateianhänge
LC-adjustment.actions
(4.46 KiB) 87-mal heruntergeladen
Benutzeravatar
Hoogo
Betatester
Beiträge: 4021
Registriert: So 03 Jul 2005 13:35
Wohnort: Mülheim/Ruhr

Re: Ergänzung LCH Farbraum

Beitrag von Hoogo »

Geile Aktion :!:
----------------
Herr Doktor, ich bin mir ganz sicher, ich habe Atom! /Doctor, doctor, I'm sure, I've got atoms!
awehring
Mitglied
Beiträge: 49
Registriert: Di 13 Aug 2013 22:17

Re: Ergänzung LCH Farbraum

Beitrag von awehring »

@bkh: Woww, cool, dass Du so eine Aktion basteln kannst. Ich verstehe zwar nicht, wie die genau funktioniert, aber sei es drum.

Allerdings gelingt es mir nicht, damit das gleiche Ergebnis wie in meinem ersten Beitrag zu erzielen, das ist mit dem Tool von David Johnstone gemacht (http://davidjohnstone.net/pages/lch-lab ... ent-picker).


Mit Deiner Aktion habe ich das so gemacht: Zunächst habe ich eine rein grüne und eine rein blaue Fläche angelegt (RGB: 0/255/0, bzw. 0/0/255).

Dann lege ich über die blaue Fläche Deine Aktion. Dabei verändert sich das Blau ein wenig, von 0/0/255 auf 19/3/253. Streng genommen sollte es unverändert bleiben. Aber gut, fürs Ausprobieren sollte die Genauigkeit reichen.

Dann habe ich versucht mit dem L und C-Regler (also a-Kanal der Arbeitsebene "LC adjustment") das gleiche helle Blau wie in meinem ersten Beitrag einzustellen. Als erstes das L in der Gradationkurve so lange veschieben bis es auf 88 steht, wie beim Grün. Gemessen mit dem Farbaufnehmer und Lab Anzeige.

Für den C Wert gibt es hier in der Aktion keinen numerischen Wert. Wenn ich versuche den C Wert (a-Kanal) nach Augenmass einzustellen, erreiche ich das Blau von David Johnstone überhaupt nicht. Das beste Ergebnis zeigt das Bild.

Dem Eindruck nach ist es auch wesentlich heller als das Grün, obwohl der Helligkeitswert bei beiden gleich ist. Genau das soll der LCH Farbraum vermeiden!

Mache ich bei der Handhabung der Aktion etwas falsch?


Wichtig: In diesem Screenshot wirkt das allerdings anders als direkt in Photoline. Ich habe deshalb auch die PLD-Dateien verlinkt. Schaut es euch in PhotoLine an!
Aktionstest_k.jpg
Aktionstest_k.jpg (50.94 KiB) 4069 mal betrachtet
Test_grün.pld
(5.77 KiB) 77-mal heruntergeladen
Test_blau.pld
(12.3 KiB) 66-mal heruntergeladen
bkh
Betatester
Beiträge: 3674
Registriert: Do 26 Nov 2009 22:59

Re: Ergänzung LCH Farbraum

Beitrag von bkh »

awehring hat geschrieben:Dann lege ich über die blaue Fläche Deine Aktion. Dabei verändert sich das Blau ein wenig, von 0/0/255 auf 19/3/253. Streng genommen sollte es unverändert bleiben. Aber gut, fürs Ausprobieren sollte die Genauigkeit reichen.
Ja, das passiert aber schon beim Umrechnen von sRGB nach Lab. Wenn man erst nach 32 bit RGB und dann nach Lab umschaltet, funktioniert es genauer, das lässt sich aber in der Aktion nicht so leicht machen.

EDIT: ich kann das Problem im Moment nicht mehr reproduzieren (außer ich schalte erst nach Lab und dann auf 32 bit), bei mir wird RGB-Grün und RGB-Blau im Moment präzise umgerechnet (und auch die Ebenen der Aktion ändern die Werte nicht).
awehring hat geschrieben:Dann habe ich versucht mit dem L und C-Regler (also a-Kanal der Arbeitsebene "LC adjustment") das gleiche helle Blau wie in meinem ersten Beitrag einzustellen. Als erstes das L in der Gradationkurve so lange veschieben bis es auf 88 steht, wie beim Grün. Gemessen mit dem Farbaufnehmer und Lab Anzeige.

Für den C Wert gibt es hier in der Aktion keinen numerischen Wert. Wenn ich versuche den C Wert (a-Kanal) nach Augenmass einzustellen, erreiche ich das Blau von David Johnstone überhaupt nicht. Das beste Ergebnis zeigt das Bild.
So ganz verstehe ich dein Problem nicht. Nur mit dem L- und C-Regler allein kommt man nicht von dem dunklen Blau deines ersten Beispiels auf das helle Cyan im 2. Beispiel. Da hat sich ja auch der h-Wert massiv geändert. Was du siehst, sind vermutlich unterschiedliche Verhalten beim Farbüberlauf, denn das passende Blau kann zumindest der Monitorfarbraum nicht darstellen, vielleicht ist es auch schon jenseits der physikalisch möglichen Farben. Leider eines der Grundprobleme mit LCh und Lab, man gerät sehr schnell außerhalb des darstellbaren Bereichs und oft reagieren die beteiligten Farbräume dann mit merkwürdigen Farbtonverschiebungen.

Ach ja, der C-Kanal ist so skaliert, dass der Maximalwert 255 einem C-Wert von etwa 181 entspricht (128·√2, das ist der maximale C-Wert, der bei PL auftreten kann). Für einen C-Wert von 49 müsstest du also ca. 49*255/181 ≈ 69 einstellen.

L.G.

Burkhard.
Antworten