Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Inicialización estática en OpenCV Android

Estoy tratando de ejecutar OpenCV Tutorial 1 – Añadir OpenCV con la inicialización estática con este
No quiero una aplicación independiente OpenCV Manager instalado), pero me sale un "OpenCV error: Cannot load info library for OpenCV."

Hice las siguientes cosas:

  1. Agregó una carpeta libs con armeabi , armeabi-v7a y carpetas x86 dentro de ella (desde OpenCV-2.4.2-android-sdk / sdk / native / libs /)

  2. Añadió el código estático {if (!OpenCVLoader.initDebug())} justo debajo de private Sample1View mView;

  3. Eliminado el código a continuación

If (! OpenCVLoader.initAsync (OpenCVLoader.OPENCV_VERSION_2_4_2, esto, mOpenCVCallBack))

¿Cuál parece ser el problema?

  • Android corner tracking usando opencv
  • Android Fatal señal 11 (SIGSEGV) en 0x00000040 (código = 1) Error
  • Detección de círculos de Hough android
  • DrawMatching entre dos imágenes - reconocimiento de imagen
  • Procesar vídeo marco por cuadro en OpenCV en Android
  • 4 Solutions collect form web for “Inicialización estática en OpenCV Android”

    Usted debe agregar el código:

     mOpenCVCallBack.onManagerConnected(LoaderCallbackInterface.SUCCESS); 

    después:

     if(!OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_2, this, mOpenCVCallBack)) 

    Si elimina:

     if(!OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_2, this, mOpenCVCallBack)) 

    Bloque de código, entonces nadie llama.

    Espero que te ayude.

    Tengo el mismo problema, he resuelto el problema agregando el código siguiente en el primer de mi clase de la actividad:

     static { if (!OpenCVLoader.initDebug()) { // Handle initialization error } } 

    También he añadido

     mLoaderCallback.onManagerConnected(LoaderCallbackInterface.SUCCESS); 

    Antes de la línea

     OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_3, this, mLoaderCallback); 

    Y comentó la línea

     OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_3, this, mLoaderCallback); 

    Buena suerte.

    El mensaje de registro:

     "OpenCV error: Cannot load info library for OpenCV." 

    No debería preocuparte Al menos en mi aplicación me dice algo así como OpenCV libs init está bien después.

    En el código de ejemplo, el objeto CameraBridgeViewBase se habilita cuando se llama a BaseLoaderCallback. Esto ocurre cuando la carga asíncrona de la biblioteca opencv ha terminado. Cuando cargue la biblioteca de forma estática, intente agregar una llamada a mOpenCVCameraView.enableView () en su método onResume () (después de cargar la lib de coourse).

    InitAsync () necesita una devolución de llamada para cargar las librerías opencv y sus librerías jni.

    Compruebe la función de devolución de llamada y hágalo a la derecha en el if (! OpenCVLoader.initDebug ()), no en la devolución de llamada!

      if (!OpenCVLoader.initDebug()) { // Handle initialization error Log.i(TAG, "OpenCV load not successfully"); } else { System.loadLibrary("mixed_sample"); //System.loadLibrary("my_jni_lib2"); InitFeature(width,height); mOpenCvCameraView.enableView(); } 

    Funciona para el tutorial 2 en OCV4Android2.4.5.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.