Vectorscope skin tone indicator and other improvements

Damn. And I was just about to make a post asking to change the default settings to a 1:1.6180334 phi gamma contrast ratio with golden spiral highlight and shadow transitions.

2 Likes

What about instead of having an tool to set skin tone or any other color for that matter if the colour color picker could be used to select a desired color from one image, stored as a preset and then use to set the color balance on another image based upon this preset. This may be useful to allow rapid color matching of subjects between shots.

I don’t understand. You say you want to take a colour sample from one image, and then use this colour sample to “set the colour balance”. What exactly do you mean by that? How exactly would you manually set the sliders of the colour balance module, taking into account the colour sample you took from the first image? That is, which sliders would you modify, based on what logic?

Sorry I did not make myself clear. I would like some sort of color picker to select a color from an image. It may be the color of someone’s skin, the color of a an object, or whatever. I would then like to in another image be able to select an area and match the area to the color from the other image. I am unsure what module should be used to do this color matching. I am also unsure if any of the developers would feel it was worth their while to do this. The motivation comes from a personal project I am doing involving the scanning of thousands of negatives and trying to get pleasing colours that are consistent between frames. Thanks for reading my post and asking for clarification. I hope my suggestion is now clearer.

So how about this as a process:

  • use global colour picker to pick out the colour/skin tone in the source image. Write down the LCh values.
  • use the global colour picker in the target image, select an area containing the colour you want to adjust, and make a live patch.
  • go to Color balance module, and make a parametric mask selecting that hue (use a parametric/drawn mask if you want to confine the colour shift to specific spatial region in the image).
  • use the hue shift slider to align the LCh “h” value of the live patch to match the value you wrote down.
  • use the Chroma global slider to align the LCh “C” value of the live patch to the value you wrote down.

Does that manual procedure achieve what you want?

3 Likes

Thanks Matt for this idea but it did not achieve what I wanted in my hands. I have not yet been able to master the color balance module despite reading the manual and watching videos. At this stage I just have to adjust the color based upon my eye and possibly using a snapshot I can compare one image to another.

I guess what I am suggesting is that a number of tools allow us to set the region to a grey card or neutral area and it sets color to give equal values for RGB. I am just proposing being able to do something similar, but instead allows the user to define RGB values that are at different ratios to allow matching of specific tones between images.

If I ever learn to do coding this would be a project I would try to complete. In the meantime I appreciate the generosity of the developers to make Darktable so great and I realise they need to prioritise their donated time to projects they are most passionate about.

So I guess the full colour equivalent of normalising to a grey card is to use a colour checker target. The colour calibration module allows you to normalise the colours in such a way. Once you have standardised your set of images through this primary colour grading process, you can then apply secondary colour grading filters on top of this standard baseline to achieve a certain creative look across the set of images.

The idea of picking a colour in one image and forcing another colour to match it in a target image is an ill-posed problem, and if you wanted to take such an approach, you’d need to define much more carefully how the colouirs should be mapped throughout the whole image.

The colour mapping module tries to achieve this through some statistical process, but the algorithm to select colour clusters is stochastic and unstable. The colour zones module allows you to do something similar to what I described in my last post, but in display-referred space. Maybe playing with its hue-hue mapping feature might give you some more insight into the colour mapping problem.

1 Like

Thanks Matt for your feedback. I get some great results with the color calibration module and the color zones module so I will explore options using these modules. I have never played with the color mapping module so I will read the manual and have an explore.

color look-up can be another handy one at times


Here’s some scientific data. From the abstract of this paper in Dermatologica, 1971
The Colour of Human Skin - Abstract - Dermatology 1971, Vol. 143, No. 3 - Karger Publishers (of course, I didn’t use sci-hub to access the full paper)

“From this study the hue of all skins were red, and the differences were due to differences in luminosity. Brown skin was the most saturated red, and saturation decreased towards white and black.”

There appears be some variation in hue as well, as discussed further in the paper, but it is bounded.

Human skin hue is limited to a narrow region. Incorporating some form of a guideline (whether it’s a line in the middle of this region or two lines covering almost all skin hues) seems to be a common feature in the professional coloring software.

The presence of such indicators doesn’t prevent colorists to have an artistic touch, at the end of the day, they’re just guidelines. Perhaps Darktable can also take a leap of faith and treat its users as adults who can be trusted which such a guideline.

1 Like

There was some talk at one time of allowing for markers to be added as targets
say trying to match a specific red car
so no fixed skin tone line but you could add one with that sort of functionality

you don’t need the line - just switch to ryb scope and imagine 10:30 on the clock.

For color matching in color calibration, see https://github.com/darktable-org/darktable/pull/10579

2 Likes

See https://github.com/darktable-org/darktable/pull/10935 for a skin tones color reference in a way that is not too racist by kinda standardized still.

2 Likes

the L’OrĂ©al head of R&D did not respond

:grinning_face_with_smiling_eyes:

Going the extra mile though


3 Likes

It’s incomfortable enough for me to break a human metric into norms, I want those norms to be at least inclusive. There are not many studies on the matter, so you have to milk the few ones.

2 Likes

More research on skin tones by Google: https://skintone.google/

Nice read and (hopefully) relevant to this discussion.

1 Like