How to Match Skin Color Between Pictures Of The Same Person In GIMP


I have two pictures of the same person. Pictures were taken at same place but slightly different light were used in each one. I would like to adjust the skin color in one picture to match the other so both have the same skin (background is not so important, it can be cropped in the final image containing just the entire head)

I attach the following image as an example: same picture

*Update: This is what I've tried so far (with poor results)

  1. Select the skin to change in a duplicate layer face selected
  2. Pick the color of the desired skin
  3. Bucket fill the selection of the target image with the source skin color enter image description here
  4. Mode "Overlay" between the duplicated layer and the other one. overlay
  5. Changed lightness and saturation lightness and saturation
  6. Final "akward" result: comparation

Image source: licensed under the Creative Commons Attribution-Share Alike 2.0 Generic license

11/30/2015 6:34:00 PM

Accepted Answer

I did this in photoshop but you can use the same technique in GIMP.

Directions are written for GIMP

Add a curves layer, In the image menu through Tools → Color Tools → Curves or Colors → Curves. You want to brighten up the dark areas without adjusting the shadows too much.

Change the adjustment layer blending mode to Color Mode (Suggestion made by Ryan, luminosity is a blending mode in photoshop).

curves layers

Note: I used a layer mask to hide the parts I didn't want affected by the adjustment layer.

I added a levels adjustment layer to fine-tune the contrast, In the image menu through Tools → Color Tools → Levels.

Result is a modified version of your top most image.

face retouch result

11/30/2015 10:30:00 PM

Licensed under: CC-BY-SA with attribution
Not affiliated with: Stack Overflow

Website under construction!!!