项目说明:abzg/facedetector分支
在工控板RK3288使用opencv人脸检测,摄像头使用奥比中光深度摄像头(手头上有.....),有在android环境搭建过的项目,感觉耗费应用性能(心里作祟吧!!)。就想捣鼓一下C++环境处理图像数据(也不全是C++环境,奥比中光so包返回彩色流的ByteBuffer流地址到android,android通过ndk进入c++环境)。通过地址指针将数据流转Mat,opencv处理Mat并在人脸部分加框,对源数据转为Texture为GLSurfaceView显示加载。
-
环境说明:
- RK3288(UW_M328_V1.2)、奥比中光深度摄像头(Mini)
- android studio、opencv4.5.0、奥比中光sdk(主要是cpp-demos/colorforopenni2)
- oepncv获取:https://sourceforge.net/projects/opencvlibrary/files/
- 奥比中光sdk(OpenNI2 SDK Android):https://developer.orbbec.com.cn/download.html?id=62
- 环境搭建:
- ndk环境......c++构建项目
- ndk + opencv (so环境):CMakeLists.txt 添加opencv so部分及target_link_libraries
- 添加奥比中光so库app build.gradle
- 将colorforopenni2例子中的obColor2、utils、view、jni的代码拷贝到工程并修改报名
- 构建JNI方法:在MyNative中创建(NDK环境已有)JNI方法:Alt+Enter快捷键,并将对应代码拷贝到方法内(记得添加cpp下myopencv、myabzg文件及相应的.cpp、.h文件)