Kivy相机获取图像



我正在尝试使用kivy来捕获QR的图像。使用

from kivy.uix.camera import Camera
self.cameraObject = Camera(play=True,resolution=(640,480),index=0)

我成功地捕获了一张图像,我可以将其保存到文件中

self.cameraObject.export_to_png('./selfie.png')

我希望将图片放入一个变量中,然后用于检查二维码。我可以从刚保存的文件中读取图像,但图像已经存储在相机对象中。我找不到返回图像的Camera方法。我想做的是这样的事情;

frame=self.cameraObject.get_image()

遗憾的是,这似乎并不存在,我在相机方法列表中看不到可能的命令。这样做可能吗?

您可以使用获取对CameraImageTexture的引用

texture = self.cameraObject.texture

注意,texture将随着Camera捕获的每一帧而改变。

您可以从Texture:中获得像素阵列

pixels = texture.pixels

好的,成功了。。。。所以

import numpy
from PIL import Image
texture = self.cameraObject.texture
size=texture.size
pixels = texture.pixels
pil_image=Image.frombytes(mode='RGBA', size=size,data=pixels)
numpypicture=numpy.array(pil_image)

谢谢Anderson 先生

最新更新