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