我怎样才能读取图像文件?

时间:2012-05-02 11:14:36

标签: c image graphics

我需要获取RGB值读取图像。我怎么能用C做呢?

图像格式可以是png,jpg,bmp或其他常用格式。 它必须保存在文本文件中。

1 个答案:

答案 0 :(得分:1)

一个非常易于使用的图像库,可以涵盖所有这些格式的读写,FreeImage。它主要是一个C库,但也有C ++等的包装器。

当你说“保存在文本文件中”时,由于二进制格式更紧凑,存储像素强度的原始字符串值,因此这对于图像非常不典型。此外,许多格式使用压缩,这意味着每个像素实际上没有给定的“值”...而是必须先解压缩数据,然后才能为每个像素单独分配一个值。有一些图像格式,例如PPM,可以存储为ASCII数据,但同样,这不一定是存储大图像的最有效方式。

因此,对于您的工作流程,您可以使用类似FreeImage的库来读取图像文件中的值,然后将未压缩的像素值写回PPM文件或自定义 - 格式化文本文件。