0

我需要获取 RGB 值读取图像。我怎么能在C中做到这一点?

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

4

1 回答 1

1

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

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

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

于 2012-05-02T12:04:24.047 回答