SeetaFace2采用标准C++开发,全部模块均不依赖任何第三方库,支持x86架构(Windows、Linux)和ARM架构(Android)。
SeetaFace2支持的上层应用包括但不限于人脸门禁、无感考勤、人脸比对等。
编译简介2.1编译依赖GNUMake工具GCC或者Clang编译器CM2.2linux和windows平台编译说明linux和windows上的SDK编译脚本见目录craft,其中craft/linux下为linux版本的编译脚本,craft/windows下为windows版本的编译脚本,默认编译的库为64位Release版本。
linux和windows上的SDK编译方法:打开终端(windows上为VS2015x64NativeToolsCommandPrompt工具,linux上为bash),cd到编译脚本所在目录;
执行对应平台的编译脚本。
linux上example的编译运行方法:cd到example/search目录下,执行make指令;
拷贝模型文件到程序指定的目录下;
执行脚本run.sh。
windows上example的编译运行方法:使用vs2015打开SeetaExample.sln构建工程,修改Opencv3.props属性表中变量OpenCV3Home的值为本机上的OpenCV3的安装目录;
执行vs2015中的编译命令;
拷贝模型文件到程序指定的目录下,运行程序。
2.3Android平台编译说明Android版本的编译方法:安装ndk编译工具;
环境变量中导出ndk-build工具;
cd到各模块的jni目录下(如SeetaNet的Android编译脚本位置为SeetaNet/sources/jni,FaceDetector的Android编译脚本位置为FaceDetector/FaceDetector/jni),执行ndk-build-j8命令进行编译。
编译依赖说明:人脸检测模块FaceDetector,面部关键点定位模块FaceLandmarker以及人脸特征提取与比对模块FaceRecognizer均依赖前向计算框架SeetaNet模块,因此需优先编译前向计算框架SeetaNet模块。
1