RGB curves - Why does adjusting the G curve also result in a change in R and B channels?

Hello, my first post here. I am trying to understand the RGB curves and the viewing by individual RGB channels. I found that when I select one channel to view, e.g. R, I also see it change if I adjust the G or B curve, as if it compensates the brightness. It seems to happen also in Luminosity mode.

It seems a possible bug, because when I select Demoisaicing: None (show sensor pattern) then sometimes I succeed in getting the expected behaviour, that a curve edit in one channel only is visible if that channel is selected. But during playing with this it can suddenly start to display the unexpected behaviour again.

Best regards,
Oscar

Need to ask, specifically what is changing?

If it’s the histogram plots, that’s probably due to the Y (height) axis scaling to make the histogram fit in the window. As you adjust the curve for the selected channel, keep an eye on that channel’s histogram; if any part of it hits the top of the window, that value is used to scale the rest of the plot, and it’ll appear all three channels are ‘changing’.

Do this: open an image, go to the tone curve, select any channel. Now, grab the top-right control point and drag it down the right side of the curve pane. As you drag it lower, if the program is scaling the histogram the other two channels will ‘flatten’.

Now, put that point back at the top-right, then drag it to the left along the top of the pane. If the program is scaling the histogram, the other channels will stay the same as the channel you’ve selected ‘flattens’.

1 Like

@lightningwizard Welcome to the forum! To help us understand your problem, it would be great if you could provide some screenshots or a sample file with a pp3 sidecar (drag-and-drop). Since you are new, you might have to write a few more posts before you can do that.

I think @lightningwizard refers to the preview of the channels: changing the curve of one affects the others.

Exactly. I have not looked at the histograms yet. The change is visible when viewing one of the color channels. I expected to see no brightness change viewing e.g. the B channel when puling the R or G curve, but this is often the case.

Same with the channel mixer.
If think it’s wrong.

I did a little more playing.
It seems to behave as I expect when 1) Luminosity mode is not enabled; and 2) Color management: no input profile is selected; and 3) Demosaicing is set to None.

If I change to auto-matched camera matched profile (mine is Fuji X-T1 or X-T3), and/or Demoisaicing enabled, the brightness in other channels changes in addition to the one modified, be it with or without Lum mode.

It seems caused by a working profile different to sRGB. With working profile sRGB it works as expected.
Edit: For histogram and colour pickers enable this
grafik

3 Likes

Thank you, that indeed works as expected! Now all is fine for my purposes.
I don’t remember when was the last time I changed the profile, but it was set to ProPhoto. My laptop is Dell XPS 9550, screen color is good but probably just short of Adobe RGB. Not sure it matters for the working space setting and the output.

Quote from Rawpedia: The default working profile is ProPhoto and should not be changed for normal use.

Hermann-Josef

Oops. It was not solved yet.

I have my working profile now at sRGB. Doing normal demoisaicing. I find that with the following settings enabled I still get changes in the other channels, so I have to disable those too.

  • Lab
  • Wavelets
  • Sharpening

If the default should be ProPhoto for typical photo corrections with the best quality, then I think the RGB curve tool gives unintended results.

For example, I want to improve a starry sky photo by subtracting light pollution glows with the RGB curves (“clarkvision” method). I already noticed before that it gives me somewhat unpredictable different results. When I subtract red, I would not want compensation in other color bands which defeats the purpose, because it likely does a multiplication like white balance, which should be avoided.

My other use is to analyze photographs of electrical discharges for contributions of light in each RGB channel. For this I could just switch the color profile and disable Lab, etc.

@lightningwizard You might want to use the sampler tool. I think it is called a colour picker; the icon has a dropper. Sometimes, visually, a change in one channel makes the colour change drastically. The only way to know for sure if your other channels are changing too is to see the values change. In my version of RT (dev), it looks like this:

image

You have to distinguish between what is is rendered on screen (affected by the selected screen profile) and what is calculated internally (affected by the working profile). If you set for example screen profile and working profile (both) to ‘Bruce RGB’ there is no change in blue/green channels (neither visible nor in histogram and color pickers) when you change the R curve.

Thus, is there a malfunctioning ?

Don’t know. Maybe @jdc can answer this question?

Well, take a rgb triple in srgb space, convert it to a different rgb space (e.g. prophoto), add a value to the red channel, convert back to srgb, blue and green channels are also changed in srgb space, simple.

In my opinion, in working profile sRGB it works. But if the default working profile is ProPhoto, output RTv4sRGB, monitor None then this tool does not give the intended result. It needs to set the monitor profile also to ProPhoto and restart the program (but this profile is no good as monitor profile, at least for me). I don’t know if this is what can be requested from a user to get the right result.

Perhaps this tool can be made to work on the raw camera RGB channels?

Example: input is sRGB with (0.04; 0,04; 0,04)
convert to Adobe RGB gives (0.0725069089; 0.072257527; 0.0716353825)
add 0.01 to red gives (0.0825069089; 0.072257527; 0,0716353825))
convert back to sRGB gives (0.0566203101; 0.0400901008; 0.0391849493)

As you see, G and B are also changed.

No, that would be another tool. You should be able to change the multipliers under the Raw tab. I don’t have RT open to tell you exactly where.

If you look at @heckflosse’s example, G and B haven’t changed very much relatively, as it should be.