Project

General

Profile

Bug #11765

Colors of white balance sliders looks strange

Added by Sergei Rybalko over 1 year ago. Updated over 1 year ago.

Status:
Closed: won't fix
Priority:
Low
Assignee:
-
Category:
-
Target version:
Start date:
10/08/2017
Due date:
% Done:

0%

Affected Version:
git master branch
System:
Debian
bitness:
64-bit
hardware architecture:
amd64/x86

Description

I installed git version of Darktable and found colorful sliders of white balance module. It is very nice!
But for me two sliders Tint and Temperature look unnatural. I expect temperature goes yellow orange on the right, Tint comes from magenta to greens as I feel it when edit photos.

Now it looks strange. Temperature slider yellow-blue with controversial gradient and tint all the way green

Selection_002.png (12.6 KB) Sergei Rybalko, 10/08/2017 05:57 PM

WBlightroom.png (41 KB) Sergei Rybalko, 10/24/2017 06:13 PM

DT White Balance Errors.png (86.9 KB) Anonymous, 11/20/2017 08:28 PM


Related issues

Duplicated by darktable - Feature #11834: white balance color indicator is IMHO wrong Duplicate 11/26/2017
Duplicated by darktable - Bug #11864: Whitebalance Color gradient is wrong Duplicate 12/17/2017

History

#1 Updated by Heiko Bauke over 1 year ago

I also like the new design of the white balance module. I am, however, not able to reproduce the described bug with a recent build from git master on Ubuntu 17.10 / 17.04. The tint slider is green on the right and magenta on the left part in my build. Temperature slider looks the same. There might be better choices for the colors in the temperature slider, see https://en.wikipedia.org/wiki/Color_temperature for alternatives.

Heiko

#2 Updated by Sergei Rybalko over 1 year ago

Now it looks strange. Temperature slider yellow-blue with controversial gradient and tint all the way green

I would expect the same as in Lightroom. See attachement

#3 Updated by Roman Lebedev over 1 year ago

  • Status changed from New to Closed: won't fix

Sergei Rybalko wrote:

Now it looks strange. Temperature slider yellow-blue with controversial gradient and tint all the way green

That is on purpose.


[18:05:20] <houz> it's not. well, it is, but on purpose
[18:05:37] <houz> it matches the temperature numbers
[18:05:52] <houz> you basically set the temperature of the image and not what you want to do to it
[18:06:27] <houz> a black body radiator getting hotter becomes more blueish
[18:06:45] <houz> colder glowing is red or orange

I would expect the same as in Lightroom. See attachement

We really, really don't care what some other program $name does.

#4 Updated by Sergei Rybalko over 1 year ago

Roman Lebedev wrote:

Sergei Rybalko wrote:

Now it looks strange. Temperature slider yellow-blue with controversial gradient and tint all the way green

That is on purpose.

[...]

I would expect the same as in Lightroom. See attachement

We really, really don't care what some other program $name does.

I understand you reason. I am OK with what it is now in Darktable.
I am physician and clear understand color temperature rigorous meaning.

Still for color correction module for image artists it is more intuitive to see on sliders the effect it will produce when you move toward it. For example sliders below temp and tint, R G B, they change intensity of that specific color component in image and moving them produce intuitive expected result. In many modules in Dartable it is the case (color correction ex.).

It is only my opinion and I am fine now anyway

#5 Updated by Heiko Bauke over 1 year ago

Being a physicist I was completely confused when I saw the white balance tool of Lightroom for the first time. The color gradient as chosen for Darktable looks much more natural to me.
Nevertheless I had expect to see orange at the low-temperature end, rather than yellow. Personally I would prefer to see a color gradient similar to

https://de.wikipedia.org/wiki/Datei:Color_temperature_sRGB.svg

or as in

http://www.vendian.org/mncharity/dir3/blackbody/

Looking at the colors and the temperatures indicated in the white balance tool I speculate that the color on the temperature slider corresponds essentially to the wave length where the black-body spectrum has its maximum for a given temperature. Because the black body spectrum is rather broad this wave length is, however, not really representative for the color of a black body.

Heiko

#6 Updated by Roman Lebedev over 1 year ago

  • Target version set to 2.4.0

#7 Updated by Anonymous over 1 year ago

