The latest version of the source code can be now downloaded from here:

direct link

or here:


Please reference the book if you use this toolbox in your work or papers.
 author = {Banterle, Francesco and Artusi, Alessandro and Debattista, Kurt and Chalmers, Alan},
 title = {Advanced High Dynamic Range Imaging: Theory and Practice (2nd Edition)},
 year = {2017},
 isbn = {9781498706940},
 publisher = {AK Peters (CRC Press)},
 address = {Natick, MA, USA},

Errata for the second edition:

Errata can be downloaded at this LINK.

Errata for the first edition:

Errata can be downloaded at this LINK.

Please read the Readme.txt file before using the this toolbox.

Note on Tone Mapping:

The majority of TMOs return tone mapped images with linear values. This means that gamma encoding needs to be applied to the output of these TMOs before visualization or before writing tone mapped images on the disk; otherwise these images may appear dark. A few operators (e.g. Mertens et al.'s operator) return gamma encoded values, so there is no need to apply gamma to them; in this case a message (e.g. a Warning) is displayed after tone mapping alerting that there is no need of gamma encoding.

Note on Expansion Operators (Inverse/Reverse Tone Mapping):

The majority of EOs require to have as input LDR images in the range [0,1] that are LINEARIZED. This means that the camera response function (CRF) or the gamma encoding has been removed. This operation is MANDATORY in order to generate fair comparisons; please do use the gammaRemoval parameter to remove gamma if you do not have the CRF of the input image. RAW files do not require this step because they are already linear.

Note on Code:

Please avoid to strip the copyrights and license of this code!

C++ Development:

For developing C++ HDR applications, we recommend: