HDR scenery black point issue

Hello. I’m struggling finding any free HDR merge tool that actually works with my raws (on Windows 10). The last one I’ve been trying is HDRMerge 0.5 which is incredibly fast and simple but the result looks like it fails to find the correct black point. Am I doing something wrong? Converting the source files to DNG didn’t help.
Darktable then either emphasizes the tint or fails to calibrate the white balance entirely.
I’m tagging this as play_raw too: If you succeed stitching the photos I’ll be glad to see what can you do with it in Darktable.

Preview of the source files and a magenta-ish HDR:

Exposure stacked raws:
P1210701.RW2 (18.8 MB)
P1210702.RW2 (18.9 MB)
P1210703.RW2 (18.9 MB)
The HDRMerge result:
P1210701-1210703.dng (43.2 MB)

And of course, the raws are licensed Creative Commons — Attribution-ShareAlike 4.0 International — CC BY-SA 4.0.

Thanks for your help! :slight_smile:

Are you specifically looking for a tool that takes RAWs as input? If not, keep reading…

Hugin does a really good job of taking multiple shots and creating a file (TIFF) that can be handled with darktable, RawTherapee or any other editor. The possible downside being that Hugin does not except RAWs as input, 16Bit TIFFs work rather well, though.

If I feed your 3 RW2’s to darktable, create tiffs and feed those to Hugin I get a workable tiff.

Here’s a really quick edit using darktable and that tiff file:

rtout.P1210701 - rtout.P1210703_stack_ldr_0000.tif.xmp (8.1 KB) dt 3.8.1

I did not pay any attention to specifics in the above example, this is just to show what can be done out-of-the-box. To get a (much) better result:

  • Take the time to set up the input tiffs in the first step the overall result will be better.
  • Hugin can deal with the ghost (moving person in foreground) and some other details, which I did not bother with.
  • My above result is a really quick darktable edit just so it is presentable.

Doing all this correct is a timely process, but if you take your time the end result will be worth it.

EDIT: Added the dt version used and the sidecar, just in case.

1 Like

Tried the Hugin way and it’s probably too advanced for me. I’m no pro and I don’t really know what I’m doing.

That seems to be a problem of raw black point for the created DNG


All new software comes with a bit of a learning curve :wink:

Here’s the fast/quick and in-a-nutshell way to use Hugin to stack bracketed images:

You see me changing the Anchor position (A) in the Photo tab, this is the image Hugin will align all other images from, I always use the middle one.

The Anchor exposure (C) should be set on the image that has, on average the best exposure. In general that would be the one in the middle, but it seems that in this case it is the first one. So I did not change that one.

The rest of the actions you can just copy the way I did them when stacking bracketed images. Only one that you might want to change is the Hugin’s CPFind setting. This takes moving clouds into account.

You can do a whole lot more with Hugin, fine-tune things, use the masks tab to remove/include portions add/remove control points set processing options etc etc And that’s just the stacking side of Hugin (it is a panorama stitcher at its core…).

The Hugin manual explains all the options in detail and there are some tutorials to be found on-line as well. Just experiment a bit to find out if this is a solution that you can work with.

An alternative (with a warning…):

If you are comfortable with using the command line you could use enfuse, which is part of Hugin, to get a good starting point. This, again, use non-RAWs as input.

Something simple like this should do the trick:

enfuse --exposure-weight=1 --saturation-weight=0 --contrast-weight=0 --entropy-weight=0 *.tif

Or a bit more readable:

enfuse \
--exposure-weight=1 \
--saturation-weight=0 \
--contrast-weight=0 \
--entropy-weight=0 \

Here’s the man page: man enfuse(1). Some of the options are explained and you might want to add some (not really needed in most cases).

The warning I was talking about is about this: This will not align the images first! You need to be/make sure that they are aligned to begin with.


That might partially be the input files, they could have been better, but they should do.

1 Like

