C 如何将图像转换为WORD(uint16)数组?

C 如何将图像转换为WORD(uint16)数组?,c,image,C,Image,我的目录中有一些图像(.bmp、.png、.jpg)。我想将此图像转换为文字数组,以便在LCD中以565格式(16位像素)显示此图像。如何将图像转换为单词数组?请帮忙。是否有任何实用程序可以将图像转换为二进制?或者请在Windows C/CPP中提供一些代码以将其转换为二进制?这在很大程度上取决于输入图像的确切格式 仅仅将“转换为文字”并不能真正表达您想要做的事情,这可能更像是“将位图图像转换为行主格式的RGB565像素数组” 您应该查看允许您加载位图图像并读取每个像素值的图像处理库 您可以直接

我的目录中有一些图像(.bmp、.png、.jpg)。我想将此图像转换为文字数组,以便在LCD中以565格式(16位像素)显示此图像。如何将图像转换为单词数组?请帮忙。是否有任何实用程序可以将图像转换为二进制?或者请在Windows C/CPP中提供一些代码以将其转换为二进制?

这在很大程度上取决于输入图像的确切格式

仅仅将“转换为文字”并不能真正表达您想要做的事情,这可能更像是“将位图图像转换为行主格式的RGB565像素数组”

您应该查看允许您加载位图图像并读取每个像素值的图像处理库

您可以直接转换为RGB565,从任何其他位图格式转换都不太困难

请注意,有索引和“真彩色”位图格式,听起来您需要同时处理这两种格式。如果幸运的话,每种格式的库都会将其提取出来,并具有例如
uint32 read\u pixel\u as\u rgb888()
函数

还要注意的是,许多位图图像格式非常注重压缩,这就是为什么仅仅读取文件的位是远远不够的,您需要根据格式对数据进行反压缩。这相当复杂,这就是为什么预写库是唯一明智的选择


对于PNG,请查看,对于JPEG,请查看。再想一想,这些库可能有点太低级了,也许你应该看看类似的东西。

这在很大程度上取决于输入图像的确切格式

仅仅将“转换为文字”并不能真正表达您想要做的事情,这可能更像是“将位图图像转换为行主格式的RGB565像素数组”

您应该查看允许您加载位图图像并读取每个像素值的图像处理库

您可以直接转换为RGB565,从任何其他位图格式转换都不太困难

请注意,有索引和“真彩色”位图格式,听起来您需要同时处理这两种格式。如果幸运的话,每种格式的库都会将其提取出来,并具有例如
uint32 read\u pixel\u as\u rgb888()
函数

还要注意的是,许多位图图像格式非常注重压缩,这就是为什么仅仅读取文件的位是远远不够的,您需要根据格式对数据进行反压缩。这相当复杂,这就是为什么预写库是唯一明智的选择


对于PNG,请查看,对于JPEG,请查看。再想一想,这些库可能有点太低级了,也许你应该看看类似的东西。

你可以尝试使用CImg打开图像文件-

你可以尝试使用CImg打开图像文件-

你的意思是“如何在c/c++中打开.bmp、.jpg、.png文件”?我会用一些图书馆的。是的。我只需要其中像素的二进制。不需要任何标题。您使用了哪个库?您的意思是“如何在c/c++中打开.bmp、.jpg、.png文件”?我会用一些图书馆的。是的。我只需要其中像素的二进制。不需要任何标题。你用的是哪个图书馆?