What is the best way to change the colours in a photo to a specific colour?

Specifically, how can we change the colours using Curves or Levels Layer? Here are few examples for understanding:

  • orange skin tone to pink
  • green leaves to yellow
  • blue sky to cyan
  • black road to violet/dark blue

I mean what values of R, G and B will bring other colors like cyan, yellow, pink, brown etc.

Also, can you suggest the best methods for such colour grading?

  • \$\begingroup\$ Oh! thank you @mattdm... now I've edited the question a little. \$\endgroup\$
    – vishnu
    Jan 2, 2016 at 7:09
  • 2
    \$\begingroup\$ For your description you have to change the hue of a specific color, not its RGB value. \$\endgroup\$
    – Zenit
    Jan 2, 2016 at 7:21
  • 1
    \$\begingroup\$ Why restrict yourself to those two tools? It really makes solving your problem much more difficult. There are tools dedicated to replace colors. \$\endgroup\$
    – Itai
    Jan 2, 2016 at 20:25

3 Answers 3


RGB is fine for minor changes such as going from blue to cyan, but if you want to make major changes you should learn how to work in LAB. LAB's separation of color from luminosity into two distinct opposing channels makes it easy to change one color into any other color using a combination of channel blending and curves. For example, I was able to change bright green grass into a bright yellow in two quick steps (and I've never even tried something like this before!). When I tried to do it using hue/saturation, I had problems with the color range selector not getting everything and with some parts turning red. I spent more time getting a worse result. LAB can certainly be intimidating, but it's power makes it worth learning how to use.


The basic answer is that you can only modify with curves (do not use levels) If and only if you do have the primary color component on the mix, and you can only shift the colors to some degree.

You can not in this case:

Here is an example image with some clear colors.

I separated the channels and you can see for example that I only have information on the green background in the green channel. I have Zero info on the Red or Blue one. (A)

enter image description here

Remember your color wheel, where yellow has Red and Green components. I can move and move the red channel and nothing will happen. I can not turn that into yellow.

You can if you had aditional info

So in this case I replaced "the non info zone" with the info on the green channel. You can do this with the channel mixer: https://graphicdesign.stackexchange.com/questions/17062/how-can-i-easily-swap-colors-swap-channels-in-photoshop

enter image description here

Now you can remove a bit the greenish cast on that yellow simply moving in diferent ratio the red and green curves. (with the proper masking so you do not afect other areas)

enter image description here

It is easy to change colors simply moving curves if you have the component

orange skin tone to pink

Add more red or remove the green and in less proportion the blue

green leaves to yellow

You can not directly as the previous example.

blue sky to cyan

Add more green

black road to violet/dark blue

Simply add more blue with a bit of red.

There are bettter methods

Curves is not the best way to do that.

You could on the other hand mask zones and change a Hue slider.

  • \$\begingroup\$ Awesome ! @Rafeall this is very usefull. can you mention the other way? don't want to explain, just tool or process name is enough.. \$\endgroup\$
    – vishnu
    Jan 3, 2016 at 13:29

You can't, easily, because hues other than pure red, green, or blue are made of mixes of those colors. If you want to increase or decrease the proportion of one of these in a constant way, the levels tool will work. If you want to increase or it only in highlights or shadows, or in an area that's got a particular cluster of a certain brightness of that primary, the curves tool will work.

But for what you want to do, you're better off using a different tool — the Hue and Saturation adjustment (which can also be used as an adjustment layer). That lets you identify a specific color (hue) in a familiar-to-humans color wheel, and map it to a different hue.

Adobe has instructions on doing this in Photoshop.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.