Sorry for touching an already closed bug report, but the "solution" isn't satisfying at all.
You might have your reasons to correct the one way or the other, but the UI should indicate what to expect, otherwise it's a source of confusion which makes your efforts pointless.
I attached a picture to clarify the point by example of a white area:
- If the Tint slider is moved to the left, the image should turn redder as the slider indicates. Instead it turns light blue and then suddenly green.
- If the Temperature slider is moved to the left, the image should turn yellow as the slider indicates. Instead it turns blue.
- If the Temperature slider is moved to the right, the image should turn blue as the slider indicates. Instead it turns yellow.
This is what we are talking about and in their current state the slider colors are confusing.
I already digged a bit in the code and found out that the slider colors are computed differently to the real adjustment: while the slider colors are computed from the black body temperatures, the internal process uses some coefficients which I couldn't clarify. Using the same computation internally and for the slider colors could make the UI elements show what to expect reliably.

#8 Updated by Roman Lebedev over 1 year ago

Heiko Bauke wrote:

Being a physicist I was completely confused when I saw the white balance tool of Lightroom for the first time. The color gradient as chosen for Darktable looks much more natural to me.
Nevertheless I had expect to see orange at the low-temperature end, rather than yellow. Personally I would prefer to see a color gradient similar to

https://de.wikipedia.org/wiki/Datei:Color_temperature_sRGB.svg

or as in

http://www.vendian.org/mncharity/dir3/blackbody/

Looking at the colors and the temperatures indicated in the white balance tool I speculate that the color on the temperature slider corresponds essentially to the wave length where the black-body spectrum has its maximum for a given temperature. Because the black body spectrum is rather broad this wave length is, however, not really representative for the color of a black body.

That is exactly what that slider is supposed to show
https://github.com/darktable-org/darktable/blob/d99df3190faffffb0c66f813d5d5461ff6b89d37/src/iop/temperature.c#L1381-L1391
```
// reflect actual black body colors for the temperature slider
```
If you trace it temperature_to_XYZ() is using Spectral Power Distribution of a Blackbody / CIE D-Illuminant:
https://github.com/darktable-org/darktable/blob/d99df3190faffffb0c66f813d5d5461ff6b89d37/src/iop/temperature.c#L240-L354

Heiko

Sven Claussner wrote:

Sorry for touching an already closed bug report, but the "solution" isn't satisfying at all.
You might have your reasons to correct the one way or the other, but the UI should indicate what to expect, otherwise it's a source of confusion which makes your efforts pointless.
I attached a picture to clarify the point by example of a white area:
- If the Tint slider is moved to the left, the image should turn redder as the slider indicates. Instead it turns light blue and then suddenly green.
- If the Temperature slider is moved to the left, the image should turn yellow as the slider indicates. Instead it turns blue.
- If the Temperature slider is moved to the right, the image should turn blue as the slider indicates. Instead it turns yellow.
This is what we are talking about and in their current state the slider colors are confusing.
I already digged a bit in the code and found out that the slider colors are computed differently to the real adjustment: while the slider colors are computed from the black body temperatures, the internal process uses some coefficients which I couldn't clarify.

Using the same computation internally and for the slider colors could make the UI elements show what to expect reliably.

It would, but then all these gradients would need to be recomputed each time something is changed. And also, they would be different depending on the input color profile.

#9 Updated by Anonymous over 1 year ago

This might be. But now they show a plain wrong information. Is this better?

#10 Updated by Sergei Rybalko over 1 year ago

Sven Claussner wrote:

This might be. But now they show a plain wrong information. Is this better?

I expect we will get more complains and reports when 2.4 will be released. It is indeed confusing from artistic point of view at current state.

#11 Updated by Heiko Bauke over 1 year ago

Hi,

Sergei Rybalko wrote:

Sven Claussner wrote:

This might be. But now they show a plain wrong information. Is this better?

I expect we will get more complains and reports when 2.4 will be released. It is indeed confusing from artistic point of view at current state.

yes it will confuse users how have used Lightroom or Affinity in the past, and yes they will complain. Nevertheless, I strongly support to keep the interface as it is. Instead of changing the UI one should explain clearly in the manual the meaning of the color indicated under the color temperature slider. No serious photographer how has understood the concept of color temperature will get confused by the darktable UI.

Heiko

#12 Updated by Heiko Bauke over 1 year ago

Hi,

Roman Lebedev wrote:

Heiko Bauke wrote:

Being a physicist I was completely confused when I saw the white balance tool of Lightroom for the first time. The color gradient as chosen for Darktable looks much more natural to me.
Nevertheless I had expect to see orange at the low-temperature end, rather than yellow. Personally I would prefer to see a color gradient similar to

