Не могу загрузить библиотеки Opencv по необходимости - PullRequest
2 голосов
/ 29 февраля 2012

Я пытаюсь использовать камеру в необходимом проекте с использованием 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 );
}

Когда я запускаю его, и он пытается запустить наустройство, samsung galaxy gio с Android 2.3.4, я получаю это:

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)

Мне не хватает загрузить любую библиотеку или включить?

Заранее спасибо

1 Ответ

4 голосов
/ 29 февраля 2012

Вам нужно будет вручную скопировать libnative_camera_r2.2.2.so в каталог /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");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...