HDRView is a simple research-oriented depth-map & high-dynamic range image viewer with an emphasis on examining and comparing images, and including minimalistic tonemapping capabilities. HDRView currently supports reading EXR, PNG, TGA, BMP, HDR, JPG, GIF, PNM, PFM, and PSD images and writing EXR, HDR, PNG, TGA, PPM, PFM, and BMP images.
HDRView supports loading several depth-map formats (PFM, PNG 1-channel-16bit, EXR, NPY) and convert them to RGB images for visualization. HDRView supports loading several images and provides exposure and gamma/sRGB tone mapping control with high-quality dithering of HDR images. When sufficiently zoomed in, HDRView can overlay the pixel grid and numeric color values on each pixel to facilitate inspection. Displaying HDR images naively on a 24 bit display leads to visible banding in smooth gradients. HDRView supports high-quality dithering (both when viewing and when saving to an LDR file) to reduce these artifacts.
If you are running a recent version of macOS, you can download the pre-built binary installer DMG from the releases page. For other platforms, you will need to build HDRView from source for now.
Compiling from scratch requires CMake and a recent version of the XCode build tools on macOS, Visual Studio 2015 on Windows, and GCC on Linux.
On Linux and macOS, compiling should be as simple as
git clone --recursive https://bitbucket.org/wkjarosz/hdrview.git
cd hdrview
mkdir build
cd build
cmake-gui ../
make -j 4
On Windows, a few extra steps are needed.
Since MSVC's regex implementation is buggy, you first need to have the Boost regex library installed. You can find binary installers for Windows on the Boost website. You need at least Boost version 1.53. Once installed, you can run:
git clone --recursive https://bitbucket.org/wkjarosz/hdrview.git
cd hdrview
mkdir build
cd build
cmake ../
-G"Visual Studio 15 2017 Win64"
-DBOOST_ROOT="C:\where_you_installed_boost"
-DUSE_BOOST_REGEX=true
You can also do this through cmake-gui
if you prefer. Click Add Entry
and define BOOST_ROOT
to the directory where you installed Boost (by default something like C:\local\boost_1_65_0
). Run Configure
and select your version of Visual C++ and 64bit. After configure finishes, search for USE_BOOST_REGEX
and check it. Run Configure
again, and then click Generate
.
Open the generated file HDRView.sln
and proceed building as usual from within Visual Studio.
This should be as easy as make install
. On macOS this will copy the application bundle into /Applications and create the symlink hdrview
in /usr/local/bin
so you can launch HDRView from the terminal.
Run ./hdrview --help
to see the command-line options, or run ./hdrview
and hit the h
button to see a list of keyboard shortcuts in the application.
There is also a separate executable hdrbatch
intended for batch processing/converting images. Run ./hdrbatch --help
to see the command-line options.
Copyright (c) Wojciech Jarosz
3-clause BSD. For details, see the LICENSE.txt
file.
HDRView depends on the following libraries (which are included explicitly or as git submodules):
- Wenzel Jakob's NanoGUI library, which is licensed under a BSD-style license.
- ILM's OpenEXR library, which is licensed under a modified BSD license.
- Some stb libraries, developed by Sean Barrett and released into the public domain.
- The tinydir library, which is licensed under a simplified BSD.
- The docopt.cpp library, which is dual-licensed under MIT and Boost licenses.
- Gabi Melman's spdlog library, which is licensed under the MIT license.
- syoyo's tinydngloader library, which is licensed under the MIT license.