Unadequate stitching of a HDR panorama
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Enblend |
New
|
Undecided
|
Unassigned |
Bug Description
HDR files:
https:/
https:/
https:/
https:/
Project file:
https:/
Execute:
nona -m EXR_m -o panorama panorama_
I get 4 EXR files. For visualization I tone-mapped them using mai11 operator:
https:/
https:/
https:/
https:/
Looks all good. After that I try to stitch them using enblend 4.2 (nft and graph-cut algorithms) and verdandi 2016.2.0 (watershed algorithm):
enblend --wrap=horizontal --blend-
enblend --wrap=horizontal --blend-
verdandi --wrap --seam=blend --output=
I again tone-mapped the results for visualization:
https:/
I hope no commentaries are needed...
Next, I decided to tone-map the nona's output:
pfsin panorama000$i.exr | pfstmo_mai11 | pfsout panorama000$i.tiff
convert panorama000$i.tiff -channel a -negate +channel panorama000$i.tif
After that I stitched again:
enblend --wrap=horizontal --compression=none --blend-
enblend --wrap=horizontal --compression=none --blend-
verdandi --wrap --seam=blend --output=
And here are the results:
https:/
Difference is huge... Much better results! Now the question - why so bad with EXR files? Am I doing something wrong?
First of all: in this case it is sufficient to work with downsized versions. Your files are very big (also the final jpeg have different size 7 vs 49 MB by identical image dimensions). Why such big images?
Second: For hdr images the response type should by linear and not EMor (When loading these image, hugin sets it automatically to linear)
Third: Your HDR images have different exposure levels (they are different bright, have a look at the hdr file itself). And the exposure values in the project file does not match them. (Maybe recreating the hdr images with the same base brightness helps. Then the correction in Hugin is not needed.)
Point 2 and 3 explain a big part of the issues with verdandi - so closing moving to enblend tracker.
But it does not explain the problems with enblend, which should better blend away the brightness differences