作者:康林([email protected])
================================================================================
本项目提供一些人脸常见应用。提供应用级人脸框架,方便自定义快速开发人脸应用。 以及性能测试比较框架,方便对第三方人脸库做性能测试比较。 如有定制开发,或移植可联系本人(QQ:16614119)。如果对你有帮助,请你捐赠支持本项目:)
- 人脸识别框架
- 人脸识别常见应用
- 考勤
- 人脸特效
- 测试比较工具和框架
- 人脸识别开源库测试比较
- windows
- linux
- android
- mac
- ios
- 其它嵌入式平台,可联系本人(QQ:16614119)或你自己移植:)
mac 和 ios我没有设备,请有设备的同学自行编译测试。
-
linux
- FaceRecognizer_v0.0.2.tar.gz
AppImage格式的执行程序,可直接运行在linux系统,详见:https://appimage.org/
使用:-
解压。复制FaceRecognizer_v0.0.2.tar.gz到安装目录,然后解压:
mkdir FaceRecognizer cd FaceRecognizer cp $DOWNLOAD/FaceRecognizer_v0.0.2.tar.gz . tar xvfz FaceRecognizer_v0.0.2.tar.gz
-
安装
./install.sh install
-
如果需要,卸载
./install.sh remove
-
- FaceRecognizer_v0.0.2.tar.gz
-
ubuntu
- FaceRecognizer_0.0.2_amd64.deb
deb 安装包,可用于 Ubuntu
- FaceRecognizer_0.0.2_amd64.deb
-
windows
- FaceRecognizer-Setup-v0.0.2.exe
Windows安装包,支持 Windows xp 以上系统
- FaceRecognizer-Setup-v0.0.2.exe
-
android
**注意:**本项目安装包中暂时未打包模型文件,请到相关依赖项目中下载模型文件到一个目录中,然后在程序 菜单->选项->设置模型路径 中指定此目录。
git clone --recursive https://github.com/KangLin/FaceRecognizer.git
或者:
git clone https://github.com/KangLin/FaceRecognizer.git
git submodule update --init --recursive
- 编译工具
- 依赖库
- [必选] Rabbit 公共库: https://github.com/KangLin/RabbitCommon
- [可选] SeetaFace2: https://github.com/seetafaceengine/SeetaFace2
- [可选] libyuv: https://github.com/KangLin/libyuv
- [可选] ffmpeg: https://ffmpeg.org/
- [可选] opencv: https://opencv.org/
- [必选] Qt5_DIR: qt 安装位置
- [必选] RabbitCommon_DIR: RabbitCommon 源码位置
- [可选] HAVE_PERFORMANCE: 比较测试框架,默认 OFF
- [可选] CMAKE_INSTALL_PREFIX: 安装前缀
- [可选] SeetaFace_DIR: SeetaFace 库安装位置
- [可选] YUV_DIR: libyuv 库安装位置
- [可选] OpenCV_DIR: OpenCV 库安装位置
-
编译
cd FaceRecognizer mkdir build cd build cmake .. -DCMAKE_INSTALL_PREFIX=`pwd`/install \ -DCMAKE_BUILD_TYPE=Release \ -DQt5_DIR= \ -DRabbitCommon_DIR= \ [其它可选 CMake 配置参数] cmake --build . --config Release
-
安装
cmake --build . --config Release --target install
-
运行例子
-
把生成库的目录加入到变量 LD_LIBRARY_PATH 中
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`pwd`/bin
-
拷贝模型文件到程序安装目录下的 model 目录下,也可以在程序运行后指定。
-
SeetaFace 模型文件。模型文件位置详见:https://github.com/seetafaceengine/SeetaFace2
cd FaceRecognizer cd build mkdir model cp fd_2_00.dat pd_2_00_pts5.dat pd_2_00_pts81.dat .
-
-
执行 bin 目录下的程序
cd FaceRecognizer cd build cd bin ./FaceRecognizer
-
- 使用 cmake-gui.exe 工具编译。打开 cmake-gui.exe 配置
- 命令行编译
-
把 cmake 命令所在目录加入到环境变量 PATH 中
-
从开始菜单打开 “VS2015开发人员命令提示”,进入命令行
-
编译
cd FaceRecognizer mkdir build cd build cmake .. -DCMAKE_INSTALL_PREFIX=`pwd`/install \ -DCMAKE_BUILD_TYPE=Release \ -DQt5_DIR= \ -DRabbitCommon_DIR= \ [其它可选 CMake 配置参数] cmake --build . --config Release
-
安装
cmake --build . --config Release --target install
-
运行例子
-
拷贝模型文件到程序安装目录下的 model 目录下,也可以在程序运行后指定。
-
SeetaFace 模型文件。模型文件位置详见:https://github.com/seetafaceengine/SeetaFace2
cd FaceRecognizer cd build mkdir model cp fd_2_00.dat pd_2_00_pts5.dat pd_2_00_pts81.dat .
-
-
执行 bin 目录下的程序
- FaceRecognizer
-
-
-
-
安装 ndk 编译工具
-
从 https://developer.android.com/ndk/downloads 下载 ndk,并安装到:/home/android-ndk
-
设置环境变量:
export ANDROID_NDK=/home/android-ndk
-
-
安装 sdk 工具
-
从 https://developer.android.google.cn/studio/releases 下载 sdk tools, 并安装到 /home/android-sdk
-
设置环境变量:
export ANDROID_SDK=/home/android-sdk
-
-
编译
-
主机是 linux
cd FaceRecognizer mkdir build cd build cmake .. -DCMAKE_INSTALL_PREFIX=`pwd`/install \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK}/build/cmake/android.toolchain.cmake \ -DANDROID_ABI="armeabi-v7a with NEON" \ -DANDROID_PLATFORM=android-18 \ -DQt5_DIR= \ -DRabbitCommon_DIR= \ [其它可选 CMake 配置参数] cmake --build . --config Release --target install cmake --build . --config Release --target APK
-
主机是 windows
cd FaceRecognizer mkdir build cd build cmake .. -DCMAKE_INSTALL_PREFIX=`pwd`/install \ -G"Unix Makefiles" -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK}/build/cmake/android.toolchain.cmake \ -DCMAKE_MAKE_PROGRAM=${ANDROID_NDK}/prebuilt/windows-x86_64/bin/make.exe \ -DANDROID_ABI=arm64-v8a \ -DANDROID_ARM_NEON=ON \ -DQt5_DIR= \ -DRabbitCommon_DIR= \ [其它可选 CMake 配置参数] cmake --build . --config Release --target install cmake --build . --config Release --target APK
-
CMake for android 参数说明:https://developer.android.google.cn/ndk/guides/cmake
- ANDROID_ABI: 可取下列值:
目标 ABI。如果未指定目标 ABI,则 CMake 默认使用 armeabi-v7a。
有效的目标名称为:- armeabi:带软件浮点运算并基于 ARMv5TE 的 CPU。
- armeabi-v7a:带硬件 FPU 指令 (VFPv3_D16) 并基于 ARMv7 的设备。
- armeabi-v7a with NEON:与 armeabi-v7a 相同,但启用 NEON 浮点指令。这相当于设置 -DANDROID_ABI=armeabi-v7a 和 -DANDROID_ARM_NEON=ON。
- arm64-v8a:ARMv8 AArch64 指令集。
- x86:IA-32 指令集。
- x86_64 - 用于 x86-64 架构的指令集。
- ANDROID_NDK 主机上安装的 NDK 根目录的绝对路径
- ANDROID_PLATFORM: 如需平台名称和对应 Android 系统映像的完整列表,请参阅 Android NDK 原生 API
- ANDROID_ARM_MODE
- ANDROID_ARM_NEON
- ANDROID_STL:指定 CMake 应使用的 STL。默认情况下,CMake 使用 c++_static。
- ANDROID_ABI: 可取下列值:
目标 ABI。如果未指定目标 ABI,则 CMake 默认使用 armeabi-v7a。
-
安装 apk 到设备
adb install android-build-debug.apk
-
本软件如果对你有用,或者你喜欢它,请你捐赠,支持作者。谢谢!
问题:https://github.com/KangLin/FaceRecognizer/issues
项目位置:https://github.com/KangLin/FaceRecognizer
- 本项目许可协议
- 第三方库许可协议:详见各第三库许可协议。当你使用本项目依赖的第三方库时,同时请遵守其许可协议。