目前我们的应用内使用了ArcFace 的人脸检测功能,这里就和大家分享一下我们的集成过程和一些使用心得~

集成
ArcFace FD 的集成过程非常简单
在 ArcFace FD 的文档上有说明支持的系统为 5.0 及以上系统,但其实在 4.4 系统上也是可以跑的
```

if (engine == null) { // && Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP) {
try {
engine = new AFD_FSDKEngine();
AFD_FSDKError err = engine.AFD_FSDK_InitialFaceEngine(
"XXXX",
"XXXX",
AFD_FSDKEngine.AFD_OPF_0_HIGHER_EXT, 12, 3);
if (err.getCode() != 0) {
engine.AFD_FSDK_UninitialFaceEngine();
engine = null;
}
} catch (Exception e) {
e.printStackTrace();
engine = null;
}
}

```
我觉得 ArcFace 的优势除了多角度检测之外,另外一个是他的每次检测并不是独立,即这一次的检测结果会指导下一次的检测 (我猜测的->_->)

所以 ArcFace 在检测到人脸之后,识别的时间会大幅减少,而 Seeta FD 的检测每次都是独立的,所以在无人脸的情况下,Seeta 的检测速度要快于 ArcFace, 但是检测到人脸之后,因为应用整体的计算量增加,导致 Seeta 的检测速度降低的非常明显,大大慢于 ArcFace, (所以二者是不是可以结合一下...)
```
AFD_FSDKError err = engine.AFD_FSDK_StillImageFaceDetection(
        data, width, height, AFD_FSDKEngine.CP_PAF_NV21, result);
```

优化
不得不说 ArcFace FD 的错误率是有待优化的,虽然 ArcFace 没有提供任何可以调节的参数,但是还是可以稍微优化一下!

因为从摄像头出来的 yuv 数据是横向的,而 ArcFace 只有 AFD_OPF_0_HIGHER_EXT 这个扩展选项,优先检测 0 度方向, 但是这个方向一般是没有人脸的,所以如果直接进行检测,我们觉得这个可能会增加检测的错误率(猜的->_->),所以处理方法是将 yuv 旋转到手机竖屏方向(当然这个操作不是直接由 CPU 来处理,而是从 Camera 的外部纹理上开始做操作)再拿去检测,这样会减少一点错误率(从用户反馈得出),虽然错误率依然很高(特别对于带栅格的物体)希望虹软能继续优化!

另外一个是目前 ArcFace 还没有支持 Android 8.x 系统,所以这种情况下,我们会启用备选的其他方案来进行人脸检测!

最后希望虹软能把 ArcFace 越做越好 ~_~ 因为只有产品足够好才会不断的有人为你做免费宣传

最新文章

  1. Linq之旅:Linq入门详解(Linq to Objects)
  2. Android知识——ViewHolder的作用与用法
  3. How Google TestsSoftware - Part Two
  4. openstack命令行
  5. Webbrowser 取消下载提示框
  6. sitecustomize.py 用法
  7. HTML 基础 1
  8. PHP 字符串正则替换函数preg_replace使用说明
  9. linux下编译出现tmp空间不足解决办法
  10. intelj idea安装和配置
  11. 11.采集手机端app企查查上司公司数据(未成功)
  12. 如何删除 Win10此电脑 desktop 视频 图片 文档 下载 音乐等文件夹
  13. FieldExists
  14. ctrl+z的ascii码是多少?
  15. English trip WeekEnd-Lesson 2018.11.10
  16. angular 中怎么获取路径上的参数 参考:https://docs.angularjs.org/api/ng/service/$location
  17. WebKit的已实施srcset图像响应属性
  18. 织梦dedecms5.7手机站页面首页正常其他页面显示pc页面解决方法
  19. 如何更改Docker默认的images存储位置
  20. 三十四 Python分布式爬虫打造搜索引擎Scrapy精讲—scrapy信号详解

热门文章

  1. 带parent指针的successor求解
  2. Java设计模式之单例模式,笔记完整到不敢想象
  3. Java面试题整理:这些Java程序员面试中经常遇见的题目,必须掌握才能有好结果
  4. [Swift]LeetCode839. 相似字符串组 | Similar String Groups
  5. 从无到有-在create-react-app基础上接入react-router、redux-saga
  6. 聚类——FCM
  7. webpack无法热加载(__webpack_hmr 502)
  8. what a fuck!这是什么鬼东西?
  9. springmvc 项目完整示例02 项目创建-eclipse创建动态web项目 配置文件 junit单元测试
  10. 线程的私有领地 ThreadLocal