I was in Northern Italy, and made some pictures there (with emphasis on sentimental value, not trying to do big art). Something I noticed both in real life and on the pictures is that the blue haze of the air was especially strong there, leading to washed-out pictures. Now I want to get the best out of my pictures. How do I post process them to give them a reasonably good look? I found the question on how to prevent it (how-to-maximise-contrast-range-of-distant-landscapes-with-blue-haze), but I can't go back in time and use a filter.

washed out image

This is an example of an original image. Note that I am only about 400 m away from the hill. I find the color of the sky (where there are no clouds) OK, although it could use some saturation. The hill, however, is terrible. First, there is the lack of details and contrast. Second, I'm sure these rocks weren't blue.

processed image

This is the result of my post processing. I like the mountain better with the strong contrast and the enhanced details in the rocks. But I also got a glowing edge at the hill, a strangely cyaney lower right corner, and the steep curve needed for the high contrast made everything too dark, although I pushed the exposure up (This was taken on a bright sunny day, and the second image looks like there is a storm brewing). The trees on the hill continue to look as blue as the rocks, just darker. I tried to compensate some of the blueishness through a slightly warm white balance, which gave the clouds a dirty look.

Any suggestions how to do it better? I have no Photoshop, just free tools (here I used Darktable).


I usually use this technique for pictures taken through windows, but I think it works here, too. In GIMP, I go to Colors | Curves and change the slope of the curve to use all of the available color information:

increasing contrast in GIMP

I like to set the new start/end points for the curve to where the little black line along the bottom of the curves starts and ends. Usually changing the curves for the whole picture works best (and is easiest), but for this picture I found that applying that adjustment to each of the curves (Red, Blue, and Green) instead worked best: adjusted image

I selected 'convert' when opening the image to convert the image from DarkTable sRGB to sRGB; I have no idea if that had any effect.


UPDATE: After having more time to look at this, i've added a variant at the bottom.

Personally, i like add an HDR Toning or similar step to the process; not strictly for the blue haze, but it seems to bring out details better when lost in haze. This assumes the photo makes it easy or possible to compensate for typical HDR problems (grain, ghosts, other weird anomalies). I use Photoshop but there are free tools to do all this--the concept is the same. So basically, i'd use (or start with) three layers plus a curves layer. This is a rough outline, so of course, you'd tweak things to your taste.

Incidentally, i usually create and work these layers in reverse of the order listed below, which is how they're ordered in the stack. In this case, though, i created the curves layer second to eyeball where the color was headed, then redid it at the end.

Curves Layer - just as described by others, adjust your high and low points for each channel, or just hit auto. I tried manually pulling blue and green down, but ended up with the "auto" settings. Normal blending at 100% transparency.

Base Layer - your photo. Normal blending mode at 60% transparency--obviously adjust to taste.

HDR Mask Layer - your photo, add a hide-all mask, then paint in areas to recover highlights, reduce grain, enhance contrast, etc. Normal at 100% transparency.

HDR Toning Layer - your photo with HDR toning applied. I used very tame settings but ended up with some blown highlights in the clouds, excessive grain, and a weird brownish tint to the cloud coming over the ridge in the low-left area. All these things are removed or dampened with the HDR Mask Layer and the Base Layer. Normal at 100% transparency.

enter image description here

Below is a snapshot of my Photoshop window showing the layers and curves settings. Sorry it's hard to read the text.

enter image description here

