尽快将图像数据写入磁盘

时间:2017-11-08 10:27:01

标签: c++ bmp

我正在编写一个生成大量图像的应用程序。每帧大小为1280x800像素,每个像素有1个字节用于颜色信息(灰度)。必须将每个帧写入磁盘。

目前我只是将原始像素数据转储到磁盘上的二进制文件中。然后可以使用我也创建的特殊查看器查看该文件。

这是一个非常不令人满意的解决方案,因为无法直接查看/处理图像。他们总是必须通过我的自定义查看器/转换器。

我是否可以使用图像格式将图像写入磁盘:

  1. 写得快(没有压缩等)
  2. 不会增加最终文件的大小
  3. 支持在那里转储我的原始像素缓冲区(没有alignemnt更改等)
  4. 可以通过常见应用程序(Windows资源管理器,绘图,Photoshop等)阅读。
  5. 我已经尝试过使用.png,但由于压缩,文件生成时间过长。

2 个答案:

答案 0 :(得分:3)

查看binary Portable GrayMap (P5)格式。它包含一个极其简单的标题,后跟原始图像数据(没有任何对齐要求),并得到图像查看器的广泛支持。

答案 1 :(得分:0)

bmp和tiff都可用于保存原始数据。除非高度为负,否则Bmp具有使图像颠倒的奇怪之处。而且tiff有很多编码选项。无论如何,反向设计要用作模板的格式应该是可行的,其中图像数据被复制粘贴。所以不需要使用库:只是标题,图像数据和连接的可选页脚。