【问题标题】:How to Use OpenCV Wait Key With Chaquopy如何在 Chaquopy 中使用 OpenCV 等待键
【发布时间】:2023-03-21 17:44:01
【问题描述】:

我正在尝试使用 Chaquopy 将计算机视觉应用程序移植到 android。当我尝试运行我的脚本时,以下行出现以下错误:

cv2.waitKey(100)

打印到嵌入式 python 控制台的错误是:

java.chaquopy.CQPEnv.check_exception
com.chaquo.python.PyException: error: OpenCV(3.4.2) /home/smith/git/chaquo/python/server/pypi/packages/opencv-python/build/3.4.2.16/cp36-cp36m-android_15_armeabi_v7a/src/opencv/modules/highgui/src/window.cpp:698: error: (-2:Unspecified error) The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script in function 'cvWaitKey'

我已经在 build gradle 中安装了 openCV,如下:

        pip {
            install "opencv-python"
        }

根据此处找到的 Chaquopy 文档: Chaquopy openCV discussion

【问题讨论】:

  • 错误信息不是很明显吗?您不能在此构建中使用任何 highgui 功能,因为它不是在启用任何后端的情况下编译的。
  • 是的,这更多是与 Android 的 chaquopy 包相关的问题,并非所有限制都包含在文档中。谢谢你的额外解释。

标签: android opencv chaquopy


【解决方案1】:

看起来 OpenCV 只支持桌面平台上的关键事件,而不支持移动平台。所有其他 "High-level GUI" 函数可能也是如此。

无论如何,除非您的 Android 设备确实有键盘,否则等待按键是没有意义的。您最好创建一个类似Chaquopy demo app 的简单 Android UI,并以这种方式与用户交互。

【讨论】:

  • 明白了,感谢您指出Chaquopy的局限性,我想我们将使用Java原生解决方案或云解决方案。 Chaquopy 的故障排除有点过多。
猜你喜欢
  • 2016-09-26
  • 2019-12-28
  • 1970-01-01
  • 2014-07-05
  • 2013-02-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多