UPDATE: in the following variant i've done two things, adjusted local contrast (a la @Steve Ross' answer) in the Base Layer (Unsharp Mask 100%, 50px radius, 0 tolerance), and brought the overall curve up to restore a "bright sunny day" look (i'm only guessing at what you saw, so YMMV). Everything else is the same. The unsharp mask settings are pretty severe for local contrast, so adjust as desired.

enter image description here enter image description here


The other way to do this is with levels. In Photoshop, you add a levels adjustment layer (it will be similar in GIMP) and then, in each channel (red, green, and blue) you pull both ends in to where the histogram starts for each respective end. For example:

enter image description here

The end result of doing all three channels is:

enter image description here

Pretty similar to the one that drewbenn posted, but a little different, not quite so dark, especially on the clouds. At any rate, much easier to with raw images in 16 bit mode which, unfortunately, the GIMP is lacking. The more information in your image, the better either of these techniques will work.

  • 1
    because @drewbenn adjusted the curve to a linear curve with shadows and highlight clipped, this is exactly the same as the levels adjustment! The difference between your images comes from different clipping values. – ysap Sep 12 '11 at 4:24
  • @ysap - Mine is channel by channel which may account for the subtle difference, but yes, it's just a different tool for the same action and result. Some may find it a little easier, that's all. – John Cavan Sep 12 '11 at 12:47
  • First, you can do per-channel in curves as well (as you're surely aware). Then, I think that for this specific manipulation, using levels is more straight forward ans I'd recommend it over curves. For the sake of completeness, curves will allow you to fine tune your transformation better than levels (where I believe you can control mainly the Gamma). – ysap Sep 12 '11 at 13:17
  • @ysap - Indeed, curves is the more powerful option and also one that, fairly often, can confuse the newcomer. Depends on how much tweaking he wants to do. :) – John Cavan Sep 12 '11 at 16:51
  • FWIW, there is a levels tool in Gimp, but alas no adjustment layers. That's not crippling, but is annoying if you want to do other manipulations and might change your mind on the clipping levels for the layers adjustment. – mattdm Sep 13 '11 at 3:33

To fight haze in photos you use something called local contrast. The clarity preset of the equalizer module in darktable is a local contrast processing tool.

I made a quick load of your image, used levels tool to correct the range then applied clarity to bring out details (that is, to fight the haze).

I just made a quick fix as seen in the image below, and you would get better results giving the tuning some time.

quick fix screenshot

  • Thank you very much for helping! I already used the eq, but with a custom setting, because I didn't want to change the clouds much. But I don't have a Levels plugin, is this from the dev version? (I have version 0.92 from the PPA). You can see my plugins and the settings I used on the screenshot. i.imgur.com/WY827.jpg. I'd also like to know more about how to prevent the halo on the hill edge which the eq puts there, but this probably needs its own question. – rumtscho Sep 12 '11 at 9:09

I see the entire image as having a blue cast. You may or may not like this. If you don't you can neutralize it using white balance or by correcting one channel as @drewbenn did. However, removing the blue cast is only part of the issue. You're looking for more local contrast. That masquerades under different names, but "clarity" and "definition" are the two most common ones. The idea is to improve the contrast without sacrificing the highlight and shadow areas. Here's a great article on the concept and it has good examples that should illustrate why increasing local contrast would have kept the mountain detail and at the same time cut through some of the haze.

So, with your permission, here is the original with local contrast applied (no blue cast correction). The result preserves detail in the rock and the basic relationship between the luminance of the rock and the sky, while helping cut through the haze:

with local contrast

The sky in my version is not as saucy as @drewbenn's version, but it feels more natural to me. At this point, it's about what you prefer. His is very dramatic.


I just found this very old question & thought it worth adding a modern 'instant fix-it' method.

Apps such as Luminar can now do a huge amount to rescue bland or hazy images.

This was a couple of minutes on the original tiny jpg
I first masked out the mountain using Photoshop's Select & Mask feature, so the colours could be handled separately and then punched the entire image up, really by doing little more than pushing sliders until I was happy. There wasn't a great deal of 'expertise' went into it.

enter image description here

tbh, I've probably pushed the whole image much too far… though still far less than it could have been pushed.


Photoshop also comes with a feature called "Auto Levels". Applying first "Auto Levels" and then "Auto Color" works 95% of time for me in cases like this.

If this fails, then the manual levels/curves adjustment instructed by others will come handy.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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