OpenCV con Android NDK Referencias indefinidas

Estoy intentando usar opencv en android (ndk solamente). Recopilé la última fuente del repositorio git para armeabi. (Basado en: Building_OpenCV4Android_from_trunk )

Pero estoy recibiendo estos errores (con ndk-build):

error: undefined reference to 'cv::Mat::deallocate()' error: undefined reference to 'cv::fastFree(void*)' error: undefined reference to 'cv::_OutputArray::_OutputArray(cv::Mat&)' error: undefined reference to 'cv::Mat::copyTo(cv::_OutputArray const&)' error: undefined reference to 'cv::Mat::inv(int) const' 

Código de prueba simple:

 cv::Mat testMat = cv::Mat(cv::Matx44d ( 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0 )); cv::Mat testMatInv = testMat.inv(); 

Mi Android.mk:

 LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../../../libs/opencv/include LOCAL_LDLIBS += -L../../../../libs/opencv/lib/android/armeabi LOCAL_LDLIBS += -llog -lGLESv2 –lz LOCAL_STATIC_LIBRARIES := libzip libpng libjpeg freetype LOCAL_STATIC_LIBRARIES += libopencv_calib3d libopencv_contrib libopencv_core libopencv_features2d libopencv_flann libopencv_highgui libopencv_imgproc libopencv_legacy libopencv_ml libopencv_nonfree libopencv_objdetect libopencv_photo libopencv_stitching libopencv_ts libopencv_video libopencv_videostab 

Alguien tiene alguna pista? Gracias

Lo tengo trabajando ahora. Me olvidé de añadir las bibliotecas de prebuild en Android.mk así:

 #same for all other openCV Libs LOCAL_MODULE := libopencv_calib3d LOCAL_SRC_FILES := ../../opencv/lib/android/$(TARGET_ARCH_ABI)/libopencv_calib3d.a include $(PREBUILT_STATIC_LIBRARY) include $(CLEAR_VARS) ..... LOCAL_STATIC_LIBRARIES += libopencv_contrib libopencv_legacy libopencv_ml libopencv_stitching libopencv_nonfree libopencv_objdetect libopencv_videostab libopencv_calib3d libopencv_photo libopencv_video libopencv_features2d libopencv_highgui libopencv_androidcamera libopencv_flann libopencv_imgproc libopencv_ts libopencv_core 

Orden de asuntos bibliotecarios.

Tratar:

 LOCAL_STATIC_LIBRARIES += libopencv_contrib libopencv_legacy libopencv_ml libopencv_stitching libopencv_nonfree libopencv_objdetect libopencv_videostab libopencv_calib3d libopencv_photo libopencv_video libopencv_features2d libopencv_highgui libopencv_androidcamera libopencv_flann libopencv_imgproc libopencv_core 

Y la forma recomendada no es codificar todos los nombres en su archivo .mk, pero usar OpenCV.mk desde OpenCV SDK para agregar OpenCV a su proyecto. (Si está creando una compilación personalizada desde el origen, OpenCV.mk se genera en el paso cmake (y make install).)

  • Detección de características faciales con OpenCV Android
  • Error de aserción (scn == 3 || scn == 4) en void cv :: cvtColor (cv :: InputArray Android
  • Captura de vista previa de la cámara para su uso en OpenCV. Conversión a RGB y Mat Gris. Java. Androide
  • OpenCV Android Library Errores después de la instalación
  • OpenCV Android imwrite darme una imagen azul
  • Mejora del rendimiento de OpenCV Android: seguimiento rápido de objetos
  • Cómo unir png con alpha / transparencia en un marco en tiempo real
  • Detección de color verde Android de OpenCV
  • Imprimir contenido de matriz opencv en Java
  • OpenCV para Android, ¿necesito instalar OpenCV Manager por separado?
  • Opencv Android: java.lang.UnsatisfiedLinkError: dlopen falló: no se pudo cargar la librería "libopencv_java.so"
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.