【发布时间】:2023-12-26 14:18:01
【问题描述】:
我正在尝试找到一种方法来从图像中的每个像素中提取 rgb 值。如果我有一个 3x3 图像,我想要得到的输出是这样的:
{
"0-0": [125,222,0],
"0-1": [125,222,0],
"0-2": [125,222,0],
"1-0": [125,222,0],
"1-1": [125,222,0],
"1-2": [125,222,0],
"2-0": [125,222,0],
"2-1": [125,222,0],
"2-2": [125,222,0]
}
我知道这是一个有点模糊的问题,很可能会被标记,但我会扔在那里。
感谢和欢呼
【问题讨论】:
-
您打算使用哪种库/编程语言?
-
你说的太模糊/宽泛/不清楚,所以暂时关闭。添加诸如什么语言/操作系统/gfx lib之类的细节?数组通常也不由字符串索引。有很多方法可以做到这一点 1. 使用第 3 方库 2. 编写自己的解码器 3. 使用编译器/IDE/OS 平台的内置函数。如果你想编写自己的解码器,那么 JPEG 对于新手来说编码有点太多,而 BMP 有太多的变化,所以我只会解码 BMP 的特定格式(比如解压的 24 位 RGBA 或其他任何格式)并转换你需要的任何图像到这种格式。
-
看看这个 opening image file on c++ , PNG , JPEG 它是和 VCL/C++ 示例,使用 #1、#2 加载多种图像类型以及用于 PCX 解码的当前代码,这样您就可以看到它的样子.. . 对于 PNG 使用 LIBPNG,对于 BMP、JPEG 编译器/IDE 内置函数,其余的都有我自己的解码器(示例中只有 PCX 代码)
-
@Spektre 无需对图像加载进行编码。您可以使用 Python PIL / C++ stb_image / OpenCV / Matlab 或其他任何东西......然后扫描图像并产生该输出相当简单。这仅取决于 OP 使用的库/语言。
-
@Miki 代码比 Python PIL 有点旧 .. 无论如何,由于兼容性、立法、性能和其他原因,第 3 方库并不总是一种选择(比如解码编码中的错误很好的例子是GIF ...在过去是立法问题,现在大多数解码器都有问题...)。
标签: image-processing bitmap jpeg bmp