这里有很多这样的问题,Qt 站点和 OpenCV 站点,但没有一个完全符合我的情况。(无论如何,很多都没有答案。)
我正在使用适用于 Android 2.4.6 的 OpenCV(可从官方网站下载的预构建版本)在带有适用于 Android 的 Qt 5.0.1 的三星 Galaxy Note 2(使用 QtCreator 2.7. 2) 在 x86_64 Linux 主机上。
我已经链接到 ../sdk/native/libs/armeabi-v7a 文件夹中的库。(我没有从源代码构建 OpenCV,我只是使用下载包中的内容)。这包括一个 libopencv_androidcam.a 库。(而且我还尝试了 libnative_camera_r4.1.1.so 共享库。)我还下载了市场应用程序“OpenCV Manager”。
示例目录中的示例 .apks 在我的手机上工作,但我没有尝试自己构建它们,因为我没有设置 Java 开发环境。
启动包含cv::VideoCapture inputCapture(CV_CAM_ANDROID);
语句的应用程序,我收到以下错误并且没有相机输入:
E/OpenCV::camera(15299): CameraWrapperConnector::connectToLib ERROR: cannot dlopen camera wrapper library
E/OpenCV::camera(15299): Native_camera returned opening error: 4
我的问题:
- 这应该工作吗?我看过很多错误报告,但都是旧版本的 OpenCV 和新/旧的 Android 版本。如果已经看到在此手机型号上工作,则可获得奖励积分。
- 下载的 OpenCV Android SDK 是否应该开箱即用?或者我是否需要使用一些特殊选项从源代码构建 OpenCV?(哪个?)
- 我需要手机本身的特殊库版本吗?我是否需要对设备具有 root 访问权限才能使其正常工作?
- 是否有任何使用本机代码而不是 Java 的“已知有效”的 Andoid 示例?
非常感谢您的帮助!