我能够使用SWIG为相机库生成python绑定,并且我能够使用库的内置函数捕获和保存图像。 我试图从相机获取数据到Python Image Library格式,该库提供了将相机数据作为unsigned char *返回的函数。 有谁知道如何将unsigned char * image数据转换成我可以在Python中使用的某些数据格式? 基本上我正在尝试将unsigned char *图像数据转换为Python Image Library格式。
谢谢。
答案 0 :(得分:1)
我相信你应该使用fromstring
方法,如下所述:
How to read a raw image using PIL?
另外,有一篇关于使用python和opencv从摄像头捕获数据的文章,值得一读:http://www.jperla.com/blog/post/capturing-frames-from-a-webcam-on-linux
答案 1 :(得分:1)
好的伙计们,经过长时间的斗争(也许是因为我是python的新手),我终于解决了。
我编写了一个可以被python理解的数据结构,并将unsigned char * image转换为该结构。在为自定义数据结构编写接口之后,我能够将图像转换为Python Image Library图像格式。 我想在这里粘贴代码,但它不会允许更多的500个字符。 这是我的代码的链接
http://www.optionsbender.com/technologybending/python/unsignedcharimagedatatopilimage
我还附加了文件,以便您可以使用它。
答案 2 :(得分:0)
我假设那些unsigned char
是实际的图像字节,所以你可以直接存储它们:
with open('filename', mode='wb') as file:
file.write(image_bytes)
(只要您当前工作目录中已有一个名为filename
的文件。)