I succeeded stitching images in Hugin after toggling this and that without having a clue what I’m doing. But then there’s masking, deghosting etc. which I honestly would have hoped a software would do for me, or at least somehow lead my hand. Which is why this topic is about HDRMerge – sadly producing weird results.

Darktable can do unaligned HDR raws on its own.

Thank you for the video, I’ll watch it as soon as I’m back on PC.

Panasonics have a weird per-channel black level. Maybe HDRMerge doesn’t handle this correctly?

It can’t. Not really.

Taking your 3 images as an example: There are three people in the foreground that cannot be aligned (hence the ghosting). How would software know which one to use and which 2 to discard? It might even be so that the one that is seen as the most correct from an exposure pov isn’t the one that needs to stay.

Stacking and/or panoramas have some “nice” problems you might run into. Most of those are related to moving objects.

Using the mask tab isn’t all that hard: Create 2 exclude region masks and 1 include region mask. Make sure that your mask outline is just outside of the object.

Here’s what a quick masking can do with the person in the foreground in your 3 shots (300% enlargement with the exposure cranked up to make it more clear):

As you can see I did not bother to mask the (dog?) line that this person is holding and those show up multiple times.

@CarVac : Yeah, I wasn’t all that clear in my reply to @gaaned92 about this. What I meant was that first loading these RAWs in a RAW editor will set the correct black-level. Something that HDRMerge might not be able to do (yet).

Ok, understood. :slight_smile: Thank you. I’ll dive into it a bit deeper.

1 Like

HDRMerge 0.5 is really old. If you can find a build of the master branch, use that instead.

You may also want to check out this tutorial:

1 Like

This provides a tiny bit better results (not out of the box though) but I can’t get rid of the green tint.

for W10 I can propose at HDRMergeNightlyBuilds/ – Keybase.pub from

  • HDRMerge_master_v0.5.0-146-gcb42a8b_release_64.zip from 24/10/2020

  • HDRMerge_master_nightly-72-gf5a2538_release_64.zip which includes the last commit from master

  • HDRMerge_master_gaanedv0.6_release_64.zip which is a wild merge without warranty of unpublished v0.6 branch into master branch

P1210701-1210703.dng (41.2 MB)


If I open the above DNG in Rawtherapee, the black level seems OK; there is no color cast. The raw balck points are 0.

If I open it in ART there is a cast due to wrong black point. I have to set the black point to (425,425,425) and then it is ok.
please, can you have a look?

Remark: the produced DNG seems very dark, so I suspect that HdrMerge don’t choose the right image when generating the DNG . It is OK on display.

Thank you @gaaned92 !! I tried the latest (wild :slight_smile: ) version and the cast is gone.
Then I’ve tried to develop the photo and it’s pretty obvious the exposure is entirely wrong and beyond capabilities of the old and small camera sensor. Thus I lost a lot of colors and details in the shadows and replaced them with noise.

So this is what I could squeeze out of it. My phone would do better job. Terrible but I’m not printing it. :smiley:

P1210701-1210703.dng (16.5 MB)
P1210701-1210703.dng.xmp (10.2 KB)

Thanks, should work now


thanks @agriggio

@heckflosse @Morgan_Hardwood
Is there somebody still maintaining Hdrmerge ?

@Newerth I cannot help you with DT, but you can get better processing with it. For instance, you have a strong fringing on the upper right branches. Sure, there is a way in DT to get rid of that.
I think I am still a little heavy on denoising.

It is. It’s just that the lens really struggles here and the default CA module settings were not enough.

I truly failed with this exposure. I should have gone at least f/5.6 and +1 EV.

Using the def ringing function of ART, I can obtain that

You should obtain equivalent or even better result with DT.

The left hand side is the module maxed out, the right hand side is the default as in the image I posted here.

Ah… I returned back to it and figured out that the input color profile was all wrong. So another attempt, now with a lot of fine tuning. Still far from perfect but one can’t beat a dead horse.
P1210701-1210703_01.dng.xmp (12.4 KB)

1 Like