参考基于android studio开发的 opencv关于android人脸识别的DEMO
前言
/build/core/add-application.mk:178: *** Android NDK: APP_STL gnustl_shared is no longer supported. Please switch to either c++_static or c++_shared. See https://developer.android.com/ndk/guides/cpp-support.html for more information. . Stop.
[armeabi-v7a] SharedLibrary : libface_detection.so
G:/software/android/projects/opencv/CameraTutorial/app/src/jni/haar_detect.cpp:39: 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>)'
clang++.exe: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [G:/software/android/projects/opencv/CameraTutorial/app/src/obj/local/armeabi-v7a/libface_detection.so] Error 1
如果有人遇到以上报错可以参考我的 解决android studio3 导入opencv后ndk-build编译遇到的问题
本文不会有上述两个报错
一软件环境
Android studio使用的3.0版本。下载的ndk是19。


opencv从官网下载的4.0

下载后的opencv目录如下
OpenCV-android-sdk
-samples
-sdk
这次我们用的人脸识别项目就是OpenCV-android-sdk\samples\face-detection

这个目录下的FdActivity.java文件是人脸识别的界面程序,打开看下

package org.opencv.samples.facedetect;
第一行是包名一会我们新建一个和这个包名一样的程序就能少改好多了

本文详述如何在Android Studio 3中创建一个使用OpenCV4的人脸识别项目。首先介绍软件环境,包括Android Studio版本和OpenCV4的下载。接着,详细说明了如何导入OpenCV库,修改项目结构,添加必要的库文件,更新build.gradle配置,并解决编译错误。然后,导入人脸识别的Java代码、XML布局文件、模型文件以及JNI文件,并调整Android.mk和Application.mk。最后,成功运行并生成可部署的APK。
最低0.47元/天 解锁文章
2543





