By Marie Gardiner


Curves are powerful: they offer speed and efficiency in your post-production workflow like nothing else. For a novice, though, curves might even be a little too powerful. Fear not! Curves are not as complicated or overwhelming as you might think. 

In this tutorial
we’ll go through the main features of the Curves Adjustment Layer, where those features come from, and how to use curves effectively to make
local contrast adjustments to your images.

We’re going to touch on a few prerequisites before we get into the technique. Here’s what we cover in this tutorial:

  • How Tones, Contrast, and Curves Work
  • How to Read Tone Curves and Histograms
  • How to Use Control Points
  • Order of Operations
  • How to Make Local Contrast Adjustments With Curves
  • Are you ready? Let’s dive in.

    Part 1. Dynamic Range

    When you create a new Curves Adjustment Layer in Adobe Photoshop you get a tone curve, a histogram, and a number of other options and buttons. What are these things?

    It’s All About Dynamic Range

    First, keep this in mind: every digital image is actually a grid of tiny little pixels.

    Second, all pixels have a value.

    The dynamic range of a photograph is how many shades of grey, from black to white, there are in an image. In an 8-bit greyscale digital image, such as the one we’ll consider below, each pixel can be one (and only one) of 256 discrete intensities, or shades of grey. James Thomas recently gave us an overview of colour models, and I highly recommend it if you want to dig deeper into how digital images work.

    The histogram is a handy visualization. It
    is, essentially, a picture of your picture: it tells you, for any given intensity,
    how many pixels with that specific value of grey exist in the image. It’s a quick way to get an impression of the dynamic range in your photograph without looking at the image itself. This separation of
    photographic values from visual information is very useful, in ways
    we’ll explore below.

    The curve is a way to manipulate the distribution of those tones using a graph, and the focus of this tutorial. Read on for more!

    Part 2. How to Read Tone Curves and Histograms

    As Harry Guinness explained: “The Curves Tool is a graph. On the X-axis you have the Input level and on the Y-axis you have the Output level. Each axis has values that range between 0 and 255.” From left to right and bottom to top:

  • At zero, on the far bottom left of the graph, is black: pixels that have no intensity.
  • Just up and to the right of zero is the shadows, which photographers also call “darks.”
  • In the middle of the graph is middle grey, surrounded on either side by “mid-tones.”
  • Up and to the right are bright areas, or “highlights.”
  • At the top right, at a value of 255, is white: pixels that have full intensity.
  • The top part of the curve controls the highlights, centre the midtones, and the bottom the shadows.

    The Slope of the Curve Controls Contrast

    Contrast is
    an expression of how much difference there is between tonal values in
    an image. We can measure two kinds of contrast: global contrast for the
    whole picture, and local contrast for a specific area.

    Each new curve begins with a straight line at a slope of 45 degrees. This means there a one-to-one relationship between Input and Output, and the filter has no effect.

    Changing the slope of the line changes the relationship between Input and Output. Creating a slope greater than 45 degrees increases contrast, a slope lower than 45 degrees lowers it. 

    Moving the curve also adjusts values.
    Moving the whole curve down results in a lower output value: the image
    darkens. Moving the whole curve up results in a higher output value: the
    image lightens.

    Looking at the histogram for our example, you can see that most pixels are in the middle of the tonality range, almost evenly distributed between shadows and highlights, with a dip at the midtones. There are also plenty of pixels in both the darks and lights. This tells us that we have an image with a relatively even distribution of tones and good all-round exposure. Here is
    the actual image so you can see that that’s a fair representation:

    Before local adjustmentThe image I’ll be working on. Photograph by author.

    A fairly flat image straight out of camera is actually normal and desirable. In order to protect the highlights and shadows, digital camera manufacturers tend to take a conservative approach to interpreting the raw, linear information from their sensors into a photographic image. Better to start a little flat than lose important information to excessive contrast!

    The Power of Contrast

    Our eyes are drawn to towards areas of contrast. Think of a polar-bear in the snow, he’d be hard to spot right? That’s low contrast. Now think of a panther against the snow; he’d be much easier to see: that’s high contrast. The trick with getting the right amount of contrast (and this is largely subjective) is to make sure your whites aren’t too white and your blacks too black.

    In plain terms, contrast is the difference between the light part and dark parts of your image. Increasing that difference overall will ‘pop’ your image, and decreasing it will make it look flatter, or duller. Global contrast adjustment is useful in a general way, but it actually isn’t all that powerful when it comes to making particular images sing. For that, we need local contrast adjustment.

    We use local contrast adjustments to add emphasis in an image, or particular parts of that image, whether that’s through increasing or decreasing. We adjust the distribution of tones in an image to make full use of the dynamic range and, most importantly, direct the viewer’s eye. How you do that will completely depend on the content of each of your photographs. 

    Part 3. How to Use Control Points

    You might think this all sounds similar to the Levels tool,
    and you’d be right, but a key difference is that with Curves
    you can use control points along your diagonal line for fine control
    instead of rough adjustments to the tones within =black, white and
    midtone ranges.

    Control points are coordinates on your curve. You can drag these coordinates up or down to change the relationship between Input and Output. Where you place your
    point determines which part of the tonal range you want to change.

    To illustrate, I’ve made three control points on our demonstration image: one near the
    bottom, one in the middle and one near the top. I adjusted these to make the
    popular ‘S’ curve, and you can see the effect is has on the image:

    s curve

    The shadows become darker, the highlights brighter and the
    mid-tones stay relatively unchanged but have more contrast. The ‘S’ curve adds contrast in the midtones while reducing contrast in the highlights and shadows. (It also adds saturation in a colour image.) A curve like this is a common step in the global adjustment process.

    Moving the control points can seem a bit unintuitive, but it’s simply a case of clicking, holding and dragging them to where you want them to be:

    dragging control points

    Once a point is selected you can also move it with the arrow keys on your keyboard. This is good fine adjustments. Hit Tab to cycle between points.

    Drag a point off the graph and release to remove it.

    Part 4. Order of Operations

    Now that we’ve been through the basics of curves and control points let’s review the workflow for adjusting local contrast.

    Step 1: Complete All Global Corrections and Adjustments

    I know it’s temping to start tweaking your favourite images right away, but make sure to move every picture in your set through global corrections and adjustments before you do any local adjustments. Making local adjustments on one image before you’ve finished the global work on the others will quickly lead to your group of images becoming out of sync, and multiplies the difficulty of keeping the set matching. Always move all the pictures in a set to the same stage of post-production together.

    In the case of our example, and probably in your case too, a gentle ‘S’ curve as illustrated above will be enough of a global change before you get into your detailed changes.

    Step 2: Make Needed Local Corrections

    Some images need a little extra remediation. Before you do local adjustments, do your local corrections. This includes correcting vignetting, barrel distortion, fringing, chromatic aberration, and so on. Correcting these things after you’ve made local contrast adjustments is much harder, so correct them now.

    Step 3: Evaluate the Image and Make a Plan

    Alright. Global corrections and adjustments complete, local corrections made. Now you can see your picture clearly. Look at your image. What is it all about? What’s special about it? How does it make you feel? Make a note of these things in your work log.

    • Photo Critique
      How to Read a Photograph
      Dawn Oosterhoff

    What does this picture need? What elements do you want add emphasis to? Are there specific parts of your image that need more contrast? Maybe there are areas that actually need a decrease in contrast! These are all questions you need to ask yourself when deciding how you want your image to look. Write down these notes in your work log.

    The adjustment process may become intuitive, one change leading to another, but it should always come back to your evaluation of the image, your imagination for it, and where you want it to go.

    Step 4: Make Local Adjustments

    For each major local area that you want to adjust, make a new curves adjustment layer. More on this process below.

    Step 5: Re-evaluate and Compare

    After you’ve completed a round of adjustments, stop and look at your image again. Did the adjustment create the image you imagined when you were making a plan? Maybe your understanding of the image has changed. That’s OK! If it has, make a note in your work log.

    Also look at how your image compares to the rest of the group. Does it still match? If not, you may need to alter your adjustments.

    Part 5. How to Make Local Contrast Adjustments With Curves

    In our example image, an ‘S’ curve
    did a good job on a global adjustment level, as you saw above, but there are several parts of the image that need local adjustment.

    The sky is still quite
    flat and I’d like more drama. I really like all the different and
    contrasting textures in the image—the roughness of the wood, the
    fluffiness of the clouds— and how they create atmosphere and feeling of
    depth. I want to bring those things to the fore. So how do we achieve
    that? My aims are to make the sky darker, make the clouds ‘pop’ more,
    and to bring out some of the darker shadows around the boat and beach.
    Each of these can be tackled in their own stage.

    Step 1: Add a Curves Adjustment Layer

    Add a Curves Adjustment Layer (click the New Adjustment Layer button at the bottom of the Layers panel) and create a control point on the curve in the tonal range you want to adjust.

    Using the ‘in-image’ selector (the pointing hand), I selected the sky:

    This shows me where on my curve the tonal range of the sky, falls. By click-holding and dragging downwards, I darkened the sky. Be aware that this also affects other elements in the same tonal range—for me this included some of the stony beach—and so further adjustments must be made to compensate for that change.

    This specificity is where using curves lets you go much further than levels.

    Step 2: Use a Layer Mask to Restrict Your Adjustments to Specific Areas

    As with all adjustment layers, you don’t work on the actual pixels directly. The curves layer has been created with a white Layer Mask, meaning you can paint over it to reduce the effects of the layer within specific parts of your image.

    Now paint out the unwanted adjustments to your image using the Layer Mask using a black Brush (B).


    Using a soft, low opacity brush, as illustrated above, paint over any areas that don’t require the adjustment. So, in the case of our example, we can see the foreground tyre and boat shadows have become far too dark.

    layer maskThis is the layer mask shown as a rubylith (Alt-Click on the Layer Mask thumbnail) so that you can see where I’ve painted. Some places I’ve gone over more heavily than others with a brush at about 50% opacity so that I was able to work in more gradually and avoid getting distinct lines where I painted. 

    In the above image, red is where the filter is blocked by the mask. Everything else is where the filter is applied. This is the result:

    after maskAfter adjustments

    The sky is now looking much better. The next step is to make the boat, clouds, beach and water highlights ‘pop’ a little more. So we go back and create a new Curves Adjustment Layer.

    Step 3: Repeat!

    Using the same method as last time, I used the ‘in-image’ selector to grab the boat highlights (circled) and dragged up to brighten them.

    brighten highlightsDragging the highlights up on the boat, brightens them but also similar tonal areas across the image

    This also brightened similar tonal areas across the image. The clouds brightened, as did the light areas of beach and sky. This is not what I wanted, so it’s time to deploy the masks again.

    As there were smaller areas to adjust this time, it was easier to invert the layer mask (CtrlI) and work on brushing in the changes rather than brushing them away.

    second layer maskThe layer mask shows where I’ve painted out the effects

    In the above image, you’re seeing the red areas where the changes weren’t applied, and then the lighter pink areas where I’ve brushed in our highlight changes; focusing mostly on the boat but then bringing out a little of the lighter beach stones, the water highlights and part of the clouds.

    after highlight adjustmentsAfter the highlight adjustments

    Potential Problems

    As with all methods of editing, there has to be a trade-off.
    With curves, you’re essentially stretching or compressing tones, and so go too
    far and you’ll get strange results; often called posterisation, which tends to
    occur when graduated tones are stretched:

    If you try to lighten and dark similar areas of tonality, then you’ll get posterisation.

    The above is a gross exaggeration (you’d never really use a curve like that) but demonstrates the effects you might get if you try to do too much in a similar area on one curves layer.

    When in Doubt, Work From Big to Small

    If you can’t solve all the everything one layer, don’t stress: just make another. It’s much better to work on one layer per ‘problem’ and adjust from there, working from the largest to the smallest areas you want to adjust.

    Use multiple layers and focus each
    layer on one particular task. This will help you to stay organised (remember to
    name your layers!) and let you go back and make adjustments as you build up your

    Almost Done

    As with most adjustments of this kind, it’s often actually better to go a little too far, knowing that you can turn down the opacity on your layers afterwards if you need to tone it down. Try grouping your changes into a folder. Just click the folder icon at the bottom of the Layers panel and then drag your associated layers into it:

    You can then turn down the Opacity on the folder, which will affect all the layers, or you can go into the folder and adjust each one separately. Here I toned down all the layers by 25%, to 75% opacity.

    All Done

    Alright, breathe out. Let’s look at our test image again.

    Final image resultAll done!

    The initial image looked a bit flat, everything was grouped around
    the midtones area on the historgram. There wasn’t much difference
    between the dark areas of the image and the light. Adding a little global
    contrast helped, but that only goes so far!
    Sometimes we don’t want to changes to an entire image. Particularly
    if you have a lot of tonality in the same range, as with this  image, you really do need local adjustments to direct the viewer’s eye.

    image I started with had very little little definition or distinction
    between the boats, the tyre, the beach or the sky. They each have their
    distinct features, so using local contrast adjustments to bring those out made
    sense. As the clouds were already quite light, darkening the sky helps
    them stand out. Likewise, by concentrating on the highlights of the
    boat, beach and water using a curves adjustment layer and layer mask, we
    can create lighter areas to draw the eye, without overdoing it in areas
    that are already light. I like the contrasting textures of these areas now.

    And Now You Can Wield Curves With Precision

    Curves! What an excellent tool. As the versions of Photoshop
    progress, it just gets better. I recommend really getting to grips with curves
    and familiarising yourself with the settings and even the effects it can have on
    different types of images. 

    Starting with greyscale images is easier because you don’t
    have to worry about over saturation and it’s easier to see the differences your
    changes make. Plus, black and white images really lend themselves well to high
    contrast, so they’re great to practice on. Of course, not all images require more contrast and you can use curves just as effectively to reduce it as you can to add it!

    Try using the presets first and seeing what each does and
    the effect is has on the image, then use this knowledge to adjust your pictures
    further. Remember to keep adjustments subtle and realistic or you’ll get anomalies appearing in your pictures. You can always further adjust these by making good use of your layer mask and painting any errors away.

    • Black and White
      It’s Not a Black and White World: How To Imagine Pictures in Monochrome
      Harry Guinness

    Read more here:: How to Make Local Contrast Adjustments With Curves in Adobe Photoshop