OpenEXR是由工业光魔(Industrial Light& Magic)开发的一种HDR标准。OpenEXR文件的扩展名为.exr。关于EXR图片在Matlab中的使用,可以参考康奈尔大学Edgar Velázquez-Armendáriz所开发的工具HDRITools。下载地址为:https://bitbucket.org/edgarv/hdritools/downloads
HDRITools是一系列处理HDR图片的工具。包括HDR图片浏览器,批处理tonemapper,OpenEXR的基本JNI绑定,以及Matlab读写OpenEXR文件的接口。
对于Matlab读写OpenEXR文件的接口,用户可以直接使用已编译好的Matlab代码函数,也可以选择自己手动编译。
对于使用预编译文件,可以选择下载:
HDRITools-0.3.0-20120419-x64.msi
或者
HDRITools-0.3.0-20120419-x86.msi
根据系统自主选择。
下载完毕后进行安装。我选择的完全安装,安装后matlab代码所在目录为:
C:\ProgramFiles\Cornell PCG\HDRITools\matlab
在Matlab路径中添加该路径File->Set Path...。即可使用其中的函数。例如,下面这个例子创建一个RGB通道32-bit浮点数的EXR图片。
% create new container map exr_data = containers.Map(); % create some data M = randn(100, 100, 3); % create channels by creating keys for map exr_data('R') = M(:,:,1); exr_data('G') = M(:,:,2); exr_data('B') = M(:,:,2); % write exr file with no compression ('none') and 32-bit floats ('single') exrwritechannels('random.exr', 'none', 'single', exr_data);参考资料: http://michael-stengel.com/blog/?cat=24