gpt4 book ai didi

c++ - 在 C 和 C++ 中从 jpeg 读取黑白像素作为数组

转载 作者:行者123 更新时间:2023-11-30 21:30:12 25 4
gpt4 key购买 nike

我正在尝试学习如何在 C++ 或 C 中将 jpeg 图像读取为像素数组。到目前为止,我了解到我必须包含一个外部库,例如 libjpg.h。

我听说 jpeg 是以 RGB 结构格式化的,其中每个像素给出 3 个值。这是真的?如果是这样,我将如何读取纯黑白图像的值?

这个问题的目的是我试图将一个指针分配给黑色图片中白色方 block 的右上角。如果有人可以告诉我如何读出在这种情况下给我的值,以便我可以分配这个指针,我将不胜感激。

最佳答案

假设您使用 libjpeg 运行。您将分配一个缓冲区,然后调用 jpeg_read_scanlines 足够次数,以将所有解压缩的图像数据放入内存中。您可以单独读取扫描线(行)并根据需要重新格式化它们。如果图像是灰度图像,则 RGB 值将全部相等,因此您可以只读取其中之一。

Paul Bourke's site有一些非常好的 libjpeg 使用示例。

关于c++ - 在 C 和 C++ 中从 jpeg 读取黑白像素作为数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27496554/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com