我的嵌入式内存中有一个缓冲区,我可以通过某些函数提取它,或者我可以转储,其中包含我图片的原始数据的十六进制值。现在这个变量包含了整个原始数据。
uint8_t UYVYBuffer[720u*2u*487u]
是否可以在 JPEG 或 PNG 文件或其他文件中可视化这些原始图像数据,以查看在我进行处理后我拥有什么样的图片并将图像的值存储在新变量(如下所示)UYVYBuffer 中。
如果您也有一些软件可以读取我的 .dat 文件并绘制这些数据,那也很棒
我的嵌入式内存中有一个缓冲区,我可以通过某些函数提取它,或者我可以转储,其中包含我图片的原始数据的十六进制值。现在这个变量包含了整个原始数据。
uint8_t UYVYBuffer[720u*2u*487u]
是否可以在 JPEG 或 PNG 文件或其他文件中可视化这些原始图像数据,以查看在我进行处理后我拥有什么样的图片并将图像的值存储在新变量(如下所示)UYVYBuffer 中。
如果您也有一些软件可以读取我的 .dat 文件并绘制这些数据,那也很棒
您可以将这些原始数据转储到一个文件中,比如说/tmp/raw_image
.,然后使用ImageMagickpng
中的convert
实用程序将其转换为。这是一个假设您的图像具有大小的示例:128 x 128
convert -size 128x128 -depth 8 yuv:/tmp/raw_image /tmp/image.png
我所做的是以某种方式将原始数据提取到文本文件中,然后我编写了一个简短的 Python 程序来加载原始数据,然后使用png 模块创建一个 PNG 图像,然后写入磁盘。
我为 RGB565 数据做了这个,这很好,因为 PNG 通常用于 RGB 编码的数据。从变量名称来看,您的数据听起来好像是 YUV,可能需要进一步处理以适应典型的图像格式。
这是非常直接的,并且将“真实”图像格式的复杂性保留在它所属的位置(即,在其他人的库中)。