我尝试在使用 OpenCV 的必要项目中使用相机。我在 .pro 文件中有这个
INCLUDEPATH += C:/OpenCV-2.3.1-android-bin/OpenCV-2.3.1/include \
C:/OpenCV-2.3.1-android-bin/OpenCV-2.3.1/modules
LIBS += C:/OpenCV-2.3.1-android-bin/OpenCV-2.3.1/libs/armeabi/libnative_camera_r2.2.2.so \
C:/OpenCV-2.3.1-android-bin/OpenCV-2.3.1/libs/armeabi/libnative_camera_r2.3.3.so \
C:/OpenCV-2.3.1-android-bin/OpenCV-2.3.1/libs/armeabi/libopencv_androidcamera.a \
C:/OpenCV-2.3.1-android-bin/OpenCV-2.3.1/libs/armeabi/libopencv_calib3d.a \ ...
当我按下按钮时,我会调用相机:
void MainWindow::on_foto_clicked()
{
CvCapture * camera = cvCreateCameraCapture( 0 );
IplImage * image = cvQueryFrame( camera );
cvReleaseCapture( &camera );
}
当我运行它并尝试在设备(运行 Android 2.3.4 的三星 Galaxy gio)上运行时,我得到以下信息:
W/System.err(17481): Caused by: java.lang.UnsatisfiedLinkError: Cannot load library: link_image[1963]: 94 could not load needed library 'libnative_camera_r2.2.2.so' for 'libGeopei.so' (load_library[1105]: Library 'libnative_camera_r2.2.2.so' not found)
我是否缺少加载任何库或包含?
提前致谢
您需要手动复制libnative_camera_r2.2.2.so
to /android/libs/armeabi-v7a
目录。
然后,修改QtActivity.java
文件以便在启动时手动加载库:
String appPath = getApplication().getApplicationContext().getFilesDir().getAbsolutePath();
//application path
System.load(appPath+"/../lib/libnative_camera_r2.3.3.so");
System.load(appPath+"/../lib/libopencv_java.so");
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)