python - Kivy XCamera:错误 #01 无法使用 Xcamera().texture.pixels
问题描述
当我尝试获取图像数据时,应用程序崩溃了。( self.camera.texture.pixels
)
import requests
from kivy.clock import Clock
from kivymd.app import MDApp
from kivy.lang import Builder
from kivy_garden.xcamera import XCamera
from android.permissions import request_permissions, Permission
try:
request_permissions([Permission.INTERNET,
Permission.READ_EXTERNAL_STORAGE,
Permission.WRITE_EXTERNAL_STORAGE,
Permission.CAMERA])
except Exception as e:
print("Like it's gonna work after this ! XD")
print(e)
KV = """
#:import XCamera kivy_garden.xcamera.XCamera
BoxLayout:
orientation: 'vertical'
BoxLayout:
id: camera_layout
canvas.before:
PushMatrix
Rotate:
angle: -90
origin: self.center
canvas.after:
PopMatrix
"""
class uiApp(MDApp):
def on_picture_taken(self, filename):
print("trying to register camera texture pixels.")
data = self.camera.texture.pixels
print(type(data))
print(data)
print("End here")
def my_callback(self, dt):
print("Taking picture...")
self.camera.shoot()
print("picture taken !")
def build(self):
self.screen = Builder.load_string(KV)
self.camera = XCamera()
self.camera.on_picture_taken = self.on_picture_taken
self.screen.ids['camera_layout'].add_widget(self.camera)
self.event = Clock.schedule_once(self.my_callback, 5)
return self.screen
uiApp().run()
错误:
#01 pc 0000000000078e34 /data/app/~~kbl3-K_BRVZZ1FbmhJ83fQ==/org.test.cam.testcam-ZAOmIpkByRXrLbKrJ5V7YA==/lib/arm64/libpython3.7m.so (PyBytes_FromStringAndSize+300)
如果我删除线路,一切都运行良好self.camera.texture.pixels
。
解决方案
推荐阅读
- html - 导航项下方带有子菜单的全宽下拉菜单
- selenium - 范围报告仅保存 Jenkins 中最后一项作业的最后一项结果
- c# - 如何计算 3d 扫描的腹部周长?
- java - 当二维数组 [][] 和数组 [] 之间的赋值是合法的?
- powershell - 删除一个txt文件除第一行以外的内容
- javascript - 如何修复一个简单的 js 计算器(返回未定义)
- elasticsearch - 如何在弹性搜索中加载数据?
- python - 如何暂停 Python 脚本并让用户在 Linux 终端中输入
- azure - ADFv2中如何根据文件名将文件复制到不同目录
- c++ - 可以以某种方式省略`get_mpz_t()`吗?