使用OpenCV 4.0映射HDR图像的色调
我想创建一个脚本,该脚本需要一个.HDR文件并将其色调映射为.JPG.我看了几个OpenCV tutorials,看来应该可以做到. 我写了这个脚本:
根据教程应该工作.最后我得到的是黑色图像.我已验证它保存的结果是.JPG,以及输入图像(1.6兆像素HDR环境图)是有效的.HDR. OpenCV应该能够根据the documentation加载.HDR. 我尝试重现链接的教程,并且该教程正常工作,所以问题出在.HDR图像中,有人知道该怎么做吗? 谢谢 编辑:我使用this HDR image.由于版权等原因,提供了一个链接而不是直接下载. 最佳答案
除了两个小错误外,您几乎就在那儿.
第一个错误是使用 当您确实指定IMREAD_ANYDEPTH时,图像将以32位浮点格式加载.该强度通常在[0.0,1.0]范围内,但是由于是HDR,所以该值超过1.0(在这种特殊情况下,它们达到约22).这意味着您将无法通过简单地将数据转换为np.uint8来可视化它(以一种有用的方式).您也许可以先将其归一化到标称范围内,或者使用缩放和修剪方法…随便找到合适的方法.由于早期的可视化与结果无关,因此我将跳过它. 第二个问题微不足道.您正确缩放并将色调映射的图像剪切回np.uint8,但是您再也不会使用它. 脚本
输出量 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |