Comake D1 开发板 AI 算法 人脸识别介绍
该人脸识别算法包含检测、属性识别、表情识别、特征提取等模块,能判断眼镜、性别等5种属性和7种表情。算法精度达99.4%(TAR@FAR=2.3%),各模块处理耗时7.4-19.2ms。流程分为注册(创建特征底库)和识别(特征比对)两个阶段,提供16个API接口实现全流程功能。系统支持多种输入格式和分辨率,适用于开发者快速集成人脸识别能力。
人脸识别算法
1. 算法描述¶
人脸识别主要是对人脸进行区分,判断抓拍人脸是否是白名单人员。整个算法包含人脸检测、人脸属性识别、人脸表情识别、人脸关键点、人脸过滤、人脸跟踪、人脸对齐、特征提取以及人脸比对。 其中,人脸属性可以判断人脸的眼镜、性别、口罩、胡子、年龄五个属性;人脸表情可以判断人脸7个表情,分别是正常、高兴、难过、惊讶、害怕、厌恶、生气。
-
算法精度
ALGO 阈值 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 FR TAR% 99.4 98.9 98.5 98.1 97.6 96.9 96.4 95.2 93.9 93.4 92.1 90.9 89.1 86.7 85.4 84.2 FR FAR% 2.3 1.8 1 0.7 0.4 0.1 0 0 0 0 0 0 0 0 0 0 -
算法性能
model 功能 耗时 rom ram 分辨率(w*h) 输入格式 fr_det_y24s.img 人脸检测 7.4ms 0.93m 2.3m 480*288 yuvsp420_nv12 fr_det_y36s.img 人脸检测 11.8ms 0.94m 3.2m 640*352 yuvsp420_nv12 fr_feature_as.img 人脸特征提取(小) 13.4ms 3.3m 5.0m 112*112 BGRA8888 fr_feature_am.img 人脸特征提取(中) 18.5ms 7.3m 8.9m 112*112 BGRA8888 fr_feature_al.img 人脸特征提取(大) 19.2ms 23.4m 25.2m 112*112 BGRA8888 fr_angle_y66.img 人脸角度估计 1.4ms 1.1m 1.3m 64*64 yuvsp420_nv12 fr_cos256.img 人脸特征比对模型 0.5ms 0.03m 0.3m 256*512 INT16 far101_224y_emo.img 人脸表情识别模型 5.0ms 3.6m 4.8m 224*224 yuvsp420_nv12 far101_224y_emo_s45.img 人脸表情识别模型(小) 2.4ms 0.9m 1.7m 224*224 yuvsp420_nv12 far103_224y.img 人脸属性识别模型 2.5ms 1.1m 1.7m 224*224 yuvsp420_nv12
2. 接口调用流程¶
人脸识别主要包含两个过程,一个是人脸注册过程,这个过程是生成人脸白名单(底库)。另外一个是人脸识别过程,这个过程就是对抓拍到的人脸进行识别,判断是否是白名单人员。
2.1. 注册过程¶
注册过程的接口调用:ALGO_FR_CreateHandle → ALGO_FR_InitHandle → ALGO_FR_SetParams → ALGO_FR_GetInputAttr → ALGO_FR_Detect → ALGO_FR_Align → ALGO_FR_FeatureExtract, 最后将提取到的特征保存起来成为底库。
2.2. 识别过程¶
识别过程的接口调用为:ALGO_FR_CreateHandle → ALGO_FR_InitHandle → ALGO_FR_SetParams → ALGO_FR_GetInputAttr → ALGO_FR_Detect → ALGO_FR_Align → ALGO_FR_FeatureExtract → ALGO_FR_FeatureCompare,通过抓拍到的图片特征和底库的特征进行比对,判断是不是同一个人。
2.3. 人脸属性识别过程¶
人脸属性识别的接口调用:ALGO_FR_CreateHandle → ALGO_FR_InitHandle → ALGO_FR_SetParams → ALGO_FR_GetInputAttr → ALGO_FR_Detect → ALGO_FR_Attr,通过抓拍到的人脸图片进行人脸属性识别。 注意:裁剪后送入该接口的人脸图像需要做一定范围的外扩,外扩的宽高分别为:1.25 × bbox_w, 1.25 × bbox_h
3. 功能模块API¶
API名 | 功能 |
---|---|
ALGO_FR_CreateHandle | 创建句柄 |
ALGO_FR_InitHandle | 初始化句柄 |
ALGO_FR_GetInputAttr | 获取模型的输入属性信息 |
ALGO_FR_SetParams | 设置算法可配置参数 |
ALGO_FR_Detect | 人脸检测 |
ALGO_FR_Align | 人脸对齐 |
ALGO_FR_Attr | 人脸属性识别 |
ALGO_FR_FaceQuality | 执行人脸角度估计以及质量过滤 |
ALGO_FR_FeatureExtract | 特征提取 |
ALGO_FR_FeatureCompare | 特征比对 |
ALGO_FR_BatchFeatureCompare | 执行批量人脸特征比对(需要拷贝一份比对特征) |
ALGO_FR_BatchFeatureCompareV2 | 执行批量人脸特征比对(不需要拷贝比对特征) |
ALGO_FR_DeinitHandle | 反初始化句柄 |
ALGO_FR_ReleaseHandle | 释放句柄 |
3. 立即开始
加入Comake开发者社区
主页地址: CoMake开发者社区
SDK下载: CoMake开发者社区
文档中心: CoMake开发者社区
马上购买 : 首页-Comake开发者社区商店
更多推荐
所有评论(0)