https://de.wikipedia.org/wiki/Datei:Color_temperature_sRGB.svg

or as in

http://www.vendian.org/mncharity/dir3/blackbody/

Looking at the colors and the temperatures indicated in the white balance tool I speculate that the color on the temperature slider corresponds essentially to the wave length where the black-body spectrum has its maximum for a given temperature. Because the black body spectrum is rather broad this wave length is, however, not really representative for the color of a black body.

That is exactly what that slider is supposed to show
https://github.com/darktable-org/darktable/blob/d99df3190faffffb0c66f813d5d5461ff6b89d37/src/iop/temperature.c#L1381-L1391
```
// reflect actual black body colors for the temperature slider
```
If you trace it temperature_to_XYZ() is using Spectral Power Distribution of a Blackbody / CIE D-Illuminant:
https://github.com/darktable-org/darktable/blob/d99df3190faffffb0c66f813d5d5461ff6b89d37/src/iop/temperature.c#L240-L354

I expected to see more orange tones under temperature slider. Thus I investigated to source and made a more thorough comparison between the RGB values that are used to indicate the temperature in the color temperature module and the RGB values that are given in http://www.vendian.org/mncharity/dir3/blackbody/ . I found that the lack of orange tones at the low-temperature end is because the temperature slider starts at a relatively high temperature of 1900 K. Furthermore, the darktable temperature module seems to employ a white point of 5000K, whereas all other temperature-color charts that I have seen before are based on a 6500 K white point.

I am lacking the expertise in color management to judge which approach to map temperature to RBG (and which white point) is more appropriate. However, the approach taken in the color temperature module seems to be absolutely reasonable to me. No need to change anything.

Heiko

#13 Updated by Roman Lebedev over 1 year ago

Heiko Bauke wrote:

Hi,

Sergei Rybalko wrote:

Sven Claussner wrote:

This might be. But now they show a plain wrong information. Is this better?

I expect we will get more complains and reports when 2.4 will be released. It is indeed confusing from artistic point of view at current state.

yes it will confuse users how have used Lightroom or Affinity in the past, and yes they will complain. Nevertheless, I strongly support to keep the interface as it is. Instead of changing the UI one should explain clearly in the manual the meaning of the color indicated under the color temperature slider. No serious photographer how has understood the concept of color temperature will get confused by the darktable UI.

Heiko, in this case, your understanding of how dt works is spot-on :)
The ui needs to be understandable by the knowledged users, who have read usermanual; confusion of recent converts will always be there, and is temporary.

Heiko Bauke wrote:

I expected to see more orange tones under temperature slider. Thus I investigated to source and made a more thorough comparison between the RGB values that are used to indicate the temperature in the color temperature module and the RGB values that are given in http://www.vendian.org/mncharity/dir3/blackbody/ . I found that the lack of orange tones at the low-temperature end is because the temperature slider starts at a relatively high temperature of 1900 K.

That range (1900K ... something) is exactly the range of that temperature slider.

#14 Updated by Roman Lebedev over 1 year ago

  • Duplicated by Feature #11834: white balance color indicator is IMHO wrong added

#15 Updated by Matthieu Moy over 1 year ago

tint all the way green

I think I have a fix for that here: https://github.com/darktable-org/darktable/pull/1560

I expect temperature goes yellow orange on the right

I strongly agree with this and find the current setting very confusing. I understand the physics behind the current setting, but I don't think this is a good argument to have this color in dt, which isn't a physics-modeling tool. The current setting is inconsistent with other parts of the GUI. Every colored slider I can think of in dt has semantics "move the cursor to a color and get this color on the picture". It is the case for at least gradated density, color balance, and all cursors other than temp in "white balance".

To me, the point of having color in sliders is to serve as reminder of which direction to move the cursor to get an effect. Having the black body colors in that slider defeats that goal.

#16 Updated by Axel Gerber over 1 year ago

Dear all,

after my Feature #11834 got duplicated to here, I red all the comments here. I am not physician but also have my profession in the technical industry. I do read menuals, but honestly not 100%. Maybe 40% and the rest, when I run into trouble.

Photography is my hobby, so maybe one may say dt is made for full pro or scientists. I understand that and is part of what I love on dt.

However, when I am workin on pics. I share the opinion of Matthieu

Just my users-feedback

Cheers
Axel

#17 Updated by Roman Lebedev over 1 year ago

  • Duplicated by Bug #11864: Whitebalance Color gradient is wrong added

Also available in: Atom PDF