Я новичок в opencv в Android.Я успешно импортировал модуль opencv 3.4.2.В application.mk
APP_STL:=gnustl_static
Когда я пытался собрать приложение, я получил ошибку сборки NDK, из-за которой 'gnustl_static' больше не поддерживается.Я изменил приведенную выше строку в application.mk на
APP_STL:=c++_static
, как это было предложено в студии android.
Сборка прошла успешно, и я успешно запустил проект.Теперь я попытался реализовать обнаружение лица с помощью opencv, как в случае с opencv «распознавание лица».На этот раз я получил ошибку:
E:/MyOpenDetections/app/src/main/jni/com_sar_pahc_DetectionBasedTracker.cpp:37: error: undefined reference to 'cv::CascadeClassifier::detectMultiScale(cv::_InputArray const&, std::__ndk1::vector<cv::Rect_<int>, std::__ndk1::allocator<cv::Rect_<int> > >&, double, int, int, cv::Size_<int>, cv::Size_<int>)'
Я искал об этом и получил несколько предложений, что мне нужно изменить APP_STL на «gnustl_static» с «c ++ _ static», но когда я делаю это, NDK останавливаетсясборка и показывает, что она не поддерживается сейчас.
Я получил подсказку от Алекса Кона, что мне нужно пересобрать Opencv с помощью c ++ _ static OpenCV - неопределенная ссылка на 'cv :: CascadeClassifier :: detectMultiScale () после обновления NDK
Но я понятия не имею, как это сделать.Пожалуйста, помогите