关于Seetaface6
SeetaFace6是中科视拓最新开源的商业正式版本。可免费商用哦~
此次开源包含了一直以来人脸识别的基本部分,如人脸检测、关键点定位、人脸识别。同时增加了活体检测、质量评估、年龄性别估计。应对目前疫情,还开放了口罩检测以及戴口罩的人脸识别模型。太赞了!
这次 Seetaface 还开源了最新的推理引擎 Tennis, 同时人脸识别训练集也大幅提高,达到了亿级。
为了应对不同级别的应用需求,SeetaFace6 开放三个版本模型:
模型名称 | 网络结构 | 速度(I7-6700) | 速度(RK3399) | 特征长度 |
---|---|---|---|---|
通用人脸识别 | ResNet-50 | 57ms | 300ms | 1024 |
带口罩人脸识别 | ResNet-50 | 34ms | 150ms | 512 |
通用人脸识别(小) | Mobile FaceNet | 9ms | 70ms | 512 |
作为能力兼容升级,SeetaFace6仍然能够给众多人脸识别应用提供业务能力。
同时该套算法适用于高精度的服务器部署外,也可以终端设备上很好的适应运行。
此次开放版将开放标准C++开发接口的,包含x86和ARM架构支持,逐步开放Ubuntu、CentOS、macOS、Android、IOS的支持。同时仍然保持了SeetaFace优良传统,不依赖任何第三方库。
环境准备
需要工具:Git 、ndk-build
下载源码
SeetaFace6
:https://github.com/SeetaFace6Open/index
git clone --recursive https://github.com/SeetaFace6Open/index.git
对于 伸手党 略过后面编译相关说明,最后统一给出编译好的网盘链接。
编译顺序 (*重点)
OpenRoleZoo 为常用操作的集合,SeetaAuthorize 为模型解析工程,TenniS 为前向计算框架。需要重点说明的是,此次 TenniS 同时放出了 GPU 计算源码,可以编译出 GPU 版本进行使用。上述三个模块为基础模块,各个 SDK 的编译均依赖上述模块。
先编译出 OpenRoleZoo, SeetaAuthorize 和 TenniS,然后再进行其他 SDK 模块的编译。
Android 平台编译说明
-
安装 ndk 编译工具 (推荐版本:
ndk-r16b
)下载地址 https://dl.google.com/android/repository/android-ndk-r16b-windows-x86_64.zip?hl=zh_cn
设置环境变量, 导出ndk-build工具
-
编译
各个模块 (子目录文件夹内) 均含有 android/jni/Android.mk 和 android/jni/Application.mk 两个编译脚本文件。- cd 到各模块的 android/jni 目录
- 执行 ndk-build -j4 编译
//也利用批处理来做
//build.bat 内容
ndk-build NDK_LOG=1 -j4
编译完,会在相应子模块中与 jni
同级目录下生成 libs
和 obj
文件夹。下面是活体检测模块编译后文件结构示例:
官方使用的是Makefile来编译的,当然也可以使用Cmakelist来编译,笔者编译初期有尝试过,个别模块没有编译通过,后续有时间再尝试。
其他平台编译
其他如 linux、windows等平台的编译参考官方文档说明。
伸手党福利
- 编译过的源码包:
//30天有效期
链接:https://pan.baidu.com/s/1p_8aX8BG4Z2WWt3vGfO6QA
提取码:fj6r
- ndk-r16b
链接:https://pan.baidu.com/s/1tbyuRHqKALSFLOBsbzREEA
提取码:srvt