SeetaFace2 Android 平台编译

SeetaFace2 Android 平台编译

欢迎入群交流

效果图

开源地址:https://github.com/seetafaceengine/SeetaFace2

SeetaFace2 人脸识别引擎包括了搭建一套全自动人脸识别系统所需的三个核心模块,即:人脸检测模块 FaceDetector、面部关键点定位模块 FaceLandmarker 以及人脸特征提取与比对模块 FaceRecognizer。面部关键点定位支持 5 点81 点定位,两个辅助模块 FaceTrackerQualityAssessor 用于人脸跟踪和质量评估。

Android 平台编译说明
安装 ndk 编译工具

https://developer.android.com/ndk/downloads 下载 ndk,并安装到:/home/android-ndk

设置环境变量:

export ANDROID_NDK=/home/android-ndk
linux 下编译
cd SeetaFace2
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=install \
	-DCMAKE_BUILD_TYPE=MinSizeRel \
	-DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK}/build/cmake/android.toolchain.cmake \
	-DANDROID_ABI="armeabi-v7a" \
	-DANDROID_PLATFORM=android-24 \
	-DBUILD_EXAMPLE=OFF # 如果有OpenCV,则设置为ON
cmake --build . --config MinSizeRel
armeabi-v7a
cmake .. -DCMAKE_INSTALL_PREFIX=install \
	-DCMAKE_BUILD_TYPE=MinSizeRel \
	-DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK}/build/cmake/android.toolchain.cmake \
	-DANDROID_ABI="armeabi-v7a with NEON" \
	-DBUILD_EXAMPLE=OFF	
arm64-v8a
cmake .. -DCMAKE_INSTALL_PREFIX=install \
	-DCMAKE_BUILD_TYPE=MinSizeRel \
	-DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK}/build/cmake/android.toolchain.cmake \
	-DANDROID_ABI="arm64-v8a" \
	-DBUILD_EXAMPLE=OFF		
x86_64
cmake .. -DCMAKE_INSTALL_PREFIX=install \
	-DCMAKE_BUILD_TYPE=MinSizeRel \
	-DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK}/build/cmake/android.toolchain.cmake \
	-DANDROID_ABI="x86_64" \
	-DBUILD_EXAMPLE=OFF		
x86
cmake .. -DCMAKE_INSTALL_PREFIX=install \
	-DCMAKE_BUILD_TYPE=MinSizeRel \
	-DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK}/build/cmake/android.toolchain.cmake \
	-DANDROID_ABI="x86" \
	-DBUILD_EXAMPLE=OFF		
安装

cmake --build . --config MinSizeRel --target install/strip
  • 参数说明: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。

      • c++_shared: 使用 libc++ 动态库
      • c++_static: 使用 libc++ 静态库
      • none: 没有 C++ 库支持
      • system: 用系统的 STL
编译报错
fatal: No names found, cannot describe anything.
-- == BUILD_VERSION: a587833
CMake Error at SeetaNet/CMakeLists.txt:44 (target_link_options):
  Unknown CMake command "target_link_options".


-- Configuring incomplete, errors occurred!
See also "/home/build/workspace/hqq/SeetaFace2/build/CMakeFiles/CMakeOutput.log".

Unknown CMake command "target_link_options".

在这里插入图片描述

解决方案:https://github.com/seetafaceengine/SeetaFace2/issues/108

将cmake 版本升级,如何升级百度哇

编译成功

编译出的动态库在此目录下

SeetaFace2/build/install/

在这里插入图片描述
在这里插入图片描述

模型下载
  • 人脸检测模块 FaceDetector 模型下载链接:
    MD5 :E88669E5F1301CA56162DE8AEF1FD5D5
    百度网盘:https://pan.baidu.com/s/1Dt0M6LXeSe4a0Pjyz5ifkg 提取码:fs8r
    Dropbox : https://www.dropbox.com/s/cemt9fl48t5igfh/fd_2_00.dat?dl=0

  • 面部特征5点定位模块 FaceLandmarker 模型下载链接:
    MD5 :877A44AA6F07CB3064AD2828F50F261A
    百度网盘:https://pan.baidu.com/s/1MqofXbmTv8MIxnZTDt3h5A 提取码:7861
    Dropbox : https://www.dropbox.com/s/noy8tien1gmw165/pd_2_00_pts5.dat?dl=0

  • 面部特征81点定位模块 FaceLandmarker 模型下载链接:
    MD5 :F3F812F01121B5A80384AF3C35211BDD
    百度网盘:https://pan.baidu.com/s/1CCfTGaSg_JSY3cN-R1Myaw 提取码:p8mc
    Dropbox : https://www.dropbox.com/s/v41lmclaxpwow1d/pd_2_00_pts81.dat?dl=0

  • 人脸特征提取和比对模块 FaceRecognizer 模型下载链接:
    MD5 :2D637AAD8B1B7AE62154A877EC291C99
    百度网盘:https://pan.baidu.com/s/1y2vh_BHtYftR24V4xwAVWg 提取码:pim2
    Dropbox : https://www.dropbox.com/s/6aslqcokpljha5j/fr_2_10.dat?dl=0

微信公众号(他晓),关注并转发,谢谢

效果图
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值