Jump to content
Our response time is longer than usual currently. We're working to answer users as quickly as possible and thank you for your continued patience.

Saturate a photo using subtract mode


Recommended Posts

The saturation of a color is determined by a combination of light intensity and how much it is distributed across the spectrum of different wavelengths.  The math for saturation includes luminosity. An interesting way to saturate a photo  is using the subtract blend mode.  This can be achieved by making a copy of the photo then inverting it.  This changes each color to the complementary color. But it also affects the luminosity.  You then apply the subtract blend mode. You are in essence subtracting the complementary colors from the original photo that has the effect of saturating the original color.  In RGB mode, when inverting, you not only invert the color but you also invert the luminosity.  This has will darken the photo colours.  So in practice what I have found you may need to change the brightness of the midtones and/or the shadows.  You can then apply blend ranges to apply the difference blend mode but I find keeping the highlights from the original works best.  

I have included a macro here that does this.  The macro lets you manipulate the brightness and contrast of the midtones and shadows if you wish.  YOU can also manipulate the blend range if you desire.  Have fun. Note that this works in the RGB color space but NOT in the LAB color space as the math is different.  

saturate by subtract RGB.afmacro

Link to comment
Share on other sites

  • 1 month later...

@hanshab Would it be possible to export this from macro library as a .macros file. This way it can be tried on the iPad version of AP. :)

IPad Pro 10.5/512GB   lpadOS 16.2 Apple Pencil (1st gen), Affinity Photo 1.10.5 Affinity Design 1.10.5 Affinity Publisher 2, Affinity Designer 2, Affinity Photo 2

Official Online iPad Help documents (multi-lingual) here: https://affinity.https://affinity.help/ 


Link to comment
Share on other sites

I cannot follow the logic of the arithmetic here. You are inverting the image, then subtracting it from the original. If the Original saturation is S, then inverting it gives 1-S. Subtracting this from the original gives S-(1-S), or 2S-1.

I tried your macro and it does not appear to do anything. The outcome looks similar to the original. If anything, a little darker with the default parameters.

Here is an original image I used:


I applied the procedure: Duplicate, Invert, Blend Subtract and I got this:


Just for comparison, I added an HSL adjustment, boosting the saturation and got:


What am I supposed to see. Can you give examples?


Windows 10, Affinity Photo 1.10.5 Designer 1.10.5 and Publisher 1.10.5 (mainly Photo), now ex-Adobe CC

CPU: AMD A6-3670. RAM: 16 GB DDR3 @ 666MHz, Graphics: 2047MB NVIDIA GeForce GT 630

Link to comment
Share on other sites


In a precedent  thread  about Saturation  mask  you have propose the Mode L*a*b* for this.

This message incitate me to explore it, as you said  at this time, it's more easy more logic

  My 1.7  macro lab  Lab .afmacros

Process use


I tried The image of John

Click on the macro

You have Luminance L  and Color  (ab) at this point nothing new compare with background desactivate this last  one

Duplicate color layer  put in saturation mode and made groupe Multiply mode

adapt with opacity,  Big effect..

eventually use Luminance layer curve , here not use perhaps local correction on over lumonosity on white  inflorescence,  here white is not color)


here not use perhaps local correction  for the "over luminosity" on white  inflorescence , here white is not color



Link to comment
Share on other sites

There was a step missing in the macro, which is initially to duplicate the layer.  I fixed that and put in more explanations to the macro.  The key is the inversion and the subtraction which takes out the complementary colours of RGB to make the RGB more saturated.  However what John Rostrow got is typical if you don't adjust  opacity and the brightness and contrast of the colours once the subtract mode is applied.   This is because in RGB as opposed to LAB, both colours and contrast are adjusted. In the macro I allow you to adjust all these parameters to taste since each picture will be different.  The saturation is very deep as is the contrast so those will need to be adjusted. I recommend that you set the global opacity  to between 10 to 20 percent

saturate by subtract RGB.afmacro

Link to comment
Share on other sites

@hanshab,. This revised version certainly gives a more convincing saturation effect.



and with the revised macro applies with the default settings:


I shall have to do some further experimentation.

@Max P. I tried your Lab macro but could not follow your instructions.


Windows 10, Affinity Photo 1.10.5 Designer 1.10.5 and Publisher 1.10.5 (mainly Photo), now ex-Adobe CC

CPU: AMD A6-3670. RAM: 16 GB DDR3 @ 666MHz, Graphics: 2047MB NVIDIA GeForce GT 630

Link to comment
Share on other sites

@ john  sorry , english is not so evident for me. 

I try the macro with only one  background layer,  I send you the file.  1.7 Version I hope it's good.  Say me if you want a 1.6 version.

usually modulate  opacity on the color layer or the duplicate is enough.  L layer with curves  for correct the global images or part must be use in some cases.s



it's ok for me and I understand  your comment.


Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Create New...

Important Information

Please note there is currently a delay in replying to some post. See pinned thread in the Questions forum. These are the Terms of Use you will be asked to agree to if you join the forum. | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.