过去我将 RGB 图像(从物理模拟生成)保存为 8 位/ channel PPM 或 PNG 或 JPEG。
现在我想保留模拟输出的动态范围,这意味着保存浮点图像,然后将转换为 8 位/ channel 作为后处理步骤(因此我可以调整转换为 8 位无需再次运行冗长的模拟)。
是否出现了“标准”浮点图像格式?
良好的免费支持库/查看器/操作工具,最好在 Debian 中提供,将是一个奖励。
最佳答案
您是否查看过 Radiance RGBE (.hdr) 和 OpenEXR (.exr)。 RGBE 有一些 source code here . NVIDIA 和 ATI 都在其显卡中支持 EXR 数据。有来自 OpenEXR download page 的源代码和二进制文件. ILM 创建了 OpenEXR,并获得了广泛的支持。 OpenEXR 支持每个 channel 的 16 位和 32 位 float ,这是当今大多数人使用的,除非他们编写了自己的格式。
Pixel Image Editor for linux 也支持 EXR 编辑。
pfstools如果您要在 linux 上使用 HDR,这也是必要的。它是一组用于读取、写入和操作 HDR 的命令行程序,并具有 Qt 和 OpenGL 查看器。
还有适用于 linux 的 jpeg2exr
还有一些 debian packages供 OpenEXR 查看器使用。
据此看来还有一个Gimp plugin某处。
关于c++ - 我应该使用哪种浮点图像格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/623929/