如何使用boost /标准库在C ++中读/写图像?

时间:2012-03-18 20:19:22

标签: c++ image boost io

这可能吗?图像的格式无关紧要,但我必须能够打开它,将像素数据读入某种数组,使用一组经过修改的像素数据创建新图像。

谢谢!

4 个答案:

答案 0 :(得分:4)

Boost.GIL有一个很好的video tutorial,它向您展示如何以非常通用但高效的方式读取/写入和处理原始图像数据。

答案 1 :(得分:0)

您需要使用代码对要支持的格式进行编码和解码。你可以自己做(不是非常理想/实用)你可以嵌入编码/解码库(比如libpng),或者你可以嵌入像DevIL这样的图像库。

Boost似乎包含某种称为Boost.GIL的图像访问库。不过,我真的不太了解它。

答案 2 :(得分:0)

我建议您提供TARGA图片格式以满足您的需求。您只需在标头中读取/写入一些值,其余的是RGBA像素数据的未压缩数组。你甚至不需要Boost!

答案 3 :(得分:0)

我建议CImg。该库非常易于使用。您只需在代码中包含头文件,并在编译时设置一些参数即可!我已经将CImg与MingW和GCC一起使用。