gpt4 book ai didi

c++ - 使用 ImageMagic 库将图像转换为像素图

转载 作者:行者123 更新时间:2023-11-28 08:13:44 25 4
gpt4 key购买 nike

我的任务是“将图像读入像素图,然后将其转换为纹理贴图”。因此,仅对于像素图部分,请听我说完并告诉我我的想法是否正确以及是否有更简单的方法。我正在使用的图书馆文档:http://www.imagemagick.org/Magick++/Documentation.html

读入图像:

Image myimage;
myimage.read( "myimage.gif" );

我认为这是我需要将“图像”读入的像素图:

GLubyte pixmap[TextureSize][TextureSize][3];

所以我认为我需要一个循环,为每个“像素图”像素索引分配来自相应“图像”像素索引的 R、G、B 值。我在想循环体是这样的:

pixmap[i][j][0] = myimage.pixelColor(i,j).redQuantum(void);
pixmap[i][j][1] = myimage.pixelColor(i,j).greenQuantum(void);
pixmap[i][j][2] = myimage.pixelColor(i,j).blueQuantum(void);

但我认为上述函数在我需要 GLubytes 的地方返回 Quantums,所以有人可以在这里提供帮助吗?

-- 或者 --

也许我可以使用 OpenIL(此处的文档:http://openil.sourceforge.net/tuts/tut_10/index.htm)处理像素图和纹理图。认为我可以简单地按顺序调用它们吗?

ilutOglLoadImage(char *FileName);
ilutOglBindTexImage(ILvoid);

最佳答案

您可以将 pixelColor(x,y) 返回的量子值复制到 ColorRGB,您将获得归一化的 (0.0,1.0) 颜色值。

如果您不必坚持使用 Magick++,也许您可​​以尝试 OpenIL ,它可以轻松加载图像并将其转换为 OpenGL 纹理贴图。

关于c++ - 使用 ImageMagic 库将图像转换为像素图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8332